/* Toque de Cura — sistema visual compartilhado */
:root{
  --ink:#1e2421; --fg:#1f201e; --muted:#8d8d8d; --line:#e7e5e1;
  --surface:#f6f5f2; --surface-2:#ebe9e4; --hero:#f8f8f6;
  --green:#31a964; --purple:#b864a4; --yellow:#f5c723; --red:#ea5164;
  /* 7 chakras: raiz → coroa (as barras do logo) */
  --c1:#ea5164; --c2:#f39a6b; --c3:#f5c723; --c4:#31a964; --c5:#5bbbe0; --c6:#7d7fc9; --c7:#b864a4;
  --chakra:linear-gradient(90deg,var(--c7),var(--c6),var(--c5),var(--c4),var(--c3),var(--c2),var(--c1));
  --text-watermark:13rem;
  --e-cubic:cubic-bezier(.215,.61,.355,1); --e-quart:cubic-bezier(.165,.84,.44,1);
  --e-spring:cubic-bezier(.16,1,.3,1); --e-soft:cubic-bezier(.22,1,.36,1);
}
*{ box-sizing:border-box; margin:0; padding:0 }
html{ font-size:16px; -webkit-font-smoothing:antialiased }
body{ background:#fff; color:var(--fg); font-family:'Geologica',sans-serif }
/* overflow-x:hidden no body quebra position:sticky no Safari iOS; clip corta sem criar contêiner de rolagem */
@supports (overflow:clip){ body{ overflow-x:clip } }
a{ color:inherit; text-decoration:none }
button{ font:inherit; color:inherit; background:none; border:none; cursor:pointer }
ul{ list-style:none }
img{ display:block; max-width:100% }
[hidden]{ display:none !important }
:focus-visible{ outline:2px solid var(--green); outline-offset:2px }
@media (prefers-reduced-motion: reduce){ *{ animation:none !important; transition:none !important } }

@media (max-width:1920px){ html{ font-size:0.833333vw } }
@media (max-width:1440px){ html{ font-size:1.111111vw } }
@media (max-width:1024px){ html{ font-size:1.5625vw } }
@media (max-width:640px){  html{ font-size:4.444444vw } }

html.lenis, html.lenis body{ height:auto }
.lenis.lenis-smooth{ scroll-behavior:auto !important }
.lenis.lenis-stopped{ overflow:clip }

.i{ width:1em; height:1em; flex:none; display:block }
.shell{ max-width:88rem; margin-inline:auto; padding-inline:1.25rem }
.skip{ position:absolute; left:-9999px }
.skip:focus{ position:fixed; left:1rem; top:1rem; z-index:60; border-radius:.875rem; background:var(--ink); padding:.5rem 1rem; font-size:.875rem; color:#fff }

/* ---------- reveals ---------- */
.rv{ opacity:0; transform:translate(var(--x,0),var(--y,0)) scale(var(--s,1)); transition:opacity .7s var(--e-spring), transform .8s var(--e-spring); transition-delay:var(--d,0ms) }
.rv.in{ opacity:var(--o,1); transform:none }
.ln{ display:block; overflow:hidden; padding-bottom:.1em; margin-bottom:-.1em }
.ln>span{ display:block; transform:translateY(100%); opacity:0; transition:transform .9s var(--e-cubic), opacity .9s var(--e-cubic); transition-delay:calc(var(--d,0ms) + var(--i,0) * var(--st,0ms)) }
.in .ln>span{ transform:none; opacity:1 }
.wd{ display:inline-block; transform:translateY(24px); opacity:0; transition:transform .7s var(--e-quart), opacity .7s var(--e-quart); transition-delay:calc(var(--d,0ms) + var(--i,0) * 35ms) }
.in .wd{ transform:none; opacity:1 }

/* ---------- identidade: respiração / chakras ---------- */
@keyframes breathe{ 0%,100%{ transform:scale(1); opacity:.8 } 50%{ transform:scale(1.3); opacity:1 } }
@keyframes float{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-10px) } }
.spine{ position:absolute; z-index:3; display:none; flex-direction:column; align-items:center; gap:.85rem; pointer-events:none }
.spine i{ width:.8rem; height:.8rem; border-radius:9999px; background:var(--c); box-shadow:0 0 0 .3rem rgba(31,32,30,.06); box-shadow:0 0 0 .3rem color-mix(in srgb,var(--c) 18%,transparent); animation:breathe 4.8s ease-in-out infinite; animation-delay:calc(var(--i) * .4s) }
.spine::before{ content:""; position:absolute; top:-1.5rem; bottom:-1.5rem; left:50%; width:1px; background:linear-gradient(transparent,rgba(31,32,30,.15),transparent) }
.orb{ position:absolute; z-index:1; border-radius:9999px; pointer-events:none; animation:float 9s ease-in-out infinite }

/* ---------- shared ---------- */
.eyebrow{ display:inline-flex; align-items:center; gap:.5rem; font-size:.875rem; font-weight:500; color:rgba(31,32,30,.7) }
.eyebrow::before{ content:""; width:.375rem; height:.375rem; border-radius:9999px; background:var(--green) }
.eyebrow.light{ color:rgba(255,255,255,.7) }
.eyebrow.bordered{ border:1px solid var(--line); border-radius:9999px; padding:.375rem 1rem }
.crumbs{ display:flex; flex-wrap:wrap; gap:.5rem; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.04em; color:rgba(31,32,30,.45) }
.crumbs a:hover{ color:var(--green) }
.crumbs span[aria-current]{ color:rgba(31,32,30,.75) }

