:root{
  --navy:    #0C1930;
  --navy-2:  #122440;
  --navy-3:  #1A3054;
  --paper:   #F5F4EF;
  --white:   #FFFFFF;
  --orange:  #F15A29;
  --orange-2:#FF7A45;
  --teal:    #2FA6AE;
  --teal-d:  #1C7C86;
  --mut-d:   #94A6C0;
  --mut-l:   #56647A;
  --line-d:  rgba(255,255,255,.12);
  --line-l:  rgba(12,25,48,.14);

  --disp: "Barlow Condensed", "Arial Narrow", sans-serif;
  --body: "Manrope", "Segoe UI", sans-serif;
  --util: "Chakra Petch", "Consolas", monospace;

  --seam: clamp(2.2rem, 4vw, 3.6rem);
  --gutter: clamp(1.25rem, 4vw, 4rem);
  --maxw: 1240px;
  --r: 14px;
  --ease: cubic-bezier(.22,.9,.28,1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html:focus-within{scroll-behavior:smooth}
body{
  font-family:var(--body);
  background:var(--navy);
  color:var(--white);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--orange);color:#fff}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}

::-webkit-scrollbar{width:11px}
::-webkit-scrollbar-track{background:var(--navy)}
::-webkit-scrollbar-thumb{background:var(--navy-3);border-radius:8px;border:2px solid var(--navy)}
::-webkit-scrollbar-thumb:hover{background:var(--orange)}

.wrap{width:min(var(--maxw), 100% - 2*var(--gutter));margin-inline:auto}

.eyebrow{
  font-family:var(--util);font-weight:600;font-size:.78rem;
  letter-spacing:.32em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.7rem;
}
.eyebrow .st{width:13px;height:13px;fill:var(--orange);flex:none}
.eyebrow.on-dark{color:var(--teal)}
.eyebrow.on-light{color:var(--teal-d)}

.h-disp{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;
  line-height:.94;letter-spacing:.005em;
}
.h-sec{font-size:clamp(2.6rem, 5.6vw, 4.4rem)}
.h-sec .alt{color:var(--orange);font-style:italic;padding-right:.06em}

.lead{font-size:clamp(1rem, 1.4vw, 1.15rem);max-width:62ch}
.on-dark .lead, .lead.on-dark{color:var(--mut-d)}
.on-light .lead, .lead.on-light{color:var(--mut-l)}

.btn{
  position:relative;display:inline-flex;align-items:center;gap:.65rem;
  font-family:var(--util);font-weight:600;font-size:.86rem;
  letter-spacing:.14em;text-transform:uppercase;
  padding:1.02rem 1.7rem;border-radius:8px;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease), color .35s;
  isolation:isolate;overflow:hidden;
}
.btn .st{width:14px;height:14px;flex:none;transition:transform .5s var(--ease)}
.btn:hover .st{transform:rotate(72deg) scale(1.15)}
.btn-solid{background:var(--orange);color:#fff;box-shadow:0 10px 30px -10px rgba(241,90,41,.55)}
.btn-solid .st{fill:#fff}
.btn-solid::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.35) 50%, transparent 70%);
  transform:translateX(-120%);transition:transform .7s var(--ease);
}
.btn-solid:hover{transform:translateY(-3px);box-shadow:0 18px 42px -12px rgba(241,90,41,.7)}
.btn-solid:hover::after{transform:translateX(120%)}
.btn-ghost{border:1px solid var(--line-d);color:#fff;background:rgba(255,255,255,.03)}
.btn-ghost .st{fill:var(--teal)}
.btn-ghost:hover{transform:translateY(-3px);background:rgba(255,255,255,.08);border-color:var(--teal)}
.btn-ghost.on-light{border-color:var(--line-l);color:var(--navy);background:transparent}
.btn-ghost.on-light:hover{background:rgba(12,25,48,.06);border-color:var(--teal-d)}

#progress{
  position:fixed;top:0;left:0;height:3px;width:0%;
  background:linear-gradient(90deg,var(--orange),var(--orange-2));
  z-index:1001;box-shadow:0 0 12px rgba(241,90,41,.8);
}

header{
  position:fixed;inset:0 0 auto 0;z-index:1000;
  transition:background .45s var(--ease), box-shadow .45s var(--ease), padding .45s var(--ease);
  padding:1.15rem 0;
}
header.scrolled{
  background:rgba(10,20,38,.82);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 var(--line-d), 0 14px 40px -20px rgba(0,0,0,.7);
  padding:.65rem 0;
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}

.brand{display:flex;flex-direction:column;line-height:1;user-select:none}
.brand-img{height:46px;width:auto;display:block;transition:transform .5s var(--ease)}
.brand:hover .brand-img{transform:scale(1.04)}
@media (max-width:640px){.brand-img{height:38px}}
.brand .tag{
  font-family:var(--util);font-weight:600;font-size:.5rem;letter-spacing:.34em;
  color:var(--teal);text-transform:uppercase;margin-top:.3rem;
}
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{
  font-family:var(--util);font-weight:500;font-size:.8rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--mut-d);position:relative;padding:.35rem 0;
  transition:color .3s;
}
.nav-links a::after{
  content:"";position:absolute;left:0;bottom:0;height:2px;width:0;
  background:var(--orange);transition:width .4s var(--ease);
}
.nav-links a:hover, .nav-links a.active{color:#fff}
.nav-links a:hover::after, .nav-links a.active::after{width:100%}
.nav-cta{display:flex;align-items:center;gap:1rem}
.nav-cta .btn{padding:.72rem 1.25rem;font-size:.76rem}

#burger{display:none;flex-direction:column;gap:5px;padding:.6rem;z-index:1002}
#burger span{width:26px;height:2px;background:#fff;transition:.4s var(--ease);border-radius:2px}
#burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
#burger.open span:nth-child(2){opacity:0}
#burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

#m-menu{
  position:fixed;inset:0;z-index:999;background:rgba(10,19,36,.97);
  backdrop-filter:blur(16px);display:flex;flex-direction:column;
  align-items:center;justify-content:flex-start;gap:.15rem;
  padding:calc(88px + env(safe-area-inset-top,0px)) 1.5rem calc(1.5rem + env(safe-area-inset-bottom,0px));
  overflow-y:auto;overscroll-behavior:contain;
  opacity:0;pointer-events:none;transition:opacity .4s var(--ease);
}
#m-menu > :first-child{margin-top:auto}
#m-menu > :last-child{margin-bottom:auto}
#m-menu.open{opacity:1;pointer-events:auto}
#m-menu a{
  font-family:var(--disp);font-weight:700;font-size:clamp(1.3rem,4.6vw,1.7rem);letter-spacing:.05em;text-transform:uppercase;
  line-height:1.2;color:#fff;padding:.55rem 1rem;opacity:0;transform:translateY(16px);
  transition:opacity .5s var(--ease), transform .5s var(--ease), color .3s;
}
#m-menu.open a{opacity:1;transform:none}
#m-menu a:hover{color:var(--orange)}
#m-menu .m-sub{font-family:var(--util);font-size:.68rem;letter-spacing:.3em;color:var(--teal);margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid rgba(12,25,48,.12);text-transform:uppercase;opacity:0;transition:opacity .6s .3s}
#m-menu.open .m-sub{opacity:1}

#hero{
  position:relative;min-height:100svh;
  display:flex;flex-direction:column;justify-content:center;
  overflow:hidden;isolation:isolate;
  background:
    radial-gradient(1100px 620px at 78% -10%, rgba(47,166,174,.16), transparent 60%),
    radial-gradient(900px 520px at 8% 8%, rgba(241,90,41,.12), transparent 55%),
    linear-gradient(180deg, #0A1526 0%, var(--navy) 55%, #0A1424 100%);
}

.beams{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.beam{
  position:absolute;top:-22%;width:34vw;height:150%;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.015) 55%, transparent 78%);
  filter:blur(14px);transform-origin:top center;mix-blend-mode:screen;
  animation:beam-sway 11s ease-in-out infinite alternate;
}
.beam.b1{left:2%;transform:rotate(16deg)}
.beam.b2{right:4%;transform:rotate(-15deg);animation-delay:-5s;background:linear-gradient(180deg, rgba(47,166,174,.12), rgba(47,166,174,.02) 55%, transparent 78%)}
@keyframes beam-sway{
  from{transform:rotate(13deg)}
  to{transform:rotate(19deg)}
}
.beam.b2{animation-name:beam-sway2}
@keyframes beam-sway2{
  from{transform:rotate(-12deg)}
  to{transform:rotate(-18deg)}
}

#dust{position:absolute;inset:0;z-index:1;pointer-events:none}

.hero-star{
  position:absolute;z-index:0;right:-8%;top:6%;
  width:min(54vw,640px);aspect-ratio:1;opacity:.5;pointer-events:none;
  animation:spin 140s linear infinite;
}
.hero-star path{fill:none;stroke:rgba(47,166,174,.16);stroke-width:1.1}
.hero-star path.o{stroke:rgba(241,90,41,.14)}
@keyframes spin{to{transform:rotate(360deg)}}

.pitch-stage{
  position:absolute;left:50%;bottom:-9%;z-index:1;
  width:min(175vw, 1900px);height:66%;
  transform:translateX(-50%);
  pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 32%);
          mask-image:linear-gradient(180deg, transparent 0%, #000 32%);
}
.pitch-tilt{
  width:100%;height:100%;
  transform:perspective(1150px) rotateX(57deg);
  transform-origin:50% 100%;
}
.pitch-tilt svg{width:100%;height:100%}
.pitch-tilt .pl{
  fill:none;stroke:var(--teal);stroke-width:2;vector-effect:non-scaling-stroke;
  opacity:.55;stroke-dasharray:1;stroke-dashoffset:1;
  animation:draw 2.4s var(--ease) forwards;animation-delay:var(--dd,0s);
  filter:drop-shadow(0 0 6px rgba(47,166,174,.5));
}
.pitch-tilt .pl.faint{stroke:rgba(255,255,255,.35);opacity:.35;filter:none}
@keyframes draw{to{stroke-dashoffset:0}}
.pitch-glow{
  position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:70%;height:60%;
  background:radial-gradient(ellipse at 50% 100%, rgba(47,166,174,.22), transparent 65%);
  filter:blur(10px);
}
.center-star{fill:var(--orange);transform-origin:center;animation:star-pulse 3.2s ease-in-out infinite;filter:drop-shadow(0 0 14px rgba(241,90,41,.9))}
@keyframes star-pulse{0%,100%{opacity:.95}50%{opacity:.55}}

