/* ==========================================================================
   LGDigital — folha de estilos global (pt-PT, tratamento por tu)
   Cada secção é um ficheiro separado em /sections. Tudo é estilizado aqui.
   ========================================================================== */

:root{
  /* Marca */
  --amber:#F5A623; --amber-600:#E39412; --amber-700:#B37605; --amber-800:#8A5A05;
  --amber-soft:#FDF3DC; --amber-soft-2:#FBF0D6; --amber-mark:#FBE3A0;
  --blue:#0D8BFF; --blue-soft:#E8F3FF; --blue-700:#0B6ECC;
  --green:#22C55E; --green-600:#17A94C; --green-700:#12803C; --green-deep:#0E7A38; --green-soft:#E9F8EE;
  --red:#E05252; --red-soft:#FDECEC;

  /* Neutros */
  --ink:#111315; --ink-2:#2B2F33; --body:#565D64; --muted:#8A9199;
  --line:#E7E9EC; --line-2:#F0F2F4; --bg:#FFFFFF; --bg-soft:#F6F7F8;
  --bg-dark:#1B1A18; --dark-line:rgba(255,255,255,.09); --dark-body:#A9AFB6;

  --r-sm:10px; --r-md:16px; --r-lg:22px; --r-xl:28px; --r-pill:999px;
  --shadow-sm:0 1px 2px rgba(16,24,40,.05);
  --shadow-md:0 8px 24px rgba(16,24,40,.08);
  --shadow-lg:0 24px 60px rgba(16,24,40,.12);
  --shadow-amber:0 10px 30px rgba(245,166,35,.35);
  --maxw:1180px; --gutter:20px;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}

/* O cabeçalho é fixo: ao saltar para uma âncora, deixa-lhe espaço por cima
   para o título da secção não ficar escondido debaixo dele. */
[id]{scroll-margin-top:96px;}
body{
  margin:0;
  font-family:'Roboto',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  color:var(--body);background:var(--bg);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font:inherit;}
h1,h2,h3,h4{color:var(--ink);margin:0;font-weight:800;letter-spacing:-.028em;line-height:1.08;}

