/* Palat — estilos
   Paleta: "amostras de paladar" — preto neutro com sutil matiz ameixa (ink) +
   verde-jade vibrante como cor de destaque/CTA (cor inédita nesta série como
   ação principal — nenhum site anterior usa verde-jade puro no botão de
   ação) + bronze-taupe fosco como acento secundário discreto + creme quente
   como terceira "amostra" usada só em detalhes decorativos. A dupla
   CTA-saturado + acento-neutro-fosco (em vez de dois tons saturados
   competindo) já é, em si, uma fórmula de paleta diferente da usada nos
   demais sites da série.
   Layout: menu mobile "cortina de amostras" (painel full-viewport que revela
   5 tiras verticais coloridas crescendo de cima para baixo, em cascata,
   sobre uma base sólida — sem clip-path, sem risco de vazamento visual),
   hero com "roda de cores" (disco em conic-gradient girando lentamente atrás
   do título), cards com etiqueta de amostra (tag rotacionada com furo, como
   uma amostra de tinta), compatibilidade filtrável por categoria de
   dispositivo, planos com medidor de amostras (fileira de blocos discretos,
   não uma barra contínua), FAQ em grade que se reorganiza (o item aberto
   ocupa a largura toda, um de cada vez), rodapé com borda-degradê de
   amostras no topo e uma fileira de chips coloridos com dica de "paladar".
*/

:root{
  --ink:#0A0910;
  --brand-1:#14121B;
  --brand-2:#1E1A28;
  --brand-3:#2B2438;
  --brand-4:#3A3050;
  --cta:#00D9A0;
  --cta-hover:#3CEFC0;
  --accent:#B8956A;
  --accent-2:#D0B48A;
  --cream:#F3E9D2;
  --light:#F3F1EC;
  --white:#FFFFFF;
  --muted-dark:#B9B4C9;
  --muted-light:#5C5568;
  --border-dark: rgba(255,255,255,.10);
  --border-light: rgba(10,9,16,.10);
  --radius: 16px;
  --radius-sm: 10px;
  --shadow: 0 20px 50px rgba(0,0,0,.35);
  --maxw: 1180px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:"Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  background:var(--light);
  color:var(--brand-3);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{margin:0 0 .5em;line-height:1.2;font-weight:800;}
p{margin:0 0 1em;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.section{padding:88px 0;}
.section-tight{padding:56px 0;}
.section-dark{background:var(--ink);color:var(--white);}
.section-dark .muted{color:var(--muted-dark);}
.section-alt{background:var(--light);}
.muted{color:var(--muted-light);}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:#0E8F6C;
  background:rgba(0,217,160,.12);
  border:1px solid rgba(0,217,160,.35);
  padding:6px 14px;border-radius:6px;margin-bottom:16px;
}
.section-dark .eyebrow{background:rgba(0,217,160,.16);color:var(--cta-hover);border-color:rgba(60,239,192,.4);}
h2.section-title{font-size:clamp(1.7rem,3vw,2.4rem);}
.section-head{max-width:680px;margin:0 auto 48px;text-align:center;}
.section-head p{color:var(--muted-light);}
.section-dark .section-head p{color:var(--muted-dark);}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 28px;border-radius:8px;font-weight:800;font-size:.98rem;
  border:2px solid transparent;cursor:pointer;transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  white-space:nowrap;
}
.btn-cta{background:var(--cta);color:#04241B;box-shadow:0 10px 26px rgba(0,217,160,.32);}
.btn-cta:hover{background:var(--cta-hover);transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,217,160,.48);}
.btn-outline{background:transparent;border-color:var(--border-dark);color:var(--white);}
.btn-outline:hover{border-color:var(--cta);color:var(--cta-hover);}
.btn-outline-dark{background:transparent;border-color:var(--border-light);color:var(--brand-3);}
.btn-outline-dark:hover{border-color:var(--accent);color:var(--accent);}
.btn-accent{background:var(--accent);color:#241A0C;box-shadow:0 10px 25px rgba(184,149,106,.4);}
.btn-accent:hover{background:var(--accent-2);transform:translateY(-2px);}
.btn-block{width:100%;}
.btn-sm{padding:10px 18px;font-size:.85rem;}

/* ===== Header ===== */
header.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(10,9,16,.92);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--border-dark);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 24px;max-width:var(--maxw);margin:0 auto;
}
.logo{display:flex;align-items:center;gap:10px;color:var(--white);font-weight:800;font-size:1.15rem;}
.logo img{height:38px;width:auto;}
nav.nav-desktop{display:none;}
.nav-desktop ul{display:flex;gap:26px;}
.nav-desktop a{color:var(--white);font-weight:600;font-size:.95rem;opacity:.85;transition:opacity .15s, color .15s;}
.nav-desktop a:hover, .nav-desktop a.active{opacity:1;color:var(--cta-hover);}
.header-cta{display:none;}
.nav-toggle{
  width:46px;height:46px;border-radius:8px;border:1px solid var(--border-dark);
  background:var(--brand-2);color:var(--white);display:flex;align-items:center;justify-content:center;
  cursor:pointer;position:relative;z-index:220;
}
.nav-toggle span, .nav-toggle span::before, .nav-toggle span::after{
  content:"";display:block;width:18px;height:2px;background:var(--cta);border-radius:2px;position:relative;transition:.25s;
}
.nav-toggle span::before{position:absolute;top:-6px;}
.nav-toggle span::after{position:absolute;top:6px;}
.nav-toggle.is-open span{background:transparent;}
.nav-toggle.is-open span::before{transform:rotate(45deg);top:0;background:var(--cta);}
.nav-toggle.is-open span::after{transform:rotate(-45deg);top:0;background:var(--cta);}

