:root{
  --navy:#0a1533;--navy-2:#0e1c44;--navy-3:#132455;--line:rgba(201,162,39,.18);
  --gold:#c9a227;--gold-2:#e7c65a;--gold-soft:rgba(201,162,39,.14);
  --cream:#f7f4ec;--cream-2:#efe9db;--ink:#0a1533;--muted:#5f6480;
  --white:#fff;--on-navy:#e8e9f0;--on-navy-mut:#9aa2c0;
  --r:18px;--r-lg:26px;--maxw:1220px;--s4:40px;--s5:64px;--s6:104px;
  --sh-sm:0 14px 34px -18px rgba(10,20,60,.4);
  --sh:0 40px 90px -40px rgba(4,9,28,.7);
  --ease:cubic-bezier(.19,1,.22,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;line-height:1.06;letter-spacing:-.015em;font-weight:600;overflow-wrap:break-word}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:100%;font-weight:600;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";width:30px;height:1.5px;background:var(--gold);flex:none}
.eyebrow.c{justify-content:center}
.btn{position:relative;display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:15px;padding:16px 28px;border-radius:12px;cursor:pointer;border:1.5px solid transparent;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s,color .3s;will-change:transform}
.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#2a1e00;box-shadow:0 14px 34px -12px rgba(201,162,39,.7)}
.btn-gold:hover{box-shadow:0 22px 50px -12px rgba(201,162,39,.9)}
.btn-out{border-color:rgba(255,255,255,.3);color:#fff}
.btn-out:hover{background:rgba(255,255,255,.08);border-color:var(--gold)}
.btn-navy{background:var(--navy);color:#fff}
.svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* scroll progress */
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-2));z-index:200;box-shadow:0 0 12px rgba(201,162,39,.8)}

