/* ==========================================================================
   INNEY — homepage (front-page.php)
   Class prefix: soa-home-. Reuses tokens/components from main.css.
   ========================================================================== */

/* ── 1. hero ── */
.soa-home-hero{padding-top:clamp(28px,4vw,56px);padding-bottom:clamp(10px,2vw,28px);}
.soa-home-hero__grid{grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,72px);align-items:center;}
@media (max-width:760px){.soa-home-hero__grid{grid-template-columns:1fr;}}
.soa-home-hero__title{font-size:clamp(46px,7.6vw,116px);line-height:.95;letter-spacing:-.01em;margin-top:clamp(20px,3vw,34px);}
.soa-home-hero__accent{font-style:italic;color:var(--soa-accent);}
.soa-home-hero__lead{max-width:46ch;margin-top:clamp(22px,3vw,38px);}
.soa-home-hero__actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:clamp(26px,3.4vw,44px);}
.soa-home-hero__meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--soa-muted);}

.soa-home-hero__media{position:relative;cursor:pointer;}
.soa-home-hero__frame{display:block;position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--soa-bg-card);}
.soa-home-hero__frame img,.soa-home-hero__frame video{width:100%;height:116%;object-fit:cover;object-position:center top;will-change:transform;}
.soa-home-hero__frame--placeholder{background:var(--soa-bg-card);}

.soa-home-hero__caption{
	position:absolute;left:-12px;bottom:20px;
	background:var(--soa-bg);
	box-shadow:0 14px 34px rgba(41,25,15,.14);
	padding:11px 15px;
	display:flex;gap:11px;align-items:center;
}
.soa-home-hero__caption-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--soa-accent);}
.soa-home-hero__caption-name{font-family:var(--font-serif);font-size:19px;color:var(--soa-ink);line-height:1;display:block;}
.soa-home-hero__caption-region{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--soa-muted);margin-top:3px;display:block;}

@media (max-width:760px){
	.soa-home-hero__caption{left:0;}
}

/* ── 2. featured selection ── */
.soa-home-featured__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(30px,4vw,56px);}
.soa-home-featured__title{font-size:clamp(34px,4.6vw,68px);line-height:1;margin-top:0;}
.soa-home-featured__link{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mc,var(--soa-accent));border-bottom:1px solid var(--soa-accent);padding:6px 0;}
.soa-home-featured__grid{align-items:start;}
.soa-home-featured__grid > .soa-card:nth-child(2){margin-top:clamp(36px,6vw,88px);}
.soa-home-featured__grid > .soa-card:nth-child(3){margin-top:clamp(72px,12vw,168px);}
@media (max-width:760px){
	.soa-home-featured__grid > .soa-card:nth-child(2),
	.soa-home-featured__grid > .soa-card:nth-child(3){margin-top:0;}
}

/* ── 3. manifesto ── */
.soa-home-manifesto__inner{max-width:1080px;margin:0 auto;text-align:center;}
.soa-home-manifesto__rule{display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.3em;color:var(--soa-accent);margin-bottom:clamp(22px,3vw,38px);}
.soa-home-manifesto__quote{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(26px,4.1vw,56px);line-height:1.18;color:var(--soa-ink);text-wrap:balance;}
.soa-home-manifesto__sign{margin-top:clamp(26px,3vw,40px);font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--soa-muted);}

/* ── 4. atelier teaser ── */
.soa-home-atelier__media{position:relative;aspect-ratio:5/4;overflow:hidden;background:var(--soa-dark-card);}
.soa-home-atelier__media img{width:135%;height:135%;max-width:none;object-fit:cover;object-position:34% 38%;}
.soa-home-atelier__caption{
	position:absolute;left:16px;bottom:14px;
	font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
	color:var(--soa-dark-fg);mix-blend-mode:difference;
}
.soa-home-atelier__title{font-size:clamp(30px,4vw,58px);margin-top:18px;color:var(--soa-dark-fg);line-height:1.04;}
.soa-home-atelier__text{max-width:46ch;margin-top:24px;color:var(--soa-dark-fg-soft);}
.soa-home-atelier__content .soa-btn{margin-top:32px;}

/* ── 5. values ── */
.soa-home-values__head{margin-bottom:clamp(34px,4vw,58px);}
.soa-home-values__title{font-size:clamp(30px,4.2vw,62px);line-height:1;margin-top:0;}
.soa-home-values__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(20px,2.4vw,40px);}
.soa-home-values__item{border-top:1px solid rgba(var(--soa-line-rgb),.22);padding-top:20px;}
.soa-home-values__num{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--soa-accent);margin-bottom:18px;}
.soa-home-values__name{font-family:var(--font-serif);font-weight:500;font-size:clamp(24px,2vw,30px);color:var(--soa-ink);}
.soa-home-values__desc{margin-top:12px;font-size:14px;line-height:1.72;color:var(--soa-ink-softer);}

/* ── 6. CTA band ── */
.soa-home-cta__inner{max-width:980px;margin:0 auto;text-align:center;}
.soa-home-cta__title{font-size:clamp(38px,6.4vw,92px);line-height:1.02;}
.soa-home-cta__accent{font-style:italic;color:var(--soa-accent);}
.soa-home-cta__sub{margin:clamp(22px,3vw,34px) auto clamp(28px,3.4vw,44px);max-width:50ch;}