/* ===== Cortina de amostras: painel mobile full-viewport ===== */
/* O painel inteiro é uma camada sólida (background:var(--ink)) que desliza
   de cima para baixo via transform — igual à base comprovada de outros
   projetos da série. As "tiras" internas (.nav-panel-slats) são puramente
   decorativas, por cima dessa base já opaca: elas não recortam nada (sem
   clip-path, sem máscara), então não existe qualquer chance de vazar
   conteúdo da página por trás, mesmo durante a animação em cascata. */
.nav-panel{
  position:fixed;inset:0;z-index:200;
  background:var(--ink);
  transform:translateY(-100%);
  transition: transform .5s cubic-bezier(.65,0,.35,1);
  pointer-events:none;
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.nav-panel.is-open{transform:translateY(0);pointer-events:auto;}
.nav-panel-slats{position:absolute;inset:0;z-index:0;display:flex;}
.nav-panel-slats .slat{flex:1 1 20%;height:100%;transform:scaleY(0);transform-origin:top;transition:transform .5s cubic-bezier(.22,1,.36,1);}
.nav-panel-slats .slat-1{background:rgba(0,217,160,.16);}
.nav-panel-slats .slat-2{background:rgba(184,149,106,.16);}
.nav-panel-slats .slat-3{background:rgba(243,233,210,.10);}
.nav-panel-slats .slat-4{background:rgba(184,149,106,.16);}
.nav-panel-slats .slat-5{background:rgba(0,217,160,.16);}
.nav-panel.is-open .slat-1{transition-delay:.05s;}
.nav-panel.is-open .slat-2{transition-delay:.11s;}
.nav-panel.is-open .slat-3{transition-delay:.17s;}
.nav-panel.is-open .slat-4{transition-delay:.11s;}
.nav-panel.is-open .slat-5{transition-delay:.05s;}
.nav-panel.is-open .slat{transform:scaleY(1);}
.nav-panel-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;}
.nav-panel ul{display:flex;flex-direction:column;align-items:center;gap:4px;}
.nav-panel a{
  color:var(--white);font-size:1.4rem;font-weight:800;padding:10px 20px;display:inline-block;
  opacity:0;transform:translateY(-14px);transition:opacity .4s ease, transform .4s ease;
}
.nav-panel.is-open a{opacity:1;transform:translateY(0);}
.nav-panel a:hover{color:var(--cta-hover);}
.nav-panel .panel-cta{margin-top:24px;opacity:0;transform:translateY(-14px);transition:opacity .5s ease .3s, transform .5s ease .3s;}
.nav-panel.is-open .panel-cta{opacity:1;transform:translateY(0);}
@media(min-width:960px){
  nav.nav-desktop{display:block;}
  .header-cta{display:inline-flex;}
  .nav-toggle{display:none;}
}

