/* =========================================================
   HNIA HARRATI — LA MAISON 1.0.20
   Editorial motion, restrained luxury.
========================================================= */
body.page-la-maison,
body.page-about { background:#fcfbf8; }

.hnia-maison-page {
    --ink:#17120f;
    --muted:#6d625b;
    --paper:#fcfbf8;
    --sand:#eee7df;
    --accent:#ca7118;
    color:var(--ink);
    background:var(--paper);
    overflow:hidden;
}
.hnia-maison-page * { box-sizing:border-box; }

/* HERO */
.hnia-maison-hero {
    position:relative;
    isolation:isolate;
    min-height:72vh;
    display:flex;
    align-items:flex-end;
    padding:150px 42px 68px;
    background:#1b1511;
    overflow:hidden;
}
.hnia-maison-hero--image::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    background-image:var(--hnia-maison-hero);
    background-size:cover;
    background-position:center 38%;
}
.hnia-maison-hero__video {
    position:absolute;
    inset:0;
    z-index:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
}
.hnia-maison-hero__veil {
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(12,8,6,.20) 0%,rgba(12,8,6,.24) 42%,rgba(12,8,6,.72) 100%);
}
.hnia-maison-hero__inner { position:relative; z-index:2; width:min(1500px,100%); margin:0 auto; }
.hnia-maison-hero__copy { max-width:920px; }
.hnia-maison-hero__label,
.hnia-maison-eyebrow {
    margin:0;
    font:700 10px/1 "Manrope",Arial,sans-serif;
    letter-spacing:.23em;
    text-transform:uppercase;
    color:#9a7457;
}
.hnia-maison-hero__label { color:#ead3bb; }
.hnia-maison-hero h1 {
    margin:18px 0 0;
    color:#fffdf9;
    font:400 clamp(68px,9vw,142px)/.82 "League Spartan",Arial,sans-serif;
    letter-spacing:-.065em;
}
.hnia-maison-hero__subtitle {
    margin:24px 0 0;
    color:#fffdf9;
    font:400 clamp(20px,2vw,30px)/1.25 "Cormorant Garamond",Georgia,serif;
}

/* INTRO */
.hnia-maison-intro {
    width:min(1120px,calc(100% - 80px));
    margin:0 auto;
    padding:clamp(96px,10vw,150px) 0 clamp(110px,11vw,170px);
}
.hnia-maison-intro__copy > p:first-child {
    max-width:860px;
    margin:0;
    font:400 clamp(25px,3vw,42px)/1.24 "Cormorant Garamond",Georgia,serif;
}
.hnia-maison-intro__statement {
    max-width:1000px;
    margin:68px 0 0;
    font:400 clamp(50px,7vw,98px)/.88 "League Spartan",Arial,sans-serif;
    letter-spacing:-.055em;
    will-change:transform;
}

/* EDITORIAL STORIES */
.hnia-maison-story {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
    align-items:center;
    gap:clamp(60px,8vw,130px);
    width:min(1380px,calc(100% - 80px));
    margin:0 auto;
    padding:clamp(84px,9vw,130px) 0;
}
.hnia-maison-story--reverse { grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr); }
.hnia-maison-story__copy { max-width:600px; }
.hnia-maison-story__copy h2,
.hnia-maison-time h2,
.hnia-maison-closing h2 {
    margin:18px 0 0;
    font:400 clamp(44px,5vw,74px)/.92 "League Spartan",Arial,sans-serif;
    letter-spacing:-.05em;
}
.hnia-maison-story__copy > p:not(.hnia-maison-eyebrow):not(.hnia-maison-story__accent) {
    margin:24px 0 0;
    font:400 15px/1.9 "Manrope",Arial,sans-serif;
    color:var(--muted);
}
.hnia-maison-story__accent {
    margin:34px 0 0;
    font:400 clamp(24px,2.4vw,34px)/1.15 "Cormorant Garamond",Georgia,serif;
    color:#2a211c;
}
.hnia-maison-story__media {
    position:relative;
    margin:0;
    min-height:640px;
    overflow:hidden;
    background:#e8e0d8;
}
.hnia-maison-story__media--portrait { min-height:760px; }
.hnia-maison-story__media img {
    width:100%;
    height:100%;
    min-height:inherit;
    display:block;
    object-fit:cover;
    transform:scale(1.06);
    will-change:transform;
}

/* MOVING TYPOGRAPHIC BREAK */
.hnia-maison-quote {
    width:min(1320px,calc(100% - 80px));
    margin:clamp(70px,8vw,120px) auto;
    padding:clamp(84px,9vw,135px) 0;
    border-top:1px solid rgba(23,18,15,.12);
    border-bottom:1px solid rgba(23,18,15,.12);
}
.hnia-maison-quote__line {
    margin:0;
    font:400 clamp(52px,7.2vw,102px)/.88 "League Spartan",Arial,sans-serif;
    letter-spacing:-.055em;
}
.hnia-maison-quote__line--offset {
    margin-top:10px;
    padding-left:clamp(70px,12vw,190px);
    color:#9a7457;
}

