:root{
  --header-h:72px;
  --brand-500:#ee7d00;
  --brand-600:#d86f00;
  --ink-900:#0b1b3b;
  --ink-800:#122652;
  --text-900:#0f172a;
  --text-700:#334155;
  --bg-50:#f8fafc;
  --card:#ffffff;
  --border:#e5e7eb;
  --r-sm:8px;
  --r-md:10px;
  --r-lg:12px;
  --r-xl:14px;

  --font-heading:"Accent Graphic","Josefin Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-subheading:"Josefin Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-body:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

@font-face{
  font-family:"Accent Graphic";
  src:url("/assets/fonts/Accent%20Graphic%20W00%20Bold.ttf") format("truetype");
  font-weight:700;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Josefin Sans";
  src:url("/assets/fonts/fonnts.com-Josefin_Sans_Light.ttf") format("truetype");
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"Montserrat";
  src:url("/assets/fonts/Montserrat-Light.ttf") format("truetype");
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

*{box-sizing:border-box}
html{
  scroll-behavior:smooth;
  max-width:100%;
  overflow-x:clip;
}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--text-900);
  background:var(--bg-50);
  line-height:1.6;
  max-width:100%;
  overflow-x:clip;
}
a{color:inherit;text-decoration:none}

html.js-ready .reveal-block{
  opacity:0;
  transform:translate3d(0,38px,0);
  filter:blur(8px);
  transition:
    opacity .72s cubic-bezier(.22,1,.36,1),
    transform .72s cubic-bezier(.22,1,.36,1),
    filter .72s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform,filter;
}
html.js-ready .reveal-block.reveal-first-row{
  opacity:.58;
  transform:translate3d(0,18px,0);
  filter:blur(2px);
}
html.js-ready .reveal-block.reveal-in{
  opacity:1;
  transform:none;
  filter:none;
}
@media (prefers-reduced-motion: reduce){
  html.js-ready .reveal-block{
    opacity:1;
    transform:none;
    filter:none;
    transition:none;
  }
}

.container{max-width:1180px;margin:0 auto;padding:0 18px}
.sr-only{position:absolute !important;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:-999px;top:10px;padding:10px 12px;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm)}
.skip-link:focus{left:10px;z-index:9999}

.pill{display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;border:1px solid var(--border);border-radius:999px;color:var(--text-700);background:#fff;font-weight:800}
.pill:hover{color:var(--text-900);border-color:#cbd5e1}

.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--border)}
body[data-transparent-header="1"] .header{position:fixed;left:0;right:0;width:100%}
body[data-transparent-header="1"] .header.is-transparent{
  background:transparent;
  backdrop-filter:none;
  border-bottom-color:transparent;
}
body[data-transparent-header="1"] .header.is-transparent .menu-link{
  color:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
}
body[data-transparent-header="1"] .header.is-transparent .menu-link .nav-icon{color:rgba(255,255,255,.92)}
body[data-transparent-header="1"] .header.is-transparent .menu-link:hover,body[data-transparent-header="1"] .header.is-transparent .menu-link[aria-current="page"],body[data-transparent-header="1"] .header.is-transparent .nav-item--has-mega[data-open="1"] > .menu-link{
  background:rgba(0,0,0,.26);
  border-color:rgba(255,255,255,.18);
  color:#fff;
}
body[data-transparent-header="1"] .header.is-transparent .menu-link:hover .nav-icon,body[data-transparent-header="1"] .header.is-transparent .menu-link[aria-current="page"] .nav-icon,body[data-transparent-header="1"] .header.is-transparent .nav-item--has-mega[data-open="1"] > .menu-link .nav-icon{
  color:#fff;
}
body[data-transparent-header="1"] .header.is-transparent .menu-toggle{
  background:rgba(0,0,0,.18);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
body[data-transparent-header="1"] .header.is-transparent .nav-language-chip{
  background:rgba(0,0,0,.1);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
body[data-transparent-header="1"] .header.is-transparent .nav-language-dropdown{
  background:rgba(255,255,255,.98);
  border-color:rgba(226,232,240,.96);
}
body[data-transparent-header="1"] .header.is-transparent .nav-language-option{
  color:var(--text-900);
}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:18px}
.brand{position:relative;display:flex;align-items:center;gap:12px;font-weight:800;min-height:38px;flex:0 0 auto}
.brand-mark{width:38px;height:38px;border-radius:12px;background:radial-gradient(circle at 30% 30%,#ffd7b0,var(--brand-500) 55%,var(--brand-600));box-shadow:0 10px 18px rgba(238,125,0,.25)}
.brand-logo{display:block;width:156px;max-width:180px;height:38px;object-fit:contain;transition:opacity .22s ease,filter .22s ease}
.brand-logo--dark{opacity:1}
.brand-logo--light{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  opacity:0;
  pointer-events:none;
}
body[data-transparent-header="1"] .header.is-transparent .brand-logo--dark{opacity:0}
body[data-transparent-header="1"] .header.is-transparent .brand-logo--light{opacity:1}
body[data-transparent-header="1"] .header[data-open="1"].is-transparent .brand-logo--dark{opacity:1}
body[data-transparent-header="1"] .header[data-open="1"].is-transparent .brand-logo--light{opacity:0}

.menu{display:flex;gap:6px;align-items:center}
.nav-item{position:relative;display:flex;align-items:center}
.nav-language-switcher{
  position:relative;
  flex:0 0 auto;
  margin-left:8px;
  z-index:5;
}
.nav-language-switcher > summary{
  list-style:none;
  cursor:pointer;
}
.nav-language-switcher > summary::-webkit-details-marker{
  display:none;
}
.nav-language-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  min-height:42px;
  padding:0 12px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--text-900);
  box-shadow:0 10px 24px rgba(2,8,23,.06);
  transition:
    background .22s ease,
    border-color .22s ease,
    color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}
.nav-language-chip:hover{
  border-color:rgba(238,125,0,.28);
  box-shadow:0 14px 30px rgba(2,8,23,.08);
  transform:translateY(-1px);
}
.nav-language-chip-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#e14a1f;
}
.nav-language-icon{
  display:block;
  width:20px;
  height:20px;
}
.nav-language-chip-label{
  font-size:15px;
  font-weight:700;
  letter-spacing:-.01em;
}
.nav-language-chip-caret{
  flex:0 0 auto;
  color:currentColor;
  transition:transform .22s ease;
}
.nav-language-switcher[open] .nav-language-chip-caret{
  transform:rotate(180deg);
}
.nav-language-dropdown{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  display:grid;
  gap:0;
  min-width:132px;
  padding:4px 0;
  border:1px solid rgba(226,232,240,.96);
  border-radius:16px;
  background:rgba(255,255,255,.98);
  box-shadow:0 18px 38px rgba(2,8,23,.12);
  backdrop-filter:saturate(155%) blur(16px);
}
.nav-language-option{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  width:100%;
  padding:0 18px;
  color:var(--text-900);
  font-size:14px;
  font-weight:500;
}
.nav-language-option + .nav-language-option{
  border-top:1px solid rgba(226,232,240,.96);
}
.nav-language-option.is-active{
  font-weight:600;
}
.nav-item--has-mega{
  z-index:4;
  padding-bottom:10px;
  margin-bottom:-10px;
}
.nav-item--has-mega::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:14px;
}
.menu-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 10px;
  border:1px solid transparent;
  border-radius:var(--r-sm);
  box-sizing:border-box;
  color:var(--text-700);
  font-weight:600;
  font-size:14px;
  line-height:1.2;
  white-space:nowrap;
  transition:
    background .22s ease,
    border-color .22s ease,
    color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}
.menu-link .nav-icon{color:var(--text-700)}
.menu-link-caret{
  margin-left:2px;
  flex:0 0 auto;
  transition:transform .22s ease;
}
.menu-link:hover,.menu-link[aria-current="page"],.nav-item--has-mega[data-open="1"] > .menu-link{background:#fff;border:1px solid var(--border);color:var(--text-900)}
.menu-link:hover .nav-icon,.menu-link[aria-current="page"] .nav-icon,.nav-item--has-mega[data-open="1"] > .menu-link .nav-icon{color:var(--text-900)}
.nav-item--has-mega[data-open="1"] > .menu-link .menu-link-caret{transform:rotate(180deg)}

.mega-menu{
  position:absolute;
  top:calc(100% + 6px);
  left:50%;
  width:min(1120px,calc(100vw - 24px));
  opacity:0;
  pointer-events:none;
  transform:translate3d(-50%,12px,0);
  transition:opacity .22s ease,transform .22s ease;
}
.nav-item--has-mega[data-open="1"] .mega-menu{
  opacity:1;
  pointer-events:auto;
  transform:translate3d(-50%,0,0);
}
.mega-menu-shell{
  display:grid;
  grid-template-columns:minmax(232px,276px) minmax(0,1fr);
  gap:20px;
  padding:18px;
  border:1px solid rgba(226,232,240,.98);
  border-radius:18px;
  background:
    radial-gradient(circle at top left,rgba(238,125,0,.12),transparent 40%),
    linear-gradient(180deg,#ffffff,#f8fafc);
  box-shadow:0 34px 72px rgba(2,8,23,.18);
  backdrop-filter:saturate(155%) blur(16px);
}
.mega-menu-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding-right:16px;
  border-right:1px solid rgba(226,232,240,.9);
}
.mega-menu-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border:1px solid transparent;
  border-radius:14px;
  color:var(--text-900);
  background:transparent;
  transition:
    transform .22s ease,
    background .22s ease,
    border-color .22s ease,
    box-shadow .22s ease,
    color .22s ease;
}
.mega-menu-option-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.mega-menu-option-copy strong{
  font-size:15px;
  font-weight:700;
  line-height:1.25;
}
.mega-menu-option-copy small{
  font-size:12px;
  color:var(--text-700);
  line-height:1.5;
}
.mega-menu-option-arrow{
  font-size:18px;
  line-height:1;
  color:rgba(238,125,0,.66);
  transition:transform .22s ease,color .22s ease;
}
.mega-menu-option:hover,
.mega-menu-option:focus-visible,
.mega-menu-option.is-active{
  background:#fff;
  border-color:rgba(238,125,0,.24);
  box-shadow:0 18px 32px rgba(15,23,42,.08);
  transform:translateX(2px);
}
.mega-menu-option:hover .mega-menu-option-arrow,
.mega-menu-option:focus-visible .mega-menu-option-arrow,
.mega-menu-option.is-active .mega-menu-option-arrow{
  color:var(--brand-600);
  transform:translateX(2px);
}
.mega-menu-option:focus-visible{
  outline:2px solid rgba(238,125,0,.28);
  outline-offset:2px;
}
.mega-menu-preview{
  position:relative;
  min-height:382px;
}
.mega-menu-card{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 344px;
  gap:26px;
  align-items:stretch;
  opacity:0;
  pointer-events:none;
  transform:translateY(10px);
  transition:opacity .22s ease,transform .22s ease;
}
.mega-menu-card.is-active{
  opacity:1;
  pointer-events:auto;
  transform:none;
}
.mega-menu-card-media-wrap{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:12px;
  min-width:0;
}
.mega-menu-card-media{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  min-height:382px;
  background:#dbe4ee;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);
}
.mega-menu-card-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.26));
  pointer-events:none;
}
.mega-menu-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}
.mega-menu-card:hover .mega-menu-card-media img{transform:scale(1.04)}
.mega-menu-campaign-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  padding:0 16px;
  border-radius:999px;
  background:linear-gradient(135deg, #ee7d00 0%, #dd6f00 100%);
  color:#fff;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  box-shadow:0 12px 28px rgba(238,125,0,.24);
  animation:campaignPulse 2.2s ease-in-out infinite;
}
.mega-menu-campaign-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.7);
  animation:campaignDotPulse 1.8s ease-in-out infinite;
}
.mega-menu-campaign-link:hover,
.mega-menu-campaign-link:focus-visible{
  color:#fff;
  transform:translateY(-1px);
}
.mega-menu-card-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  min-width:0;
}
.mega-menu-card-kicker{
  display:inline-flex;
  align-self:flex-start;
  padding:7px 12px;
  border-radius:12px;
  background:rgba(238,125,0,.1);
  color:var(--brand-600);
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mega-menu-card-body h3{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(25px,1.95vw,38px);
  line-height:1.02;
  color:var(--ink-900);
}
.mega-menu-card-body h3 a{
  transition:color .22s ease;
}
.mega-menu-card-body h3 a:hover{color:var(--brand-600)}
.mega-menu-card-body p{
  margin:0;
  max-width:none;
  color:var(--text-700);
  font-size:14px;
  line-height:1.68;
}
.mega-menu-footer{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-top:8px;
  min-width:0;
}
.mega-menu-facts{
  display:flex;
  flex-wrap:nowrap;
  gap:6px;
  flex:0 1 auto;
  min-width:0;
}
.mega-menu-facts span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 11px;
  border-radius:12px;
  border:1px solid rgba(148,163,184,.24);
  background:rgba(255,255,255,.9);
  color:var(--text-700);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.mega-menu-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:0;
  margin-left:0;
  flex:0 0 auto;
}
.mega-menu-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:38px;
  padding:8px 14px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.28);
  background:#fff;
  color:var(--text-900);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
  transition:
    background .22s ease,
    border-color .22s ease,
    color .22s ease,
    transform .22s ease,
    box-shadow .22s ease;
}
.mega-menu-action:hover,
.mega-menu-action:focus-visible{
  border-color:rgba(238,125,0,.28);
  color:var(--brand-600);
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(2,8,23,.08);
}
.mega-menu-action--primary{
  border-color:transparent;
  background:var(--ink-900);
  color:#fff;
}
.mega-menu-action--primary:hover,
.mega-menu-action--primary:focus-visible{
  background:var(--brand-600);
  color:#fff;
  border-color:transparent;
}
.menu-toggle{
  display:none;
  border:1px solid var(--border);
  background:#fff;
  border-radius:var(--r-md);
  width:44px;
  height:44px;
  padding:0;
  color:var(--text-900);
  cursor:pointer;
  transition:
    background .22s ease,
    border-color .22s ease,
    color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}
.menu-toggle:hover{
  border-color:#cbd5e1;
  box-shadow:0 12px 28px rgba(2,8,23,.08);
}
.menu-toggle-box{display:inline-grid;gap:5px}
.menu-toggle-line{
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  transition:transform .22s ease,opacity .22s ease;
}
.header[data-open="1"] .menu-toggle{
  background:#0f172a;
  border-color:#0f172a;
  color:#fff;
}
.header[data-open="1"] .menu-toggle-line:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}
.header[data-open="1"] .menu-toggle-line:nth-child(2){
  opacity:0;
}
.header[data-open="1"] .menu-toggle-line:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}
body.menu-open{overflow:hidden}
body.menu-open .wa-fab{
  opacity:0;
  pointer-events:none;
}

.hero{
  position:relative;
  overflow-x:hidden;
  overflow-y:hidden;
  min-height:clamp(520px,68svh,620px);
  background:transparent;
  color:#fff;
}
.hero .container{
  position:relative;
  min-height:inherit;
  z-index:2;
}
.hero::before{
  content:"";
  position:absolute;inset:0;
  background-image:var(--hero-image, none);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  opacity:1;
  transform:none;
  filter:none;
  z-index:0;
}
.home-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
  pointer-events:none;
}
.hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,12,20,.16),rgba(8,12,20,.34));
  pointer-events:none;
  z-index:1;
}
.hero .inner{padding:clamp(136px,16vh,220px) 0 clamp(96px,10vh,124px)}

/* Şeffaf header kullanılan sayfalarda içerik menünün arkasına gelir */
body[data-transparent-header="1"] #icerik{margin-top:0}
.home .hero{
  padding-top:var(--header-h);
  min-height:calc(100svh - var(--header-h) - 110px);
  max-height:calc(100svh - 84px);
}
.home .hero.has-video::before{
  animation:none;
  transform:none;
  will-change:auto;
}
.home .hero::before{
  transform:scale(1);
  transform-origin:center center;
  animation:heroSlowZoom 32s ease-in-out infinite alternate;
  will-change:transform;
}
.home .hero .inner{
  padding:clamp(92px,11vh,142px) 0 clamp(48px,6vh,68px);
}

@keyframes heroSlowZoom{
  from{transform:scale(1)}
  to{transform:scale(1.08)}
}

