/* Bivendo — site.css */
@font-face{font-family:"Schibsted Grotesk";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/schibsted-grotesk-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Schibsted Grotesk";font-weight:400;font-style:italic;font-display:swap;src:url(fonts/schibsted-grotesk-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Schibsted Grotesk";font-weight:500;font-style:normal;font-display:swap;src:url(fonts/schibsted-grotesk-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Schibsted Grotesk";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/schibsted-grotesk-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Schibsted Grotesk";font-weight:800;font-style:normal;font-display:swap;src:url(fonts/schibsted-grotesk-latin-800-normal.woff2) format("woff2")}

:root{
  --paper:#FBFAF6;
  --white:#FFFFFF;
  --navy:#10213F;
  --navy-2:#1B3260;
  --text:#1A2233;
  --muted:#5B6475;
  --line:#E3E1D8;
  --marker:#FFE14D;
  --marker-soft:#FFF3B0;
  --blue:#2448A8;
  --red:#C23B2E;
  --font:"Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font:400 18px/1.6 var(--font)}
img{max-width:100%}
[hidden]{display:none!important}
a{color:var(--blue)}
p{margin:0}
h1,h2,h3{margin:0;color:var(--navy);font-weight:800;letter-spacing:-.02em;text-wrap:balance}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.wrap{max-width:1140px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;background:var(--white);padding:8px 12px;z-index:10}

/* highlighter stroke */
.hl{background:linear-gradient(transparent 12%,var(--marker) 12%,var(--marker) 88%,transparent 88%);padding:0 .12em;margin:0 -.04em;border-radius:.2em .45em .25em .5em;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* header */
.top{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:5}
.top .wrap{display:flex;align-items:center;gap:28px;padding-block:16px}
.logo{font-weight:800;font-size:26px;letter-spacing:-.04em;color:var(--navy);text-decoration:none;line-height:1}
.logo span{background:var(--marker);padding:0 3px 0 2px;border-radius:2px 5px 3px 6px}
.nav{display:flex;gap:24px;margin-left:auto;font-size:16px;font-weight:500}
.nav a{color:var(--text);text-decoration:none}
.nav a:hover{color:var(--blue)}
.lang{display:flex;border:1.5px solid var(--navy);border-radius:4px;overflow:hidden;font-size:14px;font-weight:700}
.lang a,.lang span{padding:5px 9px;text-decoration:none;color:var(--navy)}
.lang span{background:var(--navy);color:var(--paper)}
.btn{display:inline-block;font:700 17px/1 var(--font);padding:16px 22px;border-radius:4px;text-decoration:none;cursor:pointer;border:2px solid var(--navy);transition:transform .12s,background .12s}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--navy);color:var(--paper)}
.btn-line{background:transparent;color:var(--navy)}
.btn-small{padding:10px 14px;font-size:15px}
@media (max-width:900px){.nav{display:none}.top .wrap{justify-content:space-between}.top .btn-small{display:none}}

/* hero */
.hero{padding-block:clamp(48px,7vw,88px) clamp(56px,7vw,96px)}
.hero h1{font-size:clamp(42px,6.4vw,82px);line-height:1;max-width:14ch}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,64px);align-items:end;margin-top:clamp(28px,4vw,44px)}
.hero .lede{font-size:clamp(19px,1.7vw,22px);color:var(--text);max-width:36ch}
.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero .facts{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;font-size:15px;color:var(--muted)}
.hero .facts span::before{content:"";display:inline-block;width:8px;height:8px;background:var(--marker);border:1.5px solid var(--navy);border-radius:50%;margin-right:8px;vertical-align:1px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}}