.pill{ display:inline-block }
.pill-in{ display:inline-flex; align-items:center; gap:.75rem; border-radius:9999px; font-size:.875rem; font-weight:500; padding:.875rem 1.75rem; white-space:nowrap }
.pill.arrow .pill-in{ padding:.375rem .375rem .375rem 1.5rem }
.pill.dark .pill-in{ background:var(--ink); color:#fff }
.pill.green .pill-in{ background:var(--green); color:#fff }
.pill.light .pill-in{ background:var(--surface); color:var(--fg) }
.pill.outline .pill-in{ border:1px solid #d9d7d2; background:rgba(255,255,255,.55); color:var(--fg) }
.badge{ width:2.25rem; height:2.25rem; display:grid; place-items:center; border-radius:9999px; font-size:1rem; background:var(--ink); color:#fff }
.pill.dark .badge, .pill.green .badge{ background:#fff; color:var(--ink) }
.pill.light .badge{ background:var(--green) }

.h2-big{ font-size:2.25rem; font-weight:700; letter-spacing:-.02em; line-height:1.08 }
.alink{ display:inline-flex; text-align:left }
.alink>span{ display:inline-block }
.sec{ padding-block:5rem }
.sec-head{ display:flex; flex-direction:column; gap:1.25rem; margin-bottom:3rem }
.sec-head>p{ max-width:36rem; font-size:.9375rem; line-height:1.6; color:rgba(31,32,30,.6) }

/* ---------- loader / cortina ---------- */
.loader{ position:fixed; inset:0; z-index:120; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2rem; background:var(--ink); color:#fff; border-radius:0 0 2rem 2rem; transition:transform .7s var(--e-soft) }
.loader.exit{ transform:translateY(-100%) }
.loader.quick .ld-p{ display:none }
.ld-c{ display:flex; flex-direction:column; align-items:center; gap:1.25rem; text-align:center; transition:opacity .6s var(--e-soft), transform .6s var(--e-soft) }
.loader.exit .ld-c{ opacity:0; transform:translateY(-12px) }
.ld-brand{ display:flex; align-items:center; gap:.75rem; font-weight:600; font-size:1.5rem }
.ld-brand .i{ font-size:2.25rem }
.ld-c p{ max-width:24ch; font-size:.875rem; color:rgba(255,255,255,.55) }
.ld-p{ width:min(22rem,72vw); display:flex; flex-direction:column; gap:.75rem }
.ld-track{ height:1px; background:rgba(255,255,255,.15) }
.ld-fill{ height:100%; width:0; background:var(--chakra); transition:width .1s ease-out }
.ld-row{ display:flex; justify-content:space-between; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.05em; color:rgba(255,255,255,.45) }
.ld-row b{ font-weight:inherit; font-variant-numeric:tabular-nums; color:rgba(255,255,255,.8) }
.curtain{ position:fixed; inset:0; z-index:125; background:var(--ink); border-radius:0 0 2rem 2rem; transform:translateY(-101%); transition:transform .55s var(--e-soft); pointer-events:none; display:grid; place-items:center }
.curtain .i{ font-size:3rem; opacity:0; transition:opacity .3s .2s }
.curtain.on{ transform:none }
.curtain.on .i{ opacity:1 }

/* ---------- header ---------- */
.hdr{ position:absolute; inset-inline:0; top:0; z-index:50 }
.hdr .shell{ display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding-block:1rem }
.brand{ display:block }
.brand img{ height:2.75rem; width:auto }
.nav{ display:none }
.nav a>span{ display:inline-flex; align-items:center; gap:.25rem; text-transform:uppercase; letter-spacing:.03em }
.nav [aria-current] span{ color:var(--green) }
.hdr-r{ display:flex; align-items:center; gap:.75rem }
.glass{ border:1px solid rgba(231,229,225,.9); background:rgba(255,255,255,.55); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); border-radius:.875rem }
.clock{ display:none; align-items:center; padding:.5rem .75rem; gap:.75rem; font-size:.75rem; color:rgba(31,32,30,.7) }
.clock .lbl{ color:rgba(31,32,30,.45) }
.clock .t{ min-width:2.5rem; font-variant-numeric:tabular-nums; font-weight:500; color:var(--fg) }
.clock .sep{ color:rgba(31,32,30,.3) }
.clock .dt{ font-weight:500 }
.menu-btn{ transition:background .2s }
.menu-btn:hover{ background:rgba(255,255,255,.85) }
.menu-btn>span{ display:flex; align-items:center; gap:.5rem; padding:.5rem 1rem; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.05em }
.menu-btn .i{ font-size:.875rem }
.menu-btn .word{ display:none }

/* ---------- hero (home + páginas) ---------- */
.hero{ position:relative; isolation:isolate; overflow:hidden; border-radius:0 0 2rem 2rem; background:var(--hero); display:flex; flex-direction:column }
.hero-bg{ position:absolute; inset:0; z-index:0; background:url(/assets/bg-principal-banner-1.svg) center/cover no-repeat; pointer-events:none }
.lr{ position:relative; order:2; height:24rem; z-index:2 }
.lr.full{ position:absolute; inset:0; height:auto; z-index:0 }
.lr .hero-img{ position:absolute; left:0; bottom:0; width:100%; height:100%; object-fit:contain; object-position:center bottom; z-index:1 }
.lr canvas{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:2 }
.lr[data-mode="aura"] canvas{ z-index:0 }
.wm{ pointer-events:none; position:absolute; inset-inline:0; bottom:7rem; z-index:1; text-align:center; -webkit-user-select:none; user-select:none; font-weight:800; line-height:1; font-size:var(--text-watermark); color:rgba(31,32,30,.035); white-space:nowrap; letter-spacing:-.02em }
.hero-grid{ position:relative; z-index:20; order:1; display:flex; flex-direction:column; gap:2rem; padding-top:7rem; padding-bottom:2rem; width:100% }
.hero-l{ display:flex; flex-direction:column; gap:1.5rem; align-items:flex-start }
.hero h1{ font-size:2.75rem; font-weight:800; line-height:.95; letter-spacing:-.01em; text-transform:uppercase; color:#2e2e2d }
.hero.page h1{ font-size:2.5rem; text-transform:none; font-weight:700; letter-spacing:-.02em; line-height:1.02; max-width:16ch }
.hero .sub{ font-size:1.125rem; font-weight:600; line-height:1.25; text-transform:uppercase; color:#2e2e2d }
.hero .sub em{ font-style:normal; color:var(--purple) }
.hero .lead{ max-width:30rem; font-size:1rem; line-height:1.55; color:rgba(31,32,30,.7) }
.rating{ display:flex; align-items:center; gap:.75rem }
.stars{ display:flex; color:var(--yellow); font-size:1rem }
.rating p{ font-size:.875rem; font-weight:500; color:rgba(31,32,30,.7) }
.ctas{ display:flex; flex-wrap:wrap; gap:.75rem }
.hero-r{ display:flex; flex-direction:column; align-items:flex-start; gap:2rem }
.hcard{ width:100%; max-width:24rem; border-radius:1.25rem; background:rgba(255,255,255,.75); padding:.5rem; box-shadow:0 0 0 1px rgba(231,229,225,.8), 0 10px 30px -12px rgba(0,0,0,.15); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px) }
.hc-row{ display:flex; gap:.5rem; cursor:pointer; border-radius:.875rem }
.hc-tile{ aspect-ratio:1; width:6rem; flex:none; display:grid; place-items:center; border-radius:.875rem; background:var(--ink); font-size:2.5rem }
.hc-panel{ flex:1; border-radius:.875rem; background:rgba(246,245,242,.8); padding:.75rem; display:flex; flex-direction:column; justify-content:space-between }
.hc-slot{ position:relative; min-height:3.25rem }
.hc-item{ position:absolute; inset:0; opacity:0; transition:transform .55s var(--e-spring), opacity .4s ease }
.hc-cap{ font-size:.65rem; font-weight:500; text-transform:uppercase; letter-spacing:.05em; color:rgba(31,32,30,.45) }
.hc-title{ max-width:9rem; font-size:.875rem; font-weight:500; line-height:1.35 }
.hc-foot{ display:flex; align-items:center; justify-content:space-between }
.dots{ display:flex; gap:.25rem }
.dots i{ height:.25rem; width:.375rem; border-radius:9999px; background:rgba(31,32,30,.2); transition:all .3s }
.dots i.on{ width:1rem; background:var(--green) }
.hc-nav{ display:flex; gap:.25rem }
.hc-nav button{ width:1.75rem; height:1.75rem; display:grid; place-items:center; border-radius:9999px; background:#fff; color:rgba(31,32,30,.7); box-shadow:0 0 0 1px var(--line); font-size:.75rem; transition:color .2s }
.hc-nav button:hover{ color:var(--fg) }
.flip{ transform:rotate(180deg) }
.status{ position:relative; z-index:20; order:3; display:flex; align-items:center; justify-content:space-between; gap:.75rem; border-top:1px solid rgba(31,32,30,.1); padding-block:1.25rem; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.025em; color:rgba(31,32,30,.6); width:100% }
.status .mid{ display:none }
.status .end{ display:inline-flex; gap:.5rem }
.hero.page .hero-grid{ padding-bottom:3rem }
.hero.page.noimg .hero-grid{ padding-bottom:4rem }

/* ---------- filosofia (home) ---------- */
.about .shell{ display:grid; grid-template-columns:1fr; align-items:center; gap:3rem; padding-block:5rem }
.globe-blk{ position:relative; min-height:14rem; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start }
.globe-bg{ position:absolute; left:-1rem; top:50%; transform:translateY(-50%); font-size:12rem; opacity:.16 }
.globe-blk .eyebrow{ position:relative }
.globe-note{ position:relative; display:flex; align-items:center; gap:.75rem; font-size:.875rem; color:rgba(31,32,30,.7) }
.globe-note .i{ font-size:1.5rem; color:var(--green) }
.globe-note span{ max-width:14rem }
.stmt-wrap{ display:flex; flex-direction:column; gap:1.75rem }
.stmt{ font-size:1.5rem; font-weight:500; line-height:1.35; letter-spacing:-.01em }
.stmt .mut{ color:var(--muted) }
.stmt-p{ max-width:36rem; font-size:.9375rem; line-height:1.6; color:rgba(31,32,30,.6) }
.about-foot{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:1.5rem; border-top:1px solid var(--line); padding-top:1.5rem }
.about-foot .find{ display:flex; flex-direction:column; gap:.75rem; font-size:.875rem; color:rgba(31,32,30,.45) }
.socials{ display:flex; gap:.5rem }
.soc{ width:2.25rem; height:2.25rem; display:grid; place-items:center; border-radius:9999px; font-size:.875rem; background:var(--surface); color:rgba(31,32,30,.7) }
.soc.yt{ background:var(--red); color:#fff }
.soc.wa{ background:var(--green); color:#fff }
.soc.ig{ background:var(--purple); color:#fff }

/* ---------- band ---------- */
.band{ display:flex; flex-direction:column; gap:.75rem; padding-block:2.5rem }
.band li{ flex:1 }
.tile{ display:grid; place-items:center; height:6rem; border-radius:9999px; font-size:1.875rem; font-weight:600 }
.tile.light{ background:var(--surface); color:var(--fg) }
.tile.accent{ background:linear-gradient(to bottom right,#3dbb73,#238650); color:#fff }
.tile.dark{ background:var(--ink); color:#fff; font-size:2.25rem }
.tile.purple{ background:linear-gradient(to bottom right,#c97bb6,#9c4d8a); color:#fff }

/* ---------- respiração ---------- */
@keyframes breath{ 0%,100%{ transform:scale(.62) } 50%{ transform:scale(1) } }
@keyframes ring{ 0%,100%{ transform:scale(.7); opacity:0 } 50%{ transform:scale(1.18); opacity:.5 } }
@keyframes inhale{ 0%,45%{ opacity:1 } 50%,95%{ opacity:0 } 100%{ opacity:1 } }
@keyframes exhale{ 0%,45%{ opacity:0 } 50%,95%{ opacity:1 } 100%{ opacity:0 } }
.breathe .shell{ display:grid; grid-template-columns:1fr; gap:3rem; align-items:center }
.breathe-box{ position:relative; border-radius:2rem; background:var(--surface); overflow:hidden; display:grid; place-items:center; aspect-ratio:1/1; max-height:34rem; width:100% }
.breath-orb{ position:relative; width:62%; aspect-ratio:1; border-radius:9999px; background:radial-gradient(circle at 35% 30%, #fff 0%, #bfe3f2 30%, #e2c0da 70%, #31a964 130%); box-shadow:0 30px 80px -20px rgba(184,100,164,.45); background:radial-gradient(circle at 35% 30%, #fff 0%, color-mix(in srgb,var(--c5) 55%,#fff) 30%, color-mix(in srgb,var(--c7) 60%,#fff) 70%, var(--c4) 130%); box-shadow:0 30px 80px -20px color-mix(in srgb,var(--c7) 55%,transparent); animation:breath 10s ease-in-out infinite }
.breath-ring{ position:absolute; width:62%; aspect-ratio:1; border-radius:9999px; border:1px solid rgba(49,169,100,.6); border:1px solid color-mix(in srgb,var(--c4) 60%,transparent); animation:ring 10s ease-in-out infinite }
.breath-ring.r2{ animation-delay:.6s; border-color:rgba(184,100,164,.5); border-color:color-mix(in srgb,var(--c7) 50%,transparent) }
.breath-word{ position:absolute; font-size:1rem; font-weight:600; letter-spacing:.3em; text-transform:uppercase; color:var(--ink) }
.breath-word.a{ animation:inhale 10s linear infinite }
.breath-word.b{ animation:exhale 10s linear infinite; opacity:0 }
.breathe-txt{ display:flex; flex-direction:column; gap:1.5rem }
.breathe-txt p{ max-width:32rem; font-size:1rem; line-height:1.6; color:rgba(31,32,30,.65) }
.chakra-list{ display:flex; flex-wrap:wrap; gap:.5rem }
.chakra-list li{ display:inline-flex; align-items:center; gap:.5rem; border-radius:9999px; border:1px solid var(--line); padding:.4rem .85rem .4rem .5rem; font-size:.8125rem; color:rgba(31,32,30,.75) }
.chakra-list li::before{ content:""; width:.7rem; height:.7rem; border-radius:9999px; background:var(--c) }

/* ---------- cards de unidade ---------- */
.cards{ display:grid; grid-template-columns:1fr; gap:1.5rem }
.card{ position:relative; height:100%; display:flex; flex-direction:column; overflow:hidden; border-radius:2rem; background:var(--ink); padding:.75rem .75rem 1.5rem; color:#fff; box-shadow:0 0 0 1px rgba(255,255,255,.05) }
.card-photo{ position:relative; display:block; aspect-ratio:392/182; overflow:hidden; border-radius:1.5rem; background:#2c2d2a }
.card-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .9s var(--e-spring) }
.card:hover .card-photo img{ transform:scale(1.05) }
.card-in{ display:flex; flex-direction:column; flex:1; padding:1.25rem .75rem 0 }
.card-meta{ display:flex; align-items:center; justify-content:space-between; font-size:.75rem; text-transform:uppercase; letter-spacing:.025em; color:rgba(255,255,255,.45) }
.card-badge{ width:2.75rem; height:2.75rem; display:grid; place-items:center; border-radius:9999px; background:rgba(255,255,255,.1); color:#fff; box-shadow:0 0 0 1px rgba(255,255,255,.15) }
.card h3{ margin-top:.75rem; font-size:1.5rem; font-weight:600; letter-spacing:-.01em }
.card p{ margin-top:.5rem; max-width:28rem; font-size:.875rem; line-height:1.5; color:rgba(255,255,255,.55); flex:1 }
.tags{ margin-top:1.25rem; display:flex; flex-wrap:wrap; gap:.5rem }
.tag{ display:inline-flex; align-items:center; gap:.5rem; border:1px solid rgba(255,255,255,.25); color:#fff; border-radius:9999px; padding:.5rem 1rem; font-size:.875rem; transition:background .2s, border-color .2s }
.tag:hover{ background:var(--green); border-color:var(--green) }

/* ---------- linhas (pilares) ---------- */
.rows li{ border-top:1px solid var(--line) }
.rows li:first-child{ border-top:0 }
.row-link{ display:block }
.row{ display:flex; align-items:center; gap:1rem; border-radius:1.25rem; padding:1.5rem }
.row .idx{ width:1.75rem; flex:none; display:flex; align-items:center; gap:.5rem; font-size:.875rem; font-weight:600; color:var(--c) }
.row .idx::before{ content:""; width:.5rem; height:.5rem; border-radius:9999px; background:var(--c) }
.row h3{ flex:1; font-size:1.25rem; font-weight:500; letter-spacing:-.01em; line-height:1.2 }
.row p{ display:none; max-width:20rem; font-size:.875rem; color:rgba(31,32,30,.55) }
.row .rb{ width:2.5rem; height:2.5rem; flex:none; display:grid; place-items:center; border-radius:9999px; background:var(--ink); color:#fff }

/* pilares completos (accordion nativo) */
.pillars details{ border-top:1px solid var(--line) }
.pillars details:last-child{ border-bottom:1px solid var(--line) }
.pillars summary{ list-style:none; display:flex; align-items:center; gap:1rem; padding:1.5rem .5rem; cursor:pointer }
.pillars summary::-webkit-details-marker{ display:none }
.pillars summary .idx{ flex:none; width:3rem; height:3rem; display:grid; place-items:center; border-radius:9999px; background:rgba(31,32,30,.06); background:color-mix(in srgb,var(--c) 15%,#fff); color:var(--c); font-weight:700; font-size:.875rem; transition:background .3s, color .3s }
.pillars details[open] summary .idx, .pillars summary:hover .idx{ background:var(--c); color:#fff }
.pillars summary h3{ flex:1; font-size:1.125rem; font-weight:600; letter-spacing:-.01em; line-height:1.25 }
.pillars summary .pl{ flex:none; width:2.25rem; height:2.25rem; display:grid; place-items:center; border-radius:9999px; border:1px solid var(--line); transition:transform .4s var(--e-spring) }
.pillars details[open] .pl{ transform:rotate(45deg) }
.pillars .body{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .5s var(--e-spring) }
.pillars details[open] .body{ grid-template-rows:1fr }
.pillars .body>div{ overflow:hidden }
.pillars .body p{ padding:0 .5rem 1.75rem 4rem; max-width:52rem; font-size:1rem; line-height:1.65; color:rgba(31,32,30,.7) }

/* ---------- novidades ---------- */
.posts{ display:grid; grid-template-columns:1fr; gap:1.5rem }
.post-card{ height:100%; display:flex; flex-direction:column; gap:1.25rem; border-radius:2rem; background:var(--surface); padding:.75rem .75rem 1.75rem; transition:background .3s }
.post-card:hover{ background:var(--surface-2) }
.post-card .ph{ aspect-ratio:16/10; overflow:hidden; border-radius:1.5rem; background:var(--surface-2) }
.post-card .ph img{ width:100%; height:100%; object-fit:cover; transition:transform .9s var(--e-spring) }
.post-card:hover .ph img{ transform:scale(1.05) }
.post-card .tx{ display:flex; flex-direction:column; gap:.75rem; padding-inline:.75rem; flex:1 }
.post-card h3{ font-size:1.25rem; font-weight:600; line-height:1.25; letter-spacing:-.01em }
.post-card p{ font-size:.875rem; line-height:1.55; color:rgba(31,32,30,.6); flex:1 }
.post-card .more{ display:inline-flex; align-items:center; gap:.5rem; font-size:.8125rem; font-weight:600; color:var(--green) }

/* ---------- artigo / prosa ---------- */
.progress{ position:fixed; left:0; top:0; z-index:60; height:3px; width:100%; background:var(--chakra); transform-origin:0 50%; transform:scaleX(0) }
.cover{ margin-top:-1rem; position:relative; z-index:2 }
.cover img{ width:100%; aspect-ratio:21/9; object-fit:cover; border-radius:2rem }
.prose{ max-width:44rem; margin-inline:auto; font-size:1.0625rem; line-height:1.75; color:rgba(31,32,30,.82) }
.prose>*+*{ margin-top:1.25rem }
.prose h2{ margin-top:3rem; font-size:1.625rem; line-height:1.2; font-weight:700; letter-spacing:-.015em; color:var(--fg) }
.prose h3{ margin-top:2.25rem; font-size:1.25rem; line-height:1.3; font-weight:600; color:var(--fg) }
.prose ul{ display:flex; flex-direction:column; gap:.6rem; padding-left:0 }
.prose li{ position:relative; padding-left:1.5rem }
.prose li::before{ content:""; position:absolute; left:.2rem; top:.7em; width:.45rem; height:.45rem; border-radius:9999px; background:var(--green) }
.prose a{ color:var(--green); text-decoration:underline; text-underline-offset:3px }

/* ---------- unidade ---------- */
.info{ display:grid; grid-template-columns:1fr; gap:1rem }
.info-card{ display:flex; align-items:flex-start; gap:1rem; border-radius:1.5rem; background:var(--surface); padding:1.5rem; transition:background .3s }
a.info-card:hover{ background:var(--surface-2) }
.info-card .ic{ flex:none; width:3rem; height:3rem; display:grid; place-items:center; border-radius:9999px; background:var(--c, var(--green)); color:#fff; font-size:1.25rem }
.info-card small{ display:block; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.04em; color:rgba(31,32,30,.45) }
.info-card strong{ display:block; margin-top:.35rem; font-size:1rem; font-weight:500; line-height:1.45 }
.split{ display:grid; grid-template-columns:1fr; gap:3rem }
.why{ border-radius:2rem; background:var(--ink); color:#fff; padding:2rem; align-self:start }
.why h3{ font-size:1.375rem; font-weight:600 }
.why p{ margin-top:.75rem; font-size:.9375rem; line-height:1.6; color:rgba(255,255,255,.6) }
.why ul{ margin-top:1.25rem; display:flex; flex-direction:column; gap:.75rem }
.why li{ display:flex; gap:.75rem; align-items:center; font-size:.9375rem }
.why li::before{ content:""; flex:none; width:.6rem; height:.6rem; border-radius:9999px; background:var(--c) }
.gallery{ columns:2; column-gap:1rem }
.gallery button{ display:block; width:100%; margin-bottom:1rem; -webkit-column-break-inside:avoid; page-break-inside:avoid; break-inside:avoid; border-radius:1.25rem; overflow:hidden; background:var(--surface) }
.gallery img{ width:100%; height:auto; transition:transform .9s var(--e-spring) }
.gallery button:hover img{ transform:scale(1.05) }
.lb{ border:0; padding:0; background:transparent; max-width:none; max-height:none; width:100vw; height:100vh; height:100dvh; display:grid; place-items:center; opacity:0; transition:opacity .35s var(--e-spring) }
.lb[open]{ opacity:1 }
.lb::backdrop{ background:rgba(20,24,22,.85); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px) }
.lb img{ max-width:92vw; max-height:86vh; max-height:86dvh; border-radius:1.25rem; box-shadow:0 30px 80px rgba(0,0,0,.4) }
.lb .m-close{ position:fixed; right:1.25rem; top:1.25rem }

/* vídeo (fachada leve) */
.video{ position:relative; display:block; width:100%; aspect-ratio:16/9; border-radius:2rem; overflow:hidden; background:var(--ink) }
.video img{ width:100%; height:100%; object-fit:cover; opacity:.85; transition:transform .9s var(--e-spring), opacity .3s }
.video:hover img{ transform:scale(1.04); opacity:1 }
.video .play{ position:absolute; inset:0; margin:auto; width:5rem; height:5rem; display:grid; place-items:center; border-radius:9999px; background:#fff; color:var(--ink); font-size:1.5rem; box-shadow:0 0 0 .6rem rgba(255,255,255,.25); transition:transform .4s var(--e-spring) }
.video:hover .play{ transform:scale(1.08) }
.video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0 }
.power{ display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:center }
.power-tx{ display:flex; flex-direction:column; gap:1.25rem }
.power-tx p{ font-size:1rem; line-height:1.6; color:rgba(31,32,30,.65); max-width:34rem }

/* ---------- depoimentos ---------- */
.quotes{ display:grid; grid-template-columns:1fr; gap:1.5rem }
.quote{ height:100%; display:flex; flex-direction:column; gap:1.25rem; border-radius:2rem; background:var(--surface); padding:1.75rem }
.quote blockquote{ flex:1; font-size:1rem; line-height:1.55; color:rgba(31,32,30,.85) }
.quote footer{ display:flex; align-items:center; gap:1rem; font-size:.875rem }
.quote cite{ font-style:normal; font-weight:600 }
.quote small{ display:block; font-size:.75rem; font-weight:400; color:rgba(31,32,30,.5) }
.avatar{ width:2.5rem; height:2.5rem; flex:none; display:grid; place-items:center; border-radius:9999px; color:#fff; font-weight:600; font-size:.875rem }
.who{ display:flex; align-items:center; gap:.75rem }

/* ---------- números ---------- */
.panel{ border-radius:2rem; background:var(--ink); padding:3rem 1.5rem; color:#fff; position:relative; overflow:hidden }
.panel h2{ margin-top:1rem; max-width:22ch; font-size:1.875rem; font-weight:500; letter-spacing:-.01em; line-height:1.2 }
.sgrid{ margin-top:3.5rem; display:grid; grid-template-columns:repeat(2,1fr); column-gap:2rem; row-gap:3rem }
.num{ font-size:3rem; font-weight:700; letter-spacing:-.02em; line-height:1; font-variant-numeric:tabular-nums; color:var(--c) }
.sl{ margin-top:.75rem; font-size:.875rem; color:rgba(255,255,255,.55) }

/* ---------- formulário inline / modal ---------- */
.form-wrap{ display:grid; grid-template-columns:1fr; gap:2rem; border-radius:2rem; background:var(--surface); padding:1.5rem }
.form-aside{ display:flex; flex-direction:column; gap:1.25rem; justify-content:space-between }
.form-aside p{ font-size:.9375rem; line-height:1.6; color:rgba(31,32,30,.65) }
.wa-btn{ display:inline-flex; align-items:center; gap:.75rem; border-radius:1.25rem; background:var(--green); color:#fff; padding:1rem 1.25rem; font-weight:500; align-self:flex-start; transition:filter .2s }
.wa-btn:hover{ filter:brightness(1.08) }
.wa-btn .i{ font-size:1.5rem }
.mform{ display:flex; flex-direction:column; gap:1rem }
.mform label{ display:flex; flex-direction:column; gap:.5rem }
.mform label>span{ font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.025em; color:rgba(31,32,30,.5) }
.mform input, .mform textarea, .mform select{ width:100%; border:1px solid var(--line); background:rgba(255,255,255,.7); border-radius:.875rem; padding:.75rem 1rem; font:inherit; font-size:.875rem; color:var(--fg); outline:none; transition:border-color .2s, background .2s }
.mform textarea{ resize:none }
.mform input:focus, .mform textarea:focus, .mform select:focus{ border-color:var(--green); background:#fff }
.m-bot{ margin-top:.5rem; display:flex; align-items:center; justify-content:space-between; gap:1rem }
.m-bot p{ font-size:.75rem; color:rgba(31,32,30,.45) }
.form-ok{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:1rem; padding-block:2rem }
.form-ok .ok-badge{ width:3.5rem; height:3.5rem; display:grid; place-items:center; border-radius:9999px; background:var(--ink); font-size:1.875rem }
.form-ok h2{ font-size:1.5rem; font-weight:700 }
.form-ok p{ max-width:32ch; font-size:.875rem; color:rgba(31,32,30,.6) }

/* política */
.legal-wrap{ display:grid; grid-template-columns:1fr; gap:3rem }
.toc{ display:none; align-self:start; position:sticky; top:2rem; flex-direction:column; gap:.5rem; font-size:.8125rem }
.toc a{ color:rgba(31,32,30,.55); transition:color .2s }
.toc a:hover{ color:var(--green) }
.legal-wrap section{ scroll-margin-top:2rem }
.notice{ display:flex; gap:.75rem; border-radius:1.25rem; background:#fdf6d8; background:color-mix(in srgb,var(--yellow) 18%,#fff); padding:1rem 1.25rem; font-size:.875rem; line-height:1.5; color:rgba(31,32,30,.8) }

/* ---------- footer ---------- */
.foot{ position:relative; overflow:hidden; border-radius:2rem 2rem 0 0; background:var(--ink); color:#fff }
.foot .shell{ position:relative; z-index:10; padding-top:5rem; padding-bottom:2.5rem }
.cta{ display:flex; flex-direction:column; gap:2rem; border-bottom:1px solid rgba(255,255,255,.1); padding-bottom:4rem }
.cta h2{ max-width:16ch }
.cols{ display:grid; grid-template-columns:1fr; gap:3rem; padding-block:4rem }
.fbrand{ display:flex; align-items:center; gap:.625rem; font-size:1.125rem; font-weight:600 }
.fbrand .i{ font-size:1.75rem }
.ftag{ margin-top:1rem; max-width:20rem; font-size:.875rem; line-height:1.5; color:rgba(255,255,255,.55) }
.col-t{ margin-bottom:1rem; font-size:.75rem; text-transform:uppercase; letter-spacing:.025em; color:rgba(255,255,255,.4) }
.col ul{ display:flex; flex-direction:column; gap:.75rem; font-size:.875rem }
.legal{ display:flex; flex-direction:column; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid rgba(255,255,255,.1); padding-top:2rem; font-size:.75rem; color:rgba(255,255,255,.45); text-align:center }
.legal div{ display:flex; gap:1.5rem }
.fwm{ position:absolute; inset-inline:0; bottom:-1.5rem; z-index:0; text-align:center; pointer-events:none; -webkit-user-select:none; user-select:none; font-weight:800; line-height:1; font-size:var(--text-watermark); color:rgba(255,255,255,.05); white-space:nowrap }
.fchakra{ position:absolute; left:0; right:0; top:0; height:3px; background:var(--chakra); opacity:.8 }

/* ---------- menu ---------- */
.ov{ position:fixed; inset:0; z-index:115; display:flex; flex-direction:column; background:var(--ink); color:#fff; opacity:0; visibility:hidden; transition:opacity .45s var(--e-spring), visibility 0s .45s }
.ov.open{ opacity:1; visibility:visible; transition:opacity .45s var(--e-spring) }
.ov-top{ display:flex; align-items:center; justify-content:space-between; padding-block:1.25rem; width:100% }
.ov-brand{ display:flex; align-items:center; gap:.625rem; font-size:1.125rem; font-weight:600 }
.ov-brand .i{ font-size:1.75rem }
.close-btn{ display:inline-flex; align-items:center; gap:.5rem; border:1px solid rgba(255,255,255,.15); border-radius:.875rem; padding:.5rem 1rem; font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.05em; color:rgba(255,255,255,.7); transition:border-color .2s, color .2s }
.close-btn:hover{ border-color:rgba(255,255,255,.4); color:#fff }
.close-btn .i{ font-size:.875rem }
.ov-nav{ flex:1; display:flex; flex-direction:column; justify-content:center; width:100% }
.ov-nav ul{ display:flex; flex-direction:column; gap:.25rem }
.ov-nav a, .ov-nav button{ width:100%; display:flex; align-items:baseline; gap:1rem; padding-block:.4rem; text-align:left; font-size:2.25rem; font-weight:700; letter-spacing:-.02em; line-height:1.1; transform:translateY(1rem); opacity:0; transition:all .5s ease-out; transition-delay:calc(var(--i) * 45ms + 80ms) }
.ov.open .ov-nav a, .ov.open .ov-nav button{ transform:translateY(0); opacity:1 }
.ov-nav small{ font-size:1rem; font-weight:400; color:rgba(255,255,255,.3); transition:color .3s }
.ov-nav b{ font-weight:inherit; color:rgba(255,255,255,.7); transition:color .3s }
.ov-nav a:hover small, .ov-nav [aria-current] small{ color:var(--c, var(--green)) }
.ov-nav a:hover b, .ov-nav [aria-current] b{ color:#fff }
.ov-units{ margin-top:1.75rem; display:flex; flex-wrap:wrap; gap:.5rem }
.ov-units a{ font-size:.8125rem; font-weight:500; letter-spacing:0; border:1px solid rgba(255,255,255,.15); border-radius:9999px; padding:.4rem .9rem; width:auto; color:rgba(255,255,255,.7); transform:none; opacity:1 }
.ov-units a:hover{ border-color:var(--green); color:#fff }
.ov-bot{ display:flex; flex-direction:column; gap:.75rem; border-top:1px solid rgba(255,255,255,.1); padding-block:1.5rem; font-size:.75rem; text-transform:uppercase; letter-spacing:.025em; color:rgba(255,255,255,.45); width:100% }
.ov-bot button{ text-transform:inherit; letter-spacing:inherit; color:rgba(255,255,255,.7); text-align:left }
.ov-bot button:hover{ color:#fff; text-decoration:underline }

/* ---------- modal ---------- */
.modal{ position:fixed; inset:0; z-index:110; display:flex; align-items:flex-end; justify-content:center; padding:1rem; background:rgba(31,32,30,.3); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); opacity:0; visibility:hidden; transition:opacity .4s var(--e-spring), visibility 0s .4s }
.modal.open{ opacity:1; visibility:visible; transition:opacity .4s var(--e-spring) }
.mpanel{ position:relative; width:100%; max-width:32rem; overflow:hidden; border-radius:2rem; background:#fff; padding:1.5rem; box-shadow:0 25px 50px -12px rgba(0,0,0,.25), 0 0 0 1px var(--line); transform:translateY(18px); transition:transform .55s var(--e-spring) }
.modal.open .mpanel{ transform:translateY(0) }
.m-close{ position:absolute; right:1rem; top:1rem; width:2.25rem; height:2.25rem; display:grid; place-items:center; border-radius:9999px; background:var(--surface); color:rgba(31,32,30,.6); font-size:.875rem; transition:background .2s, color .2s }
.m-close:hover{ background:var(--surface-2); color:var(--fg) }
.m-head{ margin-bottom:1.5rem; display:flex; flex-direction:column; gap:.375rem }
.m-eye{ display:inline-flex; align-items:center; gap:.5rem; font-size:.875rem; font-weight:500; color:rgba(31,32,30,.6) }
.m-eye::before{ content:""; width:.375rem; height:.375rem; border-radius:9999px; background:var(--green) }
.mpanel h2{ font-size:1.5rem; font-weight:700; letter-spacing:-.01em; line-height:1.2 }

/* ---------- sm ---------- */
@media (min-width:640px){
  .shell{ padding-inline:2rem }
  .hdr .shell{ padding-block:1.25rem }
  .brand img{ height:3.25rem }
  .menu-btn .word{ display:inline }
  .ld-brand{ font-size:1.875rem }
  .hero h1{ font-size:3.75rem }
  .hero.page h1{ font-size:3.25rem }
  .hero .sub{ font-size:1.375rem }
  .lr{ height:30rem }
  .status .mid{ display:inline }
  .globe-bg{ font-size:16rem }
  .stmt{ font-size:1.875rem }
  .band{ flex-direction:row; gap:1rem }
  .tile{ height:10rem; font-size:2.25rem }
  .tile.dark{ font-size:3rem }
  .h2-big{ font-size:3rem }
  .row{ gap:1.5rem; padding-block:2rem }
  .row .idx{ width:2.5rem }
  .row h3{ font-size:1.625rem }
  .row .rb{ width:3rem; height:3rem }
  .pillars summary h3{ font-size:1.375rem }
  .panel{ padding:4rem 2rem }
  .num{ font-size:3.75rem }
  .legal{ flex-direction:row; text-align:left }
  .ov-top{ padding-block:1.5rem }
  .ov-nav a, .ov-nav button{ font-size:3.5rem }
  .ov-bot{ flex-direction:row; justify-content:space-between }
  .modal{ align-items:center }
  .mpanel{ padding:2rem }
  .mpanel h2{ font-size:1.875rem }
  .form-wrap{ padding:2.5rem }
  .gallery{ columns:3 }
  .info{ grid-template-columns:repeat(2,1fr) }
}
/* ---------- md ---------- */
@media (min-width:768px){
  .clock{ display:flex }
  .hero h1{ font-size:4.5rem }
  .hero.page h1{ font-size:3.75rem }
  .cards, .quotes, .posts{ grid-template-columns:repeat(2,1fr) }
  .row h3{ font-size:1.875rem }
  .panel{ padding-inline:4rem }
  .panel h2{ font-size:2.25rem }
  .num{ font-size:4.5rem }
  .cta h2{ font-size:3.75rem }
  .cols{ grid-template-columns:repeat(2,1fr) }
  .breathe .shell, .power{ grid-template-columns:1fr 1fr }
  .form-wrap{ grid-template-columns:5fr 7fr; gap:3rem }
}
/* ---------- lg ---------- */
@media (min-width:1024px){
  .nav{ display:flex }
  .nav ul{ display:flex; gap:2rem; font-size:.8125rem; font-weight:500 }
  .hero{ display:block }
  .lr{ position:absolute; inset:0; height:auto; z-index:0 }
  .lr .hero-img{ left:auto; right:2%; width:50%; height:calc(100% - 7rem) }
  .hero.page .lr .hero-img{ width:44%; right:4%; height:calc(100% - 6.5rem) }
  .spine{ display:flex }
  .hero-grid{ display:grid; min-height:100vh; min-height:100lvh; grid-template-columns:repeat(12,1fr); gap:2.5rem; padding-top:9rem; padding-bottom:7rem }
  .hero.page .hero-grid{ min-height:82vh; min-height:82lvh; padding-bottom:5rem }
  .hero.page.noimg .hero-grid{ min-height:62vh; min-height:62lvh }
  .hero-l{ grid-column:span 7; align-self:center }
  .hero-r{ grid-column:span 5; align-items:flex-end; align-self:end }
  .hcard{ width:19rem }
  .about .shell{ grid-template-columns:1fr 1fr; padding-block:7rem }
  .globe-blk{ min-height:20rem }
  .globe-bg{ left:-1.5rem; font-size:20rem }
  .sec{ padding-block:7rem }
  .sec-head{ flex-direction:row; align-items:flex-end; justify-content:space-between }
  .cards, .quotes, .posts{ grid-template-columns:repeat(3,1fr) }
  .row p{ display:block }
  .sgrid{ grid-template-columns:repeat(4,1fr) }
  .foot .shell{ padding-top:6rem }
  .cta{ flex-direction:row; align-items:flex-end; justify-content:space-between }
  .cols{ grid-template-columns:repeat(4,1fr) }
  .split{ grid-template-columns:7fr 5fr; gap:4rem }
  .info{ grid-template-columns:repeat(3,1fr) }
  .gallery{ columns:4 }
  .legal-wrap{ grid-template-columns:16rem 1fr; gap:4rem }
  .toc{ display:flex }
}

/* ajustes finais */
.orb.lg{ display:none }
.hero.post h1{ max-width:24ch; font-size:2rem }
.meta{ display:flex; flex-wrap:wrap; gap:1rem; font-size:.8125rem; color:rgba(31,32,30,.55) }
.why-wrap{ display:flex; flex-direction:column; gap:1.5rem }
@media (min-width:640px){ .hero.post h1{ font-size:2.5rem } }
@media (min-width:1024px){ .orb.lg{ display:block } .hero.post h1{ font-size:3rem } }
.foot .pill.outline .pill-in{ background:transparent; color:#fff; border-color:rgba(255,255,255,.25) }
@media (max-width:639px){ .lr{ height:19rem } .hero-grid{ padding-bottom:1rem } }

/* ---------- unidades: cartões empilhados no scroll ---------- */
.stack{ list-style:none; display:flex; flex-direction:column; gap:12vh; padding-bottom:8vh }
.stack-item{ position:sticky; top:calc(1rem + var(--i) * 1rem) }
.scard{ position:relative; display:flex; flex-direction:column; gap:1rem; border-radius:2rem; padding:.75rem; background:var(--bg); color:var(--fg); box-shadow:0 -12px 40px -20px rgba(0,0,0,.35), 0 0 0 1px rgba(31,32,30,.06); transform-origin:50% 0; will-change:transform }
.scard::after{ content:""; position:absolute; inset:0; border-radius:inherit; background:#0d110f; opacity:var(--shade,0); pointer-events:none }
.scard-tx{ display:flex; flex-direction:column; justify-content:space-between; gap:2rem; padding:1rem 1rem 1.25rem; order:2 }
.scard-top{ display:flex; align-items:flex-start; justify-content:space-between }
.scard-num{ font-size:3.5rem; font-weight:700; line-height:.9; letter-spacing:-.04em }
.scard-num sup{ font-size:.5em; vertical-align:top; position:relative; top:.15em; margin-left:.05em }
.scard-ic{ width:2.75rem; height:2.75rem; display:grid; place-items:center; border-radius:9999px; background:var(--ac); color:var(--bg); font-size:1.25rem }
.scard-eye{ font-size:.75rem; font-weight:500; text-transform:uppercase; letter-spacing:.06em; opacity:.6 }
.scard h3{ margin-top:.5rem; font-size:1.875rem; font-weight:700; letter-spacing:-.02em; line-height:1.05 }
.scard-addr{ margin-top:.75rem; max-width:26rem; font-size:.875rem; line-height:1.5; opacity:.75 }
.scard-act{ margin-top:1.5rem; display:flex; flex-wrap:wrap; gap:.5rem }
.scard-btn{ display:inline-flex; align-items:center; gap:.5rem; border-radius:9999px; background:var(--fg); color:var(--bg); padding:.7rem 1.1rem; font-size:.875rem; font-weight:500; transition:gap .3s var(--e-spring) }
.scard-btn:hover{ gap:.9rem }
.scard-chip{ display:inline-flex; align-items:center; gap:.5rem; border-radius:9999px; border:1px solid rgba(127,127,127,.4); border:1px solid color-mix(in srgb,var(--fg) 30%,transparent); padding:.7rem 1.1rem; font-size:.875rem; transition:background .2s }
.scard-chip:hover{ background:rgba(127,127,127,.15); background:color-mix(in srgb,var(--fg) 12%,transparent) }
.scard-ph{ display:block; order:1; aspect-ratio:16/10; overflow:hidden; border-radius:1.5rem; background:rgba(0,0,0,.08) }
.scard-ph img{ width:100%; height:100%; object-fit:cover; transition:transform 1s var(--e-spring) }
.scard:hover .scard-ph img{ transform:scale(1.04) }
@media (min-width:768px){
  .stack-item{ top:calc(2rem + var(--i) * 1.4rem) }
  .scard{ flex-direction:row; height:min(32rem, 72vh); padding:1rem }
  .scard-tx{ order:0; flex:1; padding:1.25rem 1.5rem }
  .scard-ph{ flex:1.1; aspect-ratio:auto; height:100% }
  .scard-num{ font-size:5.5rem }
  .scard h3{ font-size:2.75rem }
}
