/*
Theme Name: Ouro São Paulo
Theme URI: https://ourosaopaulo.com.br/
Description: Tema filho do Kadence para a Ouro São Paulo. Leve, escuro, mobile-first, pronto para SEO local.
Author: Ouro São Paulo
Template: kadence
Version: 1.2.0
Text Domain: ouro-sp
*/

@font-face{font-family:Montserrat;font-weight:400;font-display:swap;src:url(assets/fonts/montserrat-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:600;font-display:swap;src:url(assets/fonts/montserrat-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-weight:700;font-display:swap;src:url(assets/fonts/montserrat-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Cinzel;font-weight:700;font-display:swap;src:url(assets/fonts/cinzel-latin-700-normal.woff2) format("woff2")}

:root{
  --bg:#141414; --surface:#1F1F1F; --line:#2E2B26;
  --gold:#D4A537; --gold-2:#E9C46A;
  --text:#F5EFE0; --muted:#B4AE9E; --blue:#2E6FD8;
  --wrap:1120px; --r:14px;
  --fs-0:1rem; --fs-1:1.125rem; --fs-2:1.5rem; --fs-3:2rem; --fs-4:clamp(2.25rem,5.2vw,3.75rem);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--fs-0)/1.65 Montserrat,system-ui,sans-serif}
.ouro-land img,.ouro-land svg,.ouro-header img,.ouro-header svg,.ouro-footer img{display:block;max-width:100%}
a{color:var(--gold-2)}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.o-wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
h1,h2,h3{line-height:1.15;margin:0 0 .5em;font-weight:700;letter-spacing:-.01em;text-wrap:balance}
.ouro-land h2{font-size:var(--fs-3)}
.ouro-land h3{font-size:var(--fs-1)}
.ouro-land p{margin:0 0 1em;max-width:62ch}
.muted{color:var(--muted)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--gold);color:#141414;padding:8px 12px;z-index:99}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.6em;font:600 var(--fs-0)/1 Montserrat,sans-serif;text-decoration:none;padding:16px 22px;border-radius:999px;transition:background .2s,color .2s}
.btn svg{width:20px;height:20px;flex:none}
.btn-gold{background:var(--gold);color:#141414}
.btn-gold:hover{background:var(--gold-2)}
.btn-ghost{color:var(--text);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--gold)}

/* Header */
.ouro-header{position:sticky;top:0;z-index:20;background:rgba(20,20,20,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.ouro-header .o-wrap{display:flex;align-items:center;gap:24px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);margin-right:auto}
.brand img{width:34px;height:37px}
.brand span{font:700 1.15rem/1 Cinzel,serif;letter-spacing:.02em}
.nav{display:flex;gap:22px}
.nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:.95rem}
.nav a:hover{color:var(--text)}
.ouro-header .btn{padding:11px 18px;font-size:.95rem}
.menu{display:none}
@media (max-width:860px){
  .nav,.ouro-header .btn{display:none}
  .menu{display:block;position:relative}
  .menu summary{list-style:none;cursor:pointer;padding:10px;border:1px solid var(--line);border-radius:10px}
  .menu summary::-webkit-details-marker{display:none}
  .menu nav{position:absolute;right:0;top:52px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px;min-width:220px;display:grid}
  .menu nav a{padding:12px 14px;color:var(--text);text-decoration:none;font-weight:600;border-radius:8px}
  .menu nav a:hover{background:#2a2a2a}
}

/* Hero */
.hero{position:relative;overflow:hidden;padding:72px 0 88px}
.hero .o-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero h1{font-size:var(--fs-4);max-width:15ch}
.hero .lead{font-size:var(--fs-1);color:var(--muted);max-width:44ch;margin-bottom:28px}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px}
.hero .facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:32px 0 0;padding:0;list-style:none;color:var(--muted);font-size:.95rem}
.hero .facts li{display:flex;align-items:center;gap:8px}
.hero .facts li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}
.ring{width:100%;max-width:440px;justify-self:end}
.ring .arc{stroke-dasharray:470;stroke-dashoffset:470;animation:draw 1.6s .2s cubic-bezier(.6,.1,.2,1) forwards}
.ring .gem{opacity:0;animation:gem .6s 1.5s ease-out forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes gem{to{opacity:1}}
@media (prefers-reduced-motion:reduce){.ring .arc{animation:none;stroke-dashoffset:0}.ring .gem{animation:none;opacity:1}}
@media (max-width:860px){
  .hero{padding:40px 0 56px}
  .hero .o-wrap{grid-template-columns:1fr}
  .ring{position:absolute;right:-90px;top:-30px;width:300px;opacity:.18;pointer-events:none}
  .hero .btn{width:100%;justify-content:center}
}

/* Sections */
.ouro-land section{padding:80px 0;border-top:1px solid var(--line)}
.head{margin-bottom:40px}
.head p{color:var(--muted)}

/* Steps: real sequence */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:s;margin:0;padding:0;list-style:none}
.steps li{counter-increment:s;padding-top:20px;border-top:2px solid var(--gold)}
.steps li::before{content:counter(s);display:block;font:700 var(--fs-3)/1 Montserrat,sans-serif;color:var(--gold);margin-bottom:14px}
.steps p{color:var(--muted);margin:0}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* Hallmarks */
.marks{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 36px;padding:0;list-style:none}
.mark{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:118px;padding:16px 18px;border:2px solid var(--gold);border-radius:50% / 42%;color:var(--gold-2);background:radial-gradient(120% 90% at 50% 20%,#262219,#1a1814)}
.mark b{font:700 1.6rem/1 Montserrat,sans-serif;letter-spacing:.04em}
.mark small{color:var(--muted);font-size:.8rem;margin-top:4px}
.pieces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.piece h3{margin:14px 0 4px}
.piece p{color:var(--muted);margin:0}
.ph,.piece img{width:100%;aspect-ratio:4/3;border-radius:var(--r);object-fit:cover;background:radial-gradient(90% 70% at 50% 35%,#3a2f17 0%,#1d1a14 60%,#161514 100%);border:1px solid var(--line)}
@media (max-width:860px){.pieces{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.pieces{grid-template-columns:1fr}}
/* Units */
.unit{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;background:var(--surface);border-radius:var(--r);padding:32px}
.unit h3{font-size:var(--fs-2)}
.unit address{font-style:normal;margin-bottom:20px;line-height:1.7}
@media (max-width:860px){.unit{grid-template-columns:1fr;padding:22px}}
/* Blog teaser */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.post{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--text);padding-top:18px;border-top:1px solid var(--gold)}
.post h3{margin:0}
.post p{color:var(--muted);margin:0}
.post:hover h3{color:var(--gold-2)}
@media (max-width:860px){.posts{grid-template-columns:1fr}}

/* Trust */
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.trust div{background:var(--surface);border-radius:var(--r);padding:24px}
.trust p{color:var(--muted);margin:0}
@media (max-width:860px){.trust{grid-template-columns:1fr}}

/* Visit */
.visit{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.visit address{font-style:normal;font-size:var(--fs-1);margin-bottom:18px}
.hours{width:100%;border-collapse:collapse;margin-bottom:24px}
.hours td{padding:10px 0;border-bottom:1px solid var(--line)}
.hours td:last-child{text-align:right;color:var(--muted)}
.notice{background:var(--surface);border-left:3px solid var(--gold);border-radius:0 var(--r) var(--r) 0;padding:20px 22px}
.notice p{margin:0}
@media (max-width:860px){.visit{grid-template-columns:1fr}}

/* FAQ */
.faq{max-width:780px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-weight:600;font-size:var(--fs-1);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:16px;font-size:1.5rem;color:var(--gold)}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--muted);padding-bottom:20px;margin:0}

/* CTA band */
.band{text-align:center}
.band .ouro-land h2{font-size:var(--fs-3)}
.band p{margin:0 auto 28px;color:var(--muted)}

/* Footer */
.ouro-footer{border-top:1px solid var(--line);padding:56px 0 110px;color:var(--muted);font-size:.95rem}
.ouro-footer .o-wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}
.ouro-footer h3{color:var(--text);font-size:1rem}
.ouro-footer a{color:var(--muted)}
.ouro-footer a:hover{color:var(--gold-2)}
.ouro-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:.85rem}
@media (max-width:860px){.ouro-footer .o-wrap{grid-template-columns:1fr}}

/* Mobile sticky WhatsApp */
.wa-bar{display:none}
@media (max-width:860px){
  .wa-bar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.45)}
}

