/* ============================================================
   KEYSACTIV' — Site vitrine · feuille de style (design Claude Design)
   Palette : bleu nuit #0B1F3A · or #C9A961 · crème #F8F7F4
   Type    : Philosopher (logo) · Playfair Display (serif) · DM Sans (UI)
   ============================================================ */

:root{
  --nuit:#0B1F3A;
  --nuit-700:#0E2545;
  --nuit-900:#081627;
  --or:#C9A961;
  --or-clair:#E4CE9C;
  --creme:#F8F7F4;
  --sable:#EDE7DC;
  --sable-2:#E3DACB;
  --ink:#10151C;
  --gris:#5D6573;
  --line:rgba(11,31,58,.12);

  --logo:'Philosopher',Georgia,serif;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'DM Sans','Helvetica Neue',Arial,sans-serif;

  --pad:clamp(16px,5vw,84px);
  --maxw:1320px;
  --radius:3px;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{
  font-family:var(--sans);
  color:var(--ink);
  background:var(--creme);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}
:focus-visible{outline:2px solid var(--or);outline-offset:3px;}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--or);color:var(--nuit);padding:10px 16px;border-radius:999px;font-weight:600;}
.skip:focus{top:12px;}

/* ---------- helpers ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);}
.kicker{
  display:inline-flex;align-items:center;gap:14px;
  font-size:12.5px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:#9A7B34;
}
.conc .kicker,.cta .kicker{color:var(--or);}
.kicker::before{content:"";width:34px;height:1px;background:var(--or);display:inline-block;}
.kicker--center::after{content:"";width:34px;height:1px;background:var(--or);display:inline-block;}
.h-serif{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.01em;}
.lead{font-size:clamp(17px,1.5vw,19px);color:var(--gris);max-width:60ch;}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 30px;border-radius:999px;border:1px solid transparent;
  font-size:14.5px;font-weight:600;letter-spacing:.03em;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease;
  white-space:nowrap;
}
.btn svg{width:17px;height:17px;}
.btn--gold{background:var(--or);color:var(--nuit);}
.btn--gold:hover{background:var(--or-clair);transform:translateY(-2px);}
.btn--dark{background:var(--nuit);color:var(--creme);}
.btn--dark:hover{background:var(--nuit-700);transform:translateY(-2px);}
.btn--ghost{background:transparent;border-color:currentColor;}
.btn--ghost.on-light{color:var(--nuit);}
.btn--ghost.on-light:hover{background:var(--nuit);color:var(--creme);border-color:var(--nuit);}
.btn[disabled]{opacity:.6;cursor:wait;transform:none;}

/* ============================================================
   NAVIGATION
   ============================================================ */
.nav{
  position:fixed;top:0;left:0;width:100%;z-index:100;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px var(--pad);
  transition:background .35s ease,padding .35s ease,box-shadow .35s ease,border-color .35s ease;
  border-bottom:1px solid transparent;
  color:var(--creme);
}
.nav.scrolled,.nav.open{
  background:rgba(248,247,244,.96);
  backdrop-filter:blur(14px);
  color:var(--nuit);
  padding:14px var(--pad);
  border-color:var(--line);
  box-shadow:0 8px 30px rgba(8,22,39,.06);
}
.brand{display:flex;align-items:center;gap:13px;flex:0 0 auto;}
.brand__icon{height:38px;width:auto;}
.brand__icon path{fill:currentColor;transition:fill .35s ease;}
.brand__word{font-family:var(--logo);font-size:27px;line-height:1;letter-spacing:-.5px;}
.brand__word .k{font-weight:700;}
.brand__word .a{font-weight:400;font-style:italic;color:var(--or);}
.nav__links{display:flex;align-items:center;gap:34px;}
.nav__links a{font-size:14.5px;font-weight:500;letter-spacing:.02em;position:relative;opacity:.9;}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1.5px;background:var(--or);transition:width .25s ease;}
.nav__links a:hover{opacity:1;}
.nav__links a:hover::after{width:100%;}
.nav__cta{display:flex;align-items:center;gap:16px;}
.nav__phone{font-size:14px;font-weight:600;letter-spacing:.02em;display:flex;align-items:center;gap:8px;}
.nav__phone svg{width:16px;height:16px;stroke:var(--or);fill:none;stroke-width:1.8;}
.nav .btn{padding:11px 22px;}
.nav__burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:8px;color:inherit;}
.nav__burger span{width:24px;height:2px;background:currentColor;display:block;border-radius:2px;}

