/* SodaTide — sodatide-en.com
   Every text/background pair below was contrast-checked against WCAG AA. */
:root{
  --ink:#12332E;          /* deep pine — 13.65:1 on white */
  --ink-dark:#0D2622;
  --ink-mid:#1C4A43;      /* 9.95:1 */
  --ink-tint:#E7EFED;
  --teal:#0E7C6F;         /* accent — 5.08:1 with white text */
  --teal-dark:#0A6055;    /* 7.45:1 — small accent text */
  --teal-soft:#6FD3C4;    /* ONLY on dark backgrounds */
  --teal-tint:#E4F4F1;
  --text:#3D4A47;         /* body — 9.26:1 */
  --text-soft:#4A5754;    /* 7.55:1 */
  --bg:#FFFFFF;
  --bg-warm:#FAF8F5;
  --bg-cool:#F3F7F6;
  --line:#E4E0D9;
  --line-cool:#DCE6E3;
  --r:20px;
  --bs-body-font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bs-body-color:var(--text);
  --bs-body-bg:var(--bg);
  --bs-link-color:var(--teal-dark);
  --bs-link-hover-color:var(--ink);
  --bs-border-color:var(--line-cool);
}
html{scroll-behavior:smooth;}
body{font-size:19px;line-height:1.72;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;padding-bottom:132px;overflow-x:hidden;}
@media (max-width:575px){body{padding-bottom:148px;}}
h1,h2,h3,h4,h5,h6{font-family:'Sora',system-ui,sans-serif;font-weight:700;color:var(--ink);letter-spacing:-.024em;line-height:1.18;}
h1{font-size:clamp(34px,4.3vw,54px);margin-bottom:.5em;}
h2{font-size:clamp(27px,3.1vw,39px);margin-bottom:.6em;}
h3{font-size:clamp(20px,2vw,26px);margin-bottom:.5em;}
h4{font-size:20px;}
p{margin-bottom:1.15rem;}
img{max-width:100%;height:auto;}
a{color:var(--bs-link-color);text-decoration:none;}
a:hover{text-decoration:underline;color:var(--ink);}
a:focus-visible,button:focus-visible,.btn:focus-visible,.accordion-button:focus-visible{outline:3px solid var(--teal);outline-offset:3px;}
.lede{font-size:21px;line-height:1.66;color:var(--ink-mid);}
.eyebrow{display:inline-block;font-family:'Sora',sans-serif;font-size:13.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:14px;}
.topbar{background:var(--ink-dark);color:#D2E2DE;font-size:16px;padding:10px 0;text-align:center;}
.topbar strong{color:#fff;}
.navbar{background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:13px 0;}
.navbar-brand{font-family:'Sora',sans-serif;font-weight:700;font-size:26px;color:var(--ink)!important;display:flex;align-items:center;gap:10px;white-space:nowrap;}
.brand-mark{width:38px;height:38px;border-radius:13px;background:var(--ink);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.brand-mark svg{width:21px;height:21px;}
.navbar .nav-link{color:var(--ink-mid)!important;font-weight:500;font-size:16px;padding:.5rem .55rem!important;white-space:nowrap;}
.navbar .nav-link:hover,.navbar .nav-link[aria-current="page"]{color:var(--teal-dark)!important;}
@media (min-width:992px) and (max-width:1340px){.navbar .nav-link{padding:.5rem .34rem!important;font-size:14.8px;}}
.btn{font-family:'Sora',sans-serif;font-weight:600;border-radius:12px;padding:14px 28px;font-size:17px;border:0;transition:.18s;}
.btn-teal{background:var(--teal);color:#fff!important;}
.btn-teal:hover{background:var(--teal-dark);color:#fff!important;text-decoration:none;}
.btn-ink{background:var(--ink);color:#fff!important;} .btn-ink:hover{background:var(--ink-dark);color:#fff!important;text-decoration:none;}
.btn-outline-st{background:transparent;color:var(--ink)!important;box-shadow:inset 0 0 0 2px var(--line-cool);}
.btn-outline-st:hover{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)!important;text-decoration:none;}
.btn-on-dark{background:#fff;color:var(--ink)!important;} .btn-on-dark:hover{background:var(--ink-tint);color:var(--ink)!important;text-decoration:none;}
.btn-lg{padding:17px 36px;font-size:18.5px;}
section{padding:80px 0;}
@media (max-width:767px){section{padding:54px 0;}}
@media (max-width:767px){.row.g-5,.row.g-4{--bs-gutter-x:1.5rem;}}
.sec-warm{background:var(--bg-warm);}
.sec-cool{background:var(--bg-cool);}
.sec-dark{background:var(--ink);}
.sec-dark h1,.sec-dark h2,.sec-dark h3,.sec-dark h4{color:#fff;}
.sec-dark p,.sec-dark li,.sec-dark .lede{color:#CBDCD8;}
.sec-dark .eyebrow{color:var(--teal-soft);}
.sec-dark a{color:var(--teal-soft);} .sec-dark a:hover{color:#fff;}
.sec-dark strong{color:#fff;}
.hero{background:linear-gradient(162deg,#EDF6F4 0%,var(--bg-warm) 52%,#fff 100%);padding:62px 0 78px;}
.hero-art{position:relative;text-align:center;}
.hero-art::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74%;padding-bottom:74%;border-radius:50%;background:radial-gradient(circle,rgba(14,124,111,.14) 0%,rgba(14,124,111,0) 68%);}
.hero-art img{position:relative;z-index:2;max-width:380px;width:100%;height:auto;object-fit:contain;}
.card-st{background:#fff;border:1px solid var(--line-cool);border-radius:var(--r);padding:32px;height:100%;transition:.18s;}
.card-st:hover{border-color:var(--teal);box-shadow:0 12px 34px rgba(18,51,46,.08);}
.card-st h3{font-size:21px;}
.sec-dark .card-st{background:#1C4A43;border-color:#2A5B53;}
.sec-dark .card-st h3{color:#fff;} .sec-dark .card-st p{color:#C6D8D4;}
.ic{width:54px;height:54px;border-radius:15px;background:var(--teal-tint);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.ic svg{width:26px;height:26px;stroke:var(--teal-dark);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sec-dark .ic{background:rgba(111,211,196,.16);} .sec-dark .ic svg{stroke:var(--teal-soft);}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.pill{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);padding:9px 17px;border-radius:60px;}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);}
.statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px;}
.statbox{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px 15px;text-align:center;}
.statbox .n{font-family:'Sora',sans-serif;font-size:25px;font-weight:700;color:var(--teal-dark);line-height:1;}
.statbox .l{font-size:15px;color:var(--text-soft);margin-top:8px;line-height:1.42;}
@media (max-width:575px){.statgrid{grid-template-columns:1fr 1fr;}}
.bimg{background:var(--bg-warm);border:1px solid var(--line);border-radius:var(--r);padding:30px;text-align:center;}
.bimg.cool{background:var(--bg-cool);border-color:var(--line-cool);}
.bimg img{max-width:100%;height:auto;object-fit:contain;max-height:400px;border-radius:12px;}
@media (max-width:575px){.bimg{padding:18px;}.bimg img{max-width:100%!important;}}
.badges{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;max-width:900px;margin:0 auto;align-items:end;}
.badges img{max-width:98px;width:100%;height:auto;margin:0 auto;display:block;}
.badges .cap{text-align:center;font-size:15.5px;font-weight:600;color:var(--ink);margin-top:12px;font-family:'Sora',sans-serif;}
@media (max-width:700px){.badges{grid-template-columns:repeat(2,1fr);gap:28px;}}
.spec{background:#fff;border:1px solid var(--line-cool);border-radius:var(--r);overflow:hidden;}
.spec .head{background:var(--ink);color:#fff;padding:16px 26px;font-family:'Sora',sans-serif;font-weight:700;font-size:19px;}
.spec .r{display:grid;grid-template-columns:1fr auto;gap:16px;padding:14px 26px;border-bottom:1px solid var(--line-cool);font-size:18px;color:var(--text);}
.spec .r:last-child{border-bottom:none;}
.spec .r b{color:var(--ink);font-weight:700;white-space:nowrap;}
.spec .r.sub{padding-left:44px;font-size:17px;color:var(--text-soft);}
.spec .r.hl{background:var(--ink-tint);}
/* pricing — its own treatment, not the card grid used elsewhere */
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch;}
@media (max-width:1100px){.plans{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.plans{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
.plan{position:relative;background:#fff;border:1px solid var(--line-cool);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:.18s;}
.plan:hover{border-color:var(--teal);box-shadow:0 14px 38px rgba(18,51,46,.10);}
.plan .cap{background:var(--bg-cool);padding:22px 22px 0;text-align:center;}
.plan .qty{font-family:'Sora',sans-serif;font-size:23px;font-weight:700;color:var(--ink);}
.plan .sup{font-size:15.5px;color:var(--text-soft);margin-top:5px;}
.plan .shot{background:var(--bg-cool);padding:10px 22px 18px;text-align:center;}
.plan .shot img{max-height:150px;width:auto;max-width:100%;object-fit:contain;margin:0 auto;display:block;}
.plan .body{padding:24px 22px 26px;display:flex;flex-direction:column;flex:1;}
.plan .body ul{list-style:none;padding:0;margin:0 0 20px;}
.plan .body li{font-size:17px;padding:7px 0 7px 26px;position:relative;color:var(--text);}
.plan .body li::before{content:"";position:absolute;left:0;top:14px;width:13px;height:8px;border-left:2.5px solid var(--teal);border-bottom:2.5px solid var(--teal);transform:rotate(-45deg);}
.plan .btn{margin-top:auto;}
.plan.feature{border:2px solid var(--ink);}
.plan.feature .cap,.plan.feature .shot{background:var(--ink);}
.plan.feature .qty{color:#fff;} .plan.feature .sup{color:#B6CCC7;}
.plan .flag{position:absolute;top:0;right:0;background:var(--teal);color:#fff;font-family:'Sora',sans-serif;font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;padding:8px 16px;border-bottom-left-radius:14px;}
.faq-item{background:#fff;border:1px solid var(--line-cool);border-radius:16px;margin-bottom:13px;overflow:hidden;}
.faq-item .accordion-button{font-family:'Sora',sans-serif;font-weight:600;font-size:18.5px;color:var(--ink);background:#fff;padding:21px 26px;box-shadow:none;}
.faq-item .accordion-button:not(.collapsed){background:var(--ink-tint);color:var(--ink);}
.faq-item .accordion-body{padding:4px 26px 24px;font-size:18px;color:var(--text);}
.note{background:var(--teal-tint);border:1px solid #BFDED8;border-left:5px solid var(--teal);border-radius:16px;padding:26px 30px;margin:28px 0;}
.note h3{font-size:20px;color:#0A4A41;margin-bottom:12px;}
.note p,.note li{font-size:18px;color:#1F4640;line-height:1.68;}
.note ul{margin:10px 0 0 18px;} .note li{margin-bottom:8px;}
.note strong{color:#0D3B34;}
.warn{background:#FBF1E8;border:1px solid #EBD3BB;border-left:5px solid #B5651E;border-radius:16px;padding:26px 30px;margin:28px 0;}
.warn h3{font-size:20px;color:#7A430F;margin-bottom:12px;}
.warn p,.warn li{font-size:18px;color:#54381E;line-height:1.68;}
.warn ul{margin:10px 0 0 18px;} .warn li{margin-bottom:8px;}
.warn strong{color:#472E17;}
.ownernote{border:2px dashed var(--teal);background:#F4FBF9;border-radius:16px;padding:26px 30px;margin-top:28px;}
.ownernote h3{font-size:20px;color:#0A4A41;margin-bottom:12px;}
.ownernote p,.ownernote li{font-size:18px;color:#1F4640;line-height:1.68;}
.ownernote ul{margin:10px 0 0 18px;} .ownernote li{margin-bottom:8px;}
.rev-card{background:#fff;border:1px solid var(--line-cool);border-radius:var(--r);padding:28px;height:100%;}
.rev-card .ph{display:inline-block;font-size:13.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#0A4A41;background:var(--teal-tint);border:1px dashed #A9CFC8;padding:6px 13px;border-radius:40px;margin-bottom:15px;}
.rev-card blockquote{font-size:18px;font-style:italic;color:var(--ink-mid);margin:0 0 15px;line-height:1.6;}
.rev-card .who{font-size:17px;color:var(--text-soft);border-top:1px solid var(--line-cool);padding-top:13px;}
.cmp{width:100%;border-collapse:collapse;font-size:18px;border:1px solid var(--line-cool);border-radius:14px;overflow:hidden;}
.cmp th{background:var(--ink);color:#fff;font-family:'Sora',sans-serif;font-size:16px;text-align:left;padding:15px 17px;}
.cmp td{padding:14px 17px;border-bottom:1px solid var(--line-cool);color:var(--text);background:#fff;font-size:18px;}
.cmp td:first-child{color:var(--ink);font-weight:600;}
.cmp tr:last-child td{border-bottom:none;}
@media (max-width:820px){.cmp,.cmp tbody,.cmp tr,.cmp td{display:block;width:100%;}.cmp thead{display:none;}.cmp tr{border-bottom:2px solid var(--line-cool);}.cmp td{border:0;padding:6px 17px;}.cmp td::before{content:attr(data-l);display:block;font-size:13.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);font-weight:700;}}
.step{display:grid;grid-template-columns:62px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line-cool);}
.step:last-child{border-bottom:none;}
.step .n{font-family:'Sora',sans-serif;font-size:16px;font-weight:700;color:#fff;background:var(--ink);width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;}
@media (max-width:575px){.step{grid-template-columns:1fr;gap:12px;}}
.prose{font-size:19px;color:var(--text);}
.prose h2{margin-top:1.7em;} .prose h3{margin-top:1.4em;color:var(--ink-mid);}
.prose ul,.prose ol{margin-bottom:1.2rem;} .prose li{margin-bottom:.6rem;color:var(--text);}
.prose strong{color:var(--ink);}
code{color:#7A2F5E;background:#F5F1F4;padding:2px 6px;border-radius:5px;font-size:.9em;}
.crumbs{font-size:17px;color:var(--text-soft);padding:18px 0 0;}
.crumbs a{color:var(--teal-dark);}
.src{background:var(--bg-warm);border:1px solid var(--line);border-radius:16px;padding:24px 28px;margin-top:30px;}
.src h4{font-size:18.5px;margin-bottom:12px;}
.src ul{margin:0;padding-left:20px;} .src li{font-size:18px;margin-bottom:8px;}
.disc{background:var(--bg-warm);border-radius:16px;padding:24px 28px;margin-top:22px;font-size:18px;color:var(--text-soft);}
.post-card{background:#fff;border:1px solid var(--line-cool);border-radius:var(--r);padding:28px;height:100%;transition:.18s;}
.post-card:hover{border-color:var(--teal);box-shadow:0 12px 32px rgba(18,51,46,.08);}
.post-card .tag{font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-dark);}
.post-card h3{font-size:21px;margin:10px 0;}
.closer{background:var(--ink);border-radius:28px;padding:52px 46px;position:relative;overflow:hidden;}
.closer::after{content:"";position:absolute;right:-90px;top:-90px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(111,211,196,.18) 0%,rgba(111,211,196,0) 70%);}
.closer h2,.closer h3{color:#fff;} .closer p{color:#CBDCD8;}
.closer .eyebrow{color:var(--teal-soft);}
@media (max-width:575px){.closer{padding:34px 24px;border-radius:20px;}}
footer{background:var(--ink-dark);color:#A9BFBA;padding:64px 0 28px;}
footer h4{color:#fff;font-size:18.5px;margin-bottom:16px;font-family:'Sora',sans-serif;}
footer p{color:#A9BFBA;}
footer a{color:#BCCFCB;} footer a:hover{color:#fff;}
footer ul{list-style:none;padding:0;margin:0;} footer li{margin-bottom:9px;font-size:18px;}
.foot-legal{border-top:1px solid #23423C;margin-top:36px;padding-top:28px;font-size:18px;color:#9CB2AD;}
.foot-legal strong{color:#DEE9E7;}
.cta-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--ink-dark);border-top:3px solid var(--teal);box-shadow:0 -6px 26px rgba(0,0,0,.26);}
.cta-bar .inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;}
.cta-bar .lbl{font-family:'Sora',sans-serif;font-weight:700;font-size:19px;color:#fff;line-height:1.26;}
.cta-bar .sub{font-size:15.5px;color:var(--teal-soft);font-weight:600;}
.cta-bar .btn{padding:13px 28px;font-size:16.5px;}
@media (max-width:575px){
  .cta-bar .inner{padding:11px 0;gap:10px;}
  .cta-bar .lbl{font-size:15px;} .cta-bar .sub{font-size:13px;}
  .cta-bar .btn{padding:11px 15px;font-size:14.5px;}
}
