/* ===================================================================
   INNOBOTIX TECHNOLOGIES — token system (sky blue, light, editorial)
   Display: Rajdhani · Body: Inter · Mono: JetBrains Mono
=================================================================== */
:root{
  --sky:#2E7FD1;
  --sky-deep:#1E5D9E;
  --sky-bright:#5AA9E6;
  --sky-pale:#EAF3FC;
  --amber:#F0A23A;
  --ink:#16232F;
  --steel:#5C7186;
  --line: rgba(22,35,47,.1);
  --grid-line: rgba(22,35,47,.025);
  --paper:#FFFFFF;
  --paper-tint:#F1F7FC;
  --band:#123A5E;
  --band-deep:#0B2740;
  --radius:14px;
  --ease:cubic-bezier(.22,.8,.28,1);
  --maxw:1360px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth; overflow-x:hidden; width:100%;}
body{
  margin:0;
  font-family:'Inter',sans-serif;
  color:var(--ink);
  background-color:var(--paper);
  background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
  background-size:52px 52px;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  width:100%;
}
h1,h2,h3,h4{
  font-family:'Rajdhani',sans-serif;
  font-weight:700;
  letter-spacing:.01em;
  margin:0;
}
p{margin:0;line-height:1.62;color:var(--steel);}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
img{max-width:100%;display:block;}
button{font:inherit;background:none;border:none;cursor:pointer;color:inherit;}
input,textarea,select{font:inherit;}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
}

.wrap{max-width:var(--maxw); margin:0 auto; padding:0 clamp(24px,4.5vw,72px);}
.wrap--split{display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; align-items:start;}

.tag{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--sky-deep);
  background:rgba(46,127,209,.08); border:1px solid rgba(46,127,209,.25);
  padding:6px 12px; border-radius:100px; margin-bottom:16px;
}

.section{padding:64px 0;}
.section--tint{
  background-color:var(--paper-tint);
  background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
  background-size:52px 52px;
}
.section--tight{padding:0 0 56px;}
.section__title{font-size:clamp(28px,3.4vw,42px); max-width:640px;}
.micro-head{font-size:15px; text-transform:uppercase; letter-spacing:.08em; color:var(--sky-deep); margin:40px 0 18px; font-family:'JetBrains Mono',monospace; font-weight:500;}
.micro-head--top{margin-top:36px;}
.subhead{font-size:clamp(20px,2.2vw,25px); margin:0;}

/* ---------------- LOADER ---------------- */
.loader{
  position:fixed; top:0; right:0; bottom:0; left:0; width:100%; height:100%; z-index:9999; background:var(--paper);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px;
  transition:opacity .5s ease, visibility .5s ease;
}
.loader.is-done{opacity:0; visibility:hidden; pointer-events:none;}
.loader__logo{width:84px; height:84px; object-fit:contain; border-radius:16px; animation:pulseLogo 1.6s ease-in-out infinite;}
@keyframes pulseLogo{0%,100%{transform:scale(1);}50%{transform:scale(1.06);}}
.loader__bar{width:220px; height:4px; background:var(--paper-tint); border-radius:4px; overflow:hidden;}
.loader__bar span{display:block; height:100%; width:0%; background:linear-gradient(90deg,var(--sky),var(--sky-bright)); border-radius:4px;}
.loader__count{font-family:'JetBrains Mono',monospace; font-size:13px; color:var(--steel); letter-spacing:.05em;}

