/* =====================================================================
   Defrilex landing page — Propio-style layout
   Warm off-white ground, soft serif headings (Fraunces) in regular weight,
   Poppins body, pill buttons with a round arrow, deep navy panels.
   Accent: Defrilex blue on light, Defrilex orange on dark.
   ===================================================================== */
:root{
  --pp-bg:#f6f4ef;
  --pp-bg-2:#eeebe4;
  --pp-ink:#0a1433;
  --pp-muted:#666a73;
  --pp-line:#d9d9d9;
  --pp-dark:#08122e;
  --pp-dark-2:#0d1d4a;
  --pp-accent:#08288c;
  --pp-accent-dark:#f7a23b;
  --pp-orange:#f28c12;
  --pp-serif:"Fraunces", Georgia, "Times New Roman", serif;
  --pp-sans:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pp-wrap:1300px;
}
body{background:var(--pp-bg);font-family:var(--pp-sans);color:var(--pp-ink)}
h1,h2,h3,h4{font-family:var(--pp-serif);font-weight:400;letter-spacing:-.005em;font-variation-settings:"SOFT" 100,"WONK" 0}
.soft{background:var(--pp-bg-2)}
.pp-wrap{max-width:var(--pp-wrap);margin-inline:auto;padding-inline:clamp(16px,3.5vw,40px)}
.acc{color:var(--pp-accent)}
.on-dark .acc,.pp-dark .acc,.pp-hero .acc{color:var(--pp-accent-dark)}
.pp-h1{font-size:clamp(40px,4.6vw,65px);line-height:1.1}
.pp-h2{font-size:clamp(28px,2.6vw,36px);line-height:1.2}
.pp-sub{font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:var(--pp-muted);font-weight:400}
.pp-sec{padding-block:clamp(80px,9vw,150px)}

/* ---------- pill buttons with a round arrow ---------- */
.pbtn{position:relative;display:inline-flex;align-items:center;gap:12px;padding:10px 10px 10px 18px;border-radius:40px;border:2px solid rgba(10,20,51,.75);background:var(--pp-bg);color:var(--pp-ink);font:500 15px/1 var(--pp-sans);text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s}
.pbtn .dot{width:28px;height:28px;border-radius:50%;background:var(--pp-orange);color:var(--pp-ink);display:grid;place-items:center;flex:none;transition:transform .2s}
.pbtn:hover .dot{transform:translateX(2px)}
.pbtn:hover{background:#fff}
.pbtn.plain{border-color:var(--pp-line);padding:12px 18px}
.pbtn.plain .arr{transition:transform .2s}
.pbtn.plain:hover .arr{transform:translateX(3px)}
.pbtn.sm{font-size:13px;padding:7px 7px 7px 14px}
.pbtn.sm .dot{width:24px;height:24px}
.pbtn:focus-visible{outline:2px solid var(--pp-orange);outline-offset:3px}

/* ---------- header (all pages) ---------- */
.top{background:rgba(246,244,239,.96);border-bottom:1px solid rgba(10,20,51,.08)}
.nav .mm-link,.mm-btn,.nav-ext{font-family:var(--pp-sans);font-size:14px}
.top .btn-primary{font-family:var(--pp-sans);font-weight:500;font-size:13px;background:var(--pp-bg);color:var(--pp-ink);border:2px solid rgba(10,20,51,.75);padding:7px 7px 7px 14px;gap:10px}
.top .btn-primary .arrow{width:24px;height:24px;border-radius:50%;background:var(--pp-orange);display:grid;place-items:center;font-size:13px}
.top .btn-primary:hover{background:#fff}
/* over the video on the landing page */
.top.over-hero{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom-color:transparent;transition:background .25s,border-color .25s}
.top.over-hero:not(.scrolled):not(.open) .logo img{filter:brightness(0) invert(1)}
.top.over-hero:not(.scrolled):not(.open) .mm-btn,
.top.over-hero:not(.scrolled):not(.open) .nav .mm-link,
.top.over-hero:not(.scrolled):not(.open) .nav-ext{color:#fff}
.top.over-hero:not(.scrolled):not(.open) .mm-btn:hover,.top.over-hero:not(.scrolled):not(.open) .nav .mm-link:hover{background:rgba(255,255,255,.12);color:#fff}
.top.over-hero:not(.scrolled):not(.open) .menu-btn{color:#fff;border-color:rgba(255,255,255,.4)}
.top.over-hero.scrolled,.top.over-hero.open{background:rgba(246,244,239,.97);border-bottom-color:rgba(10,20,51,.08)}

/* ---------- hero ---------- */
.pp-hero{position:relative;background:#000;color:#fff;min-height:min(100vh,920px);display:flex;align-items:flex-end;overflow:hidden}
.pp-hero .bg{position:absolute;inset:0}
.pp-hero .bg video,.pp-hero .bg img{width:100%;height:100%;object-fit:cover}
.pp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.1) 40%,rgba(0,0,0,.75) 100%);pointer-events:none}
.pp-hero .in{position:relative;z-index:1;width:100%;text-align:center;padding-block:clamp(200px,40vh,600px) clamp(64px,7vw,100px);display:grid;justify-items:center;gap:28px}
.pp-hero h1{max-width:22ch}

/* ---------- section 2: intro + tab bar ---------- */
.pp-intro .row{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,5vw,80px);align-items:start}
.pp-intro .row > *{min-width:0}
.pp-intro .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.pp-tabbar{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px;position:relative}
.pp-tabbar::after{content:"";position:absolute;left:10%;right:10%;top:100%;height:60px;background:radial-gradient(ellipse at top,rgba(8,40,140,.20),transparent 70%);pointer-events:none}
.pp-tab{all:unset;cursor:pointer;text-align:center;padding:14px 10px;border:1px solid var(--pp-line);font:400 15px/1.4 var(--pp-sans);color:#999;background:var(--pp-bg)}
.pp-tab + .pp-tab{border-left:0}
.pp-tab[aria-selected="true"]{color:var(--pp-ink);border-color:var(--pp-accent);box-shadow:inset 0 0 0 1px var(--pp-accent)}
.pp-tab:focus-visible{outline:2px solid var(--pp-orange);outline-offset:2px}
.pp-shot{position:relative;margin-top:40px;border-radius:14px;overflow:hidden;aspect-ratio:16/7;background:var(--pp-dark)}
.pp-shot img{width:100%;height:100%;object-fit:cover}
.pp-shot .cap{position:absolute;left:0;right:0;bottom:0;padding:clamp(20px,3vw,40px);background:linear-gradient(0deg,rgba(8,18,46,.85),rgba(8,18,46,0));color:#fff;display:grid;gap:14px;justify-items:start}
.pp-shot .cap h3{font-size:clamp(22px,2.2vw,30px);max-width:26ch}
@media (max-width:820px){.pp-intro .row{grid-template-columns:1fr}.pp-shot{aspect-ratio:4/3}}
@media (max-width:520px){.pp-tabbar{grid-template-columns:1fr}.pp-tab + .pp-tab{border-left:1px solid var(--pp-line);border-top:0}}

/* ---------- section 3: dark contained panel of cards ---------- */
.pp-panel-sec{padding:clamp(40px,6vw,80px) clamp(8px,1.4vw,20px) clamp(80px,9vw,150px)}
.pp-panel{max-width:1400px;margin-inline:auto;border-radius:18px;color:#fff;overflow:hidden;
  background:radial-gradient(60% 50% at 95% 0%,rgba(8,40,140,.55),transparent 70%),radial-gradient(40% 40% at 0% 100%,rgba(242,140,18,.12),transparent 70%),var(--pp-dark);
  padding:clamp(48px,6vw,100px) clamp(20px,2.4vw,34px) clamp(48px,6vw,100px)}
.pp-panel h2{max-width:22ch}
.pp-panel .rule{height:1px;background:linear-gradient(90deg,rgba(248,145,0,.6),rgba(255,255,255,.15));margin:clamp(28px,3.5vw,48px) 0}
.pp-panel .pp-sub{color:#b3b3b3;max-width:44ch}
.pp-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:40px}
.pp-card{position:relative;grid-column:span 1;display:grid;grid-template-rows:auto 1fr;border-radius:15px;overflow:hidden;text-decoration:none;color:#b3b3b3;
  background:radial-gradient(90% 70% at 0% 100%,rgba(8,40,140,.35),transparent 70%),rgba(255,255,255,.05);min-height:420px;transition:background-color .2s}
.pp-card.lg{grid-column:span 2}
.pp-card:hover{background-color:rgba(255,255,255,.09)}
.pp-card .t{padding:26px 26px 18px;display:grid;gap:14px;align-content:start}
.pp-card .t h3{font-size:22px;line-height:1.3;color:var(--pp-bg);padding-right:40px}
.pp-card .t p{font-size:15px;line-height:1.6}
.pp-card .dot{position:absolute;top:24px;right:22px;width:28px;height:28px;border-radius:50%;background:var(--pp-orange);color:var(--pp-ink);display:grid;place-items:center}
.pp-card .im{position:relative;overflow:hidden;margin:0 0 0 0;border-top:1px solid rgba(255,255,255,.12)}
.pp-card .im img{width:100%;height:100%;object-fit:cover;opacity:.55;transition:opacity .3s,transform .6s}
.pp-card:hover .im img{opacity:.8;transform:scale(1.03)}
@media (max-width:1000px){.pp-cards{grid-template-columns:1fr 1fr}.pp-card.lg{grid-column:span 2}}
@media (max-width:620px){.pp-cards{grid-template-columns:1fr}.pp-card.lg{grid-column:auto}.pp-card{min-height:360px}}

/* ---------- section 4: stats with glow ---------- */
.pp-stats{text-align:center;position:relative}
.pp-stats h2{max-width:26ch;margin-inline:auto}
.glow-line{position:relative;height:1px;max-width:900px;margin:36px auto 0;background:linear-gradient(90deg,transparent,rgba(8,40,140,.45),transparent)}
.glow-line::after{content:"";position:absolute;left:10%;right:10%;top:0;height:70px;background:radial-gradient(ellipse at top,rgba(8,40,140,.16),transparent 70%)}
.glow-line.up::after{top:auto;bottom:0;background:radial-gradient(ellipse at bottom,rgba(8,40,140,.16),transparent 70%)}
.pp-stats ul{list-style:none;margin:56px auto;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:clamp(32px,8vw,120px)}
.pp-stats li{display:grid;gap:6px}
.pp-stats b{font:400 clamp(48px,4.6vw,65px)/1.1 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink)}
.pp-stats li span{font-size:15px;color:var(--pp-muted)}

/* ---------- section 5: list + image card ---------- */
.pp-head2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:start;margin-bottom:48px}
.pp-head2 > *{min-width:0}
@media (max-width:820px){.pp-head2{grid-template-columns:1fr}}
.pp-list{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,3vw,40px);align-items:start}
.pp-items{display:grid}
.pp-item{border-bottom:1px solid var(--pp-line)}
.pp-item button{all:unset;cursor:pointer;display:block;width:100%;padding:16px 0;font:400 22px/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink)}
.pp-item button:focus-visible{outline:2px solid var(--pp-orange);outline-offset:2px}
.pp-item p{display:none;font-size:15px;line-height:1.6;color:var(--pp-muted);padding-bottom:18px;max-width:38ch}
.pp-item.on{border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(8,40,140,.6),transparent) 1}
.pp-item.on p{display:block}
.pp-feature{position:relative;border-radius:10px;overflow:hidden;min-height:clamp(380px,40vw,560px);background:var(--pp-dark);color:#fff}
.pp-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pp-feature::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,18,46,.9) 0%,rgba(8,18,46,.55) 45%,rgba(8,18,46,.1) 100%);z-index:1}
.pp-feature .txt{position:relative;z-index:2;padding:clamp(22px,3vw,34px);display:grid;gap:16px;justify-items:start;max-width:520px}
.pp-feature h3{font-size:clamp(24px,2.2vw,28px);line-height:1.2;color:var(--pp-bg)}
.pp-feature p{font-size:15px;line-height:1.7;color:#e8e6e1}
@media (max-width:820px){.pp-list{grid-template-columns:1fr}}

/* ---------- section 6: story ---------- */
.pp-story{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,5vw,80px);align-items:start}
.pp-story .l{display:grid;gap:22px;justify-items:start;position:sticky;top:110px}
.pp-story ol{list-style:none;margin:0;padding:0;counter-reset:b;border-top:1px solid var(--pp-line)}
.pp-story li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;padding:22px 0;border-bottom:1px solid var(--pp-line)}
.pp-story li::before{counter-increment:b;content:"0" counter(b);font:400 20px/1.3 var(--pp-serif);color:var(--pp-accent)}
.pp-story h3{font-size:22px;line-height:1.3;margin-bottom:6px}
.pp-story p{color:var(--pp-muted);font-size:15px;line-height:1.7}
@media (max-width:820px){.pp-story{grid-template-columns:1fr}.pp-story .l{position:static}}