/* Breadcrumb */
.breadcrumb-bar{background:var(--brand-2);border-bottom:1px solid var(--border-dark);}
.breadcrumb-bar ol{display:flex;flex-wrap:wrap;gap:6px;padding:14px 0;font-size:.85rem;color:var(--muted-dark);}
.breadcrumb-bar a{color:var(--muted-dark);}
.breadcrumb-bar a:hover{color:var(--cta-hover);}
.breadcrumb-bar li:not(:last-child)::after{content:"/";margin-left:6px;color:var(--brand-4);}
.breadcrumb-bar li[aria-current]{color:var(--cta-hover);font-weight:600;}

/* ===== Hero — roda de cores girando ===== */
.hero{background:var(--ink);color:var(--white);padding:80px 0 60px;overflow:hidden;position:relative;}
.hero-wheel{
  position:absolute;top:50%;right:-6%;width:min(52vw,460px);height:min(52vw,460px);
  transform:translateY(-50%);z-index:0;pointer-events:none;border-radius:50%;
  background:conic-gradient(from 0deg,
    var(--cta) 0deg 60deg, var(--accent) 60deg 120deg, var(--cream) 120deg 180deg,
    var(--cta) 180deg 240deg, var(--accent) 240deg 300deg, var(--cream) 300deg 360deg);
  opacity:.20;
  animation:wheelSpin 70s linear infinite;
  filter:blur(1px);
}
.hero-wheel::after{
  content:"";position:absolute;inset:14%;border-radius:50%;background:var(--ink);
}
@keyframes wheelSpin{to{transform:translateY(-50%) rotate(360deg);}}
.hero-inner{position:relative;z-index:1;max-width:640px;}
.hero-stack{display:flex;flex-direction:column;font-size:clamp(1.9rem,4.2vw,3rem);gap:2px;}
.hero-stack .hl{color:var(--cta);}
.hero-lead{position:relative;z-index:1;font-size:1.08rem;color:var(--muted-dark);max-width:520px;margin-top:14px;}
.hero-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 22px;}
.hero-pills{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px;margin-top:38px;}
.hero-pills span{
  font-size:.8rem;font-weight:700;background:var(--brand-2);border:1px solid var(--border-dark);
  padding:9px 16px;border-radius:999px;color:var(--muted-dark);display:inline-flex;align-items:center;gap:6px;
}
.hero-pills span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cta);display:inline-block;}

/* ===== Cards — etiqueta de amostra ===== */
.grid{display:grid;gap:24px;}
.grid-2{grid-template-columns:1fr;}
.grid-3{grid-template-columns:1fr;}
.grid-4{grid-template-columns:1fr;}
@media(min-width:680px){.grid-2{grid-template-columns:1fr 1fr;}.grid-4{grid-template-columns:1fr 1fr;}}
@media(min-width:960px){.grid-3{grid-template-columns:repeat(3,1fr);}.grid-4{grid-template-columns:repeat(4,1fr);}}

