/* 115 Schiller v0.9.15 | Responsive layout, photo controls and footer rhythm. */
:root{--sch-space-gutter:clamp(18px,3vw,32px)}
#sch-global-footer .sch-forest{display:flex;flex-wrap:wrap;align-items:center;column-gap:9px;row-gap:5px;line-height:1.65;min-width:0}
#sch-global-footer .sch-forest-credit{white-space:nowrap}
#sch-global-footer .sch-forest .sch-footer-tree{margin:0;transform:none;flex:0 0 16px;width:16px;height:16px;display:block;stroke:#dfc39b}
#sch-global-footer .sch-forest a{display:inline-flex;align-items:center;gap:4px;max-width:100%;overflow-wrap:anywhere}
#sch-global-footer .sch-foot-group{min-width:0}
#sch-global-footer .sch-foot-grid{align-items:start}
/* Major content shares a consistent edge and no component expands the viewport. */
main{min-width:0}
main .container{min-width:0}
main img{max-width:100%}
.funnel-hero>* , .funnel-cards>*, .property-photos>*{min-width:0}
.funnel-hero{column-gap:clamp(28px,5vw,80px)}
.funnel-copy .funnel-cta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 17px}
.funnel-photo-controls{gap:12px 18px}
.funnel-benefits .funnel-cards h3{line-height:1.35}
.funnel-benefits .funnel-cards p{margin-bottom:0}
/* Thumbnails are real buttons: pointer/keyboard affordance and a quiet hover frame. */
.property-photos .gallery button{cursor:zoom-in;touch-action:manipulation}
.property-photos .gallery button:hover{outline:2px solid rgba(183,142,82,.66);outline-offset:-3px}
.property-photos .gallery button:focus-visible{outline:3px solid #b9915a;outline-offset:-4px;z-index:1}
.property-photos .gallery button img{pointer-events:none}
.property-photos .sch-photo-switch{margin-top:24px;margin-bottom:18px}
.property-photos .gallery-open-all{min-height:46px;margin-top:17px}
.property-photos .gallery-note{margin:13px 0 0;max-width:850px}
.property-photos .sch-photo-disclosure{margin:12px 0 0}
.lightbox-inner{min-width:0;min-height:0}
.lightbox .lightbox-head{gap:20px}
.lightbox .lightbox-head>span{line-height:1.5;min-width:0}
.lightbox .lightbox-foot{gap:16px;line-height:1.5}
.lightbox .lightbox-foot #caption{min-width:0;overflow-wrap:anywhere}
.lightbox .lightbox-buttons{flex:0 0 auto}
@media (max-width:900px){
 .funnel-hero{row-gap:30px}
 .property-photos .sch-photo-head{margin-bottom:18px}
 .lightbox-inner figure img{max-height:100%;object-fit:contain}
}
@media (max-width:680px){
 .funnel-hero.container{padding-inline:18px}
 .funnel-copy h1{margin:14px 0 18px;line-height:1.07;overflow-wrap:break-word}
 .funnel-copy p{line-height:1.65}
 .funnel-benefits .container{padding-inline:18px}
 .funnel-benefits h2{margin-bottom:24px}
 .funnel-cards{gap:12px}
 .funnel-cards>div{padding:23px 21px}
 .funnel-cards h3{margin-top:13px}
 .funnel-photo-controls{gap:9px}
 .funnel-photo-switch button{min-height:46px}
 .property-photos .sch-photo-head h2{line-height:1.16}
 .property-photos .sch-photo-switch{margin:17px 0 14px}
 .lightbox .lightbox-head{padding:12px 16px;gap:12px}
 .lightbox .lightbox-foot{padding:11px 16px 16px;gap:10px}
 #sch-global-footer .sch-forest{gap:6px 8px}
 #sch-global-footer .sch-forest a{line-height:1.5}
}
@media (max-width:380px){.lightbox .lightbox-head>span{font-size:10px}.lightbox .lightbox-head button{flex:0 0 auto}}
@media (prefers-reduced-motion:reduce){.property-photos .gallery button img{transition:none}}
