/* ============================================================
   NAC LANDSCAPE — by Natural Alternatives
   Shares tokens/type with naturalalternatives.ca and NAC OS
   (charcoal / off-white / green, Big Shoulders + IBM Plex)
   ============================================================ */

@font-face{font-family:'Big Shoulders';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/BigShoulders-600.woff2') format('woff2');}
@font-face{font-family:'Big Shoulders';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/BigShoulders-800.woff2') format('woff2');}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/PlexSans-400.woff2') format('woff2');}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/PlexSans-500.woff2') format('woff2');}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/PlexSans-600.woff2') format('woff2');}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/PlexMono-400.woff2') format('woff2');}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/PlexMono-500.woff2') format('woff2');}

:root{
  --bg:#0d100c;
  --bg-raised:#181c13;
  --bg-sunken:#14170f;
  --bg-sunken-2:#1a1e15;
  --text:#eef0e9;
  --text-soft:#9aa792;
  --text-faint:#6a7463;
  --border:#2b3225;
  --border-strong:#434c38;
  --accent:#5ee830;
  --accent-deep:#3a8f1a;
  --accent-bright:#5ee830;
  --accent-mist:rgba(94,232,48,.08);
  --status-hold:#e0b271;

  --font-display:'Big Shoulders',"Arial Narrow",sans-serif;
  --font-body:'IBM Plex Sans',-apple-system,"Segoe UI",sans-serif;
  --font-mono:'IBM Plex Mono',"SFMono-Regular",Consolas,monospace;

  --container:1180px;
  --gap:24px;
  --radius:2px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img,svg{display:block;max-width:100%;}
svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
a{color:inherit;}
button{font-family:inherit;}
h1,h2,h3,h4,p,ul{margin:0;}
ul{padding:0;list-style:none;}
.container{max-width:var(--container);margin-inline:auto;padding-inline:32px;}
@media (max-width:640px){ .container{padding-inline:20px;} }
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}

h1,h2,h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.01em;text-wrap:balance;color:var(--text);}

.eyebrow{font-family:var(--font-mono);font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:10px;}
.eyebrow::before{content:"";width:16px;height:1px;background:var(--accent);display:inline-block;}

.section-head{max-width:640px;margin-bottom:48px;display:flex;flex-direction:column;gap:16px;}
.section-head h2{font-size:clamp(26px,4vw,40px);line-height:1.05;}
.section-head p{color:var(--text-soft);font-size:16px;max-width:54ch;}
.section-head.centered{margin-inline:auto;text-align:center;align-items:center;}

.section-head-row{display:flex;align-items:flex-start;gap:36px;margin-bottom:48px;}
.section-head-row .section-head{margin-bottom:0;}
.section-mark{
  width:84px;height:84px;object-fit:contain;flex-shrink:0;mix-blend-mode:screen;margin-top:-4px;
  background:var(--bg-raised); border-radius:10px; padding:14px; box-sizing:border-box;
}
@media (max-width:640px){ .section-head-row{flex-direction:column;gap:14px;} .section-mark{width:60px;height:60px;padding:10px;} }

section{position:relative;border-bottom:1px solid var(--border);}
section.pad{padding-block:96px;}
@media (max-width:720px){ section.pad{padding-block:60px;} }
.band-sunken{background:var(--bg-sunken);}

/* ---------------- Buttons ---------------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:14px 22px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;background:none;transition:transform .25s var(--ease), background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);white-space:nowrap;}
.btn-primary{background:var(--accent);color:#0d100c;border-color:var(--accent);}
.btn-primary:hover{background:var(--accent-bright);border-color:var(--accent-bright);transform:translateY(-2px);}
.btn-outline{background:transparent;color:var(--text);border-color:var(--border-strong);}
.btn-outline:hover{border-color:var(--accent);color:var(--accent-bright);transform:translateY(-2px);}
.btn-arrow{transition:transform .25s var(--ease);}
.btn:hover .btn-arrow{transform:translateX(3px);}
.btn[disabled]{opacity:.6;cursor:default;transform:none !important;}

/* ---------------- Icons ---------------- */
.icon{width:22px;height:22px;}
.icon-wrap{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--accent);flex-shrink:0;}

/* ---------------- Top bar ---------------- */
.topbar{background:var(--bg-sunken);border-bottom:1px solid var(--border);}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:9px;font-family:var(--font-mono);font-size:11.5px;color:var(--text-soft);letter-spacing:.02em;}
.topbar a{color:var(--accent-bright);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;}
.topbar a svg{width:11px;height:11px;}
.topbar p{margin:0;}
@media (max-width:720px){ .topbar p span{display:none;} }

