/* Shared homepage layout: bounded desktop canvas, content-led rows, readable mobile.
   Editor font choices remain available, but cannot expand a whole row indefinitely. */
.board-site .site-frame{max-width:1240px;padding:0 24px;margin:24px auto}
.board-site .board-header{min-height:80px}
.board-site .brand{width:260px;padding:8px 12px}
.board-site .brand img{max-height:72px}
.board-site .board-nav{gap:20px;padding:12px 20px}
.board-site .board-grid .tile{--editor-title-fit:min(38cqi,72px);min-height:220px}
.board-site .board-grid .tile-copy{padding:24px;line-height:1.4}
.board-site .board-grid .tile-title{font-size:clamp(38px,4.2vw,60px);line-height:1;margin-bottom:16px;overflow-wrap:anywhere}
.board-site .board-grid .tile-text,.board-site .board-grid .tile-event p{font-size:18px;line-height:1.45}
.board-site .board-grid .tile-link{font-size:18px;min-height:44px;padding-top:16px}
.board-site .board-grid .height-compact{min-height:160px}
.board-site .board-grid .height-tall{min-height:320px}
.board-site.profile-edb .board-grid .span-1 .tile-title{font-size:clamp(32px,3vw,44px)}
.board-site.profile-edb .board-grid .tile-copy{container-type:inline-size}
.board-site.profile-edb .board-grid .tile-title{font-size:clamp(32px,11cqi,60px)}
.board-site.profile-edb .board-grid .tile-text{max-width:48ch}
/* Image intrinsic size must not dictate the height of its neighbouring copy. */
.board-site.profile-edb .board-grid .tile-photo{min-height:280px}
.board-site.profile-edb .tile-photo .photo-content{position:absolute;inset:0;min-height:0;height:100%}
.board-site.profile-edb .tile-photo .photo-link{overflow:hidden;min-height:0}
.board-site.profile-edb .tile-photo .board-picture{height:100%;min-height:0}
.board-site.profile-edb .tile-photo img{height:100%;max-height:100%;object-fit:contain}
.board-site.profile-edb .tile-photo.fit-cover img{object-fit:cover}
.board-site.profile-edb .tile-photo figcaption{font-size:12px;padding:8px 14px}
.board-site.profile-restaurant .board-grid .tile-copy{justify-content:center}
.board-site.profile-restaurant .board-grid .tile-menu{--editor-title-fit:min(46cqi,130px)}
.board-site.profile-restaurant .board-grid .tile-booking{--editor-title-fit:min(38cqi,104px);min-height:180px}
.board-site.profile-restaurant .board-grid .tile-contact{--editor-title-fit:min(28cqi,88px)}
.board-site.profile-restaurant .board-grid .tile-takeaway{--editor-title-fit:min(40cqi,104px);min-height:180px}
.board-site.profile-restaurant .board-grid .tile-menu .tile-title{font-size:clamp(48px,46cqi,130px);margin:0}
.board-site.profile-restaurant .board-grid .tile-takeaway .tile-title{font-size:clamp(48px,40cqi,104px);margin:0}
.board-site.profile-restaurant .board-grid .tile-hours .tile-title{font-size:clamp(42px,12cqi,68px)}
.board-site.profile-restaurant .board-grid .tile-solidarity .tile-title{font-size:clamp(36px,12cqi,60px);margin:0}
.board-site.profile-restaurant .board-grid .tile-title{font-size:clamp(38px,14cqi,72px)}
.board-site.profile-restaurant .board-grid .event-date{font-size:28px;line-height:1.2}
.board-site.profile-restaurant .board-grid .list-title{font-size:40px;line-height:1.1}
.board-site.profile-restaurant .board-grid .event-list h3{font-size:24px}
.board-site.profile-restaurant .board-grid .event-list time{font-size:17px}
.board-site.profile-restaurant .board-grid .tile-image{min-height:200px}
@media(min-width:601px) and (max-width:1000px){
 .board-site .board-grid .tile-copy{padding:20px}
 .board-site .brand{width:220px}
 .board-site .board-nav{gap:14px;padding:10px 14px}
}
@media(max-width:600px){
 .board-site .site-frame{padding:0 12px;margin:12px auto}
 .board-site .brand{width:auto;padding:6px 8px}
 .board-site .brand img{max-height:64px}
 .board-site .board-nav{gap:12px;padding:8px 14px}
 .board-site .board-grid .tile{min-height:0;--editor-title-fit:min(30cqi,56px)}
 .board-site .board-grid .tile-copy{padding:18px}
 .board-site .board-grid .tile-title,.board-site.profile-edb .board-grid .span-1 .tile-title{font-size:clamp(32px,10vw,44px);margin-bottom:12px}
 .board-site .board-grid .tile-text,.board-site .board-grid .tile-event p{font-size:17px;line-height:1.45}
 .board-site .board-grid .tile-link{font-size:17px;padding-top:10px}
 .board-site.profile-edb .board-grid .tile-photo{height:260px;min-height:0}
 .board-site.profile-restaurant .board-grid .tile.mobile-action{min-height:100px}
 .board-site.profile-restaurant .board-grid .tile-booking{--editor-title-fit:min(30cqi,64px)}
 .board-site.profile-restaurant .board-grid .tile-contact{--editor-title-fit:min(28cqi,60px)}
 .board-site.profile-restaurant .board-grid .tile-takeaway{--editor-title-fit:min(40cqi,64px);min-height:136px}
 .board-site.profile-restaurant .board-grid .tile-takeaway .tile-title{font-size:64px}
 .board-site.profile-restaurant .board-grid .tile-menu{--editor-title-fit:min(46cqi,84px);min-height:156px}
 .board-site.profile-restaurant .board-grid .tile-menu .tile-title{font-size:clamp(48px,46cqi,84px)}
 .board-site.profile-restaurant .board-grid .tile-image{min-height:156px}
 .board-site.profile-restaurant .board-grid .tile-hours .tile-title{font-size:48px}
 .board-site.profile-restaurant .board-grid .tile-solidarity .tile-title{font-size:40px}
 .board-site.profile-restaurant .board-grid .tile-event{min-height:0}
 .board-site.profile-restaurant .board-grid .event-date{font-size:26px}
}
@media print{.board-site .site-frame{max-width:none;margin:0;padding:0}.board-site .board-grid .tile{min-height:0}}
