
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=Inter:wght@300;400;500&display=swap');

:root {
  /* Paleta Carrara */
  --bg:          #f9f7f4;
  --bg-2:        #f2f0eb;
  --bg-marble:   #edeae4;
  --surface:     #ffffff;
  --surface-2:   #faf8f5;
  --gold:        #a07c30;
  --gold-mid:    #c09848;
  --gold-light:  #d4b06a;
  --gold-dim:    rgba(160,124,48,.10);
  --gold-line:   rgba(160,124,48,.22);
  --silver:      #b0ada6;
  --text:        #1a1714;
  --muted:       rgba(26,23,20,.55);
  --light:       rgba(26,23,20,.28);
  --line:        rgba(26,23,20,.08);
  --line-strong: rgba(26,23,20,.14);
  --green:       #25D366;
  --max:         1240px;
  --font-serif:  'Cormorant Garamond', 'Times New Roman', serif;
  --font-sans:   'Inter', ui-sans-serif, system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }

body {
  margin: 0;
  font-family: var(--font-sans);
  background: var(--bg);
  color: var(--text);
  line-height: 1.75;
  font-size: 1rem;
  font-weight: 300;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
ul { margin: 0; padding-left: 1.2rem; }
li { margin-bottom: .4rem; }
p { margin: 0 0 1rem; }

/* ── Tipografia ──────────────────────────────── */
h1,h2,h3,h4 { font-family:var(--font-serif); line-height:1.07; margin:0 0 1rem; font-weight:400; letter-spacing:-.01em; color:var(--text); }
h1 { font-size: clamp(3rem, 6.5vw, 6rem); }
h2 { font-size: clamp(2.2rem, 3.8vw, 3.6rem); }
h3 { font-size: clamp(1.5rem, 2.2vw, 2rem); }
h4 { font-size:.78rem; font-family:var(--font-sans); font-weight:500; letter-spacing:.1em; text-transform:uppercase; margin:0 0 .6rem; }
em { font-style:italic; }

/* ── Layout ──────────────────────────────────── */
.container { width: min(calc(100% - 56px), var(--max)); margin: 0 auto; }
.narrow    { width: min(calc(100% - 56px), 760px); margin: 0 auto; }
.center    { text-align: center; }
.muted     { color: var(--muted); }

/* ── Kicker / gold rule ──────────────────────── */
.kicker {
  font-family: var(--font-sans); font-size: .66rem; font-weight: 500;
  text-transform: uppercase; letter-spacing: .22em;
  color: var(--gold); display: block; margin-bottom: .8rem;
}
.gold-rule {
  width: 44px; height: 1px;
  background: linear-gradient(90deg, var(--gold), var(--gold-light));
  display: block; margin-bottom: 20px;
}
.gold-rule.center { margin-left:auto; margin-right:auto; }

/* ── Marble texture helper ───────────────────── */
.marble {
  background:
    linear-gradient(106deg, rgba(200,196,188,.18) 0%, transparent 38%),
    linear-gradient(197deg, rgba(210,206,198,.12) 18%, transparent 55%),
    linear-gradient(83deg,  transparent 28%, rgba(205,201,192,.09) 28.6%, transparent 29.5%),
    linear-gradient(119deg, transparent 44%, rgba(195,191,182,.07) 44.7%, transparent 46%),
    var(--bg);
}
.marble-2 {
  background:
    linear-gradient(74deg,  rgba(205,201,192,.14) 0%, transparent 42%),
    linear-gradient(162deg, rgba(215,211,202,.10) 22%, transparent 58%),
    linear-gradient(93deg,  transparent 31%, rgba(200,196,187,.08) 31.8%, transparent 33%),
    var(--bg-2);
}

/* ── Header ──────────────────────────────────── */
.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  transition: background .35s, box-shadow .35s;
}
.site-header.scrolled {
  background: rgba(249,247,244,.96);
  box-shadow: 0 1px 0 var(--line-strong);
  backdrop-filter: blur(16px);
}
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; padding: 12px 0;
}
.brand { display:flex; align-items:center; flex-shrink:0; }
.brand-logo { height: 160px; width: auto; display:block; }
.nav { display:flex; gap:0; }
.nav a { color:var(--muted); font-size:.8rem; font-weight:400; padding:6px 16px; letter-spacing:.08em; text-transform:uppercase; transition:color .2s; }
.nav a:hover, .nav a.active { color:var(--text); }
.nav-toggle { display:none; background:none; border:none; cursor:pointer; padding:4px; }
.nav-toggle span { display:block; width:20px; height:1px; background:var(--text); margin:5px 0; transition:.3s; }

