/* Shared chrome CSS for Insights / light subpages */
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/onest-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/onest-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--black:#000;--white:#fff;--gray:#8D8D8D;--dgray:#606060;--lgray:#F2F2F2;--border:#DFDFDF;--red:#EA4651;--f:'Onest',-apple-system,sans-serif;--ease:cubic-bezier(.23,1,.32,1)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{overflow-x:clip;max-width:100%}
body{background:var(--white);color:var(--black);font-family:var(--f);font-weight:400;overflow-x:clip;max-width:100%;width:100%;cursor:none}
body.drawer-open{overflow:hidden;position:fixed;width:100%;left:0;right:0;touch-action:none}
a,button,.n-burger,.lang-btn,.cf-submit,.consent-banner__btn,.drawer-close,.n-cta,.wcard{cursor:none}

/* Match homepage custom cursor */
#cur{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;mix-blend-mode:difference}
#cur-cross{position:absolute;transform:translate(-50%,-50%);width:18px;height:18px}
#cur-cross::before,#cur-cross::after{content:'';position:absolute;background:#fff}
#cur-cross::before{width:1px;height:100%;left:50%;top:0}
#cur-cross::after{width:100%;height:1px;top:50%;left:0}
#cur-ring{position:absolute;transform:translate(-50%,-50%);width:38px;height:38px;
  border-radius:50%;border:1px solid rgba(255,255,255,.45);
  transition:width .35s cubic-bezier(.23,1,.32,1),height .35s cubic-bezier(.23,1,.32,1),border-color .25s}