/* ---------------- Nav ---------------- */
.nav{position:sticky;top:0;z-index:40;background:rgba(13,16,12,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding-block:16px;}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--text);}
.brand-mark{width:30px;height:30px;border:1.5px solid var(--text);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;position:relative;}
.brand-mark::after{content:"";position:absolute;inset:5px;border:1.5px solid var(--accent);}
.brand-word{display:flex;flex-direction:column;line-height:1.05;}
.brand-word b{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:.03em;text-transform:uppercase;}
.brand-word span{font-family:var(--font-mono);font-size:10px;color:var(--text-soft);letter-spacing:.04em;}
.nav-links{display:flex;gap:28px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;}
.nav-links a{text-decoration:none;color:var(--text-soft);transition:color .2s var(--ease);}
.nav-links a:hover{color:var(--accent-bright);}
.nav-cta{display:flex;align-items:center;gap:20px;}
.nav-toggle{display:none;background:none;border:1px solid var(--border-strong);border-radius:var(--radius);width:40px;height:40px;align-items:center;justify-content:center;cursor:pointer;color:var(--text);}
.nav-toggle svg{width:18px;height:18px;}
@media (max-width:860px){
  .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--bg-sunken);border-bottom:1px solid var(--border);flex-direction:column;gap:0;padding:8px 0;display:none;}
  .nav-links.open{display:flex;}
  .nav-links a{padding:14px 20px;border-top:1px solid var(--border);}
  .nav-toggle{display:inline-flex;}
  .nav-cta .btn-primary{padding:11px 16px;font-size:11.5px;}
}

/* ---------------- Hero ---------------- */
.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-block:84px 90px;}
@media (max-width:980px){ .hero-inner{grid-template-columns:1fr;padding-block:52px;} }
.hero-copy h1{font-size:clamp(34px,5vw,54px);line-height:1.04;margin-block:20px 18px;}
.hero-copy p.lede{font-size:17.5px;color:var(--text-soft);max-width:48ch;margin-bottom:30px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;align-items:center;}
.hero-meta{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;color:var(--text-soft);letter-spacing:.03em;}
.hero-meta b{color:var(--text);display:block;font-size:18px;font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;}

/* status card */
.status-card{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(0,0,0,.6);}
.status-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong);}
.status-title{margin-left:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-soft);letter-spacing:.05em;}
.status-body{padding:20px;display:flex;flex-direction:column;gap:10px;}
.status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-raised);}
.status-row-label{display:flex;align-items:center;gap:11px;font-size:13.5px;}
.status-row-label svg{width:16px;height:16px;stroke:var(--accent-bright);flex-shrink:0;}
.chip{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:2px;border:1px solid;white-space:nowrap;}
.chip-ok{color:var(--accent-bright);border-color:rgba(107,191,140,.35);background:rgba(107,191,140,.08);}
.chip-review{color:var(--status-hold);border-color:rgba(224,178,113,.35);background:rgba(224,178,113,.08);}
.chip-neutral{color:var(--text-soft);border-color:var(--border-strong);background:transparent;}

/* ---------------- Card grids ---------------- */
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);}
@media (max-width:920px){ .card-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .card-grid{grid-template-columns:1fr;} }
.info-card{background:var(--bg-raised);padding:30px 26px;display:flex;flex-direction:column;gap:16px;}
.info-card h4{font-family:var(--font-body);font-weight:600;font-size:16px;text-transform:none;letter-spacing:0;}
.info-card p{font-size:13.5px;color:var(--text-soft);}

/* dark service cards (reused from main site language) */
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);}
.service-grid-3{grid-template-columns:repeat(3,1fr);}
@media (max-width:920px){ .service-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .service-grid{grid-template-columns:1fr;} }
.service-card{background:var(--bg-sunken);border:1px solid var(--border);padding:28px 24px;display:flex;flex-direction:column;gap:16px;min-height:170px;transition:transform .3s var(--ease);}
.service-card:hover{transform:translateY(-5px);}
.service-card .icon{stroke:var(--accent-bright);width:28px;height:28px;}
.service-card h4{font-family:var(--font-body);font-weight:600;font-size:16px;text-transform:none;letter-spacing:0;margin-top:auto;}
.service-card p{font-size:13px;color:var(--text-soft);}
.service-card ul{display:flex;flex-direction:column;gap:6px;margin-top:2px;}
.service-card li{font-size:12.5px;color:var(--text-soft);display:flex;gap:7px;line-height:1.4;}
.service-card li svg{width:11px;height:11px;stroke:var(--accent-bright);margin-top:4px;flex-shrink:0;}
.service-card .tag-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px;}
.service-card .tag{font-family:var(--font-mono);font-size:10.5px;border:1px solid var(--border-strong);padding:3px 7px;border-radius:2px;color:var(--text-soft);}
.status-pill{display:inline-flex;align-items:center;gap:7px;width:fit-content;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:2px;border:1px solid rgba(224,178,113,.4);color:var(--status-hold);background:rgba(224,178,113,.08);}
.status-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--status-hold);}
.service-card.is-unavailable{background:var(--bg-sunken-2);}
.service-card.is-unavailable .icon{opacity:.4;}
.service-card.is-unavailable .tag{opacity:.5;border-style:dashed;}
.service-card.is-unavailable h4{color:var(--text-soft);}