@media (max-width: 920px){
  :root{--header-h:72px}
  .hero{min-height:520px}
  .hero{overflow:hidden}
  .hero .inner{padding-bottom:48px}
  .hero-cta-wrap{margin:16px 0 0}
  .hero-cta-wrap .container{
    justify-content:center;
  }
  .hero-cta-wrap::before{
    top:-40px;
    height:138px;
    background:radial-gradient(150% 114px at 50% 0, transparent 63%, var(--bg-50) 64%);
  }
  .cta-row{
    position:relative;
    left:auto;
    bottom:auto;
    transform:none;
    display:grid;
    grid-template-columns:1fr;
    width:min(100%, 336px);
    justify-content:stretch;
    margin:-48px auto 0;
    padding:14px;
    border-radius:28px;
    gap:10px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(238,125,0,.18);
    box-shadow:0 18px 40px rgba(238,125,0,.14);
  }
  .cta-row::before,
  .cta-row::after{display:none}
  .cta-tile,
  .cta-search{
    width:100%;
    min-width:0;
    min-height:56px;
    border-radius:18px;
    box-shadow:none;
  }
  .cta-tile{
    justify-content:flex-start;
    padding:14px 16px;
    font-size:15px;
    line-height:1.35;
    white-space:normal;
  }
  .cta-search{
    padding:0 12px 0 16px;
  }
  .cta-search input{
    font-size:15px;
  }
  .switcher-section{padding-top:36px}
  .switcher-section .container{
    padding-left:18px;
    padding-right:18px;
  }
  .products-hero{
    min-height:400px;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 82%,rgba(0,0,0,.72) 92%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 82%,rgba(0,0,0,.72) 92%,transparent 100%);
  }
  .products-hero .inner{padding:136px 0 52px}
  .products-hero .eyebrow{font-size:16px}
  .products-hero h1{font-size:clamp(38px,8vw,52px)}
  .products-hero p{
    max-width:34ch;
    font-size:15px;
    line-height:1.65;
  }
  .products-catalog .container{
    padding-left:18px;
    padding-right:18px;
  }
  .products-layout{
    grid-template-columns:1fr;
    gap:18px;
  }
  .products-filter{
    position:static;
  }
  .products-filter-toggle{
    display:flex;
    margin-bottom:12px;
  }
  .products-filter:not(.is-open) .products-filter-card{
    display:none;
  }
  .products-filter.is-open .products-filter-toggle{
    border-color:rgba(238,125,0,.26);
    box-shadow:0 10px 28px rgba(2,8,23,.06);
  }
  .products-filter.is-open .products-filter-toggle-icon::after{
    opacity:0;
  }
  .products-filter-card{
    border-radius:22px;
    padding:12px;
  }
  .products-searchbar{
    grid-template-columns:1fr;
    gap:10px;
  }
  .products-searchbar--sidebar{
    margin-bottom:12px;
    padding-bottom:12px;
  }
  .products-search-field input,
  .products-sort-field select{
    height:52px;
    padding-left:14px;
    font-size:15px;
  }
  .products-sort-field{
    gap:5px;
    font-size:12px;
  }
  .products-filter-shell-summary{
    padding:4px 4px 12px;
  }
  .products-filter-shell-title{font-size:16px}
  .products-filter-tree{
    gap:10px;
    padding-top:10px;
  }
  .products-filter-group{
    border-radius:18px;
  }
  .products-filter-group-summary,
  .products-filter-link,
  .products-filter-link--group{
    padding:13px 12px;
  }
  .products-filter-link--child{
    padding:13px 12px 13px 38px;
    font-size:13px;
  }
  .products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .product-card{
    border-radius:22px;
  }
  .product-card-body{
    gap:12px;
    padding:14px;
  }
  .product-card h3{
    font-size:20px;
    line-height:1.28;
  }
  .product-card-summary{font-size:13px}
  .product-card-specs{padding:12px 0}
  .product-card-price{font-size:22px}
  .product-card-link{
    min-height:44px;
    padding:0 14px;
  }
  .product-detail-mosaic{grid-template-columns:1fr}
  .product-detail-mosaic,
  .product-detail-mosaic.is-single{height:auto}
  .product-detail-hero{padding-top:0}
  .product-detail-cover img{min-height:184px}
  .product-detail-side-card img{min-height:90px}
}
.hero h1{font-family:var(--font-heading);font-size:clamp(30px,4vw,44px);line-height:1.15;margin:0 0 14px}
.hero-title{display:block}
.hero-title-prefix{display:inline}
.hero-title-dynamic{
  position:relative;
  display:inline-block;
  min-width:0;
  white-space:nowrap;
  color:var(--brand-500);
}
.hero-title-suffix{
  display:block;
  margin-top:6px;
}
.hero-title-dynamic::after{
  content:"";
  width:2px;
  height:.9em;
  margin-left:4px;
  background:currentColor;
  opacity:.9;
  animation:heroCaretBlink .9s steps(1,end) infinite;
}
@keyframes heroCaretBlink{
  0%,48%{opacity:.95}
  50%,100%{opacity:.15}
}
@media (prefers-reduced-motion: reduce){
  .hero-title-dynamic::after{animation:none}
  .home .hero::before{animation:none;transform:none}
}
.hero p{margin:0 0 22px;color:rgba(255,255,255,.9);max-width:62ch}
.products-hero{
  position:relative;
  min-height:560px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background:#121826;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 76%,rgba(0,0,0,.92) 84%,rgba(0,0,0,.62) 91%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 76%,rgba(0,0,0,.92) 84%,rgba(0,0,0,.62) 91%,transparent 100%);
}
.products-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--products-hero-image, none);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transform:scale(1.02);
  z-index:0;
}
.products-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(7,12,24,.12) 0%, rgba(7,12,24,.42) 58%, rgba(7,12,24,.70) 100%),
    radial-gradient(900px 280px at 50% 100%, rgba(238,125,0,.14), transparent 55%);
  z-index:1;
}
.products-hero .inner{
  position:relative;
  z-index:2;
  width:100%;
  text-align:center;
  padding:clamp(160px,18vh,220px) 0 86px;
}
.products-hero .eyebrow{
  display:inline-block;
  margin-bottom:10px;
  font-family:var(--font-subheading);
  font-size:18px;
  color:rgba(255,255,255,.82);
}
.products-hero h1{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(34px,4.8vw,58px);
  line-height:1.06;
}
.products-hero p{
  margin:14px auto 0;
  max-width:760px;
  color:rgba(255,255,255,.88);
  font-size:17px;
}
@media (max-width: 920px){
  .hero-cta-wrap::before{
    left:0;
    transform:none;
    width:100%;
  }
  .hero::before,
  .products-hero::before{
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    transform:none;
  }
  .hero::before{
    background-image:var(--hero-image-mobile, var(--hero-image, none));
  }
  .products-hero::before{
    background-image:var(--products-hero-image-mobile, var(--products-hero-image, none));
  }
  .home .hero::before{
    animation:none;
    will-change:auto;
  }
}
.products-section{padding-top:54px}
.product-cards{margin-top:8px}
.products-catalog .container{max-width:none;padding-left:28px;padding-right:28px}
.products-layout{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.products-filter{
  position:sticky;
  top:calc(var(--header-h) + 18px);
}
.products-filter-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:14px;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
}
.products-filter-toggle{
  display:none;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 18px;
  min-height:56px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  color:var(--text-900);
  font:inherit;
  font-weight:900;
  box-shadow:0 6px 20px rgba(2,8,23,.05);
}
.products-filter-toggle-icon{
  width:18px;
  height:18px;
  position:relative;
  flex:0 0 auto;
}
.products-filter-toggle-icon::before,
.products-filter-toggle-icon::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:1.8px;
  border-radius:999px;
  background:currentColor;
  transform:translate(-50%,-50%);
  transition:transform .2s ease,opacity .2s ease;
}
.products-filter-toggle-icon::after{
  transform:translate(-50%,-50%) rotate(90deg);
}
.products-filter-shell{margin:0}
.products-filter-shell-summary{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:8px 8px 14px;
  border-bottom:1px solid rgba(2,8,23,.08);
}
.products-filter-shell-title{
  display:flex;align-items:center;gap:10px;
  font-size:17px;font-weight:900;color:var(--text-900);
}
.products-filter-shell-icon{display:inline-flex;color:var(--text-900)}
.products-filter-tree{display:grid;gap:8px;padding-top:12px}
.products-filter-group{
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  overflow:hidden;
  background:#fff;
}
.products-filter-group-summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px;
  font-weight:800;
  color:var(--text-900);
}
.products-filter-group-summary::-webkit-details-marker{display:none}
.products-filter-group-summary::after{
  content:"";
  width:8px;height:8px;
  border-right:1.8px solid #64748b;
  border-bottom:1.8px solid #64748b;
  transform:rotate(45deg);
  transition:transform .18s ease;
}
.products-filter-group[open] .products-filter-group-summary::after{transform:rotate(225deg) translate(-2px,-2px)}
.products-filter-group-label{
  display:flex;align-items:center;gap:10px;min-width:0;
}
.products-filter-group-icon{
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--text-900);flex:0 0 auto;
}
.products-filter-children{
  display:grid;
  gap:0;
  border-top:1px solid rgba(2,8,23,.08);
  background:#fff;
}
.products-filter-link{
  display:flex;align-items:center;justify-content:flex-start;gap:12px;
  padding:14px 14px;border:1px solid var(--border);border-radius:var(--r-lg);
  background:#fff;color:var(--text-900);font-weight:700;transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.products-filter-link:hover{
  border-color:rgba(238,125,0,.32);
  background:rgba(238,125,0,.07);
  color:var(--brand-600);
}
.products-filter-link.is-active{
  background:rgba(238,125,0,.92);
  border-color:rgba(0,0,0,.08);
  color:#1b1207;
}
.products-filter-link--group{
  padding:14px 14px;
}
.products-filter-link--group .products-filter-group-label{font-weight:800}
.products-filter-link--all{
  border:0;
  border-radius:0;
  border-bottom:1px solid rgba(2,8,23,.08);
  background:#f8fafc;
}
.products-filter-link--child{
  padding:14px 14px 14px 44px;
  font-size:14px;
  background:#fff;
  border:0;
  border-radius:0;
  border-bottom:1px solid rgba(2,8,23,.08);
}
.products-filter-children .products-filter-link:last-child{
  border-bottom:0;
}
.products-main{min-width:0}
.products-toolbar{
  display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap;
  margin-bottom:18px;
}
.products-toolbar p{margin:0;color:#64748b;font-weight:700}
.products-searchbar{
  display:grid;
  grid-template-columns:minmax(320px,1fr) 220px auto;
  gap:12px;
  align-items:end;
  margin-bottom:18px;
}
.products-searchbar--sidebar{
  grid-template-columns:1fr;
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(2,8,23,.08);
}
.products-search-field{
  position:relative;
  display:block;
}
.products-search-field input,
.products-sort-field select{
  width:100%;
  height:56px;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  background:#fff;
  color:var(--text-900);
  padding:0 50px 0 16px;
  font:inherit;
  box-shadow:0 6px 20px rgba(2,8,23,.04);
}
.products-search-field input:focus,
.products-sort-field select:focus{
  outline:none;
  border-color:rgba(238,125,0,.35);
  box-shadow:0 0 0 3px rgba(238,125,0,.12);
}
.products-search-icon{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  color:#334155;
  pointer-events:none;
}
.products-sort-field{
  display:grid;
  gap:6px;
  color:#475569;
  font-size:13px;
  font-weight:800;
}
.products-sort-field select{
  padding:0 16px;
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);
  background-position:calc(100% - 22px) 23px,calc(100% - 16px) 23px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.products-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.product-card{
  display:grid;
  grid-template-rows:auto 1fr;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  overflow:hidden;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  transition:box-shadow .28s ease,border-color .28s ease,transform .22s ease;
}
.product-card.is-campaign{
  background:linear-gradient(180deg, #fffaf4 0%, #fff3e2 100%);
  border-color:rgba(238,125,0,.32);
  box-shadow:0 12px 30px rgba(238,125,0,.16);
}
.product-card:hover{
  box-shadow:0 16px 34px rgba(2,8,23,.10);
  border-color:rgba(15,23,42,.12);
  transform:translateY(-4px);
}
.product-card.is-campaign:hover{
  box-shadow:0 18px 38px rgba(238,125,0,.24);
  border-color:rgba(238,125,0,.48);
}
html.js-ready .product-card.reveal-in:hover{
  transform:translateY(-4px);
}
.product-card-media{display:block;aspect-ratio:16/11;background:#eef2f7;overflow:hidden}
.product-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transform-origin:center center;
  transition:transform 3.2s ease;
}
.product-card:hover .product-card-media img{transform:scale(1.045)}
.product-card-media-empty{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  color:#64748b;font-weight:700;background:#f8fafc;
}
.product-card-body{
  display:grid;
  gap:14px;
  padding:16px;
}
.product-card-head{display:grid;gap:6px}
.product-card-type{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--brand-600);
}
.product-card h3{
  margin:0;
  font-size:21px;
  line-height:1.35;
}
.product-card-summary{
  margin:0;
  color:var(--text-700);
  font-size:14px;
}
.product-card-specs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:14px 0;
  border-top:1px solid rgba(2,8,23,.08);
  border-bottom:1px solid rgba(2,8,23,.08);
}
.product-card-spec{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  font-weight:700;
  color:#475569;
}
.product-card-spec svg{
  flex:0 0 auto;
  color:#6b7a90;
}
.product-card-spec > span{
  min-width:0;
}
.product-card-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.product-card-price{
  font-size:24px;
  font-weight:900;
  color:var(--text-900);
  display:flex;
  flex-direction:column;
  gap:2px;
}
.product-card-price-sub{
  font-size:11px;
  color:#94a3b8;
  font-weight:500;
  line-height:1.2;
}
.product-card-link{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 14px;border:1px solid var(--border);border-radius:var(--r-md);
  font-weight:800;background:#fff;
}
.product-card-campaign-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:0 16px;
  border-radius:999px;
  background:linear-gradient(135deg, #ee7d00 0%, #dd6f00 100%);
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1.2;
  box-shadow:0 12px 28px rgba(238,125,0,.24);
  animation:campaignPulse 2.2s ease-in-out infinite;
}
.product-card-campaign-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.7);
  animation:campaignDotPulse 1.8s ease-in-out infinite;
}
.product-card-campaign-link:hover{
  color:#fff;
  transform:translateY(-1px);
}
.product-card.is-campaign .product-card-specs{
  border-top-color:rgba(238,125,0,.16);
  border-bottom-color:rgba(238,125,0,.16);
}
.product-card.is-campaign .product-card-link{
  border-color:rgba(238,125,0,.24);
  background:rgba(255,255,255,.78);
}
.product-card-link:hover{
  border-color:rgba(238,125,0,.35);
  color:var(--brand-600);
  background:rgba(238,125,0,.07);
}
@keyframes campaignPulse{
  0%,100%{box-shadow:0 12px 28px rgba(238,125,0,.24)}
  50%{box-shadow:0 16px 34px rgba(238,125,0,.34)}
}
@keyframes campaignDotPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.65)}
  50%{box-shadow:0 0 0 8px rgba(255,255,255,0)}
}
.products-empty{
  padding:20px;
  border:1px dashed #cbd5e1;
  border-radius:var(--r-lg);
  background:#fff;
  color:#64748b;
}
@media (max-width: 920px){
  .products-hero{
    min-height:400px;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 82%,rgba(0,0,0,.72) 92%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 82%,rgba(0,0,0,.72) 92%,transparent 100%);
  }
  .products-hero .inner{padding:136px 0 52px}
  .products-hero .eyebrow{font-size:16px}
  .products-hero h1{font-size:clamp(38px,8vw,52px)}
  .products-hero p{
    max-width:34ch;
    font-size:15px;
    line-height:1.65;
  }
  .products-catalog .container{
    padding-left:18px;
    padding-right:18px;
  }
  .products-layout{
    grid-template-columns:1fr;
    gap:18px;
  }
  .products-filter{
    position:static;
  }
  .products-filter-toggle{
    display:flex;
    margin-bottom:12px;
  }
  .products-filter:not(.is-open) .products-filter-card{
    display:none;
  }
  .products-filter.is-open .products-filter-toggle{
    border-color:rgba(238,125,0,.26);
    box-shadow:0 10px 28px rgba(2,8,23,.06);
  }
  .products-filter.is-open .products-filter-toggle-icon::after{
    opacity:0;
  }
  .products-filter-card{
    border-radius:22px;
    padding:12px;
  }
  .products-searchbar{
    grid-template-columns:1fr;
    gap:10px;
  }
  .products-searchbar--sidebar{
    margin-bottom:12px;
    padding-bottom:12px;
  }
  .products-search-field input,
  .products-sort-field select{
    height:52px;
    padding-left:14px;
    font-size:15px;
  }
  .products-sort-field{
    gap:5px;
    font-size:12px;
  }
  .products-filter-shell-summary{
    padding:4px 4px 12px;
  }
  .products-filter-shell-title{font-size:16px}
  .products-filter-tree{
    gap:10px;
    padding-top:10px;
  }
  .products-filter-group{
    border-radius:18px;
  }
  .products-filter-group-summary,
  .products-filter-link,
  .products-filter-link--group{
    padding:13px 12px;
  }
  .products-filter-link--child{
    padding:13px 12px 13px 38px;
    font-size:13px;
  }
  .products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .product-card{
    border-radius:22px;
  }
  .product-card-body{
    gap:12px;
    padding:14px;
  }
  .product-card h3{
    font-size:20px;
    line-height:1.28;
  }
  .product-card-summary{font-size:13px}
  .product-card-specs{padding:12px 0}
  .product-card-price{font-size:22px}
  .product-card-link{
    min-height:44px;
    padding:0 14px;
  }
}
.section.product-detail-page{padding-top:0}
.product-detail-page .container{max-width:none;padding-left:18px;padding-right:0;padding-top:0}
.product-detail-breadcrumb{
  display:flex;align-items:center;gap:8px;
  margin-bottom:16px;color:#64748b;font-size:14px;font-weight:700;
}
.product-detail-hero{display:block;padding-top:0}
.product-detail-gallery{display:grid;gap:12px}
.product-detail-mosaic{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(360px,.94fr);
  gap:12px;
  align-items:stretch;
  position:relative;
  height:clamp(520px,36vw,680px);
}
.product-detail-mosaic.is-single{
  grid-template-columns:1fr;
  height:clamp(420px,34vw,620px);
}
.product-detail-cover{
  overflow:hidden;
  border-radius:var(--r-xl);
  border:1px solid var(--border);
  background:#fff;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  min-height:0;
  height:100%;
  position:relative;
  z-index:1;
}
.product-detail-image-hit,
.product-detail-thumb-hit{
  padding:0;
  border:0;
  margin:0;
  width:100%;
  background:none;
  display:block;
  cursor:zoom-in;
}
.product-detail-cover img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.product-detail-side-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  height:100%;
  min-height:0;
  position:relative;
  z-index:1;
}
.product-detail-side-grid--1{
  grid-template-columns:1fr;
  grid-template-rows:1fr;
}
.product-detail-side-grid--2{grid-template-rows:1fr}
.product-detail-side-grid--3{grid-template-rows:minmax(0,1.04fr) minmax(0,.78fr)}
.product-detail-side-grid--3 .product-detail-side-card:first-child{grid-column:1 / -1}
.product-detail-side-card{
  overflow:hidden;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#fff;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  height:100%;
  min-height:0;
}
.product-detail-side-card img{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.product-detail-thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:12px;
}
.product-detail-thumb-hit{
  border-radius:var(--r-md);
  overflow:hidden;
}
.product-detail-thumbs img{
  width:100%;height:140px;object-fit:cover;
  border-radius:var(--r-md);border:1px solid var(--border);background:#fff;
}
@media (max-width: 920px){
  .product-detail-page .container{
    padding-left:16px;
    padding-right:16px;
  }
  .product-detail-gallery{
    gap:10px;
  }
  .product-detail-mosaic,
  .product-detail-mosaic.is-single{
    grid-template-columns:1fr;
    gap:10px;
    height:auto;
  }
  .product-detail-cover{
    height:auto;
    aspect-ratio:16/11;
    border-radius:24px;
  }
  .product-detail-cover img{
    min-height:0;
    height:100%;
  }
  .product-detail-side-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
    gap:10px;
    height:auto;
  }
  .product-detail-side-grid--1{
    grid-template-columns:1fr;
  }
  .product-detail-side-grid--2{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .product-detail-side-grid--3{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
  }
  .product-detail-side-grid--3 .product-detail-side-card:first-child{
    grid-column:1 / -1;
    aspect-ratio:16/10;
  }
  .product-detail-side-card{
    height:auto;
    aspect-ratio:4/3;
    border-radius:20px;
  }
  .product-detail-side-card img{
    height:100%;
  }
  .product-detail-thumbs{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .product-detail-thumbs img{
    height:124px;
  }
  .product-plan-hit{
    overflow:hidden;
    border-radius:20px;
    border:1px solid var(--border);
    background:#fff;
    display:block;
  }
  .product-plan-panel img{
    max-height:none;
    border:0;
    border-radius:0;
    transform:none;
  }
  .product-plan-hit--square{
    aspect-ratio:1 / .84;
  }
  .product-plan-hit--sheet{
    aspect-ratio:1 / .68;
  }
  .product-plan-image--square,
  .product-plan-image--sheet{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .product-plan-image--square{
    object-position:center 56%;
  }
  .product-plan-image--sheet{
    object-position:center 70%;
  }
}
.product-detail-overview{
  margin-top:20px;
}
.product-detail-overview-bar{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 0 18px;
  min-height:56px;
}
.product-detail-live-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  color:var(--text-900);
  font-size:13px;
  font-weight:700;
}
.product-detail-live-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.55);
  animation:productLivePulse 1.8s ease-in-out infinite;
}
.product-detail-overview-title{
  margin:0;
  width:100%;
  padding-inline:clamp(180px,18vw,300px);
  text-align:center;
  font-family:var(--font-subheading);
  font-weight:400;
  font-size:clamp(30px,3.4vw,44px);
  line-height:1.18;
}
.product-detail-overview-spacer{
  display:none;
}
.product-detail-overview-actions{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  justify-content:flex-end;
}
.product-detail-campaign-trigger{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:46px;
  padding:12px 18px;
  border:1px solid rgba(238,125,0,.34) !important;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(238,125,0,.92), rgba(245,158,11,.9)) !important;
  color:#fff !important;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  font-family:var(--font-body);
  white-space:nowrap;
  font-size:14px;
  font-weight:800;
  box-shadow:0 16px 32px rgba(238,125,0,.22) !important;
  animation:productCampaignSlideIn .8s cubic-bezier(.22,1,.36,1) both, productCampaignPulse 2.2s ease-in-out .85s infinite;
}
.product-detail-campaign-trigger:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(238,125,0,.28) !important;
}
.product-detail-campaign-trigger-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 0 rgba(255,255,255,.45);
  animation:productCampaignDot 1.9s ease-in-out infinite;
}
.product-detail-overview-grid{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.08fr) minmax(300px,.84fr);
  gap:24px;
  align-items:start;
}
.product-detail-overview-grid.is-no-plans{
  grid-template-columns:minmax(280px,.8fr) minmax(320px,1fr);
}
.product-detail-info-card,
.product-detail-copy-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:22px;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  min-height:100%;
}
.product-detail-info-card{
  display:grid;
  gap:18px;
  align-content:start;
}
.product-detail-meta-list{
  display:grid;
  gap:12px;
}
.product-detail-meta-item{
  display:grid;
  grid-template-columns:24px minmax(92px,auto) 1fr;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border-radius:var(--r-lg);
  border:1px solid rgba(2,8,23,.08);
  background:#f8fafc;
}
.product-detail-meta-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--text-700);
}
.product-detail-currency-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  font-size:24px;
  font-weight:700;
  line-height:1;
}
.product-detail-meta-label{
  color:var(--text-900);
  font-size:16px;
  font-weight:500;
}
.product-detail-meta-item strong{
  margin-left:auto;
  text-align:right;
  font-size:18px;
  color:var(--text-900);
}
.product-detail-meta-price{
  margin-left:auto;
  display:grid;
  justify-items:end;
  gap:4px;
  text-align:right;
}
.product-detail-meta-price-old{
  font-size:14px;
  line-height:1.1;
  color:var(--text-700);
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  opacity:.82;
}
.product-detail-meta-price-new{
  margin-left:0;
  font-size:18px;
  color:var(--brand-600);
}
.product-detail-meta-price-wrap{
  margin-left:auto;
  display:grid;
  justify-items:end;
  gap:2px;
  text-align:right;
}
.product-detail-meta-price-wrap strong{
  margin-left:0;
}
.product-detail-meta-price-usd{
  font-size:11px;
  color:#94a3b8;
  font-weight:500;
  line-height:1.2;
}
.product-detail-doc-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  align-self:center;
  width:100%;
  margin-top:10px;
  color:#172554;
  font-family:var(--font-subheading);
  font-size:clamp(19px,1.45vw,24px);
  font-weight:400;
  line-height:1.2;
  text-align:center;
}
.product-detail-doc-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#172554;
}
.product-detail-doc-link:hover{
  color:var(--brand-600);
}
.product-detail-architect-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  width:100%;
  margin-top:6px;
}
.product-detail-architect-label{
  color:#172554;
  font-family:var(--font-subheading);
  font-size:18px;
  line-height:1.2;
}
.product-detail-architect-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid #ee7d00;
  background:#ee7d00;
  color:#ffffff;
  font-size:15px;
  font-weight:800;
  line-height:1;
  text-align:center;
  box-shadow:0 10px 24px rgba(238,125,0,.22);
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.product-detail-architect-button:hover{
  background:#d66f00;
  border-color:#d66f00;
  color:#ffffff;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(238,125,0,.26);
}
@keyframes factory-glow{
  0%,100%{filter:drop-shadow(0 0 0px #ee7d00);}
  50%{filter:drop-shadow(0 0 14px #ee7d00);}
}
.product-detail-factory-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:36px;
  text-decoration:none;
  cursor:pointer;
  position:relative;
  padding-top:28px;
}
.product-detail-factory-link::before{
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:80%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(15,23,42,.15),transparent);
}
.product-detail-factory-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ee7d00;
  animation:factory-glow 5s ease-in-out infinite;
}
.product-detail-factory-label{
  font-family:var(--font-subheading);
  font-size:15px;
  font-weight:600;
  color:#1e3a5f;
  letter-spacing:.03em;
  transition:color .2s;
}
.product-detail-factory-link:hover .product-detail-factory-label{
  color:#ee7d00;
}
.product-detail-factory-link:hover .product-detail-factory-icon{
  animation:none;
  color:#ee7d00;
  filter:drop-shadow(0 0 12px #ee7d00);
}
.product-detail-copy-lead{
  margin:0 0 12px;
  color:var(--text-900);
  font-weight:600;
  line-height:1.7;
}
.product-detail-copy-card .product-detail-text{
  line-height:1.8;
}
.product-detail-copy-card .muted{
  margin:0;
}
.product-detail-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.product-detail-actions .btn{width:100%;box-sizing:border-box}
.product-detail-actions .pd-share-wrap{position:relative;display:flex;flex-direction:column}
.product-detail-actions .pd-share-btn{width:100%;box-sizing:border-box;flex:1}
.product-detail-back{
  color:var(--text-900) !important;
  border-color:var(--border) !important;
  background:#fff !important;
}
.product-detail-back:hover{
  color:var(--brand-600) !important;
  border-color:rgba(238,125,0,.35) !important;
  background:rgba(238,125,0,.07) !important;
}
/* --- Product rating box --- */
.product-detail-copy-card{display:flex;flex-direction:column}
.pd-rating-box{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;margin-top:24px}
.pd-rating-icon{color:var(--primary,#e07b00);margin-bottom:2px}
.pd-rating-label{margin:0;font-size:.85rem;color:var(--text-600,#666);font-weight:500}
.pd-stars{display:flex;gap:4px;justify-content:center}
.pd-star{background:none;border:none;cursor:pointer;font-size:1.7rem;color:#d1d1d1;padding:0;line-height:1;transition:color .15s,transform .1s}
.pd-star:hover,.pd-star.is-active{color:#f5a623}
.pd-star.is-hover{color:#f5a623}
.pd-rating-summary{margin:0;font-size:.82rem;color:var(--text-600,#666)}
.pd-rating-summary span{opacity:.75}
.pd-rating-thanks{margin:0;font-size:.82rem;color:var(--primary,#e07b00);font-weight:500}
/* --- Product share button --- */
.pd-share-wrap{
  position:relative;
  display:inline-flex;
  align-items:center;
}
.pd-share-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  height:44px;
  padding:0 14px;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#fff;
  color:var(--text-900);
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:border-color .18s,background .18s,color .18s;
}
.pd-share-btn:hover{
  border-color:rgba(238,125,0,.35);
  color:var(--brand-600);
  background:rgba(238,125,0,.07);
}
.pd-share-dropdown{
  position:absolute;
  bottom:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  min-width:192px;
  padding:10px 8px 8px;
  border:1px solid rgba(226,232,240,.98);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 38px rgba(2,8,23,.12);
  z-index:60;
}
.pd-share-dropdown[hidden]{display:none}
.pd-share-label{
  margin:0 8px 8px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#94a3b8;
}
.pd-share-item{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  padding:10px 12px;
  border-radius:10px;
  color:var(--text-900);
  font-size:14px;
  font-weight:700;
  transition:background .15s,color .15s;
}
.pd-share-item:hover{
  background:rgba(238,125,0,.08);
  color:var(--brand-600);
}
.pd-share-copy-note{
  margin-left:6px;
  font-size:12px;
  opacity:.7;
}
@media (max-width:480px){
  .product-detail-actions{
    grid-template-columns:repeat(3,1fr);
    gap:8px;
  }
}
/* --- end share button --- */
.product-campaign-modal{
  position:fixed;
  inset:0;
  z-index:1250;
}
.product-campaign-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.46);
  backdrop-filter:blur(3px);
}
.product-campaign-modal__dialog{
  position:relative;
  z-index:1;
  width:min(100%, 720px);
  margin:min(11vh, 96px) auto 0;
  padding:24px;
  border:1px solid rgba(238,125,0,.18);
  border-radius:28px;
  background:#fff;
  box-shadow:0 30px 80px rgba(2,8,23,.24);
  display:grid;
  gap:14px;
  transform:translateY(20px) scale(.98);
  opacity:0;
  transition:transform .24s ease,opacity .24s ease;
}
.product-campaign-modal__layout{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
.product-campaign-modal__media{
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 24px rgba(2,8,23,.08);
}
.product-campaign-modal__media img{
  display:block;
  width:100%;
  height:auto;
}
.product-campaign-modal__content{
  display:grid;
  gap:14px;
  align-content:start;
}
.product-campaign-modal.is-open .product-campaign-modal__dialog{
  transform:translateY(0) scale(1);
  opacity:1;
}
.product-campaign-modal__close{
  position:absolute;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  color:#0f172a;
  font-size:28px;
  line-height:1;
}
.product-campaign-modal__kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(238,125,0,.1);
  color:#b45309;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.product-campaign-modal__dialog h2{
  margin:0;
  padding-right:44px;
  font-size:clamp(26px,2.5vw,34px);
  line-height:1.16;
}
.product-campaign-modal__pricing{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.product-campaign-modal__old-price{
  color:#94a3b8;
  font-size:22px;
  font-weight:700;
  text-decoration:line-through;
  text-decoration-thickness:2px;
  text-decoration-color:rgba(15,23,42,.35);
}
.product-campaign-modal__amount{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:12px 16px;
  border-radius:18px;
  background:linear-gradient(135deg, #ee7d00, #f59e0b);
  color:#fff;
  font-size:22px;
  font-weight:800;
  box-shadow:0 18px 30px rgba(238,125,0,.24);
}
.product-campaign-modal__text{
  color:var(--text-700);
  line-height:1.8;
  font-size:16px;
}
.product-detail-body{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  margin-top:24px;
}
.product-detail-text{color:var(--text-700)}
.product-detail-room-list li{color:var(--text-700)}
.product-tech-section{
  padding:22px 24px 20px;
  position:relative;
  overflow:hidden;
}
@keyframes pd-float{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-16px) scale(1.1)}
}
.product-tech-bubble{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  opacity:.5;
  z-index:1;
  animation:pd-float ease-in-out infinite;
}
.product-tech-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.product-tech-item{
  position:relative;
  padding:74px 28px 28px;
  border:1px solid #dbe4ef;
  border-radius:28px;
  text-align:center;
  background:#fff;
}
.product-tech-item-icon{
  position:absolute;
  top:-18px;
  left:50%;
  transform:translateX(-50%);
  width:74px;
  height:74px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#475569;
  border:1px solid #dbe4ef;
  box-shadow:0 0 0 6px #f8fafc;
}
.product-tech-item h3{
  margin:0 0 14px;
  color:var(--text-900);
  font-size:18px;
  font-weight:800;
  line-height:1.45;
}
.product-tech-item p{
  margin:0;
  color:#475569;
  font-size:16px;
  line-height:1.8;
}
.product-tech-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.product-tech-tags span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:10px;
  background:#f8fafc;
  border:1px solid rgba(2,8,23,.08);
  color:#334155;
  font-size:14px;
  line-height:1.4;
}
.product-plan-section{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:22px;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  height:100%;
}
.product-plan-head h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(15px,1.25vw,19px);
  font-weight:400;
  text-align:right;
}
.product-plan-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:0;
}
.product-plan-tab{
  appearance:none;
  border:1px solid var(--border);
  background:#fff;
  color:var(--text-900);
  border-radius:var(--r-md);
  padding:7px 12px;
  font:inherit;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  transition:border-color .18s ease,background .18s ease,color .18s ease;
}
.product-plan-tab:hover{
  border-color:rgba(238,125,0,.35);
  background:rgba(238,125,0,.08);
  color:var(--brand-600);
}
.product-plan-tab.is-active{
  background:rgba(238,125,0,.92);
  border-color:rgba(0,0,0,.08);
  color:#1b1207;
}
.product-plan-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
.product-plan-panel{display:none}
.product-plan-panel.is-active{display:block}
.product-plan-hit{
  padding:0;
  border:0;
  margin:0;
  width:100%;
  background:none;
  display:block;
  cursor:zoom-in;
}
.product-plan-panel img{
  display:block;
  width:100%;
  max-height:760px;
  object-fit:contain;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#fff;
}
.gallery-lightbox[hidden]{display:none !important}
.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:140;
  display:grid;
  place-items:center;
  padding:24px;
  --lightbox-safe-top:max(16px, env(safe-area-inset-top, 0px));
  --lightbox-safe-bottom:max(16px, env(safe-area-inset-bottom, 0px));
}
.gallery-lightbox__backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,8,23,.88);
  backdrop-filter:blur(10px);
  opacity:0;
  transition:opacity .26s ease;
}
.gallery-lightbox__dialog{
  position:relative;
  z-index:1;
  width:min(96vw,1600px);
  height:min(88vh,980px);
  display:grid;
  grid-template-columns:64px minmax(0,1fr) 64px;
  align-items:center;
  gap:16px;
  opacity:0;
  transform:translate3d(0,20px,0) scale(.985);
  transition:opacity .28s ease,transform .28s ease;
}
.gallery-lightbox.is-open .gallery-lightbox__backdrop{opacity:1}
.gallery-lightbox.is-open .gallery-lightbox__dialog{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}
.gallery-lightbox__topbar{
  position:absolute;
  left:50%;
  top:var(--lightbox-safe-top);
  z-index:3;
  width:min(calc(100% - 32px), 620px);
  display:block;
  pointer-events:none;
  transform:translateX(-50%);
}
.gallery-lightbox__counter{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 14px;
  color:#fff;
  font-weight:700;
  font-size:13px;
  letter-spacing:.02em;
  line-height:1;
  white-space:nowrap;
  border-radius:999px;
  background:rgba(255,255,255,.08);
}
.gallery-lightbox__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(10,18,36,.78), rgba(10,18,36,.56));
  backdrop-filter:blur(18px) saturate(140%);
  border-radius:999px;
  box-shadow:0 18px 40px rgba(0,0,0,.24);
  pointer-events:auto;
}
.gallery-lightbox__toolbar-actions{
  display:flex;
  align-items:center;
  gap:6px;
}
.gallery-lightbox__tool,
.gallery-lightbox__nav{
  appearance:none;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
  transition:opacity .18s ease,transform .18s ease,background-color .18s ease,border-color .18s ease;
}
.gallery-lightbox__tool:hover,
.gallery-lightbox__nav:hover{
  opacity:1;
  transform:translateY(-1px);
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.16);
}
.gallery-lightbox__tool{
  min-width:44px;
  height:44px;
  border-radius:999px;
  padding:0 14px;
  font-size:17px;
  font-weight:800;
}
.gallery-lightbox__tool--reset{
  min-width:58px;
  font-size:13px;
  letter-spacing:.03em;
}
.gallery-lightbox__close{
  min-width:46px;
  height:46px;
  border-radius:999px;
  font-size:22px;
  line-height:1;
  pointer-events:auto;
}
.gallery-lightbox__nav{
  width:60px;
  height:60px;
  border-radius:999px;
  font-size:34px;
  line-height:1;
  display:grid;
  place-items:center;
  box-shadow:0 18px 36px rgba(0,0,0,.2);
}
.gallery-lightbox__stage{
  position:relative;
  overflow:hidden;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at top, rgba(255,255,255,.1), transparent 46%),
    linear-gradient(180deg, rgba(15,23,42,.44), rgba(15,23,42,.66));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 30px 70px rgba(0,0,0,.28);
  touch-action:none;
}
.gallery-lightbox__image{
  max-width:calc(100% - 44px);
  max-height:calc(100% - 44px);
  object-fit:contain;
  transform-origin:center center;
  will-change:transform;
  cursor:grab;
  user-select:none;
  -webkit-user-drag:none;
  border-radius:24px;
  box-shadow:0 26px 66px rgba(0,0,0,.32);
  opacity:0;
  filter:blur(10px);
  transition:opacity .24s ease,filter .24s ease;
}
.gallery-lightbox__image.is-visible{
  opacity:1;
  filter:none;
}
.gallery-lightbox__image.is-dragging{cursor:grabbing}
.gallery-lightbox__hint{
  position:absolute;
  left:50%;
  bottom:var(--lightbox-safe-bottom);
  z-index:3;
  display:none;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  color:#f8fafc;
  font-size:11px;
  line-height:1.45;
  text-align:center;
  white-space:normal;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(10,18,36,.58);
  backdrop-filter:blur(16px) saturate(135%);
  box-shadow:0 18px 42px rgba(0,0,0,.2);
  transform:translateX(-50%);
  transition:opacity .2s ease,transform .2s ease;
}
.gallery-lightbox.is-zoomed .gallery-lightbox__hint{
  opacity:0;
  transform:translate(-50%, 10px);
}
.gallery-lightbox.is-zoomed .gallery-lightbox__nav{
  opacity:.18;
  pointer-events:none;
}
body.lightbox-open{overflow:hidden}
.hero-cta-wrap{
  position:relative;
  z-index:4;
  margin-top:-72px;
  margin-bottom:18px;
  pointer-events:none;
}
.hero-cta-wrap--has-campaign{
  margin-bottom:48px;
}
.hero-cta-wrap::before{
  content:"";
  position:absolute;
  left:50%;
  top:-96px;
  transform:translateX(-50%);
  width:100vw;
  height:220px;
  background:radial-gradient(138% 192px at 50% 0, transparent 64%, var(--bg-50) 65%);
  z-index:-1;
  pointer-events:none;
}
.hero-cta-wrap .container{
  display:flex;
  justify-content:center;
  overflow:visible;
}
.hero-cta-stage{
  position:relative;
  width:100%;
  display:flex;
  justify-content:center;
  --hero-campaign-left:0px;
  --hero-campaign-width:280px;
}
.cta-row{
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:nowrap;
  width:min(calc(100% - 240px), 900px);
  padding:16px 18px;
  border-radius:30px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(238,125,0,.24);
  box-shadow:0 16px 34px rgba(238,125,0,.18);
  backdrop-filter:saturate(140%) blur(10px);
  pointer-events:auto;
}
@media (max-width:920px){
  .cta-row{flex-wrap:wrap}
}
.hero-campaign-card{
  position:absolute;
  left:var(--hero-campaign-left);
  top:calc(100% - 188px);
  z-index:1;
  width:var(--hero-campaign-width);
  display:grid;
  gap:5px;
  padding:14px 14px 15px;
  border-radius:24px;
  background:linear-gradient(180deg,#fffdf9 0%,#fff3e2 100%);
  border:1px solid rgba(238,125,0,.26);
  box-shadow:0 18px 36px rgba(15,23,42,.10), 0 8px 20px rgba(238,125,0,.12);
  color:var(--ink-900);
  pointer-events:auto;
  opacity:0;
  transform:translate3d(0,34px,0);
  will-change:transform, opacity;
  transition:box-shadow .2s ease, color .2s ease;
}
.hero-campaign-card.is-ready{
  animation:heroCampaignRise 1.1s cubic-bezier(.22,1,.36,1) .14s forwards;
}
.hero-campaign-card__kicker{
  display:inline-flex;
  align-self:flex-start;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.10);
  color:var(--brand-600);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-campaign-card strong{
  font-family:var(--font-subheading);
  font-size:17px;
  line-height:1.08;
  font-weight:400;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hero-campaign-card__amount{
  color:var(--brand-600);
  font-size:14px;
  font-weight:900;
  line-height:1.2;
}
.hero-campaign-card:hover{
  color:var(--ink-900);
}
@keyframes heroCampaignRise{
  from{
    opacity:0;
    transform:translate3d(0,34px,0);
  }
  to{
    opacity:1;
    transform:translate3d(0,0,0);
  }
}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.14);font-weight:800}
.btn.primary{background:var(--brand-500);border-color:rgba(0,0,0,.08);color:#1b1207}
.btn.primary:hover{background:var(--brand-600)}
.btn.ghost{background:rgba(255,255,255,.08);color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
.btn.model-cta{
  min-width:220px;
  padding:14px 20px;
  background:var(--brand-500);
  border:1px solid rgba(0,0,0,.08);
  color:#fff;
  box-shadow:0 16px 32px rgba(238,125,0,.22);
}
.btn.model-cta:hover{
  background:var(--brand-600);
  border-color:rgba(0,0,0,.10);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 20px 40px rgba(238,125,0,.32);
}
.btn.model-cta svg{
  transition:transform .18s ease;
}
.btn.model-cta:hover svg{
  transform:translateX(4px);
}
.btn.model-cta-outline{
  min-width:220px;
  padding:14px 20px;
  background:#fff;
  border:1px solid var(--brand-500);
  color:var(--brand-500);
  box-shadow:none;
}
.btn.model-cta-outline:hover{
  background:rgba(238,125,0,.06);
  border-color:var(--brand-500);
  color:var(--brand-600);
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(238,125,0,.10);
}
.cta-tile{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  flex:1 1 auto;
  min-width:0;
  min-height:60px;
  padding:12px 18px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(255,255,255,.98);
  color:#ee7d00;
  font-weight:900;
  text-align:center;
  white-space:nowrap;
  box-shadow:0 10px 24px rgba(15,23,42,.05), inset 0 0 0 1px rgba(238,125,0,.10);
  transition:transform .18s ease,box-shadow .22s ease,color .18s ease;
}
.cta-tile:hover{
  background:#fff;
  color:#ee7d00;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.08), inset 0 0 0 1px rgba(238,125,0,.18), 0 0 18px rgba(238,125,0,.14);
}
.cta-tile > span:not(.cta-ico){
  overflow:hidden;
  text-overflow:ellipsis;
  min-width:0;
}
.cta-search{
  display:inline-flex;
  align-items:center;
  gap:12px;
  flex:0 0 240px;
  position:relative;
  min-height:60px;
  padding:8px 10px 8px 16px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(255,255,255,.98);
  color:#ee7d00;
  box-shadow:0 10px 24px rgba(15,23,42,.05), inset 0 0 0 1px rgba(238,125,0,.10);
  transition:box-shadow .22s ease,transform .18s ease;
}
.cta-search:hover{
  box-shadow:0 14px 28px rgba(15,23,42,.08), inset 0 0 0 1px rgba(238,125,0,.18), 0 0 18px rgba(238,125,0,.14);
}
.cta-search:focus-within{
  border-color:rgba(255,255,255,.98);
  background:#fff;
  box-shadow:0 14px 28px rgba(15,23,42,.08), inset 0 0 0 1px rgba(238,125,0,.20), 0 0 18px rgba(238,125,0,.16);
}
.cta-search input{
  flex:1;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#ee7d00;
  font:inherit;
  font-weight:800;
}
.cta-search input::placeholder{
  color:rgba(238,125,0,.86);
}
.cta-search button{
  width:28px;
  height:28px;
  flex:0 0 auto;
  border:0;
  border-radius:0;
  background:transparent;
  color:#ee7d00;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.cta-search button svg{
  width:20px;
  height:20px;
}
.cta-search button:hover{
  background:transparent;
}
.search-suggest-dropdown{
  position:fixed;
  background:#fff;
  border-radius:14px;
  box-shadow:0 12px 32px rgba(15,23,42,.13),inset 0 0 0 1px rgba(238,125,0,.14);
  z-index:9999;
  overflow:hidden;
  padding:6px 0;
  min-width:240px;
}
.search-suggest-dropdown[hidden]{display:none}
.search-suggest-item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 16px;
  cursor:pointer;
  text-decoration:none;
  color:inherit;
  transition:background .12s;
}
.search-suggest-item:hover,
.search-suggest-item.is-active{
  background:rgba(238,125,0,.07);
}
.search-suggest-title{
  flex:1;
  min-width:0;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#1a1a2e;
}
.search-suggest-type{
  font-size:11px;
  font-weight:600;
  color:rgba(238,125,0,.85);
  background:rgba(238,125,0,.10);
  border-radius:6px;
  padding:2px 7px;
  white-space:nowrap;
  flex-shrink:0;
}
.cta-ico{
  width:auto;height:auto;border-radius:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;
  color:#ee7d00;
  flex:0 0 auto;
}
.cta-ico svg{display:block}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.92);font-weight:700;font-size:13px}
.hero-badges .badge{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.06));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-badges .badge::after{
  content:"";
  position:absolute;
  top:-1px;
  bottom:-1px;
  left:-42%;
  width:38%;
  pointer-events:none;
  opacity:0;
  transform:skewX(-22deg) translateX(0);
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.04) 24%,rgba(255,255,255,.48) 50%,rgba(255,255,255,.04) 76%,rgba(255,255,255,0) 100%);
  animation:heroBadgeShine 4.8s ease-in-out infinite;
}
.hero-badges .badge:nth-child(2)::after{animation-delay:.9s}
.hero-badges .badge:nth-child(3)::after{animation-delay:1.8s}
@keyframes heroBadgeShine{
  0%,18%{
    opacity:0;
    transform:skewX(-22deg) translateX(0);
  }
  24%{
    opacity:.92;
  }
  44%{
    opacity:0;
    transform:skewX(-22deg) translateX(420%);
  }
  100%{
    opacity:0;
    transform:skewX(-22deg) translateX(420%);
  }
}
@media (prefers-reduced-motion: reduce){
  .hero-badges .badge::after{
    animation:none;
  }
}

.contact-hero{padding:78px 0 34px}
.contact-hero .container{max-width:none;padding-left:28px;padding-right:28px}
.contact-top{display:grid;grid-template-columns:1.35fr .65fr;gap:26px;align-items:start}
.contact-copy h1{
  font-family:var(--font-heading);
  font-weight:800;
  font-size:clamp(32px,4.2vw,54px);
  line-height:1.05;
  margin:0 0 14px;
}
.contact-copy .accent{color:var(--brand-600)}
.contact-copy .accent.accent-black{color:var(--text-900)}
.contact-copy p{max-width:60ch;margin:0}
.contact-meta{display:block;padding-right:24px;transform:translateX(-32px)}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.citem{
  display:flex;gap:12px;align-items:flex-start;
  background:rgba(2,8,23,.03);
  border:1px solid rgba(2,8,23,.06);
  border-radius:var(--r-md);
  padding:12px 12px;
  position:relative;
}
.cico{
  width:38px;height:38px;border-radius:var(--r-md);
  background:#fff;
  border:1px solid rgba(2,8,23,.10);
  display:flex;align-items:center;justify-content:center;
  flex:0 0 auto;
}
.ctitle{font-weight:900;color:var(--text-900);font-size:13px;line-height:1.25}
.cval{margin-top:4px;color:var(--text-700);font-weight:700;font-size:13px;line-height:1.35}
.cval a{color:var(--text-900)}
.cval a:hover{text-decoration:underline}
@keyframes contact-card-mobile-cue{
  0%, 8%{
    opacity:0;
    transform:translateY(-50%) translateX(-10px) scale(.92);
  }
  12%{
    opacity:1;
    transform:translateY(-50%) translateX(-2px) scale(1);
  }
  18%{
    opacity:1;
    transform:translateY(-50%) translateX(7px) scale(1);
  }
  24%{
    opacity:1;
    transform:translateY(-50%) translateX(-3px) scale(1);
  }
  30%{
    opacity:1;
    transform:translateY(-50%) translateX(6px) scale(1);
  }
  34%, 100%{
    opacity:0;
    transform:translateY(-50%) translateX(10px) scale(.94);
  }
}
@media (prefers-reduced-motion: reduce){
  .contact-cards .citem::after{
    animation:none;
    opacity:.75;
    transform:translateY(-50%);
  }
}

.contact-map{width:100%;position:relative}
.contact-map{margin-top:32px}
.contact-map{padding-top:24px}
.contact-map::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(2,8,23,.14),transparent);
  pointer-events:none;
  z-index:2;
}
.contact-map iframe{display:block;width:100%;height:560px;border:0;position:relative;z-index:1}
.contact-map-empty{padding:18px 0}

