:root{--wine:#4d1421;--wine2:#6e1f2e;--wine3:#8a2a3b;--sand:#efe7dc;--paper:#f8f4ee;--cara:#c38a4a;--cara2:#e6b67c;--terra:#c9815e;--ink:#2a1a1d;--muted:#6d5a58;--wa:#1fa855;
--display:'Playfair Display',Georgia,'Times New Roman',serif;--sans:'Manrope',system-ui,sans-serif;--photo:url(foto-silvia.jpg);
color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:calc(80px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--display);margin:0;line-height:1.12;letter-spacing:-.015em;font-weight:500}
p{margin:0}a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--wa);color:#fff;text-decoration:none;font:700 17px var(--sans);padding:18px 32px;border-radius:999px;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(31,168,85,.35)}
.btn:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.chip input:focus-visible+span{outline:3px solid var(--cara2);outline-offset:3px}
.btn svg{width:22px;height:22px;fill:currentColor}
.btn.sm{padding:11px 20px;font-size:15px}
.btn.ghost{background:transparent;border:1.5px solid rgba(255,255,255,.4)}.btn.ghost:hover{box-shadow:none;background:rgba(255,255,255,.1)}

header.top{position:fixed;top:calc(14px + env(safe-area-inset-top,0px));left:16px;right:16px;max-width:1180px;margin:0 auto;z-index:10;background:rgba(42,10,18,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);border-radius:999px}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;height:60px;padding:0 10px 0 28px}
.brand{font:600 21px var(--display);color:#fff;text-decoration:none;letter-spacing:0}
nav{display:flex;gap:28px;align-items:center}nav a:not(.btn){color:#ecdcd6;text-decoration:none;font-size:15px;font-weight:500}nav a:not(.btn):hover{color:#fff}

.hero{position:relative;min-height:min(100svh,860px);background:#2a0a12;color:#fff;overflow:hidden;display:flex;align-items:center;padding:130px 0 90px}
.heroimg{position:absolute;top:0;right:0;bottom:0;width:64%;background:var(--photo) 58% 10%/cover;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 48%);mask-image:linear-gradient(to right,transparent 0,#000 48%)}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:30%;background:linear-gradient(to bottom,transparent,#2a0a12)}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero .txt{max-width:600px}
.eyebrow{display:inline-block;color:var(--cara2);font-size:15px;font-weight:500;margin-bottom:22px;padding-left:44px;position:relative}
.eyebrow::before{content:"";position:absolute;left:0;top:50%;width:32px;height:1px;background:var(--cara2)}
.hero h1{font-size:clamp(38px,5.2vw,70px);line-height:1.08}
.hero h1 span{color:var(--cara2);font-style:italic}
.hero .lead{margin:26px 0 36px;font-size:18px;color:#e3cfc8;max-width:29em}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.btn.gold{background:linear-gradient(135deg,#edc58f,#c38a4a);color:#3a0e18}
.btn.gold:hover{box-shadow:0 14px 30px rgba(195,138,74,.35)}
.btn.icon{width:58px;height:58px;padding:0;background:rgba(255,255,255,.08);border:1.5px solid rgba(230,182,124,.6);color:var(--cara2)}
.btn.icon:hover{background:var(--wa);border-color:var(--wa);color:#fff;box-shadow:none}
.hero .note{margin-top:20px;font-size:14px;color:#c9aca6}
.tags{position:absolute;z-index:2;right:max(24px,calc((100vw - 1180px)/2 + 24px));bottom:64px;display:flex;gap:12px}
.glass{background:rgba(42,10,18,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 20px;color:#fff;font-size:14px}
.pic{position:relative;aspect-ratio:3/4;border-radius:200px 200px 0 0;background:var(--photo) 50% 15%/cover}

.strip{background:var(--cara);color:var(--wine);overflow:hidden;white-space:nowrap;padding:18px 0;font:600 24px var(--display);letter-spacing:0}
.strip div{display:inline-block;animation:slide 28s linear infinite}
.strip span{margin:0 28px}
@keyframes slide{to{transform:translateX(-50%)}}

section{padding:104px 0}
h2{font-size:clamp(30px,4.2vw,52px);max-width:16em}
.sub{margin-top:18px;color:var(--muted);max-width:38em;font-size:18px}
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:56px}
.card{border-radius:32px;padding:36px;min-height:260px;display:flex;flex-direction:column;justify-content:flex-end}
.card h3{font-size:30px;margin-bottom:12px}.card p{font-size:16px;max-width:30em}
.c1{grid-column:span 4;background:var(--wine);color:#fff;min-height:340px}.c1 p{color:#ecdcd6}
.c2{grid-column:span 2;background:var(--cara2);color:var(--wine)}
.c3{grid-column:span 6;background:var(--sand);flex-direction:row;align-items:flex-end;justify-content:space-between;gap:32px}
.c3 p{color:var(--muted)}

.dark{background:var(--wine2);color:#fff}
.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}
.about .pic{border-radius:32px;border:0;aspect-ratio:4/5;background-position:55% 30%}
.about p{color:#ecdcd6;margin-top:20px}
.about .role{color:var(--cara2);font-weight:700;margin-top:14px}
.quote{margin-top:32px;background:rgba(255,255,255,.08);border-radius:24px;padding:26px 28px;font:600 22px/1.3 var(--display);letter-spacing:0}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px;counter-reset:s}
.step{counter-increment:s;background:#fff;border-radius:28px;padding:32px}
.step::before{content:counter(s);display:block;font:500 56px var(--display);color:var(--cara);line-height:1;margin-bottom:18px}
.step h3{font-size:24px;margin-bottom:10px}.step p{color:var(--muted);font-size:16px}

.formsec{background:var(--wine);color:#fff}
.formgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.formgrid .sub{color:#ecdcd6}
.formgrid ul{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:12px;color:#ecdcd6}
.formgrid li::before{content:"✓";color:var(--cara2);font-weight:800;margin-right:10px}
form{background:var(--paper);color:var(--ink);border-radius:32px;padding:36px;display:grid;gap:26px}
fieldset{border:0;padding:0;margin:0;min-width:0}
legend,label.l{font-weight:700;font-size:15px;margin-bottom:10px;display:block;padding:0}
input[type=text],input[type=tel],textarea{width:100%;font:inherit;padding:15px 18px;border-radius:16px;border:1.5px solid #d9cfc2;background:#fff;color:var(--ink)}
textarea{min-height:96px;resize:vertical}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{position:relative}.chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chip span{display:block;padding:11px 18px;border-radius:999px;border:1.5px solid #d9cfc2;background:#fff;font-size:15px;font-weight:500;transition:.15s}
.chip input:checked+span{background:var(--wine2);border-color:var(--wine2);color:#fff}
.err{color:#b3261e;font-size:14px;margin-top:8px;display:none}.bad .err{display:block}
.bad input[type=text],.bad input[type=tel]{border-color:#b3261e}
form .btn{width:100%}
.priv{font-size:13px;color:var(--muted);text-align:center}
.result{display:none;background:var(--sand);border-radius:20px;padding:20px 22px;font-size:15px}

.faq{max-width:820px;margin:48px auto 0}
details{border-bottom:1.5px solid #dccfc0}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:26px 0;font:600 22px/1.25 var(--display);letter-spacing:0}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";flex:none;width:40px;height:40px;border-radius:50%;background:var(--sand);display:grid;place-items:center;font:500 24px var(--sans);transition:transform .25s,background .25s}
details[open] summary::after{transform:rotate(45deg);background:var(--cara2)}
details p{padding:0 56px 28px 0;color:var(--muted)}

.final{background:var(--wine);color:#fff;text-align:center;border-radius:48px 48px 0 0}
.final h2{margin:0 auto}.final p{margin:22px auto 36px;color:#ecdcd6;max-width:34em;font-size:19px}
footer{background:var(--wine);color:#c9aca6;padding:0 0 36px;font-size:14px}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding-top:28px}
.fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:20;width:60px;height:60px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 28px rgba(0,0,0,.35)}
.fab svg{width:31px;height:31px;fill:#fff}

@media(max-width:860px){
nav a:not(.btn){display:none}
.hero{padding:120px 0 56px;align-items:flex-end;min-height:100svh}.heroimg{width:100%;height:68%;bottom:auto;-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent 100%);mask-image:linear-gradient(to bottom,#000 30%,transparent 100%);background-position:50% 8%}.tags{display:none}.about,.formgrid{grid-template-columns:1fr;gap:40px}header.top .wrap{padding-left:20px}.brand{font-size:18px}
.bento,.steps{grid-template-columns:1fr}.c1,.c2,.c3{grid-column:auto;min-height:0}.c3{flex-direction:column;align-items:flex-start}
section{padding:72px 0}form{padding:26px 20px}details p{padding-right:0}summary{font-size:19px}
.about .pic{max-width:none;aspect-ratio:4/4.4}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