/* ---------- section 7: quote slider ---------- */
.pp-quotes{text-align:center}
.pp-slides{position:relative;max-width:980px;margin-inline:auto;min-height:220px}
.pp-slide{display:grid;gap:26px;justify-items:center}
.pp-slide[hidden]{display:none}
.pp-slide p{font:400 clamp(26px,2.6vw,36px)/1.25 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink);text-wrap:balance}
.pp-slide span{font-size:14px;color:var(--pp-muted);letter-spacing:.02em}
.pp-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:36px}
.pp-dots button{all:unset;cursor:pointer;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--pp-bg-2);color:var(--pp-ink)}
.pp-dots button.next{background:var(--pp-orange)}
.pp-dots button:focus-visible{outline:2px solid var(--pp-orange);outline-offset:2px}
.pp-dots .pos{font-size:13px;color:var(--pp-muted);min-width:44px;font-variant-numeric:tabular-nums}

/* ---------- section 8: evidence row ---------- */
.pp-aw .top-line{border-bottom:1px solid rgba(8,40,140,.35);padding-bottom:22px;margin-bottom:34px}
.pp-aw .row{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,56px);align-items:center}
.pp-aw .tiles{display:grid;grid-template-columns:repeat(5,1fr);border-left:1px solid var(--pp-line)}
.pp-aw .tiles div{padding:14px 18px;border-right:1px solid var(--pp-line);display:grid;gap:6px;align-content:center;min-height:120px}
.pp-aw .tiles b{font:400 17px/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100}
.pp-aw .tiles span{font-size:13px;color:var(--pp-muted)}
@media (max-width:1000px){.pp-aw .row{grid-template-columns:1fr}.pp-aw .tiles{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.pp-aw .tiles{grid-template-columns:1fr 1fr}}

/* ---------- section 9: insights ---------- */
.pp-ins-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:34px}
.pp-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pp-post{display:grid;gap:12px;text-decoration:none;color:var(--pp-ink)}
.pp-post .im{aspect-ratio:3/2;border-radius:6px;overflow:hidden;background:var(--pp-bg-2)}
.pp-post .im img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pp-post:hover .im img{transform:scale(1.04)}
.pp-post .ty{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-accent);padding-left:10px}
.pp-post .ti{font-size:18px;line-height:1.5;padding-left:10px}
@media (max-width:820px){.pp-posts{grid-template-columns:1fr}}

/* ---------- section 10: two-column FAQ ---------- */
.pp-faq .hd{text-align:center;display:grid;gap:16px;justify-items:center;margin-bottom:48px}
.pp-faq .hd .pp-sub{max-width:40ch}
.pp-faq .cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.pp-faq .col-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-accent);margin:0 0 6px 20px}
.pp-acc{border-bottom:1px solid var(--pp-line)}
.pp-acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;font:400 16px/1.5 var(--pp-serif);font-variation-settings:"SOFT" 100}
.pp-acc summary::-webkit-details-marker{display:none}
.pp-acc summary::after{content:"+";font:300 26px/1 var(--pp-sans);color:var(--pp-orange);flex:none}
.pp-acc[open]{background:var(--pp-bg-2);border:1px solid #d5dde9;border-radius:10px}
.pp-acc[open] summary::after{content:"–"}
.pp-acc > div{padding:0 20px 18px;color:var(--pp-muted);font-size:15px;line-height:1.7}
.pp-acc summary:focus-visible{outline:2px solid var(--pp-orange);outline-offset:-2px}
@media (max-width:820px){.pp-faq .cols{grid-template-columns:1fr}}

/* ---------- section 11: closing call with glow ---------- */
.pp-cta{text-align:center;position:relative;overflow:hidden;padding-bottom:clamp(140px,14vw,200px)}
.pp-cta::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-160px;height:360px;background:radial-gradient(50% 50% at 50% 50%,rgba(8,40,140,.38),rgba(242,140,18,.10) 60%,transparent 75%);pointer-events:none}
.pp-cta .in{position:relative;z-index:1;display:grid;gap:22px;justify-items:center}
.pp-cta h2{max-width:24ch}

/* ---------- footer (all pages) ---------- */
footer{background:var(--pp-dark);font-family:var(--pp-sans);font-size:13px;color:#999;padding-block:90px 40px}
footer .wrap{max-width:var(--pp-wrap)}
footer .fgrid{grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));border-top:1px solid rgba(248,145,0,.25);padding-top:48px}
footer h4{font-family:var(--pp-sans);font-weight:600;font-size:13px;letter-spacing:0;text-transform:none;color:#fff}
footer ul{gap:8px}
footer .about p{color:#999}
footer .contact-lines{color:#bbb;font-size:13px}
footer .legal{border-top:1px solid rgba(248,145,0,.25);font-size:12px;color:#999}
footer .legal nav a{text-decoration:underline;text-underline-offset:3px}
footer .social a{border-color:rgba(255,255,255,.18)}

/* hero video tint + header bar over the video, as on Propio */
.pp-hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,28,48,.35),rgba(6,28,48,.15) 45%,rgba(4,12,30,.55));mix-blend-mode:multiply}
.pp-hero::after{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 55%,rgba(0,0,0,.6) 100%)}
.top.over-hero:not(.scrolled):not(.open){background:rgba(8,26,44,.38);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,.18)}
.top.over-hero .wrap{height:84px}
.top.over-hero:not(.scrolled):not(.open) .btn-primary{background:var(--pp-bg);color:var(--pp-ink)}
@media (min-width:1061px){.top.over-hero .mm-btn,.top.over-hero .nav .mm-link{font-size:16px}.top.over-hero .nav-ext{font-size:15px}}
.top.over-hero.open .nav{top:84px}
.pp-hero .bg::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(18,78,110,.55),rgba(10,40,80,.45) 55%,rgba(20,90,110,.35));mix-blend-mode:screen;pointer-events:none}
.pp-hero .bg::after{z-index:1}

/* ---------- menu always visible at the top (no menu button) ---------- */
.menu-btn{display:none!important}
@media (max-width:1060px){
  .top .wrap,.top.over-hero .wrap{height:auto;flex-wrap:wrap;column-gap:12px;row-gap:0;padding-block:12px 0;position:relative}
  .top .nav{display:block!important;order:3;flex:0 0 100%;margin-left:0;position:static!important;background:none!important;border:0!important;padding:0!important;max-height:none!important;overflow:visible!important}
  .top .mm-list{flex-direction:row!important;flex-wrap:nowrap;overflow-x:auto;gap:2px;padding:6px 0 8px;margin-inline:-8px;scrollbar-width:none}
  .top .mm-list::-webkit-scrollbar{display:none}
  .top .mm{position:static}
  .top .mm-panel{position:absolute!important;top:100%;left:var(--gutter,16px);display:block!important}
  .top .mm:not(.open) > .mm-panel{visibility:hidden;opacity:0}
  .top .mm-inner{flex-direction:row;border:1px solid var(--line);box-shadow:var(--shadow);padding:18px}
  .top .mm-btn,.top .nav .mm-link{width:auto!important;border:0!important;padding:8px 10px!important;border-radius:8px!important;font-size:14px}
  .top-actions{margin-left:auto}
  .top-actions .nav-ext{display:inline-flex!important}
  .top .signin-wrap{display:none}
  .mobile-only{display:none!important}
}
@media (max-width:700px){
  .top-actions .nav-ext{display:none!important}
  .mobile-only{display:list-item!important}
  .top .btn-primary{display:inline-flex!important;font-size:12px;padding:5px 5px 5px 12px}
  .top .btn-primary .arrow{width:22px;height:22px}
  .top .logo img{height:28px}
  .top .mm-inner{min-width:0;max-width:calc(100vw - 32px)}
  .mm-col{min-width:200px}
}
@media (max-width:420px){.top .btn-primary{font-size:0;gap:0;padding:5px}.top .btn-primary .arrow{font-size:13px}}
@media (max-width:1060px){.top .nav{min-width:0;width:100%}.top .nav .mobile-only:last-child{display:none!important}}

/* =====================================================================
   Inner pages — enterprise layer
   ===================================================================== */
.pp-phero{padding-block:clamp(64px,8vw,120px) 0}
.pp-crumb{font-size:13px;color:var(--pp-muted);margin-bottom:28px}
.pp-crumb a{color:inherit;text-decoration:none}
.pp-crumb a:hover{color:var(--pp-ink)}
.pp-phero .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end}
.pp-phero h1{font-size:clamp(40px,5vw,68px);line-height:1.06;max-width:16ch}
.pp-phero .side{display:grid;gap:26px;justify-items:start}
.pp-phero .side .btns{display:flex;flex-wrap:wrap;gap:12px}
.pp-media{margin-top:clamp(48px,6vw,80px);border-radius:14px;overflow:hidden;aspect-ratio:21/9;background:var(--pp-dark)}
.pp-media img,.pp-media video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:820px){.pp-phero .grid{grid-template-columns:1fr}.pp-media{aspect-ratio:4/3}}
.pp-sub a{color:var(--pp-ink);text-underline-offset:3px}

/* heading block reused across sections */
.pp-h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:start;margin-bottom:clamp(40px,5vw,64px)}
.pp-h > *{min-width:0}
.pp-h .pp-sub{max-width:52ch}
.pp-h.one{grid-template-columns:1fr}
@media (max-width:820px){.pp-h{grid-template-columns:1fr}}

/* text columns separated by rules */
.pp-cols{display:grid;grid-template-columns:repeat(var(--c,4),minmax(0,1fr));border-top:1px solid var(--pp-line)}
.pp-cols > div{padding:28px 28px 8px 0;display:grid;gap:12px;align-content:start}
.pp-cols > div + div{padding-left:28px;border-left:1px solid var(--pp-line)}
.pp-cols h3{font-size:22px;line-height:1.25}
.pp-cols p{font-size:15px;line-height:1.7;color:var(--pp-muted)}
@media (max-width:980px){.pp-cols{grid-template-columns:1fr 1fr}.pp-cols > div:nth-child(odd){padding-left:0;border-left:0}.pp-cols > div:nth-child(n+3){border-top:1px solid var(--pp-line)}}
@media (max-width:600px){.pp-cols{grid-template-columns:1fr}.pp-cols > div{padding-left:0!important;border-left:0!important}.pp-cols > div + div{border-top:1px solid var(--pp-line)}}

/* rows: title left, text right (light and dark) */
.pp-rows{border-top:1px solid var(--pp-line)}
.pp-rows > div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(16px,4vw,64px);padding:28px 0;border-bottom:1px solid var(--pp-line)}
.pp-rows h3{font-size:clamp(20px,1.8vw,24px);line-height:1.25}
.pp-rows p{font-size:16px;line-height:1.7;color:var(--pp-muted);max-width:60ch}
.pp-panel .pp-rows,.pp-panel .pp-rows > div{border-color:rgba(255,255,255,.14)}
.pp-panel .pp-rows h3{color:var(--pp-bg)}
.pp-panel .pp-rows p{color:#b8bcc8}
@media (max-width:700px){.pp-rows > div{grid-template-columns:1fr;gap:8px}}

/* steps: a real sequence */
.pp-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:clamp(20px,3vw,40px);counter-reset:st}
.pp-steps li{display:grid;gap:12px;align-content:start;padding-top:22px;border-top:1px solid var(--pp-ink)}
.pp-steps li::before{counter-increment:st;content:"Step " counter(st);font-size:13px;color:var(--pp-muted)}
.pp-steps h3{font-size:22px;line-height:1.25}
.pp-steps p{font-size:15px;line-height:1.7;color:var(--pp-muted)}
@media (max-width:900px){.pp-steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pp-steps{grid-template-columns:1fr}}