/* ============================================================
   HERO SLIDER
   ============================================================ */
.hero{position:relative;height:100svh;min-height:620px;overflow:hidden;background:var(--nuit-900);}
.hero__track{position:absolute;inset:0;}
.hero__slide{
  position:absolute;inset:0;opacity:0;visibility:hidden;
  transition:opacity 1s ease,visibility 1s ease;
}
.hero__slide.is-active{opacity:1;visibility:visible;}
.hero__slide::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(120% 120% at 75% 18%, #1a3c66 0%, var(--nuit) 50%, var(--nuit-900) 100%);
}
.hero__bg{
  position:absolute;inset:0;z-index:1;
  background:radial-gradient(130% 130% at 72% 22%, #1d3c66 0%, #0e2647 48%, #07111f 100%);
}
.hero__media{position:absolute;inset:0;z-index:2;}
.hero__media img{width:100%;height:100%;object-fit:cover;}
.hero__media--mark{display:flex;align-items:center;justify-content:flex-end;padding-right:6vw;}
.hero__mark{height:78%;width:auto;opacity:.08;}
.hero__mark path{fill:var(--or-clair);}
.hero__slide.is-active .hero__media{animation:kenburns 8s ease-out forwards;}
@keyframes kenburns{from{transform:scale(1.12);}to{transform:scale(1);}}
@media (prefers-reduced-motion:reduce){.hero__slide.is-active .hero__media{animation:none;}}
.hero__veil{
  position:absolute;inset:0;z-index:3;
  background:
    linear-gradient(180deg,rgba(8,22,39,.55) 0%,rgba(8,22,39,0) 26%,rgba(8,22,39,0) 48%,rgba(7,17,31,.82) 100%),
    linear-gradient(90deg,rgba(7,17,31,.7) 0%,rgba(7,17,31,.15) 52%,rgba(7,17,31,0) 75%);
}
.hero__content{
  position:absolute;left:0;bottom:0;z-index:5;width:100%;
  padding:0 var(--pad) clamp(96px,12vh,150px);
  color:var(--creme);
}
.hero__inner{max-width:var(--maxw);margin:0 auto;}
.hero__loc{
  display:inline-flex;align-items:center;gap:10px;
  font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--or-clair);
  margin-bottom:18px;
}
.hero__loc svg{width:15px;height:15px;stroke:var(--or);fill:none;stroke-width:1.6;}
.hero__name{font-family:var(--serif);font-weight:500;font-size:clamp(38px,6.4vw,88px);line-height:1.04;max-width:16ch;overflow-wrap:anywhere;}
.hero__lead{margin-top:20px;font-size:clamp(16px,1.6vw,19px);color:rgba(248,247,244,.82);max-width:46ch;}
.hero__specs{display:flex;flex-wrap:wrap;align-items:center;gap:8px 0;margin-top:26px;}
.hero__spec{display:flex;align-items:center;gap:9px;font-size:15px;color:rgba(248,247,244,.9);padding:0 22px;border-left:1px solid rgba(228,206,156,.3);}
.hero__spec:first-child{padding-left:0;border-left:none;}
.hero__spec svg{width:19px;height:19px;stroke:var(--or-clair);fill:none;stroke-width:1.5;}
.hero__foot{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:38px;}
.hero__price{font-size:15px;color:rgba(248,247,244,.78);}
.hero__price b{font-family:var(--serif);font-size:26px;color:var(--creme);font-weight:600;margin-right:6px;}

