
:root{
  --c-ink:#0b2545; --c-navy:#002F68; --c-accent:#005AAA; --c-blue:#0082C9;
  --c-sky:#56B0D2; --c-lime:#A9CF38; --c-paper:#F7FAFB; --c-mist:#EAF2F8;
  --panel-bg:#fff; --panel-fg:#0b2545;
  --font-display:'Fraunces', Georgia, serif; --font-body:'Lato', 'Helvetica Neue', sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--c-ink);background:var(--c-paper);line-height:1.65;font-weight:300;overflow-x:hidden;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--c-accent);text-decoration:none;}
a:hover{color:var(--c-blue);}
h1,h2,h3{font-family:var(--font-display);font-weight:400;color:var(--c-navy);line-height:1.18;}
::selection{background:var(--c-lime);color:var(--c-navy);}

/* texture */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(1200px 600px at 85% -10%, rgba(86,176,210,.14), transparent 60%),
    radial-gradient(900px 500px at -10% 40%, rgba(169,207,56,.07), transparent 60%);}

/* header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(247,250,251,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,47,104,.08);}
.header-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:32px;padding:14px 28px;}
.brand img{width:132px;height:auto;}
.main-nav{margin-inline-start:auto;}
.nav-list{display:flex;gap:6px;list-style:none;}
.nav-list a{display:block;padding:9px 15px;border-radius:99px;color:var(--c-ink);font-weight:400;font-size:.95rem;transition:background .2s,color .2s;}
.nav-list a:hover{background:var(--c-mist);color:var(--c-accent);}
.nav-list a[aria-current="page"]{background:var(--c-navy);color:#fff;}
.lang-switch{display:flex;gap:2px;list-style:none;border-inline-start:1px solid rgba(0,47,104,.15);padding-inline-start:18px;}
.lang-switch a{display:block;padding:7px 10px;font-size:.85rem;color:var(--c-ink);opacity:.75;border-radius:8px;}
.lang-switch a:hover{opacity:1;background:var(--c-mist);}
.nav-toggle{display:none;}

/* hero */
.hero{position:relative;max-width:1280px;margin:0 auto;padding:72px 28px 40px;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:center;min-height:78vh;}
.hero h1{font-size:clamp(2rem,4.4vw,3.6rem);letter-spacing:-.01em;}
.hero h1 .accent-dot{color:var(--c-lime);}
.hero-copy>p{margin-top:26px;font-size:1.02rem;max-width:60ch;color:rgba(11,37,69,.85);}
.hero-rule{width:88px;height:4px;background:linear-gradient(90deg,var(--c-lime),var(--c-sky));border-radius:99px;margin-top:34px;}
.hero-ctas{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap;}
html.js .reveal{opacity:0;transform:translateY(26px);animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards;}
.reveal.d1{animation-delay:.15s}.reveal.d2{animation-delay:.3s}.reveal.d3{animation-delay:.45s}.reveal.d4{animation-delay:.6s}
@keyframes rise{to{opacity:1;transform:none;}}