.hero-inner{position:relative;z-index:3;padding-top:7.5rem;padding-bottom:9rem}
.hero-eyebrow{opacity:0;animation:rise .9s var(--ease) .15s forwards}
#hero h1{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;
  font-size:clamp(3.55rem, 10.5vw, 8.6rem);
  line-height:.9;letter-spacing:.004em;margin-top:1.4rem;
}
#hero h1 .ln{display:block;overflow:hidden}
#hero h1 .ln span{display:block;transform:translateY(110%);animation:rise-h .95s var(--ease) forwards}
#hero h1 .ln:nth-child(1) span{animation-delay:.28s}
#hero h1 .ln:nth-child(2) span{animation-delay:.42s}
#hero h1 .ln:nth-child(3) span{animation-delay:.56s}
#hero h1 .hollow{
  color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.85);
}
#hero h1 .flare{color:var(--orange);font-style:italic;padding-right:.08em}
@keyframes rise-h{to{transform:translateY(0)}}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-sub{
  margin-top:1.7rem;max-width:56ch;color:var(--mut-d);
  font-size:clamp(1rem, 1.35vw, 1.14rem);
  opacity:0;animation:rise .9s var(--ease) .75s forwards;
}
.hero-cta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem;opacity:0;animation:rise .9s var(--ease) .92s forwards}

.hero-strip{
  position:absolute;left:0;right:0;bottom:0;z-index:4;
  border-top:1px solid var(--line-d);
  background:linear-gradient(180deg, rgba(10,20,37,.25), rgba(10,20,37,.72));
  backdrop-filter:blur(6px);
  opacity:0;animation:rise .9s var(--ease) 1.15s forwards;
}
.hero-strip .wrap{
  display:flex;align-items:stretch;justify-content:space-between;gap:1rem;
}
.hs-item{
  display:flex;flex-direction:column;gap:.15rem;padding:1.05rem 0;
  font-family:var(--util);
}
.hs-item b{font-size:1.05rem;font-weight:700;letter-spacing:.06em;color:#fff}
.hs-item span{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--mut-d)}
.hs-sep{width:1px;background:var(--line-d)}
.scroll-cue{display:flex;align-items:center;gap:.7rem;font-family:var(--util);font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--teal)}
.scroll-cue .dot{width:8px;height:14px;border:1.5px solid var(--teal);border-radius:8px;position:relative}
.scroll-cue .dot::after{content:"";position:absolute;left:50%;top:2px;width:2px;height:4px;background:var(--teal);border-radius:2px;transform:translateX(-50%);animation:cue 1.6s ease-in-out infinite}
@keyframes cue{0%{opacity:1;top:2px}70%{opacity:0;top:7px}100%{opacity:0;top:2px}}

.ticker{
  position:relative;z-index:5;background:var(--orange);
  transform:rotate(-1.1deg) scale(1.02);margin-top:calc(1.1vw + .3rem);
  box-shadow:0 20px 50px -20px rgba(241,90,41,.5);
  overflow:hidden;user-select:none;
}
.ticker-track{display:flex;width:max-content;animation:marquee 30s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-set{display:flex;align-items:center;white-space:nowrap;padding:.85rem 0}
.ticker-set i{
  font-style:normal;font-family:var(--disp);font-weight:700;font-size:1.28rem;
  letter-spacing:.09em;text-transform:uppercase;color:#fff;padding:0 1.3rem;
}
.ticker-set .st{width:15px;height:15px;fill:var(--navy);flex:none}
@keyframes marquee{to{transform:translateX(-50%)}}

.sec{position:relative;padding:clamp(5rem,9vw,8.5rem) 0}
.sec-light{background:var(--paper);color:var(--navy)}
.sec-dark{background:var(--navy);color:#fff}
.seam-t-light{clip-path:polygon(0 var(--seam), 100% 0, 100% 100%, 0 100%);margin-top:calc(-1*var(--seam));padding-top:calc(clamp(5rem,9vw,8.5rem) + var(--seam))}
.seam-t-dark{clip-path:polygon(0 0, 100% var(--seam), 100% 100%, 0 100%);margin-top:calc(-1*var(--seam));padding-top:calc(clamp(5rem,9vw,8.5rem) + var(--seam))}

.sec-head{margin-bottom:clamp(2.6rem,5vw,4.2rem);max-width:900px}
.sec-head .h-disp{margin-top:1.1rem}
.sec-head .lead{margin-top:1.2rem}

.wm{
  position:absolute;top:50%;right:-2%;z-index:0;pointer-events:none;user-select:none;
  font-family:var(--disp);font-weight:800;text-transform:uppercase;
  font-size:clamp(7rem,17vw,15rem);line-height:1;
  writing-mode:vertical-rl;transform:translateY(-50%);
  color:transparent;-webkit-text-stroke:1px rgba(12,25,48,.07);
}
.sec-dark .wm{-webkit-text-stroke:1px rgba(255,255,255,.05)}

.rv{opacity:0;transform:translateY(28px) scale(.955);transform-origin:50% 100%;transition:opacity .7s var(--ease), transform .7s cubic-bezier(.2,1.5,.35,1);transition-delay:var(--d,0s)}
.rv.on{opacity:1;transform:none}

#about .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2.5rem,5vw,5rem);position:relative;z-index:1}
.mv-stack{display:flex;flex-direction:column;gap:1.2rem}
.mv-card{
  position:relative;background:#fff;border:1px solid var(--line-l);border-radius:var(--r);
  padding:1.7rem 1.8rem 1.7rem 2.1rem;overflow:hidden;
  transition:transform .45s var(--ease), box-shadow .45s var(--ease);
}
.mv-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--orange)}
.mv-card.teal::before{background:var(--teal)}
.mv-card:hover{transform:translateY(-5px);box-shadow:0 24px 50px -24px rgba(12,25,48,.28)}
.mv-card h3{font-family:var(--disp);font-weight:700;font-size:1.5rem;letter-spacing:.05em;text-transform:uppercase;display:flex;align-items:center;gap:.6rem}
.mv-card h3 .st{width:15px;height:15px;fill:var(--orange)}
.mv-card.teal h3 .st{fill:var(--teal)}
.mv-card p{margin-top:.55rem;color:var(--mut-l);font-size:.95rem}

.stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  margin-top:clamp(3rem,6vw,4.5rem);border-top:1px solid var(--line-l);
  position:relative;z-index:1;
}
.stat{padding:1.8rem 1.4rem 0;border-left:1px solid var(--line-l)}
.stat:first-child{border-left:0;padding-left:0}
.stat b{
  font-family:var(--disp);font-weight:800;font-size:clamp(2.6rem,4.5vw,3.8rem);
  line-height:1;color:var(--navy);display:flex;align-items:baseline;
}
.stat b em{font-style:normal;color:var(--orange);font-size:.62em;margin-left:.1em}
.stat span{display:block;margin-top:.45rem;font-family:var(--util);font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--mut-l)}

#services .svc-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;position:relative;z-index:1;
}
.svc{
  position:relative;border:1px solid var(--line-d);border-radius:var(--r);
  background:linear-gradient(160deg, var(--navy-2), rgba(18,36,64,.35));
  padding:2rem 1.8rem 1.9rem;overflow:hidden;
  transition:transform .5s var(--ease), border-color .5s var(--ease), box-shadow .5s var(--ease);
  transform-style:preserve-3d;will-change:transform;
}
.svc::before{
  content:"";position:absolute;right:-34px;top:-34px;width:130px;height:130px;
  background:radial-gradient(circle at center, rgba(241,90,41,.16), transparent 65%);
  opacity:0;transition:opacity .5s;
}
.svc::after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--orange),var(--teal));
  transition:right .6s var(--ease);
}
.svc:hover{transform:translateY(-8px);border-color:rgba(47,166,174,.55);box-shadow:0 30px 60px -30px rgba(0,0,0,.75)}
.svc:hover::before{opacity:1}
.svc:hover::after{right:0}
.svc-ico{
  width:64px;height:64px;border-radius:12px;flex:none;
  background:rgba(47,166,174,.09);border:1px solid rgba(47,166,174,.3);
  display:grid;place-items:center;margin-bottom:1.3rem;
  transition:background .5s, border-color .5s, transform .5s var(--ease);
}
.svc:hover .svc-ico{background:rgba(241,90,41,.12);border-color:rgba(241,90,41,.55);transform:rotate(-4deg) scale(1.06)}
.svc-ico svg{width:36px;height:36px;fill:none;stroke:var(--teal);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .5s}
.svc:hover .svc-ico svg{stroke:var(--orange-2)}
.svc h3{font-family:var(--disp);font-weight:700;font-size:1.62rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.05}
.svc .svc-tag{font-family:var(--util);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--teal);margin-top:.3rem}
.svc p{color:var(--mut-d);font-size:.92rem;margin-top:.8rem}
.svc ul{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.42rem}
.svc ul li{
  position:relative;padding-left:1.25rem;font-size:.87rem;color:#C9D5E8;
}
.svc ul li::before{content:"\2605";position:absolute;left:0;top:0;color:var(--orange);font-size:.68rem;line-height:2.1}

