/* ===================================================================
   PoeTential Technologies — poetentialtech.com
   Shared stylesheet for every page on the site.

   YOU DO NOT NEED TO EDIT THIS FILE to change words on the site.
   All the text lives in the .html files. This file only controls
   how things look. If you break it, every page loses its styling
   at once — so leave it alone unless you know what you're doing.
   =================================================================== */

/* ---------- Brand tokens ---------- */
:root{
  --blue:#2E6FA8;
  --blue-dark:#245A89;
  --blue-light:#7FB3E0;   /* readable blue for use on the dark navy sections */
  --blue-wash:#E7F0F8;
  --ink:#16202B;
  --slate:#48586A;
  --line:#DCE4EC;
  --bg-soft:#F4F7FA;
  --navy:#1A2430;
  --navy-text:#B8C6D4;
  --radius:12px;
  --shadow:0 10px 30px rgba(22,32,43,.07);
  --maxw:1090px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}
body{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.62;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  overflow-wrap:break-word;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}

/* Grid/flex children default to min-width:auto, which lets wide content
   (long <select> options especially) push the whole page sideways on phones.
   This keeps every column able to shrink to its container. */
.hero-grid > *,.offer-grid > *,.dark-grid > *,.about-grid > *,
.area-grid > *,.contact-grid > *,.cards > *,.tiers > *,.pricing-foot > *,
.paths > *,.duo > *,.mlist > li > *,.form,.field{min-width:0}
.field input,.field select,.field textarea{max-width:100%}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 18px}
@media (min-width:420px){.wrap{padding:0 22px}}

/* Anchor links must clear the sticky header */
section[id],div[id]{scroll-margin-top:100px}
@media (min-width:920px){section[id],div[id]{scroll-margin-top:88px}}

/* Visible keyboard focus everywhere */
a:focus-visible,button:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--blue);
  outline-offset:2px;
  border-radius:4px;
}

.skip{
  position:absolute;left:-9999px;top:0;
  background:var(--blue);color:#fff;padding:12px 18px;
  z-index:200;font-weight:600;text-decoration:none;
}
.skip:focus{left:8px;top:8px}

.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;
}

/* ---------- Buttons ---------- */
.btn{
  display:inline-block;background:var(--blue);color:#fff;
  padding:12px 22px;border-radius:9px;text-decoration:none;
  font-weight:600;font-size:16px;line-height:1.3;
  border:2px solid var(--blue);cursor:pointer;
  transition:background .15s ease,border-color .15s ease;
}
.btn:hover{background:var(--blue-dark);border-color:var(--blue-dark)}
.btn-lg{padding:15px 30px;font-size:17.5px}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{background:#fff;border-color:var(--blue);color:var(--blue)}
.btn-on-dark{background:#fff;color:var(--navy);border-color:#fff}
.btn-on-dark:hover{background:var(--blue-light);border-color:var(--blue-light);color:var(--navy)}

/* ---------- Header / shared nav ---------- */
header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--line);
  backdrop-filter:saturate(180%) blur(8px);
}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:9px 0}
.nav-logo{display:block;min-width:0;flex:0 0 auto;margin-right:auto}
.nav-logo img{height:30px;width:auto}
.nav-cta{font-size:14px;padding:9px 13px;white-space:nowrap;flex:0 0 auto}

.nav-links{
  order:3;flex:1 0 100%;
  display:flex;flex-wrap:wrap;gap:5px;
  font-size:13px;font-weight:600;padding-bottom:2px;
}
.nav-links a{
  color:var(--ink);text-decoration:none;white-space:nowrap;
  background:var(--bg-soft);border:1px solid var(--line);
  border-radius:20px;padding:4px 10px;
}
/* About and Contact are duplicated in the footer and reachable in-page, so
   they step aside on phones to keep the sticky header short. */
