@import@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--ink:#27172f;--cream:#fffaf6;--coral:#ff654e;--pink:#ff8fc8;--violet:#8a47eb;--acid:#dfff5d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}button,a{font:inherit}button{cursor:pointer}img{display:block;width:100%}a{color:inherit;text-decoration:none}.section{padding:120px clamp(24px,6vw,96px)}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,72px);transition:.35s}.site-header.scrolled{height:70px;background:rgba(255,250,246,.88);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(39,23,47,.09)}.logo{font-weight:700;font-size:21px;letter-spacing:.12em;display:flex;align-items:center;gap:9px}.logo>span{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--ink);color:white;font-family:"Playfair Display",serif;font-style:italic}.logo i{font:italic 13px "Playfair Display",serif;letter-spacing:0;color:var(--violet);margin-left:-5px}.nav{display:flex;gap:35px;font-size:13px;font-weight:600}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--coral);transition:.3s}.nav a:hover:after{width:100%}.book-mini{border:0;background:var(--ink);color:white;border-radius:50px;padding:13px 20px;font-size:13px}.book-mini b{margin-left:12px;color:var(--acid)}.menu-btn{display:none;background:none;border:0}.menu-btn span{width:25px;height:2px;background:var(--ink);display:block;margin:6px}
.hero{min-height:100vh;padding:130px clamp(24px,5vw,72px) 60px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5vw;position:relative;background:linear-gradient(130deg,#fffaf6 0 50%,#efdcff 50% 100%);overflow:hidden}.hero-copy{position:relative;z-index:3}.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:.18em}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:24px}.eyebrow span{width:26px;height:2px;background:var(--coral)}h1,h2{font-family:"Playfair Display",serif;font-weight:500;margin:0;letter-spacing:-.055em}h1{font-size:clamp(54px,7.2vw,108px);line-height:.86}h1 em,h2 em{color:var(--coral);font-weight:500}.lead{max-width:500px;font-size:17px;line-height:1.7;margin:30px 0;color:#5c4b61}.hero-actions{display:flex;align-items:center;gap:28px}.btn-primary{border:0;background:var(--coral);color:#fff;border-radius:100px;padding:17px 23px;font-weight:600;box-shadow:0 12px 28px rgba(255,101,78,.26);transition:.25s}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(255,101,78,.33)}.btn-primary span{margin-left:20px}.btn-primary.purple{background:var(--violet);box-shadow:none}.play{font-size:13px;font-weight:600;display:flex;align-items:center;gap:11px}.play i{width:36px;height:36px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:9px}.hero-visual{position:relative;z-index:2}.hero-img{height:min(72vh,720px);border-radius:48% 48% 24px 24px;overflow:hidden;box-shadow:24px 30px 0 var(--coral)}.hero-img img{height:100%;object-fit:cover}.hero-orbit{position:absolute;border:1px solid rgba(138,71,235,.35);border-radius:50%;animation:spin 18s linear infinite}.orbit-one{width:440px;height:440px;right:-120px;top:-120px}.orbit-two{width:260px;height:260px;left:38%;bottom:-130px;border-width:40px;border-color:rgba(255,101,78,.12);animation-direction:reverse}@keyframes spin{to{transform:rotate(360deg)}}.stamp{position:absolute;left:-56px;top:12%;width:116px;height:116px;border-radius:50%;background:var(--acid);display:grid;place-items:center}.stamp span{position:absolute;font-size:9px;font-weight:700;letter-spacing:.13em;width:100%;height:100%;display:grid;place-items:center}.stamp b{font-size:24px}.floating-card{position:absolute;right:-18px;bottom:5%;background:#fff;padding:16px 21px;border-radius:18px;box-shadow:0 16px 40px rgba(39,23,47,.15);display:grid}.floating-card b{font:italic 34px "Playfair Display"}.floating-card span{color:var(--coral);letter-spacing:2px;font-size:10px}.floating-card small{margin-top:4px}.scroll-cue{position:absolute;left:48%;bottom:28px;font-size:9px;letter-spacing:.2em;writing-mode:vertical-rl}.scroll-cue span{font-size:18px;margin-top:8px}.ticker{background:var(--ink);color:#fff;overflow:hidden;white-space:nowrap;padding:15px 0;transform:rotate(-1.3deg);margin:-3px -10px 0}.ticker div{font-size:14px;font-weight:600;letter-spacing:.12em;animation:marquee 18s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}
.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:64px}.section-head h2,.manifesto h2,.result-title h2,.studio h2,.faq h2{font-size:clamp(50px,6vw,82px);line-height:.95}.section-head>p{max-width:350px;line-height:1.7;color:#66596a}.kicker{color:var(--violet);margin:0 0 20px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-card{min-height:390px;padding:25px;border-radius:28px;display:flex;flex-direction:column;transition:.35s}.service-card:hover{transform:translateY(-10px) rotate(-1deg)}.service-card.c1{background:#ffded8}.service-card.c2{background:#e9d8ff}.service-card.c3{background:#ffefaa}.service-card.c4{background:#d9ffd8}.service-top{display:flex;justify-content:space-between;font-size:11px}.service-top b{background:rgba(255,255,255,.65);padding:6px 11px;border-radius:50px}.service-icon{font-size:64px;margin:auto 0 25px;color:var(--violet)}.service-card h3{font:500 26px "Playfair Display",serif}.service-card p{font-size:13px;line-height:1.7;min-height:68px}.service-card button{background:none;border:0;border-top:1px solid rgba(39,23,47,.2);padding:16px 0 0;text-align:left;font-size:12px;font-weight:700}.service-card button span{float:right}
.manifesto{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.portrait-wrap{position:relative;max-width:560px}.portrait-wrap>img{height:700px;object-fit:cover;border-radius:48% 48% 18px 18px;position:relative;z-index:2}.portrait-blob{position:absolute;width:95%;height:92%;background:var(--violet);border-radius:46% 54% 66% 34%;left:-35px;bottom:-20px;transform:rotate(-8deg)}.quote-chip{position:absolute;z-index:3;right:-65px;bottom:40px;background:var(--coral);color:white;padding:24px 28px;border-radius:50% 50% 12px 50%;font:italic 20px/1.3 "Playfair Display"}.quote-chip span{display:block;font:500 8px "DM Sans";letter-spacing:.13em;margin-top:12px}.manifesto-copy>p:not(.kicker){font-size:17px;line-height:1.8;color:#cfc3d2;max-width:560px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:44px 0}.values div{border-top:1px solid #594b60;padding-top:14px}.values b{color:var(--pink);font-size:10px;display:block;margin-bottom:18px}.values span{font:17px/1.3 "Playfair Display"}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:8px;font-size:13px;font-weight:600}.text-link span{margin-left:28px}
.results{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center;background:#f2e7ff}.result-title p:last-child{color:#6a5a70;line-height:1.6}.compare{height:650px;position:relative;overflow:hidden;border-radius:50% 50% 22px 22px}.compare>img,.before img{height:100%;object-fit:cover}.before{position:absolute;left:0;top:0;height:100%;overflow:hidden;filter:grayscale(1) contrast(.88)}.before img{width:100%;min-width:calc((100vw - 25vw)*.65);object-position:left}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:4;cursor:ew-resize}.compare-line{position:absolute;top:0;height:100%;width:2px;background:#fff;z-index:3}.compare-line b{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:white;color:var(--violet);display:grid;place-items:center}.compare i{position:absolute;top:20px;background:var(--ink);color:white;font-style:normal;font-size:9px;letter-spacing:.15em;padding:8px 11px;border-radius:20px}.before-label{left:20px}.after-label{right:20px}
.studio{display:grid;grid-template-columns:1.3fr .7fr;gap:7vw;align-items:center}.studio-image{position:relative}.studio-image img{height:620px;object-fit:cover;border-radius:18px 180px 18px 18px}.location-pill{position:absolute;left:28px;bottom:26px;background:var(--acid);padding:18px 30px;border-radius:50px;display:flex;gap:18px;font-size:11px}.location-pill b{letter-spacing:.12em}.studio-copy>p:not(.kicker){line-height:1.8;color:#66596a}.hours{margin:32px 0}.hours span{display:flex;justify-content:space-between;border-bottom:1px solid #e1d8df;padding:12px 0;font-size:12px}.hours b{font-size:9px;letter-spacing:.1em}.journal{background:#ffdbd4}.journal-head{margin-bottom:50px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.journal-art{height:420px;display:grid;place-items:center;border-radius:26px;margin-bottom:20px;overflow:hidden}.journal-art span{font:italic 52px/.82 "Playfair Display";text-align:center;transform:rotate(-7deg)}.art1{background:radial-gradient(circle,#fff 0 12%,transparent 13%),linear-gradient(135deg,#ff735d,#ffb6d8);background-size:70px 70px,100%}.art2{background:linear-gradient(135deg,#8a47eb 50%,#dfff5d 50%);color:white}.art3{background:repeating-radial-gradient(circle,#fff 0 20px,#fec7e3 21px 42px)}.journal-grid small{font-size:9px;letter-spacing:.14em;color:#7c5261}.journal-grid h3{font:26px/1.15 "Playfair Display";max-width:330px}.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.faq-list article{border-top:1px solid #d8cfd6}.faq-list button{width:100%;border:0;background:none;display:flex;justify-content:space-between;padding:25px 0;font-weight:600;text-align:left}.faq-list button b{color:var(--violet);font-size:22px}.faq-list p{display:none;margin:-5px 50px 25px 0;line-height:1.7;color:#706274}.faq-list article.open p{display:block}.closing{height:580px;background:var(--violet);color:#fff;display:grid;place-items:center;align-content:center;text-align:center;position:relative;overflow:hidden}.closing p{font:italic 22px "Playfair Display";margin:0}.closing h2{font-size:clamp(70px,10vw,150px);line-height:.9}.closing h2 em{color:var(--acid)}.closing button{margin-top:32px;border:0;border-radius:50px;padding:18px 25px;background:white;color:var(--ink);font-weight:700}.closing button span{margin-left:30px}.bubble{position:absolute;border-radius:50%;display:grid;place-items:center;font:italic 42px "Playfair Display";animation:float 4s ease-in-out infinite}.b1{width:100px;height:100px;background:var(--coral);left:10%;top:16%}.b2{width:130px;height:130px;background:var(--pink);right:10%;top:12%;animation-delay:-1s}.b3{width:70px;height:70px;background:var(--acid);color:var(--violet);right:20%;bottom:10%;animation-delay:-2s}@keyframes float{50%{transform:translateY(-16px) rotate(8deg)}}footer{background:var(--ink);color:white;padding:70px clamp(24px,6vw,96px) 30px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:30px;position:relative}.logo.light>span{background:white;color:var(--ink)}footer>div{display:flex;flex-direction:column;gap:10px;font-size:12px}footer>div b{font-size:9px;letter-spacing:.18em;color:var(--pink);margin-bottom:8px}footer small{grid-column:1/-1;border-top:1px solid #4c3d53;padding-top:22px;margin-top:35px;font-size:8px;letter-spacing:.15em;color:#9f91a6}.whatsapp{position:fixed;right:22px;bottom:22px;z-index:20;width:52px;height:52px;border-radius:50%;background:#31c86b;color:white;display:grid;place-items:center;font-weight:700;box-shadow:0 8px 24px #0003}
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(25,12,31,.7);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.modal{background:#fffaf6;width:min(600px,100%);padding:50px;border-radius:32px;position:relative;box-shadow:0 30px 100px #0005}.modal-close{position:absolute;right:22px;top:18px;background:none;border:0;font-size:30px}.modal h2{font-size:50px}.modal form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.modal label{font-size:9px;font-weight:700;letter-spacing:.12em}.modal input,.modal select{display:block;width:100%;border:0;border-bottom:1px solid #cfc3cb;background:transparent;padding:12px 0;outline:0}.modal form label:nth-child(3){grid-column:1/-1}.modal form button{grid-column:1/-1}
@media(max-width:900px){.site-header{height:72px}.nav{display:none;position:absolute;top:70px;left:16px;right:16px;background:white;padding:25px;border-radius:20px;box-shadow:0 15px 50px #0002;flex-direction:column}.nav.open{display:flex}.menu-btn{display:block}.book-mini{display:none}.hero{grid-template-columns:1fr;padding-top:110px;background:linear-gradient(160deg,#fffaf6 0 55%,#efdcff 55%)}.hero-copy{padding-bottom:20px}.hero-visual{width:90%;margin-left:auto}.hero-img{height:55vh;box-shadow:14px 17px 0 var(--coral)}.stamp{left:-35px;width:90px;height:90px}.floating-card{right:-6px}.scroll-cue{display:none}.service-grid{grid-template-columns:1fr 1fr}.manifesto,.results,.studio,.faq{grid-template-columns:1fr}.portrait-wrap{margin:auto}.quote-chip{right:-10px}.result-title{margin-bottom:0}.studio-image{order:2}.journal-grid{grid-template-columns:1fr}.journal-art{height:340px}footer{grid-template-columns:1fr 1fr}.logo.light{grid-column:1/-1}}
@media(max-width:600px){.section{padding:80px 20px}.logo{font-size:17px}.hero{padding:105px 20px 50px}.hero h1{font-size:15vw}.lead{font-size:15px}.hero-actions{gap:15px}.play{font-size:0}.hero-img{height:50vh}.section-head{align-items:start;flex-direction:column;gap:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:330px}.portrait-wrap>img{height:520px}.quote-chip{font-size:16px}.values{gap:6px}.values span{font-size:13px}.compare{height:500px}.before img{min-width:calc(100vw - 40px)}.studio-image img{height:420px;border-radius:18px 100px 18px 18px}.location-pill{left:12px;bottom:12px}.journal-art{height:300px}.closing{height:440px}.bubble{transform:scale(.7)}.modal{padding:42px 24px 28px}.modal h2{font-size:38px}.modal form{grid-template-columns:1fr}.modal form label:nth-child(3){grid-column:auto}.modal form button{grid-column:auto}footer{grid-template-columns:1fr 1fr}.logo.light{grid-column:1/-1}}

.static-modal[hidden]{display:none!important}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.revealed{opacity:1;transform:none}