/* ── Buttons ─────────────────────────────────── */
.btn {
  display: inline-flex; align-items:center; justify-content:center; gap:9px;
  padding: 14px 30px; font-size:.72rem; font-weight:400; letter-spacing:.13em; text-transform:uppercase;
  transition: all .22s; white-space:nowrap; cursor:pointer; border:none;
}
.btn-gold { background:var(--gold); color:#fff; }
.btn-gold:hover { background:var(--gold-mid); }
.btn-outline { border:1px solid var(--gold-line); color:var(--text); background:transparent; }
.btn-outline:hover { border-color:var(--gold); color:var(--gold); }
.btn-dark { background:var(--text); color:#fff; }
.btn-dark:hover { background:#2e2924; }
.btn-wa { background:var(--green); color:#fff; }
.btn-wa:hover { filter:brightness(1.08); }
.text-link { color:var(--gold); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.text-link:hover { color:var(--gold-mid); }

/* ── Hero ────────────────────────────────────── */
.hero {
  min-height: 100vh;
  display: grid; grid-template-columns: 1fr 1fr;
  overflow: hidden; position: relative;
}
.hero-text {
  display: flex; flex-direction: column; justify-content: center;
  padding: 120px 56px 80px;
  background: var(--bg);
  position: relative; z-index: 2;
}
.hero-text::after {
  content: '';
  position: absolute; top: 0; right: 0; bottom: 0; width: 1px;
  background: linear-gradient(to bottom, transparent, var(--gold-line) 30%, var(--gold-line) 70%, transparent);
}
.hero h1 { font-weight:300; font-style:italic; margin-bottom:20px; }
.hero h1 strong { font-weight:400; font-style:normal; display:block; font-size:.72em; letter-spacing:.03em; margin-bottom:.2em; color:var(--muted); font-family:var(--font-sans); text-transform:uppercase; }
.hero-lead { font-size:1.05rem; color:var(--muted); line-height:1.85; max-width:460px; margin-bottom:36px; font-weight:300; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:32px; }
.hero-tags { display:flex; flex-wrap:wrap; gap:8px; }
.hero-tag {
  border:1px solid var(--line-strong); padding:6px 14px;
  font-size:.66rem; color:var(--muted); letter-spacing:.08em;
}
.hero-photo {
  position:relative; overflow:hidden;
  background: var(--bg-marble);
}
.hero-photo img {
  width:100%; height:100%;
  object-fit:cover; object-position:40% top;
  filter:grayscale(8%) contrast(1.04);
}
.hero-photo::before {
  content:''; position:absolute; inset:0; z-index:1;
  background: linear-gradient(90deg, var(--bg) 0%, transparent 15%),
              linear-gradient(0deg, var(--bg) 0%, transparent 20%);
}
.hero-cred {
  position:absolute; bottom:32px; left:32px; z-index:2;
  background:rgba(249,247,244,.92); backdrop-filter:blur(12px);
  border:1px solid var(--gold-line); padding:16px 20px;
}
.hero-cred p { font-size:.66rem; color:var(--muted); margin:0; line-height:1.7; }
.hero-cred strong { color:var(--text); font-weight:500; }

/* ── Strip ───────────────────────────────────── */
.strip {
  border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong);
  background:var(--surface); padding:20px 0;
}
.strip-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.strip-item { text-align:center; flex:1; }
.strip-item + .strip-item { border-left:1px solid var(--line-strong); }
.strip-num { font-family:var(--font-serif); font-size:2rem; color:var(--gold); display:block; line-height:1; font-weight:300; }
.strip-label { font-size:.62rem; text-transform:uppercase; letter-spacing:.14em; color:var(--muted); margin-top:4px; }

/* ── Sections ────────────────────────────────── */
.section    { padding:100px 0; }
.section-sm { padding:64px 0; }
.section-alt { background:var(--bg-2); }
.section-marble { background:var(--bg-marble); }
.section-white  { background:var(--surface); }
.section-dark   { background:var(--text); color:#f9f7f4; }

/* ── Split ───────────────────────────────────── */
.split { display:grid; gap:72px; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.split.wide { grid-template-columns:1.35fr 1fr; }
.split.narrow-left { grid-template-columns:1fr 1.35fr; }

/* ── Photo feature ───────────────────────────── */
.photo-feature { display:grid; grid-template-columns:1fr 1fr; }
.photo-pane    { position:relative; overflow:hidden; min-height:520px; }
.photo-pane img { width:100%; height:100%; object-fit:cover; }
.photo-content { padding:72px 56px; display:flex; align-items:center; }
.photo-content-inner { max-width:460px; }

/* ── Cards ───────────────────────────────────── */
.cards { display:grid; gap:1px; background:var(--line-strong); border:1px solid var(--line-strong); }
.cards.four  { grid-template-columns:repeat(4,1fr); }
.cards.three { grid-template-columns:repeat(3,1fr); }
.cards.two   { grid-template-columns:repeat(2,1fr); }
.card { background:var(--surface); padding:32px 28px; transition:background .25s; }
.card:hover  { background:var(--surface-2); }
.card h4     { color:var(--gold); margin-bottom:10px; }
.card p      { color:var(--muted); font-size:.88rem; line-height:1.75; margin:0; }

/* ── Num list ────────────────────────────────── */
.num-list { list-style:none; padding:0; counter-reset:n; }
.num-list li {
  counter-increment:n; padding:14px 0 14px 48px; position:relative;
  border-bottom:1px solid var(--line); font-size:.88rem; color:var(--muted);
}
.num-list li:last-child { border-bottom:none; }
.num-list li::before {
  content:counter(n,decimal-leading-zero);
  position:absolute; left:0; top:14px;
  font-family:var(--font-serif); font-size:1.2rem; color:var(--gold); font-weight:300; line-height:1;
}
.num-list li strong { color:var(--text); }

/* ── Checklist ───────────────────────────────── */
.checklist { list-style:none; padding:0; }
.checklist li { padding:.65rem 0 .65rem 1.8rem; position:relative; border-bottom:1px solid var(--line); font-size:.88rem; color:var(--muted); }
.checklist li:last-child { border-bottom:none; }
.checklist li::before { content:'—'; position:absolute; left:0; color:var(--gold); }

/* ── CTA box ─────────────────────────────────── */
.cta-box {
  border:1px solid var(--gold-line); padding:72px;
  text-align:center; background:var(--surface); position:relative; overflow:hidden;
}
.cta-box::before { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:100px; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.cta-box h2     { margin-bottom:16px; }
.cta-box .lead  { color:var(--muted); font-size:.95rem; max-width:520px; margin:0 auto 36px; line-height:1.85; }
.cta-actions    { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ── FAQ ─────────────────────────────────────── */
.faq details { border-bottom:1px solid var(--line); padding:18px 0; }
.faq summary { cursor:pointer; font-size:.875rem; color:var(--text); list-style:none; display:flex; justify-content:space-between; align-items:center; letter-spacing:.01em; }
.faq summary::after { content:'+'; color:var(--gold); font-size:1.2rem; }
.faq details[open] summary::after { content:'−'; }
.faq details p { color:var(--muted); font-size:.875rem; margin:12px 0 0; line-height:1.8; }

/* ── Blog ────────────────────────────────────── */
.post-grid { display:grid; gap:1px; background:var(--line-strong); border:1px solid var(--line-strong); }
.post-grid.two   { grid-template-columns:repeat(2,1fr); }
.post-grid.three { grid-template-columns:repeat(3,1fr); }
.post-card { background:var(--surface); padding:32px 28px; display:flex; flex-direction:column; gap:10px; transition:background .25s; }
.post-card:hover { background:var(--surface-2); }
.post-card h2 { font-size:1.3rem; margin:0; font-weight:400; line-height:1.22; }
.post-card p  { color:var(--muted); font-size:.85rem; flex:1; line-height:1.7; margin:0; }
.post-card .read { font-size:.66rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold); margin-top:auto; }

/* ── Page hero ───────────────────────────────── */
.page-hero { padding:148px 0 72px; border-bottom:1px solid var(--line-strong); }
.page-hero h1 { font-style:italic; font-weight:300; }
.page-hero .lead { color:var(--muted); font-size:1.05rem; max-width:640px; line-height:1.85; margin-top:16px; }

/* ── Article ─────────────────────────────────── */
.article-shell { padding:140px 0 96px; }
.article-header { margin-bottom:48px; border-bottom:1px solid var(--line-strong); padding-bottom:36px; }
.article-body { font-size:1.05rem; line-height:1.92; color:rgba(26,23,20,.8); }
.article-body h2 { font-size:1.75rem; margin-top:2.4rem; color:var(--text); }
.article-body p  { margin-bottom:1.4rem; }

/* ── Blockquote ──────────────────────────────── */
.blockquote { border-left:1px solid var(--gold); padding:4px 0 4px 28px; margin:28px 0; }
.blockquote p { font-family:var(--font-serif); font-size:1.4rem; font-style:italic; color:var(--text); margin:0; line-height:1.5; font-weight:300; }

/* ── Tag ─────────────────────────────────────── */
.tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.tag { border:1px solid var(--gold-line); color:var(--gold); padding:5px 13px; font-size:.66rem; text-transform:uppercase; letter-spacing:.1em; }

/* ── Footer ──────────────────────────────────── */
.site-footer { border-top:1px solid var(--line-strong); padding:64px 0 28px; background:var(--surface); }
.footer-grid { display:grid; gap:40px; grid-template-columns:1.6fr 1fr 1fr 1fr; }
.site-footer h5 { font-family:var(--font-sans); font-size:.63rem; font-weight:500; text-transform:uppercase; letter-spacing:.18em; color:var(--gold); margin:0 0 14px; }
.site-footer p  { color:var(--muted); font-size:.78rem; line-height:1.7; margin:0 0 6px; }
.site-footer ul { list-style:none; padding:0; }
.site-footer ul li { margin-bottom:7px; }
.site-footer ul a { color:var(--muted); font-size:.78rem; transition:color .2s; }
.site-footer ul a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid var(--line); margin-top:44px; padding-top:18px; display:flex; justify-content:space-between; align-items:center; }
.footer-bottom p { color:var(--light); font-size:.7rem; letter-spacing:.05em; margin:0; }

/* ── WhatsApp float ──────────────────────────── */
.wa-float {
  position:fixed; bottom:28px; right:28px; z-index:999;
  background:var(--green); color:#fff; width:52px; height:52px;
  border-radius:50%; display:grid; place-items:center;
  box-shadow:0 4px 20px rgba(37,211,102,.35); transition:transform .2s, box-shadow .2s;
}
.wa-float:hover { transform:scale(1.07); box-shadow:0 8px 28px rgba(37,211,102,.45); }

/* ── Responsive ──────────────────────────────── */
@media (max-width:1024px) {
  .hero { grid-template-columns:1fr; }
  .hero-text { padding:120px 28px 60px; }
  .hero-photo { min-height:460px; }
  .hero-photo::before { background:linear-gradient(0deg, var(--bg) 0%, transparent 30%); }
  .cards.four { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:repeat(2,1fr); }
  .photo-feature { grid-template-columns:1fr; }
  .photo-pane { min-height:360px; }
}
@media (max-width:768px) {
  h1 { font-size:clamp(2.6rem,9vw,3.6rem); }
  .section { padding:60px 0; }
  .split { grid-template-columns:1fr; gap:36px; }
  .cards.three,.cards.two { grid-template-columns:1fr; }
  .post-grid.two,.post-grid.three { grid-template-columns:1fr; }
  .cta-box { padding:44px 24px; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; gap:6px; text-align:center; }
  .nav { display:none; position:fixed; inset:0; background:var(--bg); flex-direction:column; justify-content:center; align-items:center; gap:28px; }
  .nav.open { display:flex; }
  .nav a { font-size:1.1rem; padding:8px 0; }
  .nav-toggle { display:flex; flex-direction:column; z-index:200; }
  .photo-content { padding:44px 24px; }
  .strip-inner { flex-wrap:wrap; }
  .strip-item { min-width:45%; }
}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       