.nav-links .nav-2nd{display:none}
.nav-links a:hover{border-color:var(--blue);color:var(--blue-dark)}
.nav-links a[aria-current="page"]{background:var(--blue);border-color:var(--blue);color:#fff}

@media (min-width:400px){
  .nav-logo img{height:34px}
  .nav-cta{font-size:15px;padding:10px 16px}
}
@media (min-width:920px){
  .nav{flex-wrap:nowrap;gap:16px;padding:12px 0}
  .nav-logo{margin-right:0}
  .nav-logo img{height:44px}
  .nav-links{
    order:2;flex:0 1 auto;margin-left:auto;
    gap:22px;font-size:15.5px;font-weight:500;padding-bottom:0;
  }
  .nav-links a{background:transparent;border:0;border-radius:0;padding:3px 0}
  .nav-links .nav-2nd{display:inline}
  .nav-links a:hover{color:var(--blue)}
  .nav-links a[aria-current="page"]{
    background:transparent;color:var(--blue-dark);
    box-shadow:inset 0 -2px 0 var(--blue);
  }
  .nav-cta{order:3}
}

/* ---------- Breadcrumb ---------- */
.crumbs{background:var(--bg-soft);border-bottom:1px solid var(--line);font-size:14px}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:10px 0;color:var(--slate)}
.crumbs a{color:var(--slate)}
.crumbs li + li::before{content:"\203A";margin-right:6px;color:#9AA8B6}
.crumbs [aria-current="page"]{color:var(--ink);font-weight:600}

/* ---------- Hero ---------- */
.hero{padding:56px 0 52px;background:linear-gradient(180deg,#fff 0%,var(--bg-soft) 100%)}
@media (min-width:900px){.hero{padding:64px 0 56px}}
.hero-grid{display:grid;grid-template-columns:1fr;gap:38px;align-items:center}
@media (min-width:900px){.hero-grid{grid-template-columns:1.15fr .85fr;gap:52px}}
.kicker{
  color:var(--blue-dark);font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;font-size:12.5px;margin-bottom:14px;
}
h1{font-size:clamp(30px,5.2vw,45px);line-height:1.14;font-weight:800;letter-spacing:-.015em}
.lead{font-size:clamp(17px,2.2vw,19.5px);color:var(--slate);margin:18px 0 12px;max-width:56ch}
.lead strong{color:var(--ink);font-weight:600}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero-note{font-size:14.5px;color:var(--slate);margin-top:14px}

.hero-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:var(--shadow)}
.hero-card h2{
  font-size:13px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--blue-dark);margin-bottom:12px;font-weight:700;
}
.ticks{list-style:none}
.ticks li{padding:9px 0 9px 30px;position:relative;font-size:16px;border-bottom:1px solid var(--bg-soft)}
.ticks li:last-child{border-bottom:0}
.ticks li::before{
  content:"";position:absolute;left:2px;top:16px;width:14px;height:8px;
  border-left:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);
  transform:rotate(-45deg);
}