#cur.is-hover #cur-ring{border-color:rgba(255,255,255,.85)}
.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}
.skip-link{position:absolute;left:12px;top:12px;z-index:10001;padding:10px 14px;border-radius:5px;background:var(--black);color:var(--white);font-size:12px;font-weight:500;font-family:var(--f);text-decoration:none;letter-spacing:.04em;transform:translateY(-120%);opacity:0;pointer-events:none}
.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);opacity:1;pointer-events:auto;outline:2px solid var(--white);outline-offset:3px}
a:focus-visible,button:focus-visible,.n-burger:focus-visible,.lang-btn:focus-visible,.n-cta:focus-visible,.cf-submit:focus-visible,.consent-banner__btn:focus-visible,.drawer-close:focus-visible{outline:2px solid var(--black);outline-offset:3px}
.cf-field:focus-visible{outline:none;border-bottom-color:var(--black);box-shadow:0 1px 0 var(--black)}
body>nav{position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:flex-start;justify-content:space-between;padding:20px 32px;
  transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
body>nav.is-scrolled{
  background:rgba(255,255,255,.97);
  border-bottom:1px solid rgba(0,0,0,.06);
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset
}
.n-left{display:flex;align-items:center;gap:8px}
.n-right{display:flex;align-items:center;gap:14px}
.n-burger{width:32px;height:24px;background:var(--black);border-radius:5px;
  padding:7px 6px;display:flex;flex-direction:column;justify-content:space-between;cursor:none}
.n-burger span{display:block;height:1px;background:var(--white)}
.n-logo{display:flex;align-items:center;gap:10px;margin-left:8px;opacity:1;transition:opacity .4s;text-decoration:none;color:var(--black)}
.n-logo-mark{width:32px;height:32px;display:block;flex-shrink:0;color:var(--black)}
.n-logo span{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.n-tagline{position:absolute;left:50%;top:20px;transform:translateX(-50%);text-align:center}
.n-tagline p{font-size:14px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;line-height:18px;color:var(--black)}
.n-cta{display:flex;align-items:center;gap:8px;background:var(--black);color:var(--white);
  font-size:11px;font-weight:500;font-family:var(--f);padding:9px 14px;border-radius:5px;
  text-decoration:none;line-height:14px;transition:background .2s}
.n-cta:hover{background:#222}
.n-plus{width:17px;height:17px;border:1px solid rgba(255,255,255,.4);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:300;line-height:1}
.n-cta-short{display:none}
.lang-switch{display:flex;align-items:center;gap:2px;margin-right:4px}
.lang-btn{font-family:var(--f);font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;
  color:var(--dgray);background:transparent;border:1px solid transparent;border-radius:4px;
  padding:6px 7px;line-height:1;cursor:none;transition:color .2s,border-color .2s,background .2s}
.lang-btn:hover,.lang-btn.is-active{color:var(--black);border-color:var(--border);background:rgba(255,255,255,.5)}
.lang-btn[aria-current="true"]{color:var(--black);border-color:var(--black)}

.drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;
  transition:opacity .6s ease;z-index:219}
.drawer-overlay.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;padding:120px 32px 40px;
  background:#f3f3f3;color:var(--black);z-index:230;
  transform:translateY(-100%);pointer-events:none;visibility:hidden;
  overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  transition:transform 1.35s cubic-bezier(.77,0,.175,1),visibility 0s linear 1.35s}
.drawer.open{transform:translateY(0);pointer-events:auto;visibility:visible;transition:transform 1.35s cubic-bezier(.77,0,.175,1),visibility 0s linear 0s}
.drawer-close{position:absolute;top:26px;right:32px;width:36px;height:36px;border:0;background:transparent;
  cursor:none;display:grid;place-items:center;z-index:232}
.drawer-close span{position:absolute;width:24px;height:2px;background:var(--black)}
.drawer-close span:first-child{transform:rotate(45deg)}
.drawer-close span:last-child{transform:rotate(-45deg)}
.drawer-content{min-height:100%;height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;align-content:center;gap:48px;min-width:0;box-sizing:border-box;padding-bottom:8px}
.menu-title{font-size:clamp(38px,7vw,100px);font-weight:400;line-height:.92;text-transform:uppercase}
.drawer-media{width:clamp(220px,28vw,360px);justify-self:center;margin-top:56px;opacity:0;transform:translateY(28px) scale(.84);
  transition:transform 1.2s cubic-bezier(.22,1,.36,1),opacity .95s ease}
.drawer.drawer-ready .drawer-media{opacity:1;transform:translateY(0) scale(1);transition-delay:0s}
.drawer-media img{width:100%;height:auto;display:block;transform:rotate(-6deg);
  transition:transform 1.35s cubic-bezier(.22,1,.36,1)}
.drawer.open .drawer-media img{transform:rotate(0)}
.menu-items{list-style:none;display:flex;flex-direction:column;gap:14px;justify-self:start;align-self:center;min-width:0;width:100%;max-width:100%;padding-right:0;padding-left:4vw;box-sizing:border-box}
.menu-item-wrap{overflow:visible;width:100%;max-width:100%;min-width:0}
.menu-items a{display:inline-block;position:relative;text-decoration:none;color:var(--black);
  font-size:clamp(28px,3.6vw,52px);line-height:1.2;text-transform:uppercase;opacity:.55;
  max-width:100%;white-space:normal;overflow-wrap:break-word;hyphens:auto;
  padding:.08em 0 .04em;transition:opacity .12s ease}
.drawer.open .menu-items li a:hover,
.drawer.open .menu-items li a:focus-visible{
  opacity:1;outline:none
}

.contact-form{display:flex;flex-direction:column;gap:20px;max-width:420px;justify-self:start;padding-left:4vw}
.cf-field-wrap{overflow:hidden}
.cf-label{display:block;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--gray);margin-bottom:8px}
.cf-field,.cf-submit{width:100%;font-family:var(--f);font-size:14px;color:var(--black);background:transparent;border:0;border-bottom:1px solid var(--border);padding:10px 0;outline:none;transition:border-color .2s,transform 1.05s cubic-bezier(.22,1,.36,1),opacity .45s}
.cf-field:focus{border-bottom-color:var(--black)}
.cf-field::placeholder{color:var(--gray)}
textarea.cf-field{min-height:96px;resize:vertical}
.cf-submit{width:auto;align-self:flex-start;margin-top:8px;padding:11px 18px;border:0;border-radius:5px;background:var(--black);color:var(--white);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;cursor:none;transition:background .2s,transform 1.05s cubic-bezier(.22,1,.36,1),opacity .45s}
.cf-submit:hover{background:#222}
.cf-field-wrap > *,.cf-submit{opacity:0;transform:translateY(120%)}
#contactDrawer.drawer-ready .cf-field-wrap > *,#contactDrawer.drawer-ready .cf-submit{opacity:1;transform:translateY(0)}
#contactDrawer.drawer-ready .cf-field-wrap:nth-child(1) > *{transition-delay:.05s}
#contactDrawer.drawer-ready .cf-field-wrap:nth-child(2) > *{transition-delay:.16s}
#contactDrawer.drawer-ready .cf-field-wrap:nth-child(3) > *{transition-delay:.27s}
#contactDrawer.drawer-ready .cf-field-wrap:nth-child(4) > *{transition-delay:.38s}
#contactDrawer.drawer-ready .cf-submit{transition-delay:.49s}
footer{border-top:1px solid var(--border);padding:18px 32px;display:flex;align-items:center;justify-content:space-between}
.ft-copy{font-size:11px;font-weight:500;color:var(--dgray);text-transform:uppercase;letter-spacing:.04em;line-height:14px}
.ft-links{display:flex;gap:40px}
.ft-links a{font-size:11px;font-weight:500;color:var(--dgray);text-transform:uppercase;letter-spacing:.06em;text-decoration:none;line-height:14px;transition:color .2s}
.ft-links a:hover{color:var(--red)}

/* CONSENT BANNER */
.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:9500;padding:16px;pointer-events:none}
.consent-banner[hidden]{display:none!important}
.consent-banner__inner{pointer-events:auto;max-width:920px;margin:0 auto;background:var(--black);color:var(--white);
  border-radius:8px;padding:20px 22px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  box-shadow:0 -8px 40px rgba(0,0,0,.18)}