/* image-topped columns */
.pp-feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,32px)}
.pp-feats article{display:grid;gap:18px;align-content:start}
.pp-feats .im{aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--pp-bg-2)}
.pp-feats .im img{width:100%;height:100%;object-fit:cover}
.pp-feats h3{font-size:24px;line-height:1.2}
.pp-feats ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--pp-line)}
.pp-feats li{padding:12px 0;border-bottom:1px solid var(--pp-line);font-size:15px;line-height:1.55;color:var(--pp-muted)}
@media (max-width:900px){.pp-feats{grid-template-columns:1fr}}

/* numbered directory (the site numbers its 16 categories) */
.pp-dir{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px)}
.pp-dir h3{font-size:26px;line-height:1.2;margin-bottom:10px}
.pp-dir .pp-sub{font-size:16px;margin-bottom:24px;max-width:48ch}
.pp-dir ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--pp-line)}
.pp-dir li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding:15px 0;border-bottom:1px solid var(--pp-line);font-size:16px}
.pp-dir li span{color:var(--pp-muted);font-size:13px;font-variant-numeric:tabular-nums;padding-top:3px}
@media (max-width:820px){.pp-dir{grid-template-columns:1fr}}

/* big statement */
.pp-state{font:400 clamp(30px,3.6vw,48px)/1.18 var(--pp-serif);font-variation-settings:"SOFT" 100;max-width:26ch;text-wrap:balance}
.pp-note{font:400 clamp(20px,1.8vw,24px)/1.45 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink);max-width:40ch}