/* contract snippet */
.paper{background:var(--white);border:1px solid var(--line);padding:22px 24px 20px;font-size:16px;line-height:1.65;box-shadow:6px 6px 0 var(--navy)}
.paper .doc{font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:14px}
.paper h4{margin:0 0 4px;font-size:14px;color:var(--navy)}
.paper p + h4{margin-top:16px}
.paper s{text-decoration:line-through;text-decoration-color:var(--red);text-decoration-thickness:2px;color:var(--muted)}
.paper mark{background:var(--marker);color:var(--text);padding:0 2px;border-radius:2px 4px 2px 5px}
.paper .margin{margin-top:16px;padding:10px 12px;background:var(--marker-soft);font-size:14.5px;border-radius:3px}
.paper .margin b{color:var(--navy)}
.paper .num{font-weight:700;white-space:nowrap}

/* examples carousel */
.carousel{margin-top:40px}
.car-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.car-track::-webkit-scrollbar{display:none}
.car-slide{flex:0 0 100%;scroll-snap-align:center;padding:4px 2px;display:flex;justify-content:center}
.car-slide .paper{max-width:640px;width:100%}
.car-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}
.car-btn{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--navy);background:var(--white);color:var(--navy);font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .12s}
.car-btn:hover{transform:translateY(-2px)}
.car-dots{display:flex;gap:8px}
.car-dot{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--navy);background:transparent;padding:0;cursor:pointer}
.car-dot.on{background:var(--marker)}