.hero__ui{
  position:absolute;z-index:6;left:0;bottom:0;width:100%;
  padding:0 var(--pad) 38px;pointer-events:none;
}
.hero__ui-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.hero__dots{display:flex;align-items:center;gap:18px;pointer-events:auto;}
.hero__count{font-family:var(--serif);font-size:15px;color:rgba(248,247,244,.7);letter-spacing:.05em;}
.hero__count b{color:var(--creme);font-size:19px;}
.hero__progress{position:relative;width:120px;height:2px;background:rgba(248,247,244,.22);overflow:hidden;}
.hero__progress span{position:absolute;inset:0;width:0;background:var(--or);}
.hero__arrows{display:flex;gap:12px;pointer-events:auto;}
.hero__arrow{
  width:54px;height:54px;border-radius:50%;border:1px solid rgba(248,247,244,.35);
  background:rgba(11,31,58,.25);color:var(--creme);backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .2s;
}
.hero__arrow:hover{background:var(--or);border-color:var(--or);color:var(--nuit);transform:translateY(-2px);}
.hero__arrow svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;}
.progress-run span{animation:progrun var(--dur,7s) linear forwards;}
@keyframes progrun{from{width:0;}to{width:100%;}}

/* ============================================================
   BANDE CONFIANCE
   ============================================================ */
.trust{background:var(--nuit);color:var(--creme);}
.trust__grid{display:grid;grid-template-columns:repeat(4,1fr);}
.trust__cell{padding:46px 30px;border-left:1px solid rgba(228,206,156,.16);text-align:center;}
.trust__cell:first-child{border-left:none;}
.trust__num{font-family:var(--serif);font-size:clamp(30px,3.2vw,44px);color:var(--or-clair);font-weight:600;line-height:1;}
.trust__lab{font-size:13.5px;letter-spacing:.04em;color:rgba(248,247,244,.76);margin-top:12px;}

/* ============================================================
   SECTIONS génériques
   ============================================================ */
.section{padding:clamp(72px,11vh,140px) 0;}
.section--sable{background:var(--sable);}
.sec-head{max-width:760px;}
.sec-head--center{margin:0 auto;text-align:center;}
.sec-head--row{display:flex;justify-content:space-between;align-items:flex-end;max-width:none;gap:30px;flex-wrap:wrap;}
.sec-head__txt{max-width:620px;}
.sec-head h2{font-size:clamp(30px,4.4vw,58px);margin-top:22px;color:var(--nuit);}
.sec-head p{margin-top:22px;}
.sec-head--center p{margin-left:auto;margin-right:auto;}

/* INTRO */
.intro__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,6vw,90px);align-items:center;}
.intro__media{position:relative;}
.intro__ph{height:560px;border-radius:var(--radius);background:radial-gradient(120% 120% at 70% 20%,#1d3c66,#0e2647 55%,#07111f);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.intro__mark{height:62%;width:auto;opacity:.18;}
.intro__mark path{fill:var(--or-clair);}
.intro__badge{
  position:absolute;right:-26px;bottom:-26px;background:var(--nuit);color:var(--creme);
  padding:30px 34px;border-radius:var(--radius);max-width:260px;box-shadow:0 30px 60px rgba(8,22,39,.25);
}
.intro__badge .n{font-family:var(--serif);font-size:42px;color:var(--or-clair);line-height:1;}
.intro__badge .t{font-size:13.5px;color:rgba(248,247,244,.82);margin-top:8px;letter-spacing:.02em;}
.intro__titre{font-size:clamp(30px,4.4vw,56px);color:var(--nuit);margin:22px 0 24px;}
.intro__lead2{margin-top:18px;}
.intro__sign{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--nuit);margin-top:30px;}

/* ============================================================
   SERVICES
   ============================================================ */
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:60px;}
.svc-card{
  position:relative;display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:42px 40px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(8,22,39,.10);border-color:var(--or);}
.svc-card__no{position:absolute;top:30px;right:34px;font-family:var(--serif);font-size:54px;color:var(--sable);line-height:1;}
.svc-card__icon{width:56px;height:56px;color:var(--or);margin-bottom:26px;}
.svc-card__icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.svc-card h3{font-family:var(--serif);font-size:27px;color:var(--nuit);font-weight:600;}
.svc-card p{margin-top:14px;font-size:15.5px;color:var(--gris);max-width:42ch;}
.svc-card ul{margin-top:20px;display:flex;flex-direction:column;gap:9px;list-style:none;}
.svc-card li{font-size:14.5px;color:var(--nuit);display:flex;align-items:center;gap:11px;}
.svc-card li::before{content:"";width:6px;height:6px;background:var(--or);transform:rotate(45deg);flex:0 0 6px;}

/* ============================================================
   ESPACE HÔTE (bloc nuit)
   ============================================================ */