#padel{background:linear-gradient(160deg,#0A1526 0%, var(--navy-2) 100%);overflow:hidden}
#padel .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2.5rem,6vw,5.5rem);align-items:center;position:relative;z-index:1}
.court-frame{
  position:relative;border:1px solid var(--line-d);border-radius:var(--r);
  background:
    radial-gradient(500px 300px at 50% 40%, rgba(241,90,41,.10), transparent 70%),
    linear-gradient(160deg,#10203A,#0C1930);
  padding:clamp(1.4rem,3vw,2.6rem);
  box-shadow:0 40px 80px -40px rgba(0,0,0,.8);
}
.court-frame::before{
  content:"COURT PLAN — 20M \00D7 10M";position:absolute;top:1rem;left:1.4rem;
  font-family:var(--util);font-size:.62rem;letter-spacing:.3em;color:var(--teal);
}
.court-frame::after{
  content:"STARDOM \2605 DESIGN & BUILD";position:absolute;bottom:1rem;right:1.4rem;
  font-family:var(--util);font-size:.62rem;letter-spacing:.3em;color:rgba(255,255,255,.35);
}
.court-frame svg{width:100%;height:auto;margin:1.4rem 0 1.2rem}
.court-frame .cl{
  fill:none;stroke:var(--teal);stroke-width:2;vector-effect:non-scaling-stroke;
  stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.7s var(--ease);
  transition-delay:var(--dd,0s);
  filter:drop-shadow(0 0 5px rgba(47,166,174,.55));
}
.court-frame .cl.wall{stroke:rgba(255,255,255,.55);stroke-width:3;filter:none}
.court-frame .cl.net{stroke:var(--orange);stroke-dasharray:0.02 0.012;stroke-dashoffset:1.032}
.court-frame.draw .cl{stroke-dashoffset:0}
.court-frame.draw .cl.net{stroke-dashoffset:0}
.court-ball{fill:var(--orange);filter:drop-shadow(0 0 8px rgba(241,90,41,.9))}
.court-frame.draw .court-ball{animation:rally 5.5s ease-in-out 1.8s infinite}
@keyframes rally{
  0%,100%{transform:translate(0,0)}
  25%{transform:translate(170px,52px)}
  50%{transform:translate(46px,96px)}
  75%{transform:translate(196px,20px)}
}
.padel-feat{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.6rem;margin-top:1.8rem}
.pf{display:flex;gap:.8rem;align-items:flex-start}
.pf .st{width:14px;height:14px;fill:var(--orange);flex:none;margin-top:.3rem}
.pf b{display:block;font-family:var(--disp);font-weight:700;font-size:1.12rem;letter-spacing:.05em;text-transform:uppercase}
.pf span{font-size:.85rem;color:var(--mut-d)}

#why .why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;position:relative;z-index:1}
.why-card{
  background:#fff;border:1px solid var(--line-l);border-radius:var(--r);
  padding:2rem 2rem 1.9rem;display:flex;gap:1.4rem;align-items:flex-start;
  transition:transform .45s var(--ease), box-shadow .45s var(--ease);
}
.why-card:hover{transform:translateY(-6px);box-shadow:0 28px 55px -28px rgba(12,25,48,.3)}
.why-badge{
  width:56px;height:56px;flex:none;border-radius:12px;display:grid;place-items:center;
  background:var(--navy);position:relative;overflow:hidden;
}
.why-badge .st{width:24px;height:24px;fill:var(--orange);position:relative;z-index:1}
.why-card:nth-child(even) .why-badge{background:var(--orange)}
.why-card:nth-child(even) .why-badge .st{fill:#fff}
.why-card h3{font-family:var(--disp);font-weight:700;font-size:1.5rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.05}
.why-card p{margin-top:.5rem;color:var(--mut-l);font-size:.93rem}

.sectors{margin-top:clamp(2.8rem,5vw,4rem);border-top:1px dashed var(--line-l);padding-top:1.6rem;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;position:relative;z-index:1}
.sectors .lbl{font-family:var(--util);font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:var(--mut-l);margin-right:.6rem}
.chip{
  font-family:var(--util);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;
  padding:.5rem .95rem;border:1px solid var(--line-l);border-radius:100px;color:var(--navy);
  transition:.35s var(--ease);
}
.chip:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px)}

#clients{overflow:hidden}
.logo-row{display:flex;width:max-content;gap:1rem;margin-top:1rem}
.logo-row.r1{animation:marquee 46s linear infinite}
.logo-row.r2{animation:marquee-rev 52s linear infinite}
#clients .rows:hover .logo-row{animation-play-state:paused}
@keyframes marquee-rev{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.logo-set{display:flex;gap:1rem;padding-right:1rem}
.fade-edges{position:relative}
.fade-edges::before,.fade-edges::after{
  content:"";position:absolute;top:0;bottom:0;width:12%;z-index:2;pointer-events:none;
}
.fade-edges::before{left:0;background:linear-gradient(90deg,var(--navy),transparent)}
.fade-edges::after{right:0;background:linear-gradient(-90deg,var(--navy),transparent)}

#cta-band{
  position:relative;overflow:hidden;
  background:linear-gradient(120deg, var(--orange) 0%, #D9481B 100%);
  padding:clamp(4rem,7vw,6rem) 0;
}
#cta-band .big-star{
  position:absolute;right:-6%;top:50%;width:min(46vw,520px);aspect-ratio:1;
  transform:translateY(-50%);opacity:.16;animation:spin 90s linear infinite;
}
#cta-band .big-star path{fill:#fff}
#cta-band .inner{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem}
#cta-band h2{font-size:clamp(2.4rem,5vw,4rem);max-width:14ch}
#cta-band h2 i{font-style:italic;-webkit-text-stroke:1.5px #fff;color:transparent}
#cta-band .btn-solid{background:var(--navy);box-shadow:0 14px 34px -12px rgba(0,0,0,.5)}
#cta-band .btn-solid:hover{box-shadow:0 22px 44px -14px rgba(0,0,0,.6)}
#cta-band .sub{font-family:var(--util);letter-spacing:.2em;font-size:.74rem;text-transform:uppercase;color:rgba(255,255,255,.85);margin-top:.9rem}

#contact .grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2.5rem,5vw,4.5rem);position:relative;z-index:1}
.c-cards{display:flex;flex-direction:column;gap:1.1rem}
.c-card{
  display:flex;gap:1.2rem;align-items:flex-start;
  background:linear-gradient(160deg,var(--navy-2), rgba(18,36,64,.4));
  border:1px solid var(--line-d);border-radius:var(--r);padding:1.45rem 1.5rem;
  transition:.4s var(--ease);
}
.c-card:hover{border-color:rgba(47,166,174,.5);transform:translateX(6px)}
.c-ico{
  width:48px;height:48px;flex:none;border-radius:10px;display:grid;place-items:center;
  background:rgba(241,90,41,.12);border:1px solid rgba(241,90,41,.4);
}
.c-ico svg{width:22px;height:22px;fill:none;stroke:var(--orange-2);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.c-card h4{font-family:var(--util);font-size:.68rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--teal)}
.c-card p{margin-top:.35rem;font-size:.98rem;color:#E4EBF6;line-height:1.75}
.c-card a{transition:color .3s}
.c-card a:hover{color:var(--orange-2)}
.c-card small{display:block;color:var(--mut-d);font-size:.8rem;margin-top:.1rem}

.q-form{
  background:linear-gradient(160deg,var(--navy-2), rgba(18,36,64,.35));
  border:1px solid var(--line-d);border-radius:var(--r);
  padding:clamp(1.8rem,3.5vw,2.6rem);position:relative;overflow:hidden;
}
.q-form::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--orange),var(--teal))}
.q-form h3{font-family:var(--disp);font-weight:800;font-size:2rem;letter-spacing:.04em;text-transform:uppercase}
.q-form .fnote{color:var(--mut-d);font-size:.85rem;margin-top:.4rem}
.f-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
.f-field{display:flex;flex-direction:column;gap:.45rem}
.f-field.full{grid-column:1/-1}
.f-field label{font-family:var(--util);font-size:.66rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--teal)}
.f-field input,.f-field select,.f-field textarea{
  font-family:var(--body);font-size:.95rem;color:#fff;
  background:rgba(10,20,37,.6);border:1px solid var(--line-d);border-radius:9px;
  padding:.85rem 1rem;transition:border-color .3s, box-shadow .3s;
  appearance:none;-webkit-appearance:none;
}
.f-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232FA6AE' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}
.f-field textarea{min-height:120px;resize:vertical}
.f-field input:focus,.f-field select:focus,.f-field textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(241,90,41,.18)}
.f-field ::placeholder{color:#5F7292}
.q-form .btn{margin-top:1.4rem;width:100%;justify-content:center}
.form-ok{display:none;margin-top:1rem;font-family:var(--util);font-size:.78rem;letter-spacing:.1em;color:var(--teal)}
.form-ok.show{display:block}

footer{background:#081120;position:relative;overflow:hidden;border-top:1px solid var(--line-d)}
.f-cols{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem;
  padding:clamp(2.5rem,5vw,4rem) 0 3rem;position:relative;z-index:1;
}
.f-cols h5{font-family:var(--util);font-size:.68rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--teal);margin-bottom:1.1rem}
.f-cols p, .f-cols li, .f-cols a{color:var(--mut-d);font-size:.9rem}
.f-cols ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.f-cols a{transition:color .3s, padding-left .3s}
.f-cols a:hover{color:#fff;padding-left:.35rem}
.f-brand .brand-img{height:54px}
.f-brand p{margin-top:1rem;max-width:34ch}
.f-social{display:flex;gap:.7rem;margin-top:1.3rem}
.f-social a{
  width:40px;height:40px;border:1px solid var(--line-d);border-radius:10px;
  display:grid;place-items:center;transition:.35s var(--ease);
}
.f-social a svg{width:17px;height:17px;fill:var(--mut-d);transition:fill .35s}
.f-social a:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-3px)}
.f-social a:hover svg{fill:#fff}
.f-bottom{
  border-top:1px solid var(--line-d);padding:1.4rem 0;
  display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;
  font-family:var(--util);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#5F7292;
}
.f-bottom b{color:var(--mut-d);font-weight:600}

#wa-float{
  position:fixed;right:1.4rem;bottom:1.4rem;z-index:998;
  width:58px;height:58px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;
  box-shadow:0 12px 30px -8px rgba(37,211,102,.6);
  transition:transform .35s var(--ease), box-shadow .35s;
}
#wa-float:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 18px 40px -10px rgba(37,211,102,.75)}
#wa-float svg{width:30px;height:30px;fill:#fff}
#wa-float::after{
  content:"";position:absolute;inset:-6px;border-radius:50%;
  border:2px solid rgba(37,211,102,.5);animation:wa-ping 2.4s ease-out infinite;
}
@keyframes wa-ping{0%{transform:scale(.85);opacity:1}100%{transform:scale(1.35);opacity:0}}

