:root{--pink:#ed6f97;--pink2:#f7bfd1;--blush:#fff3f6;--gold:#c9972e;--ink:#2e2528;--muted:#74676b;--white:#fff;--line:#efdce3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fffafc;overflow-x:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.nav{height:92px;display:flex;align-items:center;gap:34px;padding:12px 5vw;position:sticky;top:0;z-index:50;background:rgba(255,250,252,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(201,151,46,.12)}.brand{width:210px;flex:0 0 auto}.brand img{width:100%;height:68px;object-fit:contain}.nav nav{display:flex;gap:24px;margin-left:auto}.nav nav a{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;position:relative}.nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--pink);transition:.25s}.nav nav a:hover:after{right:0}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 26px;border-radius:15px;font-weight:700;transition:.25s}.btn-primary{background:linear-gradient(135deg,#f17ba1,#e95484);color:white;box-shadow:0 14px 30px rgba(233,84,132,.23)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(233,84,132,.32)}.btn-light{border:1px solid #edbed0;background:rgba(255,255,255,.7)}.menu{display:none;border:0;background:transparent;font-size:26px}.hero{min-height:780px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:58px 8vw 110px;position:relative;background:radial-gradient(circle at 15% 55%,rgba(247,191,209,.55),transparent 34%),linear-gradient(105deg,#fffafb 0%,#fff8fa 48%,#fbe9ee 100%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.9),rgba(255,255,255,.15));pointer-events:none}.hero-copy,.hero-visual{position:relative;z-index:2}.eyebrow{display:block;color:#ba7b19;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:12px;margin-bottom:14px}.hero h1,.section h2{font-family:'Playfair Display',serif}.hero h1{font-size:clamp(44px,5.4vw,78px);line-height:1.02;margin:0;max-width:760px;font-weight:500}.script{font-family:'Great Vibes',cursive;color:var(--pink);font-size:clamp(45px,5vw,75px);line-height:1;margin:14px 0 18px}.hero-copy>p{max-width:600px;color:var(--muted);font-size:18px;line-height:1.7}.service-icons{display:flex;flex-wrap:wrap;gap:15px 24px;margin:28px 0;font-size:14px}.hero-actions{display:flex;gap:14px}.hero-visual{height:610px}.hero-photo{height:100%;border-radius:80px 22px 80px 22px;overflow:hidden;box-shadow:0 28px 70px rgba(95,54,67,.2);border:10px solid rgba(255,255,255,.7)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-badge{position:absolute;left:-40px;bottom:52px;width:126px;height:126px;border-radius:50%;background:white;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 18px 40px rgba(67,35,46,.18);border:1px solid var(--line)}.hero-badge b{font:700 32px 'Playfair Display';color:var(--pink)}.hero-badge span{font-size:12px}.hero-spark{position:absolute;right:-20px;top:40px;font-size:48px;color:var(--gold)}.contact-ribbon{position:absolute;z-index:3;left:8vw;right:8vw;bottom:30px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:24px;box-shadow:0 18px 50px rgba(96,50,63,.13);display:grid;grid-template-columns:1fr 1fr 1.3fr auto;align-items:center;padding:22px 28px;gap:20px}.contact-ribbon a{display:flex;flex-direction:column}.contact-ribbon small{color:var(--muted);margin-top:4px}.socials{display:flex;gap:10px}.socials a{width:42px;height:42px;border-radius:50%;background:var(--pink);color:white;display:grid;place-items:center;font-weight:700}.section{padding:100px 8vw}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-gallery{position:relative;min-height:560px}.about-main{width:80%;height:500px;object-fit:cover;border-radius:30px;box-shadow:0 25px 60px rgba(87,46,58,.15)}.about-float{position:absolute;right:0;bottom:0;width:45%;height:290px;object-fit:cover;border-radius:24px;border:9px solid #fff;box-shadow:0 20px 45px rgba(87,46,58,.16)}.section h2{font-size:clamp(38px,4vw,60px);line-height:1.08;margin:0 0 22px;font-weight:500}.about-copy p,.section-head p{color:var(--muted);line-height:1.8}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.stats div{background:var(--blush);border:1px solid var(--line);padding:24px 14px;border-radius:20px;text-align:center}.stats b{display:block;font:600 32px 'Playfair Display';color:var(--pink)}.stats span{font-size:12px}.section-head{text-align:center;max-width:760px;margin:0 auto 50px}.services{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{min-height:480px;border-radius:26px;overflow:hidden;position:relative;background:#222;box-shadow:0 15px 40px rgba(55,31,38,.12)}.service-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(25,14,18,.86))}.service-card div{position:absolute;left:28px;right:28px;bottom:28px;color:white;z-index:2}.service-card div>span{color:#f5c955}.service-card h3{font:600 30px 'Playfair Display';margin:8px 0}.service-card p{margin:0;line-height:1.55;color:#f4e9ed}.service-card:hover img{transform:scale(1.06)}.price{background:linear-gradient(180deg,#fff7fa,#fdf0f4)}.price-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}.price-tabs button{border:1px solid var(--line);background:#fff;padding:13px 22px;border-radius:30px;font-weight:700;cursor:pointer}.price-tabs button.active{background:var(--pink);color:#fff;border-color:var(--pink)}.price-box{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 20px 50px rgba(76,39,51,.09)}.tab{display:none}.tab.active{display:block}.tab div{display:flex;gap:20px;align-items:flex-end;padding:18px 4px;border-bottom:1px dashed #e4cbd4}.tab div span{flex:1}.tab div b{white-space:nowrap}.price-cta{text-align:center;margin-top:28px}.team{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.team-grid article{background:#fff8fa;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:0 15px 40px rgba(71,37,48,.08)}.team-grid img{width:100%;height:430px;object-fit:cover;object-position:center top}.team-grid article:nth-child(1) img{object-position:center 18%}.team-grid article:nth-child(2) img{object-position:center 15%}.team-grid article:nth-child(3) img{object-position:center 15%}.team-grid article div{padding:27px}.team-grid h3{font:600 30px 'Playfair Display';margin:0 0 8px}.team-grid span{color:var(--pink);font-weight:700;font-size:13px}.team-grid p{line-height:1.7;color:var(--muted)}.gallery{background:#fff9fb}.masonry{columns:4 250px;column-gap:16px}.masonry img{width:100%;margin:0 0 16px;border-radius:18px;break-inside:avoid;transition:.25s;box-shadow:0 8px 24px rgba(66,36,45,.08)}.masonry img:hover{transform:translateY(-5px)}.reviews{background:white;overflow:hidden}.reviews-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);margin-bottom:28px}.review-marquee{display:flex;width:max-content;gap:20px;animation:marquee 42s linear infinite}.review-marquee:hover{animation-play-state:paused}.review-marquee article{width:360px;flex:0 0 auto;background:var(--blush);border:1px solid var(--line);border-radius:24px;padding:28px}.review-marquee article div{color:#e8ae29;letter-spacing:.12em}.review-marquee p{font:500 21px/1.55 'Playfair Display';min-height:132px}.review-marquee span{color:var(--muted);font-size:13px}@keyframes marquee{to{transform:translateX(calc(-50% - 10px))}}.text-link{color:var(--pink);font-weight:700}.contact{background:linear-gradient(135deg,#fbe7ee,#fff7fa)}.contact-card{display:grid;grid-template-columns:1fr 1.2fr;max-width:1200px;margin:auto;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 24px 65px rgba(73,39,50,.14)}.contact-card>div{padding:60px}.contact-card>div>a:not(.btn){display:block;font-weight:700;margin:12px 0}.contact-card iframe{width:100%;height:100%;min-height:520px;border:0}footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:35px 8vw;background:#291e22;color:#eadfe3}footer img{width:220px;filter:brightness(1.15)}footer div{display:flex;gap:18px}.floating-booksy{display:none;position:fixed;z-index:60;bottom:18px;left:18px;right:18px;background:var(--pink);color:#fff;border-radius:16px;padding:16px;text-align:center;font-weight:700;box-shadow:0 12px 30px rgba(233,84,132,.35)}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:1100px){.nav nav{display:none}.nav.open nav{display:flex;position:absolute;top:91px;left:0;right:0;background:#fff;flex-direction:column;padding:28px}.menu{display:block}.nav-cta{margin-left:auto}.hero{grid-template-columns:1fr;padding-top:40px}.hero-visual{height:520px;margin-top:40px}.contact-ribbon{position:relative;left:auto;right:auto;bottom:auto;grid-template-columns:1fr 1fr;margin-top:35px;grid-column:1/-1}.about{grid-template-columns:1fr}.service-grid,.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.nav{height:76px;padding:8px 18px}.brand{width:150px}.brand img{height:58px}.nav-cta{display:none}.hero{padding:48px 20px 30px;min-height:auto}.hero h1{font-size:44px}.script{font-size:48px}.hero-actions{flex-direction:column}.hero-visual{height:420px}.hero-photo{border-radius:42px 16px}.hero-badge{left:8px;bottom:18px;width:100px;height:100px}.contact-ribbon{grid-template-columns:1fr;padding:20px}.section{padding:72px 20px}.about-gallery{min-height:430px}.about-main{height:390px;width:92%}.about-float{height:210px;width:48%}.stats{grid-template-columns:1fr}.service-grid,.team-grid{grid-template-columns:1fr}.service-card{min-height:430px}.team-grid img{height:410px}.price-box{padding:18px}.tab div{align-items:flex-start;flex-direction:column;gap:8px}.contact-card{grid-template-columns:1fr}.contact-card>div{padding:36px 25px}.contact-card iframe{min-height:380px}footer{flex-direction:column;text-align:center}.floating-booksy{display:block}body{padding-bottom:74px}}