.conc{background:var(--nuit);color:var(--creme);position:relative;overflow:hidden;}
.conc__mark{position:absolute;right:-120px;top:50%;transform:translateY(-50%);height:760px;width:auto;opacity:.05;}
.conc__mark path{fill:var(--or);}
.conc__grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(40px,6vw,90px);align-items:center;position:relative;z-index:2;}
.conc__head h2{font-size:clamp(30px,4.4vw,56px);margin-top:22px;color:var(--creme);}
.conc__head p{margin-top:22px;color:rgba(248,247,244,.76);max-width:48ch;}
.conc__cta{margin-top:30px;}
.conc__list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(228,206,156,.18);border:1px solid rgba(228,206,156,.18);border-radius:var(--radius);overflow:hidden;}
.conc__item{background:var(--nuit);padding:32px 30px;transition:background .3s ease;}
.conc__item:hover{background:var(--nuit-700);}
.conc__item svg{width:30px;height:30px;stroke:var(--or-clair);fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.conc__item h4{font-family:var(--serif);font-size:20px;margin-top:18px;font-weight:600;}
.conc__item p{font-size:13.5px;color:rgba(248,247,244,.68);margin-top:7px;}

/* ============================================================
   MÉTHODE
   ============================================================ */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,60px);margin-top:64px;}
.step__no{font-family:var(--serif);font-size:20px;color:#9A7B34;width:64px;height:64px;border:1px solid var(--or);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.step h3{font-family:var(--serif);font-size:26px;color:var(--nuit);margin-top:26px;font-weight:600;}
.step p{margin-top:13px;font-size:15.5px;color:var(--gris);max-width:36ch;}

/* ============================================================
   LOGEMENTS
   ============================================================ */
.port-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px;}
.port-grid--2{grid-template-columns:repeat(2,1fr);}
.port-card{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--nuit-700);min-height:340px;}
.port-card img{width:100%;height:340px;object-fit:cover;transition:transform .6s ease;}
.port-card.tall img{height:702px;}
.port-card:hover img{transform:scale(1.04);}
.port-card__ph{height:420px;display:flex;align-items:center;justify-content:center;}
.port-card__mark{height:55%;width:auto;opacity:.16;}
.port-card__mark path{fill:var(--or-clair);}
.port-card__cap{position:absolute;left:0;bottom:0;width:100%;padding:26px 26px 24px;z-index:3;color:var(--creme);
  background:linear-gradient(180deg,rgba(7,17,31,0),rgba(7,17,31,.85));pointer-events:none;}
.port-card__loc{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--or-clair);}
.port-card__name{font-family:var(--serif);font-size:24px;font-weight:600;margin-top:6px;}
.port-card__tag{position:absolute;top:18px;left:18px;z-index:3;background:rgba(248,247,244,.94);color:var(--nuit);
  font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:7px 13px;border-radius:999px;}

/* ============================================================
   ENGAGEMENTS
   ============================================================ */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px;}