/* ---------------- Subsection heads ---------------- */
.subsection-head{max-width:640px;margin-bottom:32px;padding-top:56px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:14px;}
.subsection-head h3{font-size:24px;letter-spacing:.01em;}
.subsection-head p{color:var(--text-soft);font-size:15.5px;max-width:56ch;}
.timeline-strip{display:flex;gap:32px;margin:8px 0 40px;flex-wrap:wrap;font-family:var(--font-mono);font-size:12px;color:var(--text-soft);letter-spacing:.04em;}
.timeline-strip b{color:var(--text);display:block;font-size:19px;font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;}

/* ---------------- Plan cards ---------------- */
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);margin-top:32px;}
@media (max-width:700px){ .plan-grid{grid-template-columns:1fr;} }
.plan-card{background:var(--bg-raised);border:1px solid var(--border);padding:28px 26px;display:flex;flex-direction:column;gap:16px;}
.plan-card .plan-tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);}
.plan-card h4{font-family:var(--font-body);font-weight:600;font-size:17px;}
.plan-card ul{display:flex;flex-direction:column;gap:8px;}
.plan-card li{font-size:13.5px;color:var(--text-soft);display:flex;gap:8px;line-height:1.4;}
.plan-card li svg{width:13px;height:13px;stroke:var(--accent);margin-top:3px;flex-shrink:0;}
.plan-card .plan-note{font-family:var(--font-mono);font-size:11.5px;color:var(--text-soft);border-top:1px solid var(--border);padding-top:14px;margin-top:auto;}

/* ---------------- Vegetation rows ---------------- */
.veg-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-top:8px;}
@media (max-width:700px){ .veg-grid{grid-template-columns:1fr;} }
.veg-row{display:flex;gap:16px;padding-block:18px;border-top:1px solid var(--border);align-items:flex-start;}
.veg-copy h4{font-family:var(--font-body);font-weight:600;font-size:15px;margin-bottom:4px;}
.veg-copy p{font-size:13px;color:var(--text-soft);}

/* ---------------- Service area ---------------- */
.area-inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
@media (max-width:820px){ .area-inner{grid-template-columns:1fr;gap:32px;} }
.area-list{display:flex;flex-direction:column;}
.area-row{display:flex;align-items:center;gap:13px;padding-block:16px;border-top:1px solid var(--border);font-size:15px;}
.area-row:last-child{border-bottom:1px solid var(--border);}
.area-row svg{width:16px;height:16px;stroke:var(--accent);flex-shrink:0;}
.area-copy p{font-size:16px;color:var(--text-soft);line-height:1.6;}
.area-copy p + p{margin-top:14px;}

/* ---------------- Quote callout ---------------- */
.quote-band{background:var(--bg-sunken);text-align:center;}
.quote-inner{max-width:680px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:18px;}
.quote-inner h2{font-size:clamp(28px,4.5vw,44px);}
.quote-inner p{color:var(--text-soft);font-size:16.5px;max-width:52ch;}
.quote-ctas{display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:10px;}

/* ---------------- FAQ ---------------- */
.faq-list{max-width:760px;margin-inline:auto;border-top:1px solid var(--border);}
.faq-item{border-bottom:1px solid var(--border);}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:none;border:none;color:var(--text);text-align:left;cursor:pointer;padding:22px 4px;font-family:var(--font-body);font-weight:600;font-size:16px;}
.faq-q svg{width:16px;height:16px;stroke:var(--accent);flex-shrink:0;transition:transform .3s var(--ease);}
.faq-item[data-open="true"] .faq-q svg{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease);}
.faq-a-inner{padding:0 4px 22px;font-size:14.5px;color:var(--text-soft);max-width:62ch;}

