        /* =========================================================
           DESIGN TOKENS
        ========================================================= */
        :root {
            --charred-espresso: #141312;
            --plaster-white: #ffffff;
            --burnished-bronze: #7D7063;
            --raw-linen: #E7E2DB;
            --limestone-canvas: #F5F2EE;
            --surface: #fbf9f7;
            --surface-container-low: #f5f3f1;
            --surface-container-lowest: #ffffff;
            --on-surface: #1b1c1b;
            --on-surface-variant: #4a4640;
            --outline: #7b766f;
            --outline-variant: #ccc6bd;
            --dark-panel: #1c1b1a;

            --space-2xs: .25rem;
            --space-xs: .5rem;
            --space-sm: 1rem;
            --space-md: 1.5rem;
            --space-lg: 2.5rem;
            --space-xl: 4rem;
            --space-2xl: 6rem;
            --space-3xl: 9rem;
            --gutter-mobile: 1.25rem;
            --gutter-desktop: 2.5rem;
            --max-width: 88rem;
        }
#process {
    background: unset;
    color: unset;
}


        /* =========================================================
           RESET & BASE
        ========================================================= */
        * { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        html, body { margin: 0; padding: 0; }
        body {
            background: var(--surface);
            color: var(--on-surface);
            font-family: 'Montserrat', sans-serif;
            font-weight: 300;
            -webkit-font-smoothing: antialiased;
            overscroll-behavior: none;
        }
        img { max-width: 100%; display: block; }
        a { color: inherit; text-decoration: none; }
        ul { list-style: none; margin: 0; padding: 0; }
        button { font: inherit; color: inherit; background: none; border: none; cursor: pointer; }
        input, select, textarea { font: inherit; color: inherit; }
        ::selection { background: var(--charred-espresso); color: var(--plaster-white); }
        h1, h2, h3, p { margin: 0; }

        .material-symbols-outlined {
            font-family: 'Material Symbols Outlined';
            font-weight: normal;
            font-style: normal;
            line-height: 1;
            display: inline-block;
            white-space: nowrap;
            -webkit-font-smoothing: antialiased;
        }

        .eb-garamond { font-family: 'EB Garamond', serif; }

        .wrap {
            max-width: var(--max-width);
            margin: 0 auto;
            padding: 0 var(--gutter-mobile);
        }
        @media (min-width: 1024px) {
            .wrap { padding: 0 var(--gutter-desktop); }
        }

        .label {
            font-family: 'Montserrat', sans-serif;
            font-size: .6875rem;
            line-height: 1rem;
            letter-spacing: .18em;
            font-weight: 500;
            text-transform: uppercase;
        }
        .eyebrow {
            display: block;
            color: var(--burnished-bronze);
        }
        .eyebrow.on-dark { color: var(--burnished-bronze); }

        h2.headline {
            font-family: 'EB Garamond', serif;
            font-weight: 400;
            color: var(--charred-espresso);
            line-height: 1.15;
            font-size: 2.25rem;
        }
        @media (min-width: 1024px) {
            h2.headline { font-size: 2.6rem; line-height: 1.15; letter-spacing: -.015em; }
        }

        h3.title-editorial {
            font-family: 'EB Garamond', serif;
            font-size: 1.25rem;
            line-height: 1.75rem;
            letter-spacing: .02em;
            font-weight: 400;
            color: var(--charred-espresso);
        }

        p.lede {
            font-size: .9375rem;
            line-height: 1.625rem;
            letter-spacing: .015em;
            color: var(--on-surface-variant);
            font-weight: 300;
        }

        /* Buttons */
        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: .4em;
            padding: 1rem 2.5rem;
            font-size: .6875rem;
            letter-spacing: .18em;
            font-weight: 500;
            text-transform: uppercase;
            transition: background-color .2s ease, color .2s ease;
            white-space: nowrap;
        }
        .btn-dark { background: var(--charred-espresso); color: var(--plaster-white); }
        .btn-dark:hover { background: var(--burnished-bronze); }
        .btn-light { background: var(--plaster-white); color: var(--charred-espresso); box-shadow: 0 4px 14px rgba(0,0,0,.12); }
        .btn-light:hover { background: var(--limestone-canvas); }
        .btn-ghost {
            background: rgba(20,19,18,.6);
            color: var(--plaster-white);
            border: 1px solid rgba(125,112,99,.4);
            backdrop-filter: blur(6px);
        }
        .btn-ghost:hover { background: var(--charred-espresso); }

        /* =========================================================
           HEADER
        ========================================================= */
        .site-header {
            position: fixed;
            top: 0; left: 0; right: 0;
            z-index: 50;
            background: rgba(251,249,247,.95);
            backdrop-filter: blur(8px);
            box-shadow: 0 1px 8px rgba(0,0,0,.04);
        }
        .site-header .wrap {
            height: 5rem;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: var(--space-sm);
        }
        .brand { display: flex; align-items: center; gap: .75rem; }
        .brand img { height: 2.25rem; width: auto; object-fit: contain; }
        .brand-name {
            font-family: 'EB Garamond', serif;
            font-size: 1.25rem;
            letter-spacing: .22em;
            text-transform: uppercase;
            color: var(--charred-espresso);
        }
        .main-nav { display: none; align-items: center; gap: var(--space-md); }
        .main-nav a {
            font-size: .6875rem;
            letter-spacing: .18em;
            text-transform: uppercase;
            color: var(--on-surface-variant);
            transition: color .2s ease;
        }
        .main-nav a:hover { color: var(--charred-espresso); }
        @media (min-width: 1280px) { .main-nav { display: flex; } }

        /* =========================================================
           HERO
        ========================================================= */
        .hero {
            position: relative;
            width: 100%;
            height: 92vh;
            min-height: 640px;
            margin-top: -5rem;
            overflow: hidden;
            background: var(--charred-espresso);
            color: var(--plaster-white);
            display: flex;
            align-items: flex-end;
        }
        .hero-slides { position: absolute; inset: 0; }
        .hero-slide {
            position: absolute; inset: 0;
            opacity: 0; z-index: 0;
            transition: opacity 1s ease-out;
        }
        .hero-slide.is-active { opacity: 1; z-index: 1; }
        .hero-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
        .hero-slide::after {
            content: '';
            position: absolute; inset: 0;
            background: linear-gradient(to top, rgba(20,19,18,1), rgba(20,19,18,.55) 55%, rgba(20,19,18,.35));
        }
        .hero-inner {
            position: relative; z-index: 2;
            width: 100%;
            padding-top: 8rem;
            padding-bottom: var(--space-xl);
        }
        .hero-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: var(--space-lg);
            align-items: center;
        }
        @media (min-width: 1024px) { .hero-grid { grid-template-columns: 7fr 5fr; gap: var(--space-xl); } }

        .hero-kicker { display: flex; align-items: center; gap: var(--space-sm); margin-bottom: var(--space-md); }
        .hero-kicker .rule { width: 2rem; height: 1px; background: var(--burnished-bronze); }
        .hero-kicker span.label { color: var(--raw-linen); letter-spacing: .25em; }

        .hero h1 {
            font-family: 'EB Garamond', serif;
            font-weight: 400;
            font-size: 3.25rem;
            line-height: 1.08;
            letter-spacing: -.02em;
            margin-bottom: var(--space-md);
        }
        @media (min-width: 1024px) { .hero h1 { font-size: 4.5rem; } }

        .hero p.intro {
            font-size: 1.125rem;
            line-height: 1.875rem;
            letter-spacing: .01em;
            color: var(--raw-linen);
            font-weight: 300;
            max-width: 40rem;
            margin-bottom: var(--space-md);
        }
        .hero-cta { display: flex; flex-wrap: wrap; gap: var(--space-sm); }

        .hero-card {
            width: 100%;
            max-width: 340px;
            margin: 0 auto;
            padding: var(--space-lg);
            border-radius: .75rem;
            background: rgba(20,19,18,.6);
            border: 1px solid rgba(125,112,99,.4);
            backdrop-filter: blur(8px);
            box-shadow: 0 20px 40px rgba(0,0,0,.3);
            text-align: center;
        }
        @media (min-width: 1024px) { .hero-card { margin-left: auto; margin-right: 0; } }
        .hero-card img { max-width: 260px; margin: 0 auto var(--space-md); filter: drop-shadow(0 2px 4px rgba(0,0,0,.3)); }
        .hero-card .rule { width: 3rem; height: 1px; background: rgba(125,112,99,.4); margin: 0 auto var(--space-md); }
        .hero-card p { color: rgba(231,226,219,.9); letter-spacing: .25em; }

        .hero-footer {
            margin-top: var(--space-lg);
            padding-top: var(--space-md);
            border-top: 1px solid rgba(255,255,255,.1);
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: var(--space-sm);
        }
        .hero-tabs { display: none; align-items: center; gap: var(--space-xs); }
        @media (min-width: 768px) { .hero-tabs { display: flex; } }
        .hero-tabs a {
            font-size: .6875rem;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: rgba(231,226,219,.8);
            padding: var(--space-xs) var(--space-sm);
            background: rgba(20,19,18,.6);
            border-bottom: 1px solid transparent;
            transition: background-color .2s ease, color .2s ease;
        }
        .hero-tabs a.is-active { border-color: rgba(125,112,99,.4); }
        .hero-tabs a:hover { background: var(--charred-espresso); color: var(--plaster-white); }

        .hero-controls { display: flex; align-items: center; gap: var(--space-md); margin-left: auto; }
        .slide-progress-group { display: flex; align-items: center; gap: var(--space-sm); }
        .slide-progress-group .num { font-size: .6875rem; letter-spacing: .2em; color: var(--plaster-white); }
        .slide-progress-group .num.dim { color: var(--burnished-bronze); }
        .slide-dots { display: flex; align-items: center; gap: .25rem; }
        .slide-dots button {
            width: .5rem; height: .5rem;
            border-radius: 999px;
            background: rgba(125,112,99,.4);
            transition: all .2s ease;
            padding: 0;
        }
        .slide-dots button.is-active { width: .625rem; height: .625rem; background: var(--plaster-white); }
        .slide-dots button:hover { background: var(--burnished-bronze); }
        .slide-track {
            width: 4rem; height: 1px;
            background: rgba(125,112,99,.4);
            position: relative;
            overflow: hidden;
        }
        .slide-track .fill {
            position: absolute; left: 0; top: 0; bottom: 0;
            background: var(--plaster-white);
            transition: width .5s ease;
        }
        .hero-nav-btns { display: flex; align-items: center; gap: .25rem; }
        .hero-nav-btns button {
            width: 2.5rem; height: 2.5rem;
            display: flex; align-items: center; justify-content: center;
            background: rgba(20,19,18,.8);
            color: var(--plaster-white);
            transition: background-color .2s ease;
        }
        .hero-nav-btns button:hover { background: var(--burnished-bronze); }

        /* =========================================================
           SECTION SHELLS
        ========================================================= */
        section { width: 100%; }
        .section-pad { padding: var(--space-3xl) 0; }
        .section-pad-sm { padding: var(--space-2xl) 0; }
        .bg-surface { background: var(--surface); }
        .bg-low { background: var(--surface-container-low); }
        .bg-linen { background: var(--limestone-canvas); }
        .bg-dark { background: var(--charred-espresso); color: var(--plaster-white); }

        .section-header {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: var(--space-sm);
            margin-bottom: var(--space-2xl);
        }
        @media (min-width: 768px) { .section-header { flex-direction: row; align-items: flex-end; } }
        .section-header .max-copy { max-width: 34rem; }
        .section-header .side-copy { max-width: 26rem; color: var(--on-surface-variant); font-size: .8125rem; }

        /* =========================================================
           TRUST / STATS
        ========================================================= */
        .stat-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: var(--space-md);
            margin-bottom: var(--space-xl);
        }
        @media (min-width: 640px) { .stat-grid { grid-template-columns: 1fr 1fr; } }
        @media (min-width: 1024px) { .stat-grid { grid-template-columns: repeat(4, 1fr); } }
        .stat-card {
            background: var(--surface-container-lowest);
            padding: var(--space-lg);
            box-shadow: 0 1px 3px rgba(0,0,0,.06);
            display: flex; flex-direction: column; justify-content: space-between; gap: var(--space-md);
            transition: transform .3s ease;
        }
        .stat-card:hover { transform: translateY(-4px); }
        .stat-card .row { display: flex; align-items: center; justify-content: space-between; }
        .stat-card .num { font-family: 'EB Garamond', serif; font-size: 3.25rem; color: var(--charred-espresso); }
        .stat-card .num .accent { color: var(--burnished-bronze); }
        .stat-card .material-symbols-outlined { color: var(--burnished-bronze); font-size: 28px; }
        .stat-card h3 { margin-bottom: var(--space-2xs); }
        .stat-card p { font-size: .8125rem; line-height: 1.375rem; color: var(--on-surface-variant); }

        .press-bar {
            padding-top: var(--space-md);
            border-top: 1px solid rgba(125,112,99,.15);
            display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--space-sm);
        }
        @media (min-width: 768px) { .press-bar { flex-direction: row; } }
        .press-logos { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-md); width: 100%; }
        @media (min-width: 768px) { .press-logos { width: auto; gap: var(--space-lg); } }
        .press-logos div {
            padding: var(--space-2xs) var(--space-md);
            border: 1px solid rgba(125,112,99,.35);
            text-align: center;
            font-family: 'EB Garamond', serif;
            font-style: italic;
            color: var(--on-surface-variant);
            transition: border-color .2s ease;
        }
        .press-logos div:hover { border-color: var(--charred-espresso); }

        /* =========================================================
           ABOUT
        ========================================================= */
        .about-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-xl); align-items: center; }
        @media (min-width: 1024px) { .about-grid { grid-template-columns: 1fr 1fr; } }
        .about-media { position: relative; }
        .about-media .frame { position: relative; background: var(--limestone-canvas); aspect-ratio: 4/5; overflow: hidden; box-shadow: 0 20px 40px rgba(0,0,0,.15); }
        .about-media .frame img { width: 100%; height: 100%; object-fit: cover; }
        .about-quote {
            display: none;
            position: absolute; bottom: -1.5rem; right: -1.5rem;
            max-width: 20rem;
            background: var(--charred-espresso);
            color: var(--plaster-white);
            padding: var(--space-md);
            box-shadow: 0 20px 40px rgba(0,0,0,.25);
        }
        @media (min-width: 640px) { .about-quote { display: block; } }
        .about-quote span { color: var(--raw-linen); margin-bottom: var(--space-2xs); }
        .about-quote p { font-family: 'EB Garamond', serif; font-style: italic; color: var(--raw-linen); font-size: 1.25rem; }
        .about-copy p { margin-bottom: var(--space-sm); }
        .about-link { display: inline-flex; align-items: center; gap: var(--space-xs); color: var(--charred-espresso); transition: color .2s ease; margin-top: var(--space-xs); }
        .about-link:hover { color: var(--burnished-bronze); }
        .about-link .material-symbols-outlined { font-size: 18px; transition: transform .2s ease; }
        .about-link:hover .material-symbols-outlined { transform: translateX(4px); }

        /* =========================================================
           SERVICES / FLIP CARDS
        ========================================================= */
        .flip-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); }
        @media (min-width: 768px) { .flip-grid { grid-template-columns: repeat(3, 1fr); } }

        .flip-card { height: 460px; perspective: 1000px; cursor: pointer; }
        .flip-card-inner {
            position: relative;
            width: 100%; height: 100%;
            transition: transform .7s cubic-bezier(.4,.2,.2,1);
            transform-style: preserve-3d;
            box-shadow: 0 4px 10px rgba(0,0,0,.1);
        }
        .flip-card:hover .flip-card-inner,
        .flip-card.is-flipped .flip-card-inner { transform: rotateY(180deg); }
        .flip-front, .flip-back {
            position: absolute; inset: 0;
            width: 100%; height: 100%;
            backface-visibility: hidden;
        }
        .flip-front {
            background: var(--charred-espresso);
            overflow: hidden;
            display: flex; flex-direction: column; justify-content: space-between;
            padding: var(--space-md);
        }
        .flip-front img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
        .flip-front::before {
            content: '';
            position: absolute; inset: 0;
            background: linear-gradient(to top, rgba(20,19,18,.9), rgba(20,19,18,.3) 60%, transparent);
        }
        .flip-front-top, .flip-front-bottom { position: relative; z-index: 1; }
        .flip-front-top { display: flex; align-items: center; justify-content: space-between; }
        .flip-tag { background: rgba(20,19,18,.9); color: var(--plaster-white); padding: var(--space-2xs) var(--space-xs); letter-spacing: .1em; }
        .flip-sync { width: 2rem; height: 2rem; border-radius: 999px; background: rgba(255,255,255,.2); display: flex; align-items: center; justify-content: center; color: var(--plaster-white); }
        .flip-front-bottom { background: rgba(20,19,18,.8); padding: var(--space-md); border: 1px solid rgba(255,255,255,.1); }
        .flip-front-bottom h3 { color: var(--plaster-white); }
        .flip-front-bottom .cta { color: var(--burnished-bronze); letter-spacing: .1em; margin-top: .25rem; }

        .flip-back {
            transform: rotateY(180deg);
            background: var(--charred-espresso);
            color: var(--plaster-white);
            padding: var(--space-lg);
            border: 1px solid rgba(125,112,99,.4);
            display: flex; flex-direction: column; justify-content: space-between;
        }
        .flip-back-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--space-xs); }
        .flip-back-top .material-symbols-outlined { color: var(--burnished-bronze); }
        .flip-back h3 { color: var(--plaster-white); font-size: 1.75rem; margin: var(--space-2xs) 0; }
        .flip-back p.desc { font-size: .8125rem; color: rgba(231,226,219,.9); margin-bottom: var(--space-sm); }
        .flip-back ul { display: flex; flex-direction: column; gap: var(--space-2xs); padding-top: var(--space-xs); border-top: 1px solid rgba(255,255,255,.1); font-size: .6875rem; color: rgba(231,226,219,.8); letter-spacing: .05em; }
        .flip-back li { display: flex; align-items: center; gap: var(--space-2xs); }
        .flip-back li::before { content: ''; width: .375rem; height: .375rem; background: var(--burnished-bronze); flex-shrink: 0; }
        .flip-back-link {
            display: flex; align-items: center; justify-content: space-between;
            border: 1px solid rgba(125,112,99,.5);
            padding: var(--space-xs) var(--space-sm);
            letter-spacing: .2em;
            color: var(--plaster-white);
            transition: background-color .2s ease;
            margin-top: var(--space-sm);
        }
        .flip-back-link:hover { background: var(--burnished-bronze); }

        .delivery-strip {
            margin-top: var(--space-xl);
            background: var(--charred-espresso);
            color: var(--plaster-white);
            padding: var(--space-lg);
            box-shadow: 0 10px 25px rgba(0,0,0,.15);
        }
        .delivery-strip .inner {
            display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--space-md);
            text-align: center;
        }
        @media (min-width: 1024px) { .delivery-strip .inner { flex-direction: row; text-align: left; padding: var(--space-md); } }
        .delivery-strip h3 { text-transform: uppercase; font-weight: 300; font-size: 1.75rem; font-family: 'EB Garamond', serif; margin: var(--space-2xs) 0; }
        .delivery-strip p.sub { font-size: .8125rem; color: var(--raw-linen); }

        /* =========================================================
           DESIGN-BUILD DIFFERENCE
        ========================================================= */
        .diff-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-xl); align-items: center; margin-bottom: var(--space-2xl); }
        @media (min-width: 1024px) { .diff-grid { grid-template-columns: 5fr 7fr; } }
        .diff-copy p { color: var(--on-surface-variant); margin-top: var(--space-xs); }
        .diff-steps { display: grid; grid-template-columns: repeat(5, 1fr); gap: .5rem; padding-top: var(--space-sm); margin-top: var(--space-sm); border-top: 1px solid rgba(125,112,99,.25); }
        .diff-steps div { text-align: center; }
        .diff-steps .step-num { display: block; font-family: 'EB Garamond', serif; font-size: .75rem; font-weight: 600; color: var(--burnished-bronze); }
        .diff-steps .step-label { display: block; font-size: .625rem; letter-spacing: .08em; text-transform: uppercase; color: var(--charred-espresso); }
        .diff-media { aspect-ratio: 16/9; background: var(--limestone-canvas); overflow: hidden; box-shadow: 0 10px 25px rgba(0,0,0,.1); }
        .diff-media img { width: 100%; height: 100%; object-fit: cover; }

        .compare { background: var(--surface-container-lowest); padding: var(--space-md); box-shadow: 0 1px 3px rgba(0,0,0,.06); }
        @media (min-width: 1024px) { .compare { padding: var(--space-xl); } }
        .compare-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); }
        @media (min-width: 768px) { .compare-grid { grid-template-columns: 1fr 1fr; } }
        .compare-col { padding: var(--space-lg); display: flex; flex-direction: column; gap: var(--space-md); }
        .compare-col.light { background: var(--surface-container-low); }
        .compare-col.dark { background: var(--charred-espresso); color: var(--plaster-white); }
        .compare-col .kicker { font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--outline); }
        .compare-col.dark .kicker { color: var(--burnished-bronze); }
        .compare-col h3 { color: var(--on-surface-variant); font-size: 1.75rem; }
        .compare-col.dark h3 { color: var(--plaster-white); }
        .compare-item { padding: var(--space-sm); background: var(--surface-container-lowest); }
        .compare-col.dark .compare-item { background: var(--dark-panel); }
        .compare-item .field { display: block; font-size: .6875rem; letter-spacing: .05em; text-transform: uppercase; color: var(--outline); margin-bottom: .25rem; }
        .compare-col.dark .compare-item .field { color: var(--burnished-bronze); }
        .compare-item .value { font-weight: 500; color: var(--charred-espresso); }
        .compare-col.dark .compare-item .value { color: var(--plaster-white); }
        .compare-item p { font-size: .75rem; color: var(--on-surface-variant); margin-top: .25rem; }
        .compare-col.dark .compare-item p { color: rgba(231,226,219,.8); }

        /* =========================================================
           PROCESS
        ========================================================= */
        .process-tagline { font-family: 'EB Garamond', serif; font-style: italic; color: var(--burnished-bronze); font-size: 1.25rem; margin-top: .25rem; }
        .process-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-sm); }
        @media (min-width: 640px) { .process-grid { grid-template-columns: 1fr 1fr; } }
        @media (min-width: 1024px) { .process-grid { grid-template-columns: repeat(5, 1fr); } }
        .process-card {
            background: var(--surface-container-lowest);
            padding: var(--space-md);
            height: 290px;
            display: flex; flex-direction: column; justify-content: space-between;
            box-shadow: 0 1px 3px rgba(0,0,0,.06);
            border: 1px solid transparent;
            transition: border-color .2s ease;
        }
        .process-card:hover { border-color: rgba(125,112,99,.3); }
        .process-card .row { display: flex; align-items: center; justify-content: space-between; }
        .process-card .step-num { font-family: 'EB Garamond', serif; font-size: 2.25rem; font-weight: 300; color: var(--burnished-bronze); }
        .process-card .material-symbols-outlined { color: rgba(125,112,99,.6); }
        .process-card h3 { margin-bottom: .25rem; }
        .process-card p { font-size: .8125rem; color: var(--on-surface-variant); }

        /* =========================================================
           PORTFOLIO
        ========================================================= */
        .gallery { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); }
        @media (min-width: 1024px) { .gallery { grid-template-columns: repeat(12, 1fr); } }
        .gallery-item { cursor: pointer; }
        @media (min-width: 1024px) { .gallery-item.major { grid-column: span 8; } .gallery-item.minor { grid-column: span 4; } }
        .gallery-item .frame { position: relative; background: var(--limestone-canvas); overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.08); margin-bottom: var(--space-sm); }
        .gallery-item.major .frame { aspect-ratio: 16/10; }
        .gallery-item.minor .frame { aspect-ratio: 4/5; }
        .gallery-item .frame img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
        .gallery-item:hover .frame img { transform: scale(1.05); }
        .gallery-item .tag { position: absolute; top: var(--space-sm); left: var(--space-sm); background: var(--charred-espresso); color: var(--plaster-white); padding: var(--space-2xs) var(--space-xs); letter-spacing: .1em; }
        .gallery-item .meta { display: flex; align-items: baseline; justify-content: space-between; }
        .gallery-item h3 { transition: color .2s ease; font-size: 1.75rem; }
        .gallery-item:hover h3 { color: var(--burnished-bronze); }
        .gallery-item .meta p { font-size: .8125rem; color: var(--on-surface-variant); }
        .gallery-item .year { color: var(--burnished-bronze); font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; }

        .gallery-split {
            grid-column: 1 / -1;
            margin-top: var(--space-md);
            display: grid; grid-template-columns: 1fr; gap: var(--space-lg);
            align-items: center;
            background: var(--surface-container-low);
            padding: var(--space-md);
        }
        @media (min-width: 1024px) { .gallery-split { grid-template-columns: 7fr 5fr; padding: var(--space-lg); } }
        .gallery-split .frame { aspect-ratio: 16/9; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
        .gallery-split .frame img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
        .gallery-split .frame:hover img { transform: scale(1.05); }
        .gallery-split .copy p { color: var(--on-surface-variant); margin: var(--space-xs) 0; }
        @media (min-width: 1024px) { .gallery-split .copy { padding-left: var(--space-md); } }

        /* =========================================================
           QUIZ BANNER
        ========================================================= */
        .quiz-banner { border-top: 1px solid rgba(125,112,99,.3); border-bottom: 1px solid rgba(125,112,99,.3); }
        .quiz-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); align-items: center; }
        @media (min-width: 1024px) { .quiz-grid { grid-template-columns: 8fr 4fr; } }
        .quiz-grid h2 { font-size: 2.25rem; color: var(--plaster-white); }
        @media (min-width: 1024px) { .quiz-grid h2 { font-size: 3.25rem; } }
        .quiz-grid p { color: rgba(231,226,219,.9); margin-top: .25rem; }
        .quiz-cta { display: flex; }
        @media (min-width: 1024px) { .quiz-cta { justify-content: flex-end; } }

        /* =========================================================
           FAQ
        ========================================================= */
        .faq-wrap { max-width: 56rem; margin: 0 auto; padding: 0 var(--gutter-mobile); }
        @media (min-width: 1024px) { .faq-wrap { padding: 0 var(--gutter-desktop); } }
        .faq-header { text-align: center; max-width: 40rem; margin: 0 auto var(--space-2xl); }
        .faq-header p { color: var(--on-surface-variant); margin-top: .25rem; }
        .faq-accordion { display: flex; flex-direction: column; gap: var(--space-xs); }
        .faq-item { background: var(--surface-container-lowest); box-shadow: 0 1px 3px rgba(0,0,0,.06); overflow: hidden; }
        .faq-trigger {
            width: 100%;
            display: flex; align-items: center; justify-content: space-between;
            gap: var(--space-sm);
            padding: var(--space-md);
            text-align: left;
            color: var(--charred-espresso);
            transition: color .2s ease;
        }
        .faq-trigger:hover { color: var(--burnished-bronze); }
        .faq-trigger .q { font-family: 'EB Garamond', serif; font-size: 1.25rem; font-weight: 500; }
        .faq-trigger .faq-icon { color: var(--burnished-bronze); transition: transform .3s ease; }
        .faq-trigger[aria-expanded="true"] .faq-icon { transform: rotate(180deg); }
        .faq-content { padding: 0 var(--space-md) var(--space-md); font-size: .8125rem; color: var(--on-surface-variant); }
        .faq-content[hidden] { display: none; }

        /* =========================================================
           AREAS
        ========================================================= */
        .area-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-sm); margin-bottom: var(--space-lg); }
        @media (min-width: 640px) { .area-grid { grid-template-columns: repeat(4, 1fr); } }
        .area-card {
            background: var(--surface-container-low);
            padding: var(--space-md);
            transition: background-color .3s ease, color .3s ease;
        }
        .area-card:hover { background: var(--charred-espresso); color: var(--plaster-white); }
        .area-card .num { display: block; color: var(--burnished-bronze); margin-bottom: .25rem; }
        .area-card h3 { transition: color .3s ease; }
        .area-card:hover h3 { color: var(--plaster-white); }
        .area-card p { font-size: .75rem; color: var(--on-surface-variant); margin-top: .25rem; transition: color .3s ease; }
        .area-card:hover p { color: rgba(231,226,219,.8); }

        .local-block {
            padding: var(--space-md);
            background: var(--surface-container-lowest);
            border: 1px solid rgba(125,112,99,.3);
            display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--space-sm);
            text-align: center;
        }
        @media (min-width: 768px) { .local-block { flex-direction: row; text-align: left; } }
        .local-block .kicker { color: var(--burnished-bronze); letter-spacing: .1em; }
        .local-block p.addr { font-size: .875rem; color: var(--charred-espresso); font-weight: 500; }
        .local-block a.phone { display: flex; align-items: center; gap: .25rem; color: var(--charred-espresso); }
        .local-block a.phone:hover { color: var(--burnished-bronze); }

        /* =========================================================
           FOUNDER
        ========================================================= */
        .founder-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-xl); align-items: center; }
        @media (min-width: 1024px) { .founder-grid { grid-template-columns: 5fr 7fr; } }
        .founder-photo { position: relative; aspect-ratio: 3/4; background: var(--limestone-canvas); overflow: hidden; box-shadow: 0 20px 40px rgba(0,0,0,.15); }
        .founder-photo img { width: 100%; height: 100%; object-fit: cover; }
        .founder-badge { position: absolute; bottom: var(--space-sm); left: var(--space-sm); background: var(--charred-espresso); color: var(--plaster-white); padding: var(--space-xs) var(--space-md); letter-spacing: .1em; box-shadow: 0 10px 20px rgba(0,0,0,.2); }
        .founder-bio p { color: var(--on-surface-variant); margin-bottom: var(--space-sm); }
        .founder-stats { display: flex; align-items: center; gap: var(--space-lg); padding-top: var(--space-xs); }
        .founder-stats .divider { width: 1px; height: 2rem; background: var(--outline-variant); }
        .founder-stats .big { display: block; font-family: 'EB Garamond', serif; font-size: 1.25rem; color: var(--charred-espresso); }
        .founder-stats .small { color: var(--burnished-bronze); }

        /* =========================================================
           REVIEWS
        ========================================================= */
        .reviews-section { overflow: hidden; }
        .review-nav { display: flex; align-items: center; gap: .25rem; }
        .review-nav button { width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; background: var(--surface-container-low); color: var(--charred-espresso); transition: background-color .2s ease, color .2s ease; }
        .review-nav button:hover { background: var(--charred-espresso); color: var(--plaster-white); }
        .reviews-track { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); }
        @media (min-width: 768px) { .reviews-track { grid-template-columns: repeat(3, 1fr); } }
        .review-card { background: var(--surface-container-low); padding: var(--space-lg); display: flex; flex-direction: column; justify-content: space-between; gap: var(--space-md); box-shadow: 0 1px 3px rgba(0,0,0,.06); }
        .review-card .stars { display: flex; color: var(--burnished-bronze); gap: .1rem; }
        .review-card blockquote { font-family: 'EB Garamond', serif; font-style: italic; color: var(--charred-espresso); line-height: 1.6; margin: var(--space-xs) 0 0; }
        .review-card .name { display: block; font-weight: 600; color: var(--charred-espresso); }
        .review-card .role { color: var(--burnished-bronze); letter-spacing: .1em; }

        /* =========================================================
           INQUIRY FORM
        ========================================================= */
        .inquiry-header { text-align: center; max-width: 40rem; margin: 0 auto var(--space-xl); }
        .inquiry-header p { color: var(--on-surface-variant); margin-top: .25rem; }
        .form-card { background: var(--surface-container-lowest); padding: var(--space-lg); box-shadow: 0 1px 3px rgba(0,0,0,.08); border: 1px solid rgba(125,112,99,.25); }
        @media (min-width: 768px) { .form-card { padding: var(--space-xl); } }
        .form-row { display: grid; grid-template-columns: 1fr; gap: var(--space-md); margin-bottom: var(--space-md); }
        @media (min-width: 768px) { .form-row { grid-template-columns: 1fr 1fr; } }
        .field label { display: block; font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--charred-espresso); margin-bottom: .5rem; }
        .field input, .field select, .field textarea {
            width: 100%;
            background: var(--surface-container-low);
            border: 1px solid rgba(125,112,99,.35);
            padding: .75rem 1rem;
            color: var(--charred-espresso);
            outline: none;
            transition: border-color .2s ease;
        }
        .field input:focus, .field select:focus, .field textarea:focus { border-color: var(--charred-espresso); }
        .field.full { margin-bottom: var(--space-md); }
        .honeypot { position: absolute; left: -9999px; }
        .form-footer { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--space-sm); padding-top: var(--space-xs); }
        @media (min-width: 640px) { .form-footer { flex-direction: row; } }
        .form-note { display: flex; align-items: center; gap: .5rem; font-size: .75rem; color: var(--on-surface-variant); }
        .form-note .material-symbols-outlined { color: var(--burnished-bronze); font-size: 16px; }
        .form-footer .btn { width: 100%; }
        @media (min-width: 640px) { .form-footer .btn { width: auto; } }

        /* =========================================================
           FINAL CTA
        ========================================================= */
        .final-cta { position: relative; overflow: hidden; }
        .final-cta .bg-image { position: absolute; inset: 0; z-index: 0; opacity: .25; }
        .final-cta .bg-image img { width: 100%; height: 100%; object-fit: cover; }
        .final-cta-inner { position: relative; z-index: 1; max-width: 56rem; margin: 0 auto; padding: 0 var(--gutter-mobile); text-align: center; }
        @media (min-width: 1024px) { .final-cta-inner { padding: 0 var(--gutter-desktop); } }
        .final-cta h2 { color: var(--plaster-white); font-size: 2.25rem; margin: .25rem 0 var(--space-md); }
        @media (min-width: 1024px) { .final-cta h2 { font-size: 4.5rem; } }
        .final-cta p { color: var(--raw-linen); max-width: 40rem; margin: 0 auto; font-size: 1.125rem; }
        .final-cta .btn-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--space-sm); margin-top: var(--space-md); }

        /* =========================================================
           FOOTER
        ========================================================= */
        .site-footer { background: var(--limestone-canvas); padding-top: var(--space-2xl); padding-bottom: var(--space-xl); box-shadow: 0 -1px 8px rgba(0,0,0,.02); }
        .footer-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-lg); margin-bottom: var(--space-xl); }
        @media (min-width: 768px) { .footer-grid { grid-template-columns: repeat(12, 1fr); } }
        .footer-brand { display: flex; flex-direction: column; gap: var(--space-sm); }
        @media (min-width: 768px) { .footer-brand { grid-column: span 4; } }
        .footer-brand .brand { margin-bottom: 0; }
        .footer-brand p { color: var(--on-surface-variant); max-width: 24rem; }
        .footer-contact { font-size: .875rem; color: var(--on-surface-variant); display: flex; flex-direction: column; gap: .25rem; }
        .footer-contact .addr { font-weight: 500; color: var(--charred-espresso); }
        .footer-contact a:hover { color: var(--charred-espresso); }
        .footer-col { display: flex; flex-direction: column; gap: var(--space-xs); }
        @media (min-width: 768px) { .footer-col.explore { grid-column: span 3; } .footer-col.connect { grid-column: span 2; } .footer-col.consult { grid-column: span 3; } }
        .footer-col .heading { color: var(--charred-espresso); letter-spacing: .1em; margin-bottom: var(--space-sm); }
        .footer-col ul { display: flex; flex-direction: column; gap: .5rem; font-size: .875rem; }
        .footer-col ul a { color: var(--on-surface-variant); transition: color .2s ease; }
        .footer-col ul a:hover { color: var(--charred-espresso); }
        .footer-col.consult p { color: var(--on-surface-variant); font-size: .8125rem; margin-bottom: var(--space-sm); }
        .footer-bottom {
            padding-top: var(--space-md);
            border-top: 1px solid rgba(125,112,99,.2);
            display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--space-xs);
            font-size: .75rem; color: var(--on-surface-variant);
        }
        @media (min-width: 640px) { .footer-bottom { flex-direction: row; } }
        .footer-bottom .links { display: flex; gap: var(--space-md); }
        .footer-bottom .links a:hover { color: var(--charred-espresso); }

@media (max-width: 767px){
	.area-grid {
    grid-template-columns: repeat(1, 1fr);
}
	.press-logos {
    
    grid-template-columns: repeat(2, 1fr);
}
}
   

.delivery-strip {
    display: none;
}
.hero-grid p.intro {
    display: none;
}
.hero-grid p.label {
    display: none;
}