@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,600;1,500&display=swap');
:root{--ivory:#fcf8f3;--paper:#fffdf9;--pink:#d88f8b;--pink-dark:#ae6663;--peach:#efd0bc;--sage:#879a7a;--charcoal:#302f2b;--muted:#746f68;--line:#e8dfd6;--shadow:0 20px 50px rgba(70,49,40,.09);--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--ivory);color:var(--charcoal);font:16px/1.7 'DM Sans',sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1140px,calc(100% - 40px));margin:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:10px 16px}.skip-link:focus{top:10px}.header{position:sticky;top:0;z-index:20;background:rgba(252,248,243,.88);backdrop-filter:blur(16px);border-bottom:1px solid transparent}.header.scrolled{border-color:var(--line)}.nav{height:78px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:50% 50% 45% 55%;background:var(--pink);color:#fff;font:italic 22px 'Playfair Display'}.brand strong{font:600 18px 'Playfair Display'}.nav-links{display:flex;align-items:center;justify-content:center;gap:22px;margin-left:auto}.nav-links a{font-size:13px}.nav-links a:hover{color:var(--pink-dark)}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:999px;background:var(--pink-dark);color:#fff;padding:13px 22px;font-weight:600;cursor:pointer;transition:.25s}.button:hover{background:#965552;transform:translateY(-2px)}.button-small{font-size:13px;padding:10px 17px}.menu{display:none;border:0;background:none;font-size:22px}.hero{overflow:hidden;padding-top:58px}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:65px}.hero-copy{padding-bottom:35px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--pink-dark);font-size:11px;font-weight:600}.hero h1,h2{font:600 clamp(39px,5vw,68px)/1.06 'Playfair Display';letter-spacing:-.03em;margin:18px 0 25px}.hero h1 em,h2 em{font-weight:500;color:var(--pink-dark)}.lead{color:var(--muted);font-size:18px;max-width:570px}.actions{display:flex;align-items:center;gap:25px;margin:32px 0}.text-link{font-weight:600;border-bottom:1px solid var(--pink);padding-bottom:2px}.text-link span{color:var(--pink-dark)}.trust{display:flex;flex-wrap:wrap;gap:9px 18px;padding:0;margin:30px 0 0;list-style:none;color:var(--muted);font-size:12px}.trust li::first-letter{color:var(--sage)}.hero-visual{position:relative;margin:0;border-radius:180px 180px 28px 28px;overflow:hidden;box-shadow:var(--shadow);height:635px}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:60% center}.hero-visual figcaption{position:absolute;left:24px;right:24px;bottom:24px;padding:16px 20px;background:rgba(255,253,249,.9);backdrop-filter:blur(10px);border-radius:17px;display:flex;justify-content:space-between;gap:10px;font-size:12px}.hero-visual figcaption span{color:var(--muted)}.marquee{margin-top:60px;border-block:1px solid var(--line);padding:15px 0;white-space:nowrap;overflow:hidden;color:var(--muted);font:italic 16px 'Playfair Display'}.marquee div{word-spacing:17px;text-align:center}.marquee i{color:var(--pink);font-style:normal}.section{padding:110px 0}.tint{background:#f5ede7}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.photo-stack{position:relative;padding:0 55px 50px 0}.photo-stack img{width:100%;height:540px;object-fit:cover;object-position:70%;border-radius:var(--radius);filter:saturate(.8)}.photo-stack span{position:absolute;right:0;bottom:0;width:180px;padding:28px 20px;background:var(--sage);color:#fff;border-radius:22px;font:500 17px 'Playfair Display';box-shadow:var(--shadow)}.photo-stack small{font:11px 'DM Sans';opacity:.8}.section h2{font-size:clamp(34px,4vw,52px)}.section p{color:var(--muted)}.signature{display:flex;gap:15px;align-items:center;margin-top:30px}.signature>span{font-size:35px;color:var(--pink)}.signature div{display:flex;flex-direction:column}.signature small{color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:38px}.section-head h2{margin-bottom:0}.section-head>p{max-width:430px}.section-head.centered{justify-content:center;text-align:center}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.filters button{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:8px 16px;cursor:pointer;color:var(--muted)}.filters button.active{background:var(--sage);color:#fff;border-color:var(--sage)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:var(--paper);border-radius:20px;overflow:hidden;box-shadow:0 7px 25px rgba(70,49,40,.05);transition:.25s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-image{height:265px;overflow:hidden;position:relative;background:var(--peach)}.product-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.product-card:nth-child(3n+2) img{object-position:70%;transform:scale(1.15)}.product-card:nth-child(3n) img{object-position:35%;transform:scale(1.3)}.product-card:hover img{transform:scale(1.08)}.tag{position:absolute;top:15px;left:15px;background:rgba(255,255,255,.9);padding:5px 10px;border-radius:20px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.product-body{padding:21px}.product-body h3{font:600 22px 'Playfair Display';margin:0}.product-body p{font-size:13px;line-height:1.55;min-height:42px}.product-meta{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.product-meta b{color:var(--pink-dark);font-size:13px}.product-meta a{font-size:12px;font-weight:600;border-bottom:1px solid}.custom{padding-top:0}.custom-card{background:#445344;color:#fff;border-radius:32px;padding:70px;display:grid;grid-template-columns:1fr 1fr;gap:100px}.custom-card h2{margin-top:15px}.custom-card h2 em{color:var(--peach)}.custom-card p{color:#dfe6dc}.custom-card ol{list-style:none;counter-reset:steps;padding:0;margin:0}.custom-card li{counter-increment:steps;display:grid;grid-template-columns:46px 1fr;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.15)}.custom-card li:before{content:'0' counter(steps);grid-row:span 2;color:var(--peach);font:20px 'Playfair Display'}.custom-card li span{font-size:13px;color:#cbd4c8}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.benefit-grid article{background:var(--ivory);padding:40px;text-align:center}.benefit-grid i{display:grid;place-items:center;margin:auto;width:58px;height:58px;border-radius:50%;background:#f5e1dc;color:var(--pink-dark);font-size:25px;font-style:normal}.benefit-grid h3{font:600 20px 'Playfair Display';margin:16px 0 4px}.benefit-grid p{font-size:13px;margin:0}.gallery-section{background:#fff}.gallery{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:240px;gap:15px}.gallery button{position:relative;padding:0;border:0;border-radius:18px;overflow:hidden;cursor:zoom-in;background:var(--peach)}.gallery button:first-child{grid-row:span 2}.gallery img{width:100%;height:100%;object-fit:cover}.gallery button:nth-child(2) img{object-position:70%;transform:scale(1.25)}.gallery button:nth-child(3) img{object-position:30%;transform:scale(1.4)}.gallery button:nth-child(4) img{object-position:80%;transform:scale(1.5)}.gallery button:nth-child(5) img{object-position:50%;transform:scale(1.6)}.gallery span{position:absolute;inset:auto 12px 12px;background:rgba(255,255,255,.9);padding:7px 11px;border-radius:10px;font-size:11px}.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.quote{background:var(--paper);padding:30px;border-radius:20px}.stars{color:#d98f61;letter-spacing:3px}.quote blockquote{margin:22px 0;color:var(--muted)}.quote footer{display:flex;justify-content:space-between;background:none;color:var(--charcoal);padding:0;font-size:13px}.quote footer span{color:var(--muted)}.placeholder-note{text-align:center;font-size:11px;margin-top:20px}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:100px}.faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.faq-list summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}.faq-list summary:after{content:'+';color:var(--pink-dark);font-size:22px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;margin-bottom:5px}.location{background:#f0e3db}.location-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:80px}.map-placeholder{height:500px;border-radius:28px;background:radial-gradient(circle at 30% 40%,rgba(216,143,139,.45) 0 3px,transparent 4px),linear-gradient(35deg,transparent 49%,rgba(135,154,122,.22) 50% 52%,transparent 53%),#e8ddd4;background-size:50px 50px,100% 100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.map-placeholder span{font-size:50px;color:var(--pink-dark)}.map-placeholder small{max-width:260px}.location dl div{padding:11px 0;border-bottom:1px solid rgba(48,47,43,.12)}.location dt{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--pink-dark)}.location dd{margin:2px 0}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.contact blockquote{font:italic 25px/1.5 'Playfair Display';color:var(--pink-dark);margin:50px 0 0}.contact form{background:#fff;padding:38px;border-radius:24px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.form-grid label{font-size:12px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;margin-top:5px;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--charcoal);outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(216,143,139,.15)}.form-grid label.full{grid-column:1/-1}.form-grid small{display:block;color:#b54848;min-height:13px;font-weight:400}.full-button{width:100%;margin-top:17px}.form-note{text-align:center;font-size:11px;margin-bottom:0}footer{background:#32372f;color:#f8f3ed;padding:75px 0 20px}footer p{color:#bfc5bc;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr;gap:60px}.footer-grid>div{display:flex;flex-direction:column;align-items:start}.footer-grid h3{font:600 16px 'Playfair Display';margin-top:0}.footer-grid a:not(.button):not(.brand){color:#cdd2ca;font-size:13px;margin:3px 0}.light span{background:var(--peach);color:#444}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:18px;display:flex;justify-content:space-between;color:#9ca398;font-size:11px}.floating-wa{position:fixed;z-index:15;right:22px;bottom:22px;display:flex;align-items:center;gap:8px;padding:8px 14px 8px 8px;border-radius:999px;background:#33795d;color:#fff;box-shadow:0 8px 25px rgba(0,0,0,.2);font-size:12px}.floating-wa span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#33795d;font-weight:700}dialog{border:0;border-radius:22px;padding:12px;background:#fff;max-width:min(850px,90vw)}dialog::backdrop{background:rgba(30,25,22,.85)}dialog img{max-height:75vh;border-radius:14px}dialog button{position:absolute;right:20px;top:20px;border:0;border-radius:50%;width:35px;height:35px;background:#fff;font-size:22px;cursor:pointer}dialog p{text-align:center;margin:9px 0 1px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav-cta{display:none}.menu{display:block;margin-left:auto}.nav-links{display:none;position:absolute;top:68px;left:20px;right:20px;flex-direction:column;align-items:stretch;background:#fff;padding:16px;border-radius:16px;box-shadow:var(--shadow)}.nav-links.open{display:flex}.hero{padding-top:30px}.hero-grid,.about-grid,.location-grid,.contact-grid,.faq-grid{grid-template-columns:1fr;gap:50px}.hero-visual{height:520px}.product-grid{grid-template-columns:repeat(2,1fr)}.custom-card{gap:50px;padding:50px}.footer-grid{grid-template-columns:1fr 1fr}.location-grid{gap:45px}.faq-grid{gap:30px}}
@media(max-width:600px){.wrap{width:min(100% - 28px,1140px)}.nav{height:68px}.hero-grid{gap:25px}.hero h1{font-size:43px}.hero-visual{height:430px;border-radius:100px 100px 22px 22px}.hero-visual figcaption{flex-direction:column}.marquee div{text-align:left}.section{padding:75px 0}.about-grid{gap:35px}.photo-stack{padding:0 35px 35px 0}.photo-stack img{height:430px}.photo-stack span{width:145px;padding:20px 15px}.section-head{display:block}.product-grid{grid-template-columns:1fr}.product-image{height:300px}.custom-card{grid-template-columns:1fr;padding:35px 24px;border-radius:24px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-grid article{padding:27px 15px}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.gallery button:first-child{grid-column:span 2;grid-row:auto}.testimonials{display:flex;overflow:auto;scroll-snap-type:x mandatory}.quote{min-width:85%;scroll-snap-align:start}.map-placeholder{height:360px}.contact form{padding:25px 18px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:30px}.copyright{flex-direction:column;gap:5px}.floating-wa b{display:none}.actions{align-items:flex-start;flex-direction:column;gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important}}