/* ---------------- NAV ---------------- */
.nav{
  position:sticky; top:0; z-index:100;
  background:rgba(255,255,255,.88); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav__inner{max-width:var(--maxw); margin:0 auto; padding:13px clamp(24px,4.5vw,72px); display:flex; align-items:center; justify-content:space-between;}
.nav__brand{display:flex; align-items:center; gap:10px; color:var(--ink);}
.nav__logo{width:32px; height:32px; object-fit:contain; border-radius:8px;}
.nav__word{font-family:'Rajdhani',sans-serif; font-weight:700; font-size:16px; letter-spacing:.04em; line-height:1.1; display:flex; flex-direction:column;}
.nav__word em{font-style:normal; font-size:9px; font-weight:500; letter-spacing:.2em; color:var(--sky-deep);}
.nav__links{display:flex; align-items:center; gap:26px;}
.nav__links a{font-size:14px; color:var(--steel); font-weight:500; transition:color .2s;}
.nav__links a:hover{color:var(--ink);}
.nav__cta{
  background:var(--sky-deep); color:#fff !important; padding:9px 18px;
  border-radius:8px; font-weight:600 !important;
}
.nav__cta:hover{background:var(--sky);}
.nav__burger{display:none; flex-direction:column; gap:5px; width:26px;}
.nav__burger span{height:2px; background:var(--ink); border-radius:2px;}

/* ---------------- HERO (clean split, sky blue, light) ---------------- */
.hero{
  position:relative; overflow:hidden;
  background:linear-gradient(175deg,#fff 0%, var(--sky-pale) 100%);
  min-height:calc(100vh - 62px);
  display:flex; flex-direction:column; justify-content:center;
  padding:56px 0 40px;
}
.hero__grid{
  position:absolute; top:0; right:0; bottom:0; left:0;
  background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 70% 60% at 70% 30%, black 5%, transparent 70%);
}
.hero__blob{position:absolute; border-radius:50%; filter:blur(60px); opacity:.35; pointer-events:none;}
.hero__blob--a{width:420px; height:420px; background:var(--sky-bright); top:-140px; right:-100px;}
.hero__blob--b{width:280px; height:280px; background:var(--amber); opacity:.18; bottom:-80px; left:-60px;}

.hero__wrap{position:relative; z-index:2; display:grid; grid-template-columns:1.3fr .7fr; gap:40px; align-items:center;}
.eyebrow{
  font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--sky-deep); margin-bottom:14px;
}
.hero__name{ display:flex; align-items:baseline; flex-wrap:wrap; gap:16px; margin-bottom:20px; }
.hero__name-chip{
  font-size:clamp(40px,6vw,68px); line-height:1; font-weight:700; letter-spacing:.01em;
  background:linear-gradient(100deg,var(--sky-deep) 10%,var(--sky-bright) 60%,var(--amber) 110%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero__name-sub{
  font-size:clamp(40px,6vw,68px); line-height:1; font-weight:700; letter-spacing:.01em;
  background:linear-gradient(100deg,var(--sky-deep) 10%,var(--sky-bright) 60%,var(--amber) 110%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero__motive{font-size:17px; font-weight:500; line-height:1.55; color:var(--steel); max-width:480px;}
.hero__sub{margin-top:10px; max-width:480px; font-size:14.5px; line-height:1.6; color:var(--steel);}
.hero__actions{display:flex; gap:16px; margin-top:22px; flex-wrap:wrap;}
.btn{
  display:inline-flex; align-items:center; justify-content:center; padding:14px 26px;
  border-radius:9px; font-weight:600; font-size:15px; transition:transform .2s var(--ease), background .2s, box-shadow .2s, color .2s;
}
.btn--primary{background:linear-gradient(100deg,var(--sky-deep),var(--sky)); color:#fff;}
.btn--primary:hover{transform:translateY(-2px); box-shadow:0 14px 30px -10px rgba(30,93,158,.5);}
.btn--ghost{border:1px solid var(--line); color:var(--ink);}
.btn--ghost:hover{background:var(--paper-tint); transform:translateY(-2px);}
.btn--wide{width:100%;}
.hero__founder{margin-top:16px; font-size:13px; color:var(--steel);}
.hero__founder strong{color:var(--ink); font-weight:600;}
.hero__stats{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  margin-top:32px; padding-top:24px; border-top:1px solid var(--line); max-width:520px;
}
.hero__stats strong{display:block; font-family:'Rajdhani',sans-serif; font-size:26px; font-weight:700; color:var(--sky-deep);}
.hero__stats span{display:block; font-size:12px; color:var(--steel); margin-top:6px; line-height:1.5;}

.hero__visual{position:relative; max-width:360px; margin:0 auto;}
.hero__photo-frame img{
  width:100%; display:block;
  filter:drop-shadow(0 30px 34px rgba(22,35,47,.22));
}
.hero__photo-tag{
  position:absolute; bottom:-16px; left:24px; background:var(--ink); color:#fff;
  font-size:12px; font-weight:600; padding:9px 16px; border-radius:100px; box-shadow:0 12px 24px -8px rgba(0,0,0,.3);
}

.hero__scroll{
  position:absolute; bottom:22px; left:50%; transform:translateX(-50%);
  width:24px; height:38px; border:1.5px solid var(--line); border-radius:20px; z-index:2;
}
.hero__scroll span{
  position:absolute; top:7px; left:50%; width:4px; height:7px; margin-left:-2px;
  background:var(--sky); border-radius:3px; animation:scrollDot 1.8s infinite;
}
@keyframes scrollDot{0%{opacity:1; transform:translateY(0);}80%{opacity:0; transform:translateY(12px);}100%{opacity:0;}}

/* ---------------- NUMBERED ROW (What We Do) ---------------- */
.numbered-row{
  display:grid; grid-template-columns:repeat(5,1fr);
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.numbered-item{padding:30px 22px; border-left:1px solid var(--line);}
.numbered-item:first-child{border-left:none;}
.numbered-item__num{font-family:'JetBrains Mono',monospace; font-size:13px; color:var(--sky); letter-spacing:.05em;}
.numbered-item h4{font-size:16px; margin:12px 0 8px; line-height:1.3;}
.numbered-item p{font-size:13px; line-height:1.5;}

/* ---------------- ABOUT ---------------- */
.col-label h2{font-size:clamp(26px,3vw,36px); line-height:1.15;}
.lede{font-size:17px; color:var(--ink); margin-bottom:20px; line-height:1.65;}

.tag-list{display:flex; flex-wrap:wrap; gap:10px;}
.tag-list span{
  font-size:13px; font-weight:500; padding:9px 15px; border-radius:100px;
  background:var(--paper-tint); color:var(--steel); border:1px solid transparent;
}

/* Deliberately low-key — not meant to compete visually with the core services */
.section--modest{padding:44px 0;}
.modest-block{max-width:640px;}
.modest-block h3{font-size:17px; font-weight:600; color:var(--steel); margin-bottom:8px; font-family:'Inter',sans-serif;}
.modest-block p{font-size:13.5px; line-height:1.6;}
.modest-tags{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px;}
.modest-tags span{font-size:12px; color:var(--steel); padding:5px 12px; border:1px solid var(--line); border-radius:100px;}
.modest-tags__primary{
  font-weight:600 !important; color:var(--sky-deep) !important;
  background:rgba(46,127,209,.08); border-color:rgba(46,127,209,.35) !important;
}

.camp-info{margin-top:28px; display:grid; grid-template-columns:1fr 1.3fr; gap:32px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:16px; padding:26px 28px;}
.camp-info p{font-size:14.5px; line-height:1.65;}
.camp-stats{display:grid; grid-template-columns:1fr 1fr; gap:18px 22px;}
.camp-stats strong{display:block; font-family:'Rajdhani',sans-serif; font-size:19px; color:var(--sky-deep);}
.camp-stats span{display:block; font-size:12px; color:var(--steel); margin-top:2px;}
.tag-list__accent{background:rgba(240,162,58,.12) !important; color:#8a5216 !important; border-color:rgba(240,162,58,.35) !important; font-weight:600 !important;}

.why-strip{
  margin-top:44px; display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap;
  padding:28px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.why{display:flex; flex-direction:column; align-items:center; gap:8px; flex:1; min-width:110px;}
.why svg{width:26px; height:26px; color:var(--sky);}
.why span{font-size:12.5px; font-weight:600; text-align:center; color:var(--ink);}

/* ---------------- SPLIT PHOTO BLOCKS ---------------- */
.split-photo{display:grid; grid-template-columns:.9fr 1.1fr; gap:44px; align-items:center; margin-top:44px;}
.split-photo--reverse{grid-template-columns:1.1fr .9fr;}
.split-photo--reverse .split-photo__image{order:2;}
.split-photo--reverse .split-photo__text{order:1;}
.split-photo--tight{margin-top:8px;}
.split-photo__image{border-radius:18px; overflow:hidden; box-shadow:0 30px 60px -30px rgba(22,35,47,.25);}
.split-photo__image img{width:100%; height:100%; object-fit:cover; aspect-ratio:4/3;}
.split-photo__text h3{font-size:clamp(20px,2.2vw,26px); margin-bottom:12px;}
.split-photo__text p{font-size:15px;}
.split-photo__text .track-strip{margin-top:26px;}
.split-photo__text .check-strip{margin-top:20px;}

/* ---------------- CORE SERVICES: triptych ---------------- */
.services-head{margin-top:44px; max-width:640px;}
.triptych{
  margin-top:32px; display:grid; grid-template-columns:repeat(4,1fr);
  background:#fff; border:1px solid var(--line); border-radius:20px; overflow:hidden;
  box-shadow:0 30px 60px -36px rgba(22,35,47,.16);
}
.triptych__col{padding:30px 22px; border-left:1px solid var(--line);}
.triptych__col:first-child{border-left:none;}
.triptych__col--accent{background:linear-gradient(180deg,#fff,#fff8ee);}
.triptych__icon{width:42px; height:42px; color:#fff; background:var(--sky-deep); border-radius:10px; display:flex; align-items:center; justify-content:center; margin-bottom:16px;}
.triptych__icon svg{width:21px; height:21px;}
.triptych__col--accent .triptych__icon{background:var(--amber);}
.triptych__col h3{font-size:19px; margin-bottom:14px;}
.check-list--single{display:flex; flex-direction:column; gap:10px;}
.check-list--single li{position:relative; padding-left:22px; color:var(--steel); font-size:13.5px; line-height:1.5;}
.check-list--single li::before{content:''; position:absolute; left:0; top:4px; width:13px; height:13px; border-radius:4px; background:rgba(46,127,209,.1); border:1px solid var(--sky);}
.check-list--single li::after{content:''; position:absolute; left:3.5px; top:6.5px; width:6px; height:3px; border-left:2px solid var(--sky-deep); border-bottom:2px solid var(--sky-deep); transform:rotate(-45deg);}
.triptych__col--accent .check-list--single li::before{background:rgba(240,162,58,.14); border-color:var(--amber);}
.triptych__col--accent .check-list--single li::after{border-color:var(--amber);}

.check-list--wide{display:grid; grid-template-columns:1fr 1fr; gap:14px 40px; margin-top:8px;}
.check-list--wide li{position:relative; padding-left:22px; color:var(--steel); font-size:14.5px; line-height:1.55;}
.check-list--wide li::before{content:''; position:absolute; left:0; top:5px; width:13px; height:13px; border-radius:4px; background:rgba(46,127,209,.1); border:1px solid var(--sky);}
.check-list--wide li::after{content:''; position:absolute; left:3.5px; top:7.5px; width:6px; height:3px; border-left:2px solid var(--sky-deep); border-bottom:2px solid var(--sky-deep); transform:rotate(-45deg);}
.check-list--wide strong{color:var(--ink); font-weight:600;}

/* ---------------- PROGRAMS ---------------- */
.track-strip{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.track{background:var(--band); color:#fff; border-radius:12px; padding:18px 20px; display:flex; flex-direction:column; gap:3px;}
.track__time{font-family:'Rajdhani',sans-serif; font-weight:700; font-size:20px; color:var(--sky-bright);}
.track span:last-child{font-size:12.5px; color:#b7cadf;}

.check-strip{display:flex; flex-wrap:wrap; gap:12px 24px;}
.check-strip__item{display:flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; color:var(--ink);}
.check-strip__item svg{width:16px; height:16px; color:var(--sky-deep); flex:none;}

.kit-row{margin-top:24px; display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.kit-row figure{margin:0;}
.kit-row img{
  width:100%; aspect-ratio:3/2; object-fit:contain; background:var(--paper-tint); border-radius:16px; padding:14px;
}
.kit-row figcaption{margin-top:12px; text-align:center; font-size:13.5px; font-weight:600; color:var(--ink);}

.kit-grid{margin-top:24px; display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.kit-grid figure{margin:0; background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px 14px 16px; transition:transform .25s var(--ease), box-shadow .25s;}
.kit-grid figure:hover{transform:translateY(-5px); box-shadow:0 20px 36px -20px rgba(22,35,47,.18);}
.kit-grid img{width:100%; aspect-ratio:1/1; object-fit:contain;}
.kit-grid figcaption{margin-top:10px; text-align:center; font-size:13px; font-weight:600; color:var(--ink);}

/* ---------------- HIGHLIGHT BAND ---------------- */
.highlight-band{
  margin-top:40px; background-color:var(--band); border-radius:20px; padding:32px 34px;
  background-image:radial-gradient(circle at 90% 0%, rgba(90,169,230,.28), transparent 55%),
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:auto, 52px 52px, 52px 52px;
}
.subhead--onband{color:#fff;}
.highlight-cols{margin-top:26px; display:grid; grid-template-columns:repeat(5,1fr);}
.highlight-col{padding:0 18px; border-left:1px solid rgba(255,255,255,.14);}
.highlight-col:first-child{padding-left:0; border-left:none;}
.highlight-col__num{display:inline-block; font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--sky-bright); margin-bottom:12px;}
.highlight-col li{position:relative; padding-left:13px; font-size:12.5px; color:#c3d3e4; margin-bottom:7px; line-height:1.5;}
.highlight-col li::before{content:'—'; position:absolute; left:0; color:var(--sky-bright);}

/* ---------------- CONNECT (founder + contact) ---------------- */
.connect-grid{margin-top:28px; display:grid; grid-template-columns:.85fr 1.15fr; gap:40px; align-items:start;}
.founder-card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; box-shadow:0 24px 50px -30px rgba(22,35,47,.18);}
.founder-photo{width:104px; height:104px; border-radius:50%; overflow:hidden; border:3px solid var(--paper-tint); margin-bottom:18px; flex:none;}
.founder-photo img{width:100%; height:100%; object-fit:cover; object-position:center 30%;}
.founder-card h3{font-size:21px;}
.founder-title{font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:.05em; color:var(--sky-deep); margin:4px 0 20px; text-transform:uppercase;}
.founder-tags{display:flex; flex-direction:column; gap:10px; margin-bottom:22px; padding-bottom:22px; border-bottom:1px solid var(--line);}
.founder-tags li{position:relative; padding-left:16px; font-size:13px; color:var(--steel); line-height:1.5;}
.founder-tags li::before{content:''; position:absolute; left:0; top:6px; width:6px; height:6px; border-radius:50%; background:var(--sky);}

.contact-info{display:flex; flex-direction:column; gap:12px; margin-bottom:18px;}
.contact-info a, .contact-info span{display:flex; gap:10px; align-items:flex-start; font-size:13.5px; color:var(--ink); font-weight:500;}
.contact-info svg{width:17px; height:17px; flex:none; color:var(--sky-deep); margin-top:1px;}
.social-row{display:flex; gap:8px;}
.social-row a{width:34px; height:34px; border-radius:50%; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:700; color:var(--sky-deep); transition:background .2s, color .2s;}
.social-row a:hover{background:var(--sky-deep); color:#fff;}

.form{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:30px; display:flex; flex-direction:column; gap:16px; box-shadow:0 24px 50px -30px rgba(22,35,47,.14);}
.form__row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.form label{display:flex; flex-direction:column; gap:6px; font-size:12.5px; font-weight:600; color:var(--steel);}
.form input, .form select, .form textarea{border:1px solid var(--line); border-radius:8px; padding:11px 13px; font-size:14px; color:var(--ink); background:var(--paper-tint); transition:border-color .2s;}
.form input:focus, .form select:focus, .form textarea:focus{outline:none; border-color:var(--sky);}
.form textarea{resize:vertical;}
.form__note{font-size:12.5px; color:var(--sky-deep); min-height:0;}

/* ---------------- FOOTER ---------------- */
.footer{
  background-color:var(--band-deep); color:#8ca3ba; padding:44px 0 28px;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:52px 52px;
}
.footer__inner{display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;}
.footer .nav__word{color:#fff; justify-content:center;}
.footer__brand p{color:var(--sky-bright); font-size:11px; letter-spacing:.1em; text-transform:uppercase; margin-top:4px;}
.footer__quote{font-style:italic; max-width:460px; font-size:13.5px;}
.footer__legal{font-size:12px; color:#5a7288;}

/* ---------------- FOCUS ---------------- */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:2px solid var(--sky); outline-offset:2px;
}

/* ==================== RESPONSIVE ==================== */
@media (max-width: 1180px){
  .numbered-row{grid-template-columns:repeat(3,1fr);}
  .numbered-item:nth-child(3n+1){border-left:none;}
  .highlight-cols{grid-template-columns:repeat(3,1fr); row-gap:24px;}
  .highlight-col:nth-child(3n+1){border-left:none; padding-left:0;}
}
@media (max-width: 1024px){
  .hero__wrap{grid-template-columns:1fr; gap:28px;}
  .hero__visual{order:-1; max-width:220px; margin:0 auto;}
  .hero__stats{grid-template-columns:1fr; max-width:100%;}
  .triptych{grid-template-columns:1fr;}
  .triptych__col{border-left:none; border-top:1px solid var(--line);}
  .triptych__col:first-child{border-top:none;}
  .wrap--split{grid-template-columns:1fr; gap:32px;}
  .connect-grid{grid-template-columns:1fr; gap:28px;}
  .split-photo, .split-photo--reverse{grid-template-columns:1fr; gap:28px;}
  .split-photo--reverse .split-photo__image, .split-photo--reverse .split-photo__text{order:initial;}
  .kit-row{grid-template-columns:1fr 1fr;}
  .kit-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width: 760px){
  .camp-info{grid-template-columns:1fr;}
  .nav__links{
    position:fixed; top:60px; right:0; left:0; width:100%; height:calc(100vh - 60px);
    background:var(--paper); flex-direction:column; z-index:100; overflow-y:auto;
    padding:32px 32px; gap:22px;
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .2s ease;
    border-top:1px solid var(--line);
  }
  .nav__links.is-open{opacity:1; visibility:visible; pointer-events:auto;}
  .nav__burger{display:flex;}
  .nav__cta{align-self:flex-start;}
  .hero{padding-top:104px;}
  .hero__actions{flex-direction:column; align-items:stretch;}
  .numbered-row{grid-template-columns:1fr 1fr;}
  .numbered-item:nth-child(3n+1){border-left:1px solid var(--line);}
  .numbered-item:nth-child(2n+1){border-left:none;}
  .track-strip{grid-template-columns:1fr;}
  .highlight-cols{grid-template-columns:1fr 1fr;}
  .highlight-col:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.14); padding-left:18px;}
  .highlight-col:nth-child(2n+1){border-left:none; padding-left:0;}
  .check-list--wide{grid-template-columns:1fr;}
  .kit-row{grid-template-columns:1fr;}
  .kit-grid{grid-template-columns:1fr 1fr;}
  .form__row{grid-template-columns:1fr;}
  .section{padding:56px 0;}
  .section--tight{padding-bottom:56px;}
  .services-head{margin-top:32px;}
}