/* HEADER */
header{position:sticky;top:0;z-index:100;background:rgba(10,21,51,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:background .3s}
header.solid{background:rgba(8,16,40,.94)}
.nav{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
.brand{display:flex;align-items:center;gap:13px;color:#fff}
.brand img{height:56px;width:auto;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45))}
.brand .bt{font-family:'Fraunces';font-weight:600;font-size:18px;line-height:1}
.brand .bt span{display:block;font-family:'Inter';font-size:10px;letter-spacing:.28em;color:var(--gold);margin-top:4px;font-weight:600}
.menu{display:flex;align-items:center;gap:30px}
.menu a{color:var(--on-navy);font-size:14.5px;font-weight:500;position:relative;padding:8px 0}
.menu a::after{content:"";position:absolute;left:0;bottom:2px;height:2px;width:0;background:var(--gold);transition:width .3s var(--ease)}
.menu a:hover{color:#fff}.menu a:hover::after{width:100%}
.hdr-cta{display:flex;align-items:center;gap:18px}
.hdr-phone{color:#fff;font-weight:600;font-size:14.5px;display:flex;align-items:center;gap:8px}
.hdr-phone .svg{width:17px;height:17px;stroke:var(--gold)}
.burger{display:none;background:none;border:0;color:#fff;cursor:pointer}
@media(max-width:1080px){.menu,.hdr-phone{display:none}.burger{display:block}.hdr-cta .btn{display:none}}

/* HERO */
.hero{position:relative;isolation:isolate;background:linear-gradient(160deg,#0a1533,#0c1a3e 55%,#0a1226);color:#fff;overflow:hidden}
.hero .aurora{position:absolute;inset:-25%;z-index:-2;filter:blur(70px);opacity:.55}
.hero .aurora i{position:absolute;display:block;border-radius:50%;mix-blend-mode:screen}
.hero .aurora .g1{width:520px;height:520px;background:radial-gradient(circle,rgba(201,162,39,.7),transparent 60%);top:0;right:6%;animation:drift1 16s var(--ease) infinite alternate}
.hero .aurora .g2{width:460px;height:460px;background:radial-gradient(circle,rgba(45,86,180,.7),transparent 60%);bottom:0;left:2%;animation:drift2 20s var(--ease) infinite alternate}
@keyframes drift1{to{transform:translate(-60px,40px) scale(1.15)}}
@keyframes drift2{to{transform:translate(70px,-30px) scale(1.1)}}
.hero .grid-tex{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(circle at 75% 40%,#000,transparent 72%)}
.hero .spot{position:absolute;inset:0;z-index:-1;background:radial-gradient(340px circle at var(--mx,72%) var(--my,32%),rgba(201,162,39,.16),transparent 62%);transition:background .25s ease}
.hero .noise{position:absolute;inset:0;z-index:-1;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNDAiIGhlaWdodD0iMTQwIj48ZmlsdGVyIGlkPSJuIj48ZmVUdXJidWxlbmNlIHR5cGU9ImZyYWN0YWxOb2lzZSIgYmFzZUZyZXF1ZW5jeT0iMC44NSIgbnVtT2N0YXZlcz0iMiIgc3RpdGNoVGlsZXM9InN0aXRjaCIvPjxmZUNvbG9yTWF0cml4IHR5cGU9InNhdHVyYXRlIiB2YWx1ZXM9IjAiLz48L2ZpbHRlcj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWx0ZXI9InVybCgjbikiIG9wYWNpdHk9IjAuNSIvPjwvc3ZnPg==');opacity:.05;pointer-events:none}
.hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;padding:92px 0 96px}
.hero-inner>*{min-width:0}
.hero h1{font-size:clamp(40px,5.6vw,74px);font-weight:600;margin:22px 0}
.hero h1 .line{display:block;opacity:0;transform:translateY(26px);animation:rise .9s var(--ease) forwards}
.hero h1 .line:nth-child(2){animation-delay:.12s}
@keyframes rise{to{opacity:1;transform:none}}
.shine{background:linear-gradient(100deg,var(--gold-2) 0%,#fff6d6 25%,var(--gold) 50%,var(--gold-2) 75%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;font-style:italic;animation:shimmer 5s linear infinite}
@keyframes shimmer{to{background-position:220% center}}
.hero .lead{font-size:clamp(16px,1.35vw,19px);color:var(--on-navy-mut);max-width:50ch;margin-bottom:34px;opacity:0;animation:rise .9s .3s var(--ease) forwards}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:rise .9s .42s var(--ease) forwards}
.trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:42px;padding-top:30px;border-top:1px solid rgba(255,255,255,.12);opacity:0;animation:rise .9s .54s var(--ease) forwards}
.trust div{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--on-navy);font-weight:500}
.trust .svg{width:19px;height:19px;stroke:var(--gold)}
.badge-wrap{position:relative;display:grid;place-items:center;min-height:470px}
.badge-wrap .glow{position:absolute;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,39,.36),transparent 62%);filter:blur(8px);animation:pulse 4.5s ease-in-out infinite}
@keyframes pulse{50%{opacity:.6;transform:scale(1.06)}}
.badge-wrap .ring{position:absolute;border-radius:50%;border:1px solid rgba(201,162,39,.3)}
.badge-wrap .ring.a{width:410px;height:410px;animation:spin 38s linear infinite}
.badge-wrap .ring.b{width:510px;height:510px;border-style:dashed;border-color:rgba(201,162,39,.16);animation:spin 72s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.badge-float{position:relative;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 34px 54px rgba(0,0,0,.55))}
@keyframes float{50%{transform:translateY(-16px)}}
.badge-float img{width:min(360px,72%);margin:0 auto}
.badge-float::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);mix-blend-mode:screen;background-size:250% 100%;animation:sheen 6s ease-in-out infinite;pointer-events:none}
@keyframes sheen{0%,60%{background-position:180% 0}100%{background-position:-60% 0}}
.badge-tag{position:absolute;bottom:6px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:999px;padding:9px 18px;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);backdrop-filter:blur(6px)}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr;padding:56px 0 70px}.badge-wrap{order:-1;min-height:330px}.badge-wrap .ring.b{display:none}}

/* MARQUEE */
.marq{background:var(--navy);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:18px 0}
.marq-track{display:flex;gap:56px;white-space:nowrap;animation:slide 28s linear infinite;width:max-content}
.marq-track div{display:flex;align-items:center;gap:11px;color:var(--on-navy);font-family:'Fraunces';font-weight:600;font-size:16px}
.marq-track .svg{stroke:var(--gold);width:20px;height:20px}
@keyframes slide{to{transform:translateX(-50%)}}