.card-swatch{
  background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);
  padding:30px 24px 26px;position:relative;transition:transform .2s ease, box-shadow .2s ease;
  margin-top:14px;
}
.card-swatch:hover{transform:translateY(-6px);box-shadow:var(--shadow);}
.swatch-tag{
  position:absolute;top:-16px;left:22px;width:56px;height:56px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:1.35rem;
  transform:rotate(-8deg);box-shadow:0 8px 18px rgba(10,9,16,.18);
  transition:transform .2s ease;
}
.card-swatch:hover .swatch-tag{transform:rotate(0deg) scale(1.04);}
.swatch-tag::before{
  content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);
  width:8px;height:8px;border-radius:50%;background:var(--white);
}
.swatch-tag.sw-jade{background:var(--cta);color:#04241B;}
.swatch-tag.sw-taupe{background:var(--accent);color:#241A0C;}
.swatch-tag.sw-cream{background:var(--cream);color:#4A3A1C;}
.card-swatch h3{font-size:1.1rem;margin-top:6px;}
.card-swatch p{color:var(--muted-light);font-size:.95rem;margin-bottom:0;}
.card-swatch.center{text-align:center;}
.card-swatch.center .swatch-tag{left:50%;transform:translateX(-50%) rotate(-8deg);}
.card-swatch.center:hover .swatch-tag{transform:translateX(-50%) rotate(0deg) scale(1.04);}
.section-dark .card-swatch{background:var(--brand-2);border-color:var(--border-dark);color:var(--white);}
.section-dark .card-swatch p{color:var(--muted-dark);}
.section-dark .swatch-tag::before{background:var(--brand-2);}

/* ===== Compatibilidade — filtro de amostras ===== */
.compat-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px;}
.compat-filter button{
  border:1px solid var(--border-light);background:var(--white);padding:9px 18px;border-radius:999px;
  font-size:.85rem;font-weight:700;cursor:pointer;transition:.15s;
}
.compat-filter button.active, .compat-filter button:hover{background:var(--cta);color:#04241B;border-color:var(--cta);}
.compat-grid{display:grid;grid-template-columns:1fr;gap:18px;}
@media(min-width:640px){.compat-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:960px){.compat-grid{grid-template-columns:repeat(3,1fr);}}
.app-swatch-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden;transition:transform .2s ease;}
.app-swatch-card:hover{transform:translateY(-4px);}
.app-swatch-bar{height:8px;}
.app-swatch-bar.sw-jade{background:var(--cta);}
.app-swatch-bar.sw-taupe{background:var(--accent);}
.app-swatch-bar.sw-cream{background:var(--cream);}
.app-swatch-body{padding:18px 20px;}
.app-swatch-body h4{margin:0 0 4px;font-size:1.02rem;font-weight:800;}
.app-swatch-body p{margin:0;font-size:.85rem;color:var(--muted-light);}

/* ===== Planos — medidor de amostras (blocos discretos) ===== */
.plans-grid{display:grid;grid-template-columns:1fr;gap:22px;}
@media(min-width:760px){.plans-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1080px){.plans-grid{grid-template-columns:repeat(4,1fr);}}
.plan-card{
  background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);
  padding:26px 22px;display:flex;flex-direction:column;gap:14px;transition:transform .2s ease;position:relative;
}
.plan-card:hover{transform:translateY(-4px);}
.plan-card.featured{border-color:var(--cta);box-shadow:0 20px 50px rgba(0,217,160,.18);}
.swatch-meter{display:flex;gap:6px;}
.meter-block{width:22px;height:10px;border-radius:3px;background:var(--border-light);background-color:#E6E2D8;}
.meter-block.filled{background-color:var(--cta);}
.plan-card.featured .meter-block.filled{background-color:var(--accent);}
.plan-tag{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-light);}
.plan-price{font-size:1.9rem;font-weight:800;}
.plan-price small{font-size:.9rem;font-weight:600;color:var(--muted-light);}
.plan-per-month{font-size:.82rem;color:var(--muted-light);}
.plan-features{display:flex;flex-direction:column;gap:8px;font-size:.9rem;}
.plan-features li{display:flex;gap:8px;align-items:flex-start;}
.plan-features li::before{content:"●";color:var(--cta);font-weight:800;font-size:.7rem;line-height:1.6;}
.plan-card.featured .plan-features li::before{color:var(--accent);}
.badge-pill{display:inline-block;background:var(--accent);color:#241A0C;font-size:.72rem;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;margin-left:8px;}

/* ===== FAQ — grade que se reorganiza (grid-reflow) ===== */
.faq-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:960px;margin:0 auto;}
@media(min-width:720px){.faq-grid{grid-template-columns:repeat(2,1fr);}}
.faq-chip{
  background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-sm);
  overflow:hidden;transition:grid-column .2s ease;align-self:start;
}
.faq-chip.open{grid-column:1 / -1;border-color:var(--cta);}
.faq-q{
  width:100%;text-align:left;background:transparent;border:none;cursor:pointer;
  display:flex;align-items:center;gap:14px;padding:18px 20px;font:inherit;font-weight:700;font-size:.98rem;
}
.faq-q::after{
  content:"+";flex:none;margin-left:auto;width:28px;height:28px;border-radius:50%;
  background:var(--light);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;
  color:var(--muted-light);transition:transform .25s ease, background .25s ease, color .25s ease;
}
.faq-chip.open .faq-q::after{content:"–";background:var(--cta);color:#04241B;transform:rotate(180deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.faq-a p{padding:0 20px 20px;margin:0;color:var(--muted-light);font-size:.95rem;}
.faq-chip.open .faq-a{max-height:600px;}

/* Blog cards */
.blog-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease;}
.blog-card:hover{transform:translateY(-5px);}
.blog-thumb{height:150px;background:linear-gradient(135deg,var(--brand-2),var(--accent));display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;}
.blog-card .bc-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1;}
.blog-tag{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#0E8F6C;letter-spacing:.05em;}
.blog-card h3{font-size:1.05rem;}
.blog-card p{font-size:.9rem;color:var(--muted-light);flex:1;}
.blog-card .bc-link{font-size:.85rem;font-weight:700;color:var(--brand-3);}
.blog-card .bc-link:hover{color:var(--accent);}
.blog-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px;justify-content:center;}
.blog-filter button{
  border:1px solid var(--border-light);background:var(--white);padding:8px 16px;border-radius:6px;
  font-size:.85rem;font-weight:600;cursor:pointer;transition:.15s;
}
.blog-filter button.active, .blog-filter button:hover{background:var(--cta);color:#04241B;border-color:var(--cta);}

/* Article page */
.article-hero{background:var(--ink);color:var(--white);padding:52px 0;}
.article-hero .blog-tag{color:var(--cta-hover);}
.article-body{max-width:760px;margin:0 auto;padding:56px 24px;}
.article-body h2{margin-top:1.6em;font-size:1.4rem;}
.article-body p{color:var(--brand-3);font-size:1.02rem;}
.article-body ul, .article-body ol{margin:0 0 1.2em 1.2em;color:var(--brand-3);}
.article-body ul{list-style:disc;}
.article-body li{margin-bottom:.4em;}
.article-cta{background:var(--light);border-radius:var(--radius);padding:26px;text-align:center;margin:32px 0;}
.related-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:20px;}
@media(min-width:720px){.related-grid{grid-template-columns:repeat(3,1fr);}}