@media (max-width:1080px){
  #services .svc-grid{grid-template-columns:repeat(2,1fr)}
  .f-cols{grid-template-columns:1fr 1fr}
  .stats{grid-template-columns:repeat(2,1fr);gap:1.6rem 0}
  .stat:nth-child(3){border-left:0;padding-left:0}
  .wm{display:none}
}
@media (max-width:900px){
  .nav-links{display:none}
  .nav-cta .btn-ghost{display:none}
  #burger{display:flex}
  #about .grid, #padel .grid, #contact .grid{grid-template-columns:1fr}
  .hero-strip .wrap{flex-wrap:wrap;row-gap:0}
  .hs-sep{display:none}
  .hs-item{padding:.7rem 1.2rem .7rem 0}
  .scroll-cue{display:none}
  .hero-star{right:-30%;top:2%;opacity:.35}
  #hero h1{font-size:clamp(2.9rem,11vw,5.2rem)}
  .h-sec{font-size:clamp(2.1rem,7vw,3.3rem)}
  .sec{padding:clamp(4rem,10vw,6rem) 0}
  .pitch-stage{height:52%;bottom:-6%}
  #cta-band .inner{flex-direction:column;align-items:flex-start;gap:1.6rem}
}
@media (max-width:640px){
  #services .svc-grid, #why .why-grid, .f-grid, .padel-feat{grid-template-columns:1fr}
  .f-cols{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}
  .hero-inner{padding-top:6.5rem;padding-bottom:11rem}
  .ticker-set i{font-size:1.05rem}
  #wa-float{width:52px;height:52px;right:1rem;bottom:1rem}
  #cta-band h2{max-width:100%}
  .btn{padding:.86rem 1.2rem;font-size:.78rem;letter-spacing:.1em}
  .hero-cta .btn{flex:1 1 100%;justify-content:center}
  .stat{padding:1.2rem 1rem 0}
  .stat:nth-child(odd){border-left:0;padding-left:0}
  .q-form{padding:1.4rem}
  .sectors{gap:.45rem}
  .eyebrow{font-size:.68rem;letter-spacing:.24em}
  footer .f-cols{gap:2rem}
}
@media (max-width:400px){
  .brand-img{height:32px}
  .nav-cta .btn-solid{padding:.7rem .95rem;font-size:.7rem;letter-spacing:.08em}
  #hero h1{font-size:clamp(2.5rem,12vw,3.4rem)}
  .hero-sub{font-size:.95rem}
}

@media (max-height:700px) and (min-width:901px){
  .hero-inner{padding-top:6.2rem;padding-bottom:7.5rem}
}

@supports not (-webkit-text-stroke: 1px #fff){
  #hero h1 .hollow{color:rgba(255,255,255,.85)}
  #cta-band h2 i{color:#fff}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .rv{opacity:1;transform:none}
  .pitch-tilt .pl,.court-frame .cl{stroke-dashoffset:0 !important}
  #hero h1 .ln span{transform:none}
  .hero-eyebrow,.hero-sub,.hero-cta,.hero-strip{opacity:1}
  .ticker-track,.logo-row{animation:none !important;transform:none !important}
  #dust{display:none}
  #hball,.b-hint{display:none !important}
  #build.sec{padding:clamp(4rem,7vw,6rem) 0}
  #build .b-pin{height:auto;max-height:none;overflow:visible;padding:0}
  .b-stage{grid-template-rows:auto}
  .b-scene{height:auto}
  #bsvg{height:auto}
  #cta-band::after{animation:none}
  .b-step{opacity:1}
}

html.anim .hero-eyebrow,html.anim .hero-sub,html.anim .hero-cta,html.anim .hero-strip{animation:none;opacity:1}
html.anim #hero h1 .ln span{animation:none;transform:none}
html.anim .ticker-track,html.anim .logo-row.r1,html.anim .logo-row.r2{animation:none}
html.anim .rv{opacity:1;transform:none;transition:none}
html:not(.anim) #hball{display:none}
html:not(.anim) .b-hint{display:none}
html:not(.anim) .b-step{opacity:1}

#site-head{transition:transform .45s var(--ease),background .35s,box-shadow .35s,border-color .35s}

#site-head.hidden{transform:none}

.wm2{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.1em;margin-bottom:-.1em}
.wm2 .wi{display:inline-block;will-change:transform}

#hball{position:absolute;left:0;top:0;width:30px;height:30px;z-index:2;cursor:pointer;opacity:0;pointer-events:auto;filter:drop-shadow(0 8px 12px rgba(0,0,0,.5))}

html.anim .svc:hover .svc-ico svg *{animation:icodraw .85s var(--ease) forwards}
@keyframes icodraw{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}

#build{background:linear-gradient(180deg,#0B1830 0%,#0A1526 55%,#0C1930 100%)}

#build.sec, #build.sec.seam-t-dark{padding:0}

