@font-face{font-family:'DM Serif Display';src:url('/fonts/DMSerifDisplay-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'DM Serif Display';src:url('/fonts/DMSerifDisplay-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Figtree';src:url('/fonts/Figtree-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('/fonts/Figtree-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('/fonts/Figtree-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('/fonts/Figtree-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{
--cream:#FFF8F1; --peach:#F8DCCB; --peach-2:#FBEAE0; --sage:#DCE3D0; --lilac:#E6E0EF; --sand:#F1E7D8;
--olive:#56653D; --olive-d:#3B4729; --plum:#33262E; --plum-2:#5C4A54; --coral:#D9714F;
--line:rgba(51,38,46,.1);
--serif:'DM Serif Display',Georgia,serif; --sans:'Figtree',system-ui,sans-serif;
--wrap:1200px; --g:clamp(1.25rem,4vw,2.5rem); --r:24px; --ease:cubic-bezier(.34,1.3,.64,1); --ease2:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--cream);color:var(--plum);font:400 1.05rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
p{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.08;letter-spacing:-.01em}
::selection{background:var(--peach)}
:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:10px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:var(--plum);color:#fff;padding:.6rem 1rem;border-radius:99px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--g)}
.tag{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;border-radius:99px;background:var(--sage);color:var(--olive-d);font:600 .8rem var(--sans)}
.h2{font-size:clamp(2.1rem,4.6vw,3.4rem);margin-top:1rem}
.h2 em{font-style:italic;color:var(--coral)}
.sub{color:var(--plum-2);font-size:clamp(1.02rem,1.3vw,1.15rem);max-width:36rem;margin-top:1rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:54px;padding:0 1.6rem;border-radius:99px;font:600 1rem var(--sans);text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .4s var(--ease),background .25s,box-shadow .3s}
.btn:hover{transform:translateY(-3px)}
.btn.pri{background:var(--olive);color:#fff;box-shadow:0 10px 24px -10px rgba(86,101,61,.6)}
.btn.pri:hover{background:var(--olive-d)}
.btn.alt{background:#fff;color:var(--plum);border-color:var(--line)}
.btn.alt:hover{border-color:var(--plum)}
.btn.wa{background:#25D366;color:#073B1C}
.btn svg{width:20px;height:20px;fill:currentColor}
.sec{padding:clamp(4.5rem,9vw,7.5rem) 0}
.center{text-align:center}.center .sub{margin-inline:auto}
.notice{background:var(--olive-d);color:#F3F0E6;font-size:.88rem;text-align:center;padding:.6rem var(--g)}
.notice a{color:#fff;font-weight:600}
header{position:sticky;top:0;z-index:50;background:rgba(255,248,241,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:box-shadow .3s}
header.sh{box-shadow:0 6px 24px -14px rgba(51,38,46,.25)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:80px;gap:1rem}
.logo{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.logo .mk{width:44px;height:44px;border-radius:14px 14px 14px 4px;background:var(--peach);display:grid;place-items:center;font:italic 1.5rem var(--serif);color:var(--coral)}
.logo b{font:1.35rem var(--serif);display:block;line-height:1.1}
.logo small{font-size:.75rem;color:var(--plum-2)}
.menu{display:none;gap:.25rem;background:#fff;border:1px solid var(--line);padding:.35rem;border-radius:99px}
.menu a{padding:.55rem 1rem;border-radius:99px;font-weight:500;font-size:.95rem;text-decoration:none;color:var(--plum-2);transition:background .2s,color .2s}
.menu a:hover{background:var(--peach-2);color:var(--plum)}
.hd-cta{display:none}
.hb{width:48px;height:48px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer;display:grid;place-items:center}
.hb i{width:18px;height:2px;background:var(--plum);border-radius:2px;box-shadow:0 -6px 0 var(--plum),0 6px 0 var(--plum)}
.panel{position:fixed;left:.75rem;right:.75rem;top:6.5rem;z-index:49;background:#fff;border-radius:28px;padding:1rem;box-shadow:0 30px 60px -20px rgba(51,38,46,.35);display:grid;gap:.25rem;transform:translateY(-12px) scale(.98);opacity:0;visibility:hidden;transition:all .35s var(--ease2)}
.panel.open{transform:none;opacity:1;visibility:visible}
.panel a:not(.btn){padding:1rem 1.1rem;border-radius:16px;text-decoration:none;font-weight:600;font-size:1.1rem}
.panel a:not(.btn):hover{background:var(--peach-2)}
.panel .btn{margin-top:.5rem}
@media(min-width:1040px){.menu,.hd-cta{display:flex}.hb,.panel{display:none}}
.hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(4rem,8vw,6rem)}
.hero-grid{display:grid;gap:3rem;align-items:center}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.4rem);text-wrap:balance;margin:1.25rem 0 1.5rem}
.hero h1 .mark{position:relative;white-space:nowrap;color:var(--olive)}
.hero h1 .mark svg{position:absolute;left:-2%;bottom:-.12em;width:104%;height:.35em;overflow:visible}
.hero h1 .mark path{fill:none;stroke:var(--coral);stroke-width:4;stroke-linecap:round;stroke-dasharray:400;stroke-dashoffset:400;animation:draw 1.4s .6s var(--ease2) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.hero .acts{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.mini{display:flex;align-items:center;gap:.9rem;margin-top:2rem;font-size:.92rem;color:var(--plum-2)}
.mini .dots{display:flex}
.mini .dots span{width:34px;height:34px;border-radius:50%;border:3px solid var(--cream);margin-left:-10px;display:grid;place-items:center;font-size:.9rem}
.mini .dots span:first-child{margin-left:0;background:var(--peach)}.mini .dots span:nth-child(2){background:var(--sage)}.mini .dots span:nth-child(3){background:var(--lilac)}
.visual{position:relative;max-width:480px;margin:0 auto;width:100%}
.blob{aspect-ratio:1/1.08;border-radius:58% 42% 48% 52%/52% 46% 54% 48%;overflow:hidden;background:var(--peach);animation:morph 16s ease-in-out infinite;position:relative;z-index:1}
.blob img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
@keyframes morph{50%{border-radius:44% 56% 56% 44%/58% 44% 56% 42%}}
.bg-shape{position:absolute;inset:6% -6% -6% 6%;border-radius:48% 52% 44% 56%/56% 44% 56% 44%;background:var(--sage);z-index:0}
.float{position:absolute;z-index:2;background:#fff;border-radius:18px;padding:.7rem 1rem;box-shadow:0 18px 40px -18px rgba(51,38,46,.35);display:flex;align-items:center;gap:.65rem;font-size:.88rem;font-weight:600;animation:bob 6s ease-in-out infinite}
.float .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:1rem}
.float small{display:block;font-weight:400;color:var(--plum-2);font-size:.78rem}
.f1{left:-4%;top:12%}.f1 .ic{background:var(--peach-2)}
.f2{right:-4%;top:46%;animation-delay:-2s}.f2 .ic{background:var(--sage)}
.f3{left:6%;bottom:-2%;animation-delay:-4s}.f3 .ic{background:var(--lilac)}
@keyframes bob{50%{transform:translateY(-8px)}}
@media(min-width:960px){.hero-grid{grid-template-columns:1.1fr 1fr;gap:4rem}}
@media(max-width:640px){
.visual{max-width:340px;margin-bottom:1.5rem}
.float{font-size:.8rem;padding:.55rem .8rem;gap:.55rem;border-radius:16px}
.float .ic{width:30px;height:30px;font-size:.9rem;border-radius:9px}
.f1{left:-.75rem;right:auto;top:-.75rem;bottom:auto}
.f2{right:-.75rem;left:auto;top:1.75rem;bottom:auto}
.f3{left:50%;right:auto;bottom:-1.5rem;top:auto;margin-left:-5.5rem;width:11rem}
}
@media(max-width:380px){.float small{display:none}}
.trust{background:#fff;border-block:1px solid var(--line)}
.trust .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;padding-block:1.75rem}
.trust .wrap>*,.contact>*,.ways *{min-width:0}
.ways small{overflow-wrap:anywhere}
.trust div div{min-width:0;display:block}
@media(max-width:340px){.trust .wrap{grid-template-columns:1fr}}
.trust div{display:flex;gap:.75rem;align-items:center;font-size:.92rem;font-weight:500}
.trust .ic{flex:none;width:42px;height:42px;border-radius:12px;background:var(--peach-2);display:grid;place-items:center}
.trust svg{width:20px;height:20px;stroke:var(--coral);fill:none;stroke-width:1.8}
.trust small{display:block;font-weight:400;color:var(--plum-2);font-size:.8rem}
@media(min-width:900px){.trust .wrap{grid-template-columns:repeat(4,1fr)}}
.starter{background:var(--peach-2);border-radius:40px;padding:clamp(2rem,5vw,4rem);display:grid;gap:2.5rem;position:relative;overflow:hidden}
.starter::after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:var(--peach);right:-100px;bottom:-120px;z-index:0}
.starter>*{position:relative;z-index:1}
.feel{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.75rem}
.feel button{font:500 .98rem var(--sans);padding:.75rem 1.15rem;border-radius:99px;border:2px solid rgba(51,38,46,.12);background:#fff;color:var(--plum);cursor:pointer;transition:all .3s var(--ease)}
.feel button:hover{border-color:var(--coral);transform:translateY(-2px)}
.feel button[aria-pressed="true"]{background:var(--plum);color:#fff;border-color:var(--plum)}
.result{background:#fff;border-radius:28px;padding:1.75rem;box-shadow:0 24px 50px -30px rgba(51,38,46,.35);align-self:start}
.result h3{font-size:1.5rem;margin-bottom:.5rem}
.result .msg{margin:1rem 0 1.25rem;padding:1rem 1.1rem;border-radius:16px;background:var(--cream);border:1px dashed rgba(51,38,46,.18);font-size:.95rem;color:var(--plum-2);min-height:5.5rem}
.result .hint{font-size:.82rem;color:var(--plum-2);margin-top:.9rem}
.result .btn{width:100%}
@media(min-width:960px){.starter{grid-template-columns:1.2fr 1fr;align-items:center}}
.steps{display:grid;gap:1.25rem;margin-top:3.5rem;counter-reset:s}
.stp{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:2rem;position:relative;transition:transform .4s var(--ease),box-shadow .3s}
.stp:hover{transform:translateY(-6px);box-shadow:0 24px 40px -24px rgba(51,38,46,.3)}
.stp::before{counter-increment:s;content:counter(s);position:absolute;top:1.5rem;right:1.75rem;font:italic 3.5rem/1 var(--serif);color:var(--peach)}
.stp .ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-size:1.5rem;margin-bottom:1.5rem}
.stp h3{font-size:1.6rem;margin-bottom:.5rem}
.stp p{color:var(--plum-2);font-size:.98rem}
@media(min-width:860px){.steps{grid-template-columns:repeat(3,1fr)}}
.cards{display:grid;gap:1.25rem;margin-top:3rem}
.ac{border-radius:32px;padding:clamp(1.75rem,3vw,2.5rem);display:flex;flex-direction:column;gap:.8rem;min-height:250px;transition:transform .4s var(--ease)}
.ac:hover{transform:rotate(-.6deg) translateY(-4px)}
.ac .e{font-size:2rem}
.ac h3{font-size:1.7rem}
.ac p{color:var(--plum-2)}
.c1{background:var(--peach)}.c2{background:var(--sage)}.c3{background:var(--lilac)}.c4{background:var(--olive-d);color:#F3F0E6}.c4 p{color:rgba(243,240,230,.8)}
@media(min-width:760px){.cards{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.cards{grid-template-columns:1.3fr 1fr 1fr}.c1{grid-row:span 2}.c4{grid-column:2/4}}
.about{display:grid;gap:3rem;align-items:center}
.ab-img{position:relative;max-width:440px;margin:0 auto;width:100%}
.ab-img .ph{border-radius:200px 200px 28px 28px;overflow:hidden;aspect-ratio:4/5;background:var(--sand)}
.ab-img img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.ab-img .badge{position:absolute;right:-.5rem;bottom:2rem;background:var(--coral);color:#fff;border-radius:50%;width:120px;height:120px;display:grid;place-items:center;text-align:center;font:italic 1.05rem/1.15 var(--serif);padding:1rem;transform:rotate(-8deg);box-shadow:0 18px 30px -12px rgba(217,113,79,.6)}
.ab-txt p{color:var(--plum-2);margin-top:1rem}
.forma{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:.75rem}
.forma li{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.1rem;background:#fff;border:1px solid var(--line);border-radius:18px;font-size:.98rem}
.forma .ck{flex:none;width:26px;height:26px;border-radius:50%;background:var(--sage);display:grid;place-items:center;color:var(--olive-d);font-size:.8rem;font-weight:700}
.forma small{display:block;color:var(--plum-2);font-size:.85rem}
@media(min-width:960px){.about{grid-template-columns:1fr 1.15fr;gap:5rem}}
.mods{display:grid;gap:1.25rem;margin-top:3rem}
.mod{background:#fff;border:1px solid var(--line);border-radius:32px;padding:clamp(1.75rem,3vw,2.5rem);display:flex;flex-direction:column}
.mod .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}
.mod .ic{width:60px;height:60px;border-radius:20px;display:grid;place-items:center;font-size:1.6rem}
.mod h3{font-size:2rem;margin-bottom:.5rem}
.mod ul{list-style:none;padding:0;margin:1.25rem 0 2rem;display:grid;gap:.6rem}
.mod li{display:flex;gap:.6rem;font-size:.98rem;color:var(--plum-2)}
.mod li::before{content:"✓";color:var(--olive);font-weight:700}
.mod .btn{margin-top:auto}
.mod .mod-btn{flex:0 0 auto;align-self:stretch;width:100%;height:54px;min-height:54px;padding:0 1.6rem;box-sizing:border-box}
.mod-btn--feat{background:var(--peach);color:var(--plum);box-shadow:0 10px 24px -12px rgba(248,220,203,.5)}
.mod-btn--feat:hover{background:#fff}
.mod.feat{background:var(--plum);color:#fff;border-color:var(--plum)}
.mod.feat li{color:rgba(255,255,255,.8)}.mod.feat li::before{color:var(--peach)}
.mod.feat .tag{background:var(--coral);color:#fff}
@media(min-width:800px){.mods{grid-template-columns:1fr 1fr}}
.ess{display:grid;gap:1.25rem;margin-top:3rem}
.es{background:#fff;border-radius:28px;overflow:hidden;border:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .3s}
.es:hover{transform:translateY(-6px);box-shadow:0 24px 40px -24px rgba(51,38,46,.3)}
.es .im{aspect-ratio:16/10;overflow:hidden;background:var(--sand)}
.es img{width:100%;height:100%;object-fit:cover}
.es .bd{padding:1.4rem 1.5rem 1.6rem}
.es .tag{font-size:.75rem}
.es h3{font-size:1.45rem;margin:.75rem 0 .4rem}
.es p{font-size:.95rem;color:var(--plum-2)}
@media(min-width:800px){.ess{grid-template-columns:repeat(3,1fr)}}
.faq-grid{display:grid;gap:2.5rem}
.faq{display:grid;gap:.75rem}
.faq details{background:#fff;border:1px solid var(--line);border-radius:20px;transition:box-shadow .3s}
.faq details[open]{box-shadow:0 18px 36px -24px rgba(51,38,46,.35)}
.faq summary{list-style:none;cursor:pointer;padding:1.2rem 1.4rem;display:flex;justify-content:space-between;gap:1rem;font-weight:600;font-size:1.05rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--peach-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2333262E' stroke-width='2'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .3s}
.faq details[open] summary::after{transform:rotate(180deg)}
.faq p{padding:0 1.4rem 1.3rem;color:var(--plum-2)}
@media(min-width:960px){.faq-grid{grid-template-columns:1fr 1.6fr;gap:4rem}}
.contact{background:var(--olive-d);border-radius:40px;color:#F3F0E6;padding:clamp(2rem,5vw,4rem);display:grid;gap:2.5rem}
.contact .h2{color:#fff}.contact .h2 em{color:var(--peach)}
.contact .sub{color:rgba(243,240,230,.8)}
.contact .tag{background:rgba(255,255,255,.12);color:#fff}
.ways{display:grid;gap:.75rem;margin-top:2rem}
.ways a,.ways div{display:flex;align-items:center;gap:.9rem;padding:1rem 1.1rem;border-radius:18px;background:rgba(255,255,255,.07);text-decoration:none;font-size:.98rem}
.ways a:hover{background:rgba(255,255,255,.12)}
.ways span{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.1);display:grid;place-items:center;flex:none}
.ways small{display:block;color:rgba(243,240,230,.65);font-size:.8rem}
.fbox{background:#fff;color:var(--plum);border-radius:28px;padding:clamp(1.5rem,3.5vw,2.5rem)}
form{display:grid;gap:1rem}
.g2{display:grid;gap:1rem}
@media(min-width:600px){.g2{grid-template-columns:1fr 1fr}}
.fd label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.35rem}
.fd input,.fd textarea{width:100%;font:400 1rem var(--sans);color:var(--plum);background:var(--cream);border:2px solid transparent;border-radius:14px;padding:.85rem 1rem;transition:border-color .25s,background .25s}
.fd input:focus,.fd textarea:focus{outline:none;border-color:var(--olive);background:#fff}
.fd textarea{min-height:100px;resize:vertical}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.opt{position:relative}
.opt input{position:absolute;opacity:0}
.opt label{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.9rem;border-radius:16px;border:2px solid var(--line);cursor:pointer;font-weight:600;text-align:center;transition:all .25s}
.opt label small{font-weight:400;color:var(--plum-2);font-size:.8rem}
.opt input:checked+label{border-color:var(--olive);background:var(--sage)}
.opt input:focus-visible+label{outline:3px solid var(--coral)}
.lg{display:flex;gap:.6rem;font-size:.85rem;color:var(--plum-2);align-items:flex-start}
.lg input{accent-color:var(--olive);width:18px;height:18px;flex:none;margin-top:.15rem}
form .btn{width:100%}
.thanks{display:none;text-align:center;padding:1.5rem 0}
.thanks .e{font-size:3rem}
.thanks h3{font-size:2rem;margin:.5rem 0}
.thanks p{color:var(--plum-2);margin-bottom:1.5rem}
.sent form{display:none}.sent .thanks{display:block}
.cvv{margin-top:1.5rem;padding:1rem 1.2rem;border-radius:18px;background:rgba(217,113,79,.18);border:1px solid rgba(248,220,203,.35);font-size:.9rem}
@media(min-width:960px){.contact{grid-template-columns:1fr 1.15fr;gap:4rem}}
footer{padding:4rem 0 6rem;font-size:.92rem;color:var(--plum-2)}
.ft{display:grid;gap:2rem}
.ft h4{font:600 .95rem var(--sans);color:var(--plum);margin:0 0 .8rem}
.ft ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.ft a{text-decoration:none}.ft a:hover{color:var(--coral)}
.fb{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.85rem}
@media(min-width:800px){.ft{grid-template-columns:2fr 1fr 1fr 1fr}footer{padding-bottom:3rem}}
.fab{position:fixed;right:1rem;bottom:1rem;z-index:40;width:60px;height:60px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 12px 28px -8px rgba(37,211,102,.6);transition:transform .4s var(--ease)}
.fab:hover{transform:scale(1.1) rotate(-6deg)}
.fab svg{width:30px;height:30px;fill:#fff}
.js .pop{opacity:0;transform:translateY(30px) scale(.98);transition:opacity .8s var(--ease2),transform .8s var(--ease2)}
.js .pop.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero h1 .mark path{stroke-dashoffset:0}.js .pop{opacity:1;transform:none}}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.ferr{padding:.9rem 1rem;border-radius:14px;background:#FBEAE0;border:1px solid rgba(217,113,79,.4);color:var(--plum);font-size:.92rem}
.ferr a{color:var(--olive-d);font-weight:600}
form .btn[disabled]{opacity:.7;cursor:progress;transform:none}
.cf-turnstile{min-height:65px}