/* Forms (contato) */
.form-box{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);padding:32px;max-width:640px;margin:0 auto;}
.form-row{margin-bottom:18px;}
.form-row label{display:block;font-weight:700;font-size:.9rem;margin-bottom:6px;}
.form-row input, .form-row textarea{
  width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--border-light);
  font-family:inherit;font-size:.95rem;background:var(--light);
}
.form-row textarea{min-height:120px;resize:vertical;}
.contact-info{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:36px;}
@media(min-width:760px){.contact-info{grid-template-columns:repeat(3,1fr);}}
.contact-box{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);padding:24px;text-align:center;}
.contact-box .c-ic{font-size:1.6rem;margin-bottom:10px;}

/* CTA banner */
.cta-banner{
  background:linear-gradient(120deg,var(--brand-2),var(--ink));color:var(--white);border-radius:20px;
  padding:44px 32px;text-align:center;margin:0 24px;
  border:1px solid var(--border-dark);
}
.cta-banner h2{font-size:clamp(1.4rem,2.6vw,2rem);}
.cta-banner .btn-cta{margin-top:10px;}

/* Legal pages */
.legal-body{max-width:820px;margin:0 auto;padding:56px 24px;}
.legal-body h2{margin-top:1.8em;font-size:1.25rem;}
.legal-body p, .legal-body li{color:var(--brand-3);}
.legal-body ul{margin:0 0 1.2em 1.2em;list-style:disc;}

