/* Mobile-first layout corrections for phones, tablets, and short viewports. */
html{overflow-x:clip}
body{min-width:320px;overflow-x:clip}
.site-header .menu{display:none}

@media(max-width:850px){
	.site-header,.site-header.scrolled{height:68px;padding:0 max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left))}
	.site-header.scrolled{background:rgba(19,15,12,.96)}
	.site-header .primary-nav,.site-header .consult{display:none}
	.site-header .menu{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;margin-left:auto}
	.logo{gap:10px}
	.logo b{width:32px;height:32px;font-size:27px}
	.logo span{font-size:11px;letter-spacing:.22em}
	.logo small{font-size:5px;letter-spacing:.42em}

	.hero{height:100vh;height:100svh;min-height:620px;max-height:820px}
	.hero>img{object-position:center center}
	.hero-copy{left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right));top:auto;bottom:max(74px,calc(74px + env(safe-area-inset-bottom)));transform:none;max-width:none}
	.hero h1{font-size:64px;line-height:.88;margin:20px 0 18px}
	.hero-copy>p:last-of-type{font-size:13px;line-height:1.6;max-width:350px}
	.hero-copy>a{width:160px;padding:14px 0;margin-top:28px}
	.hero-mark{display:none}

	.pad{padding:84px 20px}
	.index{font-size:7px;line-height:1.4}
	.film-head,.collections-head{display:block}
	.film-head{margin-bottom:36px}
	.film-head h2,.showroom h2,.collections h2,.testimonial-head h2,.partner-head h2{font-size:52px;line-height:1.02;margin:16px 0 24px}
	.film-head>p:last-child{font-size:12px;line-height:1.65;max-width:350px}
	.film-frame video{aspect-ratio:16/10;min-height:0}
	.film-caption{padding:12px 0;font-size:7px}

	.manifesto-copy{margin:52px 0 0}
	.manifesto h2{font-size:44px;line-height:1.08}
	.manifesto-note{margin:34px 0 58px;max-width:350px;font-size:12px;line-height:1.7}
	.numbers{grid-template-columns:1fr;gap:18px;padding-top:26px}
	.numbers>div{gap:18px}
	.numbers strong{font-size:48px}

	.showroom{display:block}
	.showroom-image img{height:auto;aspect-ratio:1.35/1;min-height:320px;max-height:520px;object-fit:cover}
	.showroom-copy{padding:70px 20px 84px}
	.showroom-copy>p:not(.index):not(.overline):not(.address){font-size:12px;line-height:1.7}
	.address{margin-top:34px}
	.circle-link{width:120px;height:120px;margin-top:44px;font-size:8px}

	.collections-head{margin-bottom:42px}
	.collection-grid{grid-template-columns:1fr;gap:38px}
	.collection-card img{height:auto;aspect-ratio:4/5;min-height:280px;max-height:420px}
	.collection-card h3{font-size:28px;margin:7px 0}
	.collection-card p{font-size:11px}

	.feature{display:block;min-height:0}
	.feature-image{height:auto;aspect-ratio:1/1.1;min-height:340px;max-height:560px}
	.feature-image>span{left:20px;bottom:22px}
	.feature-copy{padding:72px 20px 84px}
	.feature-copy h2,.contact h2{font-size:52px;line-height:1.04}
	.feature-copy>p:not(.index):not(.overline){font-size:12px;line-height:1.7}
	.feature dl{margin-top:38px}

	.expertise-title{margin:48px 0 58px}
	.expertise-title h2,.gallery-head h2,.process-intro h2{font-size:52px;line-height:1.04}
	.expertise-list a{grid-template-columns:30px 1fr 20px;gap:8px;padding:23px 0}
	.expertise-list h3{font-size:24px;line-height:1.2}
	.expertise-list p{display:none}

	.gallery-head{margin-bottom:42px}
	.gallery-head h2{text-align:left}
	.gallery-grid{display:block}
	.gallery-grid figure,.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(3){width:100%;margin:0 0 52px}
	.gallery-grid img,.gallery-grid figure:nth-child(3) img{height:auto;aspect-ratio:4/3;object-fit:cover}
	.gallery-grid figcaption{padding:13px 0;font-size:7px;gap:15px}

	.testimonial-head{margin-bottom:48px}
	.testimonial-track{grid-template-columns:1fr}
	.testimonial-track blockquote{padding:32px 22px;min-height:0}
	.testimonial-track blockquote p{font-size:20px;line-height:1.45}

	.partner-head{margin-bottom:48px}
	.partner-head h2{font-size:48px}
	.partner-head>p:last-child{font-size:12px;line-height:1.7}
	.logo-wall{grid-template-columns:repeat(2,1fr)}
	.logo-wall span{height:108px;padding:12px}
	.logo-wall b{font-size:9px;text-align:center}

	.process-intro{margin:48px 0 54px}
	.process ol{grid-template-columns:1fr}
	.process li{padding:24px 0 42px}
	.process li h3{font-size:28px;margin:40px 0 8px}
	.process li p{font-size:11px;max-width:260px}

	.contact{grid-template-columns:1fr;gap:0}
	.contact h2{margin-top:18px}
	.contact-copy>p:last-child{font-size:12px;line-height:1.7}
	.contact form{margin-top:44px;grid-template-columns:1fr;gap:26px}
	.contact form .wide,.contact form button,.contact form .status{grid-column:1}
	.contact input,.contact select,.contact textarea{min-height:44px;font-size:12px}
	.contact form button{min-height:52px;padding:17px 16px}

	.sidebar{width:100%;padding:24px max(20px,env(safe-area-inset-right)) max(30px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
	.admin-bar .sidebar{top:46px;height:calc(100vh - 46px);height:calc(100svh - 46px)}
	.sidebar-top button{min-width:44px;min-height:44px;padding:10px}
	.sidebar nav a{font-size:42px;line-height:1.15;padding:13px 0}
	.sidebar nav a span{width:35px}
	.sidebar-social{gap:18px;flex-wrap:wrap;font-size:8px}

	.site-footer{min-height:0;padding:34px max(20px,env(safe-area-inset-right)) max(34px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));display:grid;grid-template-columns:1fr 1fr;gap:22px;font-size:7px}
	.site-footer .logo{grid-column:1/-1}
	.site-footer p{margin:0;line-height:1.5}
	.site-footer>a:last-child{text-align:right}
	.page-shell{padding:130px 20px 84px}
	.page-shell h1{font-size:56px;line-height:1.02;margin-bottom:32px}
	.page-shell .entry-content{font-size:15px;line-height:1.7}
}

@media(max-width:400px){
	.hero h1{font-size:54px}
	.hero-copy{bottom:58px}
	.film-head h2,.showroom h2,.collections h2,.testimonial-head h2,.process-intro h2{font-size:46px}
	.manifesto h2{font-size:40px}
	.feature-copy h2,.contact h2{font-size:46px}
	.expertise-title h2,.gallery-head h2{font-size:46px}
	.collection-card img{min-height:240px}
	.sidebar nav a{font-size:37px}
}

@media(prefers-reduced-motion:reduce){
	.hero>img{animation:none}
}