.section{padding:44px 0}
.section h2{font-family:var(--font-subheading);font-weight:300;font-size:30px;margin:0 0 14px}
.kicker{display:inline-block;font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:12px;color:var(--brand-600);border:1px solid rgba(238,125,0,.25);background:rgba(238,125,0,.08);padding:6px 10px;border-radius:999px;margin-bottom:10px}
.grid{display:grid;gap:18px}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);padding:18px;box-shadow:0 6px 20px rgba(2,8,23,.06)}
.card h3{margin:0 0 6px;font-size:18px}
.muted{color:var(--text-700)}
.search-page-shell{display:grid;gap:18px}
.search-page-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
}
.search-page-form input{
  width:100%;
  height:56px;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  background:#fff;
  color:var(--text-900);
  padding:0 16px;
  font:inherit;
  box-shadow:0 6px 20px rgba(2,8,23,.04);
}
.search-page-form input:focus{
  outline:none;
  border-color:rgba(238,125,0,.35);
  box-shadow:0 0 0 3px rgba(238,125,0,.12);
}
.search-page-form button{
  height:56px;
  padding:0 22px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:var(--r-lg);
  background:rgba(238,125,0,.92);
  color:#1b1207;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.search-page-form button:hover{background:var(--brand-600);color:#fff}
.search-page-summary{margin:0;color:#475569;font-weight:700}
.search-results{display:grid;gap:14px}
.search-result-card{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:16px;
  align-items:stretch;
  padding:16px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:#fff;
}
.search-result-card--text{
  grid-template-columns:minmax(0,1fr);
}
.search-result-media{
  display:block;
  overflow:hidden;
  border-radius:var(--r-lg);
  background:#eef2f7;
  min-height:132px;
}
.search-result-media img{display:block;width:100%;height:100%;object-fit:cover}
.search-result-body{display:grid;gap:8px;align-content:start}
.search-result-type{
  display:inline-flex;
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(238,125,0,.22);
  background:rgba(238,125,0,.08);
  color:var(--brand-600);
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.search-result-body h2{margin:0;font-size:24px;line-height:1.2}
.search-result-body h2 a:hover{color:var(--brand-600)}
.search-result-meta{margin:0;color:#64748b;font-size:13px;font-weight:800}
.search-result-snippet{margin:0;color:var(--text-700)}
.search-result-link{font-weight:800;color:var(--brand-600)}
.search-result-link:hover{color:var(--brand-500)}

.contact-form-card{background:transparent;border:0;box-shadow:none;padding:0}
.contact-form-card h3{margin:0 0 18px;text-align:center;font-size:22px}

.switcher{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:stretch}
.switcher-section{padding-top:40px}
.switcher-section .container{max-width:none;padding-left:20px;padding-right:28px}
.switcher-nav{display:flex;flex-direction:column;gap:10px;align-items:stretch;height:100%}
.switcher-tab{
  appearance:none;border:1px solid var(--border);background:transparent;
  width:100%;
  display:flex;align-items:center;justify-content:flex-start;
  border-radius:var(--r-md);padding:16px 18px;text-align:left;
  font-weight:700;font-size:15px;color:var(--text-700);
  transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
  cursor:pointer;
}
.switcher-tab:hover{background:rgba(238,125,0,.10);border-color:rgba(238,125,0,.30);color:var(--brand-600)}
.switcher-tab:focus-visible{outline:3px solid rgba(238,125,0,.35);outline-offset:3px}
.switcher-tab.is-active{
  background:var(--brand-500);
  border-color:rgba(0,0,0,.08);
  color:#fff;
  font-weight:800;
  justify-content:flex-start;
  text-align:left;
  box-shadow:0 10px 24px rgba(238,125,0,.26);
}
.switcher-factory-mobile-wrap{display:none}
.product-detail-info-card .switcher-factory-mobile-wrap{display:block;margin-top:4rem}
.product-detail-info-card .switcher-factory-link--mobile{display:flex}.switcher-factory-link{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:110px;margin-top:auto;
  border:none;
  text-decoration:none;color:var(--text-700);
  overflow:visible;position:relative;
  transition:background .22s ease;
}
.switcher-factory-link:hover{
  background:transparent;
}
.switcher-factory-icon{
  display:flex;align-items:center;justify-content:center;
  position:relative;
  transition:transform .28s cubic-bezier(.34,1.2,.64,1);
}
.switcher-factory-icon::before,.switcher-factory-icon::after{
  content:'';
  position:absolute;
  top:50%;left:50%;
  width:52px;height:52px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:2px solid rgba(238,125,0,.55);
  animation:factoryPing 2.6s ease-out infinite;
  pointer-events:none;
}
.switcher-factory-icon::after{animation-delay:1.3s}
@keyframes factoryPing{
  0%{transform:translate(-50%,-50%) scale(1);opacity:.65}
  100%{transform:translate(-50%,-50%) scale(2.4);opacity:0}
}
.switcher-factory-link:hover .switcher-factory-icon{transform:translateY(-10px)}
.switcher-factory-label{
  font-size:12px;font-weight:700;color:var(--brand-600);
  opacity:0;transform:translateY(10px);
  transition:opacity .25s ease,transform .25s ease;
  margin-top:4px;text-align:center;
}
.switcher-factory-link:hover .switcher-factory-label{opacity:1;transform:translateY(0)}
.switcher-panels{min-height:420px}
.switcher-panel{display:none}
.switcher-panel.is-active{display:block;animation:switcherIn .22s ease-out}
@keyframes switcherIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}
@media (prefers-reduced-motion: reduce){
  .switcher-panel.is-active{animation:none}
  .switcher-tab{transition:none}
}
.switcher-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}
.switcher-media{position:relative;min-height:420px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.switcher-media img{width:100%;max-width:620px;height:auto}
.switcher-faq{--faq-h:440px;display:grid;grid-template-columns:minmax(420px,1fr) minmax(520px,820px);gap:26px;align-items:start}
.switcher-faq-title{height:var(--faq-h);align-self:stretch;display:flex;overflow:hidden;border-radius:var(--r-lg);padding-right:16px}
.switcher-faq-image{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:left center;
  border-radius:var(--r-lg);
  border:0;
  background:transparent;
}
.switcher-faq-list{
  display:grid;
  gap:10px;
  max-height:var(--faq-h);
  overflow:auto;
  padding-right:8px;
  width:100%;
  max-width:none;
  justify-self:stretch;
}
.about-model{width:100%;max-width:620px;overflow:hidden;border-radius:var(--r-xl);border:1px solid var(--border);background:#fff;box-shadow:0 6px 20px rgba(2,8,23,.06);position:relative}
.about-model img{display:block;width:100%;height:auto}
.about-glb{width:100%;max-width:820px;overflow:hidden;border-radius:0;border:0;background:transparent;box-shadow:none}
.about-glb-frame{width:100%;height:440px;display:block;border:0;background:transparent}

/* model-viewer interaction */
.mv-scroll-lock{overscroll-behavior:none}
.about-skp{
  width:min(620px,100%);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:#fff;
  padding:18px;
  display:flex;gap:14px;align-items:center;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
}
.about-skp-ico{
  width:54px;height:54px;border-radius:var(--r-lg);
  background:rgba(238,125,0,.10);
  border:1px solid rgba(238,125,0,.22);
  display:flex;align-items:center;justify-content:center;
  font-weight:1000;color:var(--brand-600);
  letter-spacing:.08em;
}
.about-skp-text strong{display:block}
.about-skp-text span{display:block}
.about-copy h2{
  font-family:var(--font-subheading);
  font-weight:600;
  font-size:clamp(26px,3.2vw,36px);
  line-height:1.15;
  margin:0 0 12px;
  color:var(--text-900);
}
.about-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.switcher-tracking{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);
  gap:28px;
  align-items:center;
  min-height:420px;
}
.switcher-tracking-copy h2{
  margin:0 0 12px;
  font-family:var(--font-subheading);
  font-weight:600;
  font-size:clamp(26px,3vw,38px);
  line-height:1.18;
}
.switcher-tracking-copy p{margin:0}
.tracking-switcher-form,
.tracking-lookup-card{
  display:grid;
  gap:14px;
  padding:18px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:#fff;
  color:var(--text-900);
  backdrop-filter:none;
  box-shadow:0 12px 32px rgba(2,8,23,.08);
}
.tracking-switcher-input,
.tracking-lookup-input{
  display:grid;
  grid-template-columns:1fr 52px;
  gap:8px;
  align-items:center;
}
.tracking-switcher-input input,
.tracking-lookup-input input{
  width:100%;
  height:56px;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:0 16px;
  font:inherit;
  color:var(--text-900);
  background:#f8fafc;
}
.tracking-switcher-input input::placeholder{color:#64748b}
.tracking-switcher-input input:focus,
.tracking-lookup-input input:focus{
  outline:none;
  border-color:rgba(238,125,0,.35);
  box-shadow:0 0 0 3px rgba(238,125,0,.12);
}
.tracking-switcher-input button,
.tracking-lookup-input button{
  width:52px;
  height:52px;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#fff;
  color:var(--text-900);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.tracking-switcher-input button:hover,
.tracking-lookup-input button:hover{
  background:#f8fafc;
}
.tracking-switcher-help,
.tracking-lookup-note{
  margin:0;
  color:var(--text-700);
  font-size:14px;
  line-height:1.6;
}
.tracking-feedback{
  display:block;
  padding:11px 13px;
  border-radius:var(--r-md);
  border:1px solid rgba(239,68,68,.28);
  background:rgba(239,68,68,.10);
  color:#b91c1c;
  font-size:13px;
  font-weight:700;
}
.tracking-feedback[hidden]{display:none !important}
.tracking-feedback.is-success{
  border-color:rgba(34,197,94,.25);
  background:rgba(34,197,94,.10);
  color:#166534;
}

.tracking-page{padding:28px 0 10px}
.tracking-page .container{max-width:1360px;padding-left:24px;padding-right:24px}
.tracking-shell{display:grid;gap:18px}
.tracking-hero{
  display:grid;
  justify-items:center;
  padding:20px 22px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:linear-gradient(135deg,#fff 0%,#f8fafc 62%,rgba(238,125,0,.07) 100%);
  box-shadow:0 10px 28px rgba(2,8,23,.05);
}
.tracking-lookup-card{
  width:min(100%,560px);
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.tracking-lookup-card .tracking-feedback{
  color:#b91c1c;
  background:rgba(239,68,68,.08);
  margin-top:10px;
}
.tracking-summary-card,
.tracking-compact-card,
.tracking-accordion,
.tracking-empty-card,
.tracking-mini-stat{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  box-shadow:0 10px 28px rgba(2,8,23,.05);
}
.tracking-overview{padding:20px 22px;display:grid;gap:16px}
.tracking-overview-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.tracking-overview-copy{display:grid;gap:8px;min-width:0}
.tracking-overview-code{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(238,125,0,.1);
  border:1px solid rgba(238,125,0,.18);
  color:var(--brand-700);
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.tracking-overview h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(28px,3vw,40px);
  font-weight:400;
  line-height:1.08;
}
.tracking-overview-copy p{margin:0;max-width:68ch}
.tracking-overview-status{
  display:flex;
  align-items:flex-start;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.tracking-status-pill{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(238,125,0,.12);
  border:1px solid rgba(238,125,0,.22);
  color:var(--brand-700);
  font-size:12px;
  font-weight:900;
}
.tracking-status-pill.is-soft{
  background:#f8fafc;
  border-color:var(--border);
  color:#334155;
}
.tracking-progress-inline{
  display:grid;
  gap:8px;
  padding:14px 16px;
  border-radius:var(--r-lg);
  background:#f8fafc;
  border:1px solid var(--border);
}
.tracking-progress-inline-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.tracking-progress-inline-head span{font-size:13px;color:#64748b;font-weight:800}
.tracking-progress-inline-head strong{font-size:15px;color:var(--text-900)}
.tracking-stepper{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  padding:8px 4px 0;
  gap:0;
}
.tracking-stepper-item{
  position:relative;
  flex:1 1 0;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  z-index:1;
}
.tracking-stepper-item::before{
  content:"";
  position:absolute;
  top:14px;
  left:50%;
  right:-50%;
  height:2px;
  background:#e2e8f0;
  z-index:-1;
}
.tracking-stepper-item:last-child::before{display:none}
.tracking-stepper-item.next-done::before{background:#16a34a}
.tracking-stepper-dot{
  width:30px;
  height:30px;
  border-radius:999px;
  background:#e2e8f0;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:2px solid #fff;
  box-shadow:0 0 0 2px #e2e8f0;
  transition:background .2s ease, box-shadow .2s ease;
}
.tracking-stepper-item.is-done .tracking-stepper-dot{
  background:#16a34a;
  box-shadow:0 0 0 2px #16a34a;
}
.tracking-stepper-item.is-current .tracking-stepper-dot{
  background:#ee7d00;
  box-shadow:0 0 0 2px #ee7d00;
  animation:tracking-stepper-pulse 1.6s ease-in-out infinite;
}
@keyframes tracking-stepper-pulse{
  0%{box-shadow:0 0 0 2px #ee7d00, 0 0 0 0 rgba(238,125,0,.55)}
  70%{box-shadow:0 0 0 2px #ee7d00, 0 0 0 12px rgba(238,125,0,0)}
  100%{box-shadow:0 0 0 2px #ee7d00, 0 0 0 0 rgba(238,125,0,0)}
}
.tracking-stepper-item.is-current .tracking-stepper-label{
  color:#9a4d00;
  font-weight:700;
}
@media (prefers-reduced-motion:reduce){
  .tracking-stepper-item.is-current .tracking-stepper-dot{animation:none}
}
.tracking-stepper-label{
  margin-top:10px;
  font-size:12px;
  color:#64748b;
  font-weight:600;
  line-height:1.25;
  word-break:break-word;
}
.tracking-stepper-item.is-done .tracking-stepper-label{
  color:#0f172a;
  font-weight:700;
}
@media (max-width:640px){
  .tracking-stepper-dot{width:26px;height:26px}
  .tracking-stepper-item::before{top:12px}
  .tracking-stepper-label{font-size:11px;margin-top:8px}
}
.tracking-overview-note{
  display:grid;
  gap:6px;
  padding:14px 16px;
  border-radius:var(--r-lg);
  background:#fff7ed;
  border:1px solid rgba(238,125,0,.18);
}
.tracking-overview-note strong{
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#9a3412;
}
.tracking-overview-note p{margin:0;color:#7c2d12;line-height:1.6}
.tracking-overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tracking-mini-stat{padding:14px 16px;display:grid;gap:4px}
.tracking-mini-stat span{display:block;color:#64748b;font-size:12px;font-weight:800}
.tracking-mini-stat strong{display:block;color:var(--text-900);font-size:20px;line-height:1.22}
.tracking-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:18px;
  align-items:start;
}
.tracking-compact-card{padding:18px}
.tracking-section-head{display:grid;gap:4px;margin-bottom:14px}
.tracking-section-head h2{
  margin:0;
  font-family:var(--font-subheading);
  font-weight:400;
  font-size:clamp(22px,2.2vw,30px);
  line-height:1.14;
}
.tracking-section-head--compact{margin-bottom:16px}
.tracking-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tracking-meta-tile{
  padding:14px 15px;
  border-radius:var(--r-lg);
  background:#f8fafc;
  border:1px solid var(--border);
  display:grid;
  gap:5px;
}
.tracking-meta-tile span{font-size:12px;font-weight:800;color:#64748b}
.tracking-meta-tile strong{font-size:14px;line-height:1.5;color:var(--text-900)}
.tracking-accordion-group{display:grid;gap:14px}
.tracking-accordion{overflow:hidden}
.tracking-accordion[open]{box-shadow:0 12px 30px rgba(2,8,23,.07)}
.tracking-accordion > summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  padding:16px 18px;
  cursor:pointer;
}
.tracking-accordion > summary::-webkit-details-marker{display:none}
.tracking-accordion > summary::after{
  content:"+";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid var(--border);
  color:#334155;
  font-size:18px;
  font-weight:400;
  flex:0 0 auto;
}
.tracking-accordion[open] > summary::after{content:"−"}
.tracking-accordion-title-wrap{display:grid;gap:4px;min-width:0;flex:1 1 0}
.tracking-accordion-title{font-size:16px;color:var(--text-900)}
.tracking-accordion-subtitle{font-size:12px;color:#64748b;font-weight:700}
.tracking-accordion-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.08);
  border:1px solid rgba(238,125,0,.18);
  color:var(--brand-700);
  font-size:12px;
  font-weight:900;
  margin-left:auto;
}
.tracking-accordion-body{display:grid;gap:14px;padding:0 18px 18px}
.tracking-accordion-note,
.tracking-map-empty,
.tracking-empty-card{
  padding:16px 18px;
  border-radius:var(--r-lg);
  border:1px dashed #cbd5e1;
  background:#f8fafc;
  color:var(--text-700);
}
.tracking-map-frame{
  overflow:hidden;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#f8fafc;
}
.tracking-map-frame iframe{display:block;width:100%;height:260px;border:0}
.tracking-shipment-grid{display:grid;grid-template-columns:1fr;gap:12px}
.tracking-shipment-card{
  padding:16px;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  background:#f8fafc;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:16px;
}
.tracking-shipment-top{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:8px;
  flex:0 0 auto;
  min-width:160px;
}
.tracking-shipment-top strong{
  color:var(--text-900);
  font-size:16px;
  line-height:1.25;
}
.tracking-shipment-top span{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(238,125,0,.22);
  background:rgba(238,125,0,.08);
  color:var(--brand-700);
  font-size:11px;
  font-weight:900;
}
.tracking-shipment-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;flex:1;min-width:220px}
.tracking-shipment-card > .muted{flex-basis:100%;margin:0}
.tracking-shipment-card dt{margin:0 0 4px;color:#64748b;font-size:11px;font-weight:800}
.tracking-shipment-card dd{margin:0;color:var(--text-900);font-weight:700;line-height:1.4;font-size:13px}
.tracking-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tracking-stage-card{
  padding:16px;
  background:#f8fafc;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  display:grid;
  gap:10px;
}
.tracking-stage-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.tracking-stage-top h3{margin:0;color:var(--text-900);font-size:17px;line-height:1.24}
.tracking-stage-top span{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  color:#334155;
  font-size:11px;
  font-weight:800;
}
.tracking-stage-card p{margin:0;line-height:1.6}
.tracking-step-list{display:grid;gap:12px}
.tracking-step{
  background:#f8fafc;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  box-shadow:none;
  overflow:hidden;
}
.tracking-step[open]{background:#fff}
.tracking-step > summary{
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px 16px;
}
.tracking-step > summary::-webkit-details-marker{display:none}
.tracking-step-summary-main{display:flex;align-items:flex-start;gap:12px;min-width:0}
.tracking-step-summary-copy{display:grid;gap:4px;min-width:0}
.tracking-step-summary-copy strong{font-size:16px;line-height:1.3;color:var(--text-900)}
.tracking-step-summary-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tracking-step-summary-side{display:grid;gap:6px;justify-items:end;min-width:88px}
.tracking-step-summary-side span{font-size:12px;font-weight:900;color:var(--text-900)}
.tracking-step-summary-progress{
  width:88px;
  height:7px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
}
.tracking-step-summary-progress i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ee7d00,#f59e0b);
}
.tracking-step-order{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  border-radius:999px;
  background:rgba(238,125,0,.1);
  color:var(--brand-600);
  font-size:13px;
  font-weight:900;
  flex:0 0 auto;
}
.tracking-step-stage{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--border);
  color:#334155;
  font-size:11px;
  font-weight:800;
}
.tracking-step-date{font-size:12px;font-weight:800;color:#64748b}
.tracking-step-body{display:grid;gap:12px;padding:0 16px 16px}
.tracking-step-body p{margin:0;line-height:1.6}
.tracking-step-progress{display:flex;align-items:center;gap:10px}
.tracking-step-progress strong{font-size:13px;color:var(--text-900)}
.tracking-step-progress-bar{
  flex:1;
  height:8px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
}
.tracking-step-progress-bar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ee7d00,#f59e0b);
}
.tracking-empty-card{font-size:15px;line-height:1.7}
.tracking-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:start}
.tracking-photo-card{margin:0;display:grid;gap:8px;min-width:0}
.tracking-photo-item{
  position:relative;
  display:block;
  width:100%;
  box-sizing:border-box;
  appearance:none;
  cursor:zoom-in;
  border-radius:18px;
  overflow:hidden;
  aspect-ratio:4/3;
  background:#e2e8f0;
  border:1px solid #e5e7eb;
  box-shadow:0 12px 28px rgba(2,8,23,.08)
}
.tracking-photo-item:focus-visible{outline:2px solid rgba(238,125,0,.35);outline-offset:2px}
.tracking-photo-item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .28s ease
}
.tracking-photo-item:hover img{transform:scale(1.03)}
.tracking-photo-caption{font-size:13px;line-height:1.6;color:#475569}
@media (max-width:1200px){.tracking-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:960px){.tracking-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.tracking-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.tracking-photo-grid{grid-template-columns:1fr}}

.shorts-section{padding-top:10px}
.shorts-section .container{max-width:none;padding-left:28px;padding-right:28px}
.shorts-row{display:flex;align-items:center;gap:18px}
.shorts-label{display:flex;align-items:center}
.shorts-label-inner{display:grid;gap:6px}
.shorts-kicker{
  display:inline-flex;align-items:center;gap:10px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--text-900);
  font-weight:900;
  letter-spacing:.01em;
  font-size:16px;
}
.shorts-desc{margin:0;color:var(--text-700);max-width:38ch;font-size:13px;line-height:1.5}
.shorts-kicker::before{
  content:"";
  width:12px;height:12px;border-radius:999px;
  background:var(--brand-500);
  box-shadow:0 10px 18px rgba(238,125,0,.22);
}
.shorts-wrap{position:relative;flex:1;min-width:0}

.shorts-rail{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - (4 * 12px)) / 5);
  gap:12px;
  overflow-x:auto;
  overflow-y:hidden;
  width:100%;
  padding:6px 86px 10px 2px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  -ms-overflow-style:none;
  cursor:grab;
  user-select:none;
  touch-action:pan-y pinch-zoom;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
}
.shorts-rail::-webkit-scrollbar{display:none}
.shorts-rail.is-dragging{
  cursor:grabbing;
}
.shorts-rail.is-dragging .short-card{cursor:grabbing}

.shorts-next{
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  width:48px;height:48px;
  border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(10px);
  box-shadow:0 8px 28px rgba(2,8,23,.14);
  cursor:pointer;
  color:var(--text-900);
  display:flex;align-items:center;justify-content:center;
  transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.shorts-next:hover{
  background:var(--brand-500);
  color:#fff;
  border-color:var(--brand-500);
  box-shadow:0 12px 32px rgba(238,125,0,.28);
  transform:translateY(-50%) scale(1.07);
}
.shorts-next:disabled{opacity:.4;cursor:default;transform:translateY(-50%)}

.home-showcase-section{padding-top:12px;padding-bottom:18px;background:transparent}
.home-showcase-section .container{max-width:none;padding-left:28px;padding-right:28px}
.home-showcase-story{
  position:relative;
  margin-left:-28px;
  margin-right:-28px;
  margin-bottom:26px;
  padding:34px 34px 30px;
  border-radius:0;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(8,18,42,.98), rgba(16,35,77,.96) 52%, rgba(22,44,90,.96)),
    radial-gradient(circle at 12% 12%, rgba(238,125,0,.16), transparent 32%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 28px 70px rgba(11,27,59,.18);
}
.home-showcase-story::before{
  content:"";
  position:absolute;
  inset:auto -8% -30% auto;
  width:340px;
  height:340px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(238,125,0,.18), transparent 68%);
  pointer-events:none;
}
.home-showcase-story::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:32px 32px;
  opacity:.14;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.7), transparent 88%);
  pointer-events:none;
}
.home-showcase-story-top,
.home-showcase-story-grid,
.home-showcase-story-note{
  position:relative;
  z-index:1;
}
.home-showcase-story-top{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(320px,.72fr);
  gap:24px;
  align-items:end;
}
.home-showcase-story-heading h2{
  margin:12px 0 0;
  max-width:24ch;
  display:grid;
  gap:.08em;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(36px,4.2vw,60px);
  line-height:.92;
  letter-spacing:-.04em;
}
.home-showcase-story-heading h2 > span{display:block}
.home-showcase-story-title-line{white-space:nowrap}
.home-showcase-story-kicker{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.9);
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.home-showcase-story-intro{
  display:grid;
  gap:18px;
  align-content:end;
}
.home-showcase-story-lead{
  margin:0;
  color:rgba(255,255,255,.84);
  font-size:15px;
  line-height:1.82;
}
.home-showcase-story-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  background:var(--brand-500);
  color:#fff;
  font-weight:800;
  letter-spacing:.02em;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  box-shadow:0 16px 34px rgba(238,125,0,.26);
}
.home-showcase-story-link:hover{
  transform:translateY(-2px);
  background:var(--brand-600);
  box-shadow:0 20px 42px rgba(238,125,0,.32);
}
.home-showcase-story-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.home-showcase-story-panel{
  min-height:182px;
  padding:20px 22px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.11);
  backdrop-filter:blur(10px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.home-showcase-story-panel--accent{
  background:linear-gradient(180deg, rgba(238,125,0,.16), rgba(255,255,255,.08));
}
.home-showcase-story-label{
  display:inline-flex;
  align-items:center;
  margin-bottom:10px;
  color:#ffbf73;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.home-showcase-story-panel p{
  margin:0;
  color:rgba(255,255,255,.84);
  font-size:14px;
  line-height:1.68;
}
.home-showcase-story-note{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.1);
}
.home-showcase-story-note p{
  margin:0;
  max-width:82ch;
  color:rgba(255,255,255,.82);
  font-size:14px;
  line-height:1.8;
}
.home-showcase-story-nowrap{white-space:nowrap}
/* ── Hizmet Bölgeleri — Modern kartlı grid ─────────────────── */
.home-regions-section{position:relative;padding:80px 0 88px;overflow:hidden;background:transparent}
.home-regions-bg{position:absolute;inset:0;pointer-events:none;background:transparent}
/* Türkiye haritası inline SVG — sınır çizgisi animasyonlu */
.home-regions-map-wrap{
  position:absolute;
  top:50%;
  left:50%;
  width:min(1100px, 92%);
  transform:translate(-50%, -50%) scale(.94);
  opacity:0;
  transition:opacity 1.4s ease, transform 1.8s cubic-bezier(.22,1,.36,1);
  pointer-events:none;
}
.home-regions-section.is-revealed .home-regions-map-wrap{
  opacity:1;
  transform:translate(-50%, -50%) scale(1);
}
.home-regions-map-trace{
  display:block;
  width:100%;
  height:auto;
}
/* Her şehir path'i — başlangıçta görünmez, çizilince çok hafif dolgu */
.home-regions-map-trace path{
  fill:rgba(238,125,0,.04);
  fill-opacity:0;
  stroke:rgba(238,125,0,.55);
  stroke-width:.7;
  stroke-linejoin:round;
  stroke-linecap:round;
  stroke-dasharray:var(--path-len, 800);
  stroke-dashoffset:var(--path-len, 800);
  transition:none;
}
.home-regions-section.is-revealed .home-regions-map-trace path{
  animation:tracePath 12s cubic-bezier(.22,1,.36,1) var(--path-delay, 0.4s) forwards;
}
@keyframes tracePath{
  0%{
    stroke-dashoffset:var(--path-len, 800);
    fill-opacity:0;
    stroke-opacity:.95;
  }
  60%{
    stroke-opacity:.85;
    fill-opacity:.5;
  }
  100%{
    stroke-dashoffset:0;
    fill-opacity:1;
    stroke-opacity:.35;
  }
}
/* Tüm haritada subtle breathing (path animasyonları bittikten sonra) */
.home-regions-section.is-revealed .home-regions-map-wrap{
  animation:mapBreatheWrap 8s ease-in-out 5s infinite;
}
@keyframes mapBreatheWrap{
  0%,100%{filter:none}
  50%{filter:drop-shadow(0 0 14px rgba(238,125,0,.18))}
}

/* Başlık + açıklama yumuşak yukarıdan akıp gelir */
.home-regions-head .home-regions-kicker,
.home-regions-head .home-regions-title,
.home-regions-head .home-regions-desc,
.home-regions-head .home-regions-hub,
.home-regions-head .home-regions-foot-link{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .85s ease, transform .9s cubic-bezier(.22,1,.36,1);
}
.home-regions-head .home-regions-kicker{transition-delay:.1s}
.home-regions-head .home-regions-title{transition-delay:.22s}
.home-regions-head .home-regions-hub{transition-delay:.55s;transform:translateY(22px) scale(.78)}
.home-regions-head .home-regions-desc{transition-delay:.34s}
.home-regions-head .home-regions-foot-link{transition-delay:.44s}
.home-regions-section.is-revealed .home-regions-head .home-regions-kicker,
.home-regions-section.is-revealed .home-regions-head .home-regions-title,
.home-regions-section.is-revealed .home-regions-head .home-regions-desc,
.home-regions-section.is-revealed .home-regions-head .home-regions-foot-link{
  opacity:1;
  transform:translateY(0);
}
.home-regions-section.is-revealed .home-regions-head .home-regions-hub{
  opacity:1;
  transform:translateY(0) scale(1);
  transition:opacity .7s ease, transform .9s cubic-bezier(.34,1.56,.64,1);
}

/* Sol/sağ bölge chip'leri yanlardan stagger ile süzülür */
.home-regions-grid--left .home-region-card,
.home-regions-grid--right .home-region-card{
  opacity:0;
  transition:opacity .65s ease, transform .7s cubic-bezier(.22,1,.36,1), box-shadow .25s ease, border-color .25s ease, color .25s ease, background .25s ease;
}
.home-regions-grid--left .home-region-card{transform:translateX(-36px)}
.home-regions-grid--right .home-region-card{transform:translateX(36px)}
.home-regions-section.is-revealed .home-regions-grid--left .home-region-card,
.home-regions-section.is-revealed .home-regions-grid--right .home-region-card{
  opacity:1;
  transform:translateX(0);
}
.home-regions-grid--left .home-region-card:nth-child(1),.home-regions-grid--right .home-region-card:nth-child(1){transition-delay:.25s, 0.25s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(2),.home-regions-grid--right .home-region-card:nth-child(2){transition-delay:.33s, 0.33s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(3),.home-regions-grid--right .home-region-card:nth-child(3){transition-delay:.41s, 0.41s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(4),.home-regions-grid--right .home-region-card:nth-child(4){transition-delay:.49s, 0.49s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(5),.home-regions-grid--right .home-region-card:nth-child(5){transition-delay:.57s, 0.57s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(6),.home-regions-grid--right .home-region-card:nth-child(6){transition-delay:.65s, 0.65s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(7),.home-regions-grid--right .home-region-card:nth-child(7){transition-delay:.73s, 0.73s, 0s, 0s, 0s, 0s}
.home-regions-grid--left .home-region-card:nth-child(8),.home-regions-grid--right .home-region-card:nth-child(8){transition-delay:.81s, 0.81s, 0s, 0s, 0s, 0s}

/* Reduced motion: animasyonları kapat */
@media (prefers-reduced-motion:reduce){
  .home-regions-map-wrap,
  .home-regions-head .home-regions-kicker,
  .home-regions-head .home-regions-title,
  .home-regions-head .home-regions-desc,
  .home-regions-head .home-regions-hub,
  .home-regions-head .home-regions-foot-link,
  .home-regions-grid--left .home-region-card,
  .home-regions-grid--right .home-region-card{
    opacity:1!important;transform:translate(-50%, -50%)!important;transition:none!important;animation:none!important;
  }
  .home-regions-head .home-regions-kicker,.home-regions-head .home-regions-title,.home-regions-head .home-regions-desc,.home-regions-head .home-regions-hub,.home-regions-head .home-regions-foot-link,.home-regions-grid--left .home-region-card,.home-regions-grid--right .home-region-card{transform:none!important}
  .home-regions-map-trace path{stroke-dashoffset:0!important;fill-opacity:1!important;animation:none!important;stroke-opacity:.35!important}
}
.home-regions-section .container{position:relative;z-index:1}

.home-regions-section > .container{max-width:1480px}
.home-regions-layout{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:56px;align-items:start;width:100%}
.home-regions-layout--scattered{grid-template-columns:1fr minmax(280px,380px) 1fr;gap:32px;align-items:center}

.home-regions-head{position:sticky;top:24px;text-align:left}
.home-regions-layout--scattered .home-regions-head{position:static;text-align:center}
.home-regions-layout--scattered .home-regions-desc{margin-left:auto;margin-right:auto}
.home-regions-layout--scattered .home-regions-foot-link{margin-left:auto;margin-right:auto}
.home-regions-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(238,125,0,.08);border:1px solid rgba(238,125,0,.18);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c45c00;margin-bottom:18px}
.home-regions-kicker-dot{width:6px;height:6px;border-radius:999px;background:#ee7d00;box-shadow:0 0 0 4px rgba(238,125,0,.18);animation:regionDotPulse 2s ease-in-out infinite}
@keyframes regionDotPulse{0%,100%{box-shadow:0 0 0 4px rgba(238,125,0,.18)}50%{box-shadow:0 0 0 6px rgba(238,125,0,0)}}
.home-regions-title{font-size:clamp(28px,3.2vw,36px);font-weight:700;color:#0f172a;margin:0 0 18px;line-height:1.15;letter-spacing:-.01em}
.home-regions-hub{display:flex;justify-content:center;margin:0 0 20px}
.home-regions-hub .home-region-card{padding:10px 18px 10px 12px;font-size:14px}
.home-regions-hub .home-region-card-icon{width:26px;height:26px}
.home-regions-hub .home-region-card-icon svg{width:14px;height:14px}
.home-regions-hub .home-region-card-name{font-size:14.5px}
.home-regions-title-accent{display:block;background:linear-gradient(135deg,#ee7d00 0%,#f59e0b 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;font-weight:700}
.home-regions-desc{font-size:15px;line-height:1.7;color:#475569;margin:0 0 22px}

.home-regions-grid{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.home-regions-grid--left,.home-regions-grid--right{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:center;align-items:stretch}
.home-regions-grid--left .home-region-card,.home-regions-grid--right .home-region-card{display:inline-flex;width:100%;justify-content:flex-start}

.home-region-card{position:relative;display:inline-flex;align-items:center;gap:7px;padding:8px 14px 8px 10px;border-radius:999px;background:#fff;border:1px solid #e6e9ef;color:#0f172a;text-decoration:none;transition:transform .22s cubic-bezier(.22,1,.36,1), box-shadow .22s ease, border-color .2s ease, color .2s ease;font-size:13px}
.home-region-card-glow{display:none}
.home-region-card:hover{transform:translateY(-2px);border-color:rgba(238,125,0,.5);box-shadow:0 8px 18px rgba(238,125,0,.12);color:#c45c00}

.home-region-card-icon{flex-shrink:0;width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(238,125,0,.1);color:#ee7d00;transition:all .22s ease}
.home-region-card-icon svg{width:13px;height:13px;transition:transform .25s ease}
.home-region-card:hover .home-region-card-icon{background:#ee7d00;color:#fff}
.home-region-card:hover .home-region-card-icon svg{transform:scale(1.1)}

.home-region-card-body{display:inline-flex;align-items:baseline;gap:6px;flex-direction:row}
.home-region-card-name{font-size:13.5px;font-weight:700;color:inherit;line-height:1.2;letter-spacing:-.005em;white-space:nowrap}
.home-region-card-tag{display:none}

.home-region-card-arrow{display:none}

/* Üretim Merkezi (Silivri) — küçük ama vurgulu rozet */
.home-region-card.is-hub{background:linear-gradient(135deg,#ee7d00 0%,#f59e0b 100%);border-color:transparent;color:#fff;padding-right:10px;box-shadow:0 6px 16px rgba(238,125,0,.28)}
.home-region-card.is-hub .home-region-card-icon{background:rgba(255,255,255,.22);color:#fff}
.home-region-card.is-hub .home-region-card-name{color:#fff}
.home-region-card.is-hub .home-region-card-tag{display:inline-flex;font-size:9px;font-weight:800;color:#fff;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:rgba(255,255,255,.22);line-height:1.2;align-self:center;margin-left:2px}
.home-region-card.is-hub:hover{transform:translateY(-2px);color:#fff;border-color:transparent;box-shadow:0 12px 24px rgba(238,125,0,.4)}
.home-region-card.is-hub:hover .home-region-card-icon{background:rgba(255,255,255,.32)}

.home-regions-foot-link{display:inline-flex;align-items:center;gap:8px;color:#475569;font-size:13.5px;font-weight:600;text-decoration:none;padding:8px 0;border-bottom:1px solid transparent;transition:color .2s ease, border-color .2s ease}
.home-regions-foot-link:hover{color:#ee7d00;border-bottom-color:#ee7d00}
.home-regions-foot-link svg{transition:transform .2s ease}
.home-regions-foot-link:hover svg{transform:translateX(3px)}

@media (max-width:980px){
  .home-regions-layout{grid-template-columns:1fr;gap:32px}
  .home-regions-layout--scattered{grid-template-columns:1fr;gap:24px}
  .home-regions-head{position:static;text-align:center;max-width:640px;margin:0 auto}
  .home-regions-desc{margin-left:auto;margin-right:auto;max-width:560px}
  .home-regions-grid{justify-content:center}
  .home-regions-grid--left,.home-regions-grid--right{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
  .home-regions-grid--left .home-region-card,.home-regions-grid--right .home-region-card{width:auto}
  .home-regions-layout--scattered .home-regions-grid--left{order:2}
  .home-regions-layout--scattered .home-regions-head{order:1}
  .home-regions-layout--scattered .home-regions-grid--right{order:3}
}
@media (max-width:680px){
  .home-regions-section{padding:56px 0 60px}
  .home-regions-grid{gap:7px;justify-content:center}
  .home-region-card{padding:7px 12px 7px 8px;gap:6px;font-size:12.5px}
  .home-region-card-icon{width:20px;height:20px}
  .home-region-card-icon svg{width:11px;height:11px}
  .home-region-card-name{font-size:12.5px}
  .home-region-card.is-hub .home-region-card-tag{font-size:8.5px;padding:2px 6px}
}
.home-interview-section{
  padding-top:40px;
  padding-bottom:64px;
}
.home-interview-section .container{
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}
.home-interview-shell{
  display:grid;
  grid-template-columns:minmax(260px, .82fr) minmax(0, 1.18fr);
  gap:26px;
  align-items:stretch;
}
.home-interview-copy,
.home-interview-video{
  border-radius:0;
  border:0;
  box-shadow:none;
}
.home-interview-copy{
  display:grid;
  align-content:center;
  gap:18px;
  padding:0;
  background:none;
}
.home-interview-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--brand-500);
  font-family:var(--font-heading);
  font-size:clamp(22px, 2.6vw, 38px);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1;
}
.home-interview-copy h2{
  margin:0;
  max-width:18ch;
  display:grid;
  position:relative;
  overflow:hidden;
  color:var(--text-900);
  font-family:var(--font-subheading);
  font-size:clamp(22px, 2.5vw, 36px);
  font-weight:500;
  line-height:1.18;
  letter-spacing:-.03em;
}
.home-interview-title-sizer{
  visibility:hidden;
  user-select:none;
  pointer-events:none;
}
.home-interview-title-text{
  position:absolute;
  inset:0;
  display:block;
  opacity:0;
  transform:translate3d(42px, 0, 0);
  transition:
    opacity 1.45s cubic-bezier(.22,1,.36,1),
    transform 1.45s cubic-bezier(.22,1,.36,1);
  will-change:transform, opacity;
}
.home-interview-title-text.is-current{
  opacity:1;
  transform:translate3d(0, 0, 0);
}
.home-interview-rotating-title.is-alt .home-interview-title-text.is-current{
  opacity:0;
  transform:translate3d(-24px, 0, 0);
}
.home-interview-rotating-title.is-alt .home-interview-title-text.is-next{
  opacity:1;
  transform:translate3d(0, 0, 0);
}
@media (prefers-reduced-motion: reduce){
  .home-interview-title-text{
    transition:none;
    transform:none;
  }
}
.home-interview-video-stage{
  position:relative;
  align-self:center;
  min-height:600px;
  isolation:isolate;
  --interview-card-width:min(100%, 86%);
  --interview-front-left:0px;
  --interview-front-top:88px;
  --interview-back-left:92px;
  --interview-back-top:0px;
}
.home-interview-video{
  position:absolute;
  left:0;
  top:0;
  width:var(--interview-card-width);
  min-height:0;
  aspect-ratio:16 / 9;
  background:#0b1b3b;
  border-radius:30px;
  border:2px solid #ee7d00;
  box-shadow:
    0 34px 64px rgba(11,27,59,.22),
    0 14px 28px rgba(238,125,0,.16);
  overflow:visible;
  transition:
    left .5s cubic-bezier(.22,1,.36,1),
    top .5s cubic-bezier(.22,1,.36,1),
    transform .5s cubic-bezier(.22,1,.36,1),
    box-shadow .5s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
.home-interview-video.is-playing{
  pointer-events:none;
}
.home-interview-video.is-primary{
  left:var(--interview-front-left);
  top:var(--interview-front-top);
  z-index:3;
  transform-origin:right center;
  transform:perspective(1800px) rotateY(-11deg) rotateZ(-1.2deg);
}
.home-interview-video.is-secondary{
  left:var(--interview-back-left);
  top:var(--interview-back-top);
  z-index:1;
  transform-origin:right center;
  transform:perspective(1800px) rotateY(-11deg) rotateZ(-1.2deg);
  box-shadow:
    0 24px 44px rgba(11,27,59,.18),
    0 10px 22px rgba(238,125,0,.12);
}
.home-interview-video::after{
  content:"";
  position:absolute;
  left:-2px;
  bottom:-16px;
  width:34%;
  height:28px;
  background:linear-gradient(180deg, #dc7900 0%, #cb6f00 100%);
  border-left:2px solid #ee7d00;
  border-bottom:2px solid #ee7d00;
  border-bottom-left-radius:28px;
  border-bottom-right-radius:16px;
  box-shadow:0 18px 24px rgba(11,27,59,.14);
  pointer-events:none;
}
.home-interview-video-hit,
.home-interview-video-embed{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  border-radius:inherit;
}
.home-interview-video-hit{
  border:0;
  padding:0;
  background:#0b1b3b;
  cursor:pointer;
}
.home-interview-video-hit img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.01);
  filter:saturate(1.04) contrast(1.02);
}
.home-interview-video-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(8,12,20,.12), rgba(8,12,20,.42)),
    radial-gradient(circle at 50% 50%, rgba(238,125,0,.18), transparent 34%);
}
.home-interview-video-play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:88px;
  height:88px;
  border-radius:999px;
  background:rgba(238,125,0,.94);
  color:#fff;
  box-shadow:0 22px 42px rgba(238,125,0,.28);
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.home-interview-video-hit:hover .home-interview-video-play{
  transform:translate(-50%, -50%) scale(1.04);
  background:var(--brand-600);
  box-shadow:0 26px 48px rgba(238,125,0,.34);
}
.home-interview-video-embed{
  background:#000;
  z-index:2;
}
.home-interview-video.is-playing .home-interview-video-embed,
.home-interview-video.is-playing .home-interview-video-embed iframe{
  pointer-events:auto;
}
.home-interview-video-embed iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}
.home-interview-video.is-playing .home-interview-video-hit{
  display:none;
}
.home-interview-video-stage.is-swapped .home-interview-video.is-primary{
  left:var(--interview-back-left);
  top:var(--interview-back-top);
  z-index:1;
  transform:perspective(1800px) rotateY(-11deg) rotateZ(-1.2deg);
  box-shadow:
    0 24px 44px rgba(11,27,59,.18),
    0 10px 22px rgba(238,125,0,.12);
}
.home-interview-video-stage.is-swapped .home-interview-video.is-secondary{
  left:var(--interview-front-left);
  top:var(--interview-front-top);
  z-index:4;
  transform:perspective(1800px) rotateY(-11deg) rotateZ(-1.2deg);
  box-shadow:
    0 40px 72px rgba(11,27,59,.26),
    0 18px 34px rgba(238,125,0,.2);
}
html.js-ready .home-showcase-story-top,
html.js-ready .home-showcase-story-note{
  opacity:0;
  transform:translate3d(0,26px,0);
  filter:blur(8px);
  transition:
    opacity .66s cubic-bezier(.22,1,.36,1),
    transform .66s cubic-bezier(.22,1,.36,1),
    filter .66s cubic-bezier(.22,1,.36,1);
}
html.js-ready .home-showcase-story-panel{
  opacity:0;
  transform:translate3d(0,30px,0);
  filter:blur(8px);
  transition:
    opacity .72s cubic-bezier(.22,1,.36,1),
    transform .72s cubic-bezier(.22,1,.36,1),
    filter .72s cubic-bezier(.22,1,.36,1);
}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-top,
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-note,
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-panel{
  opacity:1;
  transform:none;
  filter:none;
}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-top{transition-delay:90ms}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-panel:nth-child(1){transition-delay:170ms}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-panel:nth-child(2){transition-delay:250ms}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-panel:nth-child(3){transition-delay:330ms}
html.js-ready .home-showcase-section.reveal-in .home-showcase-story-note{transition-delay:390ms}
.home-showcase-track{
  --home-showcase-head-width:clamp(420px, 26vw, 520px);
  --home-showcase-fade-width:clamp(92px, 9vw, 148px);
  margin-top:56px;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) var(--home-showcase-head-width);
  gap:32px;
  align-items:stretch;
  background:transparent;
  overflow:visible;
}
.home-showcase-head{
  grid-column:2;
  grid-row:1;
  align-self:center;
  justify-self:stretch;
  width:100%;
  display:grid;
  justify-items:center;
  gap:16px;
  padding-inline:16px;
  text-align:center;
}
.home-showcase-head h2{
  margin:0;
  color:var(--text-900);
  font-family:var(--font-heading);
  font-size:clamp(34px, 3.9vw, 58px);
  line-height:.94;
  letter-spacing:-.05em;
  white-space:nowrap;
}
.home-showcase-head-line{
  display:block;
  width:min(100%, 268px);
  height:1px;
  background:linear-gradient(90deg, rgba(148,163,184,0), #cbd5e1 22%, #cbd5e1 78%, rgba(148,163,184,0));
}
.home-showcase-head-script-stack{
  display:grid;
  gap:8px;
  justify-items:center;
  width:100%;
}
.home-showcase-head-script{
  color:var(--brand-500);
  font-size:clamp(34px, 3vw, 54px);
  line-height:1.04;
  letter-spacing:.01em;
  text-align:center;
  white-space:normal;
  text-wrap:balance;
  text-shadow:0 10px 24px rgba(238,125,0,.14);
}
.home-showcase-head-script--great-vibes{font-family:"Great Vibes","Apple Chancery","Brush Script MT",cursive}
html.js-ready .home-showcase-head-script{
  opacity:0;
  clip-path:inset(0 100% 0 0);
  transform:translate3d(0,18px,0) rotate(-3deg) scale(.985);
  filter:blur(4px);
  transition:
    opacity 1.05s cubic-bezier(.22,1,.36,1),
    clip-path 2.4s cubic-bezier(.22,1,.36,1),
    transform 2.4s cubic-bezier(.22,1,.36,1),
    filter 2.4s cubic-bezier(.22,1,.36,1);
}
html.js-ready .home-showcase-section.reveal-in .home-showcase-head-script{
  opacity:1;
  clip-path:inset(0 0 0 0);
  transform:translate3d(0,0,0) rotate(-3deg) scale(1);
  filter:none;
}
html.js-ready .home-showcase-section.reveal-in .home-showcase-head-script:nth-child(1){transition-delay:220ms}
@media (prefers-reduced-motion: reduce){
  html.js-ready .home-showcase-head-script,
  html.js-ready .home-showcase-section.reveal-in .home-showcase-head-script{
    opacity:1;
    clip-path:none;
    transform:rotate(-3deg);
    filter:none;
    transition:none;
  }
}
.home-showcase-grid{
  grid-column:1;
  grid-row:1;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 18px) / 1.5);
  gap:18px;
  align-items:stretch;
  overflow-x:auto;
  overflow-y:hidden;
  width:100%;
  margin-top:0;
  padding:18px 0 4px;
  background:transparent;
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-snap-type:none;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - var(--home-showcase-fade-width)),rgba(0,0,0,.56) calc(100% - (var(--home-showcase-fade-width) * .42)),transparent 100%);
  mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - var(--home-showcase-fade-width)),rgba(0,0,0,.56) calc(100% - (var(--home-showcase-fade-width) * .42)),transparent 100%);
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  cursor:grab;
  user-select:none;
  touch-action:pan-x pan-y pinch-zoom;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
}
.home-showcase-grid::-webkit-scrollbar{display:none}
.home-showcase-grid.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none;
}
.home-showcase-grid.is-dragging .home-showcase-card{
  cursor:grabbing;
}
.home-showcase-card{
  position:relative;
  display:block;
  min-height:560px;
  border-radius:32px;
  overflow:hidden;
  color:#fff;
  background:transparent;
  box-shadow:none;
  transition:transform .24s ease, box-shadow .24s ease;
  transform-origin:center bottom;
  z-index:1;
  scroll-snap-align:none;
  cursor:grab;
  -webkit-user-drag:none;
}
.home-showcase-card::after{
  content:"";
  position:absolute;
  inset:-82%;
  pointer-events:none;
  z-index:2;
  opacity:0;
  transform:translate3d(-18%,18%,0);
  background:linear-gradient(135deg, rgba(255,255,255,0) 32%, rgba(255,255,255,.02) 40%, rgba(255,255,255,.08) 45%, rgba(255,255,255,.24) 49%, rgba(255,255,255,.48) 50%, rgba(255,255,255,.24) 51%, rgba(255,255,255,.08) 55%, rgba(255,255,255,.02) 60%, rgba(255,255,255,0) 68%);
  mix-blend-mode:screen;
}
html.js-ready .home-showcase-card.reveal-in:hover,
.home-showcase-card:hover{
  z-index:8;
  transform:translateY(-10px) scale(1.02);
  box-shadow:0 18px 28px rgba(11,27,59,.08);
}
.home-showcase-card:hover::after{
  animation:homeShowcaseCardShine 2.6s cubic-bezier(.22,1,.36,1) 1;
}
.home-showcase-card:active{cursor:grabbing}
.home-showcase-media,
.home-showcase-overlay,
.home-showcase-copy{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.home-showcase-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.home-showcase-overlay{
  background:linear-gradient(180deg,rgba(8,12,20,.06) 0%,rgba(8,12,20,.12) 28%,rgba(8,12,20,.62) 100%);
}
.home-showcase-copy{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:12px;
  padding:26px;
  z-index:3;
}
.home-showcase-pill{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-showcase-copy strong{
  font-family:var(--font-subheading);
  font-size:clamp(30px,2.3vw,42px);
  line-height:1.08;
  font-weight:400;
}
.home-showcase-summary{
  max-width:34ch;
  color:rgba(255,255,255,.86);
  font-size:14px;
  line-height:1.62;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
@keyframes homeShowcaseCardShine{
  0%{
    opacity:0;
    transform:translate3d(-18%,18%,0);
  }
  12%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:translate3d(18%,-18%,0);
  }
}

.short-card{
  position:relative;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  background:#fff;
  overflow:hidden;
  box-shadow:0 6px 20px rgba(2,8,23,.06);
  cursor:pointer;
  padding:0;
  aspect-ratio:9/16;
  max-height:420px;
  outline:none;
  touch-action:pan-y pinch-zoom;
}
.short-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#f1f5f9;
}
.short-play{
  position:absolute;
  left:12px;
  bottom:12px;
  width:42px;height:42px;
  border-radius:999px;
  background:rgba(238,125,0,.95);
  color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 22px rgba(0,0,0,.22);
  border:1px solid rgba(0,0,0,.10);
}
.short-card:focus-visible{outline:3px solid rgba(238,125,0,.35);outline-offset:3px}

.short-close{
  position:absolute;
  right:10px;
  top:10px;
  width:36px;height:36px;
  border-radius:var(--r-md);
  border:1px solid rgba(255,255,255,.18);
  background:rgba(2,8,23,.55);
  color:#fff;
  font-size:20px;
  cursor:pointer;
  z-index:3;
}
.short-close:hover{background:rgba(2,8,23,.72)}

.short-embed{
  position:absolute;
  inset:0;
  background:#000;
  z-index:2;
}
.short-embed iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  pointer-events:none;
}

.short-card.is-playing img,
.short-card.is-playing .short-play{opacity:0;pointer-events:none}

.shorts-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.92);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;
  padding:24px;
  animation:shortsModalFade .18s ease-out;
}
.shorts-modal[hidden]{display:none}
@keyframes shortsModalFade{from{opacity:0}to{opacity:1}}
.shorts-modal-frame{
  position:relative;
  width:min(92vw,calc(92vh * 9 / 16));
  aspect-ratio:9/16;
  max-height:92vh;
  background:#000;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 24px 80px rgba(0,0,0,.6);
}
.shorts-modal-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  display:block;
}
.shorts-modal-touch{
  position:absolute;
  inset:0;
  z-index:1;
  background:transparent;
  touch-action:pan-y;
  cursor:grab;
}
.shorts-modal-touch:active{cursor:grabbing}
.shorts-modal-close{
  position:absolute;
  top:-46px;
  right:-2px;
  width:38px;
  height:38px;
  border-radius:50%;
  border:0;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:3;
}
.shorts-modal-close:hover{background:rgba(255,255,255,.3)}
.shorts-modal-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  border:0;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-size:30px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2;
  transition:background .15s ease, opacity .15s ease;
}
.shorts-modal-nav:hover{background:rgba(255,255,255,.32)}
.shorts-modal-nav--prev{left:24px}
.shorts-modal-nav--next{right:24px}
.shorts-modal-nav[disabled]{opacity:.25;cursor:default;pointer-events:none}
@media (max-width:600px){
  .shorts-modal-nav{width:40px;height:40px;font-size:24px}
  .shorts-modal-nav--prev{left:8px}
  .shorts-modal-nav--next{right:8px}
}

.faq-item{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.faq-q{padding:14px 16px;background:#fff;border:0;display:flex;justify-content:space-between;align-items:center;font-weight:900}
.faq-a{padding:0 16px 14px;color:var(--text-700);display:none}
.faq-item[open] .faq-a{display:block}

.blog-page{padding-top:24px;padding-bottom:60px}
.blog-page .container,
.blog-article-page .container{
  width:100%;
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}
.blog-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:24px;
  padding:26px;
  padding-bottom:58px;
  border-radius:28px;
  background:
    radial-gradient(680px 240px at 0% 0%,rgba(238,125,0,.16),transparent 60%),
    linear-gradient(135deg,#ffffff,#f7f8fb);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 28px 60px rgba(2,8,23,.08);
}
.blog-hero h1{margin:6px 0 12px;font-size:clamp(34px,4.2vw,54px);line-height:1.05;font-family:var(--font-heading)}
.blog-hero p{margin:0;max-width:60ch;color:var(--text-700)}
.blog-hero-glossary-link{
  position:absolute;
  right:26px;
  bottom:22px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  max-width:min(100%,240px);
  justify-content:flex-end;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.01em;
  text-align:right;
  white-space:normal;
  text-decoration:none;
  transition:color .24s ease,transform .24s ease,opacity .24s ease;
}
.blog-hero-glossary-icon{
  flex:0 0 auto;
  width:14px;
  height:14px;
}
.blog-hero-glossary-link:hover,
.blog-hero-glossary-link:focus-visible{
  color:#ee7d00;
  transform:translateX(-2px);
}
.blog-chip-cloud{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;align-content:flex-start}
.blog-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  max-width:100%;
  padding:8px 14px;
  border-radius:14px;
  background:rgba(238,125,0,.08);
  border:1px solid rgba(238,125,0,.16);
  color:#7c4d14;
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
  line-height:1.25;
  text-align:center;
  white-space:normal;
}
.blog-chip--city{
  background:#fff;
  border-color:rgba(2,8,23,.1);
  color:#334155;
}
.blog-feature-card{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:0;
  margin-top:28px;
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 26px 58px rgba(2,8,23,.08);
  transition:transform .24s ease, box-shadow .24s ease;
}
.blog-feature-card:hover,
.blog-feature-card:focus-within{
  transform:translateY(-8px);
  box-shadow:0 34px 68px rgba(2,8,23,.12);
}
html.js-ready .blog-feature-card.reveal-in:hover,
html.js-ready .blog-feature-card.reveal-in:focus-within{
  transform:translateY(-8px);
}
.blog-feature-media{position:relative;display:block;width:100%;min-height:100%;background:#e2e8f0;line-height:0;font-size:0;overflow:hidden}
.blog-feature-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.blog-feature-copy{display:grid;align-content:center;gap:16px;padding:28px}
.blog-feature-copy h2{margin:0;font-size:clamp(28px,2.8vw,40px);line-height:1.1}
.blog-feature-copy p{margin:0;color:var(--text-700)}
.blog-feature-link{width:max-content}
.blog-card-topline{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.blog-card-topline span:not(:first-child)::before{
  content:"";
  display:inline-block;
  width:4px;
  height:4px;
  margin-right:10px;
  border-radius:999px;
  background:rgba(100,116,139,.55);
}
.blog-topic-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.blog-topic-card{
  padding:22px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.blog-topic-card h2{margin:0 0 10px;font-size:22px;line-height:1.2}
.blog-topic-card p{margin:0;color:var(--text-700)}
.blog-topic-card a{
  display:inline-flex;
  margin-top:14px;
  font-weight:900;
  color:var(--brand-600);
}
.blog-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:20px;
  margin-top:28px;
}
.blog-card{
  display:grid;
  grid-template-rows:auto 1fr;
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.06);
  transition:transform .24s ease, box-shadow .24s ease;
}
.blog-card:hover,
.blog-card:focus-within{
  transform:translateY(-8px);
  box-shadow:0 26px 52px rgba(2,8,23,.1);
}
html.js-ready .blog-card.reveal-in:hover,
html.js-ready .blog-card.reveal-in:focus-within{
  transform:translateY(-8px);
}
.blog-card-media{position:relative;display:block;width:100%;aspect-ratio:16/11;background:#e2e8f0;line-height:0;font-size:0;overflow:hidden}
.blog-card-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.blog-card-body{display:grid;gap:14px;padding:20px}
.blog-card .blog-chip-cloud{min-height:80px;align-content:start}
.blog-card .blog-chip{
  flex:0 1 auto;
  min-height:40px;
  padding:10px 14px;
  border-radius:16px;
}
.blog-card h3{margin:0;font-size:24px;line-height:1.18}
.blog-card p{margin:0;color:var(--text-700);font-size:14px}
.blog-card-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
}
.blog-card-reading{font-size:13px;font-weight:800;color:#64748b}
.blog-card-foot a{font-weight:900;color:var(--brand-600)}

.blog-article-page{padding-top:24px;padding-bottom:60px}
.blog-breadcrumbs{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:18px;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
.blog-breadcrumbs strong{color:var(--text-900)}
.blog-article-hero{
  display:grid;
  grid-template-columns:minmax(0,.98fr) minmax(340px,1.02fr);
  gap:22px;
  align-items:stretch;
}
.blog-article-copy{
  display:grid;
  gap:16px;
  padding:28px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 24px 52px rgba(2,8,23,.07);
}
.blog-article-copy h1{margin:0;font-size:clamp(34px,4vw,50px);line-height:1.03;font-family:var(--font-heading)}
.blog-article-lead{margin:0;color:var(--text-700);font-size:16px}
.blog-article-copy .blog-chip-cloud{
  gap:10px;
  align-items:center;
}
.blog-article-copy .blog-chip{
  flex:0 0 auto;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:16px;
  font-size:13px;
  line-height:1.15;
  white-space:nowrap;
}
.blog-article-copy .blog-chip-cloud--cities{
  margin-top:-4px;
}
.blog-article-copy .blog-chip--city{
  min-width:92px;
}
.blog-article-cover{
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 24px 52px rgba(2,8,23,.07);
  min-height:100%;
}
.blog-article-cover img{display:block;width:100%;height:100%;object-fit:cover}
.blog-article-layout{
  display:grid;
  grid-template-columns:290px minmax(0,1fr);
  gap:24px;
  margin-top:26px;
  align-items:start;
}
.blog-article-sticky{
  position:sticky;
  top:calc(var(--header-h) + 18px);
  display:grid;
  gap:16px;
}
.blog-aside-card{
  padding:18px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.blog-aside-card h2{margin:0 0 12px;font-size:18px}
.blog-toc,.blog-quick-list{
  margin:0;
  padding-left:18px;
  display:grid;
  gap:10px;
  color:var(--text-700);
}
.blog-toc a{color:var(--text-900);font-weight:700}
.blog-aside-action{width:100%;justify-content:center}
.blog-article-content{display:grid;gap:22px}
.blog-article-section{
  padding:24px 26px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.blog-article-section h2{margin:0 0 14px;font-size:28px;line-height:1.12}
.blog-article-section p{margin:0 0 14px;color:var(--text-700)}
.blog-article-section p:last-child{margin-bottom:0}
.blog-article-table-wrap{
  overflow-x:auto;
  border-radius:20px;
  border:1px solid rgba(2,8,23,.08);
}
.blog-article-table{
  width:100%;
  min-width:680px;
  border-collapse:collapse;
  background:#fff;
}
.blog-article-table th,
.blog-article-table td{
  padding:16px 14px;
  border-bottom:1px solid rgba(2,8,23,.08);
  border-right:1px solid rgba(2,8,23,.08);
  text-align:left;
  vertical-align:top;
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:none;
}
.blog-article-table thead th{
  background:#f8fafc;
  color:var(--text-900);
  font-size:14px;
  font-weight:900;
}
.blog-article-table tbody th{
  color:var(--text-900);
  font-size:15px;
  font-weight:800;
  background:#fff;
}
.blog-article-table-link{
  color:inherit;
  font-weight:inherit;
  text-decoration:underline;
  text-decoration-color:rgba(238,125,0,.34);
  text-underline-offset:.16em;
}
.blog-article-table-link:hover{
  color:var(--brand-600);
  text-decoration-color:currentColor;
}
.blog-article-table td{
  color:var(--text-700);
  font-size:15px;
  line-height:1.6;
}
.blog-article-table th:nth-child(2),
.blog-article-table td:nth-child(2){
  min-width:118px;
  white-space:nowrap;
}
.blog-article-table th:nth-child(3),
.blog-article-table td:nth-child(3){
  min-width:108px;
  white-space:nowrap;
}
.blog-article-table th:nth-child(4),
.blog-article-table td:nth-child(4){
  min-width:148px;
  white-space:nowrap;
}
.blog-article-table tr > *:last-child{border-right:0}
.blog-article-table tbody tr:last-child > *{border-bottom:0}
.blog-article-table-note{
  margin-top:14px;
  font-size:13px;
  line-height:1.65;
  color:#64748b;
}
.blog-article-list{margin:0;padding-left:18px;display:grid;gap:10px;color:var(--text-700)}
.blog-internal-links{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.blog-internal-link{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(238,125,0,.08),rgba(255,255,255,.96));
  border:1px solid rgba(238,125,0,.14);
  color:var(--text-900);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.blog-internal-link strong{font-size:17px;line-height:1.2}
.blog-internal-link span{color:var(--text-700);font-size:14px;line-height:1.55}
.blog-internal-link:hover{
  transform:translateY(-3px);
  border-color:rgba(238,125,0,.28);
  box-shadow:0 18px 34px rgba(238,125,0,.12);
}
.blog-faq-list{display:grid;gap:12px}
.blog-article-cta{
  padding:26px;
  border-radius:26px;
  background:linear-gradient(135deg,#0b1b3b,#122652);
  color:#fff;
  box-shadow:0 24px 56px rgba(11,27,59,.22);
}
.blog-article-cta h2{margin:6px 0 10px;font-size:32px;line-height:1.08}
.blog-article-cta p{margin:0;color:rgba(255,255,255,.82)}
.blog-article-cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.blog-related{margin-top:32px}
.blog-related-head h2{margin:6px 0 0;font-size:32px}
.blog-crl-outer{
  position:relative;
  margin-top:28px;
}
.blog-crl{
  display:flex;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  gap:20px;
  align-items:stretch;
  padding-top:2px;
  padding-bottom:4px;
  scrollbar-width:none;
  -ms-overflow-style:none;
  touch-action:pan-x pan-y;
  overscroll-behavior-x:contain;
}
.blog-crl::-webkit-scrollbar{display:none}
.blog-crl .blog-related-card{
  flex:0 0 calc(33.333% - 14px);
  min-width:0;
  scroll-snap-align:start;
  transform:none;
  transition:box-shadow .24s ease;
}
.blog-crl .blog-related-card:hover,
.blog-crl .blog-related-card:focus-within{transform:none}
html.js-ready .blog-crl .blog-related-card.reveal-block,
html.js-ready .blog-crl .blog-related-card.reveal-first-row,
html.js-ready .blog-crl .blog-related-card.reveal-in,
html.js-ready .blog-crl .blog-related-card.reveal-in:hover,
html.js-ready .blog-crl .blog-related-card.reveal-in:focus-within{
  opacity:1;
  filter:none;
  transform:none;
}
.blog-crl-btn{
  position:absolute;
  top:40%;
  transform:translateY(-50%);
  z-index:2;
  width:42px;
  height:42px;
  border-radius:50%;
  border:2px solid var(--border);
  background:#fff;
  color:var(--text-900);
  font-size:26px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background .15s,border-color .15s,color .15s;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
.blog-crl-btn:hover{
  background:var(--brand-600);
  border-color:var(--brand-600);
  color:#fff;
}
.blog-crl-btn:disabled{opacity:.3;pointer-events:none}
.blog-crl-btn--prev{left:-21px}
.blog-crl-btn--next{right:-21px}
.blog-crl .blog-card-body{gap:8px;padding:14px 16px;align-content:start}
.blog-crl .blog-card .blog-chip-cloud{min-height:0}
.blog-crl .blog-related-card h3{font-size:1rem;line-height:1.35}
.blog-crl .blog-card p{font-size:.8125rem;margin:0}
.blog-crl .blog-card-foot{padding:10px 16px;margin-top:auto}

.files-page{
  padding-top:18px;
  padding-bottom:8px;
}
.files-page .container{
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}
.files-shell{
  position:relative;
  min-height:clamp(300px, 46svh, 500px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:18px;
  transition:gap .28s ease;
}
.files-shell.is-active{
  gap:16px;
}
.files-stage{
  position:relative;
  flex:1 1 auto;
  order:1;
  display:grid;
  place-items:center;
  align-content:center;
  min-height:220px;
  transition:align-content .32s ease, justify-items .32s ease;
}
.files-shell.has-content .files-stage{
  justify-items:stretch;
  align-content:start;
}
.files-shell.is-active .files-stage{
  order:2;
}
.files-idle{
  display:grid;
  place-items:center;
  gap:14px;
  width:100%;
  min-height:inherit;
}
.files-idle[hidden]{
  display:none;
}
.files-idle img{
  display:block;
  width:min(118px, 22vw);
  height:auto;
  opacity:.94;
}
.files-idle-scroll{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:66px;
  height:66px;
  border-radius:999px;
  border:1.5px solid #ee7d00;
  background:transparent;
  color:#ee7d00;
  box-shadow:0 18px 34px rgba(11,27,59,.1);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, color .22s ease;
  animation:filesIdleArrowFloat 1.9s ease-in-out infinite;
}
.files-idle-scroll:hover{
  color:var(--brand-600);
  border-color:#ee7d00;
  box-shadow:0 22px 38px rgba(11,27,59,.14);
}
.files-idle-scroll:focus-visible{
  outline:2px solid rgba(238,125,0,.34);
  outline-offset:3px;
}
.files-idle-scroll svg{
  display:block;
  width:24px;
  height:24px;
}
.files-panel{
  width:100%;
}
.files-panel[hidden]{
  display:none;
}
.files-panel.is-visible{
  animation:filesPanelReveal .48s cubic-bezier(.22,1,.36,1) both;
}
.files-panel-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.files-doc-card{
  min-height:168px;
  padding:24px 22px;
  border-radius:24px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 18px 36px rgba(2,8,23,.05);
}
.files-doc-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.08);
  border:1px solid rgba(238,125,0,.14);
  color:var(--brand-600);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.files-doc-card h3{
  margin:16px 0 10px;
  font-size:24px;
  line-height:1.12;
  font-family:var(--font-subheading);
}
.files-doc-card p{
  margin:0;
  color:var(--text-700);
  font-size:14px;
  line-height:1.7;
}
.files-panel-grid--catalogs{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:38px 42px;
  align-items:start;
}
.files-doc-card--flipbook{
  display:grid;
  gap:18px;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.files-flipbook-head{
  display:grid;
  justify-items:center;
  gap:10px;
  text-align:center;
}
.files-doc-card--flipbook .files-doc-badge{
  width:max-content;
}
.files-flipbook-kicker{
  display:block;
  color:var(--brand-500);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.files-doc-card--flipbook h3{
  margin:0;
  color:var(--text-950);
  font-size:clamp(28px,2.2vw,38px);
  line-height:1.08;
  font-family:var(--font-heading);
}
.files-doc-card--flipbook p{
  max-width:44ch;
  margin:0;
  color:var(--text-700);
  font-size:15px;
  line-height:1.7;
}
.files-flipbook-shell{
  position:relative;
  display:grid;
  align-items:center;
}
.files-flipbook-stage{
  position:relative;
  padding:0 46px;
  overflow:hidden;
}
.files-flipbook-book{
  --flipbook-ratio:1.42;
  --flipbook-zoom:1;
  --flipbook-zoom-origin:50% 50%;
  position:relative;
  aspect-ratio:var(--flipbook-ratio);
  border-radius:26px;
  overflow:hidden;
  background:linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%);
  box-shadow:0 26px 48px rgba(15,23,42,.14);
  isolation:isolate;
  transform:scale(var(--flipbook-zoom));
  transform-origin:var(--flipbook-zoom-origin);
  transition:transform .24s ease, box-shadow .24s ease;
  cursor:zoom-in;
  will-change:transform;
}
.files-flipbook-book::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid rgba(148,163,184,.22);
  pointer-events:none;
  z-index:6;
}
.files-flipbook-book:focus-visible{
  outline:3px solid rgba(245,158,11,.36);
  outline-offset:6px;
}
.files-doc-card--flipbook.is-zoomed .files-flipbook-book{
  cursor:zoom-out;
  box-shadow:0 30px 56px rgba(15,23,42,.18);
}
.files-flipbook-page{
  position:absolute;
  top:0;
  bottom:0;
  width:50%;
  overflow:hidden;
  background:#fff;
}
.files-flipbook-page--left{
  left:0;
  border-right:1px solid rgba(226,232,240,.96);
}
.files-flipbook-page--right{
  right:0;
  border-left:1px solid rgba(226,232,240,.96);
}
.files-flipbook-page canvas,
.files-flipbook-leaf canvas{
  display:block;
  width:100%;
  height:100%;
  background:#fff;
}
.files-flipbook-gutter{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  z-index:2;
  width:30px;
  transform:translateX(-50%);
  background:
    linear-gradient(90deg,rgba(15,23,42,.06) 0%,rgba(15,23,42,.015) 18%,rgba(255,255,255,.18) 52%,rgba(15,23,42,.055) 100%);
  pointer-events:none;
}
.files-flipbook-gutter::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  transform:translateX(-50%);
  background:rgba(148,163,184,.24);
}
.files-flipbook-leaf{
  position:absolute;
  top:0;
  bottom:0;
  z-index:5;
  width:50%;
  opacity:0;
  overflow:hidden;
  pointer-events:none;
  backface-visibility:hidden;
  transform-style:preserve-3d;
  will-change:transform, opacity;
}
.files-flipbook-leaf--next{
  left:50%;
  transform-origin:left center;
}
.files-flipbook-leaf--prev{
  left:0;
  transform-origin:right center;
}
.files-flipbook-leaf-shadow{
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(15,23,42,.26) 0%,rgba(15,23,42,.12) 16%,rgba(255,255,255,0) 54%);
  opacity:0;
}
.files-doc-card--flipbook.is-flipping-next .files-flipbook-leaf--next{
  opacity:1;
  animation:filesFlipbookNext .84s cubic-bezier(.2,.82,.2,1) forwards;
}
.files-doc-card--flipbook.is-flipping-next .files-flipbook-leaf--next .files-flipbook-leaf-shadow{
  animation:filesFlipbookShadowNext .84s ease forwards;
}
.files-doc-card--flipbook.is-flipping-prev .files-flipbook-leaf--prev{
  opacity:1;
  animation:filesFlipbookPrev .84s cubic-bezier(.2,.82,.2,1) forwards;
}
.files-doc-card--flipbook.is-flipping-prev .files-flipbook-leaf--prev .files-flipbook-leaf-shadow{
  background:linear-gradient(270deg,rgba(15,23,42,.26) 0%,rgba(15,23,42,.12) 16%,rgba(255,255,255,0) 54%);
  animation:filesFlipbookShadowPrev .84s ease forwards;
}
.files-flipbook-loading{
  position:absolute;
  inset:auto 20px 20px auto;
  z-index:7;
  display:grid;
  place-items:center;
  min-width:170px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(226,232,240,.92);
  color:var(--text-700);
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  box-shadow:0 14px 24px rgba(15,23,42,.08);
  transition:opacity .22s ease, transform .22s ease;
}
.files-flipbook-loading[hidden]{
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
}
.files-flipbook-nav{
  position:absolute;
  top:50%;
  z-index:8;
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  margin:0;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:var(--brand-500);
  box-shadow:0 18px 32px rgba(15,23,42,.14);
  transform:translateY(-50%);
  transition:transform .22s ease, box-shadow .22s ease, opacity .22s ease, background-color .22s ease;
}
.files-flipbook-nav--prev{
  left:0;
}
.files-flipbook-nav--next{
  right:0;
}
.files-flipbook-nav:hover:not(:disabled),
.files-flipbook-nav:focus-visible{
  transform:translateY(-50%) scale(1.04);
  box-shadow:0 22px 40px rgba(15,23,42,.18);
}
.files-flipbook-nav:disabled{
  opacity:.42;
  cursor:not-allowed;
  box-shadow:none;
}
.files-flipbook-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.files-flipbook-status{
  color:var(--text-700);
  font-size:14px;
  font-weight:700;
}
.files-flipbook-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(238,125,0,.22);
  color:var(--brand-500);
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  transition:transform .22s ease, border-color .22s ease, background-color .22s ease;
}
.files-flipbook-link:hover,
.files-flipbook-link:focus-visible{
  transform:translateY(-2px);
  background:rgba(238,125,0,.06);
  border-color:rgba(238,125,0,.38);
}
.files-doc-card--flipbook.is-busy .files-flipbook-nav{
  pointer-events:none;
}
@keyframes filesFlipbookNext{
  0%{
    transform:perspective(1800px) rotateY(0deg);
  }
  100%{
    transform:perspective(1800px) rotateY(-180deg);
  }
}
@keyframes filesFlipbookPrev{
  0%{
    transform:perspective(1800px) rotateY(0deg);
  }
  100%{
    transform:perspective(1800px) rotateY(180deg);
  }
}
@keyframes filesFlipbookShadowNext{
  0%,
  22%{
    opacity:.34;
  }
  100%{
    opacity:0;
  }
}
@keyframes filesFlipbookShadowPrev{
  0%,
  22%{
    opacity:.34;
  }
  100%{
    opacity:0;
  }
}
.files-panel-stack{
  display:grid;
  gap:22px;
}
.files-panel-grid > .files-doc-card:only-child{
  grid-column:1 / -1;
}
.files-spec-sheet{
  display:grid;
  gap:20px;
  padding:30px 28px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 20px 40px rgba(2,8,23,.05);
}
.files-spec-sheet-head{
  display:grid;
  gap:12px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(2,8,23,.08);
}
.files-spec-sheet-head-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.files-spec-sheet-title{
  display:grid;
  gap:12px;
  min-width:0;
}
.files-spec-sheet-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.08);
  border:1px solid rgba(238,125,0,.16);
  color:var(--brand-600);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.files-spec-sheet-head h2{
  margin:0;
  color:var(--text-900);
  font-family:var(--font-heading);
  font-size:clamp(30px,3.4vw,44px);
  line-height:1;
  letter-spacing:-.04em;
}
.files-spec-sheet-head p{
  margin:0;
  max-width:92ch;
  color:var(--text-700);
  font-size:15px;
  line-height:1.8;
}
.files-spec-download{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  background:linear-gradient(135deg,#f59e0b,#ee7d00);
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
  box-shadow:0 16px 30px rgba(238,125,0,.24);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.files-spec-download:hover{
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 20px 36px rgba(238,125,0,.3);
  filter:saturate(1.04);
}
.files-spec-download svg{
  flex:0 0 auto;
}
.files-spec-accordion-group{
  display:grid;
  gap:14px;
}
.files-spec-accordion{
  overflow:hidden;
  border:1px solid rgba(2,8,23,.08);
  border-radius:22px;
  background:#f8fafc;
}
.files-spec-accordion[open]{
  background:#fff;
  box-shadow:0 16px 34px rgba(2,8,23,.06);
}
.files-spec-accordion > summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  cursor:pointer;
}
.files-spec-accordion > summary::-webkit-details-marker{display:none}
.files-spec-accordion > summary::after{
  content:"+";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  background:rgba(15,23,42,.06);
  color:var(--text-900);
  font-size:22px;
  line-height:1;
  flex:0 0 auto;
}
.files-spec-accordion[open] > summary::after{content:"−"}
.files-spec-accordion-pill{
  display:inline-flex;
  align-items:center;
  gap:12px;
  max-width:100%;
  padding:8px 16px 8px 10px;
  border-radius:999px;
  background:linear-gradient(135deg, #f59e0b, #ee7d00);
  color:#fff;
}
.files-spec-accordion-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  font-size:14px;
  font-weight:900;
  flex:0 0 auto;
}
.files-spec-accordion-label{
  font-size:16px;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  line-height:1.15;
}
.files-spec-accordion-body{
  display:grid;
  gap:18px;
  padding:0 20px 20px;
}
.files-spec-entry{
  display:grid;
  gap:10px;
}
.files-spec-entry + .files-spec-entry{
  padding-top:18px;
  border-top:1px solid rgba(2,8,23,.08);
}
.files-spec-entry h3{
  margin:0;
  color:#d97706;
  font-size:18px;
  line-height:1.3;
  font-family:var(--font-heading);
}
.files-spec-entry p{
  margin:0;
  color:var(--text-700);
  font-size:15px;
  line-height:1.8;
}
.files-spec-list{
  margin:0;
  padding-left:20px;
  color:var(--text-700);
  font-size:15px;
  line-height:1.8;
  display:grid;
  gap:6px;
}
.files-spec-note{
  padding:12px 14px;
  border-radius:16px;
  background:#fff7ed;
  border:1px solid rgba(238,125,0,.14);
  color:#9a3412;
  font-size:13px;
  font-weight:700;
  line-height:1.65;
}
.files-tabs{
  order:2;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:14px;
  margin-top:auto;
  padding-top:18px;
  border-top:1px solid rgba(2,8,23,.1);
  transition:border-color .24s ease;
}
.files-tabs-toggle{
  display:none;
}
.files-shell.is-active .files-tabs{
  order:1;
  margin-top:0;
}
.files-tabs.is-moving{
  pointer-events:none;
}
.files-tab{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:62px;
  padding:14px 18px 18px;
  border-radius:22px;
  border:1px solid rgba(15,23,42,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.94));
  color:rgba(15,23,42,.72);
  font-family:var(--font-subheading);
  font-size:clamp(17px, 1.6vw, 24px);
  font-weight:700;
  line-height:1.1;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(2,8,23,.05);
  transition:color .2s ease, opacity .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.files-tab::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:10px;
  height:3px;
  border-radius:999px;
  background:var(--brand-500);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .2s ease;
}
.files-tab-label{
  display:block;
}
.files-tab-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:999px;
  background:rgba(238,125,0,.1);
  border:1px solid rgba(238,125,0,.16);
  color:var(--brand-600);
  flex:0 0 auto;
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}
.files-tab:hover{
  color:rgba(15,23,42,.96);
  border-color:rgba(238,125,0,.28);
  background:#fff;
  transform:translateY(-2px);
  box-shadow:0 22px 38px rgba(2,8,23,.08);
}
.files-tab:hover .files-tab-icon{
  transform:translateX(2px);
  background:rgba(238,125,0,.14);
  border-color:rgba(238,125,0,.24);
}
.files-tab.is-active{
  color:var(--text-900);
  border-color:rgba(238,125,0,.24);
  background:#fff;
  box-shadow:0 22px 40px rgba(238,125,0,.08);
}
.files-tab.is-active::after{
  transform:scaleX(1);
}
.files-tab.is-active .files-tab-icon{
  background:rgba(238,125,0,.16);
  border-color:rgba(238,125,0,.24);
}
@keyframes filesPanelReveal{
  from{
    opacity:0;
    transform:translateY(24px);
    filter:blur(8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
  }
}
@keyframes filesIdleArrowFloat{
  0%,100%{
    transform:translateY(0);
  }
  50%{
    transform:translateY(10px);
  }
}
@media (prefers-reduced-motion: reduce){
  .files-idle-scroll{
    animation:none;
  }
}

.sitemap-page{padding-top:24px;padding-bottom:54px}
.sitemap-page h1{margin:6px 0 0;font-size:clamp(32px,4vw,48px);line-height:1.06;font-family:var(--font-heading)}
.sitemap-grid{
  display:grid;
  gap:14px;
  margin-top:24px;
  max-width:1080px;
}
.sitemap-accordion{
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.sitemap-accordion[open]{
  box-shadow:0 22px 44px rgba(2,8,23,.08);
}
.sitemap-accordion > summary{
  position:relative;
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:20px 22px;
}
.sitemap-accordion > summary::-webkit-details-marker{display:none}
.sitemap-accordion > summary::after{
  content:"";
  flex:0 0 auto;
  width:11px;
  height:11px;
  margin-left:auto;
  border-right:2px solid #64748b;
  border-bottom:2px solid #64748b;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .22s ease, border-color .22s ease;
}
.sitemap-accordion[open] > summary::after{
  transform:rotate(225deg) translate(-2px,-1px);
  border-color:var(--brand-600);
}
.sitemap-accordion-title-wrap{
  display:grid;
  gap:4px;
  min-width:0;
}
.sitemap-accordion-title{
  font-size:22px;
  line-height:1.15;
  color:var(--text-900);
}
.sitemap-accordion-subtitle{
  color:#64748b;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
}
.sitemap-accordion-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:108px;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(238,125,0,.08);
  border:1px solid rgba(238,125,0,.16);
  color:#9a5b10;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
}
.sitemap-accordion-body{
  padding:0 22px 22px;
  border-top:1px solid rgba(2,8,23,.06);
}
.sitemap-list{
  margin:0;
  padding:18px 0 0 18px;
  display:grid;
  gap:10px;
}
.sitemap-list--split{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 22px;
}
.sitemap-list--cities{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px 22px;
}
.sitemap-list li{
  break-inside:avoid;
}
.sitemap-list a{color:var(--text-900);font-weight:700}
.sitemap-xml-link{margin:18px 0 0;color:#64748b}
.sitemap-xml-link a{font-weight:900;color:var(--brand-600)}

.projects-page{padding-top:16px;padding-bottom:18px}
.projects-page .container{max-width:none;padding-left:28px;padding-right:28px}
.projects-feature-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);
  gap:0;
  align-items:stretch;
  margin-top:0;
  min-height:clamp(380px,42vw,520px);
  overflow:hidden;
  border-radius:30px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 26px 60px rgba(15,23,42,.10);
  isolation:isolate;
}
.projects-feature-shell::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:6px;
  background:linear-gradient(90deg,#d8dee8 0%,#bfc9d8 14%,#1d3565 52%,#0b1b3b 100%);
  z-index:3;
  pointer-events:none;
  transform:scaleX(0);
  transform-origin:left center;
  animation:projects-feature-bar-reveal .9s cubic-bezier(.22,.61,.36,1) .08s both;
}
@keyframes projects-feature-bar-reveal{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}
.projects-feature-shell::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,#ffffff 0%,#ffffff 35%,rgba(255,255,255,.995) 46%,rgba(255,255,255,.97) 55%,rgba(255,255,255,.88) 63%,rgba(255,255,255,.70) 72%,rgba(255,255,255,.42) 81%,rgba(255,255,255,.14) 89%,rgba(255,255,255,0) 95%),
    radial-gradient(64% 120% at 42% 50%,rgba(255,255,255,.46) 0%,rgba(255,255,255,.26) 34%,rgba(255,255,255,.10) 54%,rgba(255,255,255,0) 74%);
  z-index:1;
  pointer-events:none;
}
.projects-feature-copy{
  position:relative;
  z-index:2;
  display:grid;
  align-content:center;
  gap:12px;
  min-height:clamp(380px,42vw,520px);
  padding:clamp(28px,4vw,52px) clamp(28px,4vw,48px) clamp(44px,5vw,72px);
  color:var(--text-900);
}
.projects-feature-topline{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.projects-feature-topline span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(15,23,42,.04);
  border:1px solid rgba(15,23,42,.08);
  color:#475569;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.projects-feature-copy h1{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(28px,3.2vw,48px);
  line-height:1.04;
  max-width:none;
}
.projects-feature-title-main{
  color:inherit;
}
.projects-feature-title-accent{
  display:inline-block;
  color:var(--brand-500);
  white-space:nowrap;
  animation:projects-feature-accent-reveal .78s cubic-bezier(.22,.61,.36,1) both;
}
@keyframes projects-feature-accent-reveal{
  0%{
    opacity:0;
    transform:translateX(-18px);
    clip-path:inset(0 100% 0 0);
  }
  100%{
    opacity:1;
    transform:translateX(0);
    clip-path:inset(0 0 0 0);
  }
}
.projects-feature-lead{
  margin:0;
  max-width:40ch;
  color:#475569;
  font-size:15px;
}
.projects-feature-meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
.projects-feature-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.projects-feature-media{
  position:relative;
  min-height:clamp(380px,42vw,520px);
  background:transparent;
  overflow:hidden;
}
.projects-feature-slide{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  pointer-events:none;
  transition:opacity 1.1s ease;
}
.projects-feature-slide.is-active{
  opacity:1;
  pointer-events:auto;
}
.projects-feature-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.05);
  transition:transform 7.6s ease;
}
.projects-feature-slide.is-active img{transform:scale(1)}
.projects-feature-slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,10,18,.04) 0%,rgba(7,10,18,.18) 100%);
  pointer-events:none;
}
.projects-feature-slide figcaption{
  position:absolute;
  right:24px;
  bottom:30px;
  left:auto;
  max-width:min(420px,calc(100% - 48px));
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.76);
  color:var(--text-900);
  font-size:13px;
  font-weight:700;
  z-index:1;
  backdrop-filter:blur(10px);
}
.projects-feature-nav{
  position:absolute;
  top:50%;
  z-index:2;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(11,27,59,.42);
  color:#fff;
  font-size:30px;
  line-height:1;
  transform:translateY(-50%);
  cursor:pointer;
}
.projects-feature-nav--prev{left:18px}
.projects-feature-nav--next{right:18px}
.projects-feature-dots{
  position:relative;
  z-index:2;
  display:flex;
  gap:8px;
  justify-content:flex-start;
}
.projects-feature-dot{
  width:28px;
  height:4px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(15,23,42,.14);
  cursor:pointer;
}
.projects-feature-dot.is-active{background:var(--ink-900)}

.projects-grid-section{padding-top:8px}
.projects-grid-section .container{
  max-width:none;
  padding-left:24px;
  padding-right:24px;
}
.projects-section-head{
  display:grid;
  gap:8px;
  margin-bottom:22px;
  padding-left:0;
  padding-right:0;
}
.projects-section-head h2{
  margin:0;
  font-size:clamp(28px,3.2vw,40px);
  line-height:1.08;
}
.projects-section-head p{
  margin:0;
  color:var(--text-700);
  max-width:72ch;
}
.projects-card-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
}
.projects-card{
  display:grid;
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 18px 40px rgba(2,8,23,.06);
  transition:transform .22s ease;
}
.projects-card-media{
  position:relative;
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#e2e8f0;
}
.projects-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transition:transform 3.6s ease;
}
.projects-card:hover{
  transform:translateY(-4px);
}
html.js-ready .projects-card.reveal-in:hover{
  transform:translateY(-4px);
}
.projects-card:hover .projects-card-media img{transform:scale(1.06)}
.projects-card-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(7,10,18,.08) 0%, rgba(7,10,18,.58) 100%);
}
.projects-card-copy{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:1;
  display:grid;
  gap:6px;
  color:#fff;
}
.projects-card-copy strong{
  font-size:clamp(18px,1.15vw,24px);
  line-height:1.1;
}
.projects-card-copy em{
  font-style:normal;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
.projects-card-body{
  display:grid;
  gap:12px;
  padding:16px 18px;
}
.projects-card-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.projects-card-meta span{
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid rgba(2,8,23,.08);
  color:#475569;
  font-size:12px;
  font-weight:800;
}
.projects-card-body p{
  margin:0;
  color:var(--text-700);
}
.projects-card-link{
  display:inline-flex;
  width:max-content;
  font-weight:900;
  color:var(--brand-600);
}
.projects-empty-card{
  display:grid;
  gap:10px;
  padding:28px;
  border-radius:24px;
  background:#fff;
  border:1px dashed #cbd5e1;
  color:#475569;
}
.projects-empty-card h1,
.projects-empty-card h2{
  margin:0;
  color:var(--text-900);
}

.projects-copy-section{padding-top:6px;padding-bottom:58px}
.projects-copy-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.projects-copy-card{
  display:grid;
  gap:10px;
  padding:24px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.projects-copy-card h2{
  margin:0;
  font-size:28px;
  line-height:1.12;
}
.projects-copy-card p{
  margin:0;
  color:var(--text-700);
}

.project-detail-page{padding-top:24px;padding-bottom:60px}
.project-detail-breadcrumbs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:18px;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
.project-detail-breadcrumbs strong{color:var(--text-900)}
.project-detail-page .container{max-width:none;padding-left:28px;padding-right:28px}
.project-detail-hero{
  display:grid;
  grid-template-columns:minmax(390px,.78fr) minmax(0,1.22fr);
  gap:16px;
  align-items:stretch;
}
.project-detail-copy{
  display:grid;
  align-content:center;
  justify-items:center;
  gap:16px;
  min-height:clamp(500px,32vw,580px);
  padding:20px 24px 28px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 24px 52px rgba(2,8,23,.07);
}
.project-detail-topline{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.project-detail-topline span{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.10);
  border:1px solid rgba(238,125,0,.16);
  color:#7c4d14;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.project-detail-copy h1{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(22px,2vw,34px);
  line-height:1.02;
  max-width:none;
  justify-self:center;
  text-align:center;
  position:relative;
}
.project-detail-copy h1::after{
  content:"";
  display:block;
  width:min(280px,72%);
  height:1px;
  margin:14px auto 0;
  background:linear-gradient(90deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.12) 18%,rgba(15,23,42,.28) 50%,rgba(15,23,42,.12) 82%,rgba(15,23,42,0) 100%);
}
.project-detail-lead{
  margin:0;
  color:var(--text-700);
  max-width:46ch;
  font-size:13px;
}
.project-detail-meta-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(122px,1fr));
  gap:12px;
  width:100%;
  max-width:620px;
  justify-self:center;
  justify-content:center;
}
.project-detail-meta-card{
  display:grid;
  min-width:0;
  width:100%;
  gap:6px;
  align-content:center;
  min-height:84px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(248,250,252,.88);
  border:1px solid rgba(2,8,23,.08);
  text-decoration:none;
}
.project-detail-meta-card span{
  color:#64748b;
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.project-detail-meta-card strong{
  min-width:0;
  color:var(--text-900);
  font-size:14px;
  line-height:1.25;
  overflow-wrap:break-word;
  word-break:normal;
}
.project-detail-cta-row{
  width:100%;
  display:flex;
  justify-self:center;
  justify-content:center;
}
.project-detail-cta-card{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:132px;
  min-height:54px;
  padding:0 18px;
  border-radius:16px;
  background:linear-gradient(180deg,#f29100 0%,#e57b00 100%);
  border:1px solid rgba(229,123,0,.5);
  box-shadow:0 18px 36px rgba(229,123,0,.16);
  color:#1b1207;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  margin-inline:auto;
}
.project-detail-visual{
  display:grid;
  grid-template-columns:minmax(0,1.34fr) minmax(180px,.52fr);
  gap:10px;
  height:clamp(500px,32vw,580px);
  min-height:0;
}
.project-detail-visual.is-single{grid-template-columns:1fr}
.project-detail-cover,
.project-detail-side-card{
  padding:0;
  border:0;
  background:none;
  display:block;
  cursor:zoom-in;
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 24px 52px rgba(2,8,23,.07);
  background:#fff;
}
.project-detail-cover,
.project-detail-side-grid{
  height:100%;
}
.project-detail-cover img{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.project-detail-side-grid{
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:10px;
  min-height:0;
}
.project-detail-side-card{
  height:100%;
  border-radius:22px;
  box-shadow:0 18px 40px rgba(2,8,23,.06);
}
.project-detail-side-card img{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}
.project-detail-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:24px;
  margin-top:22px;
  align-items:start;
}
.project-detail-article{
  display:grid;
  gap:22px;
}
.project-detail-section,
.project-detail-aside-card{
  display:grid;
  gap:14px;
  padding:24px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 34px rgba(2,8,23,.05);
}
.project-detail-section h2,
.project-detail-aside-card h2{
  margin:0;
  font-size:28px;
  line-height:1.1;
}
.project-detail-section p{
  margin:0;
  color:var(--text-700);
}
.project-detail-keywords-inline{
  margin-top:8px;
  color:#64748b;
  font-size:13px;
  line-height:1.7;
}
.project-detail-keywords-inline > span:last-child{
  color:#475569;
}
.project-detail-caption-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.project-detail-caption-card{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(2,8,23,.08);
}
.project-detail-caption-card strong{
  color:var(--text-900);
  font-size:16px;
}
.project-detail-caption-card p{
  margin:0;
  color:var(--text-700);
}
.project-detail-aside{
  display:grid;
  gap:16px;
}
.project-detail-side-list{
  margin:0;
  display:grid;
  gap:12px;
}
.project-detail-side-list div{
  display:grid;
  gap:4px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(2,8,23,.08);
}
.project-detail-side-list div:last-child{
  padding-bottom:0;
  border-bottom:0;
}
.project-detail-side-list dt{
  color:#64748b;
  font-size:12px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.project-detail-side-list dd{
  margin:0;
  color:var(--text-900);
  font-weight:800;
}
.project-detail-aside-link{
  width:100%;
  margin-top:8px;
}
.project-detail-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.project-detail-tags span{
  display:inline-flex;
  align-items:center;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(238,125,0,.10);
  border:1px solid rgba(238,125,0,.14);
  color:#7c4d14;
  font-size:12px;
  font-weight:800;
}
.project-detail-related{margin-top:32px}

@media (prefers-reduced-motion: reduce){
  .projects-feature-slide,
  .projects-feature-slide img{transition:none}
  .projects-feature-title-accent{animation:none}
  .projects-feature-shell::before{animation:none;transform:none}
}

.footer{
  position:relative;
  background:linear-gradient(90deg,var(--ink-900),var(--ink-800));
  color:#cbd5e1;
  padding:0 0 34px;
  overflow:hidden;
}
.footer::before{
  content:"";
  position:absolute;inset:0;
  background-image:var(--footer-bg-image, none);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  opacity:.22;
  pointer-events:none;
}
.footer::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(11,27,59,.92),rgba(18,38,82,.84));
  pointer-events:none;
}
.footer > *{position:relative;z-index:1}
.footer .container{max-width:none;padding-left:28px;padding-right:28px}
.footer a{color:#fff;opacity:.9}
.footer a:hover{opacity:1}
.footer-tagline{
  padding-top:24px;
  padding-bottom:18px;
  margin-bottom:8px;
  text-align:center;
  display:grid;
  gap:4px;
  justify-items:center;
  color:#fff;
  font-family:var(--font-subheading);
  font-size:clamp(24px,2.6vw,34px);
  font-weight:600;
  line-height:1.2;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.footer-tagline-mark{
  display:block;
  width:160px;
  max-width:min(160px, 40vw);
  height:auto;
  object-fit:contain;
}
.footer-tagline span{display:block}
.footer .cols{display:grid;grid-template-columns:1.22fr .8fr .9fr 1fr;gap:14px;padding-top:20px}
.footer h3{margin:0 0 10px;color:#fff}
.footer-social-col{justify-self:start;margin-left:-18px}
.footer-brand{
  display:inline-flex;
  align-items:center;
  animation:footerLogoFloat 5.4s ease-in-out infinite;
  transform-origin:center;
}
.footer-brand img{
  height:42px;
  width:auto;
  object-fit:contain;
  transition:transform .25s ease,filter .25s ease,opacity .25s ease;
}
.footer-brand:hover img{
  transform:translateY(-2px) scale(1.02);
  filter:drop-shadow(0 10px 22px rgba(238,125,0,.22));
}
.footer-text{color:#cbd5e1;max-width:54ch}
.footer-address-label{
  margin-top:14px;
  margin-bottom:4px;
  color:#cbd5e1;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-small{opacity:.9}
.footer-ico{opacity:.9}
.footer-list{list-style:none;margin:0;padding:0}
.footer-list li{margin:0}
.footer-list a{
  display:flex;align-items:center;gap:10px;
  width:min(100%,340px);
  padding:12px 0;
  opacity:.95;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.footer-list li:last-child a{border-bottom:0}
.footer-list a:hover{opacity:1}
.social-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.social-btn{
  width:38px;height:38px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
}
.social-btn img[src$="facebook.svg"]{filter:brightness(0) invert(1)}
.social-btn:hover{background:rgba(255,255,255,.12)}
.footer-social-contact{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:16px;
  align-items:start;
}
.footer-contact-mini{
  padding-left:12px;
  border-left:1px solid rgba(255,255,255,.12);
}
.footer-contact-mini-item{
  display:grid;
  gap:4px;
  margin-bottom:14px;
}
.footer-contact-mini-item:last-child{margin-bottom:0}
.footer-contact-mini-item span{
  color:#cbd5e1;
  font-size:13px;
  font-weight:700;
}
.footer-contact-mini-item strong{
  color:#fff;
  font-size:15px;
  font-weight:800;
  line-height:1.35;
}
.footer-contact-mini-item strong a{opacity:1}
.company-info-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:210;padding:20px}
.company-info-modal.is-open{display:flex}
.company-info-backdrop{position:absolute;inset:0;background:rgba(2,8,23,.55);backdrop-filter:blur(4px)}
.company-info-card{position:relative;width:min(560px,100%);max-height:88vh;overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 28px 64px rgba(2,8,23,.2);padding:28px 26px 22px;animation:companyInfoIn .22s cubic-bezier(.22,1,.36,1) both}
@keyframes companyInfoIn{from{transform:translateY(12px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.company-info-card h2{margin:0 0 6px;font-size:20px;color:var(--text-900,#0f172a)}
.company-info-intro{margin:0 0 18px;color:#64748b;font-size:12.5px;line-height:1.55}
.company-info-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:0;border-radius:999px;background:rgba(241,245,249,.94);color:#475569;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}
.company-info-close:hover{background:#e2e8f0;color:#0f172a}
.company-info-list{margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.company-info-row{padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}
.company-info-row--wide{grid-column:1 / -1}
.company-info-row dt{margin:0 0 4px;font-size:11px;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.company-info-row dd{margin:0;font-size:13.5px;color:#0f172a;font-weight:600;line-height:1.45;word-break:break-word}
.company-info-row dd a{color:#ee7d00;text-decoration:none}
.company-info-row dd a:hover{text-decoration:underline}
@media (max-width:560px){
  .company-info-card{padding:24px 18px 18px;border-radius:18px}
  .company-info-list{grid-template-columns:1fr;gap:8px}
  .company-info-row{padding:10px 12px}
  .company-info-card h2{font-size:18px}
}
.copyright{
  border-top:1px solid rgba(255,255,255,.12);
  margin-top:22px;
  padding-top:14px;
  text-align:center;
}
.footer-legal{margin-top:8px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.footer-legal a{font-size:12px;opacity:.85}
.footer-legal a:hover{opacity:1}
.footer-legal .sep{opacity:.5}

@keyframes footerLogoFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

@keyframes productLivePulse{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(34,197,94,.55)}
  50%{opacity:.7;box-shadow:0 0 0 8px rgba(34,197,94,0)}
}
@keyframes productCampaignPulse{
  0%,100%{box-shadow:0 16px 32px rgba(238,125,0,.22)}
  50%{box-shadow:0 20px 40px rgba(238,125,0,.34)}
}
@keyframes productCampaignDot{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(255,255,255,.42)}
  50%{opacity:.68;box-shadow:0 0 0 8px rgba(255,255,255,0)}
}
@keyframes productCampaignSlideIn{
  from{opacity:0;transform:translateX(28px)}
  to{opacity:1;transform:translateX(0)}
}

.form{display:grid;gap:12px}
.contact-form .form-row{display:grid;gap:12px}
.contact-form .form-row.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.contact-form .form-row.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.field{display:grid;gap:6px}
.field label{font-weight:800;font-size:14px}
.field input,.field textarea{width:100%;padding:12px 12px;border-radius:var(--r-md);border:1px solid var(--border);background:#fff;font-family:var(--font-body)}
.field textarea{min-height:140px;resize:vertical}
.contact-form .field.consent{margin-top:2px}
.contact-form .field.consent label{display:flex;align-items:flex-start;gap:10px;font-weight:600;color:var(--text-700);font-size:13px;line-height:1.5;cursor:pointer}
.contact-form .field.consent input[type="checkbox"]{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto;cursor:pointer}
.contact-form .field.consent .contact-consent-link{
  font-size:13px;
  line-height:1.5;
  font-weight:700;
  color:var(--brand-600);
  text-decoration:underline;
  text-underline-offset:.16em;
}
.contact-form .field.consent .contact-consent-link:hover{color:var(--brand-700,#c45c00)}
.contact-form .consent-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:14px}
.contact-form .consent-row .field.consent{margin:0}
.contact-form .consent-row .field.consent label{white-space:normal}
.contact-form .consent-row .contact-submit{align-self:flex-end;margin-top:6px}
.contact-form .contact-submit{
  position:relative;
  isolation:isolate;
  overflow:visible;
  padding:12px 24px;
  font-size:14px;
  font-weight:800;
  letter-spacing:.01em;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  border-radius:0 24px 0 24px;
  background:linear-gradient(135deg,#9a4300 0%, #d86f00 46%, #ffa126 100%);
  box-shadow:0 10px 22px rgba(238,125,0,.14);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.contact-form .contact-submit::before{
  content:"";
  position:absolute;
  left:10%;
  right:10%;
  bottom:-12px;
  height:22px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,190,120,.82) 0%, rgba(238,125,0,.78) 48%, rgba(176,73,0,.86) 100%);
  filter:blur(22px);
  z-index:-1;
  opacity:1;
  transition:opacity .2s ease, transform .2s ease, filter .2s ease;
}
.contact-form .contact-submit:hover{
  color:#fff;
  background:linear-gradient(135deg,#ab4c00 0%, #e67a00 42%, #ffb13c 100%);
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(238,125,0,.18);
}
.contact-form .contact-submit:hover::before{
  opacity:1;
  transform:scale(1.06);
  filter:blur(24px);
}
.contact-form .contact-submit:focus,
.contact-form .contact-submit:focus-visible{
  outline:none;
  color:#fff;
  box-shadow:0 0 0 3px rgba(238,125,0,.18), 0 12px 24px rgba(238,125,0,.18);
}

.contact-form--modern .field{gap:0}
.contact-form--modern .field input,
.contact-form--modern .field textarea{
  border-color:rgba(238,125,0,.22);
  background:transparent;
  box-shadow:none;
  padding:18px 18px;
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.contact-form--modern .field input{height:56px}
.contact-form--modern .field textarea{min-height:220px;resize:none}
.contact-form--modern .field input::placeholder,
.contact-form--modern .field textarea::placeholder{color:#64748b}
.contact-form--modern .field input:focus,
.contact-form--modern .field textarea:focus,
.contact-form--modern .field input:focus-visible,
.contact-form--modern .field textarea:focus-visible{
  outline:none;
  border-color:var(--brand-500);
  box-shadow:0 0 0 3px rgba(238,125,0,.14);
  background:transparent;
}

@media (max-width: 780px){
  .contact-form .consent-row{gap:8px}
  .contact-form .field.consent label{font-size:12.5px;line-height:1.5;gap:8px}
  .contact-form .field.consent .contact-consent-link{font-size:12.5px;line-height:1.5}
  .contact-form .consent-row .contact-submit{align-self:stretch;padding:12px 16px;font-size:14px}
}
.notice{padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--border);background:rgba(238,125,0,.08)}
.notice.success{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.25)}
.notice.error{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.28)}
.notice-pop{animation:noticePop .45s ease-out both}
@keyframes noticePop{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.contact-flash-wrap{padding:14px 0 0}
.notice.error{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.25)}

.mt-12{margin-top:12px}
.mt-14{margin-top:14px}
.mt-16{margin-top:16px}
.stack-8{display:grid;gap:8px}
.list-clean{margin:0;padding-left:18px;display:grid;gap:8px}
.actions{margin-top:14px;display:flex;gap:12px;flex-wrap:wrap}

.wa-fab{
  position:fixed;
  left:18px;
  bottom:18px;
  width:56px;
  height:56px;
  border-radius:999px;
  overflow:hidden;
  background:transparent;
  border:0;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 18px 40px rgba(2,8,23,.22);
  z-index:80;
}
.wa-fab img{
  display:block;
  width:100%;
  height:100%;
}
.wa-fab:hover{transform:translateY(-1px)}
.wa-fab:active{transform:translateY(0)}

@media (max-width: 920px){
  .grid.cols-3{grid-template-columns:1fr}
  .grid.cols-2{grid-template-columns:1fr}
  .blog-hero,
  .blog-feature-card,
  .blog-article-hero,
  .blog-article-layout,
  .projects-feature-shell,
  .project-detail-hero,
  .project-detail-layout,
  .projects-copy-grid{grid-template-columns:1fr}
  .sitemap-grid{max-width:none}
  .sitemap-list--split{grid-template-columns:1fr}
  .sitemap-list--cities{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-topic-grid,
  .blog-grid,
  .projects-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-article-sticky{position:static}
  .footer{
    padding-bottom:24px;
  }
  .footer .container{
    padding-left:18px;
    padding-right:18px;
  }
  .footer-tagline{
    justify-items:center;
    text-align:center;
    font-size:clamp(20px,6vw,30px);
    padding-top:18px;
    padding-bottom:16px;
  }
  .footer-tagline-mark{
    width:144px;
    max-width:min(144px, 50vw);
    height:auto;
  }
  .footer .cols{
    grid-template-columns:1fr;
    gap:0;
    padding-top:10px;
  }
  .footer .cols > div{
    padding:20px 0;
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .footer .cols > div:last-child{
    border-bottom:0;
    padding-bottom:8px;
  }
  .footer-social-contact{grid-template-columns:1fr;gap:18px}
  .footer-social-col{
    margin-left:0;
    justify-self:stretch;
  }
  .footer-brand{
    animation:none;
  }
  .footer-brand img{
    height:38px;
  }
  .footer-text{
    max-width:none;
    font-size:14px;
    line-height:1.7;
  }
  .footer-list a{
    width:100%;
    padding:14px 0;
  }
  .footer-contact-mini{
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.12);
    padding-top:18px;
    margin-top:2px;
  }
  .copyright{
    margin-top:18px;
    padding-top:16px;
    text-align:left;
  }
  .footer-legal{
    justify-content:flex-start;
    gap:8px 12px;
  }
  .footer-legal .sep{
    display:none;
  }
  .switcher{grid-template-columns:1fr}
  .switcher-nav{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    align-items:stretch;
  }
  .switcher-factory-link{display:none}
  .switcher-factory-mobile-wrap{display:block;padding:0 18px}
  .switcher-factory-link--mobile{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:64px;padding:14px 0;width:100%;text-decoration:none;color:var(--text-700)}
  .switcher-factory-link--mobile .switcher-factory-label{opacity:1;transform:none}
  .switcher-panels{
    min-height:auto;
  }
  .switcher-tab{
    width:auto;
    min-height:68px;
    padding:12px 10px;
    border-radius:18px;
    justify-content:center;
    text-align:center;
    font-size:14px;
    line-height:1.2;
    white-space:normal;
    word-break:break-word;
    flex:initial;
  }
  .switcher-tab.is-active{
    justify-content:center;
    text-align:center;
  }
  .switcher-grid{grid-template-columns:1fr}
  .switcher-media{
    min-height:300px;
    justify-self:center;
    width:100%;
  }
  .switcher-copy{
    display:grid;
    gap:14px;
    justify-items:center;
    text-align:center;
  }
  .switcher-copy h2{
    margin:0;
    font-size:clamp(28px,6.2vw,38px);
    line-height:1.18;
  }
  .switcher-copy .muted{
    max-width:62ch;
    margin:0 auto;
  }
  .about-actions{
    justify-content:center;
  }
  .about-model,
  .about-glb,
  .about-skp{
    margin:0 auto;
  }
  .about-skp{
    text-align:center;
    justify-content:center;
  }
  .switcher-tracking{grid-template-columns:1fr;min-height:auto}
  .switcher-tracking{
    gap:20px;
    justify-items:center;
  }
  .switcher-tracking-copy{
    display:grid;
    gap:12px;
    justify-items:center;
    text-align:center;
  }
  .switcher-tracking-copy .kicker{
    margin:0 auto;
  }
  .tracking-switcher-form{
    width:min(100%, 560px);
    margin:0 auto;
  }
  .tracking-switcher-help,
  .tracking-feedback{
    text-align:center;
  }
  .switcher-faq{grid-template-columns:1fr}
  .switcher-faq-title{position:static}
  .switcher-faq{--faq-h:auto}
  .switcher-faq-title{
    height:auto;
    justify-self:center;
    width:min(100%, 620px);
    padding-right:0;
  }
  .switcher-faq-image{
    object-position:center;
  }
  .switcher-faq-list{
    max-height:none;
    overflow:visible;
    padding-right:0;
    width:min(100%, 760px);
    margin:0 auto;
  }
  .search-result-card{grid-template-columns:1fr}
  .search-result-media{min-height:220px}
  .about-model img{max-height:320px;object-fit:contain}
  .nav{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 48px;
    min-height:var(--header-h);
    padding:12px 0;
    gap:12px;
    align-items:center;
  }
  .brand{
    grid-column:2;
    grid-row:1;
    justify-self:center;
  }
  .nav-language-switcher{
    grid-column:1;
    grid-row:1;
    justify-self:start;
    margin-left:0;
    z-index:3;
  }
  .nav-language-chip{
    min-height:48px;
    padding:0 10px;
    border-radius:16px;
  }
  .nav-language-dropdown{
    top:calc(100% + 6px);
    left:0;
    min-width:128px;
    padding:4px 0;
    border-radius:14px;
  }
  .brand-logo{
    width:clamp(118px,34vw,148px);
    height:34px;
  }
  .menu{display:none}
  .menu-toggle{
    grid-column:3;
    grid-row:1;
    justify-self:end;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:48px;
    height:48px;
    border-radius:16px;
  }
  .header[data-open="1"]{
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:120;
    border-bottom-color:transparent;
  }
  .header[data-open="1"] .menu-toggle{
    position:relative;
    z-index:2;
  }
  body[data-transparent-header="1"] .header.is-transparent .menu-toggle{
    background:rgba(255,255,255,.92);
    color:var(--text-900);
    border-color:rgba(226,232,240,.96);
    box-shadow:0 14px 32px rgba(2,8,23,.12);
  }
  body[data-transparent-header="1"] .header[data-open="1"],
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent{
    background:rgba(255,255,255,.82);
    backdrop-filter:saturate(160%) blur(18px);
  }
  .header[data-open="1"] .menu{
    display:flex;
    position:fixed;
    left:14px;
    right:14px;
    top:calc(var(--header-h) + 10px);
    max-height:calc(100svh - var(--header-h) - 24px);
    overflow:auto;
    overscroll-behavior:contain;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(226,232,240,.96);
    border-radius:24px;
    box-shadow:0 28px 64px rgba(2,8,23,.16);
    padding:16px;
    gap:10px;
    flex-direction:column;
    align-items:stretch;
    backdrop-filter:saturate(155%) blur(18px);
    z-index:1;
  }
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu{
    background:rgba(255,255,255,.98);
    border:1px solid rgba(226,232,240,.96);
  }
  .header[data-open="1"] .nav-item{
    width:100%;
  }
  .header[data-open="1"] .nav-item--has-mega{
    flex-direction:row;
    align-items:stretch;
    gap:0;
    padding-bottom:0;
    margin-bottom:0;
  }
  .nav-item--has-mega::after{
    display:none;
  }
  .header[data-open="1"] .menu-link{
    width:100%;
    min-height:54px;
    justify-content:flex-start;
    padding:14px 16px;
    border-radius:16px;
    border:1px solid rgba(226,232,240,.96);
    background:#fff;
    color:var(--text-900);
    box-shadow:0 10px 24px rgba(2,8,23,.04);
  }
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu-link{
    background:#fff;
    color:var(--text-900);
    border:1px solid rgba(226,232,240,.96);
  }
  .header[data-open="1"] .menu-link .nav-icon{
    flex:0 0 auto;
  }
  .header[data-open="1"] .menu-link:hover,
  .header[data-open="1"] .menu-link[aria-current="page"]{
    background:rgba(238,125,0,.08);
    border-color:rgba(238,125,0,.24);
    color:var(--brand-600);
  }
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu-link:hover,
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu-link[aria-current="page"]{
    background:rgba(238,125,0,.08);
    border-color:rgba(238,125,0,.24);
    color:var(--brand-600);
  }
  .header[data-open="1"] .menu-link:hover .nav-icon,
  .header[data-open="1"] .menu-link[aria-current="page"] .nav-icon{
    color:var(--brand-600);
  }
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu-link:hover .nav-icon,
  body[data-transparent-header="1"] .header[data-open="1"].is-transparent .menu-link[aria-current="page"] .nav-icon{
    color:var(--brand-600);
  }
  .header[data-open="1"] .menu-link-caret{
    display:none;
  }
  .mega-menu{
    display:none;
  }
  .shorts-row{flex-direction:column;align-items:flex-start;gap:12px}
  .shorts-wrap{width:100%}
  .shorts-rail{
    grid-auto-columns:minmax(190px,72vw);
    padding:6px 12px 10px 2px;
    cursor:auto;
    user-select:auto;
    touch-action:pan-y pinch-zoom;
    scroll-padding-left:2px;
    scroll-padding-right:12px;
  }
  .shorts-next{display:none}
  .home-showcase-track{
    margin-top:32px;
    grid-template-columns:1fr;
    gap:18px;
    align-items:start;
  }
  .home-showcase-grid{-webkit-mask-image:none;mask-image:none}
  .home-showcase-grid{
    grid-column:auto;
    grid-row:auto;
    grid-auto-columns:minmax(280px, 82vw);
    gap:14px;
    cursor:auto;
    user-select:auto;
    touch-action:pan-x pan-y pinch-zoom;
    scroll-padding-left:0;
    scroll-padding-right:0;
  }
  .home-showcase-story{
    margin-left:-16px;
    margin-right:-16px;
    padding:24px 22px 22px;
    border-radius:0;
  }
  .home-showcase-story-top{
    grid-template-columns:1fr;
    gap:18px;
  }
  .home-showcase-story-heading h2{
    max-width:none;
    font-size:clamp(32px,8vw,48px);
  }
  .home-showcase-story-grid{
    grid-template-columns:1fr;
    gap:14px;
    margin-top:20px;
  }
  .home-interview-shell{
    grid-template-columns:1fr;
  }
  .home-interview-copy{
    gap:14px;
    padding:0;
  }
  .home-interview-kicker{
    font-size:clamp(20px, 6vw, 30px);
  }
  .home-interview-copy h2{
    max-width:none;
    font-size:clamp(20px, 4.4vw, 28px);
  }
  .home-interview-video-stage{
    min-height:500px;
    margin-top:8px;
    --interview-card-width:min(100%, 88%);
    --interview-front-top:72px;
    --interview-back-left:64px;
    --interview-back-top:0px;
  }
  .home-interview-video{
    min-height:0;
    border-radius:24px;
  }
  .home-interview-video.is-primary{
    aspect-ratio:16 / 10;
    transform:perspective(1600px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video.is-secondary{
    aspect-ratio:16 / 10;
    transform:perspective(1600px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video::after{
    content:none;
  }
  .home-showcase-head{
    grid-column:auto;
    grid-row:auto;
    align-self:start;
    justify-items:center;
    text-align:center;
  }
  .home-showcase-head-line{
    width:min(100%, 220px);
  }
  .home-showcase-story-panel{
    min-height:0;
    padding:18px;
    border-radius:20px;
  }
  .home-showcase-story-note{
    margin-top:18px;
    padding-top:16px;
  }
  .home-showcase-card{
    min-height:420px;
    border-radius:26px;
  }
  .home-showcase-card--left,
  .home-showcase-card--right{margin-top:0}
  .contact-hero{padding:54px 0 18px}
  .contact-top{grid-template-columns:1fr}
  .contact-cards{grid-template-columns:1fr}
  .contact-cards .citem{padding-right:12px;overflow:visible}
  .contact-cards .citem::after{
    content:"\2190";
    position:absolute;
    top:50%;
    right:-18px;
    min-width:28px;
    height:28px;
    padding:0 6px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:rgba(238,125,0,.10);
    border:1px solid rgba(238,125,0,.24);
    color:var(--brand-500);
    font-size:16px;
    font-weight:900;
    line-height:1;
    letter-spacing:.08em;
    pointer-events:none;
    opacity:0;
    transform:translateY(-50%) translateX(-8px) scale(.92);
    box-shadow:0 8px 20px rgba(238,125,0,.14);
    animation:contact-card-mobile-cue 8s ease-in-out infinite;
  }
  .contact-cards .citem:nth-child(2)::after{animation-delay:2s}
  .contact-cards .citem:nth-child(3)::after{animation-delay:4s}
  .contact-cards .citem:nth-child(4)::after{animation-delay:6s}
  .contact-map iframe{height:440px}
  .tracking-page .container{padding-left:20px;padding-right:20px}
  .tracking-hero{grid-template-columns:1fr}
  .tracking-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tracking-main-grid{grid-template-columns:1fr}
  .tracking-meta-grid{grid-template-columns:1fr}
  .tracking-shipment-grid{grid-template-columns:1fr}
  .tracking-stage-grid{grid-template-columns:1fr}
  .tracking-shipment-card{display:grid;gap:12px;flex-wrap:unset}
  .tracking-shipment-top{flex-direction:row;align-items:flex-start;justify-content:space-between;flex:unset;min-width:unset;flex-wrap:wrap}
  .tracking-shipment-card dl{grid-template-columns:1fr;flex:unset;min-width:unset}
  .tracking-shipment-card > .muted{flex-basis:unset}
  .tracking-step > summary{grid-template-columns:1fr}
  .tracking-step-summary-side{justify-items:start}
  .contact-form .form-row.cols-4{grid-template-columns:1fr}
  .contact-form .form-row.cols-3{grid-template-columns:1fr}
  .product-detail-body{grid-template-columns:1fr}
  .projects-feature-shell{
    min-height:auto;
  }
  .projects-feature-shell::after{
    background:
      linear-gradient(180deg,#ffffff 0%,#ffffff 42%,rgba(255,255,255,.96) 54%,rgba(255,255,255,.82) 64%,rgba(255,255,255,.48) 74%,rgba(255,255,255,.16) 84%,rgba(255,255,255,0) 92%),
      radial-gradient(120% 72% at 50% 42%,rgba(255,255,255,.34) 0%,rgba(255,255,255,.14) 48%,rgba(255,255,255,0) 76%);
  }
  .projects-feature-copy{
    min-height:auto;
    padding:24px 22px 12px;
  }
  .projects-feature-copy h1{
    max-width:none;
  }
  .projects-feature-media{min-height:420px}
  .projects-grid-section .container{padding-left:20px;padding-right:20px}
  .projects-section-head{padding-left:0;padding-right:0}
  .project-detail-page .container{padding-left:20px;padding-right:20px}
  .project-detail-hero{
    display:flex;
    flex-direction:column;
    gap:8px;
    align-items:stretch;
  }
  .project-detail-copy{
    align-content:start;
    justify-items:center;
    min-height:auto;
    padding:20px;
  }
  .project-detail-copy h1{
    max-width:none;
    text-align:center;
  }
  .project-detail-copy h1::after{
    width:min(280px,72%);
    margin:12px auto 0;
  }
  .project-detail-visual{
    grid-template-columns:1fr;
    height:auto;
  }
  .project-detail-cover,
  .project-detail-side-grid{
    height:auto;
  }
  .project-detail-cover img{height:280px;min-height:0}
  .project-detail-side-grid{
    grid-template-columns:repeat(var(--project-side-columns, 3),minmax(0,1fr));
    grid-template-rows:none;
    min-height:0;
    gap:8px;
  }
  .project-detail-side-card img{height:92px;min-height:0}
  .project-detail-cta-row{
    justify-content:center;
  }
  .project-detail-layout{
    margin-top:8px;
  }
  .product-detail-overview-grid,
  .product-detail-overview-grid.is-no-plans{grid-template-columns:1fr}
  .product-detail-overview-bar{
    position:static;
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    gap:10px;
    min-height:0;
  }
  .product-detail-live-badge{
    position:static;
    left:auto;
    top:auto;
    transform:none;
    justify-self:center;
  }
  .product-detail-overview-actions{
    width:100%;
    position:static;
    right:auto;
    top:auto;
    transform:none;
    justify-self:center;
    justify-content:center;
  }
  .product-detail-campaign-trigger{
    width:min(100%, 360px);
    justify-content:center;
    text-align:center;
  }
  .product-detail-overview-title{
    padding-inline:0;
  }
  .product-plan-head{
    flex-direction:column-reverse;
    align-items:stretch;
  }
  .product-plan-head h2{text-align:left}
  .product-plan-hit{
    overflow:hidden;
    border-radius:20px;
    border:1px solid var(--border);
    background:#fff;
    display:block;
  }
  .product-plan-panel img{
    max-height:none;
    border:0;
    border-radius:0;
    transform:none;
  }
  .product-plan-hit--square{
    aspect-ratio:1 / .88;
  }
  .product-plan-hit--sheet{
    aspect-ratio:1 / .72;
  }
  .product-plan-image--square,
  .product-plan-image--sheet{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .product-plan-image--square{
    object-position:center 56%;
  }
  .product-plan-image--sheet{
    object-position:center 70%;
  }
  .product-tech-grid{grid-template-columns:1fr}
  .product-tech-item{padding:68px 22px 24px}
  .product-detail-meta-item{
    grid-template-columns:24px minmax(84px,auto) 1fr;
  }
  .product-detail-meta-price-old{
    font-size:13px;
  }
  .product-detail-meta-price-new{
    font-size:17px;
  }
  .product-detail-doc-link{
    width:100%;
    justify-content:center;
    align-self:center;
    margin-top:8px;
    gap:8px;
    font-size:20px;
    line-height:1.15;
    text-align:center;
  }
  .product-detail-doc-icon{
    flex:0 0 auto;
  }
  .product-detail-doc-icon svg{
    width:18px;
    height:18px;
  }
  .product-detail-architect-cta{
    margin-top:8px;
    gap:8px;
  }
  .product-detail-architect-label{
    width:100%;
    text-align:center;
    font-size:17px;
  }
  .product-detail-architect-button{
    min-width:138px;
  }
  .product-campaign-modal__dialog{
    width:min(calc(100% - 28px), 520px);
    margin:84px auto 0;
    padding:20px;
    border-radius:22px;
  }
  .product-campaign-modal__media img{
    height:auto;
  }
}
@media (max-width: 640px){
  .product-detail-campaign-trigger{
    min-height:42px;
    padding:11px 15px;
    font-size:13px;
  }
  .product-campaign-modal__dialog{
    margin:72px auto 0;
    padding:18px;
  }
  .product-campaign-modal__pricing{
    gap:10px;
  }
  .product-campaign-modal__old-price{
    font-size:18px;
  }
  .product-campaign-modal__dialog h2{
    font-size:24px;
  }
  .product-campaign-modal__amount{
    font-size:19px;
  }
  .blog-hero,
  .blog-feature-copy,
  .blog-article-copy,
  .blog-article-section,
  .blog-article-cta,
  .sitemap-card,
  .project-detail-copy,
  .project-detail-section,
  .project-detail-aside-card,
  .projects-copy-card{padding:18px}
  .blog-internal-links,
  .blog-topic-grid,
  .blog-grid,
  .projects-card-grid,
  .projects-copy-grid,
  .project-detail-caption-list{grid-template-columns:1fr}
  .sitemap-list--split,
  .sitemap-list--cities{grid-template-columns:1fr}
  .sitemap-accordion > summary,
  .sitemap-accordion-body{padding-left:18px;padding-right:18px}
  .sitemap-accordion > summary{padding-top:18px;padding-bottom:18px}
  .sitemap-accordion-title{font-size:19px}
  .sitemap-accordion-count{min-width:92px}
  .blog-feature-card{margin-top:22px}
  .blog-card h3{font-size:22px}
  .blog-article-copy h1{font-size:34px}
  .blog-article-section h2{font-size:24px}
  .blog-article-table th,
  .blog-article-table td{
    padding:14px 12px;
    font-size:14px;
  }
  .blog-article-cta h2{font-size:28px}
  .blog-article-cta-actions{flex-direction:column}
  .blog-article-cta-actions .btn{width:100%;justify-content:center}
  .search-page-form{grid-template-columns:1fr}
  .projects-page .container{padding-left:16px;padding-right:16px}
  .projects-grid-section .container{padding-left:16px;padding-right:16px}
  .projects-feature-shell::before{height:4px}
  .projects-feature-copy{padding:20px 18px 12px}
  .projects-feature-media{min-height:280px}
  .projects-feature-slide figcaption{
    right:16px;
    bottom:18px;
    max-width:calc(100% - 32px);
  }
  .projects-feature-dot{width:22px}
  .project-detail-page .container{padding-left:16px;padding-right:16px}
  .project-detail-copy{
    gap:16px;
    padding:18px 18px 22px;
  }
  .project-detail-meta-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
    width:100%;
    max-width:100%;
    justify-content:center;
  }
  .project-detail-meta-card{
    min-height:64px;
    padding:8px 7px;
    border-radius:13px;
  }
  .project-detail-meta-card span{
    font-size:8px;
    letter-spacing:.02em;
  }
  .project-detail-meta-card strong{
    font-size:10px;
    line-height:1.12;
    overflow-wrap:anywhere;
  }
  .project-detail-copy h1{
    font-size:clamp(24px,7.2vw,32px);
  }
  .project-detail-topline span{
    padding:5px 8px;
    font-size:10px;
  }
  .project-detail-lead{
    font-size:14px;
  }
  .project-detail-meta-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;
    max-width:100%;
    justify-content:center;
    gap:6px;
  }
  .project-detail-meta-card{
    min-height:62px;
    padding:8px 6px;
  }
  .project-detail-meta-card span{
    font-size:8px;
    letter-spacing:.02em;
  }
  .project-detail-meta-card strong{
    font-size:10px;
    line-height:1.1;
    overflow-wrap:anywhere;
  }
  .project-detail-cta-card{
    min-width:118px;
    min-height:50px;
    padding:0 16px;
    font-size:13px;
  }
  .project-detail-visual{
    gap:6px;
    height:auto;
  }
  .project-detail-cover{
    aspect-ratio:16/10;
    border-radius:22px;
  }
  .project-detail-cover img{
    width:100%;
    height:100%;
    min-height:0;
  }
  .project-detail-side-grid{
    grid-template-columns:repeat(var(--project-side-columns, 3),minmax(0,1fr));
    grid-template-rows:none;
    grid-auto-rows:1fr;
    height:auto;
    gap:8px;
    min-height:0;
  }
  .project-detail-side-card{
    aspect-ratio:1/1;
    border-radius:18px;
  }
  .project-detail-side-card img{
    width:100%;
    height:100%;
    min-height:0;
  }
  .project-detail-layout{
    margin-top:6px;
  }
  .products-hero{min-height:344px}
  .products-hero .inner{padding:118px 0 40px}
  .products-hero .eyebrow{
    font-size:14px;
    margin-bottom:8px;
  }
  .products-hero h1{font-size:clamp(32px,11vw,40px)}
  .products-hero p{
    margin-top:10px;
    max-width:30ch;
    font-size:14px;
  }
  .products-catalog .container{
    padding-left:14px;
    padding-right:14px;
  }
  .products-filter-card{
    padding:10px;
    border-radius:20px;
  }
  .products-filter-toggle{
    min-height:52px;
    padding:0 16px;
    border-radius:16px;
    margin-bottom:10px;
    font-size:15px;
  }
  .products-filter-shell-summary{
    padding:2px 2px 10px;
  }
  .products-filter-shell-title{
    gap:8px;
    font-size:15px;
  }
  .products-filter-group-summary{
    padding:12px;
    font-size:14px;
  }
  .products-filter-group-summary::after{
    width:7px;
    height:7px;
  }
  .products-filter-link{
    font-size:14px;
  }
  .products-filter-link--child{
    padding:12px 12px 12px 34px;
    font-size:13px;
  }
  .products-grid{grid-template-columns:1fr}
  .product-card{
    border-radius:20px;
  }
  .product-card-media{aspect-ratio:16/10}
  .product-card-body{
    padding:13px;
  }
  .product-card-type{font-size:11px}
  .product-card h3{font-size:18px}
  .product-card-summary{
    font-size:13px;
    line-height:1.6;
  }
  .product-card-specs{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    align-items:start;
  }
  .product-card-spec{
    gap:6px;
    font-size:11px;
  }
  .product-card-spec svg{
    width:14px;
    height:14px;
  }
  .product-card-spec > span{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .product-card-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }
  .product-card-price{font-size:21px}
  .product-card-campaign-link{
    min-height:44px;
    padding:0 14px;
    font-size:12px;
    gap:8px;
  }
  .product-card-link{
    flex:0 0 auto;
    width:auto;
    min-height:46px;
    padding:0 18px;
  }
  .product-detail-page .container{padding-left:14px;padding-right:14px}
  .product-detail-mosaic,
  .product-detail-mosaic.is-single{
    grid-template-columns:1fr;
    gap:8px;
    height:auto;
  }
  .product-detail-cover{
    aspect-ratio:6/5;
    border-radius:20px;
  }
  .product-detail-side-grid,
  .product-detail-side-grid--2,
  .product-detail-side-grid--3{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
    gap:8px;
    height:auto;
  }
  .product-detail-side-grid--1{
    grid-template-columns:1fr;
    grid-template-rows:none;
    height:auto;
  }
  .product-detail-side-grid--3 .product-detail-side-card:first-child{
    grid-column:1 / -1;
    aspect-ratio:6/5;
  }
  .product-detail-side-card{
    aspect-ratio:1/1;
    border-radius:18px;
  }
  .project-detail-side-grid{
    grid-template-columns:repeat(var(--project-side-columns, 3),minmax(0,1fr));
    grid-template-rows:none;
    height:auto;
  }
  .product-detail-thumbs{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .product-detail-thumbs img{height:104px}
  .product-detail-overview{
    margin-top:14px;
  }
  .product-detail-overview-bar{
    gap:8px;
    margin-bottom:14px;
  }
  .product-detail-overview-title{
    max-width:100%;
    font-size:clamp(16px, 5.3vw, 21px);
    line-height:1.08;
    letter-spacing:-.03em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .product-detail-info-card{
    padding:14px 12px;
    border-radius:22px;
  }
  .product-detail-meta-list{
    gap:10px;
  }
  .product-detail-meta-item{
    grid-template-columns:20px minmax(68px,auto) 1fr;
    gap:8px;
    padding:12px 12px;
    border-radius:16px;
  }
  .product-detail-meta-icon svg,
  .product-detail-meta-icon .product-detail-currency-icon{
    width:18px;
    height:18px;
  }
  .product-detail-currency-icon{
    font-size:20px;
  }
  .product-detail-meta-label{
    font-size:14px;
    white-space:nowrap;
  }
  .product-detail-meta-item strong{
    font-size:15px;
    line-height:1.18;
    letter-spacing:-.02em;
    white-space:nowrap;
  }
  .product-detail-meta-price{
    gap:2px;
  }
  .product-detail-meta-price-old{
    font-size:11px;
  }
  .product-detail-meta-price-new{
    font-size:15px;
    line-height:1.16;
    white-space:nowrap;
  }
  .product-plan-tabs{flex-direction:column}
  .product-plan-hit--square{
    aspect-ratio:1 / .82;
  }
  .product-plan-hit--sheet{
    aspect-ratio:1 / .64;
  }
  .product-plan-image--square{
    object-position:center 58%;
  }
  .product-plan-image--sheet{
    object-position:center 72%;
  }
  .tracking-switcher-input,
  .tracking-lookup-input{grid-template-columns:1fr 48px}
  .tracking-page{padding-top:20px}
  .tracking-page .container{padding-left:16px;padding-right:16px}
  .home-showcase-section .container{padding-left:16px;padding-right:16px}
  .home-showcase-story{
    margin-left:-14px;
    margin-right:-14px;
    padding:20px 18px 18px;
    border-radius:0;
    margin-bottom:20px;
  }
  .home-interview-section .container{
    padding-left:14px;
    padding-right:14px;
  }
  .home-interview-copy{
    gap:12px;
    padding:0;
  }
  .home-interview-kicker{
    font-size:clamp(26px, 9vw, 36px);
  }
  .home-interview-copy h2{
    font-size:clamp(18px,5.4vw,22px);
  }
  .home-interview-video-stage{
    min-height:clamp(260px, 76vw, 370px);
    display:block;
    gap:0;
    margin-top:10px;
    --interview-card-width:88%;
    --interview-front-left:0%;
    --interview-front-top:44px;
    --interview-back-left:12%;
    --interview-back-top:0%;
  }
  .home-interview-video{
    position:absolute;
    left:0;
    top:0;
    min-height:0;
    aspect-ratio:16 / 9;
    border-radius:18px;
    transform-origin:right center;
  }
  .home-interview-video.is-primary{
    aspect-ratio:16 / 9;
    transform:perspective(1200px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video.is-secondary{
    aspect-ratio:16 / 9;
    transform:perspective(1200px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video-stage.is-swapped .home-interview-video.is-primary{
    left:var(--interview-back-left);
    top:var(--interview-back-top);
    transform:perspective(1200px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video-stage.is-swapped .home-interview-video.is-secondary{
    left:var(--interview-front-left);
    top:var(--interview-front-top);
    transform:perspective(1200px) rotateY(-8deg) rotateZ(-.8deg);
  }
  .home-interview-video-play{
    width:64px;
    height:64px;
  }
  .home-showcase-story-heading h2{
    font-size:clamp(24px,8.6vw,32px);
    line-height:1.02;
    gap:.12em;
  }
  .home-showcase-story-title-line{
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .home-showcase-story-lead,
  .home-showcase-story-panel p,
  .home-showcase-story-note p{
    font-size:13px;
    line-height:1.72;
  }
  .home-showcase-story-link{
    width:100%;
    min-height:56px;
    padding:0 18px;
    font-size:16px;
    text-align:center;
    justify-content:center;
  }
  .home-showcase-head h2{
    font-size:clamp(28px, 9vw, 40px);
  }
  .home-showcase-head-script{
    font-size:clamp(26px, 9vw, 38px);
  }
  .home-showcase-grid{
    grid-auto-columns:minmax(308px, 92vw);
    gap:12px;
  }
  .home-showcase-card{min-height:388px;border-radius:22px}
  .home-showcase-card--center{min-height:388px}
  .home-showcase-copy{padding:16px;gap:10px}
  .home-showcase-pill{
    padding:5px 9px;
    font-size:9px;
    letter-spacing:.06em;
  }
  .home-showcase-copy strong{
    font-size:clamp(22px, 7vw, 28px);
    line-height:1.1;
  }
  .home-showcase-summary{
    font-size:12px;
    line-height:1.52;
    -webkit-line-clamp:3;
  }
  .tracking-hero{padding:18px}
  .tracking-overview{padding:18px}
  .tracking-overview-head{gap:12px}
  .tracking-overview-stats{grid-template-columns:1fr}
  .tracking-compact-card{padding:16px}
  .tracking-accordion > summary{padding:14px}
  .tracking-accordion-body{padding:0 14px 14px}
  .tracking-map-frame iframe{height:220px}
  .tracking-step > summary{padding:12px 14px}
  .tracking-step-body{padding:0 14px 14px}
  .projects-feature-stats{grid-template-columns:1fr}
  .project-detail-thumbs{grid-template-columns:1fr 1fr}
  .gallery-lightbox{padding:8px}
  .gallery-lightbox__dialog{
    width:100%;
    height:calc(100svh - var(--lightbox-safe-top) - var(--lightbox-safe-bottom) - 8px);
    grid-template-columns:minmax(0,1fr);
    gap:0;
  }
  .gallery-lightbox__topbar{
    top:calc(var(--lightbox-safe-top) + 2px);
    width:calc(100% - 8px);
    transform:translateX(-50%);
  }
  .gallery-lightbox__toolbar{
    gap:8px;
    padding:8px 10px;
  }
  .gallery-lightbox__toolbar-actions{
    gap:4px;
  }
  .gallery-lightbox__counter{
    min-height:34px;
    padding:0 11px;
    font-size:12px;
  }
  .gallery-lightbox__tool{
    min-width:34px;
    height:34px;
    font-size:14px;
    padding:0 10px;
  }
  .gallery-lightbox__tool--reset{min-width:48px;font-size:11px}
  .gallery-lightbox__close{
    min-width:36px;
    height:36px;
    font-size:20px;
  }
  .gallery-lightbox__nav{
    position:absolute;
    top:50%;
    z-index:4;
    width:40px;
    height:40px;
    font-size:24px;
    margin-bottom:0;
    transform:translateY(-50%);
  }
  .gallery-lightbox__nav--prev{
    left:8px;
  }
  .gallery-lightbox__nav--next{
    right:8px;
  }
  .gallery-lightbox__stage{
    width:100%;
    height:100%;
    box-sizing:border-box;
    padding:56px 8px 12px;
    border-radius:24px;
  }
  .gallery-lightbox__image{
    max-width:100%;
    max-height:100%;
    border-radius:18px;
  }
  .gallery-lightbox__hint{
    display:none !important;
  }
}

.about-page{
  position:relative;
  padding:clamp(26px,4vw,54px) 0 84px;
  background:
    radial-gradient(860px 360px at 0 0, rgba(238,125,0,.08), transparent 55%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  overflow:clip;
}
.about-page .container{
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}
.about-page-shell{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:28px;
  align-items:start;
}
.about-page-rail{
  position:sticky;
  top:calc(var(--header-h) + clamp(48px, 10vh, 96px));
  z-index:6;
}
.about-orbit{
  position:relative;
  top:auto;
  margin-top:20px;
}
.about-orbit-trigger{
  position:relative;
  width:86px;
  min-height:320px;
  padding:28px 0 20px;
  border:0;
  border-radius:999px;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
  display:grid;
  align-content:start;
  justify-items:center;
  gap:0;
  cursor:pointer;
  transition:opacity .22s ease;
}
.about-orbit-trigger:hover{
  opacity:.88;
}
.about-orbit[data-open="1"] .about-orbit-trigger{
  background:transparent;
  box-shadow:none;
}
.about-orbit-outline{
  display:none;
}
.about-orbit-dots{
  position:relative;
  z-index:1;
  display:grid;
  gap:16px;
  padding-top:0;
}
.about-orbit-dot{
  width:12px;
  height:12px;
  border-radius:999px;
  background:rgba(238,125,0,.28);
  box-shadow:0 0 0 1px rgba(238,125,0,.18);
  transform:scale(.62);
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.about-orbit-dot.is-active{
  background:var(--brand-500);
  transform:scale(1);
  box-shadow:0 0 0 6px rgba(238,125,0,.14);
}
.about-orbit-scroll{
  position:relative;
  z-index:1;
  display:grid;
  gap:6px;
  justify-items:center;
  margin-top:34px;
  padding-bottom:0;
}
.about-orbit-arrow{
  width:14px;
  height:14px;
  border-right:2px solid rgba(105,70,19,.75);
  border-bottom:2px solid rgba(105,70,19,.75);
  transform:rotate(45deg);
  animation:aboutOrbitBounce 1.6s ease-in-out infinite;
}
.about-orbit-hint{
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#8c7a62;
}
@keyframes aboutOrbitBounce{
  0%,100%{transform:translateY(0) rotate(45deg)}
  50%{transform:translateY(6px) rotate(45deg)}
}
.about-orbit-menu{
  position:absolute;
  left:calc(100% + 18px);
  top:50%;
  min-width:270px;
  padding:18px;
  border-radius:26px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 28px 60px rgba(2,8,23,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(-10px,-50%,0);
  transition:
    opacity .24s ease,
    transform .24s ease,
    visibility .24s ease,
    max-height .24s ease,
    padding .24s ease;
}
.about-orbit[data-open="1"] .about-orbit-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate3d(0,-50%,0);
}
.about-orbit-link{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 10px;
  border-radius:14px;
  color:#7d7d7d;
  font-size:17px;
  font-weight:700;
  transition:background .18s ease, color .18s ease, box-shadow .18s ease;
}
.about-orbit-link:hover{
  background:rgba(238,125,0,.07);
  color:var(--text-900);
}
.about-orbit-link.is-active{
  background:#fff;
  color:var(--text-900);
  box-shadow:0 12px 24px rgba(2,8,23,.06);
}
.about-orbit-link-bullet{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#b3b3b3;
  flex:0 0 auto;
  transition:background .18s ease, box-shadow .18s ease;
}
.about-orbit-link.is-active .about-orbit-link-bullet{
  background:var(--brand-500);
  box-shadow:0 0 0 5px rgba(238,125,0,.12);
}
.about-page-main{
  min-width:0;
  display:grid;
  gap:22px;
}
.about-panel{
  position:relative;
  padding:clamp(24px,4vw,42px);
  border-radius:34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.95)),
    radial-gradient(720px 240px at 100% 0%, rgba(238,125,0,.08), transparent 60%);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 24px 52px rgba(2,8,23,.06);
  overflow:hidden;
  scroll-margin-top:calc(var(--header-h) + clamp(84px, 14vh, 148px));
}
.about-panel::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:140px;
  height:140px;
  background:radial-gradient(circle, rgba(238,125,0,.16), transparent 72%);
  pointer-events:none;
}
.about-panel--hero{
  padding:clamp(34px,5vw,56px);
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}
.about-panel--hero::before{
  display:none;
}
.about-hero-simple{
  min-height:clamp(460px,72vh,720px);
  position:relative;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:clamp(28px,5vh,52px);
}
.about-hero-badge{
  position:absolute;
  top:clamp(6px,2vw,22px);
  right:clamp(0px,2vw,24px);
  width:clamp(120px,12vw,186px);
  height:auto;
  pointer-events:none;
}
.about-hero-simple h1{
  margin:0;
  max-width:none;
  font-family:var(--font-heading);
  font-size:clamp(40px,5.4vw,76px);
  line-height:.98;
  letter-spacing:-.03em;
  text-align:center;
  text-wrap:balance;
}
.about-hero-simple h1 span{
  display:block;
  white-space:nowrap;
}
.about-hero-simple h1 .about-hero-accent{
  color:#ee7d00;
}
.about-hero-simple h1 .about-hero-accent--left{
  display:inline-block;
  transform:translateX(-58px);
}
.about-hero-simple h1 .about-hero-accent--offset{
  display:inline-block;
  transform:translateX(42px);
}
.about-hero-divider{
  width:min(100%, 1180px);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(28px,4vw,52px);
  align-items:center;
}
.about-hero-divider span{
  display:block;
  height:1px;
}
.about-hero-divider span:first-child{
  background:linear-gradient(90deg, rgba(15,23,42,0), rgba(15,23,42,.18));
}
.about-hero-divider span:last-child{
  background:linear-gradient(90deg, rgba(15,23,42,.18), rgba(15,23,42,0));
}
.about-panel--design{
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:hidden;
}
.about-panel--design::before{
  display:none;
}
.about-design-stage{
  position:relative;
  min-height:clamp(420px,62vh,620px);
  display:grid;
  grid-template-rows:auto 1fr;
  align-items:start;
  gap:clamp(44px,8vh,96px);
}
.about-design-mark{
  position:absolute;
  left:0;
  top:50%;
  width:clamp(140px,18vw,240px);
  height:auto;
  pointer-events:none;
  user-select:none;
  transform:translate3d(0,-50%,0);
}
.about-design-title-wrap{
  justify-self:end;
  width:min(100%, 760px);
  text-align:right;
}
.about-design-title{
  margin:0;
  display:grid;
  gap:6px;
}
.about-design-title-line{
  display:block;
  font-family:var(--font-heading);
  font-size:clamp(54px,7vw,108px);
  line-height:.9;
  letter-spacing:-.04em;
  color:var(--ink-900);
}
.about-design-title-line--accent{
  color:#ee7d00;
}
.about-design-copy{
  margin:0;
  align-self:center;
  justify-self:center;
  max-width:38ch;
  text-align:center;
  font-size:clamp(18px,2vw,24px);
  line-height:1.75;
  color:var(--text-700);
}
html.js-ready .about-panel--design.reveal-block .about-design-title-line{
  opacity:0;
  transform:translate3d(96px,0,0);
  transition:
    opacity .86s cubic-bezier(.22,1,.36,1),
    transform .86s cubic-bezier(.22,1,.36,1);
}
html.js-ready .about-panel--design.reveal-block .about-design-title-line--accent{
  transition-delay:120ms;
}
html.js-ready .about-panel--design.reveal-block .about-design-copy{
  opacity:0;
  transform:translate3d(0,28px,0);
  transition:
    opacity .72s cubic-bezier(.22,1,.36,1) 220ms,
    transform .72s cubic-bezier(.22,1,.36,1) 220ms;
}
html.js-ready .about-panel--design.reveal-block .about-design-mark{
  opacity:.14;
  filter:blur(14px);
  transform:translate3d(-88px,-50%,0);
  transition:
    opacity .9s cubic-bezier(.22,1,.36,1),
    transform .9s cubic-bezier(.22,1,.36,1),
    filter .9s cubic-bezier(.22,1,.36,1);
}
html.js-ready .about-panel--design.reveal-in .about-design-title-line,
html.js-ready .about-panel--design.reveal-in .about-design-copy{
  opacity:1;
  transform:none;
  filter:none;
}
html.js-ready .about-panel--design.reveal-in .about-design-mark{
  opacity:1;
  transform:translate3d(0,-50%,0);
  filter:none;
}
.about-panel--regions{
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:hidden;
}
.about-panel--regions::before{
  display:none;
}
.about-regions-stage{
  min-height:clamp(520px,68vh,860px);
  display:grid;
  gap:clamp(0px,.8vh,12px);
  align-content:start;
}
.about-page .about-panel--regions .about-regions-title{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(36px,5.4vw,82px);
  font-weight:800;
  line-height:.82;
  letter-spacing:-.06em;
  text-align:center;
  color:var(--ink-900);
}
.about-regions-map{
  position:relative;
  width:min(100%, 1120px);
  aspect-ratio:1000 / 422;
  margin:-24px auto 0;
  isolation:isolate;
}
.about-regions-map::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 16% 40%, rgba(238,125,0,.025), transparent 18%),
    radial-gradient(circle at 74% 44%, rgba(15,23,42,.018), transparent 22%),
    linear-gradient(90deg, rgba(15,23,42,.008), rgba(15,23,42,.014));
  -webkit-mask-image:url("/assets/img/turkey-map.svg");
  mask-image:url("/assets/img/turkey-map.svg");
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  opacity:.42;
  z-index:0;
}
.about-regions-map::after{
  content:"";
  position:absolute;
  inset:0;
  background:url("/assets/img/turkey-map.svg") center / contain no-repeat;
  opacity:.04;
  filter:grayscale(1) brightness(.68) contrast(2.9);
  mix-blend-mode:multiply;
  pointer-events:none;
  z-index:1;
}
.about-regions-outline{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:.014;
  filter:grayscale(1) brightness(1.22) contrast(.88);
  user-select:none;
  pointer-events:none;
  z-index:0;
}
.about-regions-map-shell{
  position:absolute;
  inset:0;
  overflow:visible;
  z-index:2;
}
.about-regions-cloud{
  position:absolute;
  inset:0;
  z-index:2;
}
.about-regions-chip{
  position:absolute;
  left:var(--x);
  top:var(--y);
  transform:translate(-50%,-50%);
  font-size:var(--size, 18px);
  font-family:var(--font-subheading);
  font-weight:800;
  letter-spacing:.01em;
  line-height:1;
  white-space:nowrap;
  color:rgba(15,23,42,.52);
  text-shadow:
    0 4px 14px rgba(248,250,252,.92),
    0 0 1px rgba(248,250,252,.94);
  transition:
    opacity .28s ease,
    transform .28s ease,
    filter .28s ease,
    color .28s ease;
}
.about-regions-chip:nth-child(4n){
  color:rgba(238,125,0,.72);
}
.about-regions-chip.is-swapping{
  opacity:0;
  filter:blur(10px);
  transform:translate(-50%,-50%) scale(.9);
}
.about-regions-focus{
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%);
  min-width:min(78vw, 460px);
  text-align:center;
  z-index:3;
}
.about-regions-focus-text{
  display:inline-block;
  min-height:1.2em;
  padding:14px 18px;
  font-family:var(--font-subheading);
  font-size:clamp(26px,4vw,54px);
  font-weight:700;
  line-height:1.05;
  letter-spacing:-.03em;
  color:var(--ink-900);
  text-shadow:
    0 12px 32px rgba(248,250,252,.98),
    0 0 1px rgba(248,250,252,.98);
}
.about-regions-focus-text::after{
  content:"";
  display:inline-block;
  width:1px;
  height:.9em;
  margin-left:8px;
  vertical-align:-.06em;
  background:rgba(15,23,42,.52);
  animation:aboutRegionsCaret .9s steps(1,end) infinite;
}
@keyframes aboutRegionsCaret{
  0%,49%{opacity:1}
  50%,100%{opacity:0}
}
.about-regions-note{
  margin:clamp(0px,1vh,8px) auto 0;
  font-family:var(--font-subheading);
  font-size:clamp(17px,2.1vw,22px);
  font-style:italic;
  line-height:1.4;
  text-align:center;
  color:rgba(15,23,42,.54);
}
html.js-ready .about-panel--regions.reveal-block .about-regions-title{
  opacity:0;
  filter:blur(10px);
  transform:translate3d(0,44px,0) scale(.96);
  transition:
    opacity .82s cubic-bezier(.22,1,.36,1),
    transform .82s cubic-bezier(.22,1,.36,1),
    filter .82s cubic-bezier(.22,1,.36,1);
}
html.js-ready .about-panel--regions.reveal-in .about-regions-title{
  opacity:1;
  transform:none;
  filter:none;
}
html.js-ready .about-panel--regions.reveal-block .about-regions-map{
  opacity:0;
  filter:blur(12px);
  transform:translate3d(0,42px,0);
  transition:
    opacity .88s cubic-bezier(.22,1,.36,1) 120ms,
    transform .88s cubic-bezier(.22,1,.36,1) 120ms,
    filter .88s cubic-bezier(.22,1,.36,1) 120ms;
}
html.js-ready .about-panel--regions.reveal-in .about-regions-map{
  opacity:1;
  transform:none;
  filter:none;
}
@media (prefers-reduced-motion: reduce){
  html.js-ready .about-panel--design.reveal-block .about-design-mark,
  html.js-ready .about-panel--design.reveal-block .about-design-title-line,
  html.js-ready .about-panel--design.reveal-block .about-design-copy{
    opacity:1;
    filter:none;
    transition:none;
  }
  html.js-ready .about-panel--design.reveal-block .about-design-title-line,
  html.js-ready .about-panel--design.reveal-block .about-design-copy{
    transform:none;
  }
  html.js-ready .about-panel--design.reveal-block .about-design-mark{
    transform:translate3d(0,-50%,0);
  }
  html.js-ready .about-panel--regions.reveal-block .about-regions-title{
    opacity:1;
    transform:none;
    filter:none;
    transition:none;
  }
}
.about-hero-grid{
  position:relative;
  min-height:clamp(460px,72vh,720px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-hero-grid::before,
.about-hero-grid::after{
  content:"";
  position:absolute;
  bottom:clamp(14px,3vh,28px);
  width:calc(50% - clamp(18px,3vw,44px));
  height:1px;
  pointer-events:none;
}
.about-hero-grid::before{
  left:0;
  background:linear-gradient(90deg, rgba(15,23,42,0), rgba(15,23,42,.18));
}
.about-hero-grid::after{
  right:0;
  background:linear-gradient(90deg, rgba(15,23,42,.18), rgba(15,23,42,0));
}
.about-hero-copy{
  width:min(100%, 1180px);
  min-height:inherit;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  text-align:center;
}
.about-hero-copy .kicker,
.about-hero-copy .about-panel-index,
.about-hero-lead,
.about-hero-tags,
.about-page-actions,
.about-hero-visual,
.about-hero-highlights{
  display:none;
}
.about-panel-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:18px;
  background:rgba(238,125,0,.10);
  border:1px solid rgba(238,125,0,.18);
  color:var(--brand-600);
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
}
.about-hero-copy h1{
  margin:0;
  max-width:13ch;
  font-family:var(--font-heading);
  font-size:clamp(44px,6.2vw,88px);
  line-height:.98;
  letter-spacing:-.03em;
  text-wrap:balance;
}
.about-hero-lead{
  margin:0;
  max-width:62ch;
  color:var(--text-700);
  font-size:16px;
}
.about-hero-tags{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.about-hero-tags span{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 12px 24px rgba(2,8,23,.04);
  color:#475569;
  font-size:13px;
  font-weight:800;
}
.about-page-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.about-page-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 18px;
  border-radius:16px;
  border:1px solid rgba(2,8,23,.10);
  font-weight:800;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.about-page-btn:hover{
  transform:translateY(-1px);
}
.about-page-btn--primary{
  background:var(--brand-500);
  border-color:rgba(0,0,0,.08);
  color:#1b1207;
  box-shadow:0 16px 28px rgba(238,125,0,.22);
}
.about-page-btn--primary:hover{
  background:var(--brand-600);
}
.about-page-btn--ghost{
  background:#fff;
  color:var(--text-900);
}
.about-page-btn--ghost:hover{
  border-color:rgba(238,125,0,.30);
  color:var(--brand-600);
  background:rgba(238,125,0,.06);
}
.about-surface{
  position:relative;
  min-height:380px;
  height:100%;
  padding:24px;
  border-radius:30px;
  background:linear-gradient(160deg, #0f1d3f 0%, #1b2e5f 54%, #ee7d00 160%);
  box-shadow:0 26px 50px rgba(15,29,63,.24);
  overflow:hidden;
  display:grid;
  align-content:space-between;
}
.about-surface::before{
  content:"";
  position:absolute;
  inset:auto -18% -34% auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.24), rgba(255,255,255,0));
}
.about-surface::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:54px 54px;
  opacity:.26;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.85), transparent 88%);
}
.about-surface-chip{
  position:relative;
  z-index:1;
  justify-self:start;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.about-surface-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.about-surface-card{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.92);
}
.about-surface-card span{
  color:rgba(255,255,255,.64);
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
}
.about-surface-card strong{
  font-size:20px;
  line-height:1.15;
}
.about-surface-card p{
  margin:0;
  color:rgba(255,255,255,.80);
  font-size:14px;
}
.about-surface-card--lead{
  grid-column:1 / -1;
  min-height:160px;
  align-content:start;
  background:rgba(11,27,59,.34);
}
.about-hero-highlights{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.about-mini-card{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 28px rgba(2,8,23,.05);
}
.about-mini-card strong{
  font-size:18px;
  line-height:1.15;
}
.about-mini-card p{
  margin:0;
  color:var(--text-700);
  font-size:14px;
}
.about-panel-heading{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:18px;
  align-items:start;
  margin-bottom:22px;
}
.about-panel-copy{
  display:grid;
  gap:10px;
}
.about-panel-copy h2{
  margin:0;
  font-family:var(--font-subheading);
  font-weight:600;
  font-size:clamp(30px,3.5vw,44px);
  line-height:1.05;
}
.about-panel-copy p{
  margin:0;
  max-width:72ch;
  color:var(--text-700);
}
.about-vision-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-bottom:16px;
}
.about-feature-card{
  display:grid;
  gap:12px;
  padding:22px;
  border-radius:28px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 18px 36px rgba(2,8,23,.05);
}
.about-feature-kicker{
  color:var(--brand-600);
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.about-feature-card h3{
  margin:0;
  font-size:24px;
  line-height:1.18;
}
.about-feature-card p{
  margin:0;
  color:var(--text-700);
}
.about-principles{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.about-principle-card{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:22px;
  background:rgba(238,125,0,.07);
  border:1px solid rgba(238,125,0,.14);
}
.about-principle-card strong{
  font-size:15px;
  line-height:1.25;
}
.about-principle-card p{
  margin:0;
  color:#6b7280;
  font-size:14px;
}
.about-factory-grid{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(320px,.96fr);
  gap:20px;
  align-items:start;
}
.about-panel--factory{
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}
.about-panel--factory::before{
  display:none;
}
.about-panel--factory .about-factory-grid{
  grid-template-columns:minmax(0,1fr);
}
.about-panel-heading--factory{
  grid-template-columns:1fr;
  gap:0;
  margin-bottom:34px;
}
.about-panel--factory .about-panel-copy{
  gap:0;
}
.about-panel--factory .about-panel-copy h2{
  font-size:clamp(42px,6vw,86px);
  line-height:.92;
}
.about-factory-visual{
  position:relative;
  min-height:520px;
  padding:18px;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(238,125,0,.10), rgba(255,255,255,.82));
  border:1px solid rgba(238,125,0,.16);
  box-shadow:0 20px 40px rgba(2,8,23,.06);
}
.about-media-shell{
  width:100%;
  max-width:none;
  height:100%;
  min-height:100%;
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 16px 34px rgba(2,8,23,.10);
}
.about-factory-visual .about-model,
.about-factory-visual .about-glb{
  max-width:none;
  height:100%;
}
.about-factory-visual .about-model{
  min-height:480px;
}
.about-factory-visual .about-model img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.about-factory-visual .about-glb-frame{
  height:480px;
}
.about-factory-visual .about-skp{
  width:100%;
  min-height:280px;
  justify-content:space-between;
}
.about-inline-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid rgba(2,8,23,.08);
  background:#fff;
  font-weight:800;
}
.about-inline-link:hover{
  border-color:rgba(238,125,0,.30);
  color:var(--brand-600);
  background:rgba(238,125,0,.06);
}
.about-media-fallback{
  position:relative;
  min-height:480px;
  border-radius:24px;
  border:1px solid rgba(238,125,0,.14);
  background:linear-gradient(135deg, #fff7ef, #ffffff);
  overflow:hidden;
}
.about-media-fallback span{
  position:absolute;
  border-radius:999px;
  background:radial-gradient(circle at 30% 30%, rgba(238,125,0,.24), rgba(238,125,0,.04));
}
.about-media-fallback span:nth-child(1){
  width:260px;
  height:260px;
  left:-38px;
  top:-42px;
}
.about-media-fallback span:nth-child(2){
  width:180px;
  height:180px;
  right:16px;
  top:92px;
}
.about-media-fallback span:nth-child(3){
  width:220px;
  height:220px;
  left:42%;
  bottom:-68px;
}
.about-floating-note{
  position:absolute;
  right:34px;
  bottom:34px;
  max-width:230px;
  display:grid;
  gap:8px;
  padding:16px 18px;
  border-radius:22px;
  background:rgba(11,27,59,.94);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 20px 42px rgba(11,27,59,.24);
  color:#fff;
}
.about-floating-note p{
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:13px;
}
.about-panel--factory .about-factory-visual{
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.about-panel--factory .about-media-shell{
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.about-panel--factory .about-media-fallback{
  border-radius:0;
  border:0;
  background:transparent;
}
.about-panel--factory .about-media-fallback span{
  display:none;
}
.about-panel--factory .about-floating-note{
  right:0;
  bottom:0;
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
  color:var(--text-900);
}
.about-panel--factory .about-floating-note p{
  color:var(--text-700);
}
.about-factory-slider{
  position:relative;
  min-height:clamp(440px,68vh,640px);
  border-radius:32px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(2,8,23,.06);
  isolation:isolate;
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
}
.about-factory-slider.is-dragging{cursor:grabbing}
.about-factory-slider::before{
  display:none;
}
.about-factory-slide{
  position:absolute;
  inset:0;
  display:grid;
  opacity:0;
  pointer-events:none;
  transition:
    opacity .78s cubic-bezier(.22,1,.36,1),
    transform .56s cubic-bezier(.22,1,.36,1);
  will-change:transform, opacity;
}
.about-factory-slide.is-active{
  opacity:1;
  pointer-events:auto;
  z-index:2;
}
.about-factory-slide.is-preview{
  opacity:1;
  z-index:1;
}
.about-factory-image,
.about-factory-image img{
  width:100%;
  height:100%;
}
.about-factory-image{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.about-factory-image::after{
  display:none;
}
.about-factory-slide--left .about-factory-image{
  justify-content:flex-end;
  padding:clamp(20px,4vw,48px) clamp(28px,5vw,62px) clamp(54px,8vw,84px) 42%;
}
.about-factory-slide--right .about-factory-image{
  justify-content:flex-start;
  padding:clamp(20px,4vw,48px) 42% clamp(54px,8vw,84px) clamp(28px,5vw,62px);
}
.about-factory-image img{
  display:block;
  width:min(100%, 520px);
  height:auto;
  max-height:74%;
  object-fit:contain;
  filter:none;
  transform:translate3d(0,16px,0) scale(.88);
  transition:transform 6.8s cubic-bezier(.22,1,.36,1);
  -webkit-user-drag:none;
}
.about-factory-slide.is-active .about-factory-image img{
  transform:scale(1);
}
.about-factory-slide.is-preview .about-factory-image img{
  transform:scale(1);
}
.about-factory-slide-inner{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  width:100%;
  height:100%;
  padding:clamp(24px,4vw,42px) clamp(28px,5vw,62px);
}
.about-factory-slide--right .about-factory-slide-inner{
  justify-content:flex-end;
}
.about-factory-copybox{
  width:min(100%, 430px);
  display:grid;
  gap:14px;
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  color:var(--text-900);
  opacity:0;
  transform:translate3d(-42px,0,0);
  transition:
    opacity .82s cubic-bezier(.22,1,.36,1),
    transform .82s cubic-bezier(.22,1,.36,1);
}
.about-factory-slide--right .about-factory-copybox{
  justify-items:end;
  text-align:right;
  transform:translate3d(42px,0,0);
}
.about-factory-slide.is-active .about-factory-copybox{
  opacity:1;
  transform:none;
  transition-delay:160ms;
}
.about-factory-slide.is-preview .about-factory-copybox{
  opacity:1;
  transform:none;
  transition-delay:0ms;
}
.about-factory-kicker{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:auto;
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  color:var(--brand-600);
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.about-factory-slide--right .about-factory-kicker{
  justify-self:end;
}
.about-factory-copybox h3{
  margin:0;
  font-family:var(--font-subheading);
  font-weight:600;
  font-size:clamp(30px,4.2vw,48px);
  line-height:1.02;
}
.about-factory-copybox p{
  margin:0;
  color:var(--text-700);
  font-size:15px;
  line-height:1.72;
}
.about-factory-slider-nav{
  position:absolute;
  left:50%;
  bottom:clamp(18px,3.5vw,28px);
  z-index:3;
  display:flex;
  gap:10px;
  padding:10px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 10px 24px rgba(2,8,23,.08);
  transform:translateX(-50%);
}
.about-factory-slider-dot{
  width:12px;
  height:12px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(2,8,23,.18);
  cursor:pointer;
  transition:
    width .44s cubic-bezier(.22,1,.36,1),
    background-color .44s ease,
    transform .44s ease;
}
.about-factory-slider-dot:hover{
  transform:scale(1.08);
}
.about-factory-slider-dot.is-active{
  width:42px;
  background:linear-gradient(90deg, #ee7d00, #ffb35c);
}
.about-factory-slider-dot:focus-visible{
  outline:2px solid var(--brand-600);
  outline-offset:2px;
}
.about-factory-slider.is-dragging .about-factory-slide,
.about-factory-slider.is-dragging .about-factory-copybox,
.about-factory-slider.is-dragging .about-factory-image img{
  transition:none;
}
.about-factory-copy{
  display:grid;
  gap:16px;
}
.about-timeline{
  display:grid;
  gap:12px;
}
.about-timeline-item{
  display:grid;
  grid-template-columns:52px 1fr;
  gap:14px;
  padding:18px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 16px 28px rgba(2,8,23,.05);
}
.about-timeline-item > span{
  width:52px;
  height:52px;
  border-radius:16px;
  background:rgba(238,125,0,.10);
  border:1px solid rgba(238,125,0,.16);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--brand-600);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
}
.about-timeline-item strong{
  display:block;
  margin-bottom:4px;
  font-size:18px;
}
.about-timeline-item p{
  margin:0;
  color:var(--text-700);
}
.about-panel--factory .about-timeline-item{
  padding:0 0 18px;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.about-factory-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.about-panel--factory .about-factory-cards .about-mini-card{
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
html.js-ready .about-panel--factory.reveal-block .about-panel-copy,
html.js-ready .about-panel--factory.reveal-block .about-factory-visual,
html.js-ready .about-panel--factory.reveal-block .about-timeline-item,
html.js-ready .about-panel--factory.reveal-block .about-factory-cards .about-mini-card{
  opacity:0;
  filter:blur(8px);
  transition:
    opacity .76s cubic-bezier(.22,1,.36,1),
    transform .76s cubic-bezier(.22,1,.36,1),
    filter .76s cubic-bezier(.22,1,.36,1);
}
html.js-ready .about-panel--factory.reveal-block .about-panel-copy{
  transform:translate3d(-46px,-18px,0);
}
html.js-ready .about-panel--factory.reveal-block .about-factory-visual{
  transform:translate3d(-24px,28px,0);
  transition-delay:90ms;
}
html.js-ready .about-panel--factory.reveal-block .about-timeline-item:nth-child(1){
  transform:translate3d(30px,14px,0);
  transition-delay:140ms;
}
html.js-ready .about-panel--factory.reveal-block .about-timeline-item:nth-child(2){
  transform:translate3d(38px,20px,0);
  transition-delay:200ms;
}
html.js-ready .about-panel--factory.reveal-block .about-timeline-item:nth-child(3){
  transform:translate3d(46px,26px,0);
  transition-delay:260ms;
}
html.js-ready .about-panel--factory.reveal-block .about-factory-cards .about-mini-card:nth-child(1){
  transform:translate3d(0,24px,0);
  transition-delay:300ms;
}
html.js-ready .about-panel--factory.reveal-block .about-factory-cards .about-mini-card:nth-child(2){
  transform:translate3d(0,32px,0);
  transition-delay:360ms;
}
html.js-ready .about-panel--factory.reveal-in .about-panel-copy,
html.js-ready .about-panel--factory.reveal-in .about-factory-visual,
html.js-ready .about-panel--factory.reveal-in .about-timeline-item,
html.js-ready .about-panel--factory.reveal-in .about-factory-cards .about-mini-card{
  opacity:1;
  transform:none;
  filter:none;
}
.about-team-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-bottom:18px;
}
.about-panel--team{
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}
.about-panel--team::before{
  display:none;
}
.about-panel-heading--team{
  grid-template-columns:1fr;
  gap:0;
  margin-bottom:34px;
}
.about-panel--team .about-panel-copy{
  gap:14px;
}
.about-panel--team .about-panel-copy p{
  max-width:64ch;
}
.about-panel--team .about-feature-card{
  padding:6px 0 18px;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.about-panel--team .about-feature-card p{
  max-width:52ch;
}
.about-panel--team .about-support-band{
  gap:12px;
  padding:18px 0 0;
  border-radius:0;
  background:transparent;
  color:var(--text-900);
  box-shadow:none;
}
.about-panel--team .about-support-band p{
  color:var(--text-700);
}
html.js-ready .about-panel--team.reveal-block .about-panel-copy,
html.js-ready .about-panel--team.reveal-block .about-support-band,
html.js-ready .about-panel--team.reveal-block .about-feature-card{
  opacity:0;
  filter:blur(8px);
  transition:
    opacity .72s cubic-bezier(.22,1,.36,1),
    transform .72s cubic-bezier(.22,1,.36,1),
    filter .72s cubic-bezier(.22,1,.36,1);
}
html.js-ready .about-panel--team.reveal-block .about-panel-copy{
  transform:translate3d(0,30px,0);
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(odd){
  transform:translate3d(-28px,26px,0);
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(even){
  transform:translate3d(28px,26px,0);
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(1){
  transition-delay:80ms;
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(2){
  transition-delay:140ms;
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(3){
  transition-delay:200ms;
}
html.js-ready .about-panel--team.reveal-block .about-feature-card:nth-child(4){
  transition-delay:260ms;
}
html.js-ready .about-panel--team.reveal-block .about-support-band{
  transform:translate3d(0,34px,0);
  transition-delay:320ms;
}
html.js-ready .about-panel--team.reveal-in .about-panel-copy,
html.js-ready .about-panel--team.reveal-in .about-support-band,
html.js-ready .about-panel--team.reveal-in .about-feature-card{
  opacity:1;
  transform:none;
  filter:none;
}
.about-support-band{
  display:grid;
  gap:8px;
  padding:22px 24px;
  border-radius:26px;
  background:linear-gradient(135deg, rgba(11,27,59,.96), rgba(28,46,95,.96));
  color:#fff;
  box-shadow:0 24px 48px rgba(11,27,59,.18);
}
.about-support-band p{
  margin:0;
  color:rgba(255,255,255,.80);
}
@media (prefers-reduced-motion: reduce){
  html.js-ready .about-panel--factory.reveal-block .about-panel-copy,
  html.js-ready .about-panel--factory.reveal-block .about-factory-visual,
  html.js-ready .about-panel--factory.reveal-block .about-timeline-item,
  html.js-ready .about-panel--factory.reveal-block .about-factory-cards .about-mini-card,
  html.js-ready .about-panel--team.reveal-block .about-panel-copy,
  html.js-ready .about-panel--team.reveal-block .about-support-band,
  html.js-ready .about-panel--team.reveal-block .about-feature-card{
    opacity:1;
    transform:none;
    filter:none;
    transition:none;
  }
}

@media (max-width: 1100px){
  .about-page{
    padding:14px 0 60px;
  }
  .about-page-shell{
    grid-template-columns:1fr;
    gap:14px;
  }
  .about-page-main{
    gap:16px;
  }
  .about-page-rail{
    position:sticky;
    top:calc(var(--header-h) + 10px);
    z-index:28;
  }
  .about-orbit{
    position:relative;
    top:auto;
    margin-top:0;
  }
  .about-orbit-trigger{
    width:100%;
    min-height:auto;
    padding:12px 14px;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    align-content:center;
    justify-items:start;
    border-radius:26px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(2,8,23,.08);
    box-shadow:0 18px 34px rgba(2,8,23,.08);
    backdrop-filter:saturate(145%) blur(14px);
  }
  .about-orbit-outline{
    inset:8px;
  }
  .about-orbit-dots{
    display:flex;
    gap:12px;
    padding-top:0;
  }
  .about-orbit-scroll{
    margin-left:auto;
    margin-top:0;
    padding-bottom:0;
  }
  .about-orbit-menu{
    display:none;
  }
  .about-page-main > .about-panel{
    min-height:calc(100svh - var(--header-h) - 104px);
    scroll-margin-top:calc(var(--header-h) + 88px);
  }
  .about-hero-grid,
  .about-factory-grid{
    grid-template-columns:1fr;
  }
  .about-hero-simple{
    min-height:clamp(380px,62vh,560px);
  }
  .about-panel--factory .about-panel-copy h2{
    font-size:clamp(38px,7vw,64px);
  }
  .about-regions-stage{
    min-height:clamp(220px,32vh,320px);
  }
  .about-page .about-panel--regions .about-regions-title{
    font-size:clamp(34px,5.6vw,62px);
  }
  .about-design-stage{
    min-height:clamp(360px,54vh,520px);
    gap:clamp(32px,6vh,68px);
  }
  .about-design-mark{
    width:clamp(112px,16vw,170px);
  }
  .about-design-title-wrap{
    width:min(100%, 620px);
  }
  .about-design-title-line{
    font-size:clamp(44px,8vw,82px);
  }
  .about-hero-grid{
    min-height:clamp(380px,62vh,560px);
  }
  .about-hero-highlights{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 920px){
  .about-page{
    padding:14px 0 52px;
  }
  .about-page .container{
    padding-left:20px;
    padding-right:20px;
  }
  .about-page-main{
    gap:14px;
  }
  .about-page-main > .about-panel{
    min-height:calc(100svh - var(--header-h) - 96px);
  }
  .about-panel{
    padding:22px 18px;
    border-radius:28px;
  }
  .about-panel-heading{
    grid-template-columns:1fr;
    gap:12px;
  }
  .about-panel-copy h2{
    font-size:clamp(28px,6.8vw,36px);
  }
  .about-panel-copy,
  .about-panel--factory .about-panel-copy,
  .about-panel--team .about-panel-copy{
    justify-items:center;
    text-align:center;
  }
  .about-panel-copy p,
  .about-panel--team .about-panel-copy p{
    max-width:40ch;
    margin:0 auto;
  }
  .about-panel--hero{
    padding:18px 0 4px;
  }
  .about-hero-simple{
    min-height:calc(100svh - var(--header-h) - 146px);
    height:100%;
    padding:28px 0 14px;
    gap:26px;
    align-content:space-between;
  }
  .about-hero-badge{
    top:0;
    right:0;
    width:clamp(88px,18vw,132px);
  }
  .about-hero-simple h1{
    display:grid;
    max-width:12ch;
    font-size:clamp(32px,8.8vw,50px);
    line-height:1.02;
    gap:10px;
  }
  .about-hero-divider{
    width:100%;
    gap:16px;
  }
  .about-panel--factory .about-panel-copy h2{
    font-size:clamp(34px,9vw,54px);
  }
  .about-page .about-panel--regions .about-regions-title{
    font-size:clamp(28px,5.8vw,48px);
  }
  .about-hero-simple h1 span{
    display:block;
    white-space:normal;
  }
  .about-hero-simple h1 .about-hero-accent--left,
  .about-hero-simple h1 .about-hero-accent--offset{
    transform:none;
  }
  .about-design-title-wrap{
    width:100%;
    justify-self:center;
    text-align:center;
  }
  .about-design-stage{
    width:100%;
    min-height:clamp(420px, calc(100svh - var(--header-h) - 176px), 620px);
    grid-template-rows:none;
    align-content:center;
    justify-items:center;
    gap:26px;
    padding:clamp(28px, 7vh, 64px) 0 clamp(20px, 5vh, 40px);
  }
  .about-design-mark{
    position:relative;
    left:auto;
    top:auto;
    width:84px;
    transform:none;
    margin:10px auto 0;
  }
  html.js-ready .about-panel--design.reveal-block .about-design-mark,
  html.js-ready .about-panel--design.reveal-in .about-design-mark{
    transform:none;
  }
  .about-design-title{
    justify-items:center;
  }
  .about-design-title-line{
    font-size:clamp(34px,10vw,58px);
  }
  .about-design-copy{
    max-width:34ch;
    font-size:clamp(15px,3.2vw,18px);
    line-height:1.72;
  }
  .about-regions-stage{
    min-height:auto;
    gap:18px;
  }
  .about-regions-map{
    width:100%;
  }
  .about-regions-chip{
    font-size:clamp(11px, var(--size, 18px), 15px);
  }
  .about-regions-chip:nth-child(n+19){
    display:none;
  }
  .about-regions-focus{
    top:50%;
    min-width:min(72vw, 340px);
  }
  .about-regions-focus-text{
    padding:10px 12px;
    font-size:clamp(20px,6vw,34px);
  }
  .about-regions-note{
    margin-top:2px;
    font-size:14px;
  }
  .about-vision-grid,
  .about-principles,
  .about-factory-cards,
  .about-team-grid{
    grid-template-columns:1fr;
  }
  .about-factory-grid{
    gap:12px;
  }
  .about-factory-visual{
    min-height:auto;
  }
  .about-factory-slider{
    min-height:460px;
    border-radius:26px;
  }
  .about-factory-slide-inner{
    padding:18px 22px;
  }
  .about-factory-copybox{
    width:min(100%, 380px);
  }
  .about-factory-slide--left .about-factory-image{
    padding-right:34%;
    padding-left:22px;
  }
  .about-factory-slide--right .about-factory-image{
    padding-left:34%;
    padding-right:22px;
  }
  .about-factory-copybox h3{
    font-size:clamp(24px,6vw,34px);
  }
  .about-factory-copybox p{
    font-size:14px;
    line-height:1.64;
  }
  .about-factory-visual .about-model,
  .about-factory-visual .about-glb-frame,
  .about-media-fallback{
    min-height:320px;
    height:auto;
  }
  .about-factory-visual .about-model img{
    object-fit:contain;
  }
  .about-team-grid{
    gap:14px;
  }
  .about-panel--team .about-feature-card{
    justify-items:center;
    text-align:center;
    gap:10px;
    padding:0 0 16px;
  }
  .about-feature-card h3{
    font-size:22px;
  }
  .about-feature-card p{
    max-width:38ch;
    margin:0 auto;
  }
  .about-support-band,
  .about-support-band p{
    text-align:center;
  }
  .about-floating-note{
    position:static;
    max-width:none;
    margin-top:14px;
  }
}

@media (max-width: 640px){
  .about-page{
    padding:10px 0 44px;
  }
  .about-page .container{
    padding-left:14px;
    padding-right:14px;
  }
  .about-page-main{
    gap:12px;
  }
  .about-page-rail{
    top:calc(var(--header-h) + 8px);
  }
  .about-page-main > .about-panel{
    min-height:calc(100svh - var(--header-h) - 88px);
    scroll-margin-top:calc(var(--header-h) + 76px);
  }
  .about-panel{
    padding:16px 14px;
    border-radius:22px;
  }
  .about-panel--hero{
    padding:14px 0 2px;
  }
  .about-orbit-trigger{
    padding:10px 12px;
    gap:10px;
    border-radius:24px;
  }
  .about-orbit-scroll{
    gap:4px;
  }
  .about-orbit-hint{
    font-size:10px;
    letter-spacing:.12em;
  }
  .about-orbit-dots{
    gap:10px;
  }
  .about-orbit-dot{
    width:10px;
    height:10px;
  }
  .about-orbit-menu{
    margin-top:10px;
  }
  .about-orbit-link{
    font-size:14px;
    padding:10px 8px;
  }
  .about-panel-heading--factory{
    margin-bottom:18px;
  }
  .about-panel--factory .about-panel-copy h2{
    font-size:clamp(28px,10.5vw,38px);
  }
  .about-page .about-panel--regions .about-regions-title{
    font-size:clamp(22px,8vw,32px);
  }
  .about-hero-simple{
    min-height:calc(100svh - var(--header-h) - 126px);
    padding:18px 0 12px;
    gap:22px;
    align-content:center;
  }
  .about-hero-badge{
    position:static;
    order:2;
    justify-self:end;
    width:clamp(92px,24vw,122px);
    margin-top:2px;
    margin-right:8px;
  }
  .about-hero-simple h1{
    order:1;
    gap:8px;
    max-width:11ch;
    font-size:clamp(28px,11vw,40px);
  }
  .about-hero-divider{
    order:3;
  }
  .about-design-stage{
    min-height:clamp(400px, calc(100svh - var(--header-h) - 148px), 560px);
    gap:22px;
    padding:clamp(34px, 8vh, 72px) 0 clamp(18px, 4vh, 32px);
  }
  .about-design-mark{
    width:62px;
    margin-top:12px;
  }
  .about-design-title{
    gap:2px;
  }
  .about-design-title-line{
    font-size:clamp(28px,12vw,40px);
  }
  .about-design-copy{
    max-width:26ch;
    font-size:14px;
    line-height:1.68;
  }
  .about-hero-divider{
    gap:10px;
  }
  .about-page .about-panel--regions .about-regions-title{
    letter-spacing:-.04em;
  }
  .about-regions-stage{
    --about-regions-map-height:168px;
    min-height:max(420px, calc(100svh - var(--header-h) - 170px));
    gap:10px;
  }
  .about-regions-map{
    width:100%;
    min-height:max(360px, calc(100svh - var(--header-h) - 240px));
    aspect-ratio:auto;
  }
  .about-regions-map::before{
    inset:0 0 auto 0;
    height:var(--about-regions-map-height);
    -webkit-mask-position:top center;
    mask-position:top center;
  }
  .about-regions-map::after{
    inset:0 0 auto 0;
    height:var(--about-regions-map-height);
    background-position:top center;
    background-size:contain;
    background-repeat:no-repeat;
  }
  .about-regions-outline{
    inset:0 0 auto 0;
    height:var(--about-regions-map-height);
    object-position:top center;
  }
  .about-regions-chip{
    font-size:clamp(10px, var(--size, 18px), 12px);
    max-width:min(28vw, 108px);
    white-space:normal;
    text-align:center;
    line-height:1.06;
  }
  .about-regions-chip:nth-child(n+37){
    display:none;
  }
  .about-regions-focus{
    left:0;
    top:calc(var(--about-regions-map-height) / 2);
    width:100%;
    min-width:0;
    transform:translateY(-50%);
    display:flex;
    justify-content:center;
  }
  .about-regions-focus-text{
    max-width:min(78vw, 300px);
    padding:8px 10px;
    font-size:clamp(18px,7.5vw,26px);
  }
  .about-regions-note{
    margin-top:2px;
    font-size:13px;
  }
  .about-factory-visual .about-model,
  .about-factory-visual .about-glb-frame,
  .about-media-fallback{
    min-height:240px;
  }
  .about-factory-slider{
    min-height:454px;
    border-radius:20px;
  }
  .about-factory-slide{
    grid-template-rows:auto 1fr;
    align-content:start;
  }
  .about-factory-slide--left .about-factory-image,
  .about-factory-slide--right .about-factory-image{
    position:relative;
    inset:auto;
    justify-content:center;
    align-items:flex-end;
    min-height:196px;
    padding:22px 16px 4px;
  }
  .about-factory-slide-inner{
    height:auto;
    padding:6px 16px 122px;
    align-items:flex-start;
  }
  .about-factory-copybox{
    width:100%;
    gap:12px;
  }
  .about-factory-slide--right .about-factory-copybox{
    justify-items:start;
    text-align:left;
  }
  .about-factory-slide--right .about-factory-kicker{
    justify-self:start;
  }
  .about-factory-kicker{
    font-size:10px;
    letter-spacing:.14em;
  }
  .about-factory-copybox h3{
    font-size:clamp(22px,8.2vw,30px);
  }
  .about-factory-copybox p{
    font-size:13px;
    line-height:1.58;
  }
  .about-factory-slider-nav{
    bottom:18px;
    gap:8px;
    padding:8px 10px;
  }
  .about-factory-slider-dot{
    width:10px;
    height:10px;
  }
  .about-factory-slider-dot.is-active{
    width:34px;
  }
  .about-factory-image img{
    width:min(100%, 280px);
    max-height:184px;
  }
  .about-panel--team .about-panel-copy h2{
    font-size:clamp(24px,8.2vw,32px);
    line-height:1.08;
  }
  .about-panel--team .about-panel-copy p{
    max-width:32ch;
  }
  .about-feature-card h3{
    font-size:19px;
  }
  .about-feature-card p{
    font-size:14px;
  }
  .about-support-band{
    padding-top:10px;
  }
  .about-page-actions{
    flex-direction:column;
  }
  .about-page-btn{
    width:100%;
  }
  .about-surface{
    min-height:320px;
    padding:18px;
  }
  .about-surface-grid{
    grid-template-columns:1fr;
  }
  .about-surface-card--lead{
    min-height:auto;
  }
  .about-hero-highlights{
    grid-template-columns:1fr;
  }
  .about-feature-card,
  .about-mini-card,
  .about-principle-card{
    padding:16px;
    border-radius:18px;
  }
  .about-timeline-item{
    grid-template-columns:44px 1fr;
    padding:14px 0 12px;
  }
.about-timeline-item > span{
  width:44px;
  height:44px;
  border-radius:14px;
  }
}

@media (prefers-reduced-motion: reduce){
  .about-factory-slide,
  .about-factory-image img,
  .about-factory-copybox,
  .about-factory-slider-dot{
    transition:none;
  }
}

@media (max-width: 640px){
  .switcher-nav{
    gap:6px;
  }
  .switcher-tab{
    min-height:62px;
    padding:10px 8px;
    border-radius:16px;
    font-size:13px;
  }
  .switcher-section .container{
    padding-left:16px;
    padding-right:16px;
  }
  .switcher-copy{
    gap:12px;
  }
  .switcher-copy h2{
    font-size:clamp(24px,7vw,30px);
  }
  .switcher-copy .muted{
    font-size:14px;
    line-height:1.7;
  }
  .about-skp{
    padding:16px;
    flex-direction:column;
    gap:10px;
  }
  .switcher-faq-title{
    border-radius:22px;
  }
  .switcher-faq-list{
    gap:8px;
  }
  .switcher-tracking-copy h2{
    font-size:clamp(24px,7vw,30px);
  }
  .tracking-switcher-form{
    padding:16px;
    border-radius:22px;
  }
  .tracking-switcher-help{
    font-size:13px;
  }
  .cta-row{
    width:min(100%, 312px);
    margin:-54px auto 0;
    padding:12px;
    border-radius:24px;
  }
  .hero-cta-stage{
    display:grid;
    justify-items:center;
    align-items:start;
    gap:12px;
  }
  .hero-cta-wrap--has-campaign{
    margin-bottom:32px;
  }
  .hero-campaign-card{
    position:static;
    width:min(100%, 312px);
    margin:0 auto;
  }
  .hero-campaign-card.is-ready{
    animation:heroCampaignRise .9s cubic-bezier(.22,1,.36,1) .14s both;
  }
  .cta-tile{
    min-height:54px;
    padding:13px 14px;
    font-size:14px;
  }
  .cta-search{
    min-height:54px;
    padding:0 10px 0 14px;
  }
  .cta-search input{
    font-size:14px;
  }
  .footer .container{
    padding-left:16px;
    padding-right:16px;
  }
  .footer-tagline{
    font-size:clamp(18px,7vw,24px);
  }
  .footer-tagline-mark{
    width:130px;
    max-width:min(130px, 54vw);
    height:auto;
  }
  .footer-contact-mini-item strong{
    font-size:14px;
  }
  .social-btn{
    width:36px;
    height:36px;
  }
  .brand-logo{
    width:116px;
    height:32px;
  }
  .nav{
    grid-template-columns:46px minmax(0,1fr) 46px;
    gap:10px;
  }
  .nav-language-chip{
    min-height:46px;
    padding:0 9px;
    gap:7px;
    border-radius:14px;
  }
  .nav-language-dropdown{
    min-width:120px;
  }
  .nav-language-chip-label{
    font-size:14px;
  }
  .menu-toggle{
    width:46px;
    height:46px;
    border-radius:14px;
  }
  .header[data-open="1"] .menu{
    left:10px;
    right:10px;
    top:calc(var(--header-h) + 8px);
    max-height:calc(100svh - var(--header-h) - 18px);
    padding:14px;
    border-radius:20px;
  }
  .header[data-open="1"] .menu-link{
    min-height:50px;
    padding:13px 14px;
    border-radius:14px;
    font-size:14px;
  }
}

@media (max-width: 760px){
  .home .hero{
    min-height:calc(100svh - var(--header-h) - 36px);
    max-height:none;
  }
  .home .hero .inner{
    padding:clamp(78px,16vw,104px) 0 38px;
  }
  .hero h1{
    font-size:clamp(24px,10.6vw,42px);
    line-height:1.06;
    margin-bottom:12px;
  }
  .hero-title{
    display:grid;
    gap:2px;
  }
  .hero-title-prefix,
  .hero-title-dynamic,
  .hero-title-suffix{
    display:block;
  }
  .hero-title-dynamic{
    min-height:1.08em;
    line-height:1.02;
  }
  .hero-title-suffix{
    margin-top:0;
  }
  .hero p{
    max-width:26ch;
    margin-bottom:16px;
    font-size:14px;
    line-height:1.62;
  }
  .hero-badges{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    max-width:min(100%, 280px);
    margin-top:16px;
  }
  .hero-badges .badge{
    width:100%;
    min-height:42px;
    justify-content:center;
    padding:10px 12px;
    text-align:center;
    white-space:normal;
    line-height:1.35;
  }
}

@media (max-width: 920px){
  .blog-page,
  .blog-article-page{
    padding-top:12px;
    padding-bottom:40px;
  }
  .blog-page .container,
  .blog-article-page .container{
    padding-left:16px;
    padding-right:16px;
  }
  .blog-hero{
    gap:16px;
    padding:22px 18px;
    padding-bottom:50px;
    border-radius:24px;
  }
  .blog-hero h1{
    margin:4px 0 10px;
    font-size:clamp(30px,7.8vw,42px);
    line-height:1.08;
  }
  .blog-hero p{
    max-width:none;
    font-size:15px;
    line-height:1.68;
  }
  .blog-hero-glossary-link{
    right:18px;
    bottom:16px;
    gap:6px;
    font-size:11px;
  }
  .blog-chip-cloud{
    gap:6px;
  }
  .blog-chip{
    min-height:34px;
    padding:7px 11px;
    font-size:11px;
    border-radius:12px;
  }
  .blog-feature-card{
    grid-template-columns:1fr;
    margin-top:20px;
    border-radius:24px;
  }
  .blog-feature-media{
    min-height:0;
    aspect-ratio:16/10;
  }
  .blog-feature-copy{
    min-width:0;
    gap:14px;
    padding:20px 18px 22px;
  }
  .blog-feature-copy h2{
    font-size:clamp(24px,6vw,34px);
    line-height:1.12;
    overflow-wrap:anywhere;
  }
  .blog-feature-copy p{
    font-size:14px;
    line-height:1.65;
  }
  .blog-feature-link{
    width:100%;
    justify-content:center;
  }
  .blog-topic-grid{
    grid-template-columns:1fr;
    gap:14px;
    margin-top:20px;
  }
  .blog-topic-card{
    padding:18px;
    border-radius:20px;
  }
  .blog-topic-card h2{
    font-size:20px;
  }
  .blog-grid{
    grid-template-columns:1fr;
    gap:16px;
    margin-top:20px;
  }
  .blog-card{
    min-width:0;
    border-radius:22px;
  }
  .blog-card-media{
    aspect-ratio:16/10;
  }
  .blog-card-body{
    gap:12px;
    padding:18px;
  }
  .blog-card h3{
    font-size:22px;
    line-height:1.16;
    overflow-wrap:anywhere;
  }
  .blog-card p{
    font-size:14px;
    line-height:1.65;
  }
  .blog-card-foot{
    display:grid;
    justify-content:stretch;
    gap:10px;
  }
  .blog-card-foot a{
    width:max-content;
  }
  .blog-article-hero{
    gap:16px;
  }
  .blog-article-copy{
    gap:14px;
    padding:22px 18px;
    border-radius:24px;
  }
  .blog-article-copy .blog-chip-cloud{
    gap:8px;
  }
  .blog-article-copy .blog-chip{
    min-height:42px;
    padding:0 15px;
    font-size:12px;
  }
  .blog-article-copy .blog-chip--city{
    min-width:84px;
  }
  .blog-article-copy h1{
    font-size:clamp(30px,7.6vw,42px);
    line-height:1.08;
  }
  .blog-article-lead{
    font-size:15px;
    line-height:1.68;
  }
  .blog-article-cover{
    min-height:240px;
    border-radius:24px;
  }
  .blog-article-layout{
    grid-template-columns:1fr;
    gap:18px;
    margin-top:20px;
  }
  .blog-article-aside{
    order:2;
  }
  .blog-article-content{
    order:1;
  }
  .blog-aside-card{
    padding:16px;
    border-radius:20px;
  }
  .blog-article-section{
    padding:20px 18px;
    border-radius:22px;
  }
  .blog-article-section h2{
    font-size:24px;
  }
  .blog-article-section p,
  .blog-article-list{
    font-size:14px;
    line-height:1.7;
  }
  .blog-internal-links{
    grid-template-columns:1fr;
    gap:12px;
  }
  .blog-internal-link{
    padding:16px;
    border-radius:18px;
  }
  .blog-article-cta{
    padding:22px 18px;
    border-radius:24px;
  }
  .blog-article-cta h2,
  .blog-related-head h2{
    font-size:28px;
  }
  .blog-related{
    margin-top:24px;
  }
  .blog-crl-outer{
    padding:0 32px;
  }
  .blog-crl-btn--prev{left:0}
  .blog-crl-btn--next{right:0}
  .blog-crl .blog-related-card{
    flex:0 0 calc(50% - 10px);
  }
  .files-page{
    padding-top:14px;
    padding-bottom:8px;
  }
  .files-page .container{
    padding-left:16px;
    padding-right:16px;
  }
  .files-shell{
    min-height:clamp(260px, 40svh, 420px);
    gap:16px;
  }
  .files-stage{
    min-height:200px;
  }
  .files-panel-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .files-doc-card{
    min-height:0;
    padding:20px 18px;
    border-radius:20px;
  }
  .files-panel-grid--catalogs{
    grid-template-columns:1fr;
    gap:22px;
  }
  .files-doc-card--flipbook{
    gap:16px;
  }
  .files-doc-card--flipbook h3{
    font-size:clamp(26px,5vw,34px);
  }
  .files-doc-card--flipbook p{
    max-width:42ch;
  }
  .files-flipbook-stage{
    padding:0 38px;
  }
  .files-flipbook-nav{
    width:48px;
    height:48px;
  }
  .files-flipbook-meta{
    gap:14px;
  }
  .files-doc-card h3{
    font-size:22px;
  }
  .files-spec-sheet{
    padding:22px 18px;
    border-radius:22px;
  }
  .files-spec-sheet-head-top{
    flex-direction:column;
    align-items:flex-start;
  }
  .files-spec-sheet-head h2{
    font-size:clamp(26px,5vw,36px);
  }
  .files-spec-download{
    min-height:44px;
    padding:0 16px;
  }
  .files-spec-accordion > summary{
    padding:14px 16px;
  }
  .files-spec-accordion-pill{
    width:calc(100% - 40px);
    border-radius:18px;
  }
  .files-spec-accordion-label{
    font-size:14px;
  }
  .files-spec-accordion-body{
    padding:0 16px 16px;
  }
  .files-spec-entry h3{
    font-size:16px;
  }
  .files-tabs-toggle{
    order:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:54px;
    padding:0 16px;
    border:1px solid rgba(2,8,23,.08);
    border-radius:18px;
    background:#fff;
    color:var(--text-900);
    font-family:var(--font-subheading);
    font-size:20px;
    font-weight:500;
    box-shadow:0 12px 28px rgba(2,8,23,.05);
  }
  .files-shell.is-active .files-tabs-toggle{
    order:1;
  }
  .files-tabs-toggle svg{
    flex:0 0 auto;
    transition:transform .22s ease;
  }
  [data-files-tabs].is-menu-open .files-tabs-toggle svg{
    transform:rotate(180deg);
  }
  .files-tabs{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
    justify-content:stretch;
    align-items:stretch;
    gap:10px;
    margin-top:0;
    padding-top:0;
    border-top:0;
    max-height:0;
    opacity:0;
    scrollbar-width:none;
    overflow:hidden;
    pointer-events:none;
    transition:max-height .28s ease, opacity .2s ease, padding-top .2s ease;
  }
  [data-files-tabs].is-menu-open .files-tabs{
    max-height:420px;
    opacity:1;
    padding-top:10px;
    pointer-events:auto;
  }
  .files-tabs::-webkit-scrollbar{
    display:none;
  }
  .files-tab{
    width:100%;
    flex:0 0 auto;
    text-align:left;
    font-size:20px;
    padding:14px 16px;
    border-radius:18px;
    border:1px solid rgba(2,8,23,.08);
    background:#fff;
  }
}

@media (max-width: 640px){
  .blog-page .container,
  .blog-article-page .container{
    padding-left:14px;
    padding-right:14px;
  }
  .blog-hero{
    padding:18px 16px 54px;
    border-radius:20px;
  }
  .blog-hero-glossary-link{
    right:16px;
    bottom:14px;
    gap:5px;
    max-width:180px;
    font-size:10px;
    line-height:1.3;
  }
  .blog-hero-glossary-icon{
    width:13px;
    height:13px;
  }
  .blog-hero h1{
    font-size:clamp(26px,9.4vw,34px);
  }
  .blog-feature-card,
  .blog-card{
    border-radius:20px;
  }
  .blog-card .blog-chip-cloud{
    min-height:0;
  }
  .blog-card .blog-chip{
    min-height:36px;
    padding:8px 12px;
    border-radius:14px;
  }
  .blog-feature-copy,
  .blog-card-body,
  .blog-topic-card,
  .blog-article-copy,
  .blog-article-section,
  .blog-article-cta,
  .blog-aside-card{
    padding-left:16px;
    padding-right:16px;
  }
  .blog-feature-media,
  .blog-card-media{
    aspect-ratio:4/3;
  }
  .blog-feature-copy h2,
  .blog-card h3{
    font-size:20px;
  }
  .blog-card-foot a,
  .blog-feature-link,
  .blog-aside-action,
  .blog-article-cta-actions .btn{
    width:100%;
    justify-content:center;
  }
  .blog-article-copy h1{
    font-size:clamp(26px,9vw,34px);
  }
  .blog-article-cover{
    min-height:210px;
  }
  .blog-article-section h2{
    font-size:22px;
  }
  .blog-article-cta h2,
  .blog-related-head h2{
    font-size:24px;
  }
  .blog-crl-outer{
    padding:0;
  }
  .blog-crl-btn{
    display:none;
  }
  .blog-crl .blog-related-card{
    flex:0 0 calc(63% - 10px);
  }
  .blog-crl .blog-card-media{
    aspect-ratio:16/9;
  }
  .blog-crl .blog-card p{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    line-clamp:2;
    overflow:hidden;
  }
  .files-page .container{
    padding-left:14px;
    padding-right:14px;
  }
  .files-shell{
    min-height:clamp(220px, 34svh, 320px);
    gap:14px;
  }
  .files-stage{
    min-height:170px;
  }
  .files-idle img{
    width:88px;
  }
  .files-idle-scroll{
    width:58px;
    height:58px;
  }
  .files-idle-scroll svg{
    width:22px;
    height:22px;
  }
  .files-doc-card{
    padding:18px 16px;
    border-radius:18px;
  }
  .files-doc-card--flipbook{
    gap:14px;
  }
  .files-doc-card--flipbook h3{
    font-size:clamp(23px,8vw,28px);
  }
  .files-doc-card--flipbook p{
    font-size:14px;
    line-height:1.65;
  }
  .files-flipbook-shell{
    gap:10px;
  }
  .files-flipbook-stage{
    padding:0 34px;
  }
  .files-flipbook-book{
    border-radius:22px;
  }
  .files-flipbook-nav{
    width:42px;
    height:42px;
  }
  .files-flipbook-loading{
    right:12px;
    bottom:12px;
    min-width:140px;
    padding:8px 12px;
    font-size:12px;
  }
  .files-flipbook-meta{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
  .files-flipbook-link{
    width:100%;
    justify-content:center;
  }
  .files-doc-card h3{
    margin-top:14px;
    font-size:20px;
  }
  .files-spec-sheet{
    padding:18px 14px;
    border-radius:20px;
  }
  .files-spec-sheet-head{
    gap:10px;
    padding-bottom:14px;
  }
  .files-spec-sheet-title{
    gap:10px;
  }
  .files-spec-sheet-head h2{
    font-size:clamp(24px,8.4vw,30px);
  }
  .files-spec-sheet-head p,
  .files-spec-entry p,
  .files-spec-list{
    font-size:14px;
    line-height:1.7;
  }
  .files-spec-accordion > summary{
    padding:12px;
  }
  .files-spec-download{
    width:100%;
    min-height:42px;
    padding:0 14px;
    font-size:12px;
  }
  .files-spec-accordion-pill{
    width:calc(100% - 36px);
    gap:10px;
    padding:8px 12px 8px 8px;
  }
  .files-spec-accordion-number{
    width:24px;
    height:24px;
    font-size:12px;
  }
  .files-spec-accordion-label{
    font-size:13px;
  }
  .files-spec-accordion-body{
    gap:16px;
    padding:0 12px 12px;
  }
  .files-spec-entry + .files-spec-entry{
    padding-top:16px;
  }
  .files-tabs{
    gap:8px;
  }
  .files-tabs-toggle{
    min-height:50px;
    padding:0 14px;
    border-radius:16px;
    font-size:18px;
  }
  .files-tab{
    font-size:18px;
    padding:13px 14px;
  }
}
.product-guide-section{
  margin-top:24px;
  display:grid;
  gap:18px;
}
.product-guide-head{
  display:grid;
  gap:6px;
}
.product-guide-head h2{
  margin:0;
  font-size:clamp(24px,2.8vw,34px);
  line-height:1.12;
}
.product-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.product-guide-card{
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  align-content:start;
  gap:12px;
  padding:20px;
  border-radius:22px;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.92));
  border:1px solid rgba(2,8,23,.08);
  min-height:100%;
}
.product-guide-topic{
  display:inline-flex;
  justify-self:start;
  align-self:start;
  width:auto;
  max-width:100%;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(238,125,0,.08);
  color:var(--brand-600);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.1;
  text-transform:uppercase;
}
.product-guide-card h3{
  margin:0;
  font-size:21px;
  line-height:1.18;
}
.product-guide-card p{
  margin:0;
  color:var(--text-700);
  font-size:14px;
  line-height:1.7;
}
.product-guide-link{
  align-self:end;
  margin-top:2px;
  font-weight:900;
  color:var(--brand-600);
}

.blog-article-trust{
  display:grid;
  gap:16px;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.94));
}
.blog-trust-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.blog-trust-item{
  display:grid;
  gap:6px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(248,250,252,.95);
  border:1px solid rgba(2,8,23,.08);
}
.blog-trust-item strong{
  font-size:17px;
  line-height:1.25;
}
.blog-trust-item small{
  color:#64748b;
  font-size:13px;
  line-height:1.5;
}
.blog-trust-label{
  color:var(--brand-600);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.blog-trust-note{
  display:grid;
  gap:8px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,247,237,.58);
  border:1px solid rgba(238,125,0,.12);
}
.blog-trust-note p{
  margin:0;
}

.blog-article-aside,
.blog-article-content,
.blog-related,
.blog-grid--related,
.blog-related-card,
.blog-card-body,
.blog-card-foot,
.blog-internal-link,
.blog-trust-item,
.blog-trust-note,
.blog-aside-card,
.blog-article-cta,
.blog-article-cta-actions{
  min-width:0;
}

.blog-related-card h3,
.blog-internal-link strong,
.blog-internal-link span,
.blog-trust-item strong,
.blog-trust-note p,
.blog-aside-card h2,
.blog-article-cta h2,
.blog-article-cta p{
  overflow-wrap:anywhere;
}

.city-page .container{
  width:100%;
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}
.city-page{
  padding-top:26px;
  padding-bottom:56px;
}
.city-hero{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.68fr);
  gap:22px;
  align-items:stretch;
}
.city-hero-copy,
.city-hero-panel,
.city-main-card,
.city-fact-card,
.city-model-card,
.city-guide-card,
.city-cta{
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 18px 36px rgba(2,8,23,.05);
}
.city-hero-copy{
  display:grid;
  gap:16px;
  padding:28px;
}
.city-hero-copy h1{
  margin:0;
  font-size:clamp(34px,4vw,52px);
  line-height:1.04;
  font-family:var(--font-heading);
}
.city-hero-copy p,
.city-hero-panel p,
.city-main-card p,
.city-fact-card p,
.city-guide-card p{
  margin:0;
  color:var(--text-700);
  line-height:1.72;
}
.city-chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.city-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:16px;
  background:rgba(248,250,252,.95);
  border:1px solid rgba(2,8,23,.08);
  color:var(--text-900);
  font-size:13px;
  font-weight:800;
}
.city-hero-actions,
.city-cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.city-hero-panel{
  display:grid;
  gap:10px;
  padding:28px;
  background:
    radial-gradient(420px 180px at 100% 0%,rgba(238,125,0,.12),transparent 68%),
    linear-gradient(180deg,#fff,#f8fafc);
}
.city-panel-kicker,
.city-fact-kicker,
.city-guide-topic{
  color:var(--brand-600);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.city-layout{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:22px;
  margin-top:24px;
}
.city-main-card{
  display:grid;
  gap:14px;
  padding:28px;
}
.city-main-card h2,
.city-section-head h2,
.city-cta h2{
  margin:0;
  font-size:clamp(28px,3vw,38px);
  line-height:1.1;
}
.city-facts-grid{
  display:grid;
  gap:16px;
}
.city-fact-card{
  display:grid;
  gap:8px;
  padding:20px 22px;
}
.city-section{
  margin-top:30px;
}
.city-section-head{
  display:grid;
  gap:6px;
  margin-bottom:16px;
}

/* Sistem Seçenekleri — 2 büyük kategori kartı */
.city-systems-section{margin-top:34px}
.city-systems-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.city-system-card{
  position:relative;display:flex;flex-direction:column;gap:10px;
  padding:24px 26px;border-radius:18px;background:#fff;
  border:1px solid #e6e9ef;color:#0f172a;text-decoration:none;
  transition:transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s ease, border-color .2s ease;
  overflow:hidden;
}
.city-system-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent 0%,rgba(238,125,0,.45) 50%,transparent 100%);
  opacity:0;transition:opacity .25s ease;
}
.city-system-card:hover{transform:translateY(-4px);border-color:rgba(238,125,0,.45);box-shadow:0 18px 36px rgba(238,125,0,.1)}
.city-system-card:hover::before{opacity:1}
.city-system-card-badge{
  display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
  padding:4px 12px;border-radius:999px;
  background:rgba(238,125,0,.08);color:#c45c00;
  font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
}
.city-system-card h3{margin:0;font-size:19px;color:#0f172a;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.city-system-card p{margin:0;font-size:13.5px;line-height:1.65;color:#475569}
.city-system-card-points{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.city-system-card-points li{
  position:relative;padding-left:20px;font-size:13px;color:#334155;line-height:1.5;font-weight:600;
}
.city-system-card-points li::before{
  content:"";position:absolute;left:0;top:6px;width:10px;height:10px;border-radius:50%;
  background:linear-gradient(135deg,#ee7d00 0%,#f59e0b 100%);
  box-shadow:0 0 0 3px rgba(238,125,0,.12);
}
.city-system-card-link{
  display:inline-flex;align-items:center;gap:7px;margin-top:8px;
  font-size:13.5px;font-weight:700;color:#ee7d00;
}
.city-system-card-link svg{transition:transform .25s ease}
.city-system-card:hover .city-system-card-link svg{transform:translateX(4px)}
/* Çelik kartı — sol vurgu */
.city-system-card--steel{background:linear-gradient(135deg,#fff 0%,#fafbfd 100%)}
.city-system-card--steel:hover{background:linear-gradient(135deg,#fff 0%,#fff8f0 100%)}
/* Prefabrik kartı — turuncu hafif vurgu */
.city-system-card--prefab{background:linear-gradient(135deg,#fff 0%,#fffaf2 100%)}
.city-system-card--prefab .city-system-card-badge{background:rgba(13,148,136,.08);color:#0d9488}
.city-system-card--prefab:hover{background:linear-gradient(135deg,#fff 0%,#fff5e6 100%)}
@media (max-width:780px){
  .city-systems-grid{grid-template-columns:1fr}
  .city-system-card{padding:20px 20px}
  .city-system-card h3{font-size:17px}
}

/* Fiyat aralığı kartı */
.city-price-section{margin-top:34px}
.city-price-card{
  background:linear-gradient(135deg,#fff8f0 0%,#fff3df 100%);
  border:1px solid rgba(238,125,0,.22);
  border-radius:18px;
  padding:24px 26px;
  box-shadow:0 8px 20px rgba(238,125,0,.06);
}
.city-price-card .kicker{display:inline-block;color:#c45c00;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.city-price-card h2{font-size:clamp(20px,2.4vw,26px);margin:0 0 12px;color:#0f172a;line-height:1.25}
.city-price-card p{font-size:14.5px;line-height:1.7;color:#334155;margin:0 0 10px}
.city-price-card small{display:block;font-size:12px;color:#64748b;line-height:1.55;font-style:italic}

/* Süreç adımları */
.city-process-section{margin-top:34px}
.city-process-list{
  list-style:none;padding:0;margin:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;
}
.city-process-item{
  display:flex;gap:14px;align-items:flex-start;
  padding:16px 18px;border-radius:14px;
  background:#fff;border:1px solid #e6e9ef;
  box-shadow:0 1px 2px rgba(2,8,23,.04);
  transition:border-color .2s ease, box-shadow .2s ease, transform .25s cubic-bezier(.22,1,.36,1);
}
.city-process-item:hover{border-color:rgba(238,125,0,.4);box-shadow:0 12px 24px rgba(238,125,0,.08);transform:translateY(-2px)}
.city-process-num{
  flex-shrink:0;font-size:24px;font-weight:800;
  color:transparent;
  background:linear-gradient(135deg,#ee7d00 0%,#f59e0b 100%);
  -webkit-background-clip:text;background-clip:text;
  line-height:1;letter-spacing:-.02em;
}
.city-process-body strong{display:block;font-size:14.5px;color:#0f172a;font-weight:700;margin-bottom:4px;line-height:1.3}
.city-process-body p{margin:0;font-size:13px;color:#475569;line-height:1.6}

/* SSS — Accordion */
.city-faq-section{margin-top:34px}
.city-faq-list{display:grid;gap:10px}
.city-faq-item{
  background:#fff;border:1px solid #e6e9ef;border-radius:14px;
  overflow:hidden;transition:border-color .2s ease, box-shadow .25s ease;
}
.city-faq-item[open]{border-color:rgba(238,125,0,.35);box-shadow:0 6px 16px rgba(238,125,0,.06)}
.city-faq-item summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 20px;
  font-size:14.5px;font-weight:700;color:#0f172a;line-height:1.4;
  transition:color .2s ease;
}
.city-faq-item summary::-webkit-details-marker{display:none}
.city-faq-item summary:hover{color:#c45c00}
.city-faq-q{flex:1 1 auto;min-width:0}
.city-faq-icon{
  flex-shrink:0;width:28px;height:28px;border-radius:999px;
  background:rgba(238,125,0,.08);color:#ee7d00;
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .3s cubic-bezier(.22,1,.36,1), background .2s ease;
}
.city-faq-item[open] .city-faq-icon{transform:rotate(180deg);background:#ee7d00;color:#fff}
.city-faq-a{
  padding:0 20px 18px;font-size:13.5px;line-height:1.7;color:#475569;
}
@media (max-width:640px){
  .city-price-card{padding:18px 18px;border-radius:14px}
  .city-price-card h2{font-size:18px}
  .city-price-card p{font-size:13.5px}
  .city-process-list{grid-template-columns:1fr;gap:10px}
  .city-process-item{padding:14px 14px;gap:12px}
  .city-process-num{font-size:22px}
  .city-faq-item summary{padding:14px 16px;font-size:13.5px}
  .city-faq-a{padding:0 16px 14px;font-size:13px}
}
.city-model-grid,
.city-guide-grid,
.city-project-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.city-project-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,360px));
  justify-content:flex-start;
}
.city-model-card,
.city-guide-card{
  display:grid;
  gap:10px;
  padding:22px;
}
.city-project-card{
  display:grid;
  grid-template-rows:auto 1fr;
  width:100%;
  max-width:360px;
  overflow:hidden;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 18px 36px rgba(2,8,23,.05);
  color:inherit;
  text-decoration:none;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.city-project-card:hover{
  transform:translateY(-3px);
  border-color:rgba(238,125,0,.2);
  box-shadow:0 24px 44px rgba(2,8,23,.09);
}
.city-project-card:focus-visible{
  outline:3px solid rgba(238,125,0,.28);
  outline-offset:2px;
}
.city-project-media{
  position:relative;
  aspect-ratio:1.72 / 1;
  overflow:hidden;
  background:#e2e8f0;
}
.city-project-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .32s ease;
}
.city-project-card:hover .city-project-media img{
  transform:scale(1.04);
}
.city-project-body{
  display:grid;
  gap:8px;
  padding:18px 18px 20px;
}
.city-project-topline{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.city-project-topline span{
  color:var(--brand-600);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.city-model-card strong,
.city-guide-card h3,
.city-project-body strong{
  margin:0;
  font-size:22px;
  line-height:1.18;
}
.city-project-body strong{
  color:var(--text-900);
  font-size:18px;
  line-height:1.12;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.city-model-card span{
  color:var(--text-700);
  font-size:14px;
  line-height:1.68;
}
.city-project-body p{
  margin:0;
  color:var(--text-700);
  font-size:13px;
  line-height:1.58;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.city-guide-link{
  font-weight:900;
  color:var(--brand-600);
}
.city-project-link{
  font-weight:900;
  color:var(--brand-600);
}
.city-cta{
  display:grid;
  gap:10px;
  margin-top:30px;
  padding:30px;
  background:
    radial-gradient(540px 220px at 0% 0%,rgba(238,125,0,.12),transparent 65%),
    linear-gradient(180deg,#fff,#f8fafc);
}

@media (max-width: 900px){
  .product-guide-grid,
  .blog-trust-grid,
  .city-model-grid,
  .city-guide-grid,
  .city-project-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .city-project-grid{
    grid-template-columns:repeat(auto-fit,minmax(240px,320px));
  }
  .city-hero,
  .city-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .product-guide-grid,
  .blog-trust-grid,
  .city-model-grid,
  .city-guide-grid,
  .city-project-grid{
    grid-template-columns:1fr;
  }
  .product-guide-card,
  .blog-trust-item,
  .blog-trust-note,
  .city-main-card,
  .city-fact-card,
  .city-model-card,
  .city-guide-card,
  .city-project-card,
  .city-cta,
  .city-hero-copy,
  .city-hero-panel{
    border-radius:22px;
  }
  .city-page .container{
    padding-left:16px;
    padding-right:16px;
  }
  .city-page{
    padding-top:12px;
    padding-bottom:40px;
  }
  .city-hero-copy,
  .city-hero-panel,
  .city-main-card,
  .city-fact-card,
  .city-model-card,
  .city-guide-card,
  .city-cta{
    padding:20px 18px;
  }
  .city-project-body{
    padding:18px;
  }
  .city-project-card{
    max-width:none;
  }
  .city-hero-copy h1{
    font-size:clamp(30px,8vw,40px);
  }
}

@media (max-width: 760px){
  .blog-article-table-wrap{
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .blog-article-table{
    display:block;
    width:100%;
    min-width:0;
    background:transparent;
  }
  .blog-article-table thead{
    display:none;
  }
  .blog-article-table tbody{
    display:grid;
    gap:12px;
  }
  .blog-article-table tr{
    display:grid;
    overflow:hidden;
    border:1px solid rgba(2,8,23,.08);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 28px rgba(2,8,23,.05);
  }
  .blog-article-table th,
  .blog-article-table td{
    display:grid;
    grid-template-columns:minmax(112px,42%) minmax(0,1fr);
    gap:10px;
    padding:12px 14px;
    border-right:0;
  }
  .blog-article-table th::before,
  .blog-article-table td::before{
    content:attr(data-column-label);
    color:var(--brand-600);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    line-height:1.35;
    text-transform:uppercase;
  }
  .blog-article-table tbody th{
    background:#f8fafc;
  }
  .blog-article-table tbody tr:last-child > *{
    border-bottom:1px solid rgba(2,8,23,.08);
  }
  .blog-article-table tbody tr > *:last-child{
    border-bottom:0;
  }
  .blog-article-cta-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .blog-article-cta-actions .btn{
    width:100%;
    min-width:0;
    justify-content:center;
    text-align:center;
  }
}

@media (max-width: 960px){
  .files-shell{
    min-height:0;
    justify-content:flex-start;
    gap:14px;
  }
  .files-stage{
    flex:0 0 auto;
    min-height:0;
    order:2;
  }
  .files-shell:not(.has-content) .files-stage{
    display:none;
  }
  .files-idle,
  .files-idle-scroll,
  .files-tabs-toggle{
    display:none !important;
  }
  .files-tabs{
    order:1;
    width:100%;
    display:grid;
    grid-template-columns:1fr;
    justify-content:stretch;
    align-items:stretch;
    gap:10px;
    margin-top:0;
    padding-top:0;
    border-top:0;
    max-height:none;
    opacity:1;
    overflow:visible;
    pointer-events:auto;
  }
  .files-shell.is-active .files-tabs{
    order:1;
    margin-top:0;
  }
  .files-tab{
    opacity:0;
    transform:translate3d(-28px,0,0);
    animation:filesMobileTabSlideIn .56s cubic-bezier(.22,1,.36,1) forwards;
  }
  .files-tab:nth-child(1){animation-delay:.04s}
  .files-tab:nth-child(2){animation-delay:.1s}
  .files-tab:nth-child(3){animation-delay:.16s}
  .files-tab:nth-child(4){animation-delay:.22s}
  .files-tab:nth-child(5){animation-delay:.28s}
  .files-tab:nth-child(6){animation-delay:.34s}
  .files-panel.is-visible{
    animation:filesPanelRevealHorizontal .46s cubic-bezier(.22,1,.36,1) both;
  }
}

@media (max-width: 960px) and (prefers-reduced-motion: reduce){
  .files-tab{
    opacity:1;
    transform:none;
    animation:none;
  }
  .files-panel.is-visible{
    animation:none;
  }
}

@keyframes filesMobileTabSlideIn{
  from{
    opacity:0;
    transform:translate3d(-28px,0,0);
  }
  to{
    opacity:1;
    transform:none;
  }
}

@keyframes filesPanelRevealHorizontal{
  from{
    opacity:0;
    transform:translate3d(-22px,0,0);
    filter:blur(6px);
  }
  to{
    opacity:1;
    transform:none;
    filter:blur(0);
  }
}

/* ===== FACTORY PAGE ===== */
.factory-above-fold{
  min-height:100vh;
  min-height:100svh;
  min-height:calc(var(--vh,1vh)*100);
  display:flex;
  flex-direction:column;
}
.factory-hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  min-height:calc(var(--vh,1vh)*100);
  height:100vh;
  height:100svh;
  height:calc(var(--vh,1vh)*100);
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-end;
  color:#fff;
  background:#121826;
  overflow:hidden;
  -webkit-mask-image:none;
  mask-image:none;
}
.factory-above-fold .factory-hero{
  flex:1 1 auto;
  min-height:0;
}
.factory-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--factory-hero-image,none);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  /* NO animation — intentionally static */
  z-index:0;
}
.factory-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
  pointer-events:none;
}
.factory-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.14) 0,rgba(0,0,0,.22) 100%),
             linear-gradient(180deg,rgba(7,12,24,.12) 0,rgba(7,12,24,.52) 58%,rgba(7,12,24,.76) 100%),
             radial-gradient(900px 280px at 50% 100%,rgba(238,125,0,.14),transparent 55%);
  z-index:1;
}
.factory-hero .container{
  position:relative;
  z-index:2;
  width:100%;
  flex:1 1 auto;
  display:flex;
  align-items:center;
}
.factory-hero-inner{
  padding:clamp(132px,16vh,188px) 0 clamp(148px,19vh,186px);
  text-align:center;
  width:100%;
}
.factory-hero-eyebrow{
  display:inline-block;
  margin-bottom:10px;
  font-family:var(--font-subheading);
  font-size:17px;
  color:rgba(255,255,255,.82);
  letter-spacing:.04em;
}
.factory-hero-inner h1{
  margin:0 0 16px;
  font-family:var(--font-heading);
  font-size:clamp(36px,5.2vw,66px);
  line-height:1.04;
}
.factory-hero-inner p{
  margin:0 auto;
  max-width:680px;
  color:rgba(255,255,255,.88);
  font-size:17px;
}

/* Stats band */
.factory-stat{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-width:0;
  padding:24px 16px;
  border-right:1px solid var(--border);
  text-align:center;
  transform:translate3d(-14px,0,0);
  transition:transform .72s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
.factory-stats-band.is-ready .factory-stat{transform:none;}
.factory-stat:nth-child(1){transition-delay:0s;}
.factory-stat:nth-child(2){transition-delay:.05s;}
.factory-stat:nth-child(3){transition-delay:.1s;}
.factory-stat:nth-child(4){transition-delay:.15s;}
.factory-stat:last-child{border-right:0;}
.factory-stat strong{
  font-family:var(--font-heading);
  font-size:clamp(26px,2.8vw,38px);
  font-weight:800;
  color:var(--brand-600);
  line-height:1;
  white-space:nowrap;
}
.factory-stat span{
  font-size:13px;
  font-weight:700;
  color:rgba(255,255,255,.94);
}

@keyframes factory-hero-title-in{
  from{opacity:0;transform:translateY(28px);}
  to{opacity:1;transform:translateY(0);}
}
@keyframes factory-stats-slidein{
  from{opacity:0;transform:translateY(32px);}
  to{opacity:1;transform:translateY(0);}
}
@keyframes factory-stats-slidein-horizontal{
  from{opacity:0;transform:translate3d(-42px,0,0);}
  to{opacity:1;transform:none;}
}
@keyframes factory-stat-mobile-in{
  from{margin-left:-14px;}
  to{margin-left:0;}
}
@keyframes factory-hint-bounce{
  0%,100%{transform:translateY(-50%);}
  50%{transform:translateY(calc(-50% + 7px));}
}
@keyframes factory-hint-bounce-mobile{
  0%,100%{transform:translateX(-50%) translateY(0);}
  50%{transform:translateX(-50%) translateY(6px);}
}
.factory-stats-band{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:3;
  width:100%;
  overflow:visible;
  background:rgba(0,0,0,.16);
  backdrop-filter:saturate(155%) blur(16px);
  border-top:1px solid rgba(255,255,255,.12);
  box-shadow:0 -10px 30px rgba(2,8,23,.10);
}
.factory-stats-band .container{
  position:relative;
  width:100%;
  max-width:none;
  margin:0;
  padding:0 86px 0 0;
}
.factory-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:100%;
  border-right:0;
}
.factory-scroll-hint{
  position:absolute;
  right:28px;
  top:50%;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  background:0 0;
  color:#ee7d00;
  cursor:pointer;
  transform:translateY(-50%);
  transition:color .18s,opacity .18s;
  animation:factory-hint-bounce 1.4s ease-in-out infinite;
}
.factory-scroll-hint:hover,
.factory-scroll-hint:focus-visible{
  color:#d86f00;
}
@supports (height:100dvh){
  .factory-above-fold{min-height:100dvh;}
  .factory-hero{
    min-height:100dvh;
    height:100dvh;
  }
}
.factory-location-band{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  align-items:stretch;
  min-height:460px;
  scroll-margin-top:calc(var(--header-h) + 12px);
  background:#fff;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  box-shadow:0 6px 24px rgba(2,8,23,.05);
}
.factory-location-map-wrap{
  position:relative;
  min-height:460px;
  background:#e2e8f0;
}
.factory-location-map-wrap::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to left,#fff 0%,rgba(255,255,255,.6) 35%,transparent 70%);
  pointer-events:none;
  z-index:1;
}.factory-location-map{
  display:block;
  width:100%;
  height:100%;
  border:0;
}
.factory-location-content{
  display:grid;
  align-content:center;
  gap:18px;
  padding:42px clamp(24px,4vw,48px);
  background:
    radial-gradient(420px 180px at 100% 0%,rgba(238,125,0,.12),transparent 68%),
    linear-gradient(180deg,#fff,#f8fafc);
}
.factory-location-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:80px;
  height:80px;
  color:var(--brand-600);
  justify-self:center;
  margin:0 auto;
}
.factory-location-icon img{
  display:block;
  width:56px;
  height:56px;
  object-fit:contain;
}
.factory-location-icon svg{
  display:none;
}
.factory-location-title{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(28px,3vw,40px);
  font-weight:600;
  line-height:1.12;
  color:var(--ink-900);
}
.factory-location-desc{
  margin:0;
  color:var(--text-700);
  line-height:1.78;
}
.factory-location-address{
  display:inline-flex;
  align-items:flex-start;
  gap:10px;
  width:max-content;
  max-width:100%;
  padding:12px 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(2,8,23,.08);
  box-shadow:0 10px 24px rgba(2,8,23,.05);
  color:var(--text-900);
  font-weight:700;
}
.factory-location-address svg{
  flex:0 0 auto;
  color:var(--brand-600);
  margin-top:2px;
}

/* Page body */
.factory-page{
  padding:54px 0 72px;
}
.factory-page .container{
  max-width:none;
  padding-left:28px;
  padding-right:28px;
}

/* Intro grid */
.factory-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:36px;
  align-items:center;
  margin-bottom:52px;
}
.factory-intro-copy{
  display:grid;
  gap:16px;
}
.factory-intro-copy h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(28px,3.2vw,42px);
  font-weight:600;
  line-height:1.12;
  color:var(--ink-900);
}
.factory-intro-copy p{
  margin:0;
  color:var(--text-700);
  line-height:1.78;
}
.factory-cta-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:4px;
  font-weight:800;
  color:var(--brand-600);
  font-size:15px;
  transition:gap .18s;
}
.factory-cta-link:hover{gap:12px;}
.factory-intro-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.factory-info-card{
  display:grid;
  gap:6px;
  padding:20px 22px;
  border-radius:var(--r-xl);
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 6px 20px rgba(2,8,23,.05);
}
.factory-info-card--accent{
  background:linear-gradient(180deg,rgba(238,125,0,.07),rgba(255,255,255,.96));
  border-color:rgba(238,125,0,.22);
}
.factory-info-card-label{
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--brand-600);
}
.factory-info-card strong{
  font-size:22px;
  font-weight:900;
  color:var(--text-900);
  line-height:1.15;
}
.factory-info-card p{
  margin:0;
  font-size:13px;
  color:var(--text-700);
}

/* Section cards */
.factory-sections{
  display:grid;
  gap:24px;
}
.factory-section-row{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  gap:18px;
}
.factory-section-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:28px;
  box-shadow:0 6px 20px rgba(2,8,23,.05);
  display:grid;
  gap:16px;
  align-content:start;
}
.factory-section-card--wide{}
.factory-section-card--full{width:100%;}
.factory-section-row--3col{grid-template-columns:repeat(3,minmax(0,1fr));}
.factory-section-head{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--text-900);
}
.factory-section-head svg{
  flex:0 0 auto;
  color:var(--brand-600);
}
.factory-section-head h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(20px,1.9vw,26px);
  font-weight:600;
  line-height:1.15;
}
.factory-section-card p{
  margin:0;
  color:var(--text-700);
  line-height:1.72;
}
.factory-section-note{
  font-size:13px !important;
  color:#64748b !important;
  padding:12px 14px;
  border-radius:var(--r-md);
  background:#f8fafc;
  border:1px solid var(--border);
}
.factory-capacity-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.factory-capacity-item{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:var(--r-lg);
  background:rgba(238,125,0,.07);
  border:1px solid rgba(238,125,0,.16);
  text-align:center;
}
.factory-capacity-item strong{
  font-size:22px;
  font-weight:900;
  color:var(--brand-600);
  line-height:1;
}
.factory-capacity-item span{
  font-size:12px;
  font-weight:700;
  color:var(--text-700);
}
.factory-product-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.factory-product-list li{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  color:var(--text-900);
}
.factory-product-list li svg{
  flex:0 0 auto;
  color:var(--brand-600);
}
.factory-tech-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.factory-tech-list li{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:var(--r-md);
  background:#f8fafc;
  border:1px solid var(--border);
  font-weight:700;
  font-size:14px;
  color:var(--text-900);
}
.factory-tech-list li::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--brand-500);
  flex:0 0 auto;
}
.factory-quality-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.factory-quality-item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:var(--r-md);
  background:rgba(34,197,94,.06);
  border:1px solid rgba(34,197,94,.18);
  font-weight:700;
  font-size:14px;
  color:var(--text-900);
}
.factory-quality-item svg{
  flex:0 0 auto;
  color:#22c55e;
}

/* Process section */
.factory-process-section{
  padding:36px;
  border-radius:var(--r-xl);
  background:linear-gradient(135deg,rgba(8,18,42,.98),rgba(16,35,77,.96) 52%,rgba(22,44,90,.96));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 28px 70px rgba(11,27,59,.18);
  display:grid;
  gap:28px;
}
.factory-process-head{
  display:grid;
  gap:10px;
  text-align:center;
  justify-items:center;
}
.factory-process-head h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(24px,2.8vw,36px);
  font-weight:600;
  color:#fff;
  line-height:1.15;
}
.factory-process-head p{
  margin:0;
  max-width:62ch;
  color:rgba(255,255,255,.78);
  font-size:15px;
}
.factory-process-section .kicker{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.18);
  color:rgba(255,255,255,.9);
}
.factory-process-steps{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
}
.factory-process-step{
  display:grid;
  gap:6px;
  padding:16px 18px;
  border-radius:var(--r-lg);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  text-align:center;
  min-width:114px;
}
.factory-process-num{
  font-family:var(--font-heading);
  font-size:24px;
  font-weight:800;
  color:var(--brand-500);
  line-height:1;
}
.factory-process-step strong{
  font-size:12px;
  font-weight:700;
  color:rgba(255,255,255,.88);
  line-height:1.35;
}
.factory-process-arrow{
  color:rgba(255,255,255,.3);
}

/* Capacity card — full width */
.factory-cap-circles-band{
  display:block;
}

/* Product carousel — horizontal scroll strip below hero */
.factory-circles-carousel-wrap{
  padding:40px 0 36px;
}
.factory-circles-carousel{
  display:flex;
  gap:28px;
  overflow-x:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:8px 80px;
  cursor:grab;
  touch-action:pan-x pan-y;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%);
}
.factory-circles-carousel::-webkit-scrollbar{display:none;}
.factory-circle-item{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--ink-900);
}
.factory-circle-item-img{
  width:160px;
  height:160px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid transparent;
  box-shadow:0 8px 28px rgba(2,8,23,.1);
  transition:border-color .35s ease,box-shadow .35s ease;
}
.factory-circle-item-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}
.factory-circle-item-placeholder{width:100%;height:100%;background:#f1f5f9;}
.factory-circle-item:hover .factory-circle-item-img{
  border-color:var(--brand-600);
  box-shadow:0 14px 40px rgba(238,125,0,.3);
}
.factory-circle-item:hover .factory-circle-item-img img{transform:scale(1.08);}
.factory-circle-item span{
  font-weight:600;
  font-size:12px;
  color:var(--ink-900);
  text-align:center;
  transition:color .3s;
  max-width:140px;
  line-height:1.35;
}
.factory-circle-item:hover span{color:var(--brand-600);}

/* Delivery band */
.factory-delivery-band{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:36px;
  align-items:center;
  padding:36px;
  border-radius:var(--r-xl);
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 6px 20px rgba(2,8,23,.05);
}
.factory-delivery-copy{
  display:grid;
  gap:16px;
}
.factory-delivery-copy h2{
  margin:0;
  font-family:var(--font-subheading);
  font-size:clamp(24px,2.6vw,34px);
  font-weight:600;
  color:var(--ink-900);
}
.factory-delivery-copy p{
  margin:0;
  max-width:64ch;
  color:var(--text-700);
  line-height:1.72;
}
.factory-delivery-features{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.factory-delivery-feat{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  font-size:14px;
  color:var(--text-900);
}
.factory-delivery-feat svg{
  flex:0 0 auto;
  color:var(--brand-600);
}
.factory-delivery-cta{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.factory-delivery-cta .btn.primary{
  white-space:nowrap;
  min-height:52px;
  padding:14px 22px;
  border-radius:var(--r-lg);
  background:var(--brand-500);
  border:1px solid rgba(0,0,0,.08);
  color:#fff;
  font-weight:800;
  box-shadow:0 16px 32px rgba(238,125,0,.22);
}
.factory-delivery-cta .btn.primary:hover{
  background:var(--brand-600);
}
.factory-delivery-secondary{
  font-size:14px;
  font-weight:800;
  color:var(--text-700);
  text-decoration:underline;
  text-underline-offset:.18em;
}
.factory-delivery-secondary:hover{color:var(--brand-600);}

@media (max-width:920px){
  html.js-ready .factory-hero.reveal-block,
  html.js-ready .factory-hero.reveal-first-row,
  html.js-ready .factory-hero.reveal-in{
    opacity:1;
    transform:none;
    filter:none;
    transition:none;
  }
  .factory-above-fold{
    min-height:94vh;
    min-height:94svh;
    min-height:calc(var(--vh,1vh)*94);
  }
  .factory-hero{
    min-height:94vh;
    min-height:94svh;
    min-height:calc(var(--vh,1vh)*94);
    height:94vh;
    height:94svh;
    height:calc(var(--vh,1vh)*94);
  }
  .factory-hero-inner{padding:116px 0 144px;}
  .factory-hero-inner p{
    max-width:none;
    padding:0 18px;
    font-size:clamp(12px,2vw,14px);
    white-space:nowrap;
    line-height:1.35;
  }
  .factory-stats-band{
    bottom:0;
    animation:none;
    will-change:auto;
  }
  .factory-stats-band,
  .factory-stats-grid,
  .factory-stat,
  .factory-stat strong,
  .factory-stat span{
    opacity:1;
    filter:none;
    visibility:visible;
  }
  .factory-stats-band .container{padding-right:0;}
  .factory-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .factory-stat{
    padding:14px 8px 12px;
    border-right:1px solid rgba(148,163,184,.18);
  }
  .factory-stat:nth-child(2n),
  .factory-stat:nth-child(n+3){
    border-top:0;
  }
  .factory-stat:last-child{border-right:0;}
  .factory-stat strong{font-size:clamp(17px,3vw,22px);}
  .factory-stat span{font-size:10px;line-height:1.2;}
  .factory-scroll-hint{
    display:flex;
    left:50%;
    right:auto;
    top:auto;
    bottom:calc(100% + 8px);
    transform:translateX(-50%);
    animation:factory-hint-bounce-mobile 1.4s ease-in-out infinite;
  }
  .factory-location-band{
    grid-template-columns:1fr;
    min-height:0;
  }
  .factory-location-map-wrap{min-height:320px;}
  .factory-location-content{padding:28px 24px;}
  .factory-intro-grid{grid-template-columns:1fr;gap:24px;}
  .factory-section-row{grid-template-columns:1fr;}
  .factory-section-row--3col{grid-template-columns:1fr;}
  .factory-circles-carousel{padding:8px 32px;}
  .factory-delivery-band{grid-template-columns:1fr;gap:24px;}
  .factory-delivery-cta{flex-direction:row;flex-wrap:wrap;}
  .factory-process-section{padding:24px;}
  .factory-page .container{padding-left:18px;padding-right:18px;}
}
@media (max-width:640px){
  .factory-hero-inner{padding:108px 0 136px;}
  .factory-hero-inner p{
    padding:0 12px;
    font-size:clamp(10px,3.3vw,12px);
  }
  .factory-stats-band{
    bottom:0;
  }
  .factory-stat{padding:12px 5px 10px;gap:2px;}
  .factory-stat strong{font-size:clamp(13px,4vw,17px);}
  .factory-stat span{font-size:8.5px;line-height:1.12;}
  .factory-scroll-hint{
    top:auto;
    bottom:calc(100% + 6px);
  }
  .factory-location-map-wrap{min-height:260px;}
  .factory-location-content{padding:22px 18px;}
  .factory-location-icon{
    width:68px;
    height:68px;
    border-radius:20px;
  }
  .factory-location-icon img{
    width:48px;
    height:48px;
  }
  .factory-location-title{font-size:clamp(24px,7vw,32px);}
  .factory-location-address{width:100%;}
  .factory-intro-cards{grid-template-columns:1fr;}
  .factory-capacity-grid{grid-template-columns:1fr 1fr;}
  .factory-quality-grid{grid-template-columns:1fr;}
  .factory-delivery-features{grid-template-columns:1fr;}
  .factory-process-steps{gap:4px;flex-direction:column;}
  .factory-process-step{width:100%;flex:none;}
  .factory-process-arrow{display:none;}
  .factory-section-card{padding:20px 18px;}
  .factory-delivery-band{padding:22px 18px;}
  .factory-process-section{padding:20px 18px;}
  .factory-page .container{padding-left:16px;padding-right:16px;}
}
@media (max-width:920px){
  @supports (height:100dvh){
    .factory-above-fold{
      min-height:94dvh;
    }
    .factory-hero{
      min-height:94dvh;
      height:94dvh;
    }
  }
}

@media (prefers-reduced-motion: reduce){
  .factory-stats-band{
    animation:none !important;
    will-change:auto;
  }
  .factory-stat{
    opacity:1 !important;
    transform:none !important;
    margin-left:0 !important;
    transition:none !important;
    animation:none !important;
    will-change:auto;
  }
}

a.citem{color:inherit;text-decoration:none;}a.citem:hover{border-color:rgba(2,8,23,.18);background:rgba(2,8,23,.06);}

@media (max-width:640px){
  .section.product-detail-page,
  .product-detail-page .container,
  .product-detail-overview,
  .product-detail-overview-grid,
  .product-detail-info-card,
  .product-detail-copy-card{
    min-width:0;
    max-width:100%;
  }
  .section.product-detail-page,
  .product-detail-page .container{
    overflow-x:hidden;
  }
  .product-detail-copy-lead,
  .product-detail-copy-card .product-detail-text{
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .product-detail-actions{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    align-items:stretch;
  }
  .product-detail-actions > *,
  .product-detail-actions .btn,
  .product-detail-actions .pd-share-wrap,
  .product-detail-actions .pd-share-btn{
    min-width:0;
    max-width:100%;
  }
  .product-detail-actions .btn,
  .product-detail-actions .pd-share-btn{
    min-height:52px;
    padding:10px 8px;
    border-radius:16px;
    font-size:12px;
    line-height:1.15;
    text-align:center;
  }
  .product-detail-actions .btn{
    gap:6px;
  }
  .product-detail-actions .pd-share-btn{
    gap:4px;
  }
  .product-detail-actions .pd-share-btn svg{
    width:15px;
    height:15px;
    flex:0 0 15px;
  }
  .pd-share-dropdown{
    left:auto;
    right:0;
    transform:none;
    min-width:176px;
  }
}

@media (max-width:380px){
  .product-detail-copy-card{
    padding:18px;
  }
  .product-detail-actions{
    gap:5px;
  }
  .product-detail-actions .btn,
  .product-detail-actions .pd-share-btn{
    min-height:50px;
    padding:9px 6px;
    font-size:11px;
  }
  .product-detail-actions .pd-share-btn svg{
    width:14px;
    height:14px;
    flex-basis:14px;
  }
}