/* ---------- Trust bar ---------- */
.trustbar{background:var(--navy);color:var(--navy-text);padding:16px 0;font-size:14.5px}
.trustbar ul{
  list-style:none;display:flex;gap:14px 30px;
  justify-content:center;flex-wrap:wrap;text-align:center;
}
.trustbar b{color:#fff;font-weight:700}

/* ---------- Generic section ---------- */
section{padding:62px 0}
@media (min-width:900px){section{padding:80px 0}}
.section-soft{background:var(--bg-soft)}
h2{font-size:clamp(24px,3.6vw,33px);font-weight:800;letter-spacing:-.015em;line-height:1.2}
h3{font-size:18.5px;font-weight:700;line-height:1.3}
.sub{color:var(--slate);font-size:17.5px;max-width:64ch;margin-top:12px}
.section-head{margin-bottom:34px}

/* ---------- Audience path cards ---------- */
.paths{display:grid;grid-template-columns:1fr;gap:20px}
@media (min-width:820px){.paths{grid-template-columns:1fr 1fr;gap:24px}}
.path{
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:26px 22px;box-shadow:var(--shadow);display:flex;flex-direction:column;
}
@media (min-width:820px){.path{padding:32px 30px}}
.path .path-for{
  font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  color:var(--blue-dark);margin-bottom:9px;
}
.path h3{font-size:22px;margin-bottom:9px}
.path > p{color:var(--slate);font-size:15.5px}
.path ul{list-style:none;margin:16px 0 18px;flex:1}
.path li{padding:6px 0 6px 26px;position:relative;font-size:15.5px;color:var(--slate)}
.path li::before{
  content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;
  border-left:2.4px solid var(--blue);border-bottom:2.4px solid var(--blue);
  transform:rotate(-45deg);
}
.path-price{
  background:var(--blue-wash);border:1px solid #C6DAEC;border-radius:var(--radius);
  padding:14px 16px;font-size:15px;color:var(--slate);margin-bottom:18px;
}
.path-price b{color:var(--ink);font-size:17px}
.path .btn{text-align:center}
.path-more{
  margin-top:18px;padding-top:16px;border-top:1px solid var(--line);
  font-size:14.5px;color:var(--slate);
}

/* ---------- Featured offer box ---------- */
.offer{
  background:#fff;border:2px solid var(--blue);border-radius:16px;
  padding:28px 22px;box-shadow:var(--shadow);
}
@media (min-width:900px){.offer{padding:42px}}
.offer-flag{
  display:inline-block;background:var(--blue);color:#fff;font-size:12px;
  font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:5px 14px;border-radius:20px;margin-bottom:16px;
}
.offer-grid{display:grid;grid-template-columns:1fr;gap:30px;margin-top:28px}
@media (min-width:820px){.offer-grid{grid-template-columns:1.15fr .85fr;gap:44px}}
.offer h3{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-dark);margin-bottom:12px}
.offer-price{
  background:var(--blue-wash);border:1px solid #C6DAEC;border-radius:var(--radius);
  padding:22px;margin-bottom:18px;
}
.offer-price .amt{font-size:29px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.offer-price .amt small{font-size:15px;font-weight:500;color:var(--slate);letter-spacing:0}
.offer-price p{font-size:14.5px;color:var(--slate);margin-top:8px}
.plain{list-style:none}
.plain li{padding:6px 0 6px 22px;position:relative;font-size:15.5px;color:var(--slate)}
.plain li::before{content:"\2013";position:absolute;left:2px;color:var(--blue)}
.plain-note{margin-top:16px;font-size:15px;color:var(--slate)}
.plain-note strong{color:var(--ink)}
.caveat{
  margin-top:22px;padding-top:20px;border-top:1px solid var(--line);
  font-size:15px;color:var(--slate);
}

/* ---------- Cards ---------- */
.cards{display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:640px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:960px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.card h3{margin-bottom:8px}
.card p{font-size:15.5px;color:var(--slate)}
.card p + p{margin-top:9px}
.tag{
  display:inline-block;font-size:12px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--blue-dark);background:var(--blue-wash);
  border-radius:20px;padding:4px 12px;margin-bottom:11px;
}
.scope-note{
  margin-top:26px;background:#fff;border:1px solid var(--line);
  border-left:4px solid var(--blue);border-radius:var(--radius);padding:22px 24px;
}
.scope-note h3{font-size:17px;margin-bottom:8px}
.scope-note p{font-size:15.5px;color:var(--slate)}
.scope-note p + p{margin-top:10px}
.section-soft .card,.section-soft .scope-note{background:#fff}

/* ---------- Flat-rate menu lists ---------- */
.mgroup + .mgroup{margin-top:34px}
.mgroup h3{
  font-size:15px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--blue-dark);margin-bottom:12px;
}
.mlist{
  list-style:none;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;
}
.mlist li{
  display:flex;flex-wrap:wrap;gap:2px 16px;align-items:baseline;
  justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);
}
.mlist li:last-child{border-bottom:0}
.m-name{flex:1 1 200px;font-weight:600;font-size:16px}
.m-name span{display:block;font-weight:400;font-size:14.5px;color:var(--slate);margin-top:2px}
.m-price{flex:0 0 auto;font-weight:800;font-size:17.5px;white-space:nowrap;letter-spacing:-.02em}
.m-price small{font-weight:500;font-size:14px;color:var(--slate);letter-spacing:0}
.mnote{margin-top:12px;font-size:14.5px;color:var(--slate)}
.mnote strong{color:var(--ink)}

/* ---------- Callout ---------- */
.callout{
  background:var(--blue-wash);border:1px solid #C6DAEC;border-left:4px solid var(--blue);
  border-radius:var(--radius);padding:22px 24px;
}
.callout h3{font-size:18px;margin-bottom:8px}
.callout p{font-size:15.5px;color:var(--slate)}
.callout p + p{margin-top:10px}
.callout strong{color:var(--ink)}