#build .b-pin{
  height:100svh;max-height:100svh;min-height:480px;
  display:flex;flex-direction:column;justify-content:center;
  padding:calc(clamp(4.4rem,8svh,6rem) + var(--seam)*.5) 0 clamp(1rem,2.6svh,2.6rem);
  overflow:hidden;
}
#build .b-pin > .wrap{display:flex;flex-direction:column;flex:1;min-height:0}
#build .sec-head{margin-bottom:clamp(.5rem,1.5svh,1.4rem);flex:none}
#build .sec-head .h-sec{font-size:clamp(1.9rem,4.2vw,3.5rem)}
#build .sec-head .lead{font-size:clamp(.88rem,1.15vw,1.02rem);margin-top:.5rem}
#build .sec-head .eyebrow{font-size:clamp(.62rem,.8vw,.78rem)}
.b-stage{
  flex:1;min-height:0;display:grid;
  grid-template-columns:minmax(220px,320px) minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
  gap:clamp(1rem,3vw,3.2rem);align-items:stretch;
}
.b-steps{list-style:none;display:flex;flex-direction:column;justify-content:center;gap:clamp(.26rem,.7svh,.5rem);min-height:0;overflow:hidden}
.b-step{display:flex;gap:.85rem;align-items:flex-start;padding:clamp(.42rem,1svh,.68rem) .85rem;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02);opacity:.4;transition:opacity .3s,border-color .3s,background .3s}
.b-step i{font-family:var(--util);font-style:normal;font-weight:700;font-size:.68rem;letter-spacing:.12em;color:var(--teal);border:1.5px solid rgba(47,166,174,.5);border-radius:8px;padding:.26rem .38rem;min-width:34px;text-align:center;transition:background .3s,color .3s,border-color .3s}
.b-step b{display:block;font-family:var(--disp);font-weight:700;font-size:clamp(.88rem,1.5svh,1rem);letter-spacing:.05em;text-transform:uppercase;color:#fff}
.b-step small{display:block;font-size:clamp(.68rem,1.15svh,.76rem);color:var(--mut-d);margin-top:.12rem;line-height:1.4}
.b-step.act{opacity:1;border-color:rgba(47,166,174,.55);background:rgba(47,166,174,.07)}
.b-step.act i{background:var(--teal);border-color:var(--teal);color:#062229}
.b-step.done{opacity:.85}
.b-step.done i{background:var(--orange);border-color:var(--orange);color:#fff}
.b-scene{position:relative;min-width:0;min-height:0;height:100%;display:flex;align-items:center;justify-content:center}
#bsvg{width:100%;height:100%;max-height:100%;display:block}
#bsvg text{text-transform:uppercase}
.bt{font-family:var(--util);font-size:10.5px;letter-spacing:.12em;fill:#8FA2BC}
.bt2{font-family:var(--util);font-weight:700;font-size:13.5px;letter-spacing:.3em;fill:var(--paper)}
.plot{stroke:var(--teal);stroke-width:1.6;stroke-dasharray:.014 .008;fill:none;opacity:.9;vector-effect:non-scaling-stroke}
.stk{fill:var(--teal)}
.cl2{stroke:#F3F7F3;stroke-width:2.2;fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round}
.mast{stroke:#9FB2C8;stroke-width:3;stroke-linecap:round;fill:none}
.lampdot{fill:#FFD9A8}
.glp{stroke:#EAF2F0;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.flg{stroke:#D8E2EA;stroke-width:2;stroke-linecap:round}
.flgp{fill:var(--orange)}
.tagl{stroke:#5E7390;stroke-width:1.2;fill:none}
.b-hint{position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);display:flex;flex-direction:column;gap:.5rem;align-items:center;font-family:var(--util);font-size:.64rem;letter-spacing:.32em;text-transform:uppercase;color:var(--teal);transition:opacity .4s;pointer-events:none}
.b-hint::after{content:"";width:1.5px;height:24px;background:linear-gradient(var(--teal),transparent);animation:hintdrop 1.5s ease-in-out infinite}
@keyframes hintdrop{0%{transform:scaleY(0);transform-origin:top;opacity:1}60%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
.b-now{display:none;position:absolute;left:50%;top:-2px;transform:translateX(-50%);white-space:nowrap;font-family:var(--util);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#fff;border:1px solid rgba(47,166,174,.5);border-radius:999px;padding:.5rem 1rem;background:rgba(12,25,48,.72);backdrop-filter:blur(6px)}
#build .wm{top:auto;bottom:2%}
@media (max-width:1080px){
  .b-stage{grid-template-columns:minmax(200px,262px) minmax(0,1fr);gap:1.4rem}
}
@media (max-width:900px){
  .b-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);gap:.4rem}
  .b-steps{display:none}
  .b-now{display:block;top:0}
  #build .b-pin{justify-content:flex-start;padding-top:clamp(4.6rem,11svh,5.6rem)}
  #build .sec-head .lead{display:none}
  #build .sec-head .h-sec{font-size:clamp(1.85rem,7.2vw,2.7rem)}
  .b-scene{padding-top:2.4rem}
  .b-hint{bottom:.25rem}
}

@media (max-height:760px){
  #build .sec-head .lead{display:none}
  #build .sec-head{margin-bottom:.4rem}
}
@media (max-height:620px){
  #build .sec-head .h-sec{font-size:clamp(1.6rem,3.4vw,2.2rem)}
  #build .sec-head .eyebrow{display:none}
  .b-step small{display:none}
}

#cta-band{position:relative;overflow:hidden}
#cta-band::after{content:"";position:absolute;inset:-80px;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.055) 0 22px,transparent 22px 44px);animation:ctastripes 2.8s linear infinite;pointer-events:none}
#cta-band .wrap{position:relative;z-index:1}
@keyframes ctastripes{to{transform:translateX(62.2px)}}

:root{
  --mut-d:#56647A;
  --line-d:rgba(12,25,48,.14);
}
body{background:var(--paper);color:var(--navy)}
::-webkit-scrollbar-track{background:var(--paper)}
::-webkit-scrollbar-thumb{background:#C9C6BA;border:2px solid var(--paper)}

header.scrolled{background:rgba(250,249,245,.88);box-shadow:0 1px 0 var(--line-l),0 14px 40px -26px rgba(12,25,48,.25)}
.nav-links a:hover,.nav-links a.active{color:var(--navy)}
#burger span{background:var(--navy)}
.btn-ghost{border-color:var(--line-l);color:var(--navy);background:transparent}
.btn-ghost:hover{background:rgba(12,25,48,.06);border-color:var(--teal-d)}
#m-menu{background:rgba(248,247,242,.97)}
#m-menu a{color:var(--navy)}
#m-menu .m-sub{color:var(--teal-d)}

#hero{background:
  radial-gradient(1100px 620px at 78% -10%, rgba(47,166,174,.14), transparent 60%),
  radial-gradient(900px 520px at 8% 8%, rgba(241,90,41,.10), transparent 55%),
  linear-gradient(180deg,#FDFCF8 0%, var(--paper) 55%, #EFEDE6 100%)}
.beam{background:linear-gradient(180deg, rgba(47,166,174,.14), rgba(47,166,174,.02) 55%, transparent 78%);mix-blend-mode:multiply;opacity:.55}
.beam.b2{background:linear-gradient(180deg, rgba(241,90,41,.10), rgba(241,90,41,.015) 55%, transparent 78%)}
.hero-star path{stroke:rgba(12,25,48,.14)}
.hero-star path.o{stroke:rgba(241,90,41,.22)}
.pitch-tilt .pl.faint{stroke:rgba(12,25,48,.26)}
#hero h1{color:var(--navy)}
#hero h1 .hollow{-webkit-text-stroke:2px rgba(12,25,48,.8)}
@supports not (-webkit-text-stroke: 1px #fff){#hero h1 .hollow{color:rgba(12,25,48,.8)}}
.hero-strip{background:linear-gradient(180deg, rgba(255,255,255,.4), rgba(255,255,255,.82));backdrop-filter:blur(8px)}
.hs-item b{color:var(--navy)}
.eyebrow.on-dark{color:var(--teal-d)}
#hball > circle{stroke:#26313F;stroke-width:1.4}

.sec-dark{background:#fff;color:var(--navy)}
.sec-dark .wm{-webkit-text-stroke:1px rgba(12,25,48,.055)}

.svc{background:#fff;border-color:var(--line-l);box-shadow:0 14px 34px -26px rgba(12,25,48,.22)}
.svc:hover{box-shadow:0 30px 60px -32px rgba(12,25,48,.35)}
.svc ul li{color:#3C4D63}
.svc h3{color:var(--navy)}
.svc .svc-tag{color:var(--teal-d)}

#build{background:linear-gradient(180deg,#FFFFFF 0%,#F8F7F2 55%,#F1EFE8 100%)}
.b-step{background:#fff;border-color:var(--line-l)}
.b-step i{color:var(--teal-d);border-color:rgba(24,120,128,.45)}
.b-step b{color:var(--navy)}
.b-step small{color:var(--mut-l)}
.b-now{color:var(--navy);background:rgba(255,255,255,.85);border-color:rgba(24,120,128,.45)}
.b-hint{color:var(--teal-d)}
.bt{fill:#4E6076}
.tagl{stroke:#7E8DA0}
.mast{stroke:#5E7183}
.lampdot{fill:var(--orange)}
.glp{stroke:#47607A}
.flg{stroke:#47607A}
#beams{mix-blend-mode:multiply !important}
#bsvg .beam{fill:#2FA6AE;opacity:.10;mix-blend-mode:multiply}
#vigG stop{stop-color:#0C1930}
#vign{opacity:.12}
#uglow{opacity:.16}

#padel{background:linear-gradient(160deg,#FFFFFF 0%, #F3F1EA 100%)}
.fade-edges::before{background:linear-gradient(90deg,#fff,transparent)}
.fade-edges::after{background:linear-gradient(-90deg,#fff,transparent)}

#cta-band{color:#fff}
#cta-band .lead, #cta-band p{color:rgba(255,255,255,.88)}
#cta-band .btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.06)}
#cta-band .btn-ghost:hover{background:rgba(255,255,255,.14);border-color:#fff}

.c-card{background:#fff;border-color:var(--line-l)}
.c-card p{color:#2C3C52}
.c-card h4{color:var(--teal-d)}
.q-form{background:#fff;border-color:var(--line-l);box-shadow:0 24px 50px -34px rgba(12,25,48,.3)}
.f-field label{color:var(--teal-d)}
.f-field input,.f-field select,.f-field textarea{background:#F7F6F1;color:var(--navy);border-color:var(--line-l)}
.f-field ::placeholder{color:#98A0AF}
.form-ok{color:var(--teal-d)}

footer{background:#EFEDE6;border-top:1px solid var(--line-l)}
.f-cols h5{color:var(--teal-d)}
.f-cols a:hover{color:var(--navy)}
.f-bottom{color:#7B8496}
.f-bottom b{color:var(--mut-l)}
.f-social a:hover svg{fill:#fff}

:root{ --util:"Barlow Condensed","Arial Narrow",sans-serif; }
.eyebrow{font-size:.86rem;font-weight:700;letter-spacing:.2em}
.btn{font-weight:700;font-size:.94rem;letter-spacing:.09em}
.c-card h4,.f-cols h5,.f-field label,.sectors .lbl,.svc-tag,.hs-item span,.stat span{letter-spacing:.16em}
.b-step i,.b-now,.b-hint{letter-spacing:.14em}

.eyebrow .st{display:none}
.eyebrow::before{content:"";width:30px;height:2px;flex:none;border-radius:2px;background:var(--orange)}
.eyebrow.on-light{color:var(--mut-l)}
.eyebrow.on-dark{color:var(--mut-d)}
.svc .svc-tag{color:var(--mut-l)}
.c-card h4{color:var(--mut-l)}
.f-field label{color:var(--mut-l)}
.sectors .lbl{color:var(--mut-l)}
.svc:hover{border-color:rgba(241,90,41,.5)}
.svc-ico{background:rgba(12,25,48,.05);border-color:var(--line-l)}
.svc-ico svg{stroke:var(--navy)}
.svc:hover .svc-ico{background:rgba(241,90,41,.1);border-color:rgba(241,90,41,.5)}
.svc::after{background:var(--orange)}
.c-card:hover{border-color:transparent}
.m-sub{color:var(--mut-l)}

#about .h-sec .alt, #services .h-sec .alt, #why .h-sec .alt,
#clients .h-sec .alt, #contact .h-sec .alt{
  color:inherit;font-style:normal;padding-right:0;
}

.hero-star{animation:none;opacity:.28}
.beam{animation:none}
.center-star{animation:none;opacity:.9}
#cta-band::after{animation:none;opacity:.5}
#wa-float::after{display:none}
.court-frame.draw .court-ball{animation-duration:9s}

#why .why-grid{counter-reset:why;gap:2.2rem 3rem}
.why-card{
  counter-increment:why;
  background:transparent;border:0;border-top:2px solid var(--line-l);border-radius:0;
  padding:1.5rem 0 0;gap:1.2rem;box-shadow:none;
}
.why-card:hover{transform:none;box-shadow:none;border-top-color:var(--orange)}
.why-badge,.why-card:nth-child(even) .why-badge{
  width:auto;height:auto;border-radius:0;background:transparent;display:block;overflow:visible;
}
.why-badge .st{display:none}
.why-badge::before{
  content:counter(why,decimal-leading-zero);
  font-family:var(--disp);font-weight:800;font-size:2.7rem;line-height:.9;
  color:var(--orange);display:block;
}

.c-card,.c-card:hover{
  background:transparent;border:0;border-bottom:1px solid var(--line-l);
  border-radius:0;padding:0 0 1.3rem;transform:none;box-shadow:none;
}
.c-cards{gap:1.3rem}
.c-ico{background:transparent;border:0;width:34px;height:34px}
.c-ico svg{width:26px;height:26px;stroke:var(--orange)}

#why .sec-head,#clients .sec-head{margin-inline:auto;text-align:center}
#why .sec-head .lead,#clients .sec-head .lead{margin-inline:auto}
#why .sec-head .eyebrow,#clients .sec-head .eyebrow{justify-content:center}
#about .sec, #why{padding-bottom:clamp(4rem,7vw,6.5rem)}

#build{background:linear-gradient(180deg,#0B1830 0%,#0A1526 55%,#0C1930 100%)}
#build .wm{-webkit-text-stroke:1px rgba(255,255,255,.05)}
#build .h-sec{color:#fff}
#build .lead{color:var(--mut-d)}
#build .eyebrow{color:#8DA0B8}
.b-step{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}
.b-step i{color:var(--teal);border-color:rgba(47,166,174,.5)}
.b-step b{color:#fff}
.b-step small{color:#94A6C0}
.b-step.act{border-color:rgba(47,166,174,.6);background:rgba(47,166,174,.09)}
.b-now{color:#fff;background:rgba(12,25,48,.75);border-color:rgba(47,166,174,.5)}
.b-hint{color:var(--teal)}
.bt{fill:#8FA2BC}
.tagl{stroke:#5E7390}
.mast{stroke:#9FB2C8}
.lampdot{fill:#FFD9A8}
.glp{stroke:#EAF2F0}
.flg{stroke:#D8E2EA}
#beams{mix-blend-mode:screen !important}
#bsvg .beam{fill:#CFEFFF;opacity:.16;mix-blend-mode:screen}
#vign{opacity:.5}
#uglow{opacity:.2}

#padel{background:linear-gradient(160deg,#0C1930 0%,#0A1526 100%)}
#padel .h-sec{color:#fff}
#padel .lead{color:var(--mut-d)}
#padel .eyebrow{color:#8DA0B8}
.pf b{color:#fff}
.pf span{color:#94A6C0}

#clients{background:var(--navy)}
#clients .wm{-webkit-text-stroke:1px rgba(255,255,255,.05)}
#clients .h-sec{color:#fff}
#clients .lead{color:var(--mut-d)}
#clients .eyebrow{color:#8DA0B8}
.fade-edges::before{background:linear-gradient(90deg,var(--navy),transparent)}
.fade-edges::after{background:linear-gradient(-90deg,var(--navy),transparent)}

footer{background:#081120;border-top:0;color:#C9D3E2}
.f-cols h5{color:#8DA0B8}
.f-brand p{color:#94A6C0}
.f-cols a{color:#C9D3E2}
.f-cols a:hover{color:#fff}
.f-cols li{color:#94A6C0}
.f-bottom{color:#7A879B;border-top-color:rgba(255,255,255,.1)}
.f-bottom b{color:#C9D3E2}
.f-social a{border-color:rgba(255,255,255,.14)}
.f-social a svg{fill:#C9D3E2}

.btn-ghost{border-color:rgba(12,25,48,.3);color:var(--navy)}
.btn-ghost .st{fill:var(--orange)}
#padel .btn-ghost,#build .btn-ghost,#clients .btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
#cta-band .btn-ghost{border-color:rgba(255,255,255,.6);color:#fff}
.chip{border-color:var(--line-l)}

@media (prefers-reduced-motion: reduce){
  .logo-row,.ticker-track{animation:none !important}
}

#build .lead, #padel .lead, #clients .lead{color:#C6D3E4}
#build .eyebrow, #padel .eyebrow, #clients .eyebrow{color:#AEBFD4}
.pf span{color:#C6D3E4}

.b-step{opacity:.62}
.b-step small{color:#BFCDDF}
.b-step.done{opacity:.94}
.b-step.act{opacity:1}
.b-step i{color:#5FD3DB;border-color:rgba(95,211,219,.55)}

.f-brand p, .f-cols li{color:#BCC9DA}
.f-cols a{color:#D3DCE9}
.f-bottom{color:#93A0B4}

#about .grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
#padel .grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
#contact .grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.f-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.stats{grid-template-columns:repeat(4,minmax(0,1fr))}
#services .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#why .why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.f-cols{grid-template-columns:1.4fr repeat(3,minmax(0,1fr))}

.f-field{min-width:0}
.f-field input,.f-field select,.f-field textarea{
  width:100%;min-width:0;max-width:100%;box-sizing:border-box;
}
.q-form,.c-card,.svc,.why-card,.mv-card{min-width:0}
.c-card p{overflow-wrap:anywhere}
.grid,.svc-grid,.why-grid,.f-grid,.f-cols,.stats{min-width:0}

@media (max-width:1080px){
  #services .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:900px){
  #about .grid,#padel .grid,#contact .grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .f-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  #services .svc-grid,#why .why-grid{grid-template-columns:minmax(0,1fr)}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-cols{grid-template-columns:minmax(0,1fr)}
}

#court{cursor:crosshair}
.court-frame.track .court-ball{animation:none !important}
.court-ball{transition:r .3s var(--ease)}
.court-frame.track .court-ball{r:6.5}
.ball-trail{fill:var(--orange);opacity:0;pointer-events:none}
.ball-halo{fill:none;stroke:var(--orange);stroke-width:1.2;opacity:0;pointer-events:none}

.page-head{
  position:relative;isolation:isolate;
  background:linear-gradient(160deg,#0A1526 0%,#0C1930 55%,#14274a 100%);
  padding:clamp(8rem,15vh,11rem) 0 clamp(3.5rem,7vw,5.5rem);
  overflow:hidden;
}
.page-head::before{
  content:"";position:absolute;inset:0;z-index:0;opacity:.5;
  background-image:
    linear-gradient(rgba(47,166,174,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(47,166,174,.07) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(120% 80% at 70% 0%,#000,transparent 75%);
          mask-image:radial-gradient(120% 80% at 70% 0%,#000,transparent 75%);
}
.page-head .wrap{position:relative;z-index:2}
.page-head h1{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;
  font-size:clamp(2.6rem,6.5vw,5rem);line-height:.94;letter-spacing:-.01em;
  color:#fff;margin:.6rem 0 0;
}
.page-head h1 .alt{color:var(--orange);font-style:italic}
.page-head .lead{margin-top:1.1rem;max-width:60ch}

.page-head + .sec.seam-t-light,
.page-head + .sec.seam-t-dark{margin-top:0}

.svc-media{
  position:relative;margin:-1.9rem -1.9rem 1.5rem;
  aspect-ratio:16/10;overflow:hidden;
  border-radius:16px 16px 0 0;
  background:linear-gradient(135deg,rgba(12,25,48,.08),rgba(47,166,174,.1));
}
.svc-media::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:repeating-linear-gradient(45deg,rgba(12,25,48,.045) 0 12px,transparent 12px 24px);
}
.svc-media img{
  position:relative;z-index:1;
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .7s var(--ease);
}
.svc:hover .svc-media img{transform:scale(1.05)}
.svc-media::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:45%;z-index:2;
  background:linear-gradient(180deg,transparent,rgba(10,20,38,.35));
  pointer-events:none;
}
.svc:has(.svc-media) .svc-ico{margin-top:0}

@media (max-width:640px){
  .svc-media{margin:-1.5rem -1.5rem 1.2rem;aspect-ratio:16/9}
  .page-head{padding-top:clamp(7rem,14vh,9rem)}
}

.nav-cta .btn-ghost{white-space:nowrap;gap:.5rem}
.nav-cta .btn-ghost .st{width:13px;height:13px;flex:none}
@media (max-width:1180px){
  .nav-cta .btn-ghost .st{display:none}
}

#site-head{background:transparent;border-bottom:1px solid transparent}
#site-head.scrolled{
  background:rgba(247,246,242,.82);
  -webkit-backdrop-filter:saturate(180%) blur(18px);
          backdrop-filter:saturate(180%) blur(18px);
  border-bottom-color:rgba(12,25,48,.1);
  box-shadow:0 10px 30px -18px rgba(12,25,48,.45);
}
#site-head.scrolled .nav-links a{color:var(--navy)}
#site-head.scrolled .btn-ghost{border-color:rgba(12,25,48,.3);color:var(--navy);background:transparent}
#site-head.scrolled #burger span{background:var(--navy)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  #site-head.scrolled{background:rgba(247,246,242,.97)}
}
.d-04{--d:.04s}
.d-05{--d:.05s}
.d-08{--d:.08s}
.d-1{--d:.1s}
.d-11{--d:.11s}
.d-12{--d:.12s}
.d-15{--d:.15s}
.d-16{--d:.16s}
.d-17{--d:.17s}
.d-19{--d:.19s}
.d-2{--d:.2s}
.d-23{--d:.23s}
.d-24{--d:.24s}
.d-26{--d:.26s}
.d-32{--d:.32s}
.d-38{--d:.38s}
.d-46{--d:.46s}
.dd-1{--dd:.1s}
.dd-11{--dd:1.1s}
.dd-12{--dd:1.2s}
.dd-13{--dd:1.3s}
.dd-14{--dd:1.4s}
.dd-15{--dd:1.5s}
.dd-5{--dd:.5s}
.dd-6{--dd:.6s}
.dd-7{--dd:.7s}
.dd-9{--dd:.9s}
.u-abs{position:absolute !important}
.u-anim-0{animation:none !important}
.u-bd-w50{border-color:rgba(255,255,255,.5) !important}
.u-blend-screen{mix-blend-mode:screen !important}
.u-fill-w{fill:#fff !important}
.u-mt-0{margin-top:0 !important}
.u-mt-05{margin-top:.5rem !important}
.u-mt-1{margin-top:1rem !important}
.u-mt-2{margin-top:2rem !important}
.u-op-1{opacity:1 !important}

section[id], .svc[id], .page-head{scroll-margin-top:clamp(78px,11vh,104px)}
.svc[id]:target{outline:2px solid var(--orange);outline-offset:6px;border-radius:18px}

.page-head{padding:clamp(7.5rem,14vh,10rem) 0 clamp(3rem,6vw,4.5rem)}
.page-head .lead{max-width:48ch}

@media (max-width:900px){
  .page-head .lead{max-width:60ch}
}

html{overflow-x:hidden}
body{overflow-x:visible}
@supports (overflow:clip){
  html{overflow-x:clip}
  body{overflow-x:clip}
}

.ticker{overflow:hidden}

.wm{right:0;max-width:100%}
#about,#services,#why,#clients,#contact,#padel,#projects{overflow:hidden}

@media (max-width:900px){
  .f-cols a,.f-bottom a{display:inline-block;padding-block:.42rem}
  .c-card p a{display:inline-block;padding-block:.25rem}
}
@media (max-width:900px){
  .c-card a{display:inline-block;padding-block:.45rem}
}

.brand{display:inline-flex;align-items:center}
.brand-img{height:48px;width:auto;max-width:100%;display:block}
.f-brand .brand-img{height:56px}
@media (max-width:640px){.brand-img{height:38px}.f-brand .brand-img{height:48px}}
@media (max-width:400px){.brand-img{height:34px}}

.f-brand .brand-img{filter:brightness(0) invert(1)}

.brand{position:relative;display:block}

.stat b .count{
  font-family:inherit;font-size:inherit;font-weight:inherit;
  line-height:inherit;color:inherit;
  letter-spacing:normal;text-transform:none;
  display:inline;margin-top:0;
}
.stat b{font-size:clamp(3rem,5.2vw,4.4rem)}
.stat > span{font-size:.74rem}
@media (max-width:640px){ .stat b{font-size:clamp(2.6rem,10vw,3.2rem)} }

.nav-cta .btn-ghost{font-size:.92rem;letter-spacing:.06em;padding:.72rem 1.35rem}
.nav-cta .btn-ghost .st{width:15px;height:15px}
@media (max-width:900px){ .nav-cta .btn-ghost{font-size:.86rem} }

h1 + .lead, h2 + .lead, h3 + .lead,
.h-disp + .lead, .h-sec + .lead,
h1 + p, h2 + p{margin-top:clamp(1.15rem,2vw,1.7rem)}

.lead + .lead, .lead + p, p + .lead{margin-top:clamp(1.05rem,1.8vw,1.5rem)}
.lead.u-mt-1{margin-top:clamp(1.05rem,1.8vw,1.5rem) !important}

.lead{line-height:1.72}
.svc p{line-height:1.65}

.padel-feat{margin-top:clamp(1.8rem,3vw,2.6rem)}

.sec-head .lead{margin-top:clamp(1.15rem,2vw,1.7rem)}

.nav-links{gap:1.6rem}
.nav-call{display:flex;align-items:center;gap:.55rem}
.call-cap{display:inline-flex;align-items:center;gap:.6rem;padding:.28rem 1.1rem .28rem .28rem;border-radius:99px;background:#fff;border:1.5px solid var(--line-l);color:var(--navy);white-space:nowrap;transition:border-color .3s,transform .35s var(--ease),box-shadow .3s}
.call-cap:hover{border-color:var(--orange);transform:translateY(-1px);box-shadow:0 10px 22px -16px rgba(12,25,48,.5)}
.call-bub{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff}
.call-cap+.call-cap .call-bub{background:var(--navy)}
.call-bub svg{width:16px;height:16px}
.call-txt{display:flex;flex-direction:column;align-items:flex-start;gap:.22rem}
.call-lb{font-family:var(--util);font-weight:600;font-size:.52rem;letter-spacing:.18em;line-height:1;text-transform:uppercase;color:var(--mut-l)}
.call-num{font-weight:700;font-size:.92rem;line-height:1.2;font-variant-numeric:tabular-nums}
@media (min-width:1241px) and (max-width:1420px){
  .nav-links{gap:1.2rem}
  .nav-links a{white-space:nowrap}
  .call-cap{padding-right:.9rem}
  .call-lb{display:none}
}
@media (max-width:1240px){
  .nav-links{display:none}
  #burger{display:flex}
}
@media (max-width:640px){.nav-call{display:none}}
#m-menu .m-sub{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}
#m-menu .m-tel{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem}
#m-menu .m-sub a{font-family:var(--body);font-weight:700;font-size:.95rem;letter-spacing:.04em;text-transform:none;color:var(--navy);padding:.4rem 0;opacity:1;transform:none}
#m-menu .m-sub a:hover{color:var(--orange)}

.svc-env{position:absolute;top:.9rem;left:.9rem;z-index:3;display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .75rem;border-radius:999px;background:rgba(12,25,48,.84);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-family:var(--util);font-weight:700;font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;line-height:1}
.svc-env::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal);flex:none}
.svc-env.out::before{background:var(--orange)}
.svc-env.both::before{background:linear-gradient(90deg,var(--teal) 50%,var(--orange) 50%)}

.court-frame svg{margin-bottom:.9rem}
.court-frame .cl{vector-effect:none;stroke-width:1.5}
.court-frame .cl.wall{stroke-width:2.2}
.court-frame .cl.glass{stroke:#BFEFF2;stroke-width:3;filter:drop-shadow(0 0 6px rgba(47,166,174,.8))}
.court-frame .cl.mesh{stroke:rgba(255,255,255,.5);stroke-width:1.5;stroke-dasharray:.012 .01;stroke-dashoffset:0;filter:none;opacity:0;transition:opacity .9s var(--ease) var(--dd,0s)}
.court-frame.draw .cl.mesh{opacity:1}
.court-key{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;margin-bottom:1.4rem;font-family:var(--util);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.court-key span{display:inline-flex;align-items:center;gap:.5rem}
.court-key span::before{content:"";width:18px;height:0;border-top:3px solid var(--teal)}
.court-key .k-glass::before{border-top:4px solid #BFEFF2;box-shadow:0 0 6px rgba(47,166,174,.8)}
.court-key .k-mesh::before{border-top:2px dashed rgba(255,255,255,.6)}
.court-key .k-line::before{border-top:2px solid var(--teal)}
.court-key .k-net::before{border-top:2px dashed var(--orange)}
@media (prefers-reduced-motion:reduce){.court-frame .cl.mesh{opacity:1;transition:none}}

#testimonials{background:var(--navy);color:#fff;position:relative;overflow:hidden}
#testimonials .sec-head{margin-inline:auto;text-align:center}
#testimonials .sec-head .lead{margin-inline:auto;color:#C6D3E4}
#testimonials .sec-head .eyebrow{justify-content:center;color:#AEBFD4}
#testimonials .h-sec{color:#fff}
#testimonials .h-sec .alt{color:inherit;font-style:normal;padding-right:0}
.tix-slider{max-width:960px;margin:clamp(2.4rem,4vw,3.2rem) auto 0}
.tix{display:grid;position:relative;padding:14px 0 44px;touch-action:pan-y}
.tix .tk{grid-area:1/1;visibility:hidden}
.tix .tk.is-on,.tix .tk.out{visibility:visible}
.tix .tk.out{z-index:3}
.tix-wipe{position:absolute;inset:6px -8px 36px;z-index:6;border-radius:16px;background:var(--orange);display:grid;place-items:center;pointer-events:none;clip-path:inset(0 100% 0 0)}
.tix-wipe svg{width:54px;height:54px;fill:#fff}
.tix.moving .tix-wipe{animation:tixWipeF .95s cubic-bezier(.7,0,.3,1) both}
.tix.moving.back .tix-wipe{animation-name:tixWipeB}
.tix.moving .tix-wipe svg{animation:tixSpin .95s var(--ease) both}
.tix .tk.out{animation:tixHoldOut .95s both}
.tix .tk.in{animation:tixHoldIn .95s both}
@keyframes tixWipeF{0%{clip-path:inset(0 100% 0 0)}50%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 100%)}}
@keyframes tixWipeB{0%{clip-path:inset(0 0 0 100%)}50%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 100% 0 0)}}
@keyframes tixSpin{0%{transform:rotate(-144deg) scale(.4)}50%{transform:rotate(0) scale(1)}100%{transform:rotate(144deg) scale(.4)}}
@keyframes tixHoldOut{0%,49.9%{opacity:1}50%,100%{opacity:0}}
@keyframes tixHoldIn{0%,49.9%{opacity:0}50%{opacity:1;transform:translateX(calc(var(--wd,1) * 24px))}100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.tix .tk.out,.tix .tk.in,.tix.moving .tix-wipe,.tix.moving .tix-wipe svg{animation:none}}
.tix-nav{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin-top:.2rem}
.tix-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;transition:background .25s,border-color .25s,transform .25s}
.tix-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.tix-btn:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}
.tix-dots{display:flex;gap:.55rem}
.tix-dot{width:9px;height:9px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.3);cursor:pointer;transition:width .35s var(--ease),background .35s}
.tix-dot.is-on{width:28px;background:var(--orange)}
.tk{display:grid;grid-template-columns:150px 1fr;border-radius:12px;background:#fff;color:var(--navy);position:relative;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.tk::before,.tk::after{content:"";position:absolute;left:139px;width:22px;height:22px;border-radius:50%;background:var(--navy);z-index:2}
.tk::before{top:-11px}
.tk::after{bottom:-11px}
.tk-stub{background:var(--orange);color:#fff;border-radius:12px 0 0 12px;padding:1.3rem 1rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem;position:relative}
.tk-stub::after{content:"";position:absolute;right:-1px;top:14px;bottom:14px;border-right:2px dashed rgba(255,255,255,.75)}
.tk-stub small{display:block;font-family:var(--util);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;opacity:.85}
.tk-stub b{display:block;margin-top:.2rem;font-family:var(--disp);font-weight:800;font-size:1.45rem;line-height:1;text-transform:uppercase}
.tk-yr{font-family:var(--util);font-weight:700;font-size:1.5rem;line-height:1}
.tk-body{padding:1.4rem 1.5rem 1.4rem 1.8rem;display:flex;flex-direction:column;gap:1.1rem}
.tk-body blockquote{flex:1;font-size:.98rem;line-height:1.6;color:#24324A}
.tk-body blockquote p+p{margin-top:.75em}
.tk-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.tk-who{display:flex;align-items:center;gap:.8rem}
.tk-av{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:var(--disp);font-weight:800;font-size:1rem;letter-spacing:.03em}
.tk-who b{display:block;font-weight:800;font-size:.95rem;line-height:1.2}
.tk-who small{display:block;font-size:.8rem;line-height:1.35;color:var(--mut-l)}
.tk-stars{display:flex;gap:3px;flex:none}
.tk-stars svg{width:14px;height:14px;fill:var(--orange)}
@media (max-width:640px){
  .tk{grid-template-columns:112px 1fr}
  .tix{padding:12px 0 34px}
  .tix-wipe{inset:4px -6px 26px}
  .tk::before,.tk::after{left:101px}
  .tk-stub b{font-size:1.15rem}
  .tk-body{padding:1.2rem 1.2rem 1.2rem 1.5rem}
  .tk-row{flex-direction:column-reverse;align-items:flex-start}
}

.cl-tile{flex:none;width:200px;height:100px;margin:0;padding:14px 22px;display:grid;place-items:center;background:#fff;border-radius:14px;box-shadow:0 12px 26px -16px rgba(0,0,0,.55);transition:transform .35s var(--ease),box-shadow .35s}
.cl-tile img{display:block;max-width:156px;max-height:72px;width:auto;height:auto;object-fit:contain}
.cl-tile:hover{transform:translateY(-4px);box-shadow:0 0 0 2px var(--orange),0 16px 30px -16px rgba(0,0,0,.6)}
.cl-tile.is-dark{background:var(--navy-2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 12px 26px -16px rgba(0,0,0,.55)}
.cl-tile.is-dark:hover{box-shadow:0 0 0 2px var(--orange),0 16px 30px -16px rgba(0,0,0,.6)}
@media (max-width:640px){.cl-tile{width:156px;height:82px;padding:12px 16px;border-radius:12px}.cl-tile img{max-width:124px;max-height:58px}}
.ph-inner{margin-top:clamp(1.3rem,2.6vw,2rem)}
.page-head .eyebrow{color:var(--teal)}
.page-head .lead{color:#C6D3E4}
.page-head h1{margin-top:1rem}

.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-family:var(--util);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#8FA2BC}
.crumbs a{color:#8FA2BC;transition:color .3s}
.crumbs a:hover{color:var(--orange-2)}
.crumbs span[aria-hidden]{color:rgba(255,255,255,.28)}
.crumbs span[aria-current]{color:#fff;font-weight:600}

.gchips{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.1rem;padding-bottom:clamp(1.8rem,3.4vw,2.6rem);border-bottom:1px dashed var(--line-l)}
.gchips-lbl{font-family:var(--util);font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;color:var(--mut-l)}
.gchips-row{display:flex;flex-wrap:wrap;gap:.55rem}
.gchip{
  font-family:var(--util);font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.62rem 1.05rem;border-radius:999px;border:1.5px solid var(--line-l);
  background:#fff;color:var(--mut-l);
  transition:color .3s,border-color .3s,background .3s,transform .35s var(--ease),box-shadow .3s;
}
.gchip:hover{color:var(--navy);border-color:var(--teal-d);transform:translateY(-1px)}
.gchip.is-on{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 12px 26px -18px rgba(12,25,48,.8)}

.gt-grid{margin-top:clamp(2.2rem,4vw,3.2rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.1rem,2.2vw,1.8rem)}
.gt{
  display:grid;grid-template-columns:110px minmax(0,1fr);
  background:#fff;border-radius:14px;overflow:hidden;
  box-shadow:0 16px 34px -26px rgba(12,25,48,.45);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),opacity .3s;
}
.gt:hover{transform:translateY(-7px);box-shadow:0 32px 60px -34px rgba(12,25,48,.55)}
.gt.is-off{display:none}
.gt-stub{
  position:relative;background:var(--orange);color:#fff;
  padding:1.25rem .9rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem;
}
.gt-stub::after{content:"";position:absolute;right:-1px;top:14px;bottom:14px;border-right:2px dashed rgba(255,255,255,.75)}
.gt-stub small{font-family:var(--util);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;opacity:.9}
.gt-stub b{font-family:var(--disp);font-weight:800;font-size:1.32rem;line-height:1;text-transform:uppercase;margin-top:.3rem}
.gt-cnt{font-family:var(--util);font-weight:700;font-size:1.35rem;line-height:1}
.gt-cnt::after{content:" \2605";font-size:.7rem;opacity:.85}
.gt-main{display:flex;flex-direction:column;min-width:0}
.gt-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--navy-2)}
.gt-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.gt:hover .gt-media img{transform:scale(1.06)}
.gt-body{padding:1rem 1.2rem 1.25rem}
.gt-body h3{font-family:var(--disp);font-weight:700;font-size:1.38rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.06;color:var(--navy)}
.gt-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;margin-top:.5rem}
.gt-cat{font-family:var(--util);font-size:.63rem;letter-spacing:.22em;text-transform:uppercase;color:var(--teal-d)}
.gt-env{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--util);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mut-l)}
.gt-env::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal);flex:none}
.gt-env.out::before{background:var(--orange)}
.gt-env.both::before{background:linear-gradient(90deg,var(--teal) 50%,var(--orange) 50%)}

.gal-empty{display:none;margin-top:clamp(2.4rem,5vw,3.6rem);text-align:center;color:var(--mut-l);font-size:1rem}
.gal-empty.is-on{display:block}

.gal-cta{
  margin-top:clamp(2.8rem,5vw,4rem);padding-top:clamp(1.8rem,3vw,2.4rem);border-top:1px dashed var(--line-l);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.4rem;
}
.gal-cta p{color:var(--mut-l);max-width:52ch}

.pj{display:none}
.pj.is-on{display:block}
.pj-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin-top:1.2rem}
.page-head .gt-env{color:#C6D3E4;font-size:.64rem}
.pj-shots{font-family:var(--util);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--orange-2)}

.pj-stage{position:relative;display:flex;align-items:center;gap:clamp(.5rem,1.6vw,1rem)}
.pj-frame{
  position:relative;flex:1;min-width:0;display:block;padding:0;
  height:clamp(300px,58vh,560px);border-radius:14px;overflow:hidden;
  border:1px solid var(--line-l);background:var(--navy);
}
.pj-img{width:100%;height:100%;object-fit:contain}
.pj-zoom{
  position:absolute;right:1rem;top:1rem;width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;background:rgba(12,25,48,.72);
  opacity:0;transition:opacity .3s;
}
.pj-zoom svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round}
.pj-frame:hover .pj-zoom,.pj-frame:focus-visible .pj-zoom{opacity:1}
.pj-arw{
  width:48px;height:48px;flex:none;border-radius:50%;display:grid;place-items:center;
  background:#fff;border:1.5px solid var(--line-l);color:var(--navy);
  transition:background .3s,color .3s,border-color .3s,transform .3s var(--ease);
}
.pj-arw svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pj-arw:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-2px)}
.pj-cnt{
  position:absolute;right:calc(48px + clamp(.5rem,1.6vw,1rem) + 1rem);bottom:1rem;
  font-family:var(--util);font-size:.64rem;letter-spacing:.2em;
  background:rgba(12,25,48,.82);color:#fff;padding:.42rem .75rem;border-radius:999px;
}
.pj-rail{display:flex;gap:.7rem;margin-top:.9rem;overflow-x:auto;padding-bottom:.35rem;justify-content:center}
.pj-th{
  flex:none;width:118px;height:80px;padding:0;overflow:hidden;border-radius:9px;
  border:2px solid transparent;opacity:.6;background:var(--navy-2);
  transition:opacity .3s,border-color .3s,transform .35s var(--ease);
}
.pj-th img{width:100%;height:100%;object-fit:cover}
.pj-th:hover{opacity:1;transform:translateY(-3px)}
.pj-th.is-on{opacity:1;border-color:var(--orange)}
.pj-rail.is-single{display:none}

.pj-foot{
  margin-top:clamp(2.4rem,4.5vw,3.4rem);padding-top:clamp(1.6rem,3vw,2.2rem);border-top:1px dashed var(--line-l);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.2rem;
}
.pj-step{display:flex;flex-direction:column;gap:.25rem;min-width:0}
.pj-step.next{text-align:right;justify-self:end}
.pj-step-lb{font-family:var(--util);font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--mut-l)}
.pj-step-nm{font-family:var(--disp);font-weight:700;font-size:1.15rem;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);transition:color .3s}
.pj-step:hover .pj-step-nm{color:var(--orange)}
.pj-back{justify-self:center;white-space:nowrap}

.pj-cta{background:var(--paper);text-align:center}
.pj-cta .h-sec{margin-top:1rem}
.pj-cta .lead{margin-inline:auto}
.pj-cta .eyebrow{justify-content:center}
.pj-cta-row{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;margin-top:clamp(1.8rem,3vw,2.4rem)}

html.lb-lock, html.lb-lock body{overflow:hidden}
#lb{
  position:fixed;inset:0;z-index:2000;display:none;
  grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(.4rem,2vw,1.4rem);
  padding:clamp(3.4rem,7vw,4.6rem) clamp(.6rem,3vw,2.4rem) clamp(3.6rem,6vw,4.4rem);
  background:rgba(8,16,30,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
#lb.is-on{display:grid}
.lb-stage{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0}
#lb-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.lb-close,.lb-arw{
  width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.06);color:#fff;
  transition:background .25s,border-color .25s,transform .25s;
}
.lb-close svg,.lb-arw svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.lb-close:hover,.lb-arw:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}
.lb-close{position:absolute;top:clamp(.8rem,2vw,1.4rem);right:clamp(.8rem,2vw,1.4rem);z-index:3}
.lb-bar{
  position:absolute;left:0;right:0;bottom:clamp(.9rem,2.4vw,1.5rem);
  display:flex;align-items:center;justify-content:center;gap:1.1rem;
  font-family:var(--util);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.72);
}
#lb-count{color:var(--orange);font-weight:700}

@media (max-width:1040px){
  .gt-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .gt{grid-template-columns:84px minmax(0,1fr)}
  .gt-stub{padding:1rem .7rem}
  .gt-stub b{font-size:1.05rem}
  .gal-cta{flex-direction:column;align-items:flex-start}
  .pj-frame{height:clamp(220px,42vh,340px)}
  .pj-arw{width:40px;height:40px}
  .pj-cnt{right:calc(40px + .5rem + .7rem);bottom:.7rem}
  .pj-th{width:92px;height:64px}
  .pj-rail{justify-content:flex-start}
  .pj-foot{grid-template-columns:1fr 1fr;gap:1rem}
  .pj-back{grid-column:1 / -1;grid-row:1;justify-self:stretch;text-align:center;justify-content:center}
  .pj-step-nm{font-size:1rem}
  .lb-arw{width:40px;height:40px}
}
@media (max-width:420px){
  #lb{grid-template-columns:minmax(0,1fr);padding-inline:.6rem}
  .lb-arw{position:absolute;bottom:clamp(2.6rem,9vw,3.4rem);z-index:3}
  .lb-prev{left:.8rem}
  .lb-next{right:.8rem}
}
@media (prefers-reduced-motion:reduce){
  .gt,.gt-media img,.pj-th,.pj-arw{transition:none}
}

.nav-links a{white-space:nowrap}
#site-head.hdr-dark:not(.scrolled) .brand-img{filter:brightness(0) invert(1)}
#site-head.hdr-dark:not(.scrolled) .nav-links a{color:#AFC0D6}
#site-head.hdr-dark:not(.scrolled) .nav-links a:hover,
#site-head.hdr-dark:not(.scrolled) .nav-links a.active{color:#fff}
#site-head.hdr-dark:not(.scrolled) #burger span{background:#fff}

.page-dark #site-head:not(.scrolled) .brand-img{filter:brightness(0) invert(1)}
.page-dark #site-head:not(.scrolled) .nav-links a{color:#A9BCD4}
.page-dark #site-head:not(.scrolled) .nav-links a:hover,
.page-dark #site-head:not(.scrolled) .nav-links a.active{color:#fff}
.page-dark #site-head:not(.scrolled) #burger span{background:#fff}