/* DNA switcher */
.dna-wrap{position:relative;}
.dna-switch{position:absolute;top:-6px;inset-inline-end:0;z-index:6;display:flex;gap:6px;background:#fff;border:1px solid rgba(0,47,104,.12);border-radius:99px;padding:5px;box-shadow:0 8px 30px rgba(0,47,104,.1);}
.dna-switch button{border:0;background:transparent;color:var(--c-ink);font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.04em;padding:7px 14px;border-radius:99px;cursor:pointer;transition:all .2s;}
.dna-switch button:hover{background:var(--c-mist);}
.dna-switch button[aria-pressed="true"]{background:var(--c-navy);color:#fff;}
.dna-stage[hidden],.dna3d-stage[hidden],.dnap-stage[hidden],.dnav-stage[hidden]{display:none;}

/* DNA helix (style A — projection) */
.dna-stage{position:relative;height:min(72vh,640px);min-height:460px;}
.dna-scene{position:absolute;inset:0;display:grid;place-items:center;}
.dna-helix{position:relative;width:100%;height:100%;}
/* physical left anchor on purpose — the JS projection math is direction-agnostic */
.dna-word{position:absolute;top:0;left:50%;white-space:nowrap;font-family:var(--font-body);font-weight:700;letter-spacing:.12em;font-size:clamp(.62rem,1.05vw,.85rem);color:var(--c-navy);will-change:transform,opacity;}
.dna-node{position:absolute;top:0;left:50%;width:13px;height:13px;will-change:transform,opacity;}
.dna-node svg{display:block;width:100%;height:100%;}
.dna-rung{position:absolute;top:0;left:50%;height:2px;border-radius:2px;background:linear-gradient(90deg,rgba(0,130,201,.5),rgba(169,207,56,.5));transform-origin:0 50%;will-change:transform,opacity;}
.dna-caption{position:absolute;bottom:-6px;inset-inline:0;text-align:center;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(11,37,69,.45);}

/* DNA style B — true 3D cylinder */
.dna3d-stage{position:relative;height:min(72vh,640px);min-height:460px;perspective:1000px;cursor:grab;touch-action:pan-y;}
.dna3d-stage:active{cursor:grabbing;}
.dna3d-rig{position:absolute;top:50%;left:50%;width:0;height:0;transform-style:preserve-3d;}
.dna3d-item{position:absolute;top:0;left:0;transform-style:preserve-3d;will-change:transform;}
.dna3d-word{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;font-family:var(--font-body);font-weight:700;letter-spacing:.12em;font-size:clamp(.6rem,1vw,.82rem);color:var(--c-navy);text-shadow:0 1px 0 #fff;will-change:transform,opacity;}
.dna3d-node{position:absolute;transform:translate(-50%,-50%);width:12px;height:12px;will-change:transform,opacity;}
.dna3d-node svg{display:block;width:100%;height:100%;filter:drop-shadow(0 2px 6px rgba(0,90,170,.35));}
.dna3d-hint{position:absolute;bottom:-6px;inset-inline:0;text-align:center;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(11,37,69,.4);}

/* DNA style C — particle canvas */
.dnap-stage{position:relative;height:min(72vh,640px);min-height:460px;}
.dnap-stage canvas{position:absolute;inset:0;width:100%;height:100%;}

/* DNA style E — word helix: letters ARE the strands */
.dnaw-stage{position:relative;height:min(72vh,640px);min-height:460px;}
.dnaw-ch{position:absolute;top:0;left:50%;font-family:var(--font-body);font-weight:700;font-size:clamp(.7rem,1.15vw,.95rem);letter-spacing:0;will-change:transform,opacity;white-space:pre;}
.dnaw-ch.s0{color:var(--c-navy);}
.dnaw-ch.s1{color:#7BA428;}
.dnaw-wordunit{letter-spacing:.02em;font-size:clamp(.62rem,1vw,.85rem);}
.dnaw-rung{position:absolute;top:0;left:50%;height:1.5px;border-radius:2px;background:linear-gradient(90deg,rgba(0,130,201,.35),rgba(169,207,56,.35));will-change:transform,opacity;}
.dnaw-caption{position:absolute;bottom:-6px;inset-inline:0;text-align:center;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(11,37,69,.4);}
.dnaw-stage[hidden]{display:none;}

/* DNA style D — AI render video + annotated words */
.dnav-stage{position:relative;height:min(72vh,640px);min-height:460px;}
.dnav-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:100%;aspect-ratio:1;max-width:100%;object-fit:cover;border-radius:24px;
  -webkit-mask-image:radial-gradient(70% 70% at 50% 50%,#000 55%,transparent 98%);mask-image:radial-gradient(70% 70% at 50% 50%,#000 55%,transparent 98%);}
.dnav-words{position:absolute;inset:0;}
.dnav-word{position:absolute;display:flex;align-items:center;gap:8px;white-space:nowrap;font-family:var(--font-body);font-weight:700;letter-spacing:.1em;font-size:clamp(.58rem,.95vw,.78rem);color:rgba(11,37,69,.5);animation:dnavPulse var(--cyc,13.6s) linear infinite;animation-delay:var(--d);}
.dnav-word::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c-sky);flex:none;box-shadow:0 0 0 3px rgba(86,176,210,.18);}
.dnav-word:nth-child(odd)::before{background:var(--c-lime);box-shadow:0 0 0 3px rgba(169,207,56,.2);}
.dnav-word.side-e{flex-direction:row-reverse;}
@keyframes dnavPulse{0%,5.6%{color:var(--c-navy);text-shadow:0 0 14px rgba(86,176,210,.55);}6%,100%{color:rgba(11,37,69,.5);text-shadow:none;}}
html.a11y-nomotion .dnav-word{animation:none;}
.dnav-caption{position:absolute;bottom:-6px;inset-inline:0;text-align:center;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(11,37,69,.4);}

/* value cards */
.section{max-width:1280px;margin:0 auto;padding:64px 28px;position:relative;z-index:1;}
.cards-band{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.value-flip{background:#fff;border:1px solid rgba(0,47,104,.09);border-radius:22px;padding:34px 28px;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;}
.value-flip:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(0,47,104,.13);}
.value-flip::before{content:"";position:absolute;top:0;inset-inline-start:0;width:100%;height:4px;background:linear-gradient(90deg,var(--c-accent),var(--c-sky));opacity:.85;}
.value-flip:nth-child(2)::before{background:linear-gradient(90deg,var(--c-sky),var(--c-lime));}
.value-flip:nth-child(3)::before{background:linear-gradient(90deg,var(--c-lime),var(--c-accent));}
.value-flip .pent{width:44px;height:44px;margin-bottom:18px;}
.value-flip h3{font-size:1.35rem;margin-bottom:12px;}
.value-flip p{font-size:.95rem;color:rgba(11,37,69,.8);}

/* who we are */
.who{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:start;}
.section-head{display:flex;align-items:baseline;gap:18px;margin-bottom:26px;}
.kicker{font-family:var(--font-display);font-size:.95rem;color:var(--c-blue);border:1px solid rgba(0,130,201,.35);border-radius:99px;padding:4px 12px;}
.section-head h2{font-size:clamp(1.6rem,2.8vw,2.4rem);letter-spacing:-.01em;}
.who .prose p{margin-bottom:18px;font-size:1.02rem;color:rgba(11,37,69,.85);}
.prose p{margin-bottom:16px;max-width:75ch;}
.prose h2{font-size:1.5rem;margin:34px 0 12px;}
.prose h3{font-size:1.2rem;margin:26px 0 10px;}
.btn-primary{display:inline-block;padding:14px 30px;border-radius:99px;background:var(--c-navy);color:#fff;font-weight:700;font-size:.95rem;letter-spacing:.02em;transition:transform .2s,box-shadow .2s,background .2s;}
.btn-primary:hover{background:var(--c-accent);color:#fff;transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,90,170,.3);}
.btn-outline{display:inline-block;padding:13px 28px;border-radius:99px;border:1.5px solid var(--c-navy);color:var(--c-navy);font-weight:700;font-size:.95rem;transition:all .2s;}
.btn-outline:hover{background:var(--c-navy);color:#fff;}
.cta-row{margin-top:26px;}

/* inner page hero */
.page-hero{max-width:1280px;margin:0 auto;padding:76px 28px 30px;}
.page-hero h1{font-size:clamp(2.1rem,4.5vw,3.4rem);max-width:22ch;letter-spacing:-.01em;}
.page-hero .hero-rule{margin-top:26px;}
.breadcrumb{font-size:.85rem;color:rgba(11,37,69,.55);margin-bottom:18px;letter-spacing:.06em;}

/* about */
.vcm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.vcm-card{background:linear-gradient(160deg,var(--c-navy),#0a4a8f);color:#fff;border-radius:22px;padding:34px 28px;position:relative;overflow:hidden;}
.vcm-card::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(169,207,56,.25),transparent 70%);bottom:-70px;inset-inline-end:-60px;}
.vcm-card h3{color:#fff;font-size:1.4rem;margin-bottom:12px;}
.vcm-card p{font-size:.95rem;color:rgba(255,255,255,.88);}
.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.value-card{background:#fff;border:1px solid rgba(0,47,104,.09);border-radius:22px;padding:32px 28px;position:relative;transition:transform .3s,box-shadow .3s;}
.value-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,47,104,.12);}
.value-index{font-family:var(--font-display);font-size:2.6rem;color:rgba(0,130,201,.18);position:absolute;top:16px;inset-inline-end:22px;}
.value-card h3{font-size:1.3rem;margin-bottom:10px;}
.value-card p{font-size:.95rem;color:rgba(11,37,69,.8);max-width:56ch;}
.members-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.member{text-align:center;}
.member-photo{border-radius:50%;overflow:hidden;aspect-ratio:1;background:var(--c-mist);border:3px solid #fff;box-shadow:0 10px 30px rgba(0,47,104,.12);transition:transform .3s,box-shadow .3s;}
.member:hover .member-photo{transform:translateY(-6px) scale(1.02);box-shadow:0 20px 44px rgba(0,90,170,.2);}
.member-photo img{width:100%;height:100%;object-fit:cover;}
.member figcaption{margin-top:14px;display:grid;gap:2px;}
.member strong{font-family:var(--font-display);font-weight:600;color:var(--c-navy);font-size:1.05rem;}
.member span{font-size:.85rem;color:rgba(11,37,69,.65);}

/* capabilities */
.chain-figure{margin:30px 0;background:#fff;border:1px solid rgba(0,47,104,.09);border-radius:22px;padding:30px;}
.chain-mobile{display:none;margin:0 auto;}
.tf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.tf-card{background:#fff;border:1px solid rgba(0,47,104,.09);border-radius:22px;padding:32px 28px;border-inline-start:5px solid var(--c-sky);transition:transform .3s,box-shadow .3s;}
.tf-card:nth-child(2){border-inline-start-color:var(--c-lime);}
.tf-card:nth-child(3){border-inline-start-color:var(--c-accent);}
.tf-card:nth-child(4){border-inline-start-color:var(--c-navy);}
.tf-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,47,104,.12);}
.tf-card h3{font-size:1.3rem;margin-bottom:10px;}
.tf-card p{font-size:.95rem;color:rgba(11,37,69,.8);}

/* contact */
.contact-sec .prose p{max-width:80ch;}
.contact-info{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;background:linear-gradient(160deg,var(--c-navy),#0a4a8f);border-radius:22px;padding:34px;}
.contact-info li{display:grid;gap:6px;}
.contact-info span{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-lime);}
.contact-info a{color:#fff;font-size:1.02rem;}
.contact-info a:hover{color:var(--c-sky);}

/* legal */
.legal-prose .prose{background:#fff;border:1px solid rgba(0,47,104,.09);border-radius:22px;padding:44px;}
.li-item{padding-inline-start:12px;}

/* footer */
.site-footer{position:relative;z-index:1;margin-top:60px;background:var(--c-navy);color:rgba(255,255,255,.85);}
.footer-inner{max-width:1280px;margin:0 auto;padding:56px 28px 30px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;}
.footer-brand img{filter:brightness(0) invert(1);opacity:.95;}
.footer-contact{list-style:none;margin-top:20px;display:grid;gap:10px;font-size:.92rem;}
.footer-contact a,.footer-col a{color:rgba(255,255,255,.82);}
.footer-contact a:hover,.footer-col a:hover{color:var(--c-lime);}
.footer-col h2{color:#fff;font-size:1rem;font-family:var(--font-body);font-weight:700;letter-spacing:.08em;margin-bottom:14px;}
.footer-col ul{list-style:none;display:grid;gap:9px;font-size:.92rem;}
.footer-social{display:flex !important;gap:12px;margin-top:16px;}
.footer-social a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.25);}
.footer-social a:hover{background:var(--c-lime);border-color:var(--c-lime);color:var(--c-navy);}
.footer-legal{border-top:1px solid rgba(255,255,255,.14);}
.footer-legal{max-width:1280px;margin:0 auto;padding:18px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:.85rem;color:rgba(255,255,255,.6);}

/* scroll reveal */
html.js .sr{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*90ms);}
html.js .sr.in{opacity:1;transform:none;}

/* responsive */
@media (max-width:1020px){
  .hero{grid-template-columns:1fr;min-height:0;padding-top:48px;}
  .dna-stage{height:460px;order:2;}
  .who{grid-template-columns:1fr;gap:20px;}
  .cards-band,.vcm-grid{grid-template-columns:1fr;}
  .values-grid,.tf-grid{grid-template-columns:1fr;}
  .members-grid{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .contact-info{grid-template-columns:1fr;}
  .nav-toggle{display:grid;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer;margin-inline-start:auto;}
  .nav-toggle span{width:24px;height:2.5px;border-radius:2px;background:var(--c-navy);transition:transform .25s,opacity .25s;}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}
  .main-nav{position:static;}
  .nav-list{position:fixed;top:72px;inset-inline:0;background:#fff;flex-direction:column;padding:18px;gap:4px;box-shadow:0 30px 60px rgba(0,20,50,.15);transform:translateY(-130%);transition:transform .3s;z-index:99;}
  body.nav-open .nav-list{transform:none;}
  .chain-desktop{display:none;}
  .chain-mobile{display:block;max-height:70vh;width:auto;}
  .legal-prose .prose{padding:26px;}
}
@media (max-width:560px){.members-grid{grid-template-columns:1fr 1fr;gap:16px;}.header-inner{padding:12px 16px;gap:14px;}.lang-switch{padding-inline-start:8px;}}

.skip-link{position:absolute;top:-48px;inset-inline-start:8px;z-index:200;padding:10px 18px;background:var(--c-accent,#005AAA);color:#fff;border-radius:0 0 8px 8px;transition:top .2s;}
.skip-link:focus{top:0;}
html.a11y-contrast{filter:contrast(1.35);}
html.a11y-grayscale{filter:grayscale(1);}
html.a11y-contrast.a11y-grayscale{filter:contrast(1.35) grayscale(1);}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px;outline:1px dashed currentColor;outline-offset:2px;}
html.a11y-readable body,html.a11y-readable *{font-family:Arial,Helvetica,sans-serif !important;letter-spacing:.01em;}
html.a11y-nomotion *,html.a11y-nomotion *::before,html.a11y-nomotion *::after{animation-play-state:paused !important;transition:none !important;scroll-behavior:auto !important;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}}
:focus-visible{outline:3px solid var(--c-lime,#A9CF38);outline-offset:2px;border-radius:2px;}
.a11y-widget{position:fixed;bottom:22px;inset-inline-start:22px;z-index:120;}
.a11y-fab{width:52px;height:52px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;background:var(--c-accent,#005AAA);color:#fff;box-shadow:0 6px 24px rgba(0,47,104,.35);transition:transform .2s;}
.a11y-fab:hover{transform:scale(1.08);}
.a11y-panel{position:absolute;bottom:64px;inset-inline-start:0;width:min(300px,84vw);padding:18px;border-radius:16px;background:var(--panel-bg,#fff);color:var(--panel-fg,#0b2545);box-shadow:0 18px 60px rgba(0,20,50,.35);border:1px solid rgba(120,150,190,.25);}
.a11y-panel h2{font-size:1rem;margin:0 0 12px;}
.a11y-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;margin:2px 0;border:0;background:transparent;color:inherit;font:inherit;font-size:.92rem;border-radius:10px;cursor:pointer;text-align:start;}
.a11y-row:hover{background:rgba(0,90,170,.08);}
.a11y-dot{width:34px;height:18px;border-radius:99px;background:rgba(120,150,190,.35);position:relative;flex:none;transition:background .2s;}
.a11y-dot::after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s;}
.a11y-row[aria-pressed="true"] .a11y-dot{background:var(--c-lime,#A9CF38);}
.a11y-row[aria-pressed="true"] .a11y-dot::after{transform:translateX(16px);}
[dir="rtl"] .a11y-row[aria-pressed="true"] .a11y-dot::after{transform:translateX(-16px);}
.a11y-font-row{cursor:default;}
.a11y-font-btns{display:flex;gap:6px;}
.a11y-font-btns button{min-width:34px;padding:6px 8px;border-radius:8px;border:1px solid rgba(120,150,190,.4);background:transparent;color:inherit;cursor:pointer;font-weight:700;}
.a11y-font-btns button:hover{background:rgba(0,90,170,.1);}
.a11y-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:.85rem;}
.a11y-actions button{border:0;background:transparent;color:inherit;cursor:pointer;text-decoration:underline;font:inherit;font-size:.85rem;}
.a11y-actions a{color:var(--c-accent,#005AAA);}
.consent{position:fixed;inset-inline:0;bottom:0;z-index:130;padding:14px;display:flex;justify-content:center;}
.consent[hidden]{display:none;}
.consent-manage[hidden],.a11y-panel[hidden]{display:none;}
.consent-card{width:min(720px,96vw);background:var(--panel-bg,#fff);color:var(--panel-fg,#0b2545);border-radius:18px;padding:22px 24px;box-shadow:0 -6px 60px rgba(0,20,50,.35);border:1px solid rgba(120,150,190,.25);}
.consent-card h2{margin:0 0 6px;font-size:1.05rem;}
.consent-card>p{margin:0 0 14px;font-size:.92rem;line-height:1.55;}
.consent-card a{color:var(--c-accent,#005AAA);font-weight:600;}
.consent-actions{display:flex;gap:10px;flex-wrap:wrap;}
.consent-btn{padding:10px 20px;border-radius:99px;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;border:1.5px solid var(--c-accent,#005AAA);transition:transform .15s;}
.consent-btn:hover{transform:translateY(-1px);}
.consent-btn.ghost{background:transparent;color:var(--c-accent,#005AAA);}
.consent-btn.solid{background:var(--c-accent,#005AAA);color:#fff;margin-inline-start:auto;}
.consent-manage{margin:0 0 14px;border-top:1px solid rgba(120,150,190,.25);padding-top:12px;}
.consent-cat{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:8px 0;}
.consent-cat p{margin:2px 0 0;font-size:.82rem;opacity:.75;}
.consent-cat input[type=checkbox]{width:20px;height:20px;accent-color:var(--c-accent,#005AAA);margin-top:4px;}
.consent-always{color:var(--c-lime,#A9CF38);font-weight:900;font-size:1.1rem;}
.consent-reopen{border:0;background:transparent;color:inherit;opacity:.7;cursor:pointer;text-decoration:underline;font:inherit;font-size:.85rem;}
.consent-reopen:hover{opacity:1;}
@media (max-width:640px){.consent-btn.solid{margin-inline-start:0;}}