/* ---------- Layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);}
.section{padding:80px 0;}
.section--soft{background:var(--bg-soft);}
.section--tight{padding:52px 0;}
.center{text-align:center;}

/* ---------- Secção escura ---------- */
.section--dark{
  background:radial-gradient(900px 460px at 20% 0%, rgba(245,166,35,.07), transparent 60%), var(--bg-dark);
  color:var(--dark-body);position:relative;border-top:3px solid var(--amber);
}
.section--dark::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.055) 1px, transparent 1px);
  background-size:22px 22px;
}
.section--dark > *{position:relative;z-index:1;}
.section--dark h2,.section--dark h3{color:#fff;}

/* ---------- Eyebrow / títulos ---------- */
.eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--amber-soft);color:var(--amber-800);
  font-size:12.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;
  padding:9px 17px;border-radius:var(--r-pill);
}
.eyebrow--dark{background:rgba(255,255,255,.06);color:var(--amber);border:1px solid var(--dark-line);}
.eyebrow svg{flex:none;}
.label{font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.label--amber{color:var(--amber-700);letter-spacing:.1em;}

.h1{font-size:clamp(34px,7vw,58px);}
.h2{font-size:clamp(28px,4.6vw,44px);}
.h3{font-size:clamp(18px,2.2vw,21px);line-height:1.28;}
.lede{font-size:19px;line-height:1.6;color:var(--body);margin:18px 0 0;}
.section--dark .lede{color:var(--dark-body);}

.section-head{max-width:740px;margin:0 auto 46px;text-align:center;}
.section-head .h2{margin-top:18px;}
.section-head p{margin:18px 0 0;font-size:18px;}
.head-left{max-width:1000px;margin:0 0 40px;text-align:left;}
.head-left .h2{margin-top:20px;}
.head-left p{margin:20px 0 0;font-size:18px;max-width:700px;}

.mark{background:linear-gradient(transparent 58%, var(--amber-mark) 58%);
  box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 2px;}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-weight:800;font-size:17px;letter-spacing:-.01em;padding:18px 30px;
  border-radius:var(--r-pill);border:0;cursor:pointer;white-space:nowrap;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn:hover{transform:translateY(-2px);}
.btn svg{flex:none;}
.btn--amber{background:var(--amber);color:#1A1300;box-shadow:var(--shadow-amber);}
.btn--amber:hover{background:var(--amber-600);}
.btn--green{background:var(--green);color:#04270F;box-shadow:0 10px 30px rgba(34,197,94,.3);}
.btn--green:hover{background:var(--green-600);}
.btn--ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:var(--shadow-sm);}
.btn--ghost:hover{border-color:#D3D7DC;}
.btn--dark{background:#141312;color:var(--amber);box-shadow:0 12px 30px rgba(0,0,0,.28);}
.btn--dark:hover{background:#000;}
.btn--sm{padding:13px 22px;font-size:15.5px;}

/* ---------- Logótipo ---------- */
/* Ficheiros em assets/logo.png (escuro) e assets/logo-branco.png (rodapé).
   O build.py embute-os no index.html como data-URI. */
.brand{display:inline-flex;align-items:center;}
.brand-img{height:30px;width:auto;display:block;}
.brand-img--footer{height:28px;margin-bottom:4px;}
@media(min-width:760px){.brand-img{height:34px;} .brand-img--footer{height:30px;}}

/* ---------- Cabeçalho ---------- */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);
  backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line-2);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;height:78px;}
.nav-links{display:none;gap:30px;font-size:16.5px;font-weight:500;color:var(--ink-2);}
.nav-links a:hover{color:var(--amber-600);}
.nav-cta{display:flex;align-items:center;gap:12px;}
.nav-cta .btn--ghost{display:none;}
@media(min-width:1060px){.nav-links{display:flex;} .nav-cta .btn--ghost{display:inline-flex;}}

/* ---------- Hero ---------- */
.hero{padding:56px 0 44px;
  background:radial-gradient(1100px 520px at 78% -8%, #FDF1D6 0%, rgba(253,241,214,0) 62%), #fff;}
.hero-grid{display:grid;gap:52px;align-items:center;}
.hero h1{margin:22px 0 0;}
.hero-actions{display:flex;flex-direction:column;gap:14px;margin-top:30px;}
.hero-actions .btn{width:100%;}
.ticks{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;font-size:15.5px;font-weight:700;color:var(--ink-2);}
.tick{display:flex;align-items:center;gap:8px;}
.tick svg{color:var(--green);flex:none;}
.rating{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:26px;font-size:15.5px;}
.stars{color:var(--amber);letter-spacing:3px;font-size:19px;}
.rating b{color:var(--ink);} .rating em{font-style:normal;color:var(--muted);}
@media(min-width:960px){
  .hero{padding:76px 0 64px;}
  .hero-grid{grid-template-columns:1.06fr .94fr;gap:64px;}
  .hero-actions{flex-direction:row;} .hero-actions .btn{width:auto;}
}

/* ---------- Mock de pesquisa ---------- */
.serp{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:20px;}
.serp-search{display:flex;align-items:center;gap:12px;background:var(--bg-soft);border-radius:var(--r-pill);padding:14px 20px;color:var(--muted);font-size:16px;}
.serp-label{font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:18px 0 10px;}
.serp-card{border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px;margin-bottom:12px;background:#fff;}
.serp-card:last-child{margin-bottom:0;}
.serp-card--you{border-color:#BFDCFF;background:#FBFCFE;box-shadow:0 4px 14px rgba(13,139,255,.08);}
.serp-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.serp-name{font-weight:800;color:var(--ink);font-size:17.5px;letter-spacing:-.015em;}
.serp-card--dim .serp-name{color:var(--muted);font-weight:700;}
.rank{width:28px;height:28px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:13px;font-weight:800;background:#E9EBEE;color:#7A8189;}
.rank--1{background:#9A6A05;color:#fff;}
.ad-pill{display:inline-flex;align-items:center;gap:6px;margin-top:10px;background:var(--blue-soft);color:var(--blue-700);font-size:13.5px;font-weight:800;padding:6px 11px;border-radius:var(--r-pill);}
.serp-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;}
.serp-reviews{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--muted);}
.serp-reviews .stars{font-size:15px;letter-spacing:2px;}
.serp-call{display:inline-flex;align-items:center;gap:7px;background:var(--green-deep);color:#fff;font-size:14.5px;font-weight:700;padding:9px 16px;border-radius:9px;}
.serp-toast{position:absolute;top:84px;right:-10px;display:flex;align-items:center;gap:9px;background:#fff;border-radius:12px;box-shadow:var(--shadow-md);padding:12px 18px;font-size:15px;font-weight:700;color:var(--ink);}
.dot{width:9px;height:9px;border-radius:50%;background:var(--green);flex:none;}
@media(min-width:960px){.serp{padding:26px;} .serp-toast{right:-26px;}}

/* ---------- Marquee de logos de clientes ---------- */
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee-track{display:flex;align-items:center;gap:58px;width:max-content;animation:slide 42s linear infinite;}
.marquee-item{
  height:38px;flex:none;display:block;
  background-repeat:no-repeat;background-position:center;background-size:contain;
  filter:grayscale(100%);opacity:.58;
  transition:opacity .25s ease;
}
.marquee-item:hover{opacity:.9;}
@media(min-width:760px){.marquee-item{height:46px;}}

/* um por cliente: aspect-ratio = largura/altura do PNG */
.logo-hca   {aspect-ratio:120/120;background-image:url("../img/clientes/hca-lisboa.png");}
.logo-arq501{aspect-ratio:524/120;background-image:url("../img/clientes/arquitetura-501.png");}
.logo-casa  {aspect-ratio:216/120;background-image:url("../img/clientes/casa-em-ordem.png");}

@keyframes slide{to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none;}}

/* ---------- Selos ---------- */
.badges{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;}
.badge-pill{display:inline-flex;align-items:center;gap:11px;background:#fff;border-radius:12px;box-shadow:0 3px 14px rgba(16,24,40,.09);padding:16px 26px;font-weight:700;color:var(--ink);font-size:16px;position:relative;}
.badge-pill::before,.badge-pill::after{content:"";position:absolute;top:9px;width:7px;height:7px;border-radius:50%;background:#C7CCD2;}
.badge-pill::before{left:11px;} .badge-pill::after{right:11px;}

/* ---------- Grelhas ---------- */
.grid{display:grid;gap:20px;}
@media(min-width:760px){.grid-2{grid-template-columns:repeat(2,1fr);}}
@media(min-width:900px){.grid-3{grid-template-columns:repeat(3,1fr);}}
@media(min-width:900px){.grid-4{grid-template-columns:repeat(4,1fr);}}

/* ---------- Cartões negativos ---------- */
.neg-grid{display:grid;gap:18px;}
@media(min-width:820px){.neg-grid{grid-template-columns:repeat(2,1fr);}}
.neg{display:flex;gap:16px;background:rgba(255,255,255,.035);border:1px solid var(--dark-line);border-radius:var(--r-md);padding:20px 22px;}
.x-icon{width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;background:rgba(224,82,82,.16);color:#F08585;}
.neg p{margin:0;font-size:16.5px;color:var(--dark-body);}
.neg b{color:#fff;font-weight:700;}
.affirm{display:flex;gap:16px;align-items:flex-start;margin-top:34px;max-width:1020px;}
.affirm svg{color:var(--green);flex:none;margin-top:6px;}
.affirm p{margin:0;font-size:19px;font-weight:700;color:#fff;line-height:1.45;}

/* ---------- Cartões do sistema ---------- */
.sys{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-top:3px solid var(--amber);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-sm);}
.sys-num{position:absolute;top:4px;right:18px;font-size:86px;font-weight:800;color:#F1F2F4;letter-spacing:-.05em;line-height:1;pointer-events:none;}
.tile{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:var(--amber-soft);color:var(--amber-700);margin-bottom:22px;}
.tile--green{background:var(--green-soft);color:var(--green-700);}
.tile--blue{background:var(--blue-soft);color:var(--blue-700);}
.sys .label--amber{display:block;margin-bottom:8px;}
.sys h3{margin-bottom:12px;}
.sys p{margin:0;font-size:16.5px;}
.callout{display:flex;gap:16px;align-items:flex-start;background:var(--amber-soft-2);border-radius:var(--r-md);padding:26px 30px;margin-top:32px;}
.callout svg{color:var(--amber-700);flex:none;margin-top:3px;}
.callout p{margin:0;font-weight:700;color:var(--ink);font-size:17.5px;line-height:1.5;}

/* ---------- Intenção ---------- */
.intent{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);padding:32px;}
.intent .tile{margin-bottom:20px;}
.intent .price-tag{display:block;font-size:34px;font-weight:800;color:var(--ink);letter-spacing:-.035em;margin:4px 0 6px;}
.intent h3{margin-bottom:12px;}
.intent p{margin:0;font-size:16.5px;}
.intent ul{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:12px;}
.intent li{display:flex;gap:12px;font-size:16px;}
.intent li svg{color:var(--green);flex:none;margin-top:4px;}

/* ---------- Passos ---------- */
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow-sm);}
.step .tile{width:48px;height:48px;border-radius:13px;margin-bottom:20px;}
.step h3{margin-bottom:10px;}
.step p{margin:0;font-size:16px;}
.step-note{margin:26px 0 0;text-align:center;font-size:16px;color:var(--muted);}

/* ---------- Incluído ---------- */
.incl{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:12px 34px;}
.incl-grid{display:grid;}
@media(min-width:860px){.incl-grid{grid-template-columns:1fr 1fr;column-gap:52px;}}
.incl-item{display:flex;gap:14px;padding:22px 0;border-bottom:1px solid var(--line-2);}
.incl-item:last-child{border-bottom:0;}
@media(min-width:860px){.incl-grid > .incl-item:nth-last-child(-n+2){border-bottom:0;}}
.chk{width:28px;height:28px;border-radius:8px;flex:none;display:grid;place-items:center;background:var(--green-soft);color:var(--green-700);}
.incl-item b{display:block;color:var(--ink);font-size:17px;letter-spacing:-.01em;margin-bottom:3px;}
.incl-item span{font-size:16px;color:var(--body);}

/* ---------- Preços ---------- */
.price{position:relative;overflow:hidden;max-width:760px;margin:0 auto;background:linear-gradient(180deg,#FFFDF8 0%,#fff 42%);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-md);}
.price-top{padding:52px 32px 40px;text-align:center;}
.price-amount{font-size:clamp(44px,8vw,68px);font-weight:800;color:var(--ink);letter-spacing:-.045em;line-height:1;}
.price-sub{margin:14px 0 0;font-size:17px;color:var(--muted);}
.price-body{margin:24px auto 30px;max-width:620px;font-size:17.5px;font-weight:700;color:var(--ink-2);line-height:1.55;}
.ribbon{position:absolute;top:28px;right:-46px;transform:rotate(45deg);background:var(--amber);color:#1A1300;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:9px 56px;}
.price-note-bar{background:var(--bg-soft);border-top:1px solid var(--line-2);padding:26px 32px;font-size:16.5px;color:var(--body);}
.price-note-bar b{color:var(--ink);}
.price-ticks{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;padding:22px 32px 26px;border-top:1px solid var(--line-2);}

/* ---------- Banner CTA ---------- */
.cta-amber{background:linear-gradient(135deg,#F7B32B 0%,#F09B05 100%);border-radius:var(--r-xl);padding:52px 26px;text-align:center;position:relative;overflow:hidden;}
.cta-amber::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.22) 1px,transparent 1px);background-size:20px 20px;}
.cta-amber > *{position:relative;z-index:1;}
.cta-amber .eyebrow{background:rgba(0,0,0,.16);color:#2A1D00;}
.cta-amber h2{color:#fff;max-width:660px;margin:18px auto 0;text-shadow:0 2px 12px rgba(140,80,0,.18);}
.cta-amber p{color:#FFF6E4;max-width:600px;margin:18px auto 0;font-size:18px;}
.cta-amber .btn{margin-top:30px;}
@media(min-width:640px){.cta-amber{padding:70px 48px;}}

/* ---------- Garantia ---------- */
.guarantee{max-width:860px;margin:0 auto;background:#fff;border:1px solid var(--line);border-top:3px solid var(--amber);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:48px 30px;text-align:center;}
.guarantee .tile{margin:0 auto 26px;}
.guarantee p{margin:22px auto 0;max-width:640px;font-size:18px;}
.guarantee .small{margin-top:26px;font-size:15.5px;color:var(--muted);}

/* ---------- Prova social (capturas de ecrã) ---------- */
.proof-grid{display:grid;gap:22px;}
@media(min-width:900px){.proof-grid{grid-template-columns:repeat(2,1fr);}}
.proof{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);
  box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;
  transition:box-shadow .22s ease, transform .22s ease;
}
.proof:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);}
.proof-shot{background:var(--bg-soft);border-bottom:1px solid var(--line-2);padding:14px;}
.proof-shot img{width:100%;height:auto;border-radius:10px;box-shadow:0 2px 10px rgba(16,24,40,.10);}
.proof-body{padding:22px 24px 24px;}
.proof-body .label--amber{display:block;margin-bottom:8px;}
.proof-body h3{margin-bottom:8px;}
.proof-body p{margin:0;font-size:16px;}
.proof-kw{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r-pill);
  padding:6px 13px;font-size:14.5px;color:var(--body);
}
.proof-kw svg{color:var(--muted);flex:none;}
@media(min-width:900px){.proof--wide{grid-column:1 / -1;}
  .proof--wide .proof-shot{max-width:660px;margin:0 auto;width:100%;}}
.proof-note{margin:30px 0 0;text-align:center;font-size:15px;color:var(--muted);}

/* ---------- Encaixe ---------- */
.fit{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);padding:28px 30px;}
.fit-head{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line-2);}
.fit-head h3{font-size:22px;}
.fit ul{list-style:none;margin:0;padding:0;}
.fit li{display:flex;gap:13px;padding:18px 0;border-bottom:1px solid var(--line-2);font-size:16.5px;}
.fit li:last-child{border-bottom:0;padding-bottom:4px;}
.fit li svg{flex:none;margin-top:4px;}
.ok svg{color:var(--green);} .no svg{color:var(--red);}

/* ---------- FAQ ---------- */
.faq{max-width:840px;margin:0 auto;display:grid;gap:16px;}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);transition:box-shadow .18s ease;}
.faq details[open]{box-shadow:var(--shadow-md);}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;font-weight:700;color:var(--ink);font-size:17.5px;line-height:1.4;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";font-size:26px;font-weight:400;color:var(--amber);line-height:1;flex:none;}
.faq details[open] summary::after{content:"–";}
.faq p{margin:0;padding:0 28px 26px;font-size:16.5px;}

/* ---------- Candidatura / calendário ---------- */
.apply-actions{display:flex;flex-direction:column;gap:14px;align-items:center;margin-top:30px;}
@media(min-width:640px){.apply-actions{flex-direction:row;justify-content:center;}}
.booking{max-width:900px;margin:40px auto 0;background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:14px;}
.booking iframe{width:100%;border:none;overflow:hidden;min-height:820px;display:block;border-radius:var(--r-md);}
.apply-note{margin:22px 0 0;text-align:center;font-size:16px;color:var(--muted);}

/* ---------- Rodapé ---------- */
.site-footer{background:var(--bg-dark);color:var(--dark-body);padding:52px 0 0;}
.footer-grid{display:grid;gap:26px;align-items:start;}
@media(min-width:900px){.footer-grid{grid-template-columns:1.6fr auto;align-items:center;}}
.footer-legal{font-size:15px;margin:16px 0 0;max-width:640px;}
.footer-legal b{color:#fff;font-weight:700;display:block;margin-bottom:8px;font-size:15.5px;}
.footer-links{display:flex;flex-wrap:wrap;gap:16px 28px;font-size:16px;font-weight:600;}
.footer-links a{color:#fff;} .footer-links a:hover{color:var(--amber);}
.footer-rule{margin-top:40px;height:4px;background:var(--amber);}

/* ---------- Página inicial (placeholder) ---------- */
.home{min-height:calc(100vh - 78px);display:grid;place-items:center;text-align:center;
  padding:80px 0;background:radial-gradient(900px 460px at 50% 0%, #FDF1D6 0%, rgba(253,241,214,0) 62%), #fff;}
.home .wrap{max-width:720px;}
.home h1{margin:24px 0 0;font-size:clamp(32px,6vw,52px);}
.home p{margin:20px auto 0;font-size:19px;max-width:560px;}
.home-actions{display:flex;flex-direction:column;gap:14px;margin-top:34px;align-items:center;}
@media(min-width:560px){.home-actions{flex-direction:row;justify-content:center;}}

/* ---------- Páginas legais (/pp e /tc) ---------- */
.legal{padding:56px 0 80px;}
.legal .wrap{max-width:760px;}
.legal-back{display:inline-block;font-size:15.5px;font-weight:600;color:var(--muted);margin-bottom:26px;}
.legal-back:hover{color:var(--amber-600);}
.legal h1{letter-spacing:-.03em;}
.legal-date{margin:14px 0 0;font-size:15px;color:var(--muted);}
.legal-lead{margin:26px 0 0;font-size:19px;line-height:1.6;padding-bottom:34px;border-bottom:1px solid var(--line);}
.legal h2{font-size:21px;margin:44px 0 14px;letter-spacing:-.02em;}
.legal p{margin:0 0 16px;font-size:16.5px;}
.legal strong{color:var(--ink);font-weight:700;}
.legal a{color:var(--amber-700);text-decoration:underline;text-underline-offset:3px;}
.legal a:hover{color:var(--amber-600);}
.legal ul{margin:0 0 18px;padding-left:22px;}
.legal li{margin-bottom:10px;font-size:16.5px;}
.legal li::marker{color:var(--amber);}
