:root{--paper:#FDF9F3;--card:#FFFFFF;--ink:#2A2140;--ink-soft:#5A5174;--magenta:#C81E86;--magenta-deep:#A81570;--tangerine:#F2A93B;--teal:#27AE9B;--sky:#2D9CDB;--leaf:#7CC24E;--lilac:#F1EBFB;--lilac-deep:#E4D9F7;--line:#E9E0D2;--radius:18px;--shadow:0 10px 30px rgba(42, 33, 64, 0.10);--display:"Bricolage Grotesque","Trebuchet MS",sans-serif;--body:"Figtree","Segoe UI",system-ui,sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation:none!important;transition:none!important}}body{font-family:var(--body);font-size:1.06rem;line-height:1.65;color:var(--ink);background:var(--paper)}img{max-width:100%;display:block}a{color:var(--magenta-deep)}a:focus-visible,button:focus-visible{outline:3px solid var(--sky);outline-offset:3px;border-radius:4px}.wrap{max-width:1100px;margin:0 auto;padding:0 24px}.site-header{position:sticky;top:0;z-index:50;background:rgba(253,249,243,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;align-items:center;gap:14px;padding-top:12px;padding-bottom:12px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-right:auto}.brand img{height:46px;width:auto}.brand .brand-name{font-family:var(--display);font-weight:700;font-size:1.22rem;line-height:1.1;letter-spacing:-.01em}.brand .brand-role{display:block;font-family:var(--body);font-size:.66rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}.site-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.site-nav a{text-decoration:none;color:var(--ink-soft);font-weight:600;font-size:.95rem;padding:8px 12px;border-radius:999px}.site-nav a:hover{color:var(--ink);background:var(--lilac)}.site-nav a[aria-current=page]{color:var(--ink);background:var(--lilac)}.site-nav a.nav-cta{background:var(--magenta);color:#fff;margin-left:6px}.site-nav a.nav-cta:hover{background:var(--magenta-deep);color:#fff}.dot-trail{display:flex;gap:9px;align-items:center;margin:18px 0 0}.dot-trail i{width:11px;height:11px;border-radius:50%;display:block}.dot-trail i:first-child{background:var(--magenta);width:15px;height:15px}.dot-trail i:nth-child(2){background:var(--tangerine)}.dot-trail i:nth-child(3){background:var(--teal)}.dot-trail i:nth-child(4){background:var(--sky);width:8px;height:8px}.dot-trail i:nth-child(5){background:var(--leaf);width:6px;height:6px}ul.dotted{list-style:none}ul.dotted li{position:relative;padding:7px 0 7px 30px}ul.dotted li::before{content:"";position:absolute;left:4px;top:.95em;width:12px;height:12px;border-radius:50%;background:var(--teal)}ul.dotted li:nth-child(4n+2)::before{background:var(--tangerine)}ul.dotted li:nth-child(4n+3)::before{background:var(--sky)}ul.dotted li:nth-child(4n+4)::before{background:var(--magenta)}h1,h2,h3{font-family:var(--display);letter-spacing:-.015em}h1{font-size:clamp(2.4rem, 5.6vw, 4rem);line-height:1.04;font-weight:800}h2{font-size:clamp(1.7rem, 3.4vw, 2.4rem);line-height:1.12;font-weight:700}h3{font-size:1.2rem;font-weight:700}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--magenta-deep);margin-bottom:14px}.lede{font-size:1.18rem;color:var(--ink-soft);max-width:56ch}.btn{display:inline-block;font-family:var(--body);font-weight:700;font-size:1.02rem;text-decoration:none;padding:14px 26px;border-radius:999px;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.btn-primary{background:var(--magenta);color:#fff;box-shadow:0 6px 18px rgba(200,30,134,.32)}.btn-primary:hover{background:var(--magenta-deep);transform:translateY(-2px)}.btn-ghost{color:var(--ink);border:2px solid var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.btn-note{display:block;margin-top:10px;font-size:.9rem;color:var(--ink-soft)}.hero{position:relative;overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1.15fr 0.85fr;gap:48px;align-items:center;padding-top:72px;padding-bottom:84px}.hero h1 .accent{color:var(--magenta)}.hero .lede{margin-top:22px}.hero-actions{margin-top:34px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}.hero-art{position:relative}.hero-art .polaroid{transform:rotate(3deg);filter:drop-shadow(0 18px 30px rgba(42, 33, 64, .18));animation:settle .9s ease-out both}@keyframes settle{from{opacity:0;transform:rotate(6deg) translateY(24px)}to{opacity:1;transform:rotate(3deg) translateY(0)}}.float-dot{position:absolute;border-radius:50%;z-index:-1;animation:floaty 7s ease-in-out infinite}.float-dot.d1{width:42px;height:42px;background:var(--tangerine);top:-8px;left:-34px}.float-dot.d2{width:20px;height:20px;background:var(--teal);top:60px;right:-20px;animation-delay:-2.4s}.float-dot.d3{width:28px;height:28px;background:var(--sky);bottom:30px;left:-46px;animation-delay:-4.1s}.float-dot.d4{width:14px;height:14px;background:var(--magenta);bottom:-14px;right:60px;animation-delay:-1.2s}@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}.section{padding:76px 0}.section-lilac{background:var(--lilac)}.section-ink{background:var(--ink);color:var(--paper)}.section-ink .eyebrow{color:var(--tangerine)}.section-head{max-width:62ch;margin-bottom:40px}.section-head p{color:var(--ink-soft);margin-top:12px}.section-ink .section-head p{color:#cfc6e8}.familiar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.familiar-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 22px;font-size:1.02rem;color:var(--ink);position:relative}.familiar-card::before{content:"";display:block;width:14px;height:14px;border-radius:50%;margin-bottom:14px}.familiar-card:nth-child(6n+1)::before{background:var(--magenta)}.familiar-card:nth-child(6n+2)::before{background:var(--tangerine)}.familiar-card:nth-child(6n+3)::before{background:var(--sky)}.familiar-card:nth-child(6n+4)::before{background:var(--teal)}.familiar-card:nth-child(6n+5)::before{background:var(--leaf)}.familiar-card:nth-child(6n+6)::before{background:var(--magenta-deep)}.familiar-close{margin-top:36px;text-align:center}.familiar-close p{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem, 2.6vw, 1.7rem)}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.help-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.help-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.help-card img{height:210px;object-fit:cover;width:100%}.help-card .help-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}.help-card h3{font-size:1.45rem;margin-bottom:10px}.help-card p{color:var(--ink-soft);margin-bottom:16px}.help-card ul.dotted{font-size:.98rem;margin-bottom:20px}.help-card .card-link{margin-top:auto;font-weight:700;text-decoration:none;color:var(--magenta-deep)}.help-card .card-link:hover{text-decoration:underline}.help-wide{grid-column:1/-1;flex-direction:row}.help-wide img{width:320px;height:auto}@media (max-width:780px){.help-wide{flex-direction:column}.help-wide img{width:100%;height:210px}}.diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.diff-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:28px 24px}.diff-item h3{color:#fff;margin-bottom:8px}.diff-item p{color:#cfc6e8;font-size:.99rem}.diff-item .diff-dot{width:16px;height:16px;border-radius:50%;margin-bottom:16px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:step}.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px}.step::before{counter-increment:step;content:counter(step);font-family:var(--display);font-weight:800;font-size:1.5rem;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;margin-bottom:16px;color:#fff}.step:first-child::before{background:var(--magenta)}.step:nth-child(2)::before{background:var(--teal)}.step:nth-child(3)::before{background:var(--sky)}.step h3{margin-bottom:8px}.step p{color:var(--ink-soft);font-size:.99rem}.about-grid{display:grid;grid-template-columns:300px 1fr;gap:52px;align-items:start}.about-photo{text-align:center}.about-photo img.portrait{width:240px;height:240px;border-radius:50%;margin:0 auto 18px;border:6px solid var(--card);box-shadow:var(--shadow)}.about-quote{font-family:var(--display);font-weight:600;font-size:1.05rem;line-height:1.45;color:var(--magenta-deep);max-width:26ch;margin:0 auto}.about-copy p{margin-bottom:16px}.about-copy .beats{margin:22px 0}.about-copy .beats li strong{font-weight:700}.page-hero{padding:64px 0 20px}.page-hero .lede{margin-top:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.split .photo img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-height:460px;object-fit:cover}.split h2{margin-bottom:14px}.cta-band{text-align:center}.cta-band h2{max-width:24ch;margin:0 auto 14px}.cta-band p{color:var(--ink-soft);max-width:52ch;margin:0 auto 30px}.cta-band .dot-trail{justify-content:center;margin:0 0 26px}.contact-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:44px;align-items:start}.contact-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px;margin-bottom:20px}.contact-card h3{margin-bottom:6px}.contact-card p{color:var(--ink-soft);margin-bottom:16px;font-size:.99rem}.contact-lines{list-style:none}.contact-lines li{padding:6px 0}.contact-lines a{font-weight:600}.booking-frame{width:100%;height:760px;border:0;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.site-footer{background:var(--ink);color:#cfc6e8;padding:46px 0 34px;font-size:.95rem}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}.site-footer a{color:#fff}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{height:40px}.footer-brand span{font-family:var(--display);font-weight:700;color:#fff}@media (max-width:920px){.hero .wrap{grid-template-columns:1fr;padding-top:48px;padding-bottom:56px}.hero-art{max-width:380px;margin:0 auto}.diff-grid,.familiar-grid,.steps{grid-template-columns:1fr 1fr}.help-grid{grid-template-columns:1fr}.about-grid,.contact-grid,.split{grid-template-columns:1fr}.split .photo{order:-1}}@media (max-width:580px){.diff-grid,.familiar-grid,.steps{grid-template-columns:1fr}.site-header .wrap{flex-direction:column;align-items:flex-start}.site-nav{width:100%}.site-nav a{padding:8px 10px;font-size:.9rem}.section{padding:56px 0}}.help-text p{color:var(--ink-soft);margin-bottom:16px}.about-copy ul,.help-text ul,.page-content ul{list-style:none;margin:0 0 20px;padding:0}.about-copy ul li,.help-text ul li,.page-content ul li{position:relative;padding:7px 0 7px 30px}.about-copy ul li::before,.help-text ul li::before,.page-content ul li::before{content:"";position:absolute;left:4px;top:.95em;width:12px;height:12px;border-radius:50%;background:var(--teal)}.about-copy ul li:nth-child(4n+2)::before,.help-text ul li:nth-child(4n+2)::before,.page-content ul li:nth-child(4n+2)::before{background:var(--tangerine)}.about-copy ul li:nth-child(4n+3)::before,.help-text ul li:nth-child(4n+3)::before,.page-content ul li:nth-child(4n+3)::before{background:var(--sky)}.about-copy ul li:nth-child(4n+4)::before,.help-text ul li:nth-child(4n+4)::before,.page-content ul li:nth-child(4n+4)::before{background:var(--magenta)}.help-card .help-body{display:flex;flex-direction:column}.help-card .help-text{flex:1}.page-hero{padding:64px 0 8px}.page-body{padding-top:36px}.page-content>p:first-child{font-size:1.18rem;color:var(--ink-soft);max-width:56ch}.page-content h2{margin:34px 0 14px}.page-content h3{margin:26px 0 10px}.page-content p{margin-bottom:16px}.page-content p.soft-note{color:var(--ink-soft)}.page-content img{border-radius:var(--radius);box-shadow:var(--shadow);margin:18px 0}.page-content blockquote{border-left:4px solid var(--magenta);padding:6px 0 6px 20px;margin:22px 0;font-family:var(--display);font-weight:600;font-size:1.15rem}.contact-intro{margin-bottom:20px}.contact-intro>p:first-child{font-size:1.05rem}.msg,.post__toc{padding:14px 18px;border-radius:12px;background:var(--lilac)}
/* ---------- Dark mode ---------- */
.theme-toggle{background:none;border:2px solid var(--line);border-radius:999px;width:38px;height:38px;font-size:1.05rem;line-height:1;cursor:pointer;color:var(--ink);margin-left:6px}
.theme-toggle:hover{background:var(--lilac)}
:root[data-theme="dark"]{--paper:#18122B;--card:#282050;--ink:#F2EDFB;--ink-soft:#B9AFD6;--magenta-deep:#E068B4;--lilac:#1F1837;--lilac-deep:#332961;--line:#3A2F63;--shadow:0 10px 30px rgba(0,0,0,.5)}
:root[data-theme="dark"] .site-header{background:rgba(24,18,43,.92)}
:root[data-theme="dark"] .section-ink,:root[data-theme="dark"] .site-footer{background:#211A38}
:root[data-theme="dark"] .section-ink{color:#F2EDFB}
:root[data-theme="dark"] .btn-primary:hover{background:#A81570}
:root[data-theme="dark"] .site-nav a:hover,:root[data-theme="dark"] .site-nav a[aria-current=page]{background:#332961}
@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]){--paper:#18122B;--card:#282050;--ink:#F2EDFB;--ink-soft:#B9AFD6;--magenta-deep:#E068B4;--lilac:#1F1837;--lilac-deep:#332961;--line:#3A2F63;--shadow:0 10px 30px rgba(0,0,0,.5)}
:root:not([data-theme="light"]) .site-header{background:rgba(24,18,43,.92)}
:root:not([data-theme="light"]) .section-ink,:root:not([data-theme="light"]) .site-footer{background:#211A38}
:root:not([data-theme="light"]) .section-ink{color:#F2EDFB}
:root:not([data-theme="light"]) .btn-primary:hover{background:#A81570}
:root:not([data-theme="light"]) .site-nav a:hover,:root:not([data-theme="light"]) .site-nav a[aria-current=page]{background:#332961}
}

/* ---------- Contact photo & 404 art ---------- */
.contact-photo img{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px}
.notfound-art{max-width:320px;margin:44px 0 10px;transform:rotate(3deg);filter:drop-shadow(0 18px 30px rgba(42,33,64,.18))}

/* ---------- WhatsApp card ---------- */
.whatsapp-card{background:var(--lilac);border-color:var(--teal)}
.btn-whatsapp{background:var(--teal);color:#fff;width:100%;text-align:center}
.btn-whatsapp:hover{background:#1E8B7A;color:#fff}

/* ---------- Contact form ---------- */
.contact-form{margin-top:6px}
.contact-form .hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-form .form-row{margin-bottom:16px}
.contact-form label{display:block;font-weight:600;font-size:.92rem;margin-bottom:6px}
.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:11px 14px;resize:vertical}
.contact-form input[type=text]:focus,.contact-form input[type=email]:focus,.contact-form textarea:focus{outline:3px solid var(--sky);outline-offset:1px}
.contact-form button{width:100%}
.form-status{margin-top:14px;font-size:.92rem;color:var(--ink-soft)}
.form-status-ok{color:var(--teal);font-weight:600}
.form-status-error{color:var(--magenta-deep);font-weight:600}