/* SECTION */
section.block{padding:var(--s6) 0}
.hair{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.sec-head{max-width:660px;margin-bottom:56px}
.sec-head.c{margin-left:auto;margin-right:auto;text-align:center}
.sec-head h2{font-size:clamp(30px,3.8vw,48px);margin:18px 0 16px}
.sec-head p{color:var(--muted);font-size:17px}

/* BENTO */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;perspective:1200px}
.svc{grid-column:span 2;position:relative;background:var(--white);border:1px solid var(--cream-2);border-radius:var(--r);padding:30px 26px;overflow:hidden;transition:transform .18s var(--ease),box-shadow .3s var(--ease),border-color .3s;transform-style:preserve-3d;will-change:transform}
.svc::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(201,162,39,.6),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}
.svc:hover::before{opacity:1}
.svc.big{grid-column:span 3;background:linear-gradient(150deg,var(--navy-2),var(--navy));color:#fff;border-color:transparent}
.svc.big::after{content:"";position:absolute;width:280px;height:280px;right:-60px;top:-90px;background:radial-gradient(circle,rgba(201,162,39,.22),transparent 60%);pointer-events:none}
.svc:hover{box-shadow:var(--sh-sm)}
.svc-ic{width:56px;height:56px;border-radius:15px;background:var(--navy);display:grid;place-items:center;margin-bottom:20px;transition:.35s;transform:translateZ(30px)}
.svc.big .svc-ic{background:rgba(201,162,39,.16)}
.svc-ic .svg{stroke:var(--gold);width:27px;height:27px;transition:transform .35s}
.svc:hover .svc-ic{background:linear-gradient(135deg,var(--gold-2),var(--gold))}
.svc:hover .svc-ic .svg{stroke:#2a1e00;transform:scale(1.1) rotate(-6deg)}
.svc h3{font-size:20px;margin-bottom:9px}.svc.big h3{font-size:26px}
.svc p{font-size:14.5px;color:var(--muted);margin-bottom:18px}
.svc.big p{color:var(--on-navy-mut);font-size:15.5px;max-width:42ch}
.more{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:13.5px;color:var(--ink)}
.svc.big .more{color:var(--gold-2)}
.more .svg{width:16px;height:16px;stroke:var(--gold);transition:transform .3s}
.svc:hover .more .svg{transform:translateX(5px)}
@media(max-width:1080px){.bento{grid-template-columns:repeat(2,1fr)}.svc,.svc.big{grid-column:span 1}}
@media(max-width:560px){.bento{grid-template-columns:1fr}.svc,.svc.big{grid-column:span 1}}

/* WHY */
.why{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.why .blob{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,39,.12),transparent 60%);top:-160px;left:-120px;filter:blur(30px);z-index:0}
.why-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}
@media(max-width:900px){.why-grid{grid-template-columns:1fr;gap:40px}}
.why-media{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:470px;background:radial-gradient(600px 380px at 40% 30%,rgba(201,162,39,.22),transparent 60%),linear-gradient(150deg,#12224f,#0a1226);border:1px solid var(--line);display:grid;place-items:center}
.why-media img{width:64%;filter:drop-shadow(0 26px 46px rgba(0,0,0,.55));animation:float 7s ease-in-out infinite}
.why-media .badge-tag{position:absolute;bottom:22px}
.feat{display:flex;gap:18px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.feat:last-of-type{border-bottom:0}
.feat .num{font-family:'Fraunces';font-weight:600;font-size:22px;color:var(--gold-2);flex:none;width:44px}
.feat h4{font-size:19px;margin-bottom:5px}.feat p{font-size:14.5px;color:var(--on-navy-mut)}

/* STATS */
.stats{background:linear-gradient(120deg,#0c1a3e,#0a1226);color:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;text-align:center}
@media(max-width:700px){.stats-grid{grid-template-columns:1fr 1fr;gap:36px 16px}}
.stat b{font-family:'Fraunces';font-weight:700;font-size:clamp(38px,4.4vw,58px);color:var(--gold-2);display:block;line-height:1}
.stat span{color:var(--on-navy-mut);font-size:14px;margin-top:8px;display:block}

/* INDUSTRIES */
.ind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:800px){.ind-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.ind-grid{grid-template-columns:1fr}}
.ind{display:flex;align-items:center;gap:15px;background:var(--white);border:1px solid var(--cream-2);border-radius:14px;padding:20px 22px;transition:.3s var(--ease)}
.ind:hover{border-color:var(--gold);box-shadow:var(--sh-sm);transform:translateY(-4px)}
.ind .ic{width:44px;height:44px;border-radius:11px;background:var(--gold-soft);display:grid;place-items:center;flex:none;transition:.3s}
.ind:hover .ic{background:linear-gradient(135deg,var(--gold-2),var(--gold))}
.ind:hover .ic .svg{stroke:#2a1e00}
.ind .ic .svg{stroke:var(--gold);width:22px;height:22px}
.ind b{font-weight:600;font-size:15.5px}

/* PROCESS */
.proc{background:var(--cream-2)}
.proc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media(max-width:900px){.proc-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.proc-grid{grid-template-columns:1fr}}
.step{position:relative;background:var(--white);border:1px solid #e6ddc9;border-radius:var(--r);padding:28px 24px;transition:.3s var(--ease)}
.step:hover{transform:translateY(-5px);box-shadow:var(--sh-sm)}
.step .n{font-family:'Fraunces';font-weight:700;font-size:22px;color:var(--gold);margin-bottom:14px;display:block}
.step h4{font-size:18px;margin-bottom:7px}.step p{font-size:14.5px;color:var(--muted)}

/* TESTIMONIALS */
.tst-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:900px){.tst-grid{grid-template-columns:1fr}}
.tst{background:var(--white);border:1px solid var(--cream-2);border-radius:var(--r);padding:30px;transition:.3s var(--ease)}
.tst:hover{transform:translateY(-5px);box-shadow:var(--sh-sm)}
.tst .q{font-family:'Fraunces';font-size:56px;color:var(--gold);line-height:.6;height:26px}
.stars{display:flex;gap:3px;margin:6px 0 14px}.stars .svg{width:17px;height:17px;fill:var(--gold);stroke:var(--gold)}
.tst p{font-size:15px;color:#2b3350;margin-bottom:20px}
.tst .who{display:flex;align-items:center;gap:12px}
.tst .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--navy-2),var(--navy));color:var(--gold-2);display:grid;place-items:center;font-family:'Fraunces';font-weight:600}
.tst .who b{font-weight:600;display:block}.tst .who span{font-size:13px;color:var(--muted)}

/* CTA */
.cta{position:relative;background:radial-gradient(700px 360px at 85% 12%,rgba(201,162,39,.26),transparent 60%),linear-gradient(150deg,#0e1c44,#0a1226);color:#fff;border-radius:var(--r-lg);padding:var(--s6) var(--s4);text-align:center;overflow:hidden;border:1px solid var(--line)}
.cta::before{content:"";position:absolute;inset:0;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNDAiIGhlaWdodD0iMTQwIj48ZmlsdGVyIGlkPSJuIj48ZmVUdXJidWxlbmNlIHR5cGU9ImZyYWN0YWxOb2lzZSIgYmFzZUZyZXF1ZW5jeT0iMC44NSIgbnVtT2N0YXZlcz0iMiIgc3RpdGNoVGlsZXM9InN0aXRjaCIvPjxmZUNvbG9yTWF0cml4IHR5cGU9InNhdHVyYXRlIiB2YWx1ZXM9IjAiLz48L2ZpbHRlcj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWx0ZXI9InVybCgjbikiIG9wYWNpdHk9IjAuNSIvPjwvc3ZnPg==');opacity:.05}
.cta h2{font-size:clamp(30px,4vw,50px);margin-bottom:16px;position:relative}
.cta p{color:var(--on-navy-mut);max-width:56ch;margin:0 auto 32px;font-size:17px;position:relative}
.cta .hero-cta{justify-content:center;position:relative;animation:none;opacity:1}

/* FOOTER */
footer{background:#081026;color:var(--on-navy);padding:var(--s6) 0 32px}
.fgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.4fr;gap:42px;padding-bottom:var(--s5)}
@media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.fgrid{grid-template-columns:1fr}}
.fb .brand{margin-bottom:18px}.fb p{font-size:14px;color:var(--on-navy-mut);max-width:34ch;margin-bottom:22px}
.socials{display:flex;gap:10px}
.socials a{width:40px;height:40px;border-radius:11px;border:1px solid var(--line);display:grid;place-items:center;transition:.3s}
.socials a:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-3px)}.socials a:hover .svg{stroke:#2a1e00}
.socials .svg{width:18px;height:18px;stroke:var(--on-navy)}
.fcol h5{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:18px}
.fcol a{display:block;font-size:14px;color:var(--on-navy-mut);padding:6px 0;transition:.2s}.fcol a:hover{color:var(--gold-2)}
.cl{display:flex;gap:12px;font-size:14px;color:var(--on-navy-mut);padding:7px 0}
.cl .svg{stroke:var(--gold);width:18px;height:18px;flex:none;margin-top:2px}
.fbot{border-top:1px solid var(--line);padding-top:26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--on-navy-mut)}

/* reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal[data-r=left]{transform:translateX(-40px)}
.reveal[data-r=right]{transform:translateX(40px)}
.reveal[data-r=zoom]{transform:scale(.92)}
.reveal.in{opacity:1;transform:none}
@media(max-width:560px){:root{--s6:66px}.btn{width:100%;justify-content:center}.hero h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal,.hero h1 .line,.hero .lead,.hero-cta,.trust{opacity:1!important;transform:none!important}.badge-wrap .ring,.badge-float::after{display:none}html{scroll-behavior:auto}}
/* ============ PAGE / SERVICE HERO ============ */
.phero{position:relative;isolation:isolate;background:linear-gradient(160deg,#0a1533,#0c1a3e 60%,#0a1226);color:#fff;overflow:hidden;padding:78px 0 68px}
.phero .grid-tex{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(circle at 80% 30%,#000,transparent 72%)}
.phero .glowb{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,39,.16),transparent 60%);top:-180px;right:-80px;z-index:-1;filter:blur(30px)}
.crumb{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--on-navy-mut);margin-bottom:16px}
.crumb a:hover{color:var(--gold-2)}.crumb span{color:var(--gold)}
.phero h1{font-size:clamp(32px,4.6vw,56px);margin-bottom:14px}
.phero p{color:var(--on-navy-mut);max-width:62ch;font-size:17px}

/* ============ CONTENT (the_content) ============ */
.content{font-size:16px;color:#2b3350;line-height:1.75}
.content>*:first-child{margin-top:0}
.content h2{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:clamp(24px,2.6vw,32px);color:var(--ink);margin:36px 0 14px;line-height:1.15}
.content h3{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:21px;color:var(--ink);margin:26px 0 10px}
.content p{margin:0 0 16px}
.content ul,.content ol{margin:0 0 18px 22px}.content li{margin:7px 0}
.content a{color:var(--gold);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.content img{border-radius:14px;margin:18px 0;box-shadow:var(--sh-sm)}
.content strong{color:var(--ink)}

/* ============ COMMENDATION / VIDEO ============ */
.commend-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:center}
@media(max-width:900px){.commend-grid{grid-template-columns:1fr;gap:34px}}
.video{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/10;background:linear-gradient(150deg,#12224f,#0a1226);border:1px solid var(--line);cursor:pointer;display:grid;place-items:center}
.video>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.video .play{position:relative;width:86px;height:86px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold));display:grid;place-items:center;box-shadow:0 16px 44px -10px rgba(201,162,39,.85);transition:transform .3s var(--ease)}
.video:hover .play{transform:scale(1.09)}
.video .play svg{width:34px;height:34px;fill:#0a1226;margin-left:5px}
.video .vlabel{position:absolute;bottom:16px;left:18px;right:18px;color:#fff;font-family:'Fraunces';font-weight:600;font-size:15px;text-shadow:0 2px 10px rgba(0,0,0,.8)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
.commend-txt .sub{font-family:'Inter';font-weight:700;color:var(--ink);margin:6px 0 10px;font-size:16px}
.commend-txt .quote{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:17px;color:#2b3350;border-left:3px solid var(--gold);padding-left:18px;margin:14px 0}
.commend-txt .cite{font-size:14px;color:var(--muted);margin-top:12px}
.commend-txt .cite b{color:var(--ink);display:block}

/* ============ FAQ + CALLBACK ============ */
.faqcb{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:44px;align-items:start}
@media(max-width:900px){.faqcb{grid-template-columns:1fr;gap:34px}}
.faq-list{display:grid;gap:12px}
.faq-list details{background:var(--white);border:1px solid var(--cream-2);border-radius:14px;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.faq-list details[open]{box-shadow:var(--sh-sm);border-color:var(--gold)}
.faq-list summary{list-style:none;cursor:pointer;padding:20px 22px;font-weight:600;font-size:15.5px;color:var(--ink);display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary .pl{position:relative;width:20px;height:20px;flex:none}
.faq-list summary .pl::before,.faq-list summary .pl::after{content:"";position:absolute;background:var(--gold);border-radius:2px}
.faq-list summary .pl::before{top:9px;left:1px;right:1px;height:2px}
.faq-list summary .pl::after{left:9px;top:1px;bottom:1px;width:2px;transition:transform .3s}
.faq-list details[open] summary .pl::after{transform:scaleY(0)}
.faq-list .ans{padding:0 22px 20px;color:var(--muted);font-size:14.5px}
.cb{position:relative;background:linear-gradient(150deg,var(--navy-2),var(--navy));border:1px solid var(--line);border-radius:var(--r-lg);padding:40px;color:#fff;overflow:hidden}
.cb::after{content:"";position:absolute;width:300px;height:300px;right:-90px;top:-110px;background:radial-gradient(circle,rgba(201,162,39,.2),transparent 60%);pointer-events:none}
.cb h3{font-size:clamp(22px,2.4vw,28px);margin-bottom:8px;position:relative}
.cb .lead{color:var(--on-navy-mut);margin-bottom:26px;position:relative;font-size:15px}
.cb form{display:grid;gap:20px;position:relative}
.cb .row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:560px){.cb .row{grid-template-columns:1fr}.cb{padding:28px}}
.cb input,.cb textarea{width:100%;background:transparent;border:0;border-bottom:1.5px solid rgba(255,255,255,.22);color:#fff;font:inherit;padding:12px 2px;transition:border-color .3s}
.cb input:focus,.cb textarea:focus{outline:0;border-color:var(--gold)}
.cb input::placeholder,.cb textarea::placeholder{color:var(--on-navy-mut)}
.cb textarea{resize:vertical;min-height:64px}
.cb button{margin-top:4px;justify-self:start;width:100%}
.cb .ok{background:rgba(201,162,39,.14);border:1px solid var(--gold);border-radius:12px;padding:16px;color:var(--gold-2);font-weight:600;position:relative}

/* ============ CONTACT INFO CARDS ============ */
.cinfo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:44px}
@media(max-width:760px){.cinfo{grid-template-columns:1fr}}
.cinfo .c{background:var(--white);border:1px solid var(--cream-2);border-radius:var(--r);padding:26px;transition:.3s var(--ease)}
.cinfo .c:hover{transform:translateY(-4px);box-shadow:var(--sh-sm);border-color:var(--gold)}
.cinfo .c .ic{width:50px;height:50px;border-radius:13px;background:var(--gold-soft);display:grid;place-items:center;margin-bottom:14px}
.cinfo .c .ic svg{stroke:var(--gold);width:24px;height:24px}
.cinfo .c h4{font-size:17px;margin-bottom:6px}
.cinfo .c a,.cinfo .c p{color:var(--muted);font-size:14.5px}
.cinfo .c a:hover{color:var(--gold)}
.mapwrap{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--cream-2);min-height:360px}
.mapwrap iframe{width:100%;height:100%;min-height:360px;border:0;display:block}

/* ============ MOBILE MENU (burger dropdown) ============ */
@media(max-width:1080px){
  .menu.open{display:flex;position:absolute;top:84px;left:0;right:0;flex-direction:column;gap:0;background:rgba(8,16,40,.98);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);padding:8px 26px 18px}
  .menu.open a{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:16px}
  .menu.open a::after{display:none}
}

/* ============ SUPPRESS LEFTOVER THEME/PLUGIN FLOATING WIDGETS ============ */
/* (e.g. Chaty / JoinChat floating contact buttons that inject via wp_footer) */
#chaty-widget, .chaty-widget, [id^="chaty"], div[class*="chaty"],
.joinchat, #joinchat, .wcontact, .wpcc-container, #back-to-top,
.pix-preloader, #preloader, .safeguard-preloader { display:none !important; }

/* ============ VIDEO-BACKGROUND HERO ============ */
.hero-video{position:relative;overflow:hidden;isolation:isolate;min-height:660px;display:flex;align-items:center}
.hero-video .hero-bg{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#0a1226}
.hero-video .hero-bg iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:100%;min-width:177.78vh;transform:translate(-50%,-50%);border:0;pointer-events:none}
.hero-video .hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(100deg,rgba(10,21,51,.92) 0%,rgba(10,18,38,.82) 42%,rgba(10,21,51,.55) 100%),linear-gradient(0deg,rgba(10,18,38,.5),transparent 55%),radial-gradient(700px 360px at 84% 16%,rgba(201,162,39,.10),transparent 60%)}
.hero-video .hero-inner{grid-template-columns:1fr;width:100%}
.hero-video .hero-inner>div{max-width:780px}
@media(max-width:900px){.hero-video{min-height:540px}}

/* ============ CORE-VALUE ICONS (About the_content swap) ============ */
.content .tsp-vic{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:var(--gold-soft);margin:22px auto 10px}
.content .tsp-vic svg{width:30px;height:30px;stroke:var(--gold);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* ============ CAREERS ============ */
.jobs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:900px){.jobs-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.jobs-grid{grid-template-columns:1fr}}
.job{background:var(--white);border:1px solid var(--cream-2);border-radius:var(--r);padding:26px;transition:.3s var(--ease);display:flex;flex-direction:column;gap:12px}
.job:hover{transform:translateY(-5px);box-shadow:var(--sh-sm);border-color:var(--gold)}
.job-top{display:flex;align-items:center;gap:14px}
.job-ic{width:48px;height:48px;border-radius:12px;background:var(--navy);display:grid;place-items:center;flex:none}
.job-ic svg{stroke:var(--gold);width:24px;height:24px;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.job h3{font-size:19px;margin:0}
.job-chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:var(--gold-soft);color:#7a6410;border:1px solid rgba(201,162,39,.3);border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:600}
.job p{font-size:14.5px;color:var(--muted);margin:0}
.job .more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--ink)}
.job .more svg{stroke:var(--gold);width:16px;height:16px;fill:none;stroke-width:1.7;transition:transform .25s}
.job:hover .more svg{transform:translateX(4px)}
.job-empty{text-align:center;max-width:580px;margin:0 auto;padding:20px}
.job-empty .job-ic{width:66px;height:66px;margin:0 auto 18px;border-radius:18px}
.job-empty .job-ic svg{width:30px;height:30px}
.job-empty h3{font-size:24px;margin-bottom:10px}
.job-empty p{color:var(--muted);margin-bottom:22px}
.job-empty a[href^="mailto"]:not(.btn){color:var(--gold);font-weight:600}

/* ============ BLOG ============ */
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}}
.bpost{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--cream-2);border-radius:var(--r);overflow:hidden;transition:.3s var(--ease)}
.bpost:hover{transform:translateY(-6px);box-shadow:var(--sh-sm)}
.bpost-img{aspect-ratio:16/10;overflow:hidden;background:linear-gradient(150deg,var(--navy-2),var(--navy))}
.bpost-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.bpost:hover .bpost-img img{transform:scale(1.05)}
.bpost-ph{width:100%;height:100%;display:grid;place-items:center}
.bpost-ph svg{width:54px;height:54px;stroke:rgba(201,162,39,.5);fill:none;stroke-width:1.3}
.bpost-body{padding:22px;display:flex;flex-direction:column;gap:8px;flex:1}
.bpost-date{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-weight:600}
.bpost-body h3{font-size:19px;margin:0;color:var(--ink);line-height:1.2}
.bpost-body p{font-size:14.5px;color:var(--muted);margin:0}
.bpost .more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--ink);padding-top:6px}
.bpost .more svg{stroke:var(--gold);width:16px;height:16px;fill:none;stroke-width:1.7;transition:transform .25s}
.bpost:hover .more svg{transform:translateX(4px)}
.pager{display:flex;justify-content:center;gap:8px;margin-top:44px;flex-wrap:wrap}
.pager .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--cream-2);background:var(--white);color:var(--ink);font-weight:600;font-size:14px;text-decoration:none}
.pager .page-numbers.current{background:var(--gold);border-color:var(--gold);color:#2a1e00}
.pager a.page-numbers:hover{border-color:var(--gold)}

/* ============ SINGLE BLOG POST ============ */
.post-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:16px;color:var(--on-navy-mut);font-size:14px}
.post-meta span{display:flex;align-items:center;gap:8px}
.post-meta svg{width:17px;height:17px;stroke:var(--gold);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.post-feat{border-radius:var(--r-lg);overflow:hidden;margin-bottom:32px;border:1px solid var(--cream-2)}
.post-feat img{width:100%;height:auto;display:block}
.post-foot{display:flex;gap:14px;flex-wrap:wrap;margin-top:44px;padding-top:28px;border-top:1px solid var(--cream-2)}