/* ---------------- Parent brand ---------------- */
.brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);margin-top:40px;}
@media (max-width:700px){ .brand-grid{grid-template-columns:1fr;} }
.brand-card{background:var(--bg-raised);border:1px solid var(--border);padding:28px 26px;display:flex;flex-direction:column;gap:14px;}
.brand-card h4{font-family:var(--font-body);font-weight:600;font-size:17px;text-transform:none;letter-spacing:0;}
.brand-card p{font-size:13.5px;color:var(--text-soft);}
.status-pill-live{border-color:rgba(107,191,140,.4);color:var(--accent-bright);background:rgba(107,191,140,.08);}
.status-pill-live::before{background:var(--accent-bright);}
.parent-inner{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:start;}
@media (max-width:700px){ .parent-inner{grid-template-columns:1fr;} }
.parent-mark{width:110px;height:110px;object-fit:contain;flex-shrink:0;}
.mark-link{display:inline-block;border-radius:50%;transition:filter .3s var(--ease), transform .3s var(--ease);}
.mark-link:hover,.mark-link:focus-visible{filter:drop-shadow(0 0 10px var(--accent)) drop-shadow(0 0 22px var(--accent-bright));transform:scale(1.06);}
.mark-link:active{filter:drop-shadow(0 0 14px var(--accent)) drop-shadow(0 0 30px var(--accent-bright));transform:scale(.98);}
.mark-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px;}
.brand-card h4{display:flex;align-items:center;gap:8px;}
.brand-card-link{text-decoration:none;color:inherit;cursor:pointer;transition:transform .25s var(--ease), border-color .25s var(--ease);}
.brand-card-link:hover{transform:translateY(-4px);border-color:var(--accent);}
.brand-card-link .card-arrow{width:14px;height:14px;stroke:var(--accent-bright);transition:transform .2s var(--ease);}
.brand-card-link:hover .card-arrow{transform:translateX(3px);}

/* ---------------- Footer ---------------- */
footer{background:var(--bg-sunken);border-top:2px solid var(--accent);}
.footer-inner{padding-block:56px 28px;display:grid;grid-template-columns:1.4fr 1fr 1.4fr;gap:40px;}
@media (max-width:760px){ .footer-inner{grid-template-columns:1fr 1fr;row-gap:36px;} }
@media (max-width:520px){ .footer-inner{grid-template-columns:1fr;} }
.footer-brand .brand-word b{font-size:18px;}
.footer-brand p{font-size:13px;color:var(--text-soft);margin-top:14px;max-width:34ch;}
.footer-col h5{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft);margin-bottom:14px;}
.footer-col ul{display:flex;flex-direction:column;gap:10px;}
.footer-col a{font-size:13.5px;text-decoration:none;color:var(--text);opacity:.9;}
.footer-col a:hover{color:var(--accent-bright);opacity:1;}
.footer-disclaimer{font-size:12px;color:var(--text-faint);line-height:1.6;max-width:48ch;}
.footer-bottom{border-top:1px solid var(--border);padding-block:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-faint);}

/* ---------------- Modal (real submission) ---------------- */
.modal-overlay{position:fixed;inset:0;background:rgba(10,12,8,.72);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100;opacity:0;pointer-events:none;transition:opacity .25s var(--ease);}
.modal-overlay.open{opacity:1;pointer-events:auto;}
.modal{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;max-width:520px;width:100%;max-height:88vh;overflow-y:auto;padding:32px 30px;transform:translateY(14px);transition:transform .25s var(--ease);}
.modal-overlay.open .modal{transform:translateY(0);}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:6px;}
.modal-head h3{font-size:22px;}
.modal-close{background:none;border:1px solid var(--border-strong);border-radius:var(--radius);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-soft);flex-shrink:0;}
.modal-close svg{width:14px;height:14px;}
.modal p.modal-sub{font-size:13.5px;color:var(--text-soft);margin-bottom:24px;}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media (max-width:460px){ .field-row{grid-template-columns:1fr;} }
.field label{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);}
.field input,.field textarea,.field select{background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);font-size:14.5px;padding:11px 13px;resize:vertical;}
.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
.field textarea{min-height:80px;}
.modal-foot{display:flex;align-items:center;gap:14px;margin-top:22px;}
.modal-foot .btn{width:100%;justify-content:center;}
.form-note{font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint);margin-top:14px;text-align:center;}
.form-error{font-size:13px;color:#e0917c;background:rgba(224,145,124,.1);border:1px solid rgba(224,145,124,.35);border-radius:4px;padding:11px 13px;margin-bottom:16px;display:none;}
.form-error.show{display:block;}
.success-state{display:none;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:16px 0 4px;}
.success-state.show{display:flex;}
.success-icon{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--accent);display:flex;align-items:center;justify-content:center;}
.success-icon svg{width:24px;height:24px;stroke:var(--accent-bright);}
.success-state h4{font-family:var(--font-body);font-weight:600;font-size:17px;text-transform:none;}
.success-state p{font-size:13.5px;color:var(--text-soft);max-width:36ch;}
.modal-form.hide{display:none;}
.btn-primary .spinner{display:none;width:14px;height:14px;border:2px solid rgba(13,16,12,.3);border-top-color:#0d100c;border-radius:50%;animation:spin .7s linear infinite;}
.btn-primary.loading .spinner{display:inline-block;}
.btn-primary.loading .btn-text{opacity:.7;}
@keyframes spin{to{transform:rotate(360deg);}}

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