/* TIME */
.hnia-maison-time {
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:clamp(60px,9vw,150px);
    width:min(1320px,calc(100% - 80px));
    margin:0 auto;
    padding:clamp(100px,10vw,150px) 0;
}
.hnia-maison-time__body { padding-top:38px; }
.hnia-maison-time__body p {
    margin:0;
    font:400 15px/1.95 "Manrope",Arial,sans-serif;
    color:var(--muted);
}
.hnia-maison-time__body p + p { margin-top:28px; }

/* CLOSING */
.hnia-maison-closing {
    width:min(1480px,calc(100% - 80px));
    margin:0 auto clamp(90px,10vw,150px);
    padding:clamp(70px,8vw,110px);
    background:#17120f;
    color:#fffdf9;
}
.hnia-maison-closing__copy { max-width:820px; }
.hnia-maison-closing .hnia-maison-eyebrow { color:#e4b988; }
.hnia-maison-closing h2 { color:#fffdf9; }
.hnia-maison-closing__copy > p:not(.hnia-maison-eyebrow) {
    max-width:650px;
    margin:24px 0 0;
    font:400 15px/1.9 "Manrope",Arial,sans-serif;
    color:#d3cac4;
}
.hnia-maison-closing__actions { display:flex; flex-wrap:wrap; align-items:center; gap:26px; margin-top:38px; }
.hnia-maison-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:62px;
    padding:0 34px;
    border:1px solid var(--accent);
    border-radius:999px;
    background:var(--accent);
    color:#fff;
    text-decoration:none;
    font:700 10px/1 "Manrope",Arial,sans-serif;
    letter-spacing:.15em;
    transition:background-color .25s ease,border-color .25s ease,transform .25s ease;
}
.hnia-maison-button:hover { background:#9e540b; border-color:#9e540b; color:#fff; transform:translateY(-1px); }
.hnia-maison-link {
    color:#fffdf9;
    text-decoration:none;
    font:700 10px/1 "Manrope",Arial,sans-serif;
    letter-spacing:.15em;
    border-bottom:1px solid rgba(255,255,255,.4);
    padding-bottom:5px;
}

/* MOTION */
.hnia-reveal {
    opacity:0;
    transform:translate3d(0,32px,0);
    transition:opacity .8s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),transform .9s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms);
}
.hnia-reveal[data-reveal="left"] { transform:translate3d(-34px,18px,0); }
.hnia-reveal[data-reveal="right"] { transform:translate3d(34px,18px,0); }
.hnia-reveal.is-visible { opacity:1; transform:translate3d(0,0,0); }

@media (max-width:980px) {
    .hnia-maison-story,
    .hnia-maison-story--reverse,
    .hnia-maison-time { grid-template-columns:1fr; }
    .hnia-maison-story--reverse .hnia-maison-story__media { order:2; }
    .hnia-maison-story--reverse .hnia-maison-story__copy { order:1; }
    .hnia-maison-story__copy { max-width:760px; }
    .hnia-maison-time__body { padding-top:0; max-width:760px; }
}

@media (max-width:767px) {
    .hnia-maison-hero { min-height:560px; padding:118px 18px 38px; }
    .hnia-maison-hero__video { object-position:center center; }
    .hnia-maison-hero h1 { font-size:clamp(58px,19vw,88px); }
    .hnia-maison-hero__subtitle { margin-top:16px; font-size:20px; }
    .hnia-maison-intro,
    .hnia-maison-story,
    .hnia-maison-time { width:calc(100% - 36px); padding:72px 0; gap:42px; }
    .hnia-maison-intro__statement { margin-top:42px; font-size:48px; }
    .hnia-maison-story__copy h2,
    .hnia-maison-time h2,
    .hnia-maison-closing h2 { font-size:44px; }
    .hnia-maison-story__media,
    .hnia-maison-story__media--portrait { min-height:500px; }
    .hnia-maison-quote { width:calc(100% - 36px); margin:36px auto; padding:72px 0; }
    .hnia-maison-quote__line { font-size:50px; }
    .hnia-maison-quote__line--offset { padding-left:26px; }
    .hnia-maison-closing { width:calc(100% - 36px); margin-bottom:88px; padding:48px 24px; }
    .hnia-maison-closing__actions { align-items:flex-start; flex-direction:column; }
    .hnia-maison-button { width:100%; }
    .hnia-reveal,
    .hnia-reveal[data-reveal="left"],
    .hnia-reveal[data-reveal="right"] { transform:translate3d(0,24px,0); }
}

@media (prefers-reduced-motion: reduce) {
    .hnia-reveal,
    .hnia-reveal[data-reveal="left"],
    .hnia-reveal[data-reveal="right"] {
        opacity:1!important;
        transform:none!important;
        transition:none!important;
    }
    .hnia-maison-parallax-image,
    .hnia-parallax-text { transform:none!important; }
}