/* ===== Integração com o Kadence (blog, posts, páginas comuns) ===== */
:root{
  --global-palette1:#D4A537; --global-palette2:#E9C46A; --global-palette3:#F5EFE0;
  --global-palette4:#F5EFE0; --global-palette5:#B4AE9E; --global-palette6:#8C877B;
  --global-palette7:#2E2B26; --global-palette8:#1F1F1F; --global-palette9:#141414;
  --global-body-font-family:Montserrat,system-ui,sans-serif;
  --global-heading-font-family:Montserrat,system-ui,sans-serif;
}
body,.site,#wrapper,#inner-wrap,.content-bg,.site-main,.entry.content-bg,.loop-entry{background:var(--bg)!important;color:var(--text)}
.entry-content{font-size:1.0625rem;line-height:1.75}
.entry-content p,.entry-content li{max-width:68ch}
.entry-content h2{font-size:1.6rem;margin-top:1.8em}
.entry-content h3{font-size:1.25rem;margin-top:1.5em}
.entry-content a{color:var(--gold-2)}
.entry-content img{border-radius:var(--r)}
.entry-title,.entry-title a{color:var(--text)}
.entry-meta,.entry-meta a{color:var(--muted)}
.loop-entry{border:1px solid var(--line);border-radius:var(--r)}

