/* Reference-inspired typography and color, with the original page grid intact. */
:root{
  --font-display:"Anton",Impact,"Arial Narrow",sans-serif;
  --font-body:"Inter","Segoe UI",sans-serif;
  --brand-ease:cubic-bezier(.16,1,.3,1);
}
body{font-family:var(--font-body)}
h1,h2,h3,.display{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em;font-weight:400}
.hero h1{font-size:clamp(36px,4.1vw,55px);line-height:1.06;letter-spacing:.005em}
.section h2{line-height:1.12;font-size:clamp(30px,3.7vw,46px)}
.brand .name{font-family:var(--font-display);font-size:18px;letter-spacing:.025em;text-transform:uppercase}
.brand .sub{letter-spacing:.18em}
.top{background:rgba(244,241,235,.95);border-bottom-color:rgba(7,28,58,.13)}
.langSwitch{background:#fbf9f5;border-color:#dda3af}
.langSwitch button:not([aria-pressed="true"]):hover{background:#f5d9df}
.btn-gold,.chips button.chip-gold,.product--navy .ask{background:var(--gold);color:#fff;border-color:var(--gold);box-shadow:0 10px 24px rgba(165,15,39,.16)}
.btn-gold:hover,.chips button.chip-gold:hover,.product--navy .ask:hover{background:#a50f27}
.btn-primary{background:var(--navy);box-shadow:0 10px 24px rgba(7,28,58,.18)}
.btn-ghost{background:#fbf9f5;border-color:#c7c7c8}
.btn:active{transform:translateY(0) scale(.98)}
.eyebrow{line-height:1.65;letter-spacing:.19em}
.eyebrow::after{background:var(--gold);max-width:52px}
.pillars b,.workCta b{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.015em;line-height:1.3}
.pillars .ic{background:#fcf4f3;border-color:#dda3af}
.price{font-family:var(--font-body);font-weight:700;font-size:15px}
.workCta{background:#fbf9f5}
.product--navy{background:linear-gradient(150deg,#071c3a,#0b2547);border-color:#233b59}
.product--gold{background:linear-gradient(150deg,#fcf4f3,#f5d9df);box-shadow:0 16px 38px rgba(165,15,39,.1)}
.clientsBand{background:linear-gradient(135deg,#071c3a,#0b2547);border-color:#29405e}
.clientsBand::before,.clientsBand::after{border-color:rgba(243,164,177,.18)}
.clientCard{background:#fbf9f5;border-color:rgba(255,255,255,.28)}
.clientCard:hover{box-shadow:0 22px 40px rgba(3,15,32,.38);border-color:#f3a4b1}
.bandLabel{color:#fff}
.bandLabel::before{background:linear-gradient(90deg,transparent,#cf1734)}
.bandLabel::after{background:linear-gradient(90deg,#cf1734,transparent)}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid #cf1734;outline-offset:4px}
::selection{background:#cf1734;color:#fff}
/* Words keep their natural spaces and stay readable if scripting fails. */
.brandHeading{perspective:1000px}
.brandWord{display:inline-block;transform-origin:50% 100%;vertical-align:baseline}
@media(max-width:960px){.hero h1{font-size:clamp(36px,5.6vw,52px)}}
@media(max-width:600px){
  .hero h1{font-size:clamp(32px,8.6vw,45px);line-height:1.08}
  .section h2{font-size:clamp(28px,7.2vw,36px);line-height:1.15}
  .brand .name{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .brandWord{transform:none!important;opacity:1!important}
  .btn,.clientCard,.clientCard .logo img{transition:none}
}
.brand>span{display:flex;flex-direction:column;gap:5px}
.brand>span>br{display:none}
.brand .name,.brand .sub{display:block}
.btn{font-family:var(--font-body)}
@media(max-width:960px){
  .navMenu{background:rgba(244,241,235,.98);border-color:var(--line)}
}
@media(max-width:620px){
  .hero.wrap,.section.wrap{padding-inline:16px}
  .brand .name{font-size:15px;line-height:1.2}
  .brand .sub{font-size:9px;line-height:1.3}
}
@media(prefers-reduced-motion:reduce){
  .navMenu,.navScrim,.navToggle .bars i{transition:none}
}
