@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');

/* Navy & gold theme layer — loaded after each page's own styles */
:root{--navy:#070B17;--navy-2:#0A1120;--navy-3:#0E1629;--gold:#C9A84C;--gold-hi:#E8C86E;--gold-soft:rgba(201,168,76,.12);--fg:#EDF0FA;--fg-2:#A3ADC6;--fg-3:#8A96B4;--hair:rgba(255,255,255,.09);color-scheme:dark}
html,body{background:var(--navy);color:var(--fg)}
body{background:radial-gradient(1100px 620px at 85% -10%,rgba(201,168,76,.10),transparent 60%),radial-gradient(900px 600px at -10% 30%,rgba(40,70,140,.14),transparent 60%),var(--navy);background-repeat:no-repeat}
::selection{background:var(--gold);color:var(--navy)}
:focus-visible{outline-color:var(--gold)}

/* Typography: editorial serif headlines, gold italic emphasis */
h1,h2,.hero-copy h1,.home-cta h2,.section-heading h2,.belief-copy h2{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.015em;line-height:1.08}
h1{font-size:clamp(44px,5.4vw,80px)}
.home-page .hero-copy h1{font-size:clamp(42px,4.8vw,70px);letter-spacing:-.015em}
h2,.section-heading h2,.belief-copy h2,.home-cta h2{font-size:clamp(32px,3.6vw,52px)}
h1 em,h2 em,.hero-copy h1 em{font-style:italic;font-weight:500;color:var(--gold)}
h3{color:var(--fg);letter-spacing:-.02em}
p{color:var(--fg-3)}
.eyebrow,.home-eyebrow{color:var(--gold)!important}
.eyebrow:before,.home-eyebrow:before{background:var(--gold)!important;box-shadow:0 0 10px rgba(201,168,76,.6)}

/* Header */
.site-header{background:rgba(7,11,23,.78)!important;backdrop-filter:blur(18px) saturate(140%)}
.site-header.scrolled{box-shadow:0 1px 0 var(--hair)}
.site-header .brand,.site-header .brand span{color:var(--fg)}
.site-header .brand small{color:var(--gold)!important;opacity:.85}
.site-header .brand-mark{background:var(--navy-3)!important;border-color:rgba(201,168,76,.35)!important}
.main-nav>a:not(.button){color:var(--fg-2)}
.main-nav>a:not(.button):hover,.main-nav>a[aria-current=page]{color:var(--fg)}
.main-nav>a:not(.button):after{background:var(--gold)!important}
.menu-toggle{border-color:rgba(201,168,76,.35)!important;color:var(--fg)!important}
@media(max-width:1180px){.main-nav{background:var(--navy-2)!important;border-bottom:1px solid var(--hair);box-shadow:0 24px 40px rgba(0,0,0,.45)!important}}

/* Buttons */
.button-primary,.button-lime,.steps-foot .button,.hub-feature .button-primary{background:linear-gradient(135deg,var(--gold-hi),var(--gold))!important;color:#0A0F1C!important;border-color:transparent!important;box-shadow:0 8px 28px rgba(201,168,76,.22)}
.button-primary:hover,.button-lime:hover{background:linear-gradient(135deg,#F2D584,var(--gold-hi))!important;box-shadow:0 12px 34px rgba(201,168,76,.34)!important}
.button-outline{border-color:rgba(201,168,76,.5)!important;color:var(--fg)!important;background:transparent!important}
.button-outline:hover{background:var(--gold-soft)!important}
.home-text-link{color:var(--fg)!important;border-bottom-color:var(--gold)!important}

/* Cards & surfaces */
.coverage-card,.hub-card,.journal-card .journal-image{border:1px solid var(--hair)}
.coverage-card:hover,.hub-card:hover{border-color:rgba(201,168,76,.4);box-shadow:0 20px 40px rgba(0,0,0,.45)!important}
.coverage-card.featured{background:linear-gradient(160deg,#16213D,#0B1324)!important;border:1px solid rgba(201,168,76,.45)}
.coverage-card.featured .coverage-link,.coverage-card.featured .coverage-icon{color:var(--gold)!important}
.coverage-icon{color:var(--gold)}
.belief-image-label{background:rgba(7,11,23,.82)!important;border:1px solid rgba(201,168,76,.3);backdrop-filter:blur(10px)}
.belief-image-label p,.belief-image-label strong{color:var(--fg)}
.steps-section{background:linear-gradient(180deg,#0B1324,#0E1A33)!important;border-block:1px solid var(--hair)}
.step-number{color:var(--gold)!important}

/* Closing CTA: navy panel with gold edge instead of a flat colour block */
.home-cta{background:radial-gradient(700px 300px at 90% 0%,rgba(201,168,76,.18),transparent 70%),linear-gradient(135deg,#121C33,#0B1324)!important;border:1px solid rgba(201,168,76,.4);color:var(--fg)!important}
.home-cta h2,.home-cta p{color:var(--fg)!important}
.home-cta p{color:var(--fg-2)!important}

/* Footer */
.site-footer,.support-footer,.quote-footer{background:#04070F!important;border-top:1px solid var(--hair)}
.site-footer .brand,.site-footer .brand span{color:var(--fg)!important}

/* Forms (Protection Snapshot) */
input,select,textarea{color:var(--fg)}
input[type=radio],input[type=checkbox]{accent-color:var(--gold)}

/* Service-page closing CTA: navy panel with gold edge (was a flat accent block) */
.service-cta{background:radial-gradient(600px 260px at 95% 0%,rgba(201,168,76,.18),transparent 70%),linear-gradient(135deg,#121C33,#0B1324)!important;border:1px solid rgba(201,168,76,.4)}
.service-cta h2,.service-cta h3{color:var(--fg)!important}
.service-cta p{color:var(--fg-2)!important}
.faq-stack details,.principle{border:1px solid var(--hair)}
.faq-stack summary,.principle h3,.principle strong{color:var(--fg)!important}
.faq-stack details p,.principle p{color:var(--fg-3)!important}
button[disabled]{opacity:.55}
.form-submit{background:linear-gradient(135deg,var(--gold-hi),var(--gold))!important;color:#0A0F1C!important;font-weight:750;border:0!important}
.form-submit:disabled{background:rgba(201,168,76,.18)!important;color:var(--fg-2)!important;opacity:1!important}
.snapshot-actions .back{color:var(--fg)}
/* Cevian logo SVG: transparent, so drop the framed box */
.site-header .brand-mark{padding:0!important;border:0!important;background:none!important;border-radius:0;box-shadow:none;width:40px!important;height:40px!important;object-fit:contain}

/* ── Cinematic hero (ported from owner-site/about-us-dark.html) ── */
.cine-hero{position:relative;min-height:100vh;min-height:100svh;margin-top:-92px;display:flex;align-items:flex-end;padding:140px 0 88px;overflow:hidden;isolation:isolate}
.cine-img{position:absolute;inset:0;z-index:-1}
.cine-img img{width:100%;height:100%;object-fit:cover;object-position:40% 50%;transform:scale(1.08);animation:cineKen 14s ease-out forwards}
.cine-img:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(20,35,120,.45) 0%,transparent 60%)}
.cine-img:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,23,.72) 0%,rgba(7,11,23,.35) 45%,transparent 75%),linear-gradient(to top,#070B17 0%,rgba(7,11,23,.7) 30%,rgba(7,11,23,.3) 62%,rgba(7,11,23,.6) 100%)}
.cine-scan{position:absolute;left:0;right:0;top:92px;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,76,.55) 30%,rgba(201,168,76,.55) 70%,transparent);opacity:.7}
.cine-in{position:relative}
.cine-hero h1{font-size:clamp(46px,7vw,96px);font-weight:700;line-height:1;letter-spacing:-.03em;margin:0 0 24px;color:var(--fg)}
.cine-hero h1 em{font-style:italic;font-weight:600;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-hi) 50%,#F5D98A 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:.08em}
.cine-line{display:block;overflow:hidden;padding-bottom:.08em}
.cine-line>span{display:block;transform:translateY(110%);opacity:0;animation:cineUp .9s cubic-bezier(.16,1,.3,1) forwards}
.cine-line:nth-child(1)>span{animation-delay:.2s}
.cine-line:nth-child(2)>span{animation-delay:.35s}
.cine-sub{max-width:600px;font-size:18px;line-height:1.75;color:var(--fg-2)!important;margin:0 0 32px}
.cine-actions{display:flex;gap:12px;flex-wrap:wrap}
.cine-fade{opacity:0;transform:translateY(12px);animation:cineFade .7s ease-out .55s forwards}
.cine-hero .eyebrow.cine-fade{animation-delay:.05s}
@keyframes cineKen{to{transform:scale(1)}}
@keyframes cineUp{to{transform:translateY(0);opacity:1}}
@keyframes cineFade{to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.cine-hero{min-height:80vh;min-height:80svh;margin-top:-76px;padding:120px 0 40px}.cine-hero.is-compact{min-height:74svh}.cine-scan{top:76px}.cine-sub{font-size:16px}.cine-img img{object-position:30% 50%}}
@media(prefers-reduced-motion:reduce){.cine-img img{animation:none;transform:none}.cine-line>span,.cine-fade{animation:none;opacity:1;transform:none}}

.cine-hero.is-compact{min-height:82vh;min-height:82svh}
.cine-credit{position:absolute;right:24px;bottom:18px;font-size:12px;letter-spacing:.06em;color:var(--fg-2);opacity:.6}
.cine-hero .cine-source{margin:-14px 0 28px;font-size:12px;color:var(--fg-3)!important}
.cine-hero .cine-source a{color:var(--fg-2);text-decoration:underline;text-decoration-color:rgba(201,168,76,.5);text-underline-offset:3px}
.cine-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;padding:22px 0 8px;border-bottom:1px solid var(--hair);font-size:12px;color:var(--fg-3)}
.cine-note{display:flex;align-items:center;gap:10px;color:var(--fg-2)}
.cine-note .note-icon{width:26px;height:26px;border:1px solid rgba(201,168,76,.4);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:12px}
@media(max-width:760px){.cine-strip{justify-content:flex-start;gap:10px 18px;font-size:12px}.cine-note{flex-basis:100%}.cine-credit{right:16px;bottom:10px}}

/* Quote page: cinematic photo band behind the heading; the form stays in place */
.quote-main{position:relative;isolation:isolate}
.cine-band{position:absolute;left:0;right:0;top:-92px;height:780px;z-index:-1;overflow:hidden}
.cine-band img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform:scale(1.08);animation:cineKen 14s ease-out forwards}
.cine-band:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(20,35,120,.4),transparent 60%)}
.cine-band:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#070B17 0%,rgba(7,11,23,.82) 40%,rgba(7,11,23,.55) 75%,rgba(7,11,23,.7) 100%)}
.quote-main>.cine-scan{top:0}
.quote-intro h1 .cine-line{padding-bottom:.1em}
@media(max-width:760px){.cine-band{top:-76px;height:640px}}
@media(prefers-reduced-motion:reduce){.cine-band img{animation:none;transform:none}}
.cine-line:nth-child(3)>span{animation-delay:.5s}
.cine-actions .button-outline{background:rgba(7,11,23,.35)!important;backdrop-filter:blur(6px)}