/* roles */
.pp-filter{display:flex;flex-wrap:wrap;gap:4px 22px;margin-bottom:18px;border-bottom:1px solid var(--pp-line)}
.pp-filter .chip{all:unset;cursor:pointer;padding:10px 0;margin-bottom:-1px;font-size:14px;color:var(--pp-muted);border-bottom:2px solid transparent}
.pp-filter .chip[aria-pressed="true"]{color:var(--pp-ink);border-bottom-color:var(--pp-ink)}
.pp-filter .chip:focus-visible{outline:2px solid var(--pp-orange);outline-offset:2px}
.pp-filter .chip .n{margin-left:6px;color:var(--pp-muted);font-size:12px}
.pp-role{border-bottom:1px solid var(--pp-line)}
.pp-role summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;gap:20px;align-items:center;padding:20px 0}
.pp-role summary::-webkit-details-marker{display:none}
.pp-role summary::after{content:"+";font:300 24px/1 var(--pp-sans);color:var(--pp-orange);text-align:right}
.pp-role[open] summary::after{content:"–"}
.pp-role h3{font-size:20px;line-height:1.3}
.pp-role .meta{font-size:13px;color:var(--pp-muted);margin-top:4px}
.pp-role .code{font-size:12px;color:var(--pp-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.pp-role .body{padding:0 0 26px;display:grid;gap:16px;max-width:70ch}
.pp-role .body p{font-size:15px;line-height:1.7;color:var(--pp-muted)}
.pp-role ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:15px;color:var(--pp-ink)}
.pp-role[hidden]{display:none}
@media (max-width:600px){.pp-role summary{grid-template-columns:minmax(0,1fr) 24px}.pp-role .code{display:none}}

/* contact */
.pp-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.pp-contact > *{min-width:0}
.pp-contact h1{font-size:clamp(38px,4.4vw,60px);line-height:1.08}
.pp-contact h3{font-size:20px;margin-bottom:12px}
.pp-contact .next{list-style:none;margin:0;padding:0;border-top:1px solid var(--pp-line);counter-reset:nx}
.pp-contact .next li{display:grid;grid-template-columns:36px minmax(0,1fr);padding:14px 0;border-bottom:1px solid var(--pp-line);font-size:15px;line-height:1.6;color:var(--pp-muted)}
.pp-contact .next li::before{counter-increment:nx;content:counter(nx);font:400 17px/1.5 var(--pp-serif);color:var(--pp-ink)}
.pp-contact dl{margin:0;display:grid;gap:14px}
.pp-contact dt{font-size:12px;color:var(--pp-muted)}
.pp-contact dd{margin:2px 0 0;font-size:16px;user-select:all}
.pp-form{background:#fff;border:1px solid var(--pp-line);border-radius:14px;padding:clamp(22px,3vw,40px);display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.pp-form .full{grid-column:1/-1}
.pp-form .field{display:grid;gap:7px;min-width:0}
.pp-form label{font-size:13px;color:var(--pp-ink)}
.pp-form label span{color:var(--pp-muted)}
.pp-form input,.pp-form select,.pp-form textarea{width:100%;font:400 15px/1.4 var(--pp-sans);color:var(--pp-ink);background:var(--pp-bg);border:1px solid var(--pp-line);border-radius:8px;padding:12px 14px}
.pp-form textarea{min-height:120px;resize:vertical}
.pp-form input:focus,.pp-form select:focus,.pp-form textarea:focus{outline:none;border-color:var(--pp-accent);box-shadow:0 0 0 3px rgba(8,40,140,.12)}
.pp-form .small{font-size:13px;line-height:1.6;color:var(--pp-muted)}
.pp-form button.pbtn{cursor:pointer;justify-self:start}
.pp-form .form-status{grid-column:1/-1;padding:14px 16px;border-radius:8px;background:var(--pp-bg);border:1px solid var(--pp-line);font-size:14px}
@media (max-width:900px){.pp-contact{grid-template-columns:1fr}}
@media (max-width:560px){.pp-form{grid-template-columns:1fr}}
.pp-form label{font-weight:500}

/* ---------- header: logo left, every menu item grouped on the right ---------- */
@media (min-width:1061px){
  .top .nav{margin-left:auto}
  .top .top-actions{margin-left:0}
  .top .wrap{gap:4px}
  .top .mm-list{gap:0}
  .top .nav-ext,.top .nav .mm-link,.top .mm-btn{padding:10px 11px}
  .top .top-actions .btn-primary{margin-left:10px}
  .top .mm-panel{left:auto;right:-12px}
}
@media (max-width:1060px){
  .top .nav{order:3}
  .top .mm-list{justify-content:flex-end}
  .top .mm-panel{left:auto!important;right:var(--gutter,16px)}
}
@media (max-width:700px){
  .top .mm-list{justify-content:flex-start}
  .top .mm-panel{right:auto!important;left:var(--gutter,16px)!important}
}
@media (min-width:1061px) and (max-width:1280px){
  .top .wrap{padding-inline:20px}
  .top .nav-ext,.top .nav .mm-link,.top .mm-btn{padding:8px 7px;font-size:13px!important}
  .top .top-actions .btn-primary{margin-left:6px;font-size:12px;padding:6px 6px 6px 12px}
  .top .logo img{height:30px}
}
/* hero is now people footage: no colour wash, just a gentle darkening for the headline */
.pp-hero .bg::before{display:none}
.pp-hero .bg::after{background:linear-gradient(180deg,rgba(4,10,30,.45) 0%,rgba(4,10,30,.15) 35%,rgba(4,10,30,.35) 65%,rgba(4,10,30,.8) 100%);mix-blend-mode:normal}

/* =====================================================================
   DEFRILEX BRAND PALETTE (from defrilex-ls.com and the logo)
   navy #0b2b8d · navy-700 #0a2576 · navy-800 #081d5e · navy-900 #061646 · navy-950 #050f30
   orange #f89100 · orange-600 #db7e00 · ink #0a1124 · ink-2 #39425e · ink-3 #6b748f
   line #e6e9f2 · line-strong #c8cee0 · paper #ffffff · paper-2 #fafbfd · paper-3 #f4f6fb
   plus glassmorphism built on the navy
   ===================================================================== */
:root{
  --pp-bg:#fafbfd; --pp-bg-2:#f0f2f8; --pp-ink:#0a1124; --pp-muted:#6b748f; --pp-line:#e6e9f2;
  --pp-dark:#061646; --pp-dark-2:#0a2576; --pp-accent:#08288c; --pp-accent-dark:#f89100; --pp-orange:#f89100;
  --dfx-navy:#08288c; --dfx-navy-700:#0a2576; --dfx-navy-800:#081d5e; --dfx-navy-900:#061646; --dfx-navy-950:#050f30;
  --dfx-sky:#08288c; --dfx-orange:#f89100; --dfx-orange-600:#db7e00; --dfx-line-strong:#c8cee0;
  --glass-light:rgba(255,255,255,.72); --glass-dark:rgba(6,22,70,.42); --glass-edge:rgba(255,255,255,.16);
  /* older components share the same palette */
  --bg:#ffffff; --soft:#f4f6fb; --ink:#0a1124; --muted:#6b748f; --line:#e6e9f2;
  --navy:#08288c; --navy-deep:#061646; --orange:#f89100; --orange-soft:#ffb14a;
}
body{background:var(--pp-bg)}
.pbtn{border-color:var(--dfx-navy);background:#fff;color:var(--pp-ink)}
.pbtn:hover{background:#f4f6fb}
.pbtn.plain{border-color:var(--dfx-line-strong);background:transparent}
.pbtn .dot,.pp-card .dot,.top .btn-primary .arrow,.pp-dots button.next{background:var(--dfx-orange);color:#fff}

/* ---------- glass header ---------- */
.top{background:var(--glass-light);backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);border-bottom:1px solid rgba(8,40,140,.08)}
.top.over-hero.scrolled,.top.over-hero.open{background:var(--glass-light);border-bottom-color:rgba(8,40,140,.08)}
.top.over-hero:not(.scrolled):not(.open){background:rgba(6,22,70,.28);border-bottom:1px solid var(--glass-edge)}
.top .btn-primary{background:#fff;border-color:var(--dfx-navy);color:var(--pp-ink)}
.top.over-hero:not(.scrolled):not(.open) .btn-primary{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(10px)}
.mm-inner{background:rgba(255,255,255,.86);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);border-color:rgba(8,40,140,.10);box-shadow:0 24px 60px rgba(6,22,70,.16)}
.mm[data-current] > .mm-btn,.nav .mm-link[aria-current]{color:var(--dfx-navy)}

/* ---------- hero: navy grade + glass button ---------- */
.pp-hero{background:var(--dfx-navy-950)}
.pp-hero .bg::after{background:linear-gradient(180deg,rgba(5,15,48,.55) 0%,rgba(6,22,70,.18) 38%,rgba(6,22,70,.4) 65%,rgba(5,15,48,.9) 100%)}
.pp-hero .pbtn{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.pp-hero .pbtn:hover{background:rgba(255,255,255,.22)}

/* ---------- tabs and image captions ---------- */
.pp-tab[aria-selected="true"]{border-color:var(--dfx-navy);box-shadow:inset 0 0 0 1px var(--dfx-navy)}
.pp-tabbar::after{background:radial-gradient(ellipse at top,rgba(8,40,140,.18),transparent 70%)}
.pp-shot .cap{left:clamp(14px,2vw,24px);right:auto;bottom:clamp(14px,2vw,24px);max-width:min(560px,calc(100% - 28px));border-radius:14px;background:var(--glass-dark);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid var(--glass-edge)}

/* ---------- navy panel with glass cards ---------- */
.pp-panel{background:
  radial-gradient(55% 45% at 95% 0%,rgba(8,40,140,.45),transparent 70%),
  radial-gradient(40% 40% at 0% 100%,rgba(248,145,0,.14),transparent 70%),
  linear-gradient(160deg,var(--dfx-navy-800),var(--dfx-navy-950))}
.pp-panel .rule{background:linear-gradient(90deg,rgba(248,145,0,.7),rgba(255,255,255,.12))}
.pp-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.pp-card:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}
.pp-card .im img{opacity:.72}
.pp-card .im::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,70,.35),rgba(6,22,70,0) 40%)}

/* ---------- stats glow in Defrilex blue ---------- */
.glow-line{background:linear-gradient(90deg,transparent,rgba(8,40,140,.5),transparent)}
.glow-line::after{background:radial-gradient(ellipse at top,rgba(8,40,140,.18),transparent 70%)}
.glow-line.up::after{background:radial-gradient(ellipse at bottom,rgba(8,40,140,.18),transparent 70%)}
.pp-stats b{color:var(--dfx-navy)}

/* ---------- list + image card: glass text box ---------- */
.pp-item.on{border-image:linear-gradient(90deg,transparent,rgba(8,40,140,.7),transparent) 1}
.pp-feature::before{background:linear-gradient(100deg,rgba(6,22,70,.55) 0%,rgba(6,22,70,.2) 55%,rgba(6,22,70,0) 100%)}
.pp-feature .txt{margin:clamp(14px,2vw,24px);padding:clamp(20px,2.4vw,28px);border-radius:14px;background:var(--glass-dark);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid var(--glass-edge)}

/* ---------- story, quotes, evidence, insights ---------- */
.pp-story li::before{color:var(--dfx-orange-600)}
.pp-aw .top-line{border-bottom-color:rgba(8,40,140,.3)}
.pp-post .ty{color:var(--dfx-navy)}
.pp-dots button{background:var(--pp-bg-2)}

/* ---------- FAQ ---------- */
.pp-acc[open]{background:#fff;border-color:var(--dfx-line-strong);box-shadow:0 10px 30px rgba(6,22,70,.06)}
.pp-acc summary::after{color:var(--dfx-orange)}
.pp-faq .col-label{color:var(--dfx-navy)}

/* ---------- closing glow and footer ---------- */
.pp-cta::after{background:radial-gradient(50% 50% at 50% 50%,rgba(8,40,140,.34),rgba(248,145,0,.12) 60%,transparent 75%)}
footer{background:linear-gradient(180deg,var(--dfx-navy-900),var(--dfx-navy-950))}
footer .fgrid,footer .legal{border-top-color:rgba(248,145,0,.28)}

/* ---------- inner pages ---------- */
.pp-steps li{border-top-color:var(--dfx-navy)}
.pp-filter .chip[aria-pressed="true"]{color:var(--dfx-navy);border-bottom-color:var(--dfx-navy)}
.pp-role summary::after{color:var(--dfx-orange)}
.pp-media{background:var(--dfx-navy-900)}
.pp-form{background:rgba(255,255,255,.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-color:var(--pp-line);box-shadow:0 20px 50px rgba(6,22,70,.06)}
.pp-form input,.pp-form select,.pp-form textarea{background:#fff;border-color:var(--dfx-line-strong)}
.pp-form input:focus,.pp-form select:focus,.pp-form textarea:focus{border-color:var(--dfx-navy);box-shadow:0 0 0 3px rgba(8,40,140,.14)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--dfx-orange)}
.pp-panel .acc,.pp-feature .acc,footer .acc{color:var(--dfx-orange)}

/* =====================================================================
   DEFRILEX LANDING — distinct composition (dx-)
   ===================================================================== */
/* hero: left headline, glass card right, tagline strip */
.dx-hero{align-items:stretch;min-height:min(100vh,900px)}
.dx-hero .in{text-align:left;justify-items:stretch;padding-block:clamp(150px,22vh,240px) 0;display:grid;grid-template-rows:1fr auto;gap:0}
.dx-hero .row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:end;padding-bottom:clamp(40px,6vw,72px)}
.dx-hero h1{max-width:14ch;text-align:left}
.dx-hero .glass{background:rgba(6,22,70,.38);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:clamp(20px,2.4vw,30px);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);display:grid;gap:22px}
.dx-hero .glass p{font-size:16px;line-height:1.7;color:#e6e9f2}
.dx-hero .glass .btns{display:flex;flex-wrap:wrap;gap:10px}
.pbtn.solid{background:var(--dfx-orange);border-color:var(--dfx-orange);color:#1a1000}
.pbtn.solid .dot{background:#fff;color:var(--dfx-orange)}
.pbtn.solid:hover{background:#ffa21f}
.dx-hero .pbtn.solid{backdrop-filter:none}
.dx-strip{border-top:1px solid rgba(255,255,255,.16);background:rgba(5,15,48,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;white-space:nowrap}
.dx-strip .track{display:inline-flex;gap:0;padding:16px 0;animation:dxmarq 40s linear infinite}
.dx-strip span{font-size:14px;color:#e6e9f2;padding:0 22px;display:inline-flex;align-items:center;gap:22px}
.dx-strip span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--dfx-orange)}
@keyframes dxmarq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.dx-strip .track{animation:none}}
@media (max-width:860px){.dx-hero .row{grid-template-columns:1fr}}

/* intro: media left, vertical tabs right */
.dx-intro .grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:stretch}
.dx-intro .grid > *{min-width:0}
.dx-intro .media{position:relative;border-radius:18px;overflow:hidden;min-height:clamp(320px,38vw,520px);background:var(--dfx-navy-900)}
.dx-intro .media > div{position:absolute;inset:0}
.dx-intro .media img,.dx-intro .media video{width:100%;height:100%;object-fit:cover}
.dx-intro .side{display:grid;gap:22px;align-content:start}
.dx-vtabs{display:grid;border-top:1px solid var(--pp-line);margin-top:8px}
.dx-vtab{all:unset;cursor:pointer;display:grid;gap:6px;padding:18px 18px 18px 20px;border-bottom:1px solid var(--pp-line);border-left:3px solid transparent;transition:background .2s,border-color .2s}
.dx-vtab b{font:400 21px/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink)}
.dx-vtab span{font-size:14px;color:var(--pp-muted);line-height:1.55}
.dx-vtab[aria-selected="true"]{border-left-color:var(--dfx-orange);background:#fff}
.dx-vtab[aria-selected="true"] b{color:var(--dfx-navy)}
.dx-vtab:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:-2px}
@media (max-width:860px){.dx-intro .grid{grid-template-columns:1fr}}

/* talent: light bento of photo tiles with glass captions */
.dx-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(210px,19vw,280px);gap:14px;grid-auto-flow:dense}
.dx-tile{position:relative;border-radius:16px;overflow:hidden;text-decoration:none;color:#fff;background:var(--dfx-navy-900)}
.dx-tile.big{grid-column:span 2;grid-row:span 2}
.dx-tile.wide{grid-column:span 2}
.dx-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.dx-tile:hover img{transform:scale(1.04)}
.dx-tile::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,70,0) 35%,rgba(6,22,70,.55) 100%);z-index:1}
.dx-tile .cap{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;padding:14px 16px;border-radius:12px;background:rgba(6,22,70,.45);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center}
.dx-tile .cap h3{font-size:18px;line-height:1.25;color:#fff}
.dx-tile .cap p{grid-column:1;font-size:13px;line-height:1.5;color:#dfe3ef}
.dx-tile .cap .dot{grid-row:1 / span 2;grid-column:2;width:30px;height:30px;border-radius:50%;background:var(--dfx-orange);color:#fff;display:grid;place-items:center}
.dx-tile.big .cap h3{font-size:24px}
@media (max-width:980px){.dx-bento{grid-template-columns:1fr 1fr}.dx-tile.big{grid-row:span 2}}
@media (max-width:560px){.dx-bento{grid-template-columns:1fr;grid-auto-rows:240px}.dx-tile.big,.dx-tile.wide{grid-column:auto;grid-row:auto}}

/* stats: navy band, heading left, glass tiles right */
.dx-band{background:radial-gradient(50% 80% at 100% 0%,rgba(8,40,140,.9),transparent 70%),linear-gradient(160deg,var(--dfx-navy-800),var(--dfx-navy-950));color:#fff;padding-block:clamp(72px,8vw,120px)}
.dx-band .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:center}
.dx-band .grid > *{min-width:0}
.dx-band h2 .acc{color:var(--dfx-orange)}
.dx-band .pp-sub{color:#c8cee0}
.dx-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dx-stats div{padding:26px 22px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:grid;gap:8px}
.dx-stats b{font:400 clamp(40px,4vw,56px)/1 var(--pp-serif);font-variation-settings:"SOFT" 100;color:#fff}
.dx-stats span{font-size:14px;color:#c8cee0;line-height:1.5}
@media (max-width:860px){.dx-band .grid{grid-template-columns:1fr}.dx-stats{grid-template-columns:1fr}}

/* coverage problem: image left, list right */
.dx-rev .pp-list{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
.dx-rev .pp-feature{order:-1}
@media (max-width:820px){.dx-rev .pp-list{grid-template-columns:1fr}.dx-rev .pp-feature{order:0}}

/* benefits: list left, heading right */
.dx-story{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.dx-story ol{order:1}
.dx-story .l{order:2}
@media (max-width:820px){.dx-story ol{order:2}.dx-story .l{order:1}}

/* quote: photo left, quote left-aligned right */
.dx-quote .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,80px);align-items:center}
.dx-quote .grid > *{min-width:0}
.dx-quote .ph{border-radius:18px;overflow:hidden;aspect-ratio:4/5;background:var(--dfx-navy-900)}
.dx-quote .ph video,.dx-quote .ph img{width:100%;height:100%;object-fit:cover}
.dx-quote .mark{font:400 110px/0.6 var(--pp-serif);color:var(--dfx-orange);height:44px;display:block}
.dx-quote .pp-slides{margin:0;text-align:left;min-height:200px}
.dx-quote .pp-slide{justify-items:start}
.dx-quote .pp-dots{justify-content:flex-start}
@media (max-width:860px){.dx-quote .grid{grid-template-columns:1fr}.dx-quote .ph{aspect-ratio:16/10}}

/* proof: five cards with a navy top edge */
.dx-proof{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.dx-proof div{background:#fff;border:1px solid var(--pp-line);border-top:3px solid var(--dfx-navy);border-radius:12px;padding:22px 18px;display:grid;gap:8px;align-content:start}
.dx-proof b{font:400 18px/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100}
.dx-proof span{font-size:13px;color:var(--pp-muted)}
@media (max-width:980px){.dx-proof{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.dx-proof{grid-template-columns:1fr}}

/* explore: one large + two stacked */
.dx-ex{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px}
.dx-ex .stack2{display:grid;gap:20px}
.dx-ex a{position:relative;display:block;border-radius:16px;overflow:hidden;min-height:240px;color:#fff;text-decoration:none;background:var(--dfx-navy-900)}
.dx-ex a.lg{min-height:500px}
.dx-ex img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.dx-ex a:hover img{transform:scale(1.04)}
.dx-ex .cap{position:absolute;left:14px;right:14px;bottom:14px;padding:16px 18px;border-radius:12px;background:rgba(6,22,70,.45);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:grid;gap:6px}
.dx-ex .ty{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ffb14a}
.dx-ex .ti{font:400 20px/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100}
.dx-ex a.lg .ti{font-size:28px}
@media (max-width:860px){.dx-ex{grid-template-columns:1fr}.dx-ex a.lg{min-height:340px}}

/* FAQ: heading and tabs left, answers right */
.dx-faq .grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,5vw,80px);align-items:start}
.dx-faq .grid > *{min-width:0}
.dx-faq .l{position:sticky;top:110px;display:grid;gap:22px;justify-items:start}
.dx-seg{display:inline-flex;padding:4px;border-radius:40px;background:var(--pp-bg-2);border:1px solid var(--pp-line)}
.dx-seg button{all:unset;cursor:pointer;padding:9px 18px;border-radius:40px;font-size:14px;color:var(--pp-muted)}
.dx-seg button[aria-selected="true"]{background:var(--dfx-navy);color:#fff}
.dx-seg button:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:2px}
@media (max-width:860px){.dx-faq .grid{grid-template-columns:1fr}.dx-faq .l{position:static}}

/* closing: navy band, headline left, button right */
.dx-close{background:linear-gradient(120deg,var(--dfx-navy-900),var(--dfx-navy) 120%);color:#fff;padding-block:clamp(64px,7vw,100px);border-top:3px solid var(--dfx-orange)}
.dx-close .grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(24px,4vw,64px);align-items:end}
.dx-close .grid > *{min-width:0}
.dx-close h2 .acc{color:var(--dfx-orange)}
.dx-close .pp-sub{color:#c8cee0;margin-top:18px;max-width:60ch}
.dx-close .r{display:grid;justify-items:end}
@media (max-width:860px){.dx-close .grid{grid-template-columns:1fr}.dx-close .r{justify-items:start}}

/* position-only changes for the landing page */
.pp-hero-left .in{text-align:left;justify-items:start}
.pp-hero-left h1{margin:0}
.pp-intro .row{grid-template-columns:5fr 7fr}
.pp-aw-rev .row{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
.pp-aw-rev .row > p{order:2}
@media (max-width:1000px){.pp-aw-rev .row{grid-template-columns:1fr}.pp-aw-rev .row > p{order:0}}
@media (max-width:820px){.pp-intro .row{grid-template-columns:1fr}}

/* footer in the Defrilex logo blue; closing section on plain white */
footer{background:#08288c;color:#c8d2f0}
footer .about p,footer .legal,footer .contact-lines{color:#c8d2f0}
footer a:hover{color:#fff}
footer .fgrid,footer .legal{border-top-color:rgba(255,255,255,.22)}
footer .social a{border-color:rgba(255,255,255,.3)}
.pp-cta{background:#ffffff;padding-bottom:clamp(80px,9vw,150px)}
.pp-cta::after{display:none}

/* =====================================================================
   Closing section like defrilex.com: deep navy, lined eyebrow, large white sans
   Footer: white
   ===================================================================== */
.pp-cta{background:
  radial-gradient(60% 90% at 0% 30%,rgba(60,20,50,.55),transparent 70%),
  radial-gradient(70% 90% at 100% 100%,rgba(8,40,140,.55),transparent 70%),
  linear-gradient(180deg,#0b1030 0%,#0a1650 100%);
  color:#fff;padding-block:clamp(110px,14vw,200px)}
.pp-cta::after{display:none}
.pp-cta .in{gap:28px}
.cta-eyebrow{display:inline-flex;align-items:center;gap:18px;font:500 14px/1 "Inter",var(--pp-sans);letter-spacing:.32em;text-transform:uppercase;color:#1f47d6;margin:0}
.cta-eyebrow::before{content:"";width:36px;height:1px;background:#1f47d6}
.pp-cta h2.pp-h2{font-family:"Inter",var(--pp-sans);font-weight:500;letter-spacing:-.035em;font-variation-settings:normal;font-size:clamp(40px,6.2vw,92px);line-height:1.05;color:#fff;max-width:17ch}
.pp-cta h2 .acc{color:#fff}
.pp-cta .pp-sub{color:#b9c2de;max-width:62ch}
.pp-cta .pbtn{background:#08288c;border-color:#08288c;color:#fff;font-family:"Inter",var(--pp-sans);letter-spacing:.12em;text-transform:uppercase;font-size:13px;padding:14px 14px 14px 26px}
.pp-cta .pbtn .dot{background:transparent;color:#fff;width:auto}
.pp-cta .pbtn:hover{background:#0a31a8}

footer{background:#ffffff;color:#39425e;border-top:1px solid #e6e9f2}
footer .about p,footer .legal,footer .contact-lines,footer a{color:#39425e}
footer h4{color:#0a1124}
footer a:hover{color:#08288c}
footer img.flogo{filter:none}
footer .fgrid,footer .legal{border-top-color:#e6e9f2}
footer .social a{border-color:#c8cee0;color:#08288c}
footer .social a:hover{background:#f4f6fb}

/* "Your brand" section, option J: centered heading, round portraits */
.pp-j{border-top:1px solid var(--pp-line)}
.pp-j-head{display:grid;gap:22px;justify-items:center;text-align:center;max-width:820px;margin:0 auto clamp(48px,6vw,72px)}
.pp-j-head .pp-sub{margin-inline:auto}
.pp-j-head .btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.pp-j-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,56px);text-align:center}
.pp-j-grid a{display:grid;gap:12px;justify-items:center;text-decoration:none;color:var(--pp-ink)}
.pp-j-grid .im{width:clamp(150px,15vw,200px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:4px solid #fff;box-shadow:0 0 0 1px var(--pp-line),0 14px 34px rgba(8,40,140,.10);transition:transform .3s}
.pp-j-grid a:hover .im{transform:translateY(-4px)}
.pp-j-grid img{width:100%;height:100%;object-fit:cover}
.pp-j-grid .k{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#08288c;font-weight:600;margin-top:6px}
.pp-j-grid h3{font-size:20px;line-height:1.35;max-width:24ch}
.pp-j-grid .more{font-size:14px;color:#08288c;font-weight:500}
@media (max-width:760px){.pp-j-grid{grid-template-columns:1fr}}

/* ===== Languages page ===== */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lx-hero{padding-bottom:clamp(48px,6vw,80px)}
.lx-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(48px,6vw,80px) 0 0;border-top:1px solid var(--pp-line)}
.lx-facts > div{padding:24px 24px 0 0;display:grid;gap:6px}
.lx-facts > div + div{padding-left:24px;border-left:1px solid var(--pp-line)}
.lx-facts dt{font:400 clamp(36px,3.6vw,52px)/1 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--dfx-navy)}
.lx-facts dd{margin:0;font-size:14px;line-height:1.45;color:var(--pp-muted);max-width:22ch}
@media (max-width:820px){.lx-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.lx-facts > div:nth-child(3){padding-left:0;border-left:0}.lx-facts > div:nth-child(n+3){margin-top:8px}}

.lx-hotsec{border-top:1px solid var(--pp-line)}
.lx-hot{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.lx-hot button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:6px;align-content:end;min-height:180px;padding:22px;border:1px solid var(--pp-line);border-radius:14px;background:#fff;transition:border-color .2s,transform .2s,box-shadow .2s}
.lx-hot button:hover{border-color:var(--dfx-navy);transform:translateY(-2px);box-shadow:0 12px 28px rgba(8,40,140,.08)}
.lx-hot button:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:3px}
.lx-hot .nat{font:400 clamp(28px,2.6vw,38px)/1.15 var(--pp-serif);color:var(--dfx-navy);margin-bottom:auto;text-align:left}
.lx-hot b{font-weight:500;font-size:16px;color:var(--pp-ink)}
.lx-hot i{font-style:normal;font-size:13px;color:var(--pp-muted)}
.lx-hot i::after{content:" →";color:var(--dfx-orange)}
@media (max-width:1000px){.lx-hot{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.lx-hot{grid-template-columns:repeat(2,minmax(0,1fr))}.lx-hot button{min-height:140px;padding:18px}}

.lx-dirsec{border-top:1px solid var(--pp-line);scroll-margin-top:72px}
.lx{display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.lx-side{position:sticky;top:calc(var(--hdr,72px) + 24px);display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.lx-search{display:flex;align-items:center;gap:10px;padding:0 16px;height:50px;border:1px solid var(--pp-line);border-radius:12px;background:#fff;color:var(--pp-muted);transition:border-color .2s,box-shadow .2s}
.lx-search:focus-within{border-color:var(--dfx-navy);box-shadow:0 0 0 3px rgba(8,40,140,.12)}
.lx-search input{all:unset;flex:1;min-width:0;font:400 16px/1 var(--pp-sans);color:var(--pp-ink)}
.lx-search input::placeholder{color:#8b90a0}
.lx-search input::-webkit-search-cancel-button{cursor:pointer}
.lx-lbl{margin:10px 0 0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-muted)}
.lx-regions{display:grid;border-top:1px solid var(--pp-line)}
.lx-r{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;margin:0 -12px;border-radius:8px;font-size:15px;color:#3b4258}
.lx-r span{font-size:13px;color:var(--pp-muted);font-variant-numeric:tabular-nums}
.lx-r:hover{background:rgba(8,40,140,.05)}
.lx-r[aria-pressed="true"]{color:var(--dfx-navy);font-weight:500;background:rgba(8,40,140,.07)}
.lx-r[aria-pressed="true"] span{color:var(--dfx-navy)}
.lx-r:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:1px}
.lx-legend{display:flex;align-items:center;gap:10px;margin:8px 0 0;font-size:13px;color:var(--pp-muted)}
.hot{width:7px;height:7px;border-radius:50%;background:var(--dfx-orange);flex:none}
.lx-note{margin:0;font-size:13px;line-height:1.6;color:var(--pp-muted);padding-top:14px;border-top:1px solid var(--pp-line)}

.lx-bar{position:sticky;top:var(--hdr,72px);z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;background:var(--pp-bg);border-bottom:1px solid var(--pp-line)}
.lx-count{margin:0;font-size:14px;color:var(--pp-muted);white-space:nowrap}
.lx-count b{color:var(--pp-ink);font-weight:600;font-variant-numeric:tabular-nums}
.lx-az{display:flex;flex-wrap:nowrap;gap:1px;justify-content:flex-end}
.lx-az a{display:grid;place-items:center;width:23px;height:28px;flex:none;border-radius:6px;font-size:13px;color:#3b4258;text-decoration:none}
.lx-az a:hover{background:rgba(8,40,140,.07);color:var(--dfx-navy)}
.lx-az a[aria-disabled="true"]{color:#c3c6cf;pointer-events:none}
.lx-groups{display:grid}
.lx-g{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:28px 0;border-bottom:1px solid var(--pp-line);scroll-margin-top:calc(var(--hdr,72px) + 70px)}
.lx-g h3{font:400 40px/1 var(--pp-serif);color:var(--dfx-navy)}
.lx-g ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:2px}
.lx-g li{display:flex;align-items:baseline;gap:8px;padding:8px 0;font-size:15px;line-height:1.35;color:var(--pp-ink);min-width:0}
.lx-g li span{min-width:0}
.lx-g li[data-hot] span::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-radius:50%;background:var(--dfx-orange);vertical-align:middle}
.lx-g li em{display:none}
.lx.filtered .lx-g li{flex-direction:column;align-items:flex-start;gap:2px}
.lx.filtered .lx-g li em{display:block;font-style:normal;font-size:12px;color:var(--pp-muted)}
.lx-g mark{background:rgba(248,145,0,.22);color:inherit;border-radius:3px;padding:0 1px}
.lx-empty{padding:48px 0;display:grid;gap:14px;justify-items:start}
.lx-empty h3{font-size:28px}
.lx-empty p{margin:0;color:var(--pp-muted);max-width:52ch;line-height:1.6}
@media (max-width:1100px){.lx-g ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .lx{grid-template-columns:minmax(0,1fr)}.lx-side,.lx-main{min-width:0}
  .lx-side{position:static}
  .lx-regions{display:flex;gap:8px;overflow-x:auto;border-top:0;margin:0;padding:0 0 4px;scrollbar-width:none}
  .lx-regions::-webkit-scrollbar{display:none}
  .lx-r{flex:none;margin:0;padding:9px 14px;border:1px solid var(--pp-line);border-radius:999px;background:#fff;font-size:14px}
  .lx-r[aria-pressed="true"]{background:var(--dfx-navy);border-color:var(--dfx-navy);color:#fff}
  .lx-r[aria-pressed="true"] span{color:rgba(255,255,255,.75)}
  .lx-bar{position:static;flex-direction:column;align-items:stretch;gap:10px}
  .lx-az{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}
  .lx-az::-webkit-scrollbar{display:none}
  .lx-az a{flex:none}
}
@media (max-width:560px){.lx-g{grid-template-columns:44px minmax(0,1fr);gap:8px}.lx-g h3{font-size:30px}.lx-g ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.lx-g li{font-size:14px;padding:6px 0}}

/* ===== Header: larger full-colour logo on every page ===== */
.top .wrap,.top.over-hero .wrap{height:84px}
.top .logo img{height:52px;width:auto;max-width:none}
@media (min-width:1061px) and (max-width:1280px){.top .logo img{height:42px}}
@media (max-width:1060px){.top .wrap,.top.over-hero .wrap{height:auto}.top .logo img{height:42px}}
@media (max-width:700px){.top .logo img{height:38px}}
.lx-side,.lx-main,.lx-az{min-width:0}
@media (max-width:1280px){.lx-bar{flex-direction:column;align-items:stretch;gap:8px}.lx-az{justify-content:space-between;overflow-x:auto;scrollbar-width:none}.lx-az::-webkit-scrollbar{display:none}}
html,body{overflow-x:clip}

/* ===== Inner pages refinements ===== */
main:not(:has(.pp-hero)) .pp-panel h2{max-width:34ch}
footer img.flogo{height:38px}
.pp-proof .pp-h{align-items:start}
.pp-proof-head{display:grid;gap:18px;align-content:start}
.pp-checks{list-style:none;margin:0;padding:0;border-top:1px solid var(--pp-line)}
.pp-checks li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:1px solid var(--pp-line)}
.pp-checks svg{margin-top:3px}
.pp-checks div{display:grid;gap:4px}
.pp-checks b{font:400 clamp(19px,1.6vw,22px)/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink)}
.pp-checks span{font-size:15px;line-height:1.6;color:var(--pp-muted)}
.pp-promise{margin:clamp(40px,5vw,64px) 0 0;font:400 clamp(26px,2.8vw,40px)/1.2 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink);max-width:28ch}
.pp-dir .pbtn{justify-self:start}

/* ===== Distinct page layouts (same palette, type and buttons) ===== */
.hx{padding-block:clamp(40px,6vw,88px) clamp(56px,7vw,104px)}
.hx h1{font-size:clamp(40px,4.8vw,66px);line-height:1.06;text-wrap:balance}
.hx .btns{display:flex;flex-wrap:wrap;gap:12px}
.hx video,.hx img{width:100%;height:100%;object-fit:cover;display:block}

/* split hero: copy + tall media (BPOs), reversed on a tinted band (Talent) */
.hx-split .grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,80px);align-items:center}
.hx-split .copy{display:grid;gap:26px;justify-items:start}
.hx-split .copy .pp-crumb{margin:0}
.hx-split h1{max-width:15ch}
.hx-split .media{aspect-ratio:4/5;max-height:640px;width:100%;border-radius:18px;overflow:hidden;background:var(--pp-bg-2)}
.hx-split.rev .media{order:-1}
.hx-tint{background:linear-gradient(180deg,rgba(8,40,140,.05),rgba(8,40,140,0))}
.hx-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.hx-meta li{padding:7px 14px;border:1px solid var(--pp-line);border-radius:999px;background:#fff;font-size:13px;color:#3b4258}
@media (max-width:900px){.hx-split .grid{grid-template-columns:1fr}.hx-split .media{aspect-ratio:4/3;order:0!important}}

/* centred hero + three-tile mosaic (Marketplace) */
.hx-center{text-align:center}
.hx-center .pp-crumb{margin-bottom:24px}
.hx-center h1{max-width:18ch;margin-inline:auto}
.hx-center .pp-sub{max-width:62ch;margin:26px auto 0}
.hx-center .btns{justify-content:center;margin-top:32px}
.mosaic{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,1fr);gap:14px;height:clamp(280px,34vw,480px);margin-top:clamp(48px,6vw,80px)}
.mosaic > div{border-radius:16px;overflow:hidden;background:var(--pp-bg-2)}
.mosaic > div:first-child,.mosaic > div:last-child{margin-block:clamp(24px,3vw,48px)}
@media (max-width:760px){.mosaic{grid-template-columns:1fr 1fr;height:auto}.mosaic > div{aspect-ratio:1;margin:0!important}.mosaic > div:nth-child(2){grid-column:1 / -1;order:-1;aspect-ratio:16/10}}

/* manifesto hero with full-bleed band (Why Defrilex) */
.hx-man{padding-bottom:0}
.hx-man h1{font-size:clamp(48px,7.2vw,108px);line-height:.98;letter-spacing:-.015em;max-width:16ch;margin-top:8px}
.hx-man .under{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-top:clamp(32px,4vw,56px)}
.hx-man .under .pp-sub{max-width:58ch}
.hx-man .band{margin-top:clamp(48px,6vw,88px);height:clamp(260px,38vw,560px);overflow:hidden}
@media (max-width:900px){.hx-man .under{grid-template-columns:1fr}}

/* sticky heading + 2x2 cards (BPOs) */
.sx-sticky{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.sx-sticky .head{position:sticky;top:calc(var(--hdr,84px) + 32px);display:grid;gap:20px}
.cards2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cards2 > div{background:#fff;border:1px solid var(--pp-line);border-radius:14px;padding:28px;display:grid;gap:12px;align-content:start}
.cards2 h3{font-size:21px;line-height:1.3}
.cards2 p{font-size:15px;line-height:1.7;color:var(--pp-muted)}
@media (max-width:900px){.sx-sticky{grid-template-columns:1fr}.sx-sticky .head{position:static}}
@media (max-width:600px){.cards2{grid-template-columns:1fr}}

/* numbered rows on light background (BPOs benefits, Talent reasons) */
.sx-num{list-style:none;margin:0;padding:0;counter-reset:n;border-top:1px solid var(--pp-line)}
.sx-num li{counter-increment:n;display:grid;grid-template-columns:72px minmax(0,4fr) minmax(0,7fr);gap:clamp(16px,3vw,40px);padding:28px 0;border-bottom:1px solid var(--pp-line);align-items:baseline}
.sx-num li::before{content:counter(n,decimal-leading-zero);font:400 15px/1 var(--pp-sans);color:var(--dfx-navy);font-variant-numeric:tabular-nums}
.sx-num h3{font-size:clamp(20px,1.8vw,24px);line-height:1.25}
.sx-num p{font-size:16px;line-height:1.7;color:var(--pp-muted);max-width:60ch}
@media (max-width:760px){.sx-num li{grid-template-columns:44px minmax(0,1fr)}.sx-num p{grid-column:2}}

/* centred editorial block (Marketplace) */
.sx-edit{text-align:center;display:grid;gap:24px;justify-items:center}
.sx-edit .pp-h2{max-width:24ch;font-size:clamp(30px,3.4vw,46px);text-wrap:balance}
.sx-edit .pp-sub{max-width:64ch}

/* three large numbered cards (Marketplace access) */
.sx-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sx-trio > div{background:#fff;border:1px solid var(--pp-line);border-radius:16px;padding:clamp(24px,2.6vw,36px);display:grid;gap:14px;align-content:start}
.sx-trio .n{font:400 clamp(48px,4.6vw,72px)/1 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--dfx-navy)}
.sx-trio h3{font-size:22px;line-height:1.25}
.sx-trio p{font-size:15px;line-height:1.7;color:var(--pp-muted)}
.sx-foot{margin:clamp(32px,4vw,48px) auto 0;max-width:70ch;text-align:center}
@media (max-width:900px){.sx-trio{grid-template-columns:1fr}}

/* large statement rows (Why Defrilex gifts) */
.sx-big > div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,80px);padding:clamp(32px,4vw,52px) 0;border-top:1px solid var(--pp-line)}
.sx-big > div:last-child{border-bottom:1px solid var(--pp-line)}
.sx-big .k{display:block;font:500 13px/1 var(--pp-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--dfx-orange);margin-bottom:14px}
.sx-big h3{font-size:clamp(28px,3vw,42px);line-height:1.12}
.sx-big p{font-size:clamp(16px,1.3vw,18px);line-height:1.75;color:var(--pp-muted);max-width:58ch}
@media (max-width:760px){.sx-big > div{grid-template-columns:1fr}}
.pp-pull{margin:8px 0 0;padding-left:22px;border-left:3px solid var(--dfx-orange);font:400 clamp(20px,1.8vw,24px)/1.45 var(--pp-serif);font-variation-settings:"SOFT" 100;color:var(--pp-ink);max-width:40ch}

/* image + list (Talent) */
.sx-imglist{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.sx-imglist .im{position:sticky;top:calc(var(--hdr,84px) + 32px);aspect-ratio:4/5;border-radius:16px;overflow:hidden}
.sx-imglist .im img{width:100%;height:100%;object-fit:cover}
.sx-imglist .sx-num li{grid-template-columns:52px minmax(0,1fr)}
@media (max-width:900px){.sx-imglist{grid-template-columns:1fr}.sx-imglist .im{position:static;aspect-ratio:16/10}}
.sx-imglist .sx-num li > div{display:grid;gap:8px}

/* ===== Enterprise polish ===== */
/* tabbed explorer (For BPOs) */
.tx{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.tx-tabs{display:grid;border-top:1px solid var(--pp-line)}
.tx-tabs button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:24px 0 24px 18px;border-bottom:1px solid var(--pp-line);position:relative;color:var(--pp-muted);transition:color .2s}
.tx-tabs button::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:2px;border-radius:2px;background:transparent;transition:background .2s}
.tx-tabs .n{font-size:13px;font-variant-numeric:tabular-nums}
.tx-tabs .t{font:400 clamp(20px,1.8vw,26px)/1.25 var(--pp-serif);font-variation-settings:"SOFT" 100}
.tx-tabs .c{font-size:13px;white-space:nowrap}
.tx-tabs button:hover{color:var(--pp-ink)}
.tx-tabs button[aria-selected="true"]{color:var(--pp-ink)}
.tx-tabs button[aria-selected="true"]::before{background:var(--dfx-orange)}
.tx-tabs button[aria-selected="true"] .n{color:var(--dfx-navy)}
.tx-tabs button:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:2px}
.tx-p{display:grid;gap:22px;animation:txin .35s ease}
.tx-p .im{aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:var(--pp-bg-2)}
.tx-p .im img{width:100%;height:100%;object-fit:cover}
.tx-p h3{font-size:clamp(22px,2vw,28px)}
.tx-p ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.tx-p li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;padding:14px 0;border-top:1px solid var(--pp-line);font-size:15px;line-height:1.55;color:#3b4258}
.tx-p li svg{margin-top:2px}
@keyframes txin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:900px){.tx{grid-template-columns:1fr}.tx-p ul{grid-template-columns:1fr}}

/* FAQ with heading beside questions (For BPOs) */
.faq-side .pp-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.faq-side .hd{text-align:left;justify-items:start;margin:0;position:sticky;top:calc(var(--hdr,84px) + 32px);gap:28px}
.faq-side .qs{border-top:1px solid var(--pp-line)}
.faq-side .pp-acc summary{padding:22px 4px;font-size:clamp(17px,1.4vw,19px)}
.faq-side .pp-acc[open]{background:none;border:0;border-bottom:1px solid var(--pp-line);border-radius:0}
.faq-side .pp-acc > div{padding:0 4px 24px;font-size:15px;line-height:1.75;color:var(--pp-muted);max-width:62ch}
@media (max-width:900px){.faq-side .pp-wrap{grid-template-columns:1fr}.faq-side .hd{position:static}}

/* footer compliance strip */
.fcomp{list-style:none;margin:40px 0 0;padding:20px 0;display:flex;flex-wrap:wrap;gap:10px 28px;border-top:1px solid #e6e9f2}
.fcomp li{display:flex;align-items:center;gap:8px;font-size:13px;color:#39425e}
.fcomp li::before{content:"";width:6px;height:6px;border-radius:50%;background:#08288c}

/* quiet reveal on scroll */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.tx-p{animation:none}}
.faq-side .pp-acc[open]{box-shadow:none!important;background:none!important}.fcomp + .legal{margin-top:0}

/* ===== Premium moments (inner pages) ===== */
/* dark split hero (For BPOs) */
.hx-dark{background:radial-gradient(1200px 500px at 85% 0%,rgba(31,71,214,.35),transparent 60%),linear-gradient(180deg,#0b1030,#0a1650);color:#fff}
.hx-dark h1{color:#fff}
.hx-dark .acc{color:var(--dfx-orange)}
.hx-dark .pp-sub{color:#b9c2de}
.hx-dark .pp-sub a{color:#fff}
.hx-dark .pp-crumb,.hx-dark .pp-crumb a{color:#8f9bc4}
.hx-dark .pp-crumb a:hover{color:#fff}
.hx-dark .pbtn{background:#fff;border-color:#fff}
.hx-dark .pbtn.plain{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.hx-dark .pbtn.plain:hover{background:rgba(255,255,255,.08)}
.hx-dark .media{box-shadow:0 30px 80px rgba(0,0,0,.35);background:#0a1650}

/* full-bleed photo with figures (For BPOs) */
.imgband{position:relative;overflow:hidden;color:#fff;isolation:isolate}
.imgband > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.imgband::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,12,40,.95),rgba(6,22,70,.86) 55%,rgba(8,30,100,.7))}
.imgband .in{padding-block:clamp(72px,9vw,128px)}
.imgband .k{margin:0 0 28px;font:500 12px/1 var(--pp-sans);letter-spacing:.32em;text-transform:uppercase;color:#9fb1ea}
.ib-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid rgba(255,255,255,.2)}
.ib-stats > div{padding:28px 28px 0 0;display:grid;gap:10px}
.ib-stats > div + div{padding-left:28px;border-left:1px solid rgba(255,255,255,.2)}
.ib-stats dt{font:400 clamp(48px,5.4vw,80px)/1 var(--pp-serif);font-variation-settings:"SOFT" 100;color:#fff}
.ib-stats dd{margin:0;font-size:15px;line-height:1.55;color:#c9d2ee;max-width:26ch}
@media (max-width:760px){.ib-stats{grid-template-columns:1fr}.ib-stats > div{padding:24px 0!important;border-left:0!important;border-bottom:1px solid rgba(255,255,255,.2)}}

/* dark photo panel (Marketplace categories) */
.dp-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap}
.dp-head .pbtn{background:#fff}
.dp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dp-card{border-radius:14px;overflow:hidden;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);display:grid;align-content:start}
.dp-card .im{aspect-ratio:16/8;overflow:hidden}
.dp-card .im img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.dp-card .dp-tx{padding:clamp(22px,2.4vw,32px);display:grid;gap:12px}
.dp-card h3{font-size:clamp(22px,2vw,28px);color:#fff}
.dp-card .dp-tx > p{font-size:15px;line-height:1.65;color:#b8bcc8;max-width:52ch}
.dp-card ol{list-style:none;margin:8px 0 0;padding:0;border-top:1px solid rgba(255,255,255,.14)}
.dp-card li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:15px;line-height:1.5;color:#e7eaf5}
.dp-card li span{color:var(--dfx-orange);font-size:13px;font-variant-numeric:tabular-nums}
@media (max-width:900px){.dp-grid{grid-template-columns:1fr}}

/* full-bleed promise (Why Defrilex) */
.promise-band{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(420px,52vw,640px);display:flex;align-items:center}
.promise-band > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.promise-band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,15,48,.92) 0%,rgba(5,15,48,.7) 42%,rgba(5,15,48,.15) 78%)}
.promise-band .in{padding-block:clamp(48px,6vw,88px);width:100%}
.promise-band p{margin:0;font:400 clamp(28px,3.6vw,52px)/1.15 var(--pp-serif);font-variation-settings:"SOFT" 100;color:#fff;max-width:24ch}
.promise-band .acc{color:var(--dfx-orange)}

/* work-type photo cards (For Talent) */
.wk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.wk-card{position:relative;display:block;aspect-ratio:4/5;border-radius:16px;overflow:hidden;isolation:isolate;text-decoration:none;color:#fff;background:var(--pp-bg-2)}
.wk-card img,.wk-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.wk-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,15,48,0) 35%,rgba(5,15,48,.55) 60%,rgba(5,15,48,.92))}
.wk-card:hover img,.wk-card:hover video{transform:scale(1.04)}
.wk-card .cap{position:absolute;left:0;right:0;bottom:0;padding:24px;display:grid;gap:8px}
.wk-card .k{font:500 12px/1 var(--pp-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--dfx-orange)}
.wk-card h3{font-size:clamp(20px,1.7vw,24px);line-height:1.25;color:#fff}
.wk-card:focus-visible{outline:2px solid var(--dfx-orange);outline-offset:3px}
@media (max-width:900px){.wk{grid-template-columns:1fr}.wk-card{aspect-ratio:16/11}}

/* languages: wide video under hero */
.lx-media{margin-top:clamp(40px,5vw,64px);aspect-ratio:21/8;border-radius:18px;overflow:hidden;background:var(--pp-bg-2)}
.lx-media video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:700px){.lx-media{aspect-ratio:16/10}}

/* ===== Why Defrilex hero: navy band, framed video overlapping the page ===== */
.hx-why{padding:0;--ov:clamp(120px,16vw,240px);background:linear-gradient(180deg,#0b1030 0,#0a1650 calc(100% - var(--ov)),var(--pp-bg) calc(100% - var(--ov)));position:relative;overflow:hidden}
.hx-why::before{content:"";position:absolute;inset:0 0 auto;height:70%;background:radial-gradient(900px 420px at 50% 0%,rgba(31,71,214,.45),transparent 70%);pointer-events:none}
.hw-top{position:relative;text-align:center;display:grid;justify-items:center;gap:22px;padding-block:clamp(40px,5vw,72px) clamp(36px,4vw,56px)}
.hw-top .pp-crumb{margin:0;color:#8f9bc4}
.hw-top .pp-crumb a{color:inherit}
.hw-top .pp-crumb a:hover{color:#fff}
.hw-top h1{font-size:clamp(42px,5.2vw,76px);line-height:1.02;letter-spacing:-.01em;color:#fff;max-width:14ch;text-wrap:balance}
.hw-top .acc{color:var(--dfx-orange)}
.hw-top .pp-sub{color:#b9c2de;max-width:64ch}
.hw-top .btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.hw-top .pbtn{background:#fff;border-color:#fff}
.hw-top .pbtn.plain{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.hw-top .pbtn.plain:hover{background:rgba(255,255,255,.08)}
.hw-frame{position:relative;aspect-ratio:21/9;border-radius:22px;overflow:hidden;background:#0a1650;box-shadow:0 40px 100px rgba(5,15,48,.35),0 0 0 1px rgba(255,255,255,.08)}
.hw-frame video{width:100%;height:100%;object-fit:cover;display:block}
.hw-frame::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(180deg,rgba(5,15,48,0),rgba(5,15,48,.7));pointer-events:none}
.hw-pills{position:absolute;left:clamp(16px,2.4vw,32px);right:clamp(16px,2.4vw,32px);bottom:clamp(16px,2.4vw,32px);z-index:1;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hw-pills li{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);color:#fff;font-size:15px;font-weight:500}
.hw-pills span{font-size:12px;color:var(--dfx-orange);font-variant-numeric:tabular-nums}
@media (max-width:820px){
  .hx-why{--ov:34vw}
  .hw-frame{aspect-ratio:auto;display:grid;background:none;box-shadow:none;overflow:visible}
  .hw-frame video{aspect-ratio:4/3;border-radius:18px;box-shadow:0 30px 70px rgba(5,15,48,.3)}
  .hw-frame::after{display:none}
  .hw-pills{position:static;order:-1;grid-template-columns:1fr;gap:8px;margin:0 0 20px}
  .hw-pills li{padding:12px 16px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16)}
}

/* ===== Why Defrilex hero: editorial, tall video (option 7) ===== */
.hx-ed{padding-block:clamp(40px,4.5vw,72px) clamp(56px,6vw,96px)}
.hx-ed .g{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(40px,5vw,88px);align-items:center}
.hx-ed .t{display:grid;gap:24px;justify-items:start}
.hx-ed .pp-crumb{margin:0}
.hx-ed h1{font-size:clamp(44px,5.8vw,90px);line-height:1;letter-spacing:-.015em;text-wrap:balance}
.hx-ed .pp-sub{max-width:60ch}
.hx-ed .btns{display:flex;flex-wrap:wrap;gap:12px}
.hx-ed ol{list-style:none;margin:8px 0 0;padding:0;width:100%;border-top:1px solid var(--pp-line)}
.hx-ed li{display:flex;gap:16px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--pp-line);font:400 clamp(18px,1.5vw,21px)/1.3 var(--pp-serif);font-variation-settings:"SOFT" 100}
.hx-ed li span{font:500 13px/1 var(--pp-sans);color:var(--dfx-navy);font-variant-numeric:tabular-nums}
.hx-ed .v{aspect-ratio:9/14;max-height:780px;width:100%;border-radius:22px;overflow:hidden;background:var(--pp-bg-2);box-shadow:0 30px 70px rgba(10,20,51,.18)}
.hx-ed .v video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:900px){.hx-ed .g{grid-template-columns:1fr}.hx-ed .v{aspect-ratio:4/5;max-height:560px}}

/* ===== Why Defrilex: explainer video slot ===== */
.wv{border-top:1px solid var(--pp-line)}
.wv-head{display:grid;gap:18px;justify-items:center;text-align:center;margin-bottom:clamp(36px,4.5vw,56px)}
.wv-head .k{margin:0;display:flex;align-items:center;gap:12px;font:500 12px/1 var(--pp-sans);letter-spacing:.32em;text-transform:uppercase;color:var(--dfx-navy)}
.wv-head .k::before{content:"";width:36px;height:1px;background:currentColor}
.wv-head h2{font-size:clamp(34px,4.2vw,60px);line-height:1.08}
.wv-head .acc{color:var(--dfx-navy)}
.wv-head .pp-sub{max-width:52ch}
.wv-frame{position:relative;max-width:1120px;margin-inline:auto;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#050f30;box-shadow:0 40px 100px rgba(8,40,140,.22)}
.wv-frame img,.wv-frame video{width:100%;height:100%;object-fit:cover;display:block}
.wv-frame img{filter:brightness(.62) saturate(.9);transition:filter .4s}
.wv-frame:hover img{filter:brightness(.5) saturate(.9)}
.wv-play{all:unset;box-sizing:border-box;cursor:pointer;position:absolute;left:50%;top:50%;width:clamp(72px,8vw,96px);height:clamp(72px,8vw,96px);margin:calc(clamp(72px,8vw,96px) / -2) 0 0 calc(clamp(72px,8vw,96px) / -2);border-radius:50%;display:grid;place-items:center;background:var(--dfx-orange);color:#0a1124;box-shadow:0 0 0 10px rgba(248,145,0,.22),0 20px 40px rgba(0,0,0,.35);transition:transform .25s,box-shadow .25s}
.wv-play svg{margin-left:4px;width:34%;height:34%}
.wv-play:hover{transform:scale(1.06);box-shadow:0 0 0 16px rgba(248,145,0,.18),0 20px 40px rgba(0,0,0,.35)}
.wv-play:focus-visible{outline:3px solid #fff;outline-offset:4px}
.wv-soon{position:absolute;left:50%;bottom:clamp(20px,3vw,36px);transform:translateX(-50%);margin:0;padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:14px;color:#fff;white-space:nowrap}
@media (prefers-reduced-motion:reduce){.wv-play,.wv-frame img{transition:none}}
@media (max-width:600px){.wv-soon{bottom:12px;padding:6px 12px;font-size:12px}}

/* ===== Landing hero sits below the header (header solid, full-colour logo) ===== */
.pp-hero{min-height:min(calc(100vh - var(--hdr,85px)),860px)}
.pp-hero .bg::after{background:linear-gradient(180deg,rgba(5,15,48,.25) 0%,rgba(6,22,70,.12) 35%,rgba(6,22,70,.4) 65%,rgba(5,15,48,.9) 100%)}

/* ===== Landing hero: show the full 16:9 video, never cropped ===== */
.pp-hero{min-height:0;aspect-ratio:16/9}
.pp-hero .in{padding-block:clamp(24px,4vw,64px) clamp(40px,5vw,80px)}
@media (max-width:900px){
  .pp-hero{display:block;aspect-ratio:auto;padding:0;background:var(--dfx-navy-950)}
  .pp-hero .bg{position:relative;inset:auto;aspect-ratio:16/9}
  .pp-hero::after{display:none}
  .pp-hero .in{padding-block:28px 44px}
}
.pp-hero{padding-block:0}

/* ===== Landing hero: whole video always inside the first screen ===== */
@media (min-width:901px){
  .pp-hero{aspect-ratio:auto;height:min(56.25vw,calc(100svh - var(--hdr,85px)));background:#050f30}
  .pp-hero .bg video{object-fit:contain}
}
.pp-hero .bg::after{background:linear-gradient(0deg,rgba(5,15,48,.7) 0%,rgba(5,15,48,.25) 30%,rgba(5,15,48,0) 55%)}
.pp-hero::after{background:none}
@media (min-width:901px){.pp-hero .bg::after{background:radial-gradient(60% 55% at 12% 88%,rgba(5,15,48,.72),rgba(5,15,48,0) 70%),linear-gradient(0deg,rgba(5,15,48,.45),rgba(5,15,48,0) 40%)}}
.pp-hero h1{text-shadow:0 2px 24px rgba(5,15,48,.55),0 1px 3px rgba(5,15,48,.35)}

/* ===== Landing hero: full width, exact 16:9, whole frame, no side bands ===== */
@media (min-width:901px){
  .pp-hero{height:auto;aspect-ratio:16/9;background:#050f30}
  .pp-hero .bg video{object-fit:cover;object-position:center top}
}

/* ===== Landing hero moved down: clear white gap under the header ===== */
.pp-hero{margin-top:clamp(20px,3vw,48px)}
.pp-hero{margin-top:0}

/* ===== Closing band before the footer: compact ===== */
.pp-cta{padding-block:clamp(56px,6.5vw,96px)!important;min-height:0!important}
.pp-cta .in{gap:18px!important}
.pp-cta h2.pp-h2{font-size:clamp(32px,4vw,58px);line-height:1.08;max-width:20ch}
.pp-cta .pp-sub{font-size:clamp(15px,1.2vw,17px)}
footer{padding-block:clamp(40px,4.5vw,64px) 28px!important}
footer .fgrid{padding-top:0!important;border-top:0!important;margin-top:0!important}

/* ===== Pre-footer (round portraits), a different variation per page ===== */
.pf{background:var(--pp-bg);border-top:1px solid var(--pp-line);padding-block:clamp(56px,6.5vw,96px)}
.pf .pp-h2{font-size:clamp(30px,3.4vw,46px);line-height:1.12;text-wrap:balance}
.pf .pp-sub{max-width:56ch}
.pf-eye{margin:0 0 16px;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--dfx-navy)}
.pf-eye::before{content:"";width:32px;height:1px;background:currentColor}
.pf-g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:end}
.pf-r{display:grid;gap:24px;justify-items:start}
.pf-faces{display:flex;flex:none}
.pf-faces img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 0 0 1px var(--pp-line),0 8px 20px rgba(8,40,140,.10)}
.pf-faces img + img{margin-left:-14px}
.pf-act{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.pf-act .pf-faces img{width:46px;height:46px}
.pf-who{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.pf-who span{font-size:14px;color:var(--pp-muted);max-width:26ch;line-height:1.45}
.pf-plus{margin-left:-28px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--dfx-navy);color:#fff;font:600 13px/1 var(--pp-sans);border:3px solid #fff;box-shadow:0 0 0 1px var(--pp-line);position:relative;z-index:1}
.pf-mid{align-items:center}
.pf-mid .pf-t,.pf-big .pf-t{display:grid;gap:22px;justify-items:start}
.pf-mid .pf-eye,.pf-big .pf-eye{margin:0}
.pf-svc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,24px)}
.pf-svc figure{margin:0;display:grid;gap:12px;justify-items:center;text-align:center}
.pf-svc img{width:100%;max-width:150px;aspect-ratio:1;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 0 0 1px var(--pp-line),0 14px 30px rgba(8,40,140,.10)}
.pf-svc figcaption{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--dfx-navy);font-weight:600}
.pf-big{grid-template-columns:auto minmax(0,1fr);align-items:center}
.pf-bigimg img{width:clamp(180px,20vw,260px);aspect-ratio:1;border-radius:50%;object-fit:cover;border:5px solid #fff;box-shadow:0 0 0 1px var(--pp-line),0 20px 44px rgba(8,40,140,.12);display:block}
.pf-c{text-align:center;display:grid;justify-items:center;gap:20px}
.pf-c .pf-eye{margin:0;justify-content:center}
.pf-c .pp-h2{max-width:22ch}
.pf-c .pf-faces img{width:58px;height:58px}
@media (max-width:860px){
  .pf-g,.pf-big{grid-template-columns:1fr}
  .pf-svc{order:-1}
  .pf .pbtn{white-space:normal}
}

/* ===== Landing talent block: heading on the page background, navy starts at the orange line ===== */
.tal-head{max-width:1400px;margin-inline:auto;padding:0 clamp(20px,2.4vw,34px) clamp(28px,3.5vw,44px);border-bottom:2px solid var(--dfx-orange)}
.tal-head .pp-sub{color:var(--pp-muted);max-width:44ch}
.tal-head .pp-h2{color:var(--pp-ink);max-width:22ch}
.tal-head .acc{color:var(--dfx-navy)}
.pp-panel.tal-cards{border-radius:0 0 18px 18px;padding-top:clamp(28px,3.5vw,48px)}

/* ===== Talent cards: fixed photo frames so every card lines up ===== */
.pp-card .im img{position:absolute;inset:0;display:block}
.pp-card:not(.lg) .im{aspect-ratio:3/4}
.pp-card.lg .im{aspect-ratio:16/10}
@media (max-width:620px){.pp-card .im,.pp-card:not(.lg) .im{aspect-ratio:4/3}.pp-card{min-height:0}}
.pp-card:not(.lg) .im{aspect-ratio:auto;min-height:clamp(320px,30vw,440px)}
@media (max-width:620px){.pp-card:not(.lg) .im{min-height:0;aspect-ratio:4/3}}
/* 2026-09-30: Privacy Policy and Terms of Service pages (privacy.html, terms.html) */
.lg-hero{padding-block:clamp(56px,7vw,100px) clamp(40px,5vw,64px)}
.lg-hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:end}
.lg-hero h1{font-size:clamp(38px,4.4vw,60px);line-height:1.08}
.lg-dates{margin-top:18px;font-size:13px;color:var(--pp-muted)}
.lg-body{padding-top:0}
.lg-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start;border-top:1px solid var(--pp-line);padding-top:clamp(40px,5vw,64px)}
.lg-toc{position:sticky;top:calc(var(--hdr,72px) + 24px);max-height:calc(100vh - var(--hdr,72px) - 48px);overflow:auto}
.lg-toc p{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-muted);margin:0 0 12px}
.lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.lg-toc a{display:grid;grid-template-columns:30px minmax(0,1fr);padding:6px 0;font-size:14px;line-height:1.45;color:var(--pp-ink);text-decoration:none}
.lg-toc a span{color:var(--dfx-orange);font-variant-numeric:tabular-nums}
.lg-toc a:hover{color:var(--pp-accent)}
.lg-main{max-width:780px;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(56px,6vw,88px);min-width:0}
.lg-sec{padding-block:0;min-width:0;scroll-margin-top:calc(var(--hdr,72px) + 24px)}
.lg-kicker{display:flex;gap:10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-muted);margin:0 0 14px}
.lg-kicker span{color:var(--dfx-orange)}
.lg-sec h2{margin:0 0 22px}
.lg-sec p{font-size:16px;line-height:1.75;color:#39425e;margin:0 0 16px}
.lg-sec p.lg-lead{font-size:clamp(17px,1.4vw,19px);line-height:1.6;color:var(--pp-ink)}
.lg-sec p.lg-muted{font-size:14px;color:var(--pp-muted)}
.lg-sec p.lg-emph{font-family:var(--pp-serif);font-size:20px;color:var(--pp-ink);margin:0}
.lg-sec strong{color:var(--pp-ink);font-weight:600}
.lg-sec a{color:var(--pp-accent);text-underline-offset:3px}
.lg-sec h3.lg-tag{font-size:19px;line-height:1.3;color:var(--pp-ink);margin:32px 0 12px}
.lg-sec span.lg-tag{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-muted);margin:0 0 6px}
.lg-sec code{font-size:.92em;background:var(--pp-bg-2);padding:1px 6px;border-radius:4px}
.lg-ledger,.lg-list{list-style:none;margin:0 0 20px;padding:0;border-top:1px solid var(--pp-line)}
.lg-ledger li{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;row-gap:4px;padding:16px 0;border-bottom:1px solid var(--pp-line)}
.lg-n,.lg-m{color:var(--dfx-orange);font-size:14px;font-variant-numeric:tabular-nums}
.lg-n{grid-row:span 2}
.lg-t{font-family:var(--pp-serif);font-size:18px;color:var(--pp-ink)}
.lg-d{font-size:15px;line-height:1.65;color:#39425e}
.lg-list li{display:grid;grid-template-columns:44px minmax(0,1fr);padding:12px 0;border-bottom:1px solid var(--pp-line);font-size:16px;line-height:1.6;color:#39425e}
.lg-table{margin:0 0 24px}
.lg-scroll{overflow-x:auto}
.lg-table table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;min-width:520px}
.lg-table th{text-align:left;font-weight:500;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-muted);padding:0 16px 10px 0;border-bottom:1px solid var(--pp-ink)}
.lg-table td{vertical-align:top;padding:14px 16px 14px 0;border-bottom:1px solid var(--pp-line);color:#39425e}
.lg-table td.lg-rowhead{width:32%;color:var(--pp-ink);font-weight:500}
.lg-issued{margin-top:40px;padding-top:24px;border-top:1px solid var(--pp-line)}
@media (max-width:980px){
  .lg-hero-grid{grid-template-columns:1fr;align-items:start}
  .lg-grid{grid-template-columns:minmax(0,1fr)}
  .lg-toc{position:static;max-height:none;overflow:visible;padding-bottom:20px;border-bottom:1px solid var(--pp-line)}
  .lg-toc ol{grid-template-columns:1fr 1fr;column-gap:24px}
}
@media (max-width:620px){
  .lg-toc ol{grid-template-columns:1fr}
  .lg-table table{min-width:0;border-top:1px solid var(--pp-ink)}
  .lg-table thead{display:none}
  .lg-table tr{display:block;padding:14px 0;border-bottom:1px solid var(--pp-line)}
  .lg-table td,.lg-table td.lg-rowhead{display:block;width:auto;padding:0;border:0}
  .lg-table td[data-label]{margin-top:8px}
  .lg-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-muted);margin-bottom:2px}
}
/* 2026-10-01: job description pages (public/ls/jobs/<slug>.html, served at /ls/jobs/<slug>) */
.jb-hero{padding-block:clamp(56px,7vw,96px) clamp(36px,4vw,56px)}
.jb-status{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 18px;font-size:13px}
.jb-live{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:999px;background:#e9f7ef;color:#11643a;font-weight:500}
.jb-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#1a9a55}
.jb-id{color:var(--pp-muted);letter-spacing:.04em}
.jb-hero h1{font-size:clamp(36px,4.2vw,58px);line-height:1.08;max-width:20ch}
.jb-tags{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.jb-tags li{padding:6px 14px;border:1px solid var(--pp-line);border-radius:999px;font-size:14px;color:var(--pp-ink);background:#fff}
.jb-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:30px}
.jb-copy{appearance:none;background:none;border:0;padding:0;font:inherit;font-size:14px;color:var(--pp-accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.jb-copied{font-size:13px;color:var(--pp-muted)}
.jb-login{margin:18px 0 0;font-size:14px;color:var(--pp-muted)}
.jb-login a{color:var(--pp-accent);text-underline-offset:3px}
.pbtn[disabled]{opacity:.45;cursor:not-allowed}
.jb-body{padding-top:0}
.jb-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,6vw,96px);align-items:start;border-top:1px solid var(--pp-line);padding-top:clamp(40px,5vw,64px)}
.jb-main{max-width:760px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(44px,5vw,64px)}
.jb-intro p{font-size:clamp(17px,1.4vw,19px);line-height:1.65;color:var(--pp-ink);margin:0 0 14px}
.jb-intro p:last-child{margin-bottom:0}
.jb-sec{padding-block:0;min-width:0;scroll-margin-top:calc(var(--hdr,72px) + 24px)}
.jb-sec h2{display:flex;align-items:baseline;gap:14px;font-size:clamp(24px,2.2vw,30px);line-height:1.2;margin:0 0 18px}
.jb-sec h2 span{font:500 14px/1 var(--pp-sans);color:var(--dfx-orange);letter-spacing:.04em}
.jb-sec h3{font-size:19px;margin:28px 0 12px}
.jb-sec ul,.jb-sec ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--pp-line)}
.jb-sec li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid var(--pp-line);font-size:16px;line-height:1.6;color:#39425e}
.jb-sec ul li::before{content:"";position:absolute;left:4px;top:21px;width:7px;height:7px;border-radius:50%;background:var(--pp-accent)}
.jb-sec ol{counter-reset:st}
.jb-sec ol li{counter-increment:st}
.jb-sec ol li::before{content:counter(st);position:absolute;left:2px;top:12px;font:500 14px/1.7 var(--pp-sans);color:var(--dfx-orange)}
.jb-sec p{font-size:16px;line-height:1.75;color:#39425e;margin:0 0 14px}
.jb-sec p.jb-note{margin:14px 0 0;font-size:15px;color:var(--pp-muted)}
.jb-ready{padding:clamp(28px,4vw,44px);border-radius:16px;background:var(--pp-bg-2)}
.jb-ready h2{font-size:clamp(26px,2.4vw,34px);margin:0 0 10px}
.jb-ready p{margin:0 0 22px;color:#39425e}
.jb-ready .jb-actions{margin-top:0}
.jb-back{font-size:15px;color:var(--pp-ink);text-decoration:none}
.jb-back:hover{color:var(--pp-accent)}
.jb-aside{position:sticky;top:calc(var(--hdr,72px) + 24px);padding:26px;border:1px solid var(--pp-line);border-radius:16px;background:#fff}
.jb-aside h2{font-size:22px;margin:0 0 16px}
.jb-aside dl{margin:0 0 20px;display:grid;gap:14px}
.jb-aside dl:last-child{margin-bottom:0}
.jb-aside dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-muted)}
.jb-aside dd{margin:3px 0 0;font-size:15px;line-height:1.5;color:var(--pp-ink)}
@media (max-width:980px){
  .jb-grid{grid-template-columns:minmax(0,1fr)}
  .jb-aside{position:static}
}