/* ---------- Two-column helper ---------- */
.duo{display:grid;grid-template-columns:1fr;gap:22px}
@media (min-width:820px){.duo{grid-template-columns:1fr 1fr;gap:30px}}
.duo-3{display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:720px){.duo-3{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.duo-3{grid-template-columns:repeat(3,1fr)}}

/* ---------- Dark section ---------- */
.dark{background:var(--navy);color:var(--navy-text)}
.dark h2,.dark h3{color:#fff}
.dark .sub{color:var(--navy-text)}
.dark-grid{display:grid;grid-template-columns:1fr;gap:34px;align-items:start}
@media (min-width:860px){.dark-grid{grid-template-columns:.85fr 1.15fr;gap:48px}}
.stat{display:flex;gap:18px;margin-bottom:24px;align-items:flex-start}
.stat .num{font-size:34px;font-weight:800;color:#fff;line-height:1.05;min-width:112px;white-space:nowrap}
.stat .num span{color:var(--blue-light)}
.stat p{font-size:15.5px;color:var(--navy-text)}
.dark-points{list-style:none}
.dark-points li{
  padding:13px 0 13px 32px;position:relative;font-size:16px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.dark-points li:last-child{border-bottom:0}
.dark-points li::before{
  content:"";position:absolute;left:2px;top:21px;width:14px;height:8px;
  border-left:2.5px solid var(--blue-light);border-bottom:2.5px solid var(--blue-light);
  transform:rotate(-45deg);
}
.dark-points b{color:#fff}
.dark a{color:var(--blue-light)}

/* ---------- Pricing tiers ---------- */
.tiers{display:grid;grid-template-columns:1fr;gap:18px;align-items:stretch}
@media (min-width:920px){.tiers{grid-template-columns:repeat(3,1fr);gap:20px}}
.tiers-2{display:grid;grid-template-columns:1fr;gap:18px;align-items:stretch}
@media (min-width:820px){.tiers-2{grid-template-columns:repeat(2,1fr);gap:22px}}
.tier{
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:28px 22px;display:flex;flex-direction:column;
}
@media (min-width:520px){.tier{padding:28px 24px}}
.tier.featured{border:2px solid var(--blue)}
.tier h3{font-size:19px}
.tier .size{font-size:14px;color:var(--slate);margin-bottom:16px}
.tier .price{font-size:31px;font-weight:800;letter-spacing:-.025em;line-height:1.1}
.tier .price .from{
  display:block;font-size:13px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--slate);margin-bottom:2px;
}
.tier .price small{font-size:15px;font-weight:500;color:var(--slate);letter-spacing:0}
.tier .perseat{font-size:14.5px;color:var(--slate);margin-top:6px}
.tier .inherits{font-size:14.5px;font-weight:600;margin-top:18px}
.tier ul{list-style:none;margin:10px 0 24px;flex:1}
.tier li{padding:7px 0 7px 24px;position:relative;font-size:15px;color:var(--slate)}
.tier li::before{
  content:"";position:absolute;left:1px;top:16px;width:11px;height:6px;
  border-left:2.2px solid var(--blue);border-bottom:2.2px solid var(--blue);
  transform:rotate(-45deg);
}
.tier .btn{text-align:center}
.scale-note{
  margin-top:22px;background:#fff;border:1px solid var(--line);
  border-left:4px solid var(--blue);border-radius:var(--radius);
  padding:20px 24px;font-size:15.5px;color:var(--slate);
}
.scale-note strong{color:var(--ink)}
.scale-note p + p{margin-top:10px}
.pricing-foot{margin-top:20px;display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:720px){.pricing-foot{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.pricing-foot{grid-template-columns:repeat(3,1fr)}}
.pricing-foot > div{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;
}
.pricing-foot h3{font-size:16.5px;margin-bottom:9px}
.pricing-foot p{font-size:15px;color:var(--slate)}
.pricing-foot p + p{margin-top:9px}
.rates{list-style:none;font-size:15px;color:var(--slate)}
.rates li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--bg-soft)}
.rates li:last-child{border-bottom:0}
.rates b{color:var(--ink);white-space:nowrap;font-weight:700}

/* ---------- About ---------- */
.about-grid{display:grid;grid-template-columns:1fr;gap:34px;align-items:center}
@media (min-width:820px){.about-grid{grid-template-columns:.62fr 1.38fr;gap:48px}}
.about-mark{
  background:var(--navy);border-radius:16px;padding:34px;
  display:flex;align-items:center;justify-content:center;
}
.about-mark img{width:100%;max-width:190px;border-radius:12px}
.about p{color:var(--slate);font-size:16.5px}
.about p + p{margin-top:15px}
.about h2{margin-bottom:16px}
.signature{margin-top:20px;font-size:15px;color:var(--ink);font-weight:600}
.signature span{display:block;font-weight:400;color:var(--slate);font-size:14.5px}

/* ---------- Service area ---------- */
.area-grid{display:grid;grid-template-columns:1fr;gap:26px}
@media (min-width:760px){.area-grid{grid-template-columns:1fr 1fr;gap:34px}}
.area-col h3{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-dark);margin-bottom:12px}
.area-col ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.area-col li{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  padding:5px 14px;font-size:14.5px;color:var(--slate);
}

/* ---------- FAQ ---------- */
.faq{max-width:800px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{
  cursor:pointer;list-style:none;padding:18px 34px 18px 0;position:relative;
  font-weight:600;font-size:17px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";position:absolute;right:6px;top:26px;width:9px;height:9px;
  border-right:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);
  transform:rotate(45deg);transition:transform .18s ease;
}
.faq details[open] summary::after{transform:rotate(-135deg);top:30px}
.faq .answer{padding:0 0 20px;color:var(--slate);font-size:16px;max-width:70ch}
.faq .answer p + p{margin-top:12px}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:1fr;gap:38px}
@media (min-width:900px){.contact-grid{grid-template-columns:1fr 1fr;gap:52px}}
.contact-direct .big{font-size:26px;font-weight:800;letter-spacing:-.02em;margin-bottom:4px}
.contact-direct .big a{color:var(--ink);text-decoration:none}
.contact-direct .big a:hover{color:var(--blue)}
.contact-direct .email{font-size:18px;font-weight:600;word-break:break-word}
.contact-direct .email a{color:var(--ink);text-decoration:none}
.contact-direct .email a:hover{color:var(--blue)}
.contact-block{margin-bottom:26px}
.contact-block h3{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-dark);margin-bottom:7px}
.contact-block p{font-size:15.5px;color:var(--slate)}