.consent-banner__copy{flex:1;min-width:0}
.consent-banner__title{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.consent-banner__body{font-size:13px;line-height:1.45;color:rgba(255,255,255,.72);max-width:560px;margin-bottom:10px}
.consent-banner__privacy{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.55);text-decoration:underline;text-underline-offset:3px}
.consent-banner__privacy:hover{color:var(--white)}
.consent-banner__actions{display:flex;flex-shrink:0;gap:8px}
.consent-banner__btn{font-family:var(--f);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;
  padding:11px 16px;border-radius:5px;border:1px solid transparent;line-height:1;cursor:none;transition:background .2s,color .2s,border-color .2s}
.consent-banner__btn--reject{background:transparent;color:var(--white);border-color:rgba(255,255,255,.35)}
.consent-banner__btn--reject:hover{border-color:var(--white)}
.consent-banner__btn--accept{background:var(--white);color:var(--black)}
.consent-banner__btn--accept:hover{background:var(--lgray)}
.consent-banner__btn:focus-visible{outline:2px solid var(--white);outline-offset:2px}

@media (max-width:1100px){
  .n-tagline{display:none}
  .drawer-content{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px}
  .drawer-media{display:none}
  .menu-items{padding-left:0}
  .contact-form{padding-left:0;max-width:100%}
}
@media (max-width:900px){
  body>nav{padding:16px 20px}
  .n-cta-full{display:none}
  .n-cta-short{display:inline}
  footer{flex-direction:column;align-items:flex-start;gap:16px;padding:20px}
  .ft-links{flex-wrap:wrap;gap:16px 24px}
  .consent-banner{padding:12px}
  .consent-banner__inner{flex-direction:column;align-items:stretch;gap:16px;padding:18px}
  .consent-banner__actions{width:100%}
  .consent-banner__btn{flex:1;justify-content:center;text-align:center}
  .drawer{padding:64px 20px 20px}
  .drawer-content{grid-template-columns:1fr;align-items:flex-start;align-content:start;gap:28px;min-height:auto}
  .menu-title{font-size:clamp(34px,10vw,48px)}
  .menu-items a{font-size:clamp(24px,7vw,36px)}
  .drawer-close{right:20px;top:20px}
}
@media (max-width:640px){
  .n-logo span{display:none}
  .lang-btn{padding:6px 5px}
}
@media (hover:none),(pointer:coarse){
  #cur{display:none!important}
  body{cursor:auto}
  a,button,.n-burger,.n-cta,.lang-btn,.cf-submit,.consent-banner__btn,.drawer-close,.wcard{cursor:pointer}
}