/* sections */
.sec{padding-block:clamp(64px,8vw,112px)}
.sec + .sec{border-top:1px solid var(--line)}
.sec h2{font-size:clamp(32px,4.2vw,52px);line-height:1.06;max-width:22ch}
.sec .intro{margin-top:18px;max-width:58ch;color:var(--muted);font-size:19px}
.kicker{font-size:16px;font-weight:700;color:var(--blue);margin-bottom:14px}
.dark{background:var(--navy);color:#D6DCEA}
.dark h2,.dark h3{color:#FFFFFF}
.dark .intro{color:#B7C0D6}
.dark .kicker{color:var(--marker)}
.dark + .sec{border-top:0}

.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.tags span{font-size:15px;font-weight:500;padding:7px 12px;border:1.5px solid var(--navy);border-radius:999px;color:var(--navy)}

/* playbook table */
.moves{margin-top:40px;border-top:2px solid #FFFFFF}
.move{display:grid;grid-template-columns:minmax(180px,1fr) 1.4fr 1.4fr;gap:28px;padding-block:22px;border-bottom:1px solid #2E4470}
.move h3{font-size:21px;line-height:1.25}
.move p{font-size:16.5px;line-height:1.55}
.move .them{color:#B7C0D6}
.move .us{color:#FFFFFF}
.move .lbl{display:block;font-size:13px;font-weight:700;margin-bottom:4px}
.move .them .lbl{color:#FF9B8F}
.move .us .lbl{color:var(--marker)}
.moves-head{display:grid;grid-template-columns:minmax(180px,1fr) 1.4fr 1.4fr;gap:28px;padding-block:12px;font-size:14px;font-weight:700;color:#8C97B3}
@media (max-width:820px){.move,.moves-head{grid-template-columns:1fr;gap:10px}.moves-head{display:none}}
@media (min-width:821px){.move .lbl{display:none}}

/* offers */
.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:44px;align-items:stretch}
.offer{background:var(--white);border:1.5px solid var(--line);border-top:6px solid var(--line);padding:26px 24px;display:flex;flex-direction:column;gap:14px}
.offer.first{border-color:var(--navy);border-top-color:var(--marker)}
.offer .when{font-size:14px;font-weight:700;color:var(--muted)}
.offer h3{font-size:25px;line-height:1.15}
.offer .desc{font-size:16.5px;color:var(--muted)}
.offer .price{font-size:27px;font-weight:800;color:var(--navy);line-height:1.1}
.offer .price small{display:block;font-size:14px;font-weight:500;color:var(--muted);margin-top:4px}
.offer ul{margin:0;padding:0 0 0 18px;font-size:16px;display:grid;gap:6px}
.offer li::marker{color:var(--navy)}
.offer .go{margin-top:auto;padding-top:6px;font-weight:700}
.offers-foot{margin-top:18px;font-size:15px;color:var(--muted)}
@media (max-width:980px){.offers{grid-template-columns:1fr;max-width:600px}}

/* practices */
.practices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:44px;align-items:stretch}
.practice{background:var(--white);border:1.5px solid var(--line);padding:24px 22px;display:flex;flex-direction:column;gap:12px}
.practice h3{font-size:20px;line-height:1.2}
.practice p{font-size:15.5px;color:var(--muted)}
.practice ul{margin:2px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;font-size:14px}
.practice li{color:var(--text);padding-left:14px;position:relative}
.practice li::before{content:"›";position:absolute;left:0;color:var(--blue);font-weight:700}
@media (max-width:980px){.practices{grid-template-columns:1fr;max-width:600px}}
@media (min-width:981px) and (max-width:1180px){.practice ul{grid-template-columns:1fr}}

/* steps */
.steps{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;counter-reset:s}
.steps li{counter-increment:s;padding-top:16px;border-top:3px solid var(--navy)}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--marker);color:var(--navy);font-weight:800;font-size:15px;margin-bottom:10px}
.steps b{display:block;color:var(--navy);font-size:19px;margin-bottom:4px}
.steps span{font-size:16px;color:var(--muted)}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* charter */
.charter{margin-top:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0 20px;border-top:2px solid var(--navy)}
.charter div{padding:20px 24px 22px 0;border-bottom:1px solid var(--line)}
.charter b{display:block;color:var(--navy);font-size:19px;line-height:1.3;margin-bottom:6px}
.charter span{font-size:16px;color:var(--muted)}
.charter em{font-style:normal;font-size:13px;font-weight:700;color:var(--blue);display:block;margin-bottom:6px}

/* who */
.who{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.who div{background:var(--white);border:1.5px solid var(--line);padding:22px 24px}
.who h3{font-size:21px;margin-bottom:6px}
.who p{font-size:16.5px;color:var(--muted)}
@media (max-width:760px){.who{grid-template-columns:1fr}}

/* check */
.check{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;margin-top:40px;align-items:start}
.qs{list-style:none;margin:0;padding:0;counter-reset:q}
.qs li{counter-increment:q;display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:center;padding-block:14px;border-bottom:1px solid var(--line)}
.qs li::before{content:counter(q);font-weight:800;color:var(--navy)}
.qs .qt{font-size:16.5px}
.yn{display:inline-flex;flex-wrap:wrap;gap:6px}
.yn input{position:absolute;opacity:0;pointer-events:none}
.yn label{font-weight:700;font-size:15px;padding:8px 14px;border:1.5px solid var(--navy);border-radius:4px;cursor:pointer;color:var(--navy);background:var(--white)}
.yn input:checked + label{background:var(--navy);color:var(--paper)}
.yn input:focus-visible + label{outline:3px solid var(--blue);outline-offset:2px}
.score{position:sticky;top:96px;background:var(--navy);color:#D6DCEA;padding:26px;display:grid;gap:14px;border-radius:4px}
.score .n{font-size:64px;font-weight:800;color:#FFFFFF;line-height:1;font-variant-numeric:tabular-nums}
.score .n small{font-size:18px;font-weight:500;color:#B7C0D6}
.bar{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}
.bar i{height:10px;background:#2E4470;border-radius:2px}
.bar i.on{background:var(--marker)}
.score .verdict{font-size:22px;font-weight:800;color:#FFFFFF;line-height:1.25}
.score p{font-size:16px}
.score .meta{font-size:14px;color:#8C97B3}
.score .btn{background:var(--marker);color:var(--navy);border-color:var(--marker);justify-self:start}
@media (max-width:900px){.check{grid-template-columns:1fr}.score{position:static}}
@media (max-width:700px){.qs li{grid-template-columns:26px 1fr}.qs .yn{grid-column:2}}

/* discretion */
.pts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}
.pts div{border-top:2px solid var(--marker);padding-top:16px}
.pts b{display:block;color:#FFFFFF;font-size:20px;margin-bottom:6px}
.pts p{font-size:16.5px}
@media (max-width:800px){.pts{grid-template-columns:1fr}}

/* faq */
.faq{margin-top:36px;max-width:800px;border-top:2px solid var(--navy)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:18px 40px 18px 0;position:relative;font-weight:700;font-size:19px;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:12px;font-size:28px;font-weight:500;color:var(--navy)}
.faq details[open] summary::after{content:"–"}
.faq details p{padding-bottom:20px;color:var(--muted);max-width:62ch;font-size:17px}

/* contact */
.contact{display:grid;grid-template-columns:.9fr 1.2fr;gap:clamp(28px,5vw,64px);margin-top:40px;align-items:start}
.next{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.next li{font-size:16.5px;color:var(--muted);padding-left:22px;position:relative}
.next li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;background:var(--marker);border:1.5px solid var(--navy);border-radius:50%}
.next b{color:var(--navy)}
form.f{background:var(--white);border:1.5px solid var(--navy);padding:clamp(20px,3vw,32px);display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:6px 6px 0 var(--marker)}
.fld{display:grid;gap:6px}
.fld.full{grid-column:1/-1}
.fld label{font-size:15px;font-weight:700;color:var(--navy)}
.fld input,.fld select,.fld textarea{font:400 17px/1.4 var(--font);color:var(--text);background:var(--paper);border:1.5px solid #CFCCC0;border-radius:4px;padding:11px 12px;width:100%}
.fld textarea{min-height:110px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:3px solid var(--blue);outline-offset:0;border-color:transparent}
.ok-box{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--muted)}
.ok-box input{margin-top:5px;accent-color:var(--navy)}
.hp{position:absolute;left:-9999px}
.send{grid-column:1/-1;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.status{font-size:15.5px;font-weight:500}
.status.good{color:#1E7A45}
.status.bad{color:var(--red)}
@media (max-width:860px){.contact{grid-template-columns:1fr}}
@media (max-width:520px){form.f{grid-template-columns:1fr}}

/* footer */
.foot{background:var(--navy);color:#B7C0D6;padding-block:40px 48px;font-size:15px}
.foot .wrap{display:grid;gap:16px}
.foot .row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}
.foot .logo{color:#FFFFFF}
.foot .logo span{color:var(--navy)}
.foot a{color:#FFFFFF}
.foot .legal{font-size:13.5px;color:#8C97B3}
.foot .legal .todo{color:var(--marker)}

/* privacy page */
.doc-page{max-width:760px;padding-block:56px 96px}
.doc-page h1{font-size:clamp(34px,5vw,52px)}
.doc-page h2{font-size:22px;margin-top:36px;padding-top:18px;border-top:1px solid var(--line)}
.doc-page p{margin-top:10px;color:var(--muted)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* scan tiers */
.tiers{margin-top:40px;background:var(--white);border:1.5px solid var(--navy);padding:clamp(20px,3vw,32px)}
.tiers h3{font-size:24px}
.tiers-intro{margin-top:8px;color:var(--muted);font-size:16.5px;max-width:70ch}
.tier-table{margin-top:20px;border-top:2px solid var(--navy)}
.tier-row{display:grid;grid-template-columns:1.3fr 1.2fr .8fr .9fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:16.5px;align-items:baseline}
.tier-row b{color:var(--navy)}
.tier-head{font-size:13.5px;font-weight:700;color:var(--muted)}
.tiers-note{margin-top:14px;font-size:15px;color:var(--muted)}
@media (max-width:640px){.tier-head{display:none}.tier-row{grid-template-columns:1fr auto;gap:2px 12px}.tier-row span:nth-child(4){order:2;text-align:right}.tier-row span:nth-child(2){order:3;font-size:15px;color:var(--muted)}.tier-row span:nth-child(3){order:4;text-align:right;font-size:15px;color:var(--muted)}}

/* not for */
.not-for{margin-top:28px;border-left:6px solid var(--marker);background:var(--white);padding:20px 24px}
.not-for h3{font-size:21px;margin-bottom:8px}
.not-for ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.not-for li{font-size:16.5px;color:var(--muted)}
.not-for li b{color:var(--navy)}