/* ===== Footer — borda-degradê de amostras + fileira de chips ===== */
footer.site-footer{background:var(--ink);color:var(--muted-dark);padding:0 0 26px;position:relative;}
.footer-swatch-border{height:6px;width:100%;background:linear-gradient(90deg,var(--cta),var(--accent),var(--cream),var(--accent),var(--cta));}
.footer-top{display:grid;grid-template-columns:1fr;gap:28px;margin:48px 0 36px;}
@media(min-width:900px){.footer-top{grid-template-columns:1.3fr repeat(3,1fr);}}
.footer-brand{color:var(--white);}
.footer-brand .logo{margin-bottom:14px;}
.footer-brand p{max-width:320px;font-size:.92rem;}
.footer-swatches{display:flex;gap:8px;margin-top:18px;}
.fs-swatch{
  position:relative;width:20px;height:20px;border-radius:6px;cursor:default;
  border:1px solid rgba(255,255,255,.18);
}
.fs-swatch.swatch-jade{background:var(--cta);}
.fs-swatch.swatch-taupe{background:var(--accent);}
.fs-swatch.swatch-cream{background:var(--cream);}
.fs-swatch::after{
  content:attr(data-word);position:absolute;bottom:130%;left:50%;transform:translateX(-50%) translateY(4px);
  background:var(--brand-3);color:var(--white);font-size:.68rem;font-weight:700;padding:4px 8px;border-radius:6px;
  white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease, transform .18s ease;
}
.fs-swatch:hover::after{opacity:1;transform:translateX(-50%) translateY(0);}
.footer-col h4{color:var(--white);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;}
.footer-col ul{display:flex;flex-direction:column;gap:10px;}
.footer-col a{font-size:.9rem;}
.footer-col a:hover{color:var(--cta-hover);}
.footer-note-block{font-size:.85rem;}
.footer-hours{margin-top:12px;font-size:.82rem;color:var(--muted-dark);}
.footer-bottom{border-top:1px solid var(--border-dark);padding-top:22px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:.82rem;}
.footer-disclaimer{font-size:.78rem;color:var(--muted-dark);opacity:.8;max-width:900px;margin-top:10px;}

/* utils */
.center{text-align:center;}
.mt-0{margin-top:0;}
.flex-wrap-center{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.two-col{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media(min-width:900px){.two-col{grid-template-columns:1fr 1fr;}}
.list-check{display:flex;flex-direction:column;gap:12px;}
.list-check li{display:flex;gap:10px;align-items:flex-start;font-size:.98rem;}
.list-check li::before{content:"●";color:var(--cta);font-weight:800;font-size:.65rem;line-height:1.9;}
.steps{display:grid;grid-template-columns:1fr;gap:20px;}
@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr);}}
.step{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius);padding:24px;position:relative;}
.step .s-num{
  width:34px;height:34px;border-radius:8px;background:var(--ink);color:var(--cta);font-weight:800;
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;
}
.page-hero{background:var(--ink);color:var(--white);padding:64px 0 48px;}
.page-hero p{color:var(--muted-dark);max-width:640px;}
