:root{--rose: #ed79a4;--blush: #ffe4ee;--petal: #fff4f8;--sky: #f9cadb;--mist: #fff0f5;--cream: #fffafc;--gold: #f6a4c0;--text: #1d171c;--soft: #806a75;--white: #ffffff}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Jost,sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;padding:0;background:#1d171cfa;border-bottom:1px solid rgba(237,121,164,.3);will-change:transform;transform:translateZ(0)}.nav-top{display:flex;align-items:center;justify-content:space-between;max-width:1240px;width:100%;margin:0 auto;padding:8px 40px}.nav-bottom{display:none}.nav-logo{text-decoration:none;display:flex;align-items:center}.nav-logo-img{height:140px;width:auto;display:block;filter:drop-shadow(0 2px 8px rgba(237,121,164,.2))}.nav-links{display:flex;gap:32px;list-style:none}.nav-links a{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#ead5de;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--rose)}.nav-links-mobile{display:none}.nav-cta{background:var(--rose);color:var(--white);border:none;padding:10px 24px;border-radius:30px;font-family:Jost,sans-serif;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:background .2s,transform .15s;box-shadow:0 8px 20px #ed79a42e}.nav-cta:hover{background:#d9608e;transform:translateY(-1px)}@keyframes orb-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-18px) scale(1.08)}}@keyframes sparkle-pulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:.7;transform:scale(1.05)}}@keyframes card-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.hero{min-height:660px;display:flex;align-items:center;padding:185px 40px 54px;position:relative;overflow:hidden}.hero-orb{position:absolute;border-radius:50%;pointer-events:none;will-change:transform;animation:orb-float ease-in-out infinite}.hero-sparkle{position:absolute;pointer-events:none;z-index:0;will-change:transform,opacity;animation:sparkle-pulse ease-in-out infinite}.hero-sparkle-1{top:18%;right:12%;color:var(--rose);font-size:.7rem;letter-spacing:18px;animation-duration:3s;animation-delay:0s}.hero-sparkle-2{bottom:28%;left:8%;color:var(--rose);font-size:.55rem;letter-spacing:14px;animation-duration:4s;animation-delay:-.5s}.hero-card-float{will-change:transform;animation:card-float 4.5s ease-in-out infinite}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(ellipse 52% 68% at 78% 36%,rgba(237,121,164,.18) 0%,transparent 76%),radial-gradient(ellipse 45% 56% at 12% 84%,rgba(114,38,72,.34) 0%,transparent 72%),#0d0a0c}.hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:.86fr 1.14fr;gap:52px;align-items:center}.hero-tag{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(237,121,164,.8);border-radius:30px;padding:7px 14px;margin-bottom:18px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#f7c6d8}.hero-tag:before{content:"✦";font-size:.7rem}.hero h1{font-family:Cormorant Garamond,serif;font-size:clamp(3.2rem,5.3vw,5.15rem);font-weight:400;line-height:.96;color:#fff7fa;margin-bottom:16px}.hero h1 em{font-style:italic;color:var(--rose)}.hero-ornament{display:flex;align-items:center;gap:12px;max-width:260px;color:var(--rose);margin:18px 0}.hero-ornament span{display:block;height:1px;flex:1;background:var(--rose)}.hero-ornament b{font-size:1.3rem;font-weight:400}.hero-desc{font-size:.98rem;font-weight:300;line-height:1.7;color:#e8d7de;margin-bottom:26px;max-width:390px}.hero-btns{display:flex;gap:14px;flex-wrap:wrap}.btn-primary{background:var(--rose);color:var(--white);padding:14px 32px;border-radius:30px;border:none;font-family:Jost,sans-serif;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 20px #f2a7bb66}.btn-primary:hover{background:#d9608e;transform:translateY(-2px);box-shadow:0 8px 28px #ed79a473}.btn-outline{background:transparent;color:var(--text);padding:14px 32px;border-radius:30px;border:1.5px solid rgba(242,167,187,.5);font-family:Jost,sans-serif;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:border-color .2s,color .2s}.hero .btn-outline{color:#fff7fa;border-color:#fff7fa73}.hero .btn-outline:hover,.btn-outline:hover{border-color:var(--rose);color:var(--rose)}.hero-assurances{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px;color:#e7ccd7;font-size:.72rem}.hero-assurances span{display:inline-flex;align-items:center;gap:6px}.hero-assurances span:before{content:"✦";color:var(--rose)}.hero-visual{display:flex;justify-content:flex-end;align-items:center}.hero-photo-frame{width:min(100%,625px);min-height:465px;position:relative;overflow:hidden;border:1px solid rgba(237,121,164,.85);border-radius:240px 0 0 240px;box-shadow:-16px 0 #0d0a0c,-17px 0 #ed79a4b8}.hero-photo-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(13,10,12,.16),transparent 48%)}.hero-photo-frame img{width:100%;height:100%;min-height:465px;display:block;object-fit:cover;object-position:54% center}.hero-photo-note{position:absolute;z-index:2;right:28px;bottom:25px;min-width:210px;padding:18px 22px;border-radius:14px;background:#0d0a0cf5;color:#fff7fa;text-align:center;border:1px solid rgba(237,121,164,.34)}.hero-photo-note>span{color:var(--rose);font-size:1.1rem}.hero-photo-note p{margin:5px 0 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#edb5c9}.hero-photo-note strong{display:block;margin-top:2px;color:var(--rose);font:italic 1.45rem/1.1 Cormorant Garamond,serif}.hero-photo-note small{display:block;margin-top:8px;color:#d9c5cc;font-size:.67rem}.trust-bar{padding:0 40px;background:#0d0a0c;border-top:1px solid rgba(237,121,164,.55);border-bottom:1px solid rgba(237,121,164,.42)}.trust-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{min-height:128px;display:flex;align-items:center;gap:14px;padding:24px 22px;border-right:1px solid rgba(237,121,164,.3)}.trust-item:first-child{border-left:1px solid rgba(237,121,164,.3)}.trust-symbol{width:43px;height:43px;flex:0 0 auto;display:grid;place-items:center;border:1px solid rgba(237,121,164,.7);border-radius:50%;color:var(--rose);font-size:1.3rem}.trust-item h2{margin-bottom:4px;font:500 1.05rem/1.1 Cormorant Garamond,serif;color:#fff7fa}.trust-item p{color:#cbb7bf;font-size:.72rem;line-height:1.5}section{padding:90px 40px;scroll-margin-top:165px;contain:layout style}.section-inner{max-width:1100px;margin:0 auto}.section-label{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);margin-bottom:12px;display:flex;align-items:center;gap:10px}.section-label:before{content:"";display:block;width:28px;height:1px;background:var(--rose)}.section-title{font-family:Cormorant Garamond,serif;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:300;line-height:1.2;color:var(--text);margin-bottom:16px}.section-title em{font-style:italic;color:var(--rose)}.section-sub{font-size:.95rem;font-weight:300;color:var(--soft);line-height:1.7;max-width:520px}.services-section{background:#fff}.services-section .section-inner>:first-child{text-align:center}.services-section .section-label{justify-content:center}.services-section .section-sub{margin-inline:auto}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-top:50px}.service-card{background:#fffdfd;border-radius:14px;padding:34px 26px 30px;text-align:center;transition:transform .2s,box-shadow .2s;border:1px solid rgba(237,121,164,.38)}.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px #3d142724}.service-icon{width:62px;height:62px;border-radius:50%;background:#100c0f;color:var(--rose);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto 19px}.service-card h3{font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:400;margin-bottom:10px;color:var(--text)}.service-card p{font-size:.87rem;color:var(--soft);line-height:1.65}.why-section{background:#fff8fb}.why-section .section-title{color:var(--text)}.why-section .section-sub{color:var(--soft)}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:50px}.why-list{display:flex;flex-direction:column;gap:24px}.why-item{display:flex;gap:16px;align-items:flex-start}.why-dot{width:36px;height:36px;border-radius:50%;flex-shrink:0;background:var(--blush);display:flex;align-items:center;justify-content:center;font-size:1rem;margin-top:2px}.why-item h4{font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:400;margin-bottom:4px;color:var(--text)}.why-item h4{color:var(--text)}.why-item p{font-size:.85rem;color:var(--soft);line-height:1.6}.why-visual{background:linear-gradient(145deg,var(--blush),var(--mist));border-radius:28px;padding:50px 40px;text-align:center}.why-visual .big-num{font-family:Cormorant Garamond,serif;font-size:5rem;font-weight:300;color:var(--rose);line-height:1}.why-visual .big-label{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin-top:8px}.why-visual .divider{width:40px;height:1px;background:var(--rose);margin:24px auto;opacity:.4}.why-visual .tagline{font-family:Cormorant Garamond,serif;font-size:1.3rem;font-style:italic;color:var(--text);line-height:1.5}.areas-section{background:#fff}.areas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:50px}.area-pill{background:var(--white);border:1.5px solid rgba(242,167,187,.3);border-radius:14px;padding:18px 20px;text-align:center;transition:border-color .2s,background .2s;cursor:default}.area-pill:hover{border-color:var(--rose);background:var(--blush)}.area-pill span{font-size:.88rem;color:var(--text);font-weight:400}.contact-section{background:#fff4f8}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:50px;align-items:start}.contact-info{display:flex;flex-direction:column;gap:28px}.contact-row{display:flex;gap:14px;align-items:flex-start}.contact-icon{width:40px;height:40px;border-radius:10px;background:var(--blush);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.contact-row h4{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);margin-bottom:4px}.contact-row p{font-size:.9rem;color:var(--text);font-weight:300}.contact-form{display:flex;flex-direction:column;gap:26px;background:var(--white);border:1px solid rgba(242,167,187,.25);border-radius:20px;padding:28px;box-shadow:0 14px 38px #3a2a300f}.form-section{display:flex;flex-direction:column;gap:16px}.form-section+.form-section{border-top:1px solid rgba(242,167,187,.2);padding-top:25px}.form-section-heading{display:flex;align-items:flex-start;gap:12px}.form-section-heading>span{width:29px;height:29px;border-radius:50%;background:var(--blush);color:var(--rose);display:grid;place-items:center;flex:0 0 auto;font-size:.7rem;letter-spacing:.05em}.form-section-heading h2,.form-section-heading h3{font-family:Cormorant Garamond,serif;font-weight:500;font-size:1.25rem;line-height:1.1;color:var(--text);margin-bottom:3px}.form-section-heading p,.form-help{font-size:.78rem;color:var(--soft);line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}.form-group input,.form-group select,.form-group textarea{background:var(--petal);border:1.5px solid rgba(242,167,187,.25);border-radius:12px;padding:13px 16px;font-family:Jost,sans-serif;font-size:.9rem;color:var(--text);outline:none;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--rose)}.form-group textarea{resize:vertical;min-height:110px}.form-group small,.add-ons small{text-transform:none;letter-spacing:0;font-size:.72rem}.add-ons{border:0;min-width:0}.add-ons legend{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.check-option{display:flex;align-items:center;gap:9px;background:var(--petal);border:1.5px solid rgba(242,167,187,.2);border-radius:10px;padding:10px 12px;cursor:pointer;font-size:.82rem;color:var(--text);text-transform:none!important;letter-spacing:0!important}.check-option input{width:16px;height:16px;accent-color:var(--rose)}.form-group input[type=file]{padding:10px;font-size:.78rem;background:var(--white)}.form-group input[type=file]::file-selector-button{border:0;border-radius:8px;background:var(--blush);color:var(--text);padding:7px 10px;margin-right:10px;font-family:inherit;cursor:pointer}.photo-list{padding-left:18px;color:var(--soft);font-size:.78rem;line-height:1.6}.form-submit{background:var(--rose);color:var(--white);border:none;border-radius:30px;padding:15px 36px;font-family:Jost,sans-serif;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;align-self:flex-start;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 20px #f2a7bb66}.form-submit:hover{background:#e8839e;transform:translateY(-2px)}.form-success{background:var(--blush);border-radius:14px;padding:28px;text-align:center;color:var(--rose);font-family:Cormorant Garamond,serif;font-size:1.1rem;font-style:italic}.booking-page{background:#f8eaf1;min-height:calc(100vh - 110px)}.booking-section{padding:205px 20px 90px}.booking-inner{max-width:820px;margin:0 auto}.booking-intro{text-align:center}.booking-intro .section-sub{max-width:620px;margin-left:auto;margin-right:auto}.booking-form-wrap{margin-top:44px}.booking-form-wrap .contact-form{max-width:820px}.ba-section{background:#fff}.ba-grid{margin-top:50px;display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.ba-wrap{position:relative;width:100%;max-width:700px;margin:0 auto;border-radius:20px;overflow:hidden;cursor:col-resize;-webkit-user-select:none;user-select:none;aspect-ratio:4/3;box-shadow:0 12px 40px #0000001f;touch-action:pan-y}.ba-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.ba-before{z-index:1}.ba-divider{position:absolute;top:0;bottom:0;width:3px;background:var(--white);z-index:2;transform:translate(-50%);box-shadow:0 0 8px #0000004d}.ba-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;background:var(--white);box-shadow:0 2px 12px #00000040;display:flex;align-items:center;justify-content:center;gap:2px;font-size:.9rem;color:var(--rose);font-weight:700}.ba-label{position:absolute;bottom:14px;z-index:3;background:#00000080;color:#fff;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:20px}.ba-label-before{left:14px}.ba-label-after{right:14px}.ba-caption{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:3;background:#ffffffd9;font-size:.75rem;letter-spacing:.08em;color:var(--text);padding:4px 12px;border-radius:20px;white-space:nowrap}.gallery-section{background:#fff4f8}.gallery-grid{margin-top:50px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.gallery-item{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;cursor:pointer;box-shadow:0 4px 16px #00000014}.gallery-item--static{cursor:default}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-item:not(.gallery-item--static) img{transition:transform .4s ease}.gallery-item:not(.gallery-item--static):hover img{transform:scale(1.04)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000e0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.lightbox img{max-width:90vw;max-height:80vh;border-radius:12px;object-fit:contain}.lightbox p{color:#ffffffb3;margin-top:14px;font-size:.85rem;letter-spacing:.06em}.lightbox-close{position:absolute;top:20px;right:24px;background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;opacity:.7;transition:opacity .2s}.lightbox-close:hover{opacity:1}.footer{background:radial-gradient(circle at 7% 82%,rgba(237,121,164,.16),transparent 22%),#0d0a0c;color:#dfcbd3;padding:60px 40px 22px;border-top:1px solid rgba(237,121,164,.55)}.footer-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:50px}.footer-kicker{color:var(--rose);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;margin-bottom:8px}.footer-cta h2{color:#fff7fa;font:400 clamp(2rem,3.3vw,3rem)/.95 "Cormorant Garamond",serif}.footer-cta em{color:var(--rose)}.footer-button{display:inline-block;margin-top:20px;padding:12px 23px;border-radius:30px;background:var(--rose);color:#fff;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;text-decoration:none;transition:transform .2s,background .2s}.footer-button:hover{background:#d9608e;transform:translateY(-2px)}.footer-brand{text-align:center}.footer-brand img{width:146px;height:auto;filter:drop-shadow(0 5px 12px rgba(237,121,164,.14))}.footer-brand p{margin-top:2px;color:#dfcbd3;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.footer-contact{display:flex;flex-direction:column;gap:12px;font-size:.84rem;font-style:normal;justify-self:end}.footer-contact a,.footer-contact span{color:#f4e8ec;text-decoration:none}.footer-contact a:hover{color:var(--rose)}.footer-bottom{max-width:1100px;margin:44px auto 0;padding-top:16px;border-top:1px solid rgba(237,121,164,.22);display:flex;justify-content:space-between;gap:16px;color:#a68f98;font-size:.68rem;letter-spacing:.05em}.form-error{font-size:.83rem;color:#c0392b;margin-bottom:8px}@media (max-width: 768px){.nav-top{padding:6px 16px}.nav-links{display:none}.nav-logo-img{height:64px}.nav-bottom{display:block;border-top:1px solid rgba(242,167,187,.15);padding:8px 16px}.nav-links-mobile{display:flex;gap:0;list-style:none;justify-content:space-around}.nav-links-mobile a{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:#ead5de;text-decoration:none;transition:color .2s;padding:4px 0;display:block}.nav-links-mobile a:hover{color:var(--rose)}.hero{min-height:0;padding:154px 20px 58px}section{scroll-margin-top:125px}.hero-inner{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(3.15rem,16vw,4.2rem)}.hero-visual{display:flex}.hero-photo-frame{min-height:320px;border-radius:160px 0 0 160px}.hero-photo-frame img{min-height:320px}.hero-photo-note{right:16px;bottom:16px;min-width:178px;padding:13px 16px}.hero-assurances{gap:10px;font-size:.65rem}section{padding:60px 20px}.trust-bar{padding:0 20px}.trust-inner{grid-template-columns:1fr 1fr}.trust-item{min-height:112px;padding:16px 10px;gap:10px;border-bottom:1px solid rgba(237,121,164,.3)}.trust-item:nth-child(odd){border-left:1px solid rgba(237,121,164,.3)}.trust-item:nth-child(2n){border-right:1px solid rgba(237,121,164,.3)}.trust-item h2{font-size:.9rem}.trust-item p{font-size:.64rem}.trust-symbol{width:35px;height:35px;font-size:1rem}.why-grid,.contact-wrap{grid-template-columns:1fr;gap:40px}.form-row{grid-template-columns:1fr}.contact-form{padding:22px 16px}.booking-section{padding:175px 20px 60px}.checkbox-grid{grid-template-columns:1fr}.ba-grid{grid-template-columns:1fr;gap:24px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}.footer{padding:48px 20px 20px}.footer-inner{grid-template-columns:1fr;text-align:center;gap:28px}.footer-contact{justify-self:center;align-items:center}.footer-bottom{margin-top:30px;flex-direction:column;text-align:center}}
