:root{--bg:#0b0b0b;--panel:#151515;--panel2:#111;--line:#2b2b2b;--text:#f5f1ea;--muted:#aaa49b;--accent:#d8b86a;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Poppins,Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.shell{width:min(calc(100% - 48px),var(--max));margin:auto}.site-header{position:absolute;z-index:50;top:0;left:0;right:0;background:linear-gradient(#090909d9,transparent)}.nav-wrap{height:92px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;line-height:1}.brand-mark{border:1px solid var(--accent);padding:9px;color:var(--accent);letter-spacing:2px}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:#ddd;margin-top:5px}.custom-logo{max-height:58px;width:auto}.desktop-nav{margin-left:auto;display:flex;gap:26px;font-size:12px}.desktop-nav a:hover{color:var(--accent)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--accent);padding:13px 20px;text-transform:uppercase;letter-spacing:1.3px;font-size:11px;font-weight:700}.menu-toggle,.mobile-nav{display:none}.hero{height:min(850px,100vh);min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.03);transition:opacity 1.4s ease,transform 7s ease}.hero-slide.active{opacity:1;transform:scale(1.09)}.hero-photo-slide{background-position:center 38%}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.65) 43%,rgba(0,0,0,.22) 75%,rgba(0,0,0,.08) 100%)}.hero-content{position:relative;z-index:2;padding-top:85px}.hero-fixed{margin-bottom:22px}.hero-copy-set{display:none;max-width:860px}.hero-copy-set.active{display:block;animation:copyIn .7s ease both}@keyframes copyIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero h1{font-family:Georgia,serif;font-size:clamp(56px,7vw,98px);line-height:.97;letter-spacing:-3px;margin:0;font-weight:400}.hero h1 em{font-weight:400;color:var(--accent)}.hero-copy-set>p{max-width:620px;font-size:18px;color:#e1ddd6;margin:28px 0}.actions{display:flex;gap:14px;margin-top:34px}.btn.primary{background:var(--accent);color:#111}.btn.ghost{border-color:#eee;color:#fff;background:#1115}.btn.secondary{margin-top:15px}.hero-progress{position:absolute;z-index:3;bottom:34px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.hero-progress i{display:block;width:34px;height:2px;background:#ffffff55}.hero-progress i.active{background:var(--accent)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;color:var(--accent);text-transform:uppercase;margin:0 0 17px}.trust-strip{background:#090909;border-block:1px solid var(--line);padding:18px 0}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;text-align:center;font-size:10px;letter-spacing:1.6px;color:#9f9a92}.section{padding:105px 0}.narrow{max-width:900px}.intro{text-align:center;background:#111}.intro h2,.section h2,.final-cta h2{font-family:Georgia,serif;font-size:clamp(40px,5vw,64px);line-height:1.08;font-weight:400;margin:0 0 24px;letter-spacing:-1.4px}.intro p:last-child{font-size:18px;color:var(--muted)}.section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:end;margin-bottom:48px}.section-head>p{color:var(--muted)}.pathways{background:#0d0d0d}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.path-grid article{padding:36px;border:1px solid var(--line);background:var(--panel)}.path-grid span,.number,.proof-grid strong,.photo-services span{color:var(--accent);font-size:11px;letter-spacing:2px}.path-grid h3,.photo-services h3,.proof-grid h3{font-family:Georgia,serif;font-weight:400;font-size:29px;margin:11px 0}.path-grid p,.photo-services p,.proof-grid p{color:var(--muted);font-size:14px}.path-grid a,..card-body > a,.pricing a{display:inline-block;margin-top:15px;color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.photography{background:#12100e}.photo-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:stretch}.real-media{background-size:cover;background-position:center;min-height:420px}.bts{min-height:650px;background-position:center}.photo-services{display:flex;flex-direction:column;justify-content:center}.photo-services article{border-top:1px solid var(--line);padding:20px 0}.photo-services article:first-child{border-top:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.experience-card{background:var(--panel);border:1px solid var(--line)}.experience-card.featured{border-color:#66583f}.card-media{height:310px;min-height:0}.card-body{padding:32px}.card-body h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:10px 0}.tagline{color:#fff!important;font-weight:600}.card-body p{color:var(--muted);font-size:14px}.card-body>a{color:var(--accent);font-weight:700}.placeholder{background:linear-gradient(135deg,#262626,#161616);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#777;border:1px dashed #4b4b4b;letter-spacing:1.5px;font-size:11px}.placeholder small{letter-spacing:0;color:#666;margin-top:8px}.proof{background:#0b0b0b}.center-head{text-align:center;max-width:800px;margin:0 auto 50px}.center-head>p:last-child{color:var(--muted)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.proof-grid>div{padding:32px;border-right:1px solid var(--line)}.proof-grid>div:last-child{border-right:0}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center}.reverse{grid-template-columns:.95fr 1.05fr}.large-media{min-height:620px}.split-copy p{color:var(--muted)}.split-copy ul{padding:0;list-style:none;margin:28px 0}.split-copy li{padding:10px 0;border-bottom:1px solid var(--line);color:#ddd}.corporate{background:#111}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.mini-grid div{border-top:1px solid var(--line);padding-top:14px}.mini-grid strong,.mini-grid span{display:block}.mini-grid span{font-size:13px;color:var(--muted);margin-top:5px}.corporate-price{border-left:2px solid var(--accent);padding-left:18px;margin:26px 0}.corporate-price small,.corporate-price strong{display:block}.corporate-price small{letter-spacing:1.4px;color:var(--muted)}.corporate-price strong{font-family:Georgia,serif;font-size:36px}.keepsake-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.keepsake-grid .placeholder{min-height:330px}.packages{background:#111}.pricing{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.pricing>div{padding:34px 26px;border-right:1px solid var(--line);position:relative}.pricing>div:last-child{border-right:0}.pricing span,.pricing strong{display:block}.pricing span{font-size:10px;letter-spacing:1.5px;color:var(--accent);min-height:34px}.pricing strong{font-family:Georgia,serif;font-size:32px;line-height:1.1;margin:12px 0}.pricing p{margin:0;color:var(--muted);font-size:14px}.pricing a{color:var(--accent);font-weight:700}.pricing .popular{background:#191714}.popular b{position:absolute;top:-12px;left:20px;background:var(--accent);color:#111;padding:4px 9px;font-size:9px;letter-spacing:1px}.addons{text-align:center;color:var(--muted);margin-top:28px}.portrait{min-height:560px}.lead-section{background:#0e0e0e}.lead-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.lead-copy h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,64px);line-height:1.05;font-weight:400;margin:0 0 24px}.lead-copy>p{color:var(--muted)}.lead-points{display:flex;flex-direction:column;gap:10px;margin-top:28px;color:#d8d2c8;font-size:13px}.lead-card{background:#171717;border:1px solid var(--line);padding:44px}.crm-ready span{font-size:10px;letter-spacing:1.6px;color:var(--accent)}.crm-ready h3{font-family:Georgia,serif;font-size:38px;font-weight:400;margin:12px 0}.crm-ready p{color:var(--muted)}.crm-note{border-block:1px solid var(--line);padding:18px 0;margin:25px 0!important;font-size:12px}.final-cta{padding:115px 0;text-align:center;background:var(--accent);color:#111}.final-cta .eyebrow{color:#4c3b24}.final-cta p{max-width:680px;margin:0 auto 30px}.btn.light{background:#111;color:#fff;border-color:#111}.site-footer{padding:70px 0 25px;background:#070707;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:45px}.footer-brand{font-family:Georgia,serif;color:#fff;font-size:29px}.site-footer h4{color:#fff}.site-footer a{display:block;margin:7px 0;font-size:13px}.copyright{border-top:1px solid var(--line);padding-top:20px;margin-top:45px;font-size:11px}
@media(max-width:950px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto;background:none;border:0;color:#fff;font-size:26px}.mobile-nav.open{display:flex;position:absolute;top:90px;left:0;right:0;background:#0b0b0b;padding:24px;flex-direction:column;gap:18px}.hero{min-height:700px}.section{padding:80px 0}.cards,.pricing{grid-template-columns:1fr 1fr}.split,.reverse,.photo-feature{grid-template-columns:1fr;gap:40px}.section-head{grid-template-columns:1fr;gap:10px}.large-media,.bts{min-height:480px}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid>div{border-bottom:1px solid var(--line)}.lead-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.shell{width:min(calc(100% - 32px),var(--max))}.nav-wrap{height:76px}.mobile-nav.open{top:76px}.hero{height:760px;min-height:720px}.hero-content{padding-top:80px}.hero h1{font-size:50px;letter-spacing:-2px}.hero-copy-set>p{font-size:16px}.actions{align-items:flex-start;flex-direction:column}.section{padding:68px 0}.intro h2,.section h2,.final-cta h2{font-size:39px}.trust-grid,.path-grid,.cards,.pricing,.keepsake-grid,.proof-grid,.mini-grid,.footer-grid{grid-template-columns:1fr}.trust-grid{gap:7px}.trust-grid span:nth-child(n+4){display:none}.pricing>div,.proof-grid>div{border-right:0;border-bottom:1px solid var(--line)}.large-media,.portrait,.bts{min-height:390px}.lead-card{padding:26px}.hero-slide{background-position:60% center}.hero-slide:first-child{background-position:60% center}.hero-photo-slide{background-position:55% center}}

/* V7.1 brand + Check Cherry integration */
.brand-logo{display:flex;align-items:center;flex:0 0 auto;background:#fff;border-radius:4px;padding:3px 7px;height:70px;overflow:hidden}
.brand-logo img{display:block;width:auto;height:64px;max-width:230px;object-fit:contain}
.checkcherry-card{background:#fff;color:#17130f;border-color:#d9c9ad;padding:38px}
.checkcherry-card .crm-ready>span{color:#a87528}
.checkcherry-card .crm-ready h3{color:#17130f;margin-bottom:8px}
.checkcherry-card .form-intro{color:#655f58;margin:0 0 26px}
.checkcherry-embed{background:#fff;min-height:420px;color:#17130f}
.checkcherry-embed label,.checkcherry-embed p,.checkcherry-embed span{color:inherit}
@media(max-width:620px){.brand-logo{height:58px;padding:2px 5px}.brand-logo img{height:52px;max-width:175px}.checkcherry-card{padding:20px}}

/* V7.2 — visible brand lockup + dark Check Cherry skin */
.site-header{background:linear-gradient(180deg,rgba(7,7,7,.96) 0%,rgba(7,7,7,.78) 70%,rgba(7,7,7,0) 100%)}
.brand-logo{height:78px;min-width:150px;padding:4px 9px;background:#fff;border:1px solid rgba(216,184,106,.55);border-radius:3px;box-shadow:0 4px 18px rgba(0,0,0,.22)}
.brand-logo img{height:70px;width:auto;max-width:190px;object-fit:contain}
.checkcherry-card{background:#151515!important;color:#f5f1ea!important;border:1px solid #3b3429!important;padding:38px;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.checkcherry-card .crm-ready>span{color:#d8b86a!important}
.checkcherry-card .crm-ready h3{color:#f5f1ea!important}
.checkcherry-card .form-intro{color:#aaa49b!important}
.checkcherry-embed{background:#151515!important;color:#f5f1ea!important;min-height:420px}
.checkcherry-embed label,
.checkcherry-embed p,
.checkcherry-embed span,
.checkcherry-embed legend,
.checkcherry-embed h1,
.checkcherry-embed h2,
.checkcherry-embed h3,
.checkcherry-embed h4,
.checkcherry-embed h5,
.checkcherry-embed h6{color:#f5f1ea!important}
.checkcherry-embed input:not([type="checkbox"]):not([type="radio"]),
.checkcherry-embed select,
.checkcherry-embed textarea{background:#0f0f0f!important;color:#f5f1ea!important;border:1px solid #4b4438!important;border-radius:3px!important;box-shadow:none!important}
.checkcherry-embed input::placeholder,
.checkcherry-embed textarea::placeholder{color:#827d75!important}
.checkcherry-embed select option{background:#111!important;color:#f5f1ea!important}
.checkcherry-embed input[type="checkbox"],
.checkcherry-embed input[type="radio"]{accent-color:#d8b86a!important}
.checkcherry-embed button,
.checkcherry-embed input[type="submit"]{background:#d8b86a!important;color:#111!important;border:1px solid #d8b86a!important;border-radius:2px!important;text-transform:uppercase!important;letter-spacing:1.2px!important;font-weight:700!important;box-shadow:none!important}
.checkcherry-embed a{color:#d8b86a!important}
.checkcherry-embed hr{border-color:#2b2b2b!important}
@media(max-width:620px){.brand-logo{height:62px;min-width:118px;padding:3px 6px}.brand-logo img{height:54px;max-width:150px}.checkcherry-card{padding:20px}}
.keepsake-media{min-height:360px;position:relative;background-size:cover;background-position:center;border-radius:20px;overflow:hidden}.keepsake-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,5,7,.78))}.keepsake-media span{position:absolute;z-index:2;left:24px;bottom:22px;color:#fff;font-weight:700;letter-spacing:.08em}.chamber-proof{background:#0d0d0f}.chamber-proof .chamber-note{font-size:.88rem;opacity:.7;border-left:2px solid #c9a55a;padding-left:14px}

/* V9 QA hardening — explicit contrast, visible navigation, media art direction */
body,.section,.pathways,.photography,.experiences,.proof,.corporate,.wedding,.keepsakes,.packages,.chamber-proof,.about,.lead-section{color:#f5f1ea!important}
.section h1,.section h2,.section h3,.section-head h2,.path-grid h3,.photo-services h3,.card-body h3,.proof-grid h3,.split-copy h2,.center-head h2,.lead-copy h2{color:#f5f1ea!important}
.section p:not(.eyebrow),.path-grid p,.photo-services p,.card-body p,.proof-grid p,.split-copy p:not(.eyebrow),.center-head>p:last-child{color:#bdb6ac!important}
.tagline{color:#fff!important}.eyebrow,.number,.path-grid span,.photo-services span,.proof-grid strong{color:#d8b86a!important}
.site-header{position:absolute!important;display:block!important;visibility:visible!important;opacity:1!important;z-index:9999!important;min-height:96px;background:linear-gradient(180deg,rgba(5,5,5,.98),rgba(5,5,5,.82) 76%,rgba(5,5,5,0))!important}
.nav-wrap{display:flex!important;visibility:visible!important;min-height:92px}.desktop-nav{display:flex!important;visibility:visible!important}.desktop-nav a,.nav-cta{color:#fff!important}.desktop-nav a:hover{color:#d8b86a!important}.nav-cta{border-color:#d8b86a!important}
.brand-logo{display:flex!important;visibility:visible!important;background:rgba(255,255,255,.96)!important}
.hero{padding-top:0}.hero-content{padding-top:120px}.hero h1{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero-slide{background-size:cover!important}.hero-slide:first-child{background-position:center 34%!important}.hero-photo-slide{background-position:center 30%!important}
.bts{background-position:center 28%!important}
.cinderella-media{background-size:cover!important;background-position:center 42%!important}
.experience-card .card-body{min-height:360px}
@media(max-width:950px){.desktop-nav,.nav-cta{display:none!important}.menu-toggle{display:block!important}.site-header{min-height:82px}.hero-content{padding-top:105px}}

/* V10 — persistent navigation, media deduplication, Cinderella framing, Chamber badge, Check Cherry usability */
.site-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:99999!important;background:rgba(7,7,7,.96)!important;border-bottom:1px solid rgba(216,184,106,.18)!important;backdrop-filter:blur(12px)}
body.admin-bar .site-header{top:32px!important}
.nav-wrap{height:88px!important;min-height:88px!important}.brand-logo{height:64px!important;min-width:126px!important;padding:3px 7px!important}.brand-logo img{height:56px!important;max-width:168px!important}
.desktop-nav{display:flex!important;align-items:center!important;gap:30px!important}.desktop-nav a{font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important}.nav-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important}
.hero{padding-top:88px!important}.hero-content{padding-top:92px!important}
.cinderella-media{background-size:cover!important;background-position:center 18%!important;background-repeat:no-repeat!important}
.chamber-layout{display:grid;grid-template-columns:minmax(260px,.72fr) 1.28fr;gap:72px;align-items:center}.chamber-badge-card{background:#fff;border:1px solid rgba(216,184,106,.45);border-radius:8px;padding:34px;display:flex;align-items:center;justify-content:center;min-height:300px}.chamber-badge-card img{display:block;width:min(100%,360px);height:auto}.chamber-note{border-left:2px solid #d8b86a!important;padding-left:16px!important}
/* Check Cherry: restore compact, clickable native controls and remove oversized checkbox styling */
.checkcherry-embed input[type="checkbox"],.checkcherry-embed input[type="radio"]{appearance:auto!important;-webkit-appearance:auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;margin:2px 10px 2px 0!important;padding:0!important;vertical-align:middle!important;cursor:pointer!important;accent-color:#d8b86a!important;box-shadow:none!important}
.checkcherry-embed label{cursor:pointer!important;line-height:1.45!important}.checkcherry-embed label:has(input[type="checkbox"]),.checkcherry-embed label:has(input[type="radio"]){display:flex!important;align-items:flex-start!important;gap:8px!important;padding:5px 0!important}
.checkcherry-embed input[type="checkbox"]+span,.checkcherry-embed input[type="radio"]+span{display:inline!important;margin:0!important;padding:0!important}
.checkcherry-embed *{box-sizing:border-box!important}.checkcherry-embed [role="listbox"],.checkcherry-embed [class*="checkbox"],.checkcherry-embed [class*="multi"]{scrollbar-color:#d8b86a #1b1b1b}
@media(max-width:950px){.desktop-nav,.nav-cta{display:none!important}.site-header{min-height:76px!important}.nav-wrap{height:76px!important;min-height:76px!important}.hero{padding-top:76px!important}.chamber-layout{grid-template-columns:1fr;gap:36px}.chamber-badge-card{min-height:230px}.brand-logo{height:58px!important}.brand-logo img{height:50px!important}}
@media(max-width:782px){body.admin-bar .site-header{top:46px!important}}
@media(max-width:620px){.cinderella-media{background-position:center 12%!important}.chamber-badge-card{padding:24px}}
/* ===== TRIPPLE A HEADER — MANUAL FIX ===== */

.site-header{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:999999 !important;
    background:rgba(7,7,7,.96) !important;
    border-bottom:1px solid rgba(216,184,106,.20) !important;
    backdrop-filter:blur(12px);
}

body.admin-bar .site-header{
    top:32px !important;
}

.site-header .nav-wrap{
    width:min(1240px, calc(100% - 48px)) !important;
    height:88px !important;
    min-height:88px !important;
    margin:0 auto !important;
    display:flex !important;
    align-items:center !important;
    gap:28px !important;
}

.site-header .brand{
    display:flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
}

.site-header .brand-logo{
    display:block !important;
    height:64px !important;
    width:auto !important;
    min-width:126px !important;
    padding:3px 7px !important;
    visibility:visible !important;
    opacity:1 !important;
}

.site-header .brand-logo img{
    display:block !important;
    height:56px !important;
    width:auto !important;
    max-width:168px !important;
    object-fit:contain !important;
    visibility:visible !important;
    opacity:1 !important;
}

.site-header .desktop-nav{
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:26px !important;
    visibility:visible !important;
    opacity:1 !important;
}

.site-header .desktop-nav a{
    color:#f5f1ea !important;
    font-size:12px !important;
    font-weight:600 !important;
    letter-spacing:1.2px !important;
    text-transform:uppercase !important;
}

.site-header .desktop-nav a:hover{
    color:#d8b86a !important;
}

.site-header .nav-cta{
    color:#111 !important;
    background:#d8b86a !important;
    border:1px solid #d8b86a !important;
    min-height:42px !important;
    padding:0 20px !important;
}

@media (max-width:950px){
    .site-header .desktop-nav,
    .site-header .nav-cta{
        display:none !important;
    }

    .site-header .menu-toggle{
        display:block !important;
        margin-left:auto !important;
    }
}
/* =========================================================
   PREMIUM SPLIT HERO
   ========================================================= */

.hero.hero-split{
    position:relative !important;
    min-height:650px !important;
    height:calc(100vh - 88px) !important;
    max-height:780px !important;
    background:#090909 !important;
    overflow:hidden !important;
}

/* Slides */
.hero-split-slide{
    position:absolute !important;
    inset:0 !important;
    display:grid !important;
    grid-template-columns:46% 54% !important;
    opacity:0 !important;
    visibility:hidden !important;
    transition:opacity .8s ease !important;
}

.hero-split-slide.active{
    opacity:1 !important;
    visibility:visible !important;
}

/* LEFT CONTENT */
.hero-split-copy{
    position:relative !important;
    z-index:3 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    padding:70px 45px 135px max(45px, calc((100vw - 1240px)/2)) !important;
    background:
        radial-gradient(circle at 75% 45%, rgba(216,184,106,.07), transparent 40%),
        #090909 !important;
}

.hero-split-copy .eyebrow{
    color:#d8b86a !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:2.2px !important;
    margin:0 0 22px !important;
}

.hero-split-copy h1{
    color:#fff !important;
    font-family:Poppins,Arial,sans-serif !important;
    font-size:clamp(44px,4.5vw,68px) !important;
    line-height:1.02 !important;
    letter-spacing:-2.5px !important;
    margin:0 0 25px !important;
    max-width:620px !important;
}

.hero-split-copy h1 em{
    color:#d8b86a !important;
    font-family:Georgia,serif !important;
    font-weight:400 !important;
}

.hero-description{
    color:#c8c8c8 !important;
    font-size:16px !important;
    line-height:1.7 !important;
    max-width:500px !important;
    margin:0 !important;
}

/* RIGHT PHOTOGRAPH */
.hero-split-image{
    position:relative !important;
    overflow:hidden !important;
    background:#111 !important;
}

.hero-split-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(9,9,9,.22) 0%,
        transparent 20%,
        transparent 100%
    );
    pointer-events:none;
}

.hero-split-image img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
}

/* Wedding — retain couple and Better Together sign */
.hero-split-slide:nth-child(1) .hero-split-image img{
    object-fit:cover !important;
    object-position:50% 30% !important;
}

/* Corporate */
.hero-split-slide:nth-child(2) .hero-split-image img{
    object-position:50% 20% !important;
}

/* Cinderella */
.hero-split-slide:nth-child(3) .hero-split-image img{
    object-position:58% 45% !important;
}

/* CTA + SLIDE INDICATORS */
.hero-split-controls{
    position:absolute !important;
    z-index:20 !important;
    left:max(45px, calc((100vw - 1240px)/2)) !important;
    bottom:58px !important;
}

.hero-split-controls .actions{
    display:flex !important;
    gap:12px !important;
    margin:0 0 28px !important;
}

.hero-split-controls .hero-progress{
    position:static !important;
    transform:none !important;
    justify-content:flex-start !important;
}

/* MOBILE */
@media(max-width:950px){

    .hero.hero-split{
        height:auto !important;
        min-height:760px !important;
        max-height:none !important;
    }

    .hero-split-slide{
        grid-template-columns:1fr !important;
        grid-template-rows:46% 54% !important;
    }

    .hero-split-copy{
        grid-row:2 !important;
        padding:42px 24px 135px !important;
    }

    .hero-split-image{
        grid-row:1 !important;
    }

    .hero-split-copy h1{
        font-size:clamp(38px,10vw,56px) !important;
        letter-spacing:-1.5px !important;
    }

    .hero-split-controls{
        left:24px !important;
        right:24px !important;
        bottom:35px !important;
    }
}
/* =====================================================
   PREMIUM EVENT PATH CARDS
   ===================================================== */

.pathways .path-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
    margin-top:50px;
}

.pathways .path-card{
    position:relative;
    overflow:hidden;
    padding:0;
    min-height:520px;
    border:1px solid rgba(255,255,255,.10);
    background:#111;
}

.pathways .path-card-media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.pathways .path-card-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

/* Individual crops */
.pathways .path-card:nth-child(1) .path-card-media img{
    object-position:center 35%;
}

.pathways .path-card:nth-child(2) .path-card-media img{
    object-position:center center;
}

.pathways .path-card:nth-child(3) .path-card-media img{
    object-position:center 30%;
}

/* Luxury dark gradient for readable text */
.pathways .path-card-media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to bottom,
        rgba(5,5,5,.05) 20%,
        rgba(5,5,5,.25) 48%,
        rgba(5,5,5,.92) 100%
    );
}

.pathways .path-card-content{
    position:absolute;
    z-index:2;
    left:30px;
    right:30px;
    bottom:30px;
}

.pathways .path-card-content span{
    display:block;
    margin-bottom:12px;
    color:#dfbb62;
    font-size:12px;
    letter-spacing:.18em;
}

.pathways .path-card-content h3{
    color:#fff;
    margin:0 0 12px;
    font-size:28px;
    line-height:1.12;
}

.pathways .path-card-content p{
    color:rgba(255,255,255,.82);
    margin:0 0 18px;
    line-height:1.6;
}

.pathways .path-card-content a{
    color:#dfbb62;
    text-decoration:none;
    font-size:12px;
    font-weight:600;
    letter-spacing:.10em;
    text-transform:uppercase;
}

.pathways .path-card{
    transition:transform .35s ease, border-color .35s ease;
}

.pathways .path-card:hover{
    transform:translateY(-5px);
    border-color:rgba(223,187,98,.55);
}

.pathways .path-card:hover img{
    transform:scale(1.025);
}

.pathways .path-card img{
    transition:transform .6s ease;
}

@media(max-width:900px){
    .pathways .path-grid{
        grid-template-columns:1fr;
    }

    .pathways .path-card{
        min-height:500px;
    }
}
/* Path card final polish */
.pathways .path-card-media::after{
    background:linear-gradient(
        to bottom,
        rgba(5,5,5,.02) 30%,
        rgba(5,5,5,.18) 52%,
        rgba(5,5,5,.78) 76%,
        rgba(5,5,5,.96) 100%
    );
}

.pathways .path-card-content{
    bottom:34px;
}

.pathways .path-card-content h3{
    font-size:27px;
    max-width:95%;
}

.pathways .path-card-content p{
    font-size:15px;
    line-height:1.55;
}
/* ==================================================
   PREMIUM PHOTOGRAPHY SHOWCASE
   ================================================== */

.photography-showcase{
    background:#0d0c0b;
}

.photography-showcase .section-head{
    margin-bottom:55px;
}

/* Main showcase layout */
.photo-showcase{
    display:grid;
    grid-template-columns:58% 42%;
    min-height:650px;
    border:1px solid rgba(255,255,255,.10);
    overflow:hidden;
}

/* Photography image */
.photo-showcase-media{
    position:relative;
    min-height:650px;
    overflow:hidden;
    background:#111;
}

.photo-showcase-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    opacity:0;
    visibility:hidden;
    transition:opacity .55s ease;
}

.photo-showcase-img.active{
    opacity:1;
    visibility:visible;
}

/* Keep wedding portrait framed properly */
.photo-showcase-img[data-photo="wedding"]{
    object-position:center 32%;
}

/* Corporate image */
.photo-showcase-img[data-photo="corporate"]{
    object-position:center center;
}

/* Portrait */
.photo-showcase-img[data-photo="portrait"]{
    object-position:center 28%;
}

/* Services */
.photo-showcase-services{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:35px 55px;
    background:#11100f;
}

.photo-service{
    padding:30px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
    cursor:pointer;
    opacity:.78;
    transition:opacity .3s ease, padding-left .3s ease;
}

.photo-service:first-child{
    border-top:1px solid rgba(255,255,255,.12);
}

.photo-service.active,
.photo-service:hover{
    opacity:1;
    padding-left:12px;
}

.photo-service span{
    display:block;
    color:#d9b55f;
    font-size:12px;
    letter-spacing:.18em;
    margin-bottom:10px;
}

.photo-service h3{
    color:#f6f2ea;
    font-size:28px;
    line-height:1.15;
    margin:0 0 10px;
}

.photo-service p{
    color:#c8c0b5;
    line-height:1.65;
    margin:0;
}

.photo-showcase-services .btn{
    align-self:flex-start;
    margin-top:35px;
}

/* Mobile */
@media(max-width:900px){

    .photo-showcase{
        grid-template-columns:1fr;
        min-height:0;
    }

    .photo-showcase-media{
        min-height:520px;
    }

    .photo-showcase-services{
        padding:25px;
    }

    .photo-service{
        opacity:1;
    }
}

@media(max-width:600px){

    .photo-showcase-media{
        min-height:440px;
    }

    .photography-showcase .section-head{
        margin-bottom:35px;
    }

    .photo-service h3{
        font-size:23px;
    }
}
/* =====================================================
   INTERACTIVE EXPERIENCES — MEDIA + 4 CARD LAYOUT
===================================================== */

#experiences .cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

#experiences .experience-card {
    min-width: 0;
    overflow: hidden;
}

#experiences .card-media {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
}

/* Cinderella video */
#experiences .video-media video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
/* Cinderella image */
#experiences .cinderella-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 18% center;
}

/* Digital + Mirror images */
#experiences .real-media {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* 360 Coming Soon */
#experiences .coming-soon-media {
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(circle at center, rgba(211,169,73,.14), transparent 55%),
        linear-gradient(135deg, #171717, #090909);
}

#experiences .coming-soon-overlay {
    text-align: center;
}

#experiences .coming-soon-overlay strong {
    display: block;
    font-size: 64px;
    line-height: 1;
    color: #d8b65b;
    margin-top: 14px;
}

#experiences .coming-soon-label,
#experiences .coming-soon-text {
    color: #d8b65b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

#experiences .coming-soon-card {
    border-color: rgba(216,182,91,.35);
}

/* Tablet */
@media (max-width: 1100px) {
    #experiences .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 650px) {
    #experiences .cards {
        grid-template-columns: 1fr;
    }

    #experiences .card-media {
        height: 340px;
    }
}
/* ===== EXPERIENCES GRID FIX ===== */

#experiences .cards {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
}

#experiences .experience-card {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

#experiences .card-media {
    width: 100% !important;
    height: 300px !important;
    flex: 0 0 300px !important;
    overflow: hidden !important;
}

#experiences .cinderella-photo img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 18% center !important;
}

#experiences .card-body {
    flex: 1;
}

/* Tablet */
@media (max-width: 1000px) {
    #experiences .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Mobile */
@media (max-width: 600px) {
    #experiences .cards {
        grid-template-columns: 1fr !important;
    }
}
.print-media{
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center top;
    background-color:#111;
}

.print-media span{
    left:0;
    right:0;
    bottom:0;
    padding:14px 18px;
    background:linear-gradient(transparent,rgba(0,0,0,.95));
    border-radius:0 0 22px 22px;
}
/* Premium Prints - new product showcase image */
.keepsake-media.premium-prints-media {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.keepsake-media::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        rgba(0,0,0,.18) 35%,
        rgba(0,0,0,.78) 100%
    );
    pointer-events: none;
}

.keepsake-media span {
    position: absolute;
    left: 26px;
    bottom: 24px;
    z-index: 2;
}
/* Pricing heading refinement */
.packages .center-head h2 {
    font-size: clamp(42px, 4.4vw, 64px);
    line-height: 1.08;
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
}
/* Chamber section - clean compact layout */
.chamber-proof {
    padding: 80px 0;
}

.chamber-proof .chamber-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 70px;
    align-items: center;
}

.chamber-proof .chamber-badge-card {
    width: 100%;
    padding: 0;
    background: transparent;
    border: 0;
}

.chamber-proof .chamber-badge-card img {
    display: block;
    width: 100%;
    max-width: 260px;
    height: auto;
    border-radius: 8px;
}

.chamber-proof .split-copy {
    width: 100%;
    max-width: 760px;
}

.chamber-proof .split-copy h2 {
    font-size: clamp(38px, 4vw, 58px);
    line-height: 1.08;
    margin: 20px 0 24px;
}

.chamber-proof .split-copy > p:not(.eyebrow):not(.chamber-note) {
    max-width: 720px;
    line-height: 1.7;
}

.chamber-proof .chamber-note {
    max-width: 700px;
    margin-top: 22px;
}

@media (max-width: 800px) {
    .chamber-proof .chamber-layout {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .chamber-proof .chamber-badge-card img {
        max-width: 220px;
        margin: 0 auto;
    }

    .chamber-proof .split-copy {
        max-width: 100%;
    }
}
/* Chamber section final refinement */
.chamber-proof {
    padding: 65px 0 !important;
}

.chamber-proof .chamber-layout {
    grid-template-columns: 240px minmax(0, 1fr) !important;
    gap: 70px !important;
}

.chamber-proof .chamber-badge-card {
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

.chamber-proof .chamber-badge-card img {
    width: 100% !important;
    max-width: 240px !important;
}

.chamber-proof .split-copy h2 {
    max-width: 850px;
}
/* Request a Quote page spacing */
.quote-page-hero {
    padding: 90px 0 55px !important;
}

.quote-page-hero h1 {
    margin-bottom: 28px;
}

.quote-page-intro {
    max-width: 900px;
}

.quote-trust {
    margin-top: 22px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
}

.quote-form-section {
    padding: 20px 0 90px !important;
}

.quote-page-card {
    max-width: 1100px;
    margin: 0 auto;
}
/* Homepage quote CTA polish */
.quote-cta{
    max-width:1100px;
}

.quote-cta .lead-points{
    display:flex;
    flex-wrap:wrap;
    gap:14px 34px;
    margin:28px 0 32px;
}

.quote-cta .lead-points span{
    display:inline-block;
}

.quote-cta > small{
    display:block;
    margin-top:16px;
    color:#aaa49b;
    font-size:14px;
    line-height:1.5;
}

.quote-cta .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
/* Homepage CTA - final layout */
.quote-cta .lead-points{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:12px 34px !important;
    margin:28px 0 32px !important;
}

.quote-cta .lead-points span{
    display:inline-flex !important;
    width:auto !important;
    margin:0 !important;
}

.quote-cta{
    max-width:1200px;
}
/* =========================================================
   GOOGLE REVIEWS — PREMIUM TESTIMONIAL SECTION
   ========================================================= */

.google-reviews{
    background:#0d0d0d;
    padding:110px 0 120px;
    overflow:hidden;
}

.google-reviews .shell{
    max-width:1200px;
    margin:0 auto;
}

.reviews-heading{
    max-width:820px;
    margin:0 auto 55px;
    text-align:center;
}

.reviews-heading .eyebrow{
    margin-bottom:18px;
}

.reviews-heading h2{
    margin:0 0 24px;
    font-size:clamp(38px,5vw,64px);
    line-height:1.05;
    letter-spacing:-.035em;
}

.google-rating{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    font-size:16px;
}

.rating-score{
    font-weight:700;
    color:#f5f1e9;
}

.rating-stars,
.review-stars{
    color:#d8ad58;
    letter-spacing:3px;
}

.rating-count{
    color:rgba(255,255,255,.65);
}

/* Review carousel */
.reviews-track{
    position:relative;
    max-width:960px;
    min-height:330px;
    margin:0 auto;
}

.review-card{
    display:none;
    position:relative;
    padding:52px 60px;
    background:linear-gradient(
        145deg,
        rgba(255,255,255,.055),
        rgba(255,255,255,.018)
    );
    border:1px solid rgba(216,173,88,.22);
    border-radius:8px;
    text-align:center;
}

.review-card.active{
    display:block;
    animation:reviewFade .55s ease;
}

.review-stars{
    margin-bottom:24px;
    font-size:18px;
}

.review-card blockquote{
    max-width:800px;
    margin:0 auto 32px;
    padding:0;
    border:0;
    color:#f4f1eb;
    font-size:clamp(19px,2vw,25px);
    line-height:1.65;
    font-weight:400;
}

.review-author{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.review-author strong{
    color:#fff;
    font-size:16px;
}

.review-author span{
    color:rgba(255,255,255,.48);
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.12em;
}

/* Navigation */
.reviews-actions{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:22px;
    margin-top:30px;
}

.review-arrow{
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    border:1px solid rgba(216,173,88,.45);
    border-radius:50%;
    background:transparent;
    color:#d8ad58;
    font-size:20px;
    cursor:pointer;
    transition:.25s ease;
}

.review-arrow:hover{
    background:#d8ad58;
    color:#0b0b0b;
}

.review-dots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.review-dot{
    width:44px;
    height:44px;
    padding:0;
    border:0;
    border-radius:50%;
    background:transparent;
    cursor:pointer;
    position:relative;
}

.review-dot::after{
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    border-radius:50%;
    background:rgba(255,255,255,.25);
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.review-dot.active{
    background:transparent;
}

.review-dot.active::after{
    background:#d8ad58;
    transform:translate(-50%,-50%) scale(1.3);
}

.reviews-google-link{
    margin-top:30px;
    text-align:center;
}

.reviews-google-link a{
    color:#d8ad58;
    font-size:14px;
    font-weight:600;
    letter-spacing:.04em;
    text-decoration:none;
}

.reviews-google-link a:hover{
    color:#f0cf87;
}

@keyframes reviewFade{
    from{
        opacity:0;
        transform:translateY(8px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:768px){

    .google-reviews{
        padding:80px 0 90px;
    }

    .reviews-heading{
        margin-bottom:38px;
    }

    .reviews-track{
        min-height:400px;
    }

    .review-card{
        padding:38px 24px;
    }

    .review-card blockquote{
        font-size:18px;
        line-height:1.6;
    }
}

/* =========================================================
   PREMIUM FOOTER
   ========================================================= */

.site-footer{
    display:block;
    position:relative;
    background:#070707;
    color:#f4f1eb;
    padding:90px 0 36px;
    border-top:1px solid rgba(216,173,88,.16);
}

.site-footer .shell{
    max-width:1200px;
    margin:0 auto;
}

.site-footer .footer-grid{
    display:grid;
    grid-template-columns:1.7fr 1fr 1fr 1fr;
    gap:64px;
    align-items:start;
}

.footer-brand-name{
    margin-bottom:18px;
    color:#f4f1eb;
    font-family:inherit;
    font-size:24px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:-.02em;
}

.footer-brand p{
    max-width:390px;
    margin:0 0 28px;
    color:rgba(255,255,255,.58);
    font-size:15px;
    line-height:1.75;
}

.site-footer h3{
    margin:3px 0 24px;
    color:#f4f1eb;
    font-size:13px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.site-footer .footer-grid > div:not(.footer-brand) > a{
    display:block;
    width:max-content;
    max-width:100%;
    margin:0 0 14px;
    color:rgba(255,255,255,.62);
    font-size:14px;
    line-height:1.45;
    text-decoration:none;
    transition:color .2s ease;
}

.site-footer .footer-grid > div:not(.footer-brand) > a:hover{
    color:#d8ad58;
}

.footer-contact{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.footer-contact a{
    display:inline-flex;
    flex-direction:column;
    gap:3px;
    min-width:155px;
    padding:13px 16px;
    border:1px solid rgba(216,173,88,.25);
    color:#f4f1eb;
    text-decoration:none;
    transition:.2s ease;
}

.footer-contact a:hover{
    border-color:#d8ad58;
    background:rgba(216,173,88,.06);
}

.footer-contact a span{
    color:#d8ad58;
    font-size:10px;
    font-weight:700;
    letter-spacing:.14em;
}

.footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
    margin-top:65px;
    padding-top:28px;
    border-top:1px solid rgba(255,255,255,.09);
}

.copyright{
    color:rgba(255,255,255,.42);
    font-size:12px;
}

.copyright span{
    margin:0 8px;
    color:#d8ad58;
}

.footer-social{
    display:flex;
    flex-wrap:wrap;
    gap:22px;
}

.footer-social a{
    color:rgba(255,255,255,.48);
    font-size:12px;
    text-decoration:none;
    transition:color .2s ease;
}

.footer-social a:hover{
    color:#d8ad58;
}


/* FOOTER RESPONSIVE */

@media(max-width:900px){

    .site-footer{
        padding:70px 0 30px;
    }

    .site-footer .footer-grid{
        grid-template-columns:1fr 1fr;
        gap:48px 35px;
    }

    .footer-brand{
        grid-column:1 / -1;
    }
}

@media(max-width:600px){

    .site-footer .footer-grid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .footer-brand{
        grid-column:auto;
    }

    .footer-contact{
        flex-direction:column;
    }

    .footer-contact a{
        width:100%;
    }

    .footer-bottom{
        align-items:flex-start;
        flex-direction:column;
        margin-top:50px;
    }

    .footer-social{
        gap:16px 20px;
    }
}
/* Footer final refinement */

.footer-brand-name{
    font-family:Poppins, sans-serif !important;
    font-size:24px !important;
    font-weight:700 !important;
    letter-spacing:-.02em !important;
}

.footer-brand p{
    font-family:Poppins, sans-serif !important;
}

.footer-bottom{
    margin-top:45px !important;
    padding-top:26px !important;
}

.site-footer{
    padding-bottom:30px !important;
}
/* Footer column headings - stronger visibility */
.site-footer .footer-grid h4{
    color:#f4f1eb !important;
    opacity:1 !important;
    font-family:Poppins, sans-serif !important;
    font-size:13px !important;
    font-weight:700 !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
}
/* Footer spacing correction */
.site-footer{
    padding-top:70px !important;
    padding-bottom:28px !important;
}

.site-footer .footer-grid{
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}

.footer-bottom{
    margin-top:42px !important;
    padding-top:24px !important;
    min-height:0 !important;
}

.footer-bottom::before,
.footer-bottom::after{
    display:none !important;
}
/* HEADER LOGO — remove old white logo treatment */
.site-header .brand-logo{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0 !important;
    border-radius:0 !important;
}

.site-header .brand-logo img{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0 !important;
    border-radius:0 !important;
}
/* HEADER LOGO — final sizing */
.site-header .brand-logo img{
    width:auto !important;
    height:82px !important;
    max-width:190px !important;
    object-fit:contain !important;
}

.site-header .brand-logo{
    display:flex !important;
    align-items:center !important;
    height:100% !important;
}
/* Header brand tagline */
.site-header .brand-logo{
    flex-direction:column !important;
    justify-content:center !important;
    gap:1px !important;
}

.site-header .brand-tagline{
    display:block;
    color:#d9b45b;
    font-size:7px;
    font-weight:600;
    letter-spacing:1.25px;
    line-height:1;
    white-space:nowrap;
    margin-top:-5px;
}
/* SHARED HEADER LOGO — REMOVE ALL BACKGROUND */
.site-header .brand,
.site-header .brand-logo,
.site-header .brand-logo img {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

.site-header .brand-logo {
    padding: 0 !important;
}

.site-header .brand-logo img {
    display: block !important;
    object-fit: contain !important;
}
/* FINAL HEADER LOGO FIX */
.site-header .brand-logo{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:190px !important;
    height:auto !important;
    overflow:visible !important;
}

.site-header .brand-logo img{
    display:block !important;
    width:150px !important;
    height:72px !important;
    max-width:150px !important;
    max-height:72px !important;
    object-fit:contain !important;
    position:static !important;
    inset:auto !important;
    transform:none !important;
}

.site-header .brand-tagline{
    display:block !important;
    margin-top:2px !important;
    color:#dcb75e !important;
    font-size:8px !important;
    font-weight:700 !important;
    line-height:1 !important;
    letter-spacing:2px !important;
    white-space:nowrap !important;
}
/* Quote form intro — centered hierarchy */
.quote-page-card .crm-ready {
    text-align: center !important;
    max-width: 900px;
    margin: 0 auto 34px !important;
}

.quote-page-card .crm-ready h2 {
    font-size: clamp(36px, 4vw, 54px) !important;
    line-height: 1.08 !important;
    margin: 12px auto 22px !important;
}

.quote-page-card .crm-ready .form-intro {
    max-width: 760px;
    margin: 0 auto !important;
    text-align: center !important;
}

.quote-page-card .crm-ready > span {
    display: block;
    text-align: center !important;
}
/* Quote page hero — align with form card */
.quote-page-hero > .shell {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.quote-page-hero h1,
.quote-page-hero .quote-page-intro,
.quote-page-hero .quote-trust {
    margin-left: 0 !important;
}
/* =========================================================
   CINDERELLA ROBOT PHOTOBOOTH
   ========================================================= */

.cinderella-page{
    background:#0b0b0b;
    color:#f7f4ed;
}

.cinderella-hero{
    min-height:760px;
    display:grid;
    grid-template-columns:42% 58%;
    background:#0b0b0b;
    border-bottom:1px solid rgba(212,175,55,.18);
}

.cinderella-hero-copy{
    padding:110px 7vw 90px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.cinderella-hero .eyebrow{
    margin:0 0 28px;
}

.cinderella-hero h1{
    margin:0;
    max-width:680px;
    font-size:clamp(52px,5.2vw,88px);
    line-height:.94;
    letter-spacing:-.045em;
    color:#fff;
}

.cinderella-hero h1 em{
    display:inline-block;
    font-family:Georgia,serif;
    font-weight:400;
    font-style:italic;
    color:#dfba5b;
    letter-spacing:-.035em;
}

.cinderella-hero-intro{
    max-width:590px;
    margin:34px 0 0;
    font-size:18px;
    line-height:1.75;
    color:#c9c5bd;
}

.cinderella-hero-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:28px;
    margin-top:40px;
}

.cinderella-text-link{
    color:#dfba5b;
    text-decoration:none;
    font-size:13px;
    font-weight:600;
    letter-spacing:.13em;
}

.cinderella-hero-visual{
    position:relative;
    min-height:760px;
    overflow:hidden;
}

.cinderella-hero-visual:after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(11,11,11,.42) 0%,
            transparent 25%,
            transparent 100%
        );
    pointer-events:none;
}

.cinderella-hero-visual img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center center;
}

.cinderella-hero-label{
    position:absolute;
    z-index:2;
    left:38px;
    bottom:32px;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.cinderella-hero-label span{
    padding:9px 13px;
    background:rgba(8,8,8,.78);
    border:1px solid rgba(223,186,91,.45);
    color:#f2d27e;
    font-size:10px;
    font-weight:600;
    letter-spacing:.14em;
    backdrop-filter:blur(6px);
}

.cinderella-intro{
    padding-top:70px;
    padding-bottom:70px;
    text-align:center;
}

.cinderella-intro .shell{
    max-width:1050px;
}

.cinderella-intro h2{
    margin:12px 0 24px;
    font-size:clamp(46px,5vw,76px);
    color:#fff;
}

.cinderella-large-copy{
    max-width:850px;
    margin:0 auto;
    color:#c9c5bd;
    font-size:clamp(20px,2vw,27px);
    line-height:1.55;
}


/* Cinderella responsive */

@media (max-width:900px){

    .cinderella-hero{
        grid-template-columns:1fr;
    }

    .cinderella-hero-copy{
        padding:80px 28px 65px;
    }

    .cinderella-hero-visual{
        min-height:520px;
    }

}

@media (max-width:600px){

    .cinderella-hero-copy{
        padding:64px 22px 54px;
    }

    .cinderella-hero h1{
        font-size:48px;
    }

    .cinderella-hero-intro{
        font-size:16px;
    }

    .cinderella-hero-actions{
        align-items:flex-start;
        flex-direction:column;
    }

    .cinderella-hero-visual{
        min-height:430px;
    }

    .cinderella-hero-label{
        left:18px;
        right:18px;
        bottom:18px;
    }

    .cinderella-intro{
        padding:80px 22px;
    }

}
/* =========================================================
   CINDERELLA — IN ACTION
   ========================================================= */

.cinderella-action{
    padding:120px 0;
    background:#111;
    border-top:1px solid rgba(212,175,55,.12);
    border-bottom:1px solid rgba(212,175,55,.12);
}

.cinderella-action-grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:80px;
    align-items:center;
}


/* VIDEO */

.cinderella-video-wrap{
    position:relative;
    overflow:hidden;
    min-height:650px;
    background:#050505;
}

.cinderella-video{
    display:block;
    width:100%;
    height:650px;
    object-fit:cover;
    object-position:center;
}

.cinderella-video-wrap:after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}

.cinderella-video-badge{
    position:absolute;
    z-index:2;
    left:24px;
    bottom:24px;
    padding:10px 14px;
    background:rgba(8,8,8,.82);
    border:1px solid rgba(223,186,91,.55);
    color:#e3c46e;
    font-size:10px;
    font-weight:600;
    letter-spacing:.16em;
    backdrop-filter:blur(8px);
}


/* COPY */

.cinderella-action-copy{
    max-width:600px;
}

.cinderella-action-copy h2{
    margin:12px 0 28px;
    font-size:clamp(44px,4.5vw,70px);
    line-height:1;
    letter-spacing:-.035em;
    color:#fff;
}

.cinderella-action-copy h2 em{
    font-family:Georgia,serif;
    font-weight:400;
    font-style:italic;
    color:#dfba5b;
}

.action-lead{
    max-width:560px;
    margin:0 0 42px;
    color:#c9c5bd;
    font-size:18px;
    line-height:1.75;
}


/* FEATURES */

.cinderella-features{
    margin-bottom:42px;
    border-top:1px solid rgba(255,255,255,.12);
}

.cinderella-feature{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:18px;
    padding:22px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.cinderella-feature > span{
    color:#dfba5b;
    font-family:Georgia,serif;
    font-size:17px;
    font-style:italic;
}

.cinderella-feature h3{
    margin:0 0 6px;
    color:#fff;
    font-size:17px;
}

.cinderella-feature p{
    margin:0;
    max-width:470px;
    color:#9f9b94;
    font-size:14px;
    line-height:1.65;
}


/* RESPONSIVE */

@media (max-width:900px){

    .cinderella-action{
        padding:80px 0;
    }

    .cinderella-action-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .cinderella-video-wrap{
        min-height:520px;
    }

    .cinderella-video{
        height:520px;
    }

    .cinderella-action-copy{
        max-width:none;
    }

}

@media (max-width:600px){

    .cinderella-action{
        padding:65px 0;
    }

    .cinderella-video-wrap{
        min-height:480px;
    }

    .cinderella-video{
        height:480px;
    }

    .cinderella-action-copy h2{
        font-size:46px;
    }

}
/* =========================================================
   CINDERELLA — MADE FOR THE MOMENT
   ========================================================= */

.cinderella-moments{
    padding:120px 0 130px;
    background:#090909;
    border-bottom:1px solid rgba(212,175,55,.12);
}

.cinderella-moments-heading{
    max-width:850px;
    margin-bottom:65px;
}

.cinderella-moments-heading h2{
    margin:12px 0 25px;
    color:#fff;
    font-size:clamp(46px,5vw,76px);
    line-height:1.02;
    letter-spacing:-.04em;
}

.cinderella-moments-heading h2 em{
    color:#dfba5b;
    font-family:Georgia,serif;
    font-weight:400;
    font-style:italic;
}

.cinderella-moments-intro{
    max-width:680px;
    margin:0;
    color:#aaa59d;
    font-size:18px;
    line-height:1.75;
}


/* EDITORIAL GALLERY */

.cinderella-moments-grid{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:24px;
    align-items:stretch;
}

.cinderella-moments-stack{
    display:grid;
    grid-template-rows:1fr 1fr;
    gap:24px;
}

.cinderella-moment{
    position:relative;
    margin:0;
    overflow:hidden;
    background:#111;
    border:1px solid rgba(255,255,255,.08);
}

.cinderella-moment-image{
    position:absolute;
    inset:0;
}

.cinderella-moment-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 52%,
        rgba(0,0,0,.10) 62%,
        rgba(0,0,0,.72) 100%
    );
    pointer-events:none;
}

.cinderella-moment-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s ease;
}


/* Main corporate image */

.cinderella-moment-featured{
    min-height:850px;
}

.cinderella-moment-featured .cinderella-moment-image img{
    object-position:center center;
}


/* Supporting images */

.cinderella-moments-stack .cinderella-moment{
    min-height:413px;
}

.cinderella-moments-stack .cinderella-moment:first-child img{
    object-position:center 42%;
}

.cinderella-moments-stack .cinderella-moment:last-child img{
    object-position:center 45%;
}


/* CAPTIONS */

.cinderella-moment figcaption{
    position:absolute;
    z-index:2;
    left:0;
    right:0;
    bottom:0;

    display:grid;
    grid-template-columns:42px 1fr;
    gap:16px;

    padding:30px;
}

.cinderella-moment figcaption > span{
    color:#dfba5b;
    font-family:Georgia,serif;
    font-size:16px;
    font-style:italic;
}

.moment-label{
    margin:0 0 8px;
    color:#dfba5b;
    font-size:10px;
    font-weight:600;
    letter-spacing:.15em;
}

.cinderella-moment h3{
    max-width:470px;
    margin:0;
    color:#fff;
    font-size:clamp(20px,2vw,29px);
    line-height:1.2;
}


/* Very subtle movement — desktop only */

@media (hover:hover){

    .cinderella-moment:hover .cinderella-moment-image img{
        transform:scale(1.025);
    }

}


/* TABLET / MOBILE */

@media (max-width:900px){

    .cinderella-moments{
        padding:85px 0 95px;
    }

    .cinderella-moments-heading{
        margin-bottom:45px;
    }

    .cinderella-moments-grid{
        grid-template-columns:1fr;
    }

    .cinderella-moment-featured{
        min-height:700px;
    }

    .cinderella-moments-stack{
        grid-template-columns:1fr 1fr;
        grid-template-rows:none;
    }

    .cinderella-moments-stack .cinderella-moment{
        min-height:500px;
    }

}


@media (max-width:650px){

    .cinderella-moments{
        padding:65px 0 75px;
    }

    .cinderella-moments-heading h2{
        font-size:45px;
    }

    .cinderella-moments-intro{
        font-size:16px;
    }

    .cinderella-moment-featured{
        min-height:600px;
    }

    .cinderella-moments-stack{
        grid-template-columns:1fr;
    }

    .cinderella-moments-stack .cinderella-moment{
        min-height:540px;
    }

    .cinderella-moment figcaption{
        padding:24px 20px;
    }

}
/* Cinderella hero heading visibility */
.cinderella-page h1{
    color:#f5f1e8 !important;
}

.cinderella-page h1 em{
    color:#d8ad45 !important;
}

/* Tighten spacing between Meet Cinderella and action section */
.cinderella-action.section{
    padding-top: 45px !important;
}
/* Tighten transition into Different Events section */
.cinderella-moments.section{
    padding-top: 55px !important;
}
/* ==================================================
   CINDERELLA — BEYOND THE MOMENT
================================================== */

.cinderella-takehome{
    background:#101010;
    border-top:1px solid rgba(212,175,55,.16);
    padding:120px 0;
}

.cinderella-takehome-grid{
    display:grid;
    grid-template-columns:44% 56%;
    gap:90px;
    align-items:start;
}

.cinderella-takehome-heading .eyebrow{
    margin:0 0 24px;
}

.cinderella-takehome-heading h2{
    margin:0;
    max-width:650px;
    font-size:clamp(46px,4.6vw,72px);
    line-height:1.04;
    color:#fff;
}

.cinderella-takehome-heading h2 em{
    display:block;
    margin-top:8px;
    color:#d4af37;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:400;
    line-height:1.05;
}

.cinderella-takehome-intro{
    max-width:590px;
    margin:32px 0 0;
    color:#c9c5bd;
    font-size:clamp(18px,1.5vw,22px);
    line-height:1.65;
}

.cinderella-takehome-list{
    border-top:1px solid rgba(255,255,255,.12);
}

.cinderella-takehome-item{
    display:grid;
    grid-template-columns:60px 1fr;
    gap:24px;
    padding:30px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.cinderella-takehome-item > span{
    color:#d4af37;
    font-family:Georgia, "Times New Roman", serif;
    font-style:italic;
    font-size:16px;
    padding-top:6px;
}

.cinderella-takehome-item h3{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(25px,2vw,32px);
    line-height:1.15;
}

.cinderella-takehome-item p{
    margin:0;
    max-width:620px;
    color:#c9c5bd;
    font-size:17px;
    line-height:1.6;
}


/* MOBILE */

@media (max-width:900px){

    .cinderella-takehome{
        padding:80px 0;
    }

    .cinderella-takehome-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .cinderella-takehome-heading h2{
        font-size:clamp(40px,10vw,58px);
    }

    .cinderella-takehome-item{
        grid-template-columns:45px 1fr;
        gap:15px;
        padding:25px 0;
    }

}
/* =====================================================
   CINDERELLA — FAQ
===================================================== */

.cinderella-faq{
    padding:120px 0;
    background:#0b0b0b;
    border-top:1px solid rgba(212,175,55,.16);
}

.cinderella-faq-grid{
    display:grid;
    grid-template-columns:38% 62%;
    gap:90px;
    align-items:start;
}

.cinderella-faq-heading{
    position:sticky;
    top:140px;
}

.cinderella-faq-heading .eyebrow{
    margin:0 0 24px;
}

.cinderella-faq-heading h2{
    margin:0 0 28px;
    font-size:clamp(48px,5vw,72px);
    line-height:1.04;
    color:#fff;
}

.cinderella-faq-heading h2 em{
    display:inline-block;
    color:#d4af37;
    font-family:Georgia,serif;
    font-weight:400;
}

.cinderella-faq-heading > p:last-child{
    max-width:520px;
    margin:0;
    color:#c9c5bd;
    font-size:19px;
    line-height:1.65;
}


/* FAQ ITEMS */

.cinderella-faq-list{
    border-top:1px solid rgba(255,255,255,.15);
}

.cinderella-faq-list details{
    border-bottom:1px solid rgba(255,255,255,.15);
}

.cinderella-faq-list summary{
    position:relative;
    list-style:none;
    cursor:pointer;
    padding:32px 60px 32px 0;
    color:#fff;
    font-size:clamp(20px,2vw,27px);
    font-weight:600;
    line-height:1.3;
}

.cinderella-faq-list summary::-webkit-details-marker{
    display:none;
}

.cinderella-faq-list summary::after{
    content:"+";
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    color:#d4af37;
    font-size:32px;
    font-weight:300;
    transition:transform .25s ease;
}

.cinderella-faq-list details[open] summary::after{
    transform:translateY(-50%) rotate(45deg);
}

.cinderella-faq-list details p{
    max-width:720px;
    margin:-6px 60px 30px 0;
    color:#c9c5bd;
    font-size:17px;
    line-height:1.7;
}


/* MOBILE */

@media (max-width:900px){

    .cinderella-faq{
        padding:80px 0;
    }

    .cinderella-faq-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .cinderella-faq-heading{
        position:static;
    }

    .cinderella-faq-heading h2{
        font-size:clamp(42px,11vw,60px);
    }

    .cinderella-faq-list summary{
        padding:26px 50px 26px 0;
        font-size:21px;
    }

    .cinderella-faq-list details p{
        margin:-4px 45px 26px 0;
        font-size:16px;
    }
}
/* =====================================================
   CINDERELLA — FINAL CTA
===================================================== */

.cinderella-final-cta{
    position:relative;
    overflow:hidden;
    padding:125px 0 135px;
    background:
        radial-gradient(circle at 78% 45%,
        rgba(212,175,55,.10) 0%,
        rgba(212,175,55,.035) 25%,
        transparent 52%),
        #080808;
    border-top:1px solid rgba(212,175,55,.18);
}

.cinderella-final-cta-inner{
    max-width:1200px;
}

.cinderella-final-cta .eyebrow{
    margin:0 0 30px;
    color:#d4af37;
    letter-spacing:.18em;
}

.cinderella-final-cta h2{
    max-width:950px;
    margin:0;
    color:#f7f4ed !important;
    font-size:clamp(52px,6vw,88px);
    line-height:1.02;
    letter-spacing:-.035em;
}

.cinderella-final-cta h2 em{
    display:block;
    margin-top:8px;
    color:#d4af37 !important;
    font-family:Georgia,serif;
    font-weight:400;
    line-height:1.05;
}

.cinderella-final-cta-copy{
    max-width:760px;
    margin:38px 0 0;
    color:#c9c5bd;
    font-size:19px;
    line-height:1.7;
}

.cinderella-final-cta-actions{
    display:flex;
    align-items:center;
    gap:32px;
    margin-top:38px;
}

.cinderella-final-link{
    color:#d4af37;
    font-size:13px;
    font-weight:600;
    letter-spacing:.13em;
    text-decoration:none;
    transition:opacity .2s ease;
}

.cinderella-final-link:hover{
    opacity:.7;
}


/* MOBILE */

@media (max-width:900px){

    .cinderella-final-cta{
        padding:85px 0 95px;
    }

    .cinderella-final-cta h2{
        font-size:clamp(46px,12vw,64px);
    }

    .cinderella-final-cta-copy{
        margin-top:28px;
        font-size:17px;
    }

    .cinderella-final-cta-actions{
        align-items:flex-start;
        flex-direction:column;
        gap:25px;
        margin-top:32px;
    }
}
/* =========================================================
   MIRROR X EXPERIENCE PAGE
   ========================================================= */

.mirror-x-page{
    background:#0d0d0d;
    color:#f7f4ed;
}

.mirror-x-main{
    overflow:hidden;
}

/* HERO */
.mirror-x-hero{
    position:relative;
    min-height:720px;
    display:grid;
    grid-template-columns:minmax(0, 1.05fr) minmax(420px, .95fr);
    align-items:center;
    gap:70px;
    max-width:1280px;
    margin:0 auto;
    padding:105px 50px 115px;
}

.mirror-x-hero-copy{
    position:relative;
    z-index:2;
    max-width:700px;
}

.mirror-x-hero .eyebrow{
    margin:0 0 22px;
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.mirror-x-hero h1{
    margin:0;
    color:#f7f4ed;
    font-size:clamp(62px,6vw,96px);
    line-height:.96;
    letter-spacing:-.045em;
    font-weight:700;
}

.mirror-x-hero h1 em{
    display:block;
    margin-top:8px;
    color:#d4af37;
    font-family:Georgia,serif;
    font-weight:400;
    line-height:1;
}

.mirror-x-hero-lead{
    max-width:650px;
    margin:30px 0 0;
    color:#c9c5bd;
    font-size:19px;
    line-height:1.7;
}

.mirror-x-hero-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:28px;
    margin-top:38px;
}

.mirror-x-hero-actions .btn-gold{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 28px;
    border:1px solid #d4af37;
    background:#d4af37;
    color:#0b0b0b;
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
    text-decoration:none;
}

.mirror-x-text-link{
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
    text-decoration:none;
}

.mirror-x-hero-visual{
    position:relative;
    min-height:540px;
    border:1px solid rgba(212,175,55,.24);
    background:
        radial-gradient(circle at 45% 42%,
        rgba(212,175,55,.13),
        rgba(212,175,55,.025) 37%,
        transparent 65%),
        #111;
}

.mirror-x-hero-visual:before{
    content:"X";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-53%);
    color:rgba(212,175,55,.07);
    font-family:Georgia,serif;
    font-size:390px;
    line-height:1;
}

.mirror-x-hero-label{
    position:absolute;
    left:34px;
    right:34px;
    bottom:30px;
    padding-top:20px;
    border-top:1px solid rgba(212,175,55,.28);
    color:#d4af37;
    font-size:11px;
    font-weight:700;
    letter-spacing:.2em;
}

/* EXPERIENCE INTRO */
.mirror-x-experience{
    position:relative;
    max-width:1280px;
    margin:0 auto;
    padding:115px 50px 130px;
    border-top:1px solid rgba(212,175,55,.15);
}

.mirror-x-experience-copy{
    max-width:900px;
}

.mirror-x-experience .eyebrow{
    margin:0 0 24px;
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
}

.mirror-x-experience h2{
    max-width:900px;
    margin:0 0 34px;
    color:#f7f4ed;
    font-size:clamp(44px,5vw,74px);
    line-height:1.04;
    letter-spacing:-.035em;
}

.mirror-x-experience p{
    max-width:850px;
    margin:0 0 22px;
    color:#c9c5bd;
    font-size:18px;
    line-height:1.8;
}


/* MOBILE */
@media (max-width:900px){

    .mirror-x-hero{
        min-height:auto;
        grid-template-columns:1fr;
        gap:55px;
        padding:75px 24px 85px;
    }

    .mirror-x-hero h1{
        font-size:clamp(52px,15vw,76px);
    }

    .mirror-x-hero-lead{
        font-size:17px;
    }

    .mirror-x-hero-visual{
        min-height:390px;
    }

    .mirror-x-hero-visual:before{
        font-size:280px;
    }

    .mirror-x-hero-actions{
        align-items:flex-start;
        flex-direction:column;
        gap:22px;
    }

    .mirror-x-experience{
        padding:85px 24px 100px;
    }

    .mirror-x-experience h2{
        font-size:clamp(40px,12vw,58px);
    }

    .mirror-x-experience p{
        font-size:17px;
    }
}
/* =========================================================
   MIRROR X — INTRO SECTION FIX
   ========================================================= */

.mirror-x-intro{
    max-width:1280px;
    margin:0 auto;
    padding:120px 50px 135px;
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:100px;
    align-items:start;
    border-top:1px solid rgba(212,175,55,.15);
}

.mirror-x-intro-heading{
    max-width:620px;
}

.mirror-x-intro .eyebrow{
    margin:0 0 28px;
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.mirror-x-intro h2{
    margin:0;
    color:#f7f4ed;
    font-size:clamp(46px,5vw,72px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.mirror-x-intro h2 em{
    display:block;
    margin-top:7px;
    color:#d4af37;
    font-family:Georgia,serif;
    font-weight:400;
    line-height:1.08;
}

.mirror-x-intro-copy{
    max-width:680px;
    padding-top:42px;
}

.mirror-x-intro-copy p{
    margin:0 0 26px;
    color:#c9c5bd;
    font-size:18px;
    line-height:1.8;
}

@media (max-width:900px){

    .mirror-x-intro{
        grid-template-columns:1fr;
        gap:38px;
        padding:85px 24px 100px;
    }

    .mirror-x-intro h2{
        font-size:clamp(40px,12vw,58px);
    }

    .mirror-x-intro-copy{
        padding-top:0;
    }

    .mirror-x-intro-copy p{
        font-size:17px;
    }
}
/* =========================================================
   MIRROR X — HERO PHOTO
   ========================================================= */

.mirror-x-hero-visual{
    position:relative;
    min-height:540px;
    overflow:hidden;
    border:1px solid rgba(212,175,55,.24);
    background:#111;
}

/* Remove old decorative X */
.mirror-x-hero-visual:before{
    display:none !important;
    content:none !important;
}

/* Real Mirror X photograph */
.mirror-x-hero-image{
    position:absolute;
    inset:0;
    width:100% !important;
    height:100% !important;
    display:block;
    object-fit:cover;
    object-position:center center;
}

/* Subtle luxury treatment */
.mirror-x-hero-visual:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:
        linear-gradient(
            180deg,
            rgba(8,8,8,.05) 35%,
            rgba(8,8,8,.55) 100%
        );
}

/* Label over photograph */
.mirror-x-hero-label,
.mirror-x-hero-statement{
    position:absolute;
    z-index:2;
    left:32px;
    right:32px;
    bottom:28px;
    top:auto !important;

    display:flex;
    align-items:center;
    gap:10px;

    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.28);

    color:#f4df9b;
    font-size:11px;
    font-weight:700;
    letter-spacing:.17em;
    text-transform:uppercase;
}

@media (max-width:900px){

    .mirror-x-hero-visual{
        min-height:430px;
    }

    .mirror-x-hero-image{
        object-position:center center;
    }

    .mirror-x-hero-label,
    .mirror-x-hero-statement{
        left:22px;
        right:22px;
        bottom:22px;
        font-size:10px;
    }
}
/* Mirror X hero — show the complete booth */
.mirror-x-hero-image{
    object-fit:contain !important;
    object-position:center center !important;
    background:#0d0d0d;
}
/* Mirror X hero — fit panel to full photograph */
.mirror-x-hero-visual{
    min-height:0 !important;
    aspect-ratio:1 / 1 !important;
}

.mirror-x-hero-image{
    object-fit:contain !important;
    object-position:center center !important;
}
/* =========================================================
   MIRROR X — COMPLETE PAGE
   ========================================================= */

.mirror-x-page .eyebrow{
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}


/* SECTION HEADINGS */

.mirror-x-section-heading{
    max-width:760px;
}

.mirror-x-section-heading h2,
.mirror-x-events h2,
.mirror-x-keepsakes h2,
.mirror-x-pricing h2{
    margin:20px 0 0;
    color:#f7f4ed;
    font-size:clamp(46px,5vw,72px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.mirror-x-section-heading h2 em,
.mirror-x-events h2 em,
.mirror-x-keepsakes h2 em,
.mirror-x-pricing h2 em{
    color:#d4af37;
    font-family:Georgia,serif;
    font-weight:400;
}

.mirror-x-section-heading > p:last-child{
    max-width:690px;
    margin:30px 0 0;
    color:#aaa69e;
    font-size:18px;
    line-height:1.8;
}


/* FEATURES */

.mirror-x-features{
    max-width:1280px;
    margin:0 auto;
    padding:125px 50px;
    border-top:1px solid rgba(212,175,55,.14);
}

.mirror-x-feature-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:1px;
    margin-top:75px;
    background:rgba(212,175,55,.15);
    border:1px solid rgba(212,175,55,.15);
}

.mirror-x-feature-card{
    min-height:300px;
    padding:42px;
    background:#101010;
}

.mirror-x-feature-number{
    color:#d4af37;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
}

.mirror-x-feature-card h3{
    margin:60px 0 16px;
    color:#f7f4ed;
    font-size:24px;
}

.mirror-x-feature-card p{
    max-width:470px;
    margin:0;
    color:#aaa69e;
    font-size:16px;
    line-height:1.75;
}


/* EVENT TYPES */

.mirror-x-events{
    max-width:1280px;
    margin:0 auto;
    padding:125px 50px;
    border-top:1px solid rgba(212,175,55,.14);
}

.mirror-x-events-heading{
    max-width:760px;
    margin-bottom:70px;
}

.mirror-x-event-row{
    display:grid;
    grid-template-columns:70px .75fr 1.25fr;
    gap:30px;
    align-items:center;
    padding:31px 0;
    border-top:1px solid rgba(255,255,255,.11);
}

.mirror-x-event-row:last-child{
    border-bottom:1px solid rgba(255,255,255,.11);
}

.mirror-x-event-row > span{
    color:#d4af37;
    font-size:11px;
    letter-spacing:.15em;
}

.mirror-x-event-row h3{
    margin:0;
    color:#f7f4ed;
    font-size:25px;
}

.mirror-x-event-row p{
    margin:0;
    color:#aaa69e;
    font-size:16px;
    line-height:1.7;
}


/* KEEPSAKES */

.mirror-x-keepsakes{
    max-width:1280px;
    margin:0 auto;
    padding:125px 50px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:100px;
    border-top:1px solid rgba(212,175,55,.14);
}

.mirror-x-keepsakes-copy > p:last-child{
    max-width:580px;
    margin:30px 0 0;
    color:#aaa69e;
    font-size:17px;
    line-height:1.8;
}

.mirror-x-keepsake-list{
    border-top:1px solid rgba(255,255,255,.12);
}

.mirror-x-keepsake-list > div{
    display:grid;
    grid-template-columns:55px 1fr;
    align-items:center;
    padding:29px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.mirror-x-keepsake-list span{
    color:#d4af37;
    font-size:11px;
}

.mirror-x-keepsake-list h3{
    margin:0;
    color:#f7f4ed;
    font-size:21px;
}


/* PRICING */

.mirror-x-pricing{
    max-width:1280px;
    margin:0 auto;
    padding:125px 50px;
    display:grid;
    grid-template-columns:1fr .8fr;
    gap:100px;
    border-top:1px solid rgba(212,175,55,.14);
}

.mirror-x-price-block{
    padding:45px;
    border:1px solid rgba(212,175,55,.25);
    background:#101010;
}

.mirror-x-price-label{
    margin:0;
    color:#d4af37;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
}

.mirror-x-price{
    display:flex;
    align-items:flex-end;
    gap:15px;
    margin:35px 0 30px;
}

.mirror-x-price span{
    padding-bottom:11px;
    color:#aaa69e;
    font-size:14px;
}

.mirror-x-price strong{
    color:#f7f4ed;
    font-size:64px;
    line-height:1;
    font-weight:600;
}

.mirror-x-price-block > p:not(.mirror-x-price-label){
    margin:0 0 32px;
    color:#aaa69e;
    font-size:15px;
    line-height:1.75;
}


/* FINAL CTA */

.mirror-x-final-cta{
    padding:135px 50px 145px;
    text-align:center;
    border-top:1px solid rgba(212,175,55,.14);
    background:
        radial-gradient(
            circle at 50% 50%,
            rgba(212,175,55,.08),
            transparent 52%
        );
}

.mirror-x-final-cta h2{
    max-width:900px;
    margin:22px auto 0;
    color:#f7f4ed;
    font-size:clamp(52px,6vw,88px);
    line-height:1.02;
    letter-spacing:-.045em;
}

.mirror-x-final-cta h2 em{
    color:#d4af37;
    font-family:Georgia,serif;
    font-weight:400;
}

.mirror-x-final-cta > p:not(.eyebrow){
    max-width:690px;
    margin:30px auto 0;
    color:#aaa69e;
    font-size:18px;
    line-height:1.75;
}

.mirror-x-final-actions{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:32px;
    margin-top:40px;
}

.mirror-x-final-link{
    color:#d4af37;
    font-size:12px;
    font-weight:700;
    letter-spacing:.13em;
    text-decoration:none;
}


/* RESPONSIVE */

@media (max-width:900px){

    .mirror-x-features,
    .mirror-x-events,
    .mirror-x-keepsakes,
    .mirror-x-pricing{
        padding:85px 24px;
    }

    .mirror-x-feature-grid{
        grid-template-columns:1fr;
        margin-top:50px;
    }

    .mirror-x-feature-card{
        min-height:auto;
        padding:34px 28px;
    }

    .mirror-x-feature-card h3{
        margin-top:38px;
    }

    .mirror-x-event-row{
        grid-template-columns:40px 1fr;
        gap:15px;
    }

    .mirror-x-event-row p{
        grid-column:2;
    }

    .mirror-x-keepsakes,
    .mirror-x-pricing{
        grid-template-columns:1fr;
        gap:55px;
    }

    .mirror-x-price-block{
        padding:32px 26px;
    }

    .mirror-x-price strong{
        font-size:54px;
    }

    .mirror-x-final-cta{
        padding:95px 24px 105px;
    }

    .mirror-x-final-actions{
        flex-direction:column;
        gap:25px;
    }
}
/* =========================================================
   MIRROR X — KEEPSAKES COMPACT FIX
   ========================================================= */

.mirror-x-keepsakes{
    max-width:1280px !important;
    margin:0 auto !important;
    padding:80px 50px 85px !important;

    display:grid !important;
    grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important;
    gap:80px !important;
    align-items:center !important;

    border-top:1px solid rgba(212,175,55,.14);
}

/* LEFT SIDE */

.mirror-x-keepsakes-copy{
    align-self:center;
}

.mirror-x-keepsakes-copy .eyebrow{
    margin:0 0 20px !important;
}

.mirror-x-keepsakes-copy h2{
    margin:0 !important;
    max-width:540px !important;

    color:#f7f4ed !important;
    font-size:clamp(44px,4.5vw,68px) !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
}

.mirror-x-keepsakes-copy h2 em{
    display:block !important;
    margin-top:8px !important;

    color:#d4af37 !important;
    font-family:Georgia,serif !important;
    font-weight:400 !important;
    line-height:1.05 !important;
}

.mirror-x-keepsakes-copy > p:last-child{
    max-width:540px !important;
    margin:26px 0 0 !important;

    color:#aaa69e !important;
    font-size:16px !important;
    line-height:1.75 !important;
}


/* RIGHT SIDE */

.mirror-x-keepsake-list{
    width:100% !important;
    margin:0 !important;
    border-top:1px solid rgba(255,255,255,.13) !important;
}

.mirror-x-keepsake-list > div{
    display:grid !important;
    grid-template-columns:55px 1fr !important;
    align-items:center !important;

    min-height:82px !important;
    padding:20px 0 !important;
    margin:0 !important;

    border-bottom:1px solid rgba(255,255,255,.13) !important;
}

.mirror-x-keepsake-list span{
    display:block !important;
    color:#d4af37 !important;
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.12em !important;
}

.mirror-x-keepsake-list h3{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;

    margin:0 !important;
    padding:0 !important;

    color:#f7f4ed !important;
    font-size:21px !important;
    font-weight:500 !important;
    line-height:1.3 !important;
}


/* MOBILE */

@media (max-width:900px){

    .mirror-x-keepsakes{
        padding:70px 24px 75px !important;
        grid-template-columns:1fr !important;
        gap:45px !important;
    }

    .mirror-x-keepsakes-copy h2{
        font-size:clamp(40px,12vw,58px) !important;
    }

    .mirror-x-keepsake-list > div{
        min-height:72px !important;
        grid-template-columns:42px 1fr !important;
        padding:17px 0 !important;
    }

    .mirror-x-keepsake-list h3{
        font-size:19px !important;
    }
}
/* =========================================================
   MIRROR X — TYPOGRAPHY OVERRIDE
   Fix legacy V10 heading collisions
   ========================================================= */

body.mirror-x-page .mirror-x-main h1,
body.mirror-x-page .mirror-x-main h2,
body.mirror-x-page .mirror-x-main h3{
    visibility:visible !important;
    opacity:1 !important;
}

/* Main white headings */
body.mirror-x-page .mirror-x-intro h2,
body.mirror-x-page .mirror-x-section-heading h2,
body.mirror-x-page .mirror-x-events h2,
body.mirror-x-page .mirror-x-keepsakes h2,
body.mirror-x-page .mirror-x-pricing h2,
body.mirror-x-page .mirror-x-feature-card h3,
body.mirror-x-page .mirror-x-event-row h3,
body.mirror-x-page .mirror-x-keepsake-list h3{
    color:#f7f4ed !important;
}

/* Gold italic portions */
body.mirror-x-page .mirror-x-intro h2 em,
body.mirror-x-page .mirror-x-section-heading h2 em,
body.mirror-x-page .mirror-x-events h2 em,
body.mirror-x-page .mirror-x-keepsakes h2 em,
body.mirror-x-page .mirror-x-pricing h2 em{
    color:#d4af37 !important;
}

/* Feature titles */
body.mirror-x-page .mirror-x-feature-card h3{
    display:block !important;
    margin:48px 0 16px !important;
    font-size:24px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
}

/* Event names */
body.mirror-x-page .mirror-x-event-row h3{
    display:block !important;
    margin:0 !important;
    font-size:24px !important;
    font-weight:500 !important;
    line-height:1.25 !important;
}

/* Keepsake names */
body.mirror-x-page .mirror-x-keepsake-list h3{
    display:block !important;
    color:#f7f4ed !important;
    font-size:21px !important;
    font-weight:500 !important;
}

/* Tighten oversized sections */
body.mirror-x-page .mirror-x-intro,
body.mirror-x-page .mirror-x-features,
body.mirror-x-page .mirror-x-events,
body.mirror-x-page .mirror-x-keepsakes,
body.mirror-x-page .mirror-x-pricing{
    padding-top:85px !important;
    padding-bottom:85px !important;
}
/* =========================================================
   MIRROR X — FINAL TEXT VISIBILITY FIX
   ========================================================= */

/* HERO */
body.mirror-x-page .mirror-x-hero h1,
body.mirror-x-page .mirror-x-hero h1:not(em){
    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;
    opacity:1 !important;
    visibility:visible !important;
}

body.mirror-x-page .mirror-x-hero h1 em{
    color:#d4af37 !important;
    -webkit-text-fill-color:#d4af37 !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* ALL MIRROR X WHITE HEADINGS */
body.mirror-x-page .mirror-x-main h2,
body.mirror-x-page .mirror-x-main h3{
    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* GOLD ITALIC HEADLINE TEXT */
body.mirror-x-page .mirror-x-main h2 em,
body.mirror-x-page .mirror-x-main h3 em{
    color:#d4af37 !important;
    -webkit-text-fill-color:#d4af37 !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* FEATURE CARD TITLES */
body.mirror-x-page .mirror-x-feature-card h3{
    display:block !important;
    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;
}

/* EVENT TYPE TITLES */
body.mirror-x-page .mirror-x-event-row h3{
    display:block !important;
    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;
}

/* KEEPSAKE TITLES */
body.mirror-x-page .mirror-x-keepsake-list h3{
    display:block !important;
    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;
}/* =========================================================
   MIRROR X — VIDEO EXPERIENCE
   ========================================================= */

.mirror-x-video-section{
    max-width:1280px;
    margin:0 auto;
    padding:90px 50px;

    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);
    gap:90px;
    align-items:center;

    border-top:1px solid rgba(212,175,55,.14);
}

.mirror-x-video-copy{
    max-width:570px;
}

.mirror-x-video-copy h2{
    margin:20px 0 0 !important;

    color:#f7f4ed !important;
    -webkit-text-fill-color:#f7f4ed !important;

    font-size:clamp(46px,4.8vw,70px);
    line-height:1.03;
    letter-spacing:-.04em;
}

.mirror-x-video-copy h2 em{
    display:block;

    margin-top:8px;

    color:#d4af37 !important;
    -webkit-text-fill-color:#d4af37 !important;

    font-family:Georgia,serif;
    font-weight:400;
    line-height:1.06;
}

.mirror-x-video-copy > p:last-child{
    max-width:540px;
    margin:28px 0 0;

    color:#aaa69e;
    font-size:17px;
    line-height:1.8;
}


/* VIDEO */

.mirror-x-video-frame{
    position:relative;

    width:100%;
    max-width:520px;
    margin-left:auto;

    aspect-ratio:9 / 16;

    overflow:hidden;

    border:1px solid rgba(212,175,55,.28);
    background:#080808;
}

.mirror-x-video{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}


/* subtle bottom treatment */

.mirror-x-video-frame:after{
    content:"";

    position:absolute;
    inset:0;

    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            transparent 65%,
            rgba(0,0,0,.48) 100%
        );
}


/* VIDEO LABEL */

.mirror-x-video-badge{
    position:absolute;
    z-index:2;

    left:24px;
    right:24px;
    bottom:22px;

    padding-top:15px;

    border-top:1px solid rgba(255,255,255,.32);

    color:#f4df9b;

    font-size:10px;
    font-weight:700;
    letter-spacing:.18em;
}


/* MOBILE */

@media (max-width:900px){

    .mirror-x-video-section{
        padding:75px 24px;

        grid-template-columns:1fr;
        gap:45px;
    }

    .mirror-x-video-frame{
        max-width:440px;
        margin:0 auto;
    }

    .mirror-x-video-copy h2{
        font-size:clamp(40px,12vw,58px);
    }

}
/* =========================================================
   MIRROR X — VIDEO SECTION FINAL SIZE
   ========================================================= */

body.mirror-x-page .mirror-x-video-section{
    padding:75px 50px !important;
    grid-template-columns:minmax(0,1fr) 420px !important;
    gap:90px !important;
    align-items:center !important;
}

body.mirror-x-page .mirror-x-video-copy{
    max-width:620px !important;
}

body.mirror-x-page .mirror-x-video-copy h2{
    max-width:620px !important;
    font-size:clamp(44px,4.2vw,64px) !important;
    line-height:1.03 !important;
}

body.mirror-x-page .mirror-x-video-copy h2 em{
    display:block !important;
    margin-top:8px !important;
}

body.mirror-x-page .mirror-x-video-frame{
    width:100% !important;
    max-width:420px !important;
    height:650px !important;
    aspect-ratio:auto !important;
    margin-left:auto !important;
}

body.mirror-x-page .mirror-x-video{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
}

@media (max-width:900px){

    body.mirror-x-page .mirror-x-video-section{
        padding:65px 24px !important;
        grid-template-columns:1fr !important;
        gap:40px !important;
    }

    body.mirror-x-page .mirror-x-video-frame{
        max-width:390px !important;
        height:auto !important;
        aspect-ratio:9 / 16 !important;
        margin:0 auto !important;
    }
}
/* =========================================================
   DIGITAL PHOTO EXPERIENCE
   ========================================================= */

.digital-experience-page,
.digital-experience-page .digital-main {
    background:#101010;
    color:#f4f0e8;
}

.digital-experience-page .digital-main {
    overflow:hidden;
}

/* ---------- HERO ---------- */

.digital-experience-page .digital-hero {
    width:min(1440px, calc(100% - 80px));
    margin:0 auto;
    min-height:720px;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:80px;
    padding:90px 0;
    border-bottom:1px solid rgba(215,174,55,.20);
}

.digital-experience-page .digital-hero-copy {
    max-width:680px;
}

.digital-experience-page .eyebrow {
    display:block;
    margin:0 0 34px;
    color:#e0b52e;
    font-size:14px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.digital-experience-page .digital-hero h1 {
    display:block;
    margin:0 0 34px;
    color:#f4f0e8;
    font-size:clamp(58px, 5vw, 88px);
    line-height:.98;
    font-weight:700;
    letter-spacing:-.045em;
}

.digital-experience-page .digital-hero h1 em {
    display:block;
    margin-top:10px;
    color:#ddb32e;
    font-family:Georgia, "Times New Roman", serif;
    font-size:.90em;
    font-weight:400;
    line-height:1;
    letter-spacing:-.04em;
}

.digital-experience-page .digital-hero-lead {
    max-width:650px;
    margin:0;
    color:#d5cdbd;
    font-size:20px;
    line-height:1.7;
}

.digital-experience-page .digital-hero-actions {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:30px;
    margin-top:40px;
}

.digital-experience-page .digital-text-link {
    color:#ddb32e;
    font-size:13px;
    font-weight:600;
    letter-spacing:.13em;
    text-decoration:none;
}

/* Right-side visual treatment */

.digital-experience-page .digital-hero-visual {
    min-height:520px;
    position:relative;
    display:flex;
    align-items:flex-end;
    padding:46px;
    border:1px solid rgba(221,179,46,.32);
    background:
        radial-gradient(circle at 50% 45%,
            rgba(221,179,46,.10),
            transparent 38%),
        linear-gradient(145deg,#171717,#0b0b0b);
}

.digital-experience-page .digital-hero-visual::before {
    content:"";
    position:absolute;
    width:210px;
    height:210px;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    border:1px solid rgba(221,179,46,.25);
    border-radius:50%;
}

.digital-experience-page .digital-hero-visual::after {
    content:"DIGITAL";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    color:rgba(221,179,46,.09);
    font-family:Georgia, "Times New Roman", serif;
    font-size:72px;
    letter-spacing:.08em;
}

.digital-experience-page .digital-hero-mark {
    position:relative;
    z-index:2;
    width:100%;
    display:flex;
    gap:14px;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.25);
    color:#e5bd43;
    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
}


/* ---------- INTRO ---------- */

.digital-experience-page .digital-intro {
    width:min(1340px, calc(100% - 100px));
    margin:0 auto;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:120px;
    align-items:center;
    padding:120px 0;
    border-bottom:1px solid rgba(221,179,46,.18);
}

.digital-experience-page .digital-intro h2,
.digital-experience-page .digital-section-heading h2 {
    margin:0;
    color:#f4f0e8;
    font-size:clamp(48px,4.5vw,72px);
    line-height:1.02;
    letter-spacing:-.04em;
}

.digital-experience-page .digital-intro h2 em,
.digital-experience-page .digital-section-heading h2 em {
    color:#ddb32e;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:400;
}

.digital-experience-page .digital-intro-copy {
    max-width:680px;
}

.digital-experience-page .digital-intro-copy p {
    margin:0 0 28px;
    color:#cec5b5;
    font-size:19px;
    line-height:1.75;
}


/* ---------- FEATURE SECTION ---------- */

.digital-experience-page .digital-features {
    width:min(1340px, calc(100% - 100px));
    margin:0 auto;
    padding:120px 0;
    border-bottom:1px solid rgba(221,179,46,.18);
}

.digital-experience-page .digital-section-heading {
    max-width:900px;
    margin-bottom:70px;
}

.digital-experience-page .digital-feature-grid {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    border-top:1px solid rgba(221,179,46,.25);
    border-left:1px solid rgba(221,179,46,.25);
}

.digital-experience-page .digital-feature-grid article {
    min-height:300px;
    padding:48px;
    border-right:1px solid rgba(221,179,46,.25);
    border-bottom:1px solid rgba(221,179,46,.25);
}

.digital-experience-page .digital-feature-grid article > span {
    display:block;
    margin-bottom:55px;
    color:#e0b52e;
    font-size:13px;
    font-weight:700;
}

.digital-experience-page .digital-feature-grid h3 {
    margin:0 0 18px;
    color:#f4f0e8;
    font-size:25px;
    line-height:1.2;
}

.digital-experience-page .digital-feature-grid p {
    max-width:520px;
    margin:0;
    color:#c9c0b0;
    font-size:17px;
    line-height:1.7;
}


/* ---------- EVENT TYPES ---------- */

.digital-experience-page .digital-events {
    width:min(1340px, calc(100% - 100px));
    margin:0 auto;
    padding:120px 0;
    border-bottom:1px solid rgba(221,179,46,.18);
}

.digital-experience-page .digital-event-list {
    border-top:1px solid rgba(255,255,255,.14);
}

.digital-experience-page .digital-event-list > div {
    display:grid;
    grid-template-columns:80px 370px 1fr;
    gap:30px;
    align-items:center;
    min-height:130px;
    border-bottom:1px solid rgba(255,255,255,.14);
}

.digital-experience-page .digital-event-list span {
    color:#e0b52e;
    font-size:13px;
    font-weight:700;
}

.digital-experience-page .digital-event-list h3 {
    margin:0;
    color:#f4f0e8;
    font-size:24px;
}

.digital-experience-page .digital-event-list p {
    margin:0;
    max-width:650px;
    color:#c9c0b0;
    font-size:17px;
    line-height:1.65;
}


/* ---------- FINAL CTA ---------- */

.digital-experience-page .digital-final-cta {
    width:min(1340px, calc(100% - 100px));
    margin:0 auto;
    padding:130px 40px 150px;
    text-align:center;
    background:
        radial-gradient(circle at center,
            rgba(221,179,46,.07),
            transparent 48%);
}

.digital-experience-page .digital-final-cta .eyebrow {
    margin-bottom:32px;
}

.digital-experience-page .digital-final-cta h2 {
    margin:0 auto 38px;
    color:#f4f0e8;
    font-size:clamp(54px,5vw,80px);
    line-height:1;
    letter-spacing:-.045em;
}

.digital-experience-page .digital-final-cta h2 em {
    display:block;
    margin-top:8px;
    color:#ddb32e;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:400;
}

.digital-experience-page .digital-final-cta > p:not(.eyebrow) {
    max-width:750px;
    margin:0 auto;
    color:#c9c0b0;
    font-size:18px;
    line-height:1.7;
}

.digital-experience-page .digital-final-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:36px;
    margin-top:42px;
}

.digital-experience-page .digital-final-link {
    color:#ddb32e;
    font-size:13px;
    font-weight:600;
    letter-spacing:.14em;
    text-decoration:none;
}


/* ---------- TABLET / MOBILE ---------- */

@media (max-width:900px) {

    .digital-experience-page .digital-hero {
        width:calc(100% - 40px);
        grid-template-columns:1fr;
        min-height:auto;
        gap:55px;
        padding:70px 0;
    }

    .digital-experience-page .digital-hero-visual {
        min-height:400px;
    }

    .digital-experience-page .digital-intro {
        width:calc(100% - 40px);
        grid-template-columns:1fr;
        gap:50px;
        padding:80px 0;
    }

    .digital-experience-page .digital-features,
    .digital-experience-page .digital-events,
    .digital-experience-page .digital-final-cta {
        width:calc(100% - 40px);
    }

    .digital-experience-page .digital-features,
    .digital-experience-page .digital-events {
        padding:80px 0;
    }

    .digital-experience-page .digital-feature-grid {
        grid-template-columns:1fr;
    }

    .digital-experience-page .digital-event-list > div {
        grid-template-columns:50px 1fr;
        padding:28px 0;
    }

    .digital-experience-page .digital-event-list p {
        grid-column:2;
    }

    .digital-experience-page .digital-final-cta {
        padding:90px 20px 110px;
    }
}


@media (max-width:600px) {

    .digital-experience-page .digital-hero h1 {
        font-size:48px;
    }

    .digital-experience-page .digital-hero-lead {
        font-size:17px;
    }

    .digital-experience-page .digital-hero-visual {
        min-height:330px;
        padding:28px;
    }

    .digital-experience-page .digital-hero-visual::after {
        font-size:44px;
    }

    .digital-experience-page .digital-hero-mark {
        flex-wrap:wrap;
        font-size:10px;
    }

    .digital-experience-page .digital-intro h2,
    .digital-experience-page .digital-section-heading h2,
    .digital-experience-page .digital-final-cta h2 {
        font-size:44px;
    }

    .digital-experience-page .digital-feature-grid article {
        min-height:auto;
        padding:35px 28px;
    }

    .digital-experience-page .digital-feature-grid article > span {
        margin-bottom:35px;
    }

    .digital-experience-page .digital-event-list > div {
        grid-template-columns:38px 1fr;
    }

    .digital-experience-page .digital-event-list h3 {
        font-size:21px;
    }
}
/* DIGITAL EXPERIENCE — REAL HERO IMAGE */

.digital-experience-page .digital-hero-photo {
    padding:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:#0b0b0b;
}

.digital-experience-page .digital-hero-photo::before,
.digital-experience-page .digital-hero-photo::after {
    display:none;
}

.digital-experience-page .digital-hero-photo img {
    display:block;
    width:100%;
    height:460px;
    object-fit:contain;
    object-position:center;
    background:#0b0b0b;
}

.digital-experience-page .digital-hero-photo .digital-hero-mark {
    min-height:60px;
    margin:0;
    padding:20px 34px;
    align-items:center;
    border-top:1px solid rgba(221,179,46,.25);
}

@media (max-width:900px) {
    .digital-experience-page .digital-hero-photo img {
        height:auto;
        max-height:560px;
        object-fit:contain;
    }
}
/* =========================================================
   DIGITAL PHOTO EXPERIENCE — VIDEO / IN ACTION
   ========================================================= */

.digital-experience-page .digital-action-section{
    max-width:1400px;
    margin:0 auto;
    padding:110px 48px;
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 520px);
    gap:90px;
    align-items:center;
    border-top:1px solid rgba(221,179,46,.18);
}

.digital-experience-page .digital-action-copy{
    max-width:650px;
}

.digital-experience-page .digital-action-copy .eyebrow{
    margin:0 0 28px;
}

.digital-experience-page .digital-action-copy h2{
    margin:0 0 30px;
    color:#f5f2eb;
    font-size:clamp(48px,5vw,76px);
    line-height:.98;
    letter-spacing:-2px;
}

.digital-experience-page .digital-action-copy h2 em{
    display:block;
    color:#ddb32e;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:400;
    font-style:italic;
}

.digital-experience-page .digital-action-copy p:not(.eyebrow){
    max-width:600px;
    margin:0;
    color:#c9c2b5;
    font-size:19px;
    line-height:1.75;
}

.digital-experience-page .digital-action-video{
    width:100%;
    max-width:460px;
    justify-self:end;
    position:relative;
    padding:14px;
    border:1px solid rgba(221,179,46,.32);
    background:#090909;
}

.digital-experience-page .digital-action-video video{
    display:block;
    width:100%;
    height:600px;
    object-fit:cover;
    object-position:center;
    background:#090909;
}



/* MOBILE */

@media (max-width:900px){

    .digital-experience-page .digital-action-section{
        padding:75px 24px;
        grid-template-columns:1fr;
        gap:50px;
    }

    .digital-experience-page .digital-action-copy h2{
        font-size:clamp(42px,11vw,62px);
    }

    .digital-experience-page .digital-action-video{
        max-width:500px;
        justify-self:center;
    }

    .digital-experience-page .digital-action-video video{
        height:auto;
        max-height:650px;
        object-fit:contain;
    }
}
/* DIGITAL EXPERIENCE — FINAL SPACING REFINEMENT */

.digital-experience-page .digital-intro,
.digital-experience-page .digital-features,
.digital-experience-page .digital-action-section,
.digital-experience-page .digital-events {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.digital-experience-page .digital-intro {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
}

.digital-experience-page .digital-features {
    padding-top: 80px !important;
    padding-bottom: 90px !important;
}

.digital-experience-page .digital-action-section {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}

.digital-experience-page .digital-events {
    padding-top: 95px !important;
    padding-bottom: 95px !important;
}

.digital-experience-page .digital-final-cta {
    margin-top: 0 !important;
    padding-top: 110px !important;
    padding-bottom: 110px !important;
}

@media (max-width:900px) {
    .digital-experience-page .digital-intro,
    .digital-experience-page .digital-features,
    .digital-experience-page .digital-action-section,
    .digital-experience-page .digital-events,
    .digital-experience-page .digital-final-cta {
        padding-top: 70px !important;
        padding-bottom: 70px !important;
    }
}
/* PHOTOGRAPHY PORTFOLIO — HERO */

.photography-portfolio-page .portfolio-hero {
    min-height: 650px;
    display: flex;
    align-items: center;
    padding: 110px max(7%, 30px);
    background: #141414;
}

.photography-portfolio-page .portfolio-hero-content {
    max-width: 800px;
}

.photography-portfolio-page .portfolio-eyebrow {
    display: block;
    margin-bottom: 24px;
    color: #d9b765;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.photography-portfolio-page .portfolio-hero h1 {
    display: block;
    color: #ffffff;
    font-size: clamp(46px, 5vw, 78px);
    line-height: 1.12;
    margin: 0 0 30px;
}

.photography-portfolio-page .portfolio-hero h1 em {
    color: #d9b765;
    font-family: Georgia, serif;
    font-weight: 400;
}

.photography-portfolio-page .portfolio-hero p {
    color: #cccccc;
    font-size: 17px;
    line-height: 1.8;
    max-width: 650px;
    margin-bottom: 35px;
}

.photography-portfolio-page .portfolio-hero-btn {
    display: inline-block;
    padding: 17px 28px;
    background: #d9b765;
    color: #111111;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
}

@media (max-width: 768px) {
    .photography-portfolio-page .portfolio-hero {
        min-height: 550px;
        padding: 80px 24px;
    }
}
/* PHOTOGRAPHY HERO — SPLIT LAYOUT */

.photography-portfolio-page .portfolio-hero {
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    gap: 65px;
    align-items: center;
}

.photography-portfolio-page .portfolio-hero-image {
    width: 100%;
    overflow: hidden;
}

.photography-portfolio-page .portfolio-hero-image img {
    display: block;
    width: 100%;
    height: 490px;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 900px) {
    .photography-portfolio-page .portfolio-hero {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .photography-portfolio-page .portfolio-hero-image img {
        height: auto;
    }
}
/* PHOTOGRAPHY PORTFOLIO — CATEGORIES */

.photography-portfolio-page .portfolio-categories {
    padding: 110px max(6%, 24px);
    background: #141414;
}

.photography-portfolio-page .portfolio-categories-heading {
    max-width: 780px;
    margin: 0 auto 65px;
    text-align: center;
}

.photography-portfolio-page .portfolio-categories-heading h2 {
    margin: 22px 0;
    color: #fff;
    font-size: clamp(38px, 4.5vw, 64px);
    line-height: 1.15;
    font-weight: 700;
}

.photography-portfolio-page .portfolio-categories-heading h2 em {
    display: block;
    color: #dfbc70;
    font-family: Georgia, serif;
    font-weight: 400;
}

.photography-portfolio-page .portfolio-categories-heading p {
    color: #c5c5c5;
    font-size: 17px;
    line-height: 1.8;
}

.photography-portfolio-page .portfolio-category-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
    max-width: 1400px;
    margin: auto;
}

.photography-portfolio-page .portfolio-category-card {
    overflow: hidden;
    background: #1d1d1d;
    border: 1px solid rgba(223,188,112,.15);
    border-radius: 12px;
}

.photography-portfolio-page .portfolio-category-image {
    height: 350px;
    overflow: hidden;
}

.photography-portfolio-page .portfolio-category-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.photography-portfolio-page .portfolio-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: #252525;
    color: #dfbc70;
    letter-spacing: 3px;
    font-size: 12px;
}

.photography-portfolio-page .portfolio-category-content {
    padding: 32px;
}

.photography-portfolio-page .portfolio-category-content span {
    color: #dfbc70;
    font-size: 11px;
    letter-spacing: 2px;
}

.photography-portfolio-page .portfolio-category-content h3 {
    color: #fff;
    font-size: 27px;
    margin: 16px 0;
}

.photography-portfolio-page .portfolio-category-content p {
    color: #bbb;
    line-height: 1.7;
}

@media (max-width: 768px) {
    .photography-portfolio-page .portfolio-categories {
        padding: 75px 22px;
    }

    .photography-portfolio-page .portfolio-category-grid {
        grid-template-columns: 1fr;
    }

    .photography-portfolio-page .portfolio-category-image {
        height: 280px;
    }
}
/* PHOTOGRAPHY — MATCH HOMEPAGE SECTION SPACING */

.photography-portfolio-page .portfolio-hero {
    padding-bottom: 65px;
}

.photography-portfolio-page .portfolio-categories {
    padding-top: 85px !important;
    padding-bottom: 100px !important;
}

.photography-portfolio-page .portfolio-categories-heading {
    margin-bottom: 55px;
}

@media (max-width: 768px) {
    .photography-portfolio-page .portfolio-hero {
        padding-bottom: 45px;
    }

    .photography-portfolio-page .portfolio-categories {
        padding-top: 65px !important;
        padding-bottom: 75px !important;
    }
}
/* PHOTOGRAPHY — HERO TO PORTFOLIO TRANSITION */

.photography-portfolio-page .portfolio-hero {
    min-height: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 30px !important;
}

.photography-portfolio-page .portfolio-categories {
    margin-top: 0 !important;
    padding-top: 65px !important;
}

@media (max-width: 768px) {
    .photography-portfolio-page .portfolio-hero {
        padding-bottom: 20px !important;
    }

    .photography-portfolio-page .portfolio-categories {
        padding-top: 50px !important;
    }
}
/* PHOTOGRAPHY PORTFOLIO — WEDDING GALLERY */

.photography-portfolio-page .portfolio-gallery {
    background: #171717;
    padding: 100px 6%;
}

.photography-portfolio-page .portfolio-gallery-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.photography-portfolio-page .portfolio-gallery-heading span {
    display: block;
    color: #dfbc70;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 22px;
}

.photography-portfolio-page .portfolio-gallery-heading h2 {
    color: #fff;
    font-size: clamp(38px, 4vw, 62px);
    font-weight: 700;
    line-height: 1.15;
    margin: 0 0 24px;
}

.photography-portfolio-page .portfolio-gallery-heading h2 em {
    display: block;
    color: #dfbc70;
    font-family: Georgia, serif;
    font-weight: 400;
}

.photography-portfolio-page .portfolio-gallery-heading p {
    max-width: 650px;
    margin: 0 auto;
    color: #ccc;
    font-size: 17px;
    line-height: 1.8;
}

/* GALLERY IMAGE GRID */

.photography-portfolio-page .portfolio-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    max-width: 1450px;
    margin: 0 auto;
}

.photography-portfolio-page .portfolio-gallery-grid img {
    display: block;
    width: 100%;
    height: 360px;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
    transition: transform 0.35s ease;
}

@media (hover: hover) {
    .photography-portfolio-page .portfolio-gallery-grid img:hover {
        transform: scale(1.02);
    }
}

/* TABLET */

@media (max-width: 900px) {
    .photography-portfolio-page .portfolio-gallery {
        padding: 75px 5%;
    }

    .photography-portfolio-page .portfolio-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* MOBILE */

@media (max-width: 600px) {
    .photography-portfolio-page .portfolio-gallery {
        padding: 65px 20px;
    }

    .photography-portfolio-page .portfolio-gallery-heading {
        margin-bottom: 35px;
    }

    .photography-portfolio-page .portfolio-gallery-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .photography-portfolio-page .portfolio-gallery-grid img {
        height: 320px;
    }
}
/* PHOTOGRAPHY — WEDDING GALLERY IMAGE REFINEMENT */

.photography-portfolio-page .portfolio-gallery-grid img {
    display: block;
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: center 30%;
}
/* PHOTOGRAPHY — PORTRAIT GALLERY */

.photography-portfolio-page
.portfolio-portrait-section
.portfolio-gallery-grid img {
    width: 100%;
    height: 520px;
    object-fit: contain;
    object-position: center;
    background: #171717;
    display: block;
}

@media (max-width: 768px) {
    .photography-portfolio-page
    .portfolio-portrait-section
    .portfolio-gallery-grid img {
        height: 440px;
    }
}
/* PHOTOGRAPHY — UNIFIED GALLERY SPACING */

.photography-portfolio-page .portfolio-gallery,
.photography-portfolio-page .portfolio-gallery-section {
    padding: 100px 5% !important;
    margin: 0 !important;
}

.photography-portfolio-page .portfolio-gallery-heading {
    margin: 0 auto 55px !important;
}

/* TABLET */
@media (max-width: 900px) {
    .photography-portfolio-page .portfolio-gallery,
    .photography-portfolio-page .portfolio-gallery-section {
        padding: 75px 5% !important;
    }

    .photography-portfolio-page .portfolio-gallery-heading {
        margin-bottom: 40px !important;
    }
}

/* MOBILE */
@media (max-width: 600px) {
    .photography-portfolio-page .portfolio-gallery,
    .photography-portfolio-page .portfolio-gallery-section {
        padding: 65px 20px !important;
    }

    .photography-portfolio-page .portfolio-gallery-heading {
        margin-bottom: 35px !important;
    }
}
/* PHOTOGRAPHY — FINAL BOOKING SECTION */

.photography-portfolio-page .portfolio-booking {
    background: #101010;
    padding: 110px 24px;
    text-align: center;
    border-top: 1px solid rgba(223, 188, 112, 0.18);
}

.photography-portfolio-page .portfolio-booking-content {
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

.photography-portfolio-page .portfolio-booking .portfolio-eyebrow {
    display: block;
    color: #dfbc70;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 25px;
}

.photography-portfolio-page .portfolio-booking h2 {
    display: block;
    color: #ffffff !important;
    font-size: clamp(38px, 5vw, 65px);
    font-weight: 700;
    line-height: 1.15;
    margin: 0 auto 28px;
    text-align: center;
}

.photography-portfolio-page .portfolio-booking h2 em {
    display: block;
    color: #dfbc70 !important;
    font-family: Georgia, serif;
    font-weight: 400;
    margin-top: 8px;
}

.photography-portfolio-page .portfolio-booking p {
    max-width: 650px;
    margin: 0 auto 35px;
    color: #cccccc;
    font-size: 17px;
    line-height: 1.8;
    text-align: center;
}

.photography-portfolio-page .portfolio-booking-btn {
    display: inline-block;
    padding: 18px 32px;
    background: #dfbc70;
    color: #111111 !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-decoration: none;
    transition: background 0.3s ease;
}

.photography-portfolio-page .portfolio-booking-btn:hover {
    background: #f0d394;
}

@media (max-width: 768px) {
    .photography-portfolio-page .portfolio-booking {
        padding: 75px 24px;
    }

    .photography-portfolio-page .portfolio-booking h2 {
        font-size: clamp(36px, 9vw, 48px);
    }
}
/* PHOTOGRAPHY — GALLERY ANCHOR NAVIGATION */

html {
    scroll-behavior: smooth;
}

.photography-portfolio-page #wedding-gallery,
.photography-portfolio-page #corporate-gallery,
.photography-portfolio-page #portraits-gallery,
.photography-portfolio-page #family-gallery {
    scroll-margin-top: 110px;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}
/* HOMEPAGE PHOTOGRAPHY BUTTONS */

.photo-showcase-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}

.photo-showcase-actions .btn {
    margin: 0;
}

@media (max-width: 768px) {
    .photo-showcase-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .photo-showcase-actions .btn {
        text-align: center;
    }
}
/* MOBILE HERO — CORPORATE IMAGE FRAMING */
@media (max-width: 950px) {

    .hero-split-slide:nth-child(2) .hero-split-image {
        background: #111 !important;
    }

    .hero-split-slide:nth-child(2) .hero-split-image img {
        object-fit: contain !important;
        object-position: center center !important;
    }

}
/* MOBILE — KEEPSAKES SPACING */
@media (max-width: 620px) {
    .keepsakes .section-head {
        margin-bottom: 24px !important;
    }

    .keepsakes .keepsake-grid {
        gap: 16px !important;
    }
}
/* =========================================
   MOBILE — CHAMBER FINAL FIX
   ========================================= */
@media screen and (max-width: 800px) {

    section.chamber-proof .shell.chamber-layout {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
        width: 100% !important;
        gap: 28px !important;
        align-items: stretch !important;
    }

    section.chamber-proof .chamber-badge-card {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    section.chamber-proof .chamber-badge-card img {
        display: block !important;
        width: 200px !important;
        max-width: 70% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    section.chamber-proof .split-copy {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: none !important;
    }
}
/* MOBILE — ABOUT SECTION SPACING */
@media (max-width: 800px) {
    .about-split .split-copy {
        padding-top: 32px !important;
    }

    .about-split .eyebrow {
        margin-bottom: 18px !important;
    }
}
/* MOBILE — HERO CTA TEXT SPACING */
@media (max-width: 800px) {
    .hero-split-copy .hero-actions {
        margin-top: 28px !important;
    }
}
/* EXPERIENCE CARD — CLICKABLE HEADING */
.experience-card .card-body h3 a {
	display: block !important;
	margin: 0 !important;
    color: inherit !important;
    font: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

.experience-card .card-body h3 a:hover {
    color: #d6b15a !important;
}
/* PERFORMANCE — FIRST HERO PAINT */
.hero-split-slide:first-child {
    opacity: 1 !important;
    visibility: visible !important;
}

.hero-split-slide:first-child.active {
    transition: none !important;
}
/* ACCESSIBILITY — FOOTER TEXT CONTRAST */
.site-footer,
.site-footer p,
.site-footer .copyright {
    color: #bdb6ac !important;
}
/* ACCESSIBILITY — DESKTOP NAV CTA CONTRAST */
@media (min-width:951px){
    .desktop-nav .nav-cta{
        background:#111 !important;
        color:#ffffff !important;
        border-color:#d8b86a !important;
    }

    .desktop-nav .nav-cta:hover{
        background:#d8b86a !important;
        color:#111111 !important;
        border-color:#d8b86a !important;
    }
}
/* ACCESSIBILITY — DESKTOP NAV CTA CONTRAST */
@media (min-width:951px){
    .desktop-nav .nav-cta{
        background:#111 !important;
        color:#ffffff !important;
        border-color:#d8b86a !important;
    }

    .desktop-nav a.nav-cta:hover,
    .desktop-nav a.nav-cta:focus{
        background:#d8b86a !important;
        color:#111111 !important;
        border-color:#d8b86a !important;
    }
}