*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--clr-bg: #fdf6f0;--clr-bg-alt: #fef0e8;--clr-primary: #d4838f;--clr-primary-light: #e8b4b8;--clr-primary-dark: #b8636f;--clr-accent: #c4956a;--clr-accent-light: #e0c4a8;--clr-text: #3d2c2e;--clr-text-light: #7a6062;--clr-white: #ffffff;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background-color:var(--clr-bg);color:var(--clr-text);overflow-x:hidden;min-height:100vh}::selection{background-color:var(--clr-primary-light);color:var(--clr-text)}.floating-shapes{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.grain{position:absolute;inset:-50%;width:200%;height:200%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");opacity:.4}.shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;will-change:transform}.shape--1{width:clamp(300px,40vw,600px);height:clamp(300px,40vw,600px);background:radial-gradient(circle,var(--clr-primary-light) 0%,transparent 70%);top:-10%;right:-5%;animation:float1 20s var(--ease-in-out) infinite}.shape--2{width:clamp(250px,35vw,500px);height:clamp(250px,35vw,500px);background:radial-gradient(circle,var(--clr-accent-light) 0%,transparent 70%);bottom:-5%;left:-10%;animation:float2 25s var(--ease-in-out) infinite}.shape--3{width:clamp(200px,25vw,400px);height:clamp(200px,25vw,400px);background:radial-gradient(circle,#f0d4e8 0%,transparent 70%);top:40%;left:30%;animation:float3 18s var(--ease-in-out) infinite;opacity:.3}.shape--4{width:clamp(150px,20vw,350px);height:clamp(150px,20vw,350px);background:radial-gradient(circle,#d4e8f0 0%,transparent 70%);top:20%;left:10%;animation:float4 22s var(--ease-in-out) infinite;opacity:.35}.shape--5{width:clamp(180px,22vw,380px);height:clamp(180px,22vw,380px);background:radial-gradient(circle,var(--clr-primary-light) 0%,transparent 70%);bottom:20%;right:15%;animation:float5 28s var(--ease-in-out) infinite;opacity:.25}@keyframes float1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-30px,20px) scale(1.05)}66%{transform:translate(20px,-15px) scale(.95)}}@keyframes float2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(25px,-20px) scale(1.08)}66%{transform:translate(-15px,25px) scale(.92)}}@keyframes float3{0%,to{transform:translate(0) scale(1) rotate(0)}50%{transform:translate(40px,-30px) scale(1.1) rotate(5deg)}}@keyframes float4{0%,to{transform:translate(0)}25%{transform:translate(15px,25px)}50%{transform:translate(-10px,15px)}75%{transform:translate(20px,-10px)}}@keyframes float5{0%,to{transform:translate(0) scale(1)}40%{transform:translate(-20px,15px) scale(1.05)}70%{transform:translate(15px,-20px) scale(.97)}}.logo{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--clr-text);transition:opacity .3s ease}.logo:hover{opacity:.8}.logo__icon{display:flex;width:40px;height:40px;color:var(--clr-primary)}.logo__icon svg{width:100%;height:100%}.logo__text{display:flex;align-items:baseline;gap:.25rem;font-family:var(--font-display);font-size:1.5rem;font-weight:300;letter-spacing:.02em}.logo__the{color:var(--clr-text-light);font-style:italic;font-size:1.1rem}.logo__flex{color:var(--clr-primary-dark);font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:1.3rem}.logo__girl{color:var(--clr-text);font-weight:300}.hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.hero__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:#d4838f1a;border:1px solid rgba(212,131,143,.2);border-radius:100px;font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--clr-primary-dark);animation:fadeDown .8s var(--ease-out-expo) both}.hero__badge-dot{width:6px;height:6px;border-radius:50%;background:var(--clr-primary);animation:pulse 2s ease-in-out infinite}.hero__title{font-family:var(--font-display);font-weight:300;line-height:1.1;letter-spacing:-.02em;animation:fadeDown .8s var(--ease-out-expo) .1s both}.hero__title-line{display:block}.hero__title-line--1{font-size:clamp(2.5rem,6vw,4.5rem);color:var(--clr-text)}.hero__title-line--2{font-size:clamp(3.5rem,9vw,7rem);color:var(--clr-primary-dark);margin-top:-.1em}.hero__title-line--2 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,var(--clr-primary-dark) 0%,var(--clr-primary) 50%,var(--clr-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero__subtitle{max-width:520px;font-family:var(--font-body);font-size:clamp(.95rem,1.5vw,1.125rem);font-weight:300;line-height:1.7;color:var(--clr-text-light);animation:fadeDown .8s var(--ease-out-expo) .2s both}.hero__features{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:.5rem;animation:fadeDown .8s var(--ease-out-expo) .3s both}.hero__feature{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:400;color:var(--clr-text-light);padding:.5rem 1rem;background:#fff9;border-radius:100px;backdrop-filter:blur(10px);border:1px solid rgba(212,131,143,.1);transition:all .3s ease}.hero__feature:hover{background:#ffffffe6;border-color:#d4838f40;transform:translateY(-1px)}.hero__feature-icon{width:18px;height:18px;color:var(--clr-primary);flex-shrink:0}.hero__feature-icon svg{width:100%;height:100%}@keyframes fadeDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@media(max-width:640px){.hero__features{gap:.75rem}.hero__feature{font-size:.8rem;padding:.4rem .8rem}}.email-form-wrapper{width:100%;max-width:480px;animation:fadeUp .8s var(--ease-out-expo) .4s both}.email-form__input-group{display:flex;gap:0;background:var(--clr-white);border-radius:100px;padding:5px;box-shadow:0 1px 3px #3d2c2e0a,0 4px 12px #3d2c2e0f,0 0 0 1px #d4838f1a;transition:box-shadow .3s ease}.email-form__input-group:focus-within{box-shadow:0 1px 3px #3d2c2e0a,0 4px 20px #d4838f26,0 0 0 2px #d4838f33}.email-form__input{flex:1;border:none;outline:none;padding:.85rem 1.25rem;font-family:var(--font-body);font-size:.95rem;font-weight:400;color:var(--clr-text);background:transparent;min-width:0}.email-form__input::placeholder{color:var(--clr-text-light);opacity:.6}.email-form__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.75rem;background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-primary-dark) 100%);color:var(--clr-white);border:none;border-radius:100px;font-family:var(--font-body);font-size:.9rem;font-weight:500;letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:all .3s var(--ease-out-expo);flex-shrink:0}.email-form__btn:hover{background:linear-gradient(135deg,var(--clr-primary-dark) 0%,#a0505e 100%);transform:scale(1.02)}.email-form__btn:active{transform:scale(.98)}.email-form__btn-icon{width:16px;height:16px;display:flex;transition:transform .3s var(--ease-out-expo)}.email-form__btn:hover .email-form__btn-icon{transform:translate(3px)}.email-form__btn-icon svg{width:100%;height:100%}.email-form__hint{text-align:center;font-size:.78rem;color:var(--clr-text-light);opacity:.7;margin-top:.85rem;font-weight:300}.email-form__success{display:none;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:#fffc;border-radius:16px;border:1px solid rgba(130,190,130,.3);backdrop-filter:blur(10px);animation:scaleIn .5s var(--ease-out-expo)}.email-form__success.is-visible{display:flex}.email-form__success-icon{width:28px;height:28px;color:#6ab06a;flex-shrink:0}.email-form__success-icon svg{width:100%;height:100%}.email-form__success-text{font-size:.9rem;color:var(--clr-text);font-weight:400;line-height:1.5}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(max-width:480px){.email-form__input-group{flex-direction:column;border-radius:20px;padding:4px}.email-form__input{text-align:center;padding:.75rem 1rem}.email-form__btn{justify-content:center;border-radius:16px;padding:.85rem}}.social{display:flex;flex-direction:column;align-items:center;gap:.75rem;animation:fadeUp .8s var(--ease-out-expo) .5s both}.social__label{font-size:.75rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-text-light);opacity:.6}.social__links{display:flex;gap:.5rem}.social__link{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:var(--clr-text-light);background:#ffffff80;border:1px solid rgba(212,131,143,.1);text-decoration:none;transition:all .3s var(--ease-out-expo);backdrop-filter:blur(10px)}.social__link:hover{color:var(--clr-primary-dark);background:#ffffffe6;border-color:#d4838f40;transform:translateY(-2px);box-shadow:0 4px 12px #d4838f26}.social__link svg{width:18px;height:18px}.footer{display:flex;flex-direction:column;align-items:center;gap:1rem;animation:fadeUp .8s var(--ease-out-expo) .6s both}.footer__divider{width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--clr-primary-light),transparent)}.footer__text{font-size:.75rem;color:var(--clr-text-light);opacity:.5;font-weight:300;letter-spacing:.02em}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;min-height:100vh;min-height:100dvh;padding:2rem 1.5rem}.page__header{width:100%;display:flex;justify-content:center;padding-bottom:1rem;animation:fadeIn .8s var(--ease-out-expo) both}.page__content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;width:100%;max-width:680px;padding:2rem 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:640px){.page{padding:1.5rem 1rem}.page__content{gap:2rem}}@media(min-height:800px){.page__content{padding:4rem 0}}
