
/* v7 mobile-first layout integrity patch; overrides earlier fixed breakpoints */
html{width:100%;max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
body{width:100%;max-width:100%;min-width:0;overflow-x:clip;font-size:16px}
*,*::before,*::after{box-sizing:border-box}
img,video,iframe,svg{max-width:100%}
img{display:block;height:auto}
.container{width:100%;max-width:1260px;margin-left:auto;margin-right:auto;padding-left:clamp(16px,3vw,28px);padding-right:clamp(16px,3vw,28px)}
.top,.hero,.metrics,.focus,.section,.footer{width:100%;max-width:100%;min-width:0}
.nav{min-width:0}.brand{min-width:0}.brand span:last-child{min-width:0}.brand small{white-space:normal;line-height:1.25}
.hero-grid,.intro,.cards,.metric-grid,.focus-grid,.photo-gallery{min-width:0}.hero-grid>*,.intro>*,.cards>*,.photo-gallery>*{min-width:0}
.hero .portrait{width:100%;min-width:0;max-width:100%;overflow:hidden;isolation:isolate}
.hero .portrait>img{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center 24%}
.about-image,.about-image img{display:block;max-width:100%;min-width:0}.about-image img{width:100%;height:auto;max-height:460px;object-fit:cover;object-position:center 23%}
.about-page,.about-copy,.article{width:100%;min-width:0;overflow-wrap:anywhere}
.about-main-photo{width:100%;max-width:850px;height:auto;max-height:580px;object-fit:contain}
.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.photo-gallery figure{width:100%;min-width:0}.photo-gallery img{width:100%;height:290px;max-width:100%;object-fit:cover;object-position:center 25%}
.tile,.tile img{max-width:100%}.tile{min-width:0}.tile-inner{overflow-wrap:anywhere}
@media(max-width:900px){
 .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:20px;min-height:0;padding-top:48px;padding-bottom:48px}
 .hero .portrait{height:300px;border-radius:16px}
 .intro{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
 .links{left:0;right:0;width:100%;max-width:100%;box-shadow:0 15px 30px #0003}
 .links.open{display:flex;z-index:100}
}
@media(max-width:650px){
 .container{max-width:100%;padding-left:18px;padding-right:18px}
 .nav{min-height:66px;gap:10px}.brand{font-size:16px;white-space:normal;line-height:1.12}.brand small{font-size:8px}.monogram{font-size:27px;padding-right:7px}.links{top:66px}
 .hero{min-height:0}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:26px;padding-top:32px;padding-bottom:34px}
 .hero h1{font-size:clamp(36px,10vw,50px);line-height:1.1;margin:12px 0}.hero blockquote{font-size:25px;margin:10px 0 16px}.hero p{font-size:14px;line-height:1.65}
 .hero .portrait{width:100%;height:min(90vw,390px);min-height:240px;border-radius:18px;padding:16px}
 .portrait-label span{font-size:23px}.portrait-label small{font-size:11px}
 .metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid>div{padding:15px 10px;min-width:0}.metric-grid b{font-size:25px}.metric-grid small{font-size:11px}
 .focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.focus-grid>div{padding:14px 6px}
 .intro{display:flex;flex-direction:column;align-items:stretch;gap:18px}.intro>div{width:100%}.intro p{font-size:15px;line-height:1.7}
 .about-image img{height:auto;max-height:400px}.section{padding:38px 0}.section-head{flex-wrap:wrap;gap:8px}.section h2{font-size:28px}
 .cols3,.cols4{grid-template-columns:repeat(1,minmax(0,1fr));gap:14px}.tile{min-height:0}.tile img{height:180px;object-fit:cover}
 .photo-gallery{grid-template-columns:minmax(0,1fr);gap:14px}.photo-gallery img{height:auto;max-height:420px;object-fit:contain;background:#eae7e0}.photo-gallery figcaption{font-size:13px}
 .about-page{padding-top:30px}.about-main-photo{max-height:none;object-fit:contain}
 .article h1{font-size:30px}.article-text{font-size:16px}.actions{gap:10px}.btn{padding:12px 15px;font-size:13px}
 .footer{padding:25px 0}.admin-main{max-width:100%}
}