.testi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:38px 34px;display:flex;flex-direction:column;}
.testi__ic{width:46px;height:46px;border-radius:50%;background:var(--sable);display:flex;align-items:center;justify-content:center;}
.testi__ic svg{width:22px;height:22px;stroke:#9A7B34;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.testi__q{font-family:var(--serif);font-size:19px;line-height:1.55;color:var(--nuit);margin-top:22px;font-style:italic;flex:1;}
.testi__by{display:flex;align-items:center;gap:14px;margin-top:26px;}
.testi__by .nm{font-size:15px;font-weight:600;color:var(--nuit);}
.testi__by .rl{font-size:13px;color:var(--gris);}

/* ============================================================
   CONTACT
   ============================================================ */
.cta{position:relative;background:var(--nuit-900);color:var(--creme);overflow:hidden;}
.cta__bg{position:absolute;inset:0;background:radial-gradient(110% 130% at 80% 0%,#16335e 0%,var(--nuit) 46%,var(--nuit-900) 100%);}
.cta__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr .9fr;gap:clamp(40px,6vw,90px);align-items:center;}
.cta__head h2{font-size:clamp(32px,4.6vw,60px);color:var(--creme);margin-top:22px;}
.cta__head p{margin-top:22px;color:rgba(248,247,244,.78);max-width:44ch;}
.cta__contacts{margin-top:34px;display:flex;flex-direction:column;gap:16px;}
.cta__contacts a,.cta__contacts span{display:flex;align-items:center;gap:14px;font-size:16px;}
.cta__contacts span{color:rgba(248,247,244,.78);}
.cta__contacts svg{width:20px;height:20px;stroke:var(--or);fill:none;stroke-width:1.6;flex:0 0 20px;}
.form{background:rgba(248,247,244,.04);border:1px solid rgba(228,206,156,.2);border-radius:var(--radius);padding:clamp(22px,3vw,44px);}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
.form__row .field{margin-top:0;}
.form > .field:first-of-type{margin-top:16px;}
.field label{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--or-clair);}
.field input,.field select,.field textarea{
  background:rgba(11,31,58,.4);border:1px solid rgba(228,206,156,.22);border-radius:var(--radius);
  padding:14px 16px;color:var(--creme);font-family:inherit;font-size:16px;transition:border-color .2s;width:100%;
}
.field input::placeholder,.field textarea::placeholder{color:rgba(248,247,244,.45);}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--or);}
.field select option{color:#111;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.consent{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:13px;color:rgba(248,247,244,.78);}
.consent input{margin-top:3px;accent-color:var(--or);width:16px;height:16px;flex:0 0 16px;}
.consent a{color:var(--or-clair);text-decoration:underline;}
.form .btn{width:100%;margin-top:22px;}
.form__note{font-size:12.5px;color:rgba(248,247,244,.6);margin-top:14px;text-align:center;}
.form__note.ok{color:#7FD1A8;}
.form__note.err{color:#F2A58E;}

/* ============================================================
   FOOTER
   ============================================================ */
.foot{background:var(--nuit);color:var(--creme);padding:clamp(56px,7vh,84px) 0 30px;}
.foot__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;}
.foot__brand .brand{margin-bottom:22px;}
.foot__brand p{color:rgba(248,247,244,.66);font-size:14.5px;max-width:34ch;}
.foot__h{font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--or);margin-bottom:20px;}
.foot__col a{display:block;font-size:14.5px;color:rgba(248,247,244,.76);margin-bottom:13px;transition:color .2s;}
.foot__col a:hover{color:var(--creme);}
.foot__bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:54px;padding-top:24px;border-top:1px solid rgba(228,206,156,.16);font-size:13px;color:rgba(248,247,244,.6);flex-wrap:wrap;}

/* ============================================================
   REVEAL
   ============================================================ */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease;}
.js .reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none;}}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1080px){
  .nav__links{display:none;}
  .nav.open .nav__links{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--creme);border-bottom:1px solid var(--line);padding:8px var(--pad) 18px;}
  .nav.open .nav__links a{padding:12px 0;width:100%;font-size:16px;}
  .nav__burger{display:flex;}
  .nav__phone{display:none;}
  .intro__grid,.conc__grid,.cta__grid{grid-template-columns:1fr;}
  .conc__mark{display:none;}
  .trust__grid{grid-template-columns:repeat(2,1fr);}
  .trust__cell:nth-child(-n+2){border-bottom:1px solid rgba(228,206,156,.16);}
  .trust__cell:nth-child(odd){border-left:none;}
  .port-card.tall img{height:340px;}
  .intro__badge{right:12px;bottom:-26px;}
}
@media (max-width:780px){
  .svc-grid,.steps,.port-grid,.port-grid--2,.testi-grid,.conc__list,.foot__top{grid-template-columns:1fr;}
  .port-card[style]{grid-row:auto !important;}
  .form__row{grid-template-columns:1fr;}
  .form__row .field + .field{margin-top:16px;}
  .foot__top{gap:34px;}
  .intro__ph{height:380px;}
  .hero__content{padding-bottom:110px;}
  .hero__arrows{display:none;}
  .hero__spec{padding:4px 16px 4px 0;border-left:none;}
  .svc-card{padding:32px 24px;}
  .trust__cell{padding:32px 16px;}
  .nav .btn{padding:10px 16px;font-size:13px;}
  .brand__word{font-size:23px;}
  .brand__icon{height:32px;}
}
@media (max-width:420px){
  .nav .btn{display:none;}
  .nav.open .btn{display:inline-flex;}
}
