/* Perbaikan interaksi dan gerakan, dengan desain KLINT asli sebagai dasar. */
#interaction-dialog .interaction-fields{display:grid;gap:14px;margin:20px 0}
#interaction-dialog label{display:grid;gap:7px;font-size:14px}
#interaction-dialog input[type="text"]{width:100%;min-height:44px;border:1px solid #4f686b;border-radius:6px;padding:10px 12px;background:transparent;color:inherit;font:inherit}
#interaction-dialog .interaction-checkbox{display:flex;align-items:center;gap:10px}
#interaction-dialog .interaction-checkbox input{width:18px;height:18px;accent-color:#34d8da}
#interaction-dialog .p5-dialog-actions{display:flex;flex-wrap:wrap;gap:10px}
#interaction-dialog .p5-dialog-actions a{display:inline-flex;align-items:center;min-height:44px;padding:9px 26px;border-radius:40px;border:1px solid #d9e3e5;color:inherit;text-decoration:none;font-size:inherit}
#interaction-dialog .interaction-status{margin:10px 0 0;font-size:14px}
#interaction-dialog :focus-visible{outline:2px solid #34d8da;outline-offset:4px}
dialog[data-modal-fallback][open]{position:fixed;inset:0;margin:auto;z-index:1002}
dialog:not([open]){display:none}
.interaction-backdrop{position:fixed;inset:0;background:#05090cbd;z-index:1001}
#contact-prepared-text{min-height:150px;margin-top:12px}
#contact-prepared-text[hidden]{display:none!important}
#contact-download{margin-left:10px}
/* Darken only the backdrop so the original white wordmark and copy stay readable. */
.showcase::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(3,38,47,.54),rgba(3,38,47,.48) 14%,rgba(3,45,55,.05) 34%,rgba(3,45,55,.26) 46%,rgba(3,45,55,.5) 56%,rgba(3,45,55,.7) 100%)}
#main h1:focus{outline:none}
.showcase-system{display:flex;position:absolute;bottom:16px;left:50%;right:auto;transform:translateX(-50%);width:auto;z-index:8;margin:0;justify-content:center}
.showcase-system>p,.showcase-system>.showcase-count{display:none}
.showcase-system .motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;min-width:160px;margin:0;padding:7px 15px;border:1px solid #ffffff80;border-radius:99px;background:#083c47a6;color:#fff;font-size:12px;line-height:1.4;cursor:pointer}
.showcase-system .motion-toggle:disabled{opacity:1;cursor:default}
.showcase-system .motion-toggle:focus-visible{outline:3px solid #fff;outline-offset:4px}
.showcase[data-motion-paused="true"] .pack-float,.showcase[data-motion="paused"] .pack-float{animation-play-state:paused}
.p5-reference-note{width:calc(100% - 40px);max-width:980px;margin:0 auto 26px;text-align:center;font-size:13px;line-height:1.6;color:#c6d8d9}
.home-usage-reference-note{margin:0;padding:16px 24px;text-align:center;font-size:13px;line-height:1.6;color:#d0e3e2;background:#1b1f22}
.contact-send-hint{margin:12px 0 18px;font-size:13px;line-height:1.6;color:#35464b}
.footer-info-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.footer-info-body>p{margin-top:16px}
.footer-info-body h2{font-size:1.4rem;margin:28px 0 10px;line-height:1.3}
.contact-channels{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin-top:22px;font-size:14px}
.contact-channels a{min-height:44px;display:inline-flex;align-items:center;color:#164e4c;text-decoration-thickness:1px}
body.is-contact .contact-phone-row input{width:auto;flex:1;padding-right:14px;border-right:0;border-radius:8px 0 0 8px}
body.is-contact .contact-phone-row select{position:static;opacity:1;width:155px;height:52px;flex:0 0 155px;padding:0 12px;border:1px solid #cfd2d4;border-radius:0 8px 8px 0;background:#f5fbfa;font-size:13px;appearance:auto}
body.is-contact .contact-phone-chevron{display:none}
.bali-map-frame .bali-map-hit{touch-action:manipulation}
.product-card,.p5-card{transition:translate .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s,border-color .28s}
.showcase-links a,.racing-cta,.contact-submit,.bali-search-submit{transition:transform .25s,box-shadow .25s,background .25s}
.racing-cta svg{transition:transform .25s}
@media(hover:hover) and (pointer:fine){
 .product-card:hover,.p5-card:hover{translate:0 -5px;box-shadow:0 16px 36px #06292b26;border-color:#30cac4}
 .racing-cta:hover svg{transform:translateX(4px)}
 .showcase-links a:hover,.contact-submit:hover{box-shadow:0 8px 24px #05373a30}
}
.product-card:focus-within,.p5-card:focus-within{border-color:#30cac4;box-shadow:0 0 0 2px #30cac466}
@media(max-width:767px){
 .is-home .menu-toggle{min-width:44px;min-height:44px}
 .is-home .menu-label{display:none}
 .is-home .header-actions{gap:4px}
 .is-home .header-actions:before{display:none}
 .is-home .home-account{width:40px;height:44px;flex:0 0 40px}
 .is-home .home-region{padding:0 9px;gap:5px}
 .is-home .brand-wordmark{width:clamp(115px,32vw,152px);min-width:0}
 .showcase{height:max(840px,100svh);min-height:840px}
 .showcase-stage{top:118px;height:300px;min-height:300px;max-height:none}
 .showcase-pack{width:clamp(200px,56vw,310px)}
 .showcase-nav{top:344px}
 .showcase-dots{top:416px;left:50%;right:auto;flex-direction:row;gap:3px;transform:translateX(-50%)}
 .showcase-dots button{width:44px;height:44px;min-width:44px;min-height:44px}
 .showcase-copy{bottom:86px}
 .showcase-system{bottom:16px}
 body.is-contact .contact-phone-row select{width:128px;flex-basis:128px;height:50px;padding-inline:8px;font-size:12px}
}
@media(max-width:540px){
 .bali-locator-copy h1{white-space:normal;font-size:clamp(32px,10vw,53px)}
}
@media(max-width:360px){
 .is-home .header-inner{gap:4px;width:calc(100% - 20px)}
 .is-home .home-region{font-size:10px;padding:0 7px}
 .is-home .home-region .indonesia-flag{width:18px;height:13px}
 .is-home .brand-tagline{font-size:8px;letter-spacing:.22em}
 .showcase-stage{top:112px}
 .showcase-dots{top:422px}
}
@media(prefers-reduced-motion:reduce){
 .product-card:hover,.p5-card:hover{translate:none}
 .racing-cta:hover svg{transform:none}
}
html[data-user-reduced-motion="true"] *,html[data-user-reduced-motion="true"] *::before,html[data-user-reduced-motion="true"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-user-reduced-motion="true"] .product-card,html[data-user-reduced-motion="true"] .p5-card{translate:none!important}
@media print{
  .site-header,.top-notice,.site-footer,.skip-link,.viewer-toolbar,.viewer-bottom,.viewer-help,.print-button,.detail-picker,.breadcrumbs,dialog,.interaction-backdrop{display:none!important}
  .detail-layout{display:block!important}.viewer{break-inside:avoid}.specification-panel{break-inside:avoid}
}

/* KLINT Indonesia | Premium full-screen navigation | October 2026.
   This stylesheet scopes visual changes to the menu; the page designs are unchanged. */
.menu-toggle { display: inline-flex; }
body:not(.is-home) .site-header .header-inner { column-gap: clamp(12px, 2vw, 30px); }
body:not(.is-home) .site-header .brand { order: 0; margin-right: auto; }
body:not(.is-home) .site-header .menu-toggle { order: 2; margin-left: auto; min-width: 44px; min-height: 44px; }
body:not(.is-home) .site-header .header-actions { order: 1; }
body.klint-menu-open { overflow: hidden; overscroll-behavior: none; }
nav#main-nav.klint-overlay-nav,
body.is-home nav#main-nav.klint-overlay-nav {
  position: fixed !important;
  z-index: 2147482000 !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  color: #f5f7f7;
  background: #071316;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0,-16px,0);
  transition: opacity .35s ease, transform .56s cubic-bezier(.2,.75,.18,1), visibility 0s linear .56s;
  -webkit-overflow-scrolling: touch;
}
nav#main-nav.klint-overlay-nav.open,
body.is-home nav#main-nav.klint-overlay-nav.open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(0,0,0);
  transition: opacity .4s ease, transform .56s cubic-bezier(.2,.75,.18,1), visibility 0s;
}
.klint-overlay-nav::before {
  content: '';
  position: fixed;
  width: min(60vw,780px);
  height: min(70vw,900px);
  right: -35%; top: -25%;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(31,158,160,.07),transparent 65%);
  pointer-events: none;
}
.klint-overlay-nav .klint-menu-shell {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  margin: 0 auto;
  width: 100%;
  max-width: 1800px;
  padding: clamp(62px,8.5vh,112px) clamp(24px,5.9vw,100px) 30px;
}
.klint-overlay-nav .klint-menu-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}
nav#main-nav.klint-overlay-nav a.klint-menu-brand,
body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand {
  display: inline-block;
  flex: 0 1 auto;
  padding: 0;
  border: 0;
  color: #fafafa;
  background: transparent;
  text-decoration: none;
  font-family: 'Aspekta',Arial,sans-serif;
  font-size: clamp(40px,9.2vw,96px);
  font-weight: 850;
  font-style: italic;
  line-height: 1.01;
  letter-spacing: -.052em;
  white-space: nowrap;
  margin-top: 34px;
  transition: color .2s ease;
}
nav#main-nav.klint-overlay-nav a.klint-menu-brand:hover { color: #55dbdb; }
.klint-overlay-nav .klint-menu-close {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-top: -17px;
  margin-right: clamp(-10px,-1vw,0px);
  padding: 10px;
  background: none;
  color: white;
  border: 0;
  border-radius: 50%;
  transition: transform .28s ease,color .2s ease, background .2s ease;
}
.klint-overlay-nav .klint-menu-close:hover {
  color: #46d5d7;
  background: rgba(255,255,255,.07);
  transform: rotate(90deg);
}
.klint-overlay-nav .klint-menu-main {
  width: 100%;
  max-width: 820px;
  margin-top: clamp(54px,7vh,84px);
}
.klint-overlay-nav .klint-menu-eyebrow {
  margin: 0 0 clamp(24px,3vh,35px);
  color: #39d2d1;
  font-size: clamp(18px,2.5vw,24px);
  font-weight: 780;
  letter-spacing: .36em;
  line-height: 1.5;
}
.klint-overlay-nav .klint-menu-items {
  display: flex;
  flex-direction: column;
  width: 100%;
}
nav#main-nav.klint-overlay-nav .klint-menu-items a,
body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
  min-height: clamp(86px,11.15vh,118px);
  margin: 0;
  padding: 14px 1px 17px 0;
  color: #f5f7f7;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #304044;
  text-decoration: none;
  font-size: clamp(32px,4.65vw,50px);
  font-weight: 410;
  line-height: 1.15;
  letter-spacing: -.029em;
  white-space: normal;
  opacity: 0;
  transform: translate3d(0,22px,0);
  transition: color .22s ease, padding-left .28s cubic-bezier(.2,.8,.2,1),
    opacity .5s ease, transform .6s cubic-bezier(.16,.8,.15,1);
}
nav#main-nav.klint-overlay-nav.open .klint-menu-items a,
body.is-home nav#main-nav.klint-overlay-nav.open .klint-menu-items a {
  opacity: 1;
  transform: translate3d(0,0,0);
  transition-delay: 0s,0s,calc(55ms + var(--menu-item-index)*60ms),calc(55ms + var(--menu-item-index)*60ms);
}
.klint-overlay-nav .klint-menu-items a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -1px;
  height: 1px;
  background: #37d6d5;
  transition: right .38s cubic-bezier(.25,.8,.25,1);
}
.klint-overlay-nav .klint-menu-items a:hover,
.klint-overlay-nav .klint-menu-items a:focus-visible { color: #46d6d5; padding-left: 11px; }
.klint-overlay-nav .klint-menu-items a:hover::after,
.klint-overlay-nav .klint-menu-items a:focus-visible::after { right: 0; }
.klint-overlay-nav .klint-menu-link-arrow {
  flex: 0 0 25px;
  opacity: 0;
  color: #4cdbda;
  transform: translate(-12px,0);
  transition: opacity .26s ease, transform .3s ease;
}
.klint-overlay-nav .klint-menu-items a:hover .klint-menu-link-arrow,
.klint-overlay-nav .klint-menu-items a:focus-visible .klint-menu-link-arrow { opacity: 1; transform: translate(0,0); }
.klint-overlay-nav .klint-menu-footer {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  max-width: 820px;
  margin-top: auto;
  padding-top: 40px;
  color: #718b8e;
  letter-spacing: .22em;
  font-size: 10px;
  font-weight: 650;
}
.klint-overlay-nav a:focus-visible,
.klint-overlay-nav button:focus-visible { outline: 2px solid #47dfdf; outline-offset: 7px; }
@media (max-width: 760px) {
  .klint-overlay-nav .klint-menu-shell { padding: 72px 6vw 28px; }
  .klint-overlay-nav .klint-menu-header { gap: 10px; }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand { font-size: clamp(32px,7.45vw,55px); margin-top:0; }
  .klint-overlay-nav .klint-menu-close { width: 44px; height: 44px; margin-top: -11px; }
  .klint-overlay-nav .klint-menu-close svg { width: 29px; height: 29px; }
  .klint-overlay-nav .klint-menu-main { margin-top: clamp(48px,7vh,66px); }
  .klint-overlay-nav .klint-menu-eyebrow { margin-bottom: 18px; font-size: 15px; letter-spacing: .3em; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: clamp(69px,9.2vh,90px); font-size: clamp(25px,5vw,36px); }
  .klint-overlay-nav .klint-menu-footer { padding-top: 32px; font-size: 9px; }
}
@media (max-width: 420px) {
  .klint-overlay-nav .klint-menu-shell { padding: 58px 6vw 24px; }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand { font-size: clamp(29px,7.3vw,36px); }
  .klint-overlay-nav .klint-menu-close { margin-top: -9px; margin-right: -4px; }
  .klint-overlay-nav .klint-menu-main { margin-top: 46px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: 70px; font-size: 26px; }
}
@media (max-height: 780px) and (min-width: 761px) {
  .klint-overlay-nav .klint-menu-shell { padding-top: 44px; }
  .klint-overlay-nav .klint-menu-main { margin-top: 34px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: 70px; font-size: clamp(26px,3vw,37px); }
  .klint-overlay-nav .klint-menu-eyebrow { margin-bottom: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  nav#main-nav.klint-overlay-nav,nav#main-nav.klint-overlay-nav * { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a { opacity: 1; transform: none; }
}
html[data-user-reduced-motion="true"] nav#main-nav.klint-overlay-nav .klint-menu-items a { opacity: 1; transform: none; }
@media print { nav#main-nav.klint-overlay-nav { display: none !important; } }

/* Some full-bleed editorial pages intentionally hide their original header.
   Keep them visually unchanged except for a compact floating menu opener. */
body.is-contact .site-header,body.is-bali .site-header {
  display: block !important;
  position: fixed;
  z-index: 60;
  top: 20px;
  right: 22px;
  left: auto;
  width: auto;
  border: 0;
  box-shadow: none;
  background: transparent;
  pointer-events: none;
}
body.is-contact .site-header .header-inner,body.is-bali .site-header .header-inner {
  display: flex;
  align-items: center;
  width: auto;
  min-height: 48px;
  margin: 0;
  pointer-events: none;
}
body.is-contact .site-header .brand,body.is-contact .site-header .header-actions,
body.is-bali .site-header .brand,body.is-bali .site-header .header-actions { display: none !important; }
body.is-contact .site-header .menu-toggle,body.is-bali .site-header .menu-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 52px;
  min-height: 52px;
  padding: 11px;
  margin: 0;
  color: white;
  background: rgba(7,19,22,.9);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  pointer-events: auto;
  backdrop-filter: blur(12px);
}
body.is-contact .site-header .menu-label,body.is-bali .site-header .menu-label { display:none !important; }
body.is-contact .site-header .menu-toggle:hover,body.is-bali .site-header .menu-toggle:hover {background:#126b70;}


/* KLINT menu v2: compact typography and floating, scroll-following header. */
body.is-home .site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 95;
  background: transparent;
  transition: background-color .28s ease, border-color .28s ease, box-shadow .28s ease;
}
body.is-home .site-header .header-inner {
  transition: min-height .28s ease, padding .28s ease;
}
body.is-home .site-header .brand-wordmark,
body.is-home .site-header .brand-tagline {
  transition: width .28s ease, font-size .28s ease;
}
body.is-home.klint-header-scrolled .site-header {
  background: rgba(5, 23, 26, .92);
  border-bottom: 1px solid rgba(255,255,255,.17);
  box-shadow: 0 9px 28px rgba(0,0,0,.16);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
body.is-home.klint-header-scrolled .site-header .header-inner {
  min-height: 82px;
  padding-top: 0;
}
body.is-home.klint-header-scrolled .site-header .brand-wordmark {
  width: min(15vw, 232px);
}
body.is-home.klint-header-scrolled .site-header .brand-tagline {
  font-size: 10px;
}
body:not(.is-home):not(.is-contact):not(.is-bali) .site-header {
  position: sticky;
  top: 0;
  z-index: 95;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
body.klint-header-scrolled:not(.is-home):not(.is-contact):not(.is-bali) .site-header {
  box-shadow: 0 6px 22px rgba(4,18,21,.08);
}
/* Compact overlay keeps all six destinations visible without exaggerated spacing. */
.klint-overlay-nav .klint-menu-shell {
  max-width: 1480px;
  padding: clamp(28px,4.5vh,54px) clamp(22px,5vw,74px) 24px;
}
nav#main-nav.klint-overlay-nav a.klint-menu-brand,
body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand {
  font-size: clamp(30px,4.7vw,62px);
  line-height: 1.08;
  margin-top: 3px;
}
.klint-overlay-nav .klint-menu-close {
  width: 46px;
  height: 46px;
  margin-top: 0;
  margin-right: 0;
}
.klint-overlay-nav .klint-menu-close svg { width: 27px; height: 27px; }
.klint-overlay-nav .klint-menu-main {
  max-width: 710px;
  margin-top: clamp(26px,5vh,54px);
}
.klint-overlay-nav .klint-menu-eyebrow {
  margin-bottom: 14px;
  font-size: clamp(12px,1.2vw,15px);
  letter-spacing: .31em;
}
nav#main-nav.klint-overlay-nav .klint-menu-items a,
body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a {
  min-height: clamp(54px,7.1vh,72px);
  padding: 9px 1px 10px 0;
  font-size: clamp(24px,2.6vw,35px);
  line-height: 1.16;
}
.klint-overlay-nav .klint-menu-footer {
  max-width: 710px;
  padding-top: 22px;
  font-size: 9px;
}
@media(max-width:760px) {
  .klint-overlay-nav .klint-menu-shell {
    padding: clamp(28px,4.5vh,42px) 6vw 20px;
  }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand,
  body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand {
    font-size: clamp(28px,6vw,40px);
    margin-top: 2px;
  }
  .klint-overlay-nav .klint-menu-close { width: 42px; height: 42px; margin: 0; }
  .klint-overlay-nav .klint-menu-close svg { width: 25px; height: 25px; }
  .klint-overlay-nav .klint-menu-main { margin-top: clamp(30px,5vh,42px); }
  .klint-overlay-nav .klint-menu-eyebrow { font-size: 12px; letter-spacing:.27em; margin-bottom: 12px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a {
    min-height: clamp(52px,7.7vh,62px);
    font-size: clamp(21px,4.9vw,27px);
    padding: 8px 0 9px;
  }
  .klint-overlay-nav .klint-menu-footer { padding-top: 20px; font-size: 9px; }
  body.is-home.klint-header-scrolled .site-header .header-inner {
    min-height: 74px;
    padding-top: 0;
  }
  body.is-home.klint-header-scrolled .site-header .brand-wordmark {
    width: min(31vw,160px);
  }
  body.is-home.klint-header-scrolled .site-header .brand-tagline { font-size: 8px; }
}
@media(max-width:420px) {
  .klint-overlay-nav .klint-menu-shell { padding-top: 30px; }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand,
  body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand { font-size: clamp(25px,6.5vw,30px); }
  .klint-overlay-nav .klint-menu-main { margin-top: 31px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: 54px; font-size: 23px; }
  body.is-home.klint-header-scrolled .site-header .header-inner { min-height: 66px; }
}
@media(max-height:690px) {
  .klint-overlay-nav .klint-menu-shell { padding-top: 20px; }
  .klint-overlay-nav .klint-menu-main { margin-top: 20px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: 48px; }
  .klint-overlay-nav .klint-menu-footer { padding-top: 15px; }
}
@media(prefers-reduced-motion:reduce) {
  body.is-home .site-header,body.is-home .site-header .header-inner,
  body.is-home .site-header .brand-wordmark { transition: none; }
}


/* KLINT menu v3: restrained navigation drawer instead of an oversized full-screen layout. */
nav#main-nav.klint-overlay-nav,
body.is-home nav#main-nav.klint-overlay-nav {
  display: flex !important;
  align-items: flex-start;
  justify-content: flex-end;
  background: rgba(2, 12, 15, .52);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  overflow: hidden !important;
  transform: none;
  transition: opacity .25s ease, visibility 0s linear .25s;
}
nav#main-nav.klint-overlay-nav.open,
body.is-home nav#main-nav.klint-overlay-nav.open {
  transform: none;
  transition: opacity .25s ease, visibility 0s;
}
.klint-overlay-nav::before { display: none; }
.klint-overlay-nav .klint-menu-shell {
  box-sizing: border-box;
  width: min(440px, calc(100% - 32px));
  max-width: 440px;
  min-height: 0;
  max-height: calc(100dvh - 32px);
  margin: 16px auto 16px 16px;
  padding: 26px 30px 18px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 15px;
  background: #071316;
  box-shadow: 0 28px 72px rgba(0,0,0,.38);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  transform: translate3d(-18px,-8px,0) scale(.98);
  opacity: .96;
  transition: transform .35s cubic-bezier(.16,1,.3,1), opacity .3s ease;
}
.klint-overlay-nav.open .klint-menu-shell {
  transform: translate3d(0,0,0) scale(1);
  opacity: 1;
}
.klint-overlay-nav .klint-menu-header { gap: 10px; align-items: flex-start; }
.klint-overlay-nav .klint-menu-identity { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
nav#main-nav.klint-overlay-nav a.klint-menu-brand,
body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand {
  font-size: clamp(24px,2.2vw,31px);
  margin: 0;
  letter-spacing: -.055em;
  line-height: 1.08;
  white-space: normal;
}
.klint-overlay-nav .klint-menu-tagline {
  margin: 0;
  color: #d7e1e2;
  font-family: 'Aspekta',Arial,sans-serif;
  font-size: 11px;
  font-weight: 550;
  line-height: 1.35;
  letter-spacing: .065em;
}
.klint-overlay-nav .klint-menu-close { width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: -4px -5px 0 0; padding: 12px; }
.klint-overlay-nav .klint-menu-close svg { width: 20px; height: 20px; }
.klint-overlay-nav .klint-menu-main { width: 100%; max-width: none; margin-top: 32px; }
.klint-overlay-nav .klint-menu-eyebrow { font-size: 10px; letter-spacing: .24em; margin: 0 0 10px; }
nav#main-nav.klint-overlay-nav .klint-menu-items a,
body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a {
  min-height: 51px;
  padding: 10px 0;
  font-size: 19px;
  font-weight: 420;
  line-height: 1.18;
  letter-spacing: -.018em;
}
.klint-overlay-nav .klint-menu-link-arrow { flex-basis: 18px; width: 18px; height: 18px; }
.klint-overlay-nav .klint-menu-footer { max-width: none; padding-top: 24px; font-size: 8px; letter-spacing: .16em; }
@media (max-width: 760px) {
  .klint-overlay-nav .klint-menu-shell {
    width: min(390px, calc(100% - 20px));
    max-width: 390px;
    margin: 10px auto 10px 10px;
    padding: 23px 22px 17px;
    max-height: calc(100dvh - 20px);
  }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand,
  body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand { font-size: clamp(23px,5.8vw,28px); margin: 0; }
  .klint-overlay-nav .klint-menu-tagline { font-size: 10px; }
  .klint-overlay-nav .klint-menu-main { margin-top: 28px; }
  .klint-overlay-nav .klint-menu-eyebrow { font-size: 10px; margin-bottom: 8px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a { font-size: 17px; min-height: 44px; padding: 8px 0; }
  .klint-overlay-nav .klint-menu-footer { padding-top: 21px; }
}
@media (max-width: 420px) {
  .klint-overlay-nav .klint-menu-shell { padding: 22px 18px 15px; }
  nav#main-nav.klint-overlay-nav a.klint-menu-brand,
  body.is-home nav#main-nav.klint-overlay-nav a.klint-menu-brand { font-size: clamp(22px,5.8vw,25px); }
  .klint-overlay-nav .klint-menu-main { margin-top: 26px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a { font-size: 17px; min-height: 44px; }
}
@media (max-height: 690px) {
  .klint-overlay-nav .klint-menu-shell { padding-top: 17px; padding-bottom: 12px; }
  .klint-overlay-nav .klint-menu-main { margin-top: 17px; }
  nav#main-nav.klint-overlay-nav .klint-menu-items a,
  body.is-home nav#main-nav.klint-overlay-nav .klint-menu-items a { min-height: 42px; padding: 7px 0; }
  .klint-overlay-nav .klint-menu-footer { padding-top: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .klint-overlay-nav .klint-menu-shell { transition: none; }
}
html[data-user-reduced-motion="true"] .klint-overlay-nav .klint-menu-shell { transition: none; }
.klint-overlay-nav .klint-menu-preferences-row { margin-top: 16px; }
.klint-overlay-nav .klint-menu-preferences {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 9px 14px;
  border: 1px solid #94b9b74d;
  border-radius: 8px;
  background: #ffffff06;
  color: #c9e3e1;
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}
.klint-overlay-nav .klint-menu-preferences:hover { background: #ffffff12; }
.klint-overlay-nav .klint-menu-preferences:focus-visible { outline: 2px solid #a5d9d4; outline-offset: 3px; }