/* ===== Ajustes da landing ===== */
.ouro-land section:first-child{border-top:0}
.ouro-land{overflow-x:clip}
.page-hero{padding:56px 0 40px}
.page-hero h1{font-size:clamp(2rem,4.6vw,3.25rem);max-width:20ch}
.page-hero .lead{font-size:var(--fs-1);color:var(--muted);max-width:52ch}
.how-to-get{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.how-to-get li{padding:12px 0;border-bottom:1px solid var(--line)}
.legal-text{max-width:760px}
.legal-text h2{font-size:1.35rem;margin-top:1.6em}

/* ===== Mobile-first: toque e barra fixa do WhatsApp ===== */
@media (max-width:860px){
  body{font-size:1.0625rem}
  .btn{min-height:52px}
  .ouro-land section{padding:56px 0}
  .faq summary{padding:18px 40px 18px 0}
  .wa-bar{transform:translateY(140%);transition:transform .25s ease}
  .wa-bar.is-visible{transform:none}
  .ouro-footer{padding-bottom:120px}
}
@media (prefers-reduced-motion:reduce){.wa-bar{transition:none}}
.admin-bar .ouro-header{top:32px}
@media (max-width:782px){.admin-bar .ouro-header{top:46px}}
@media (max-width:600px){.admin-bar .ouro-header{top:0}}
.ouro-land section[id]{scroll-margin-top:84px}
/* Aviso de cookies */
.cookie{position:fixed;z-index:50;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:560px;margin-left:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:0 10px 30px rgba(0,0,0,.5);font-size:.95rem}
.cookie p{margin:0 0 12px;color:var(--muted)}
.cookie-actions{display:flex;gap:10px;justify-content:flex-end}
.cookie .btn{padding:10px 18px;min-height:44px}
body.has-cookie .wa-bar{visibility:hidden}