.form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:var(--shadow)}
@media (min-width:520px){.form{padding:26px}}
.field{margin-bottom:16px}
.field label{display:block;font-size:14.5px;font-weight:600;margin-bottom:6px}
.field .opt{font-weight:400;color:var(--slate)}
.field input,.field select,.field textarea{
  width:100%;font:inherit;font-size:16px;color:var(--ink);
  padding:11px 13px;border:1px solid #C6D0DA;border-radius:9px;
  background:#fff;
}
.field textarea{min-height:118px;resize:vertical}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--blue)}
.form .btn{width:100%;text-align:center;margin-top:6px}
.form-note{font-size:13.5px;color:var(--slate);margin-top:12px;text-align:center}
.hp{position:absolute;left:-9999px}

/* ---------- Footer ---------- */
footer{background:var(--navy);color:var(--navy-text);padding:46px 0 28px;font-size:15px}
.foot-grid{display:grid;grid-template-columns:1fr;gap:28px;margin-bottom:30px}
@media (min-width:760px){.foot-grid{grid-template-columns:1.2fr 1fr 1fr;gap:34px}}
.foot-grid img{height:40px;width:auto;margin-bottom:14px}
.foot-grid h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin-bottom:10px}
.foot-grid a{color:var(--navy-text);text-decoration:none}
.foot-grid a:hover{color:#fff;text-decoration:underline}
.foot-grid ul{list-style:none}
.foot-grid li{padding:3px 0}
.legal{
  border-top:1px solid rgba(255,255,255,.12);padding-top:20px;
  font-size:13.5px;color:#93A4B5;
}
.legal p + p{margin-top:8px}

/* ---------- Motion / print ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none !important;animation:none !important}
}
@media print{
  header,.crumbs,.hero-ctas,.form,.btn{display:none !important}
  body{font-size:12pt;color:#000}
  .dark,.trustbar,footer{background:#fff !important;color:#000 !important}
  .dark h2,.dark h3,.stat .num,.foot-grid h3{color:#000 !important}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:10pt}
}

/* ---------- Google reviews (hidden until reviews exist) ---------- */
#reviews{display:none}
#reviews.has-reviews{display:block}
.rev-summary{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:26px;font-size:17px}
.rev-stars{color:#F4B400;letter-spacing:2px;font-size:20px}
.rev-grid{display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:760px){.rev-grid{grid-template-columns:repeat(3,1fr)}}
.rev-card{background:#fff;border:1px solid #DCE4EC;border-radius:12px;padding:20px 22px;display:flex;flex-direction:column;gap:10px}
.rev-card .rev-stars{font-size:16px}
.rev-card p{margin:0;font-size:15.5px;line-height:1.55;color:var(--ink)}
.rev-card .rev-meta{font-size:14px;color:#5b6672}
.rev-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
