*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fffaf8;color:#382b35;font-family:"DM Sans",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.announcement{text-align:center;background:#f4e7ee;color:#754263;padding:8px 15px;font-size:.78rem;letter-spacing:.04em}.site-header{height:88px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;background:#fffaf8;position:sticky;top:0;z-index:20;border-bottom:1px solid #f0e5e9}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#7b3d69;color:#fff;font-family:"Playfair Display",serif;font-size:1.2rem}.brand strong,.brand small{display:block}.brand strong{font:600 1.3rem "Playfair Display",serif;color:#603650}.brand small{font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:#a47b91}.main-nav{display:flex;align-items:center;gap:26px;font-size:.85rem;color:#624d5a}.main-nav a:hover,.text-link:hover{color:#a14d7e}.main-nav .nav-cta{background:#7b3d69;color:white;padding:12px 19px;border-radius:30px}.menu-toggle{display:none;border:0;background:none;font-size:1.5rem;color:#7b3d69}.hero{min-height:620px;padding:75px max(8vw,30px) 80px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;position:relative;overflow:hidden;background:radial-gradient(ellipse at 82% 40%,#f7e9ef 0,transparent 42%),#fffaf8}.eyebrow,.section-kicker{font-size:.68rem;letter-spacing:.19em;font-weight:700;color:#a15d83}.hero h1,h2{font:600 clamp(2.8rem,5vw,4.7rem)/1.08 "Playfair Display",serif;letter-spacing:-.035em;margin:20px 0;color:#422d3c}.hero h1 em,h2 em{font-weight:500;color:#a3547e}.hero-copy>p{max-width:510px;color:#796b75;font-size:1.02rem;margin:25px 0 30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:0;border-radius:30px;padding:15px 23px;font-weight:700;font-size:.87rem;cursor:pointer;transition:.25s}.button-primary{background:#7b3d69;color:white;box-shadow:0 9px 25px #7b3d6926}.button:hover{transform:translateY(-3px);box-shadow:0 12px 25px #7b3d6930}.text-link{font-size:.85rem;font-weight:700;color:#79415f;border-bottom:1px solid #d8b8ca;padding-bottom:5px}.hero-note{margin-top:42px;color:#967e8d;font-size:.77rem}.hero-note span{color:#b05d88;font-size:1.1rem;margin-right:8px}.hero-visual{height:440px;position:relative;display:grid;place-items:center}.hero-photo{overflow:hidden;box-shadow:0 25px 65px #5a354526;border:10px solid white}.hero-photo-main{width:min(390px,90%);height:400px;transform:rotate(3deg);border-radius:48% 48% 18px 18px}.hero-photo img,.about-image img,.gallery-card img{width:100%;height:100%;object-fit:cover;display:block}.hero-sticker{position:absolute;top:24px;right:4%;width:92px;height:92px;border-radius:50%;background:#d9a6bb;color:white;display:grid;place-content:center;text-align:center;font:600 1.1rem/1.1 "Playfair Display",serif;transform:rotate(12deg);box-shadow:0 5px 20px #7b3d6920}.hero-caption{position:absolute;bottom:0;left:2%;background:white;padding:16px 25px;border-radius:4px;box-shadow:0 8px 30px #5a35451c;font:600 1.05rem/1.3 "Playfair Display",serif;color:#7b3d69}.hero-flower{position:absolute;color:#e4c3d3;font-size:5rem;opacity:.65}.flower-one{top:45px;left:4%}.flower-two{bottom:20px;right:4%;font-size:3rem}.intro-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#754064;color:white;padding:28px max(8vw,30px);gap:20px}.intro-strip>div{display:grid;grid-template-columns:40px 1fr;align-items:center;column-gap:12px;border-right:1px solid #ffffff30}.intro-strip>div:last-child{border:0}.intro-strip span{grid-row:span 2;color:#e8c5d7;font:1.3rem "Playfair Display",serif}.intro-strip strong{font:600 1.15rem "Playfair Display",serif}.intro-strip small{color:#e8d8e2;font-size:.75rem}.section{padding:110px max(8vw,30px)}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:center;margin-top:35px}.about-art{position:relative;padding:25px 35px 25px 0}.about-image{height:560px;border-radius:180px 180px 12px 12px;overflow:hidden;box-shadow:20px 20px 0 #f2e3eb}.about-image img{object-position:center}.round-seal{position:absolute;right:-10px;bottom:50px;background:#7b3d69;color:white;width:112px;height:112px;border-radius:50%;display:grid;place-content:center;text-align:center;font:1rem/1.25 "Playfair Display",serif;transform:rotate(10deg);border:5px solid #fffaf8}.about-spark{position:absolute;top:0;right:12%;font-size:4rem;color:#d5a2bc}.about-copy h2,.section-heading h2,.location-copy h2,.contact-intro h2{font-size:clamp(2.4rem,4vw,3.5rem)}.about-copy p{font-size:.91rem;color:#786c75;margin:13px 0}.about-copy .text-link{display:inline-block;margin-top:15px}.flavors-section{background:#f8eef3}.section-heading.centered{text-align:center}.section-heading>p{color:#82727d;font-size:.9rem}.flavor-panel{max-width:1050px;margin:45px auto 25px;background:#fff;border-radius:20px;padding:32px;display:grid;grid-template-columns:1.6fr .8fr;gap:30px;box-shadow:0 15px 45px #7540640d}.flavor-list{display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.flavor-item{border:0;border-bottom:1px solid #f0e4eb;background:transparent;padding:12px 2px;display:flex;justify-content:space-between;text-align:left;color:#594653;cursor:pointer}.flavor-item b{color:#b16e91;font-size:1.2rem;transition:.2s}.flavor-item:hover{color:#a14d7e}.flavor-item.active b{transform:rotate(45deg)}.flavor-aside{background:#f7eaf1;border-radius:14px;padding:28px;display:flex;flex-direction:column;justify-content:center}.aside-icon{font-size:2rem;color:#a14d7e}.flavor-aside h3{font:600 2rem/1.1 "Playfair Display",serif;margin:12px 0}.flavor-aside p,.detail-card p{font-size:.85rem;color:#806f7b}.flavor-aside a{font-weight:700;font-size:.83rem;color:#85476b;margin-top:10px}.details-grid{max-width:1050px;margin:25px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail-card{background:#fff;border-radius:14px;padding:25px 30px}.detail-card span,.size-card small{font-size:.67rem;letter-spacing:.14em;color:#a15d83;font-weight:700}.detail-card h3{font:600 1.4rem "Playfair Display",serif;margin:7px 0}.sizes-section{background:#fffaf8}.sizes-section .section-heading{text-align:center}.sizes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:40px 0 25px}.size-card{background:#fff;border:1px solid #f0e3ea;padding:28px 24px;border-radius:12px;position:relative;overflow:hidden}.size-card>span{color:#d4afc2;font:1.2rem "Playfair Display",serif}.size-card strong{display:block;font:600 1.65rem "Playfair Display",serif;margin:22px 0 0}.size-card small{letter-spacing:.04em;color:#907e8a}.size-line{height:4px;width:35px;background:#c48eaa;margin-top:20px;border-radius:4px}.size-note{text-align:center;color:#806e7a;font-size:.9rem}.gallery-section{background:#f8eef3}.gallery-grid{max-width:1100px;margin:45px auto 0;display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:260px 210px;gap:18px}.gallery-card{padding:0;border:0;border-radius:14px;overflow:hidden;position:relative;cursor:zoom-in;background:#eee}.gallery-card img{transition:transform .5s}.gallery-card:hover img{transform:scale(1.06)}.gallery-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#21131eaa)}.gallery-card span{position:absolute;z-index:1;bottom:18px;left:20px;color:white;text-align:left}.gallery-card b,.gallery-card small{display:block}.gallery-card b{font:600 1.2rem "Playfair Display",serif}.gallery-card small{font-size:.72rem}.gallery-large{grid-row:span 2}.gallery-placeholder{border:1px dashed #d8b7c9;border-radius:14px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#966781;background:#fff9fc}.gallery-placeholder span{font-size:2.1rem}.gallery-placeholder b{font:600 1.1rem "Playfair Display",serif}.gallery-placeholder small{font-size:.72rem;color:#a994a1}.gallery-hint{max-width:1100px;margin:18px auto 0;font-size:.76rem;color:#907e8a}.location-section{background:#fffaf8;padding-top:90px;padding-bottom:90px}.location-card{max-width:1100px;margin:auto;background:#754064;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;color:white;min-height:430px}.location-copy{padding:55px}.location-copy .section-kicker{color:#e8bfd4}.location-copy h2{color:white}.location-copy h2 em{color:#f1c5da}.location-copy>p{color:#eadce5;font-size:.9rem}.address{display:flex;gap:15px;margin:25px 0}.address>span{font-size:1.7rem;color:#f0c7dc}.address strong,.address small{display:block}.address small{font-size:.8rem;color:#e7d5e0;margin-top:4px}.button-light{background:#fff;color:#754064}.map-preview{position:relative;overflow:hidden;min-height:430px;background-color:#e8e6df;background-image:linear-gradient(32deg,transparent 45%,#fff 46%,#fff 49%,transparent 50%),linear-gradient(120deg,transparent 40%,#fff 41%,#fff 44%,transparent 45%),linear-gradient(80deg,transparent 68%,#d6dfd0 69%,#d6dfd0 87%,transparent 88%),linear-gradient(0deg,#e4e2d8 1px,transparent 1px),linear-gradient(90deg,#e4e2d8 1px,transparent 1px);background-size:100% 100%,100% 100%,100% 100%,42px 42px,42px 42px}.map-pin{position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;background:#a14d7e;border:6px solid white;border-radius:50% 50% 50% 0;rotate:-45deg;display:grid;place-items:center;color:white;font-size:1.2rem;box-shadow:0 5px 18px #382b3533}.map-pin:first-letter{rotate:45deg}.map-label{position:absolute;top:57%;left:50%;transform:translateX(-50%);background:white;color:#65465a;padding:8px 15px;border-radius:8px;font-weight:700;white-space:nowrap;box-shadow:0 5px 18px #382b3520}.map-label small{display:block;text-align:center;font-weight:400;font-size:.68rem}.map-road{position:absolute;background:#fff;opacity:.8}.road-a{width:120%;height:15px;top:22%;left:-10%;transform:rotate(18deg)}.road-b{width:15px;height:120%;left:24%;top:-10%;transform:rotate(21deg)}.road-c{width:120%;height:12px;top:77%;left:-10%;transform:rotate(-22deg)}.map-open{position:absolute;bottom:22px;right:24px;background:#fff;color:#754064;padding:10px 15px;border-radius:25px;font-size:.78rem;font-weight:700}.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;background:#f8eef3}.contact-intro>p{color:#7e6d79;font-size:.9rem;max-width:390px}.contact-method{display:flex;gap:14px;align-items:center;margin-top:25px}.contact-method>span{width:40px;height:40px;background:#fff;border-radius:50%;display:grid;place-items:center;color:#96557a}.contact-method strong,.contact-method small{display:block}.contact-method strong{font-size:.87rem}.contact-method small{font-size:.73rem;color:#927f8b}.contact-form{background:white;border-radius:18px;padding:35px;box-shadow:0 15px 45px #7540640c}.form-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:25px;flex-wrap:wrap}.form-top span{font-size:.72rem;letter-spacing:.14em;font-weight:700;color:#9c5c80}.form-top small{font-size:.72rem;color:#a18e9b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid label{font-size:.76rem;font-weight:700;color:#624e5b}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #eadde5;border-radius:8px;background:#fffdfd;color:#4e3b48;outline:none;font-size:.82rem}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#b27697;box-shadow:0 0 0 3px #b2769718}.form-grid textarea{resize:vertical;min-height:115px}.form-grid .full{grid-column:1/-1}.counter{display:block;text-align:right;font-size:.68rem;color:#a18e9b;font-weight:400;margin-top:4px}.submit-button{margin-top:20px}.form-privacy{font-size:.68rem;color:#a18e9b}.footer{background:#382b35;color:#f6eaf0;text-align:center;padding:55px 20px 25px}.footer-brand{justify-content:center}.footer-brand .brand-mark{background:#f4dce8;color:#754064}.footer-brand strong{color:white}.footer-brand small{color:#d6b5c7}.footer>p{font-size:.8rem;color:#c9b8c2;margin:20px 0}.footer-social{display:flex;justify-content:center;gap:25px;font-size:.8rem;color:#edc6d9}.copyright{display:block;border-top:1px solid #ffffff20;margin:35px auto 0;padding-top:20px;font-size:.7rem;color:#bbaab5}.floating-social{position:fixed;right:20px;bottom:22px;z-index:30;display:flex;flex-direction:column;gap:11px}.floating-social a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:white;box-shadow:0 5px 18px #30202b35;transition:.2s}.floating-social a:hover{transform:translateY(-4px) scale(1.04)}.floating-social svg{width:25px;height:25px}.float-whatsapp{background:#20bd68}.float-instagram{background:linear-gradient(135deg,#7751a8,#d34d82,#f0a24a)}.lightbox{position:fixed;inset:0;background:#170f19ed;z-index:50;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:min(90vw,900px);max-height:85vh;border-radius:10px;object-fit:contain}.lightbox-close{position:absolute;right:28px;top:15px;border:0;background:none;color:white;font-size:2.8rem;cursor:pointer}.gallery-card:focus-visible,.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #d59cba;outline-offset:3px}
@media(max-width:900px){.main-nav{gap:14px;font-size:.78rem}.hero{padding-top:55px}.about-grid{gap:6%}.contact-section{gap:5%}.location-copy{padding:40px}.gallery-grid{grid-template-rows:220px 180px}}
@media(max-width:700px){.site-header{height:75px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#fffaf8;padding:18px 25px 25px;box-shadow:0 15px 20px #382b3510;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:8px}.main-nav .nav-cta{text-align:center}.hero{grid-template-columns:1fr;padding:55px 25px 65px;gap:20px}.hero h1{font-size:3.2rem}.hero-visual{height:360px}.hero-photo-main{height:325px;width:78%}.intro-strip{grid-template-columns:1fr;padding:20px 30px;gap:15px}.intro-strip>div{border-right:0;border-bottom:1px solid #ffffff30;padding-bottom:12px}.intro-strip>div:last-child{padding:0}.section{padding:75px 25px}.about-grid{grid-template-columns:1fr;gap:45px}.about-art{max-width:430px;margin:auto;width:100%}.about-image{height:420px}.about-copy h2,.section-heading h2,.location-copy h2,.contact-intro h2{font-size:2.7rem}.flavor-panel{grid-template-columns:1fr;padding:20px}.flavor-list{column-gap:18px}.details-grid{grid-template-columns:1fr}.sizes-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 190px}.gallery-large{grid-row:span 2}.location-card{grid-template-columns:1fr}.location-copy{padding:38px 28px}.map-preview{min-height:300px}.contact-section{grid-template-columns:1fr;gap:35px}.contact-form{padding:25px 20px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-top{align-items:flex-start;flex-direction:column}.floating-social{right:12px;bottom:14px}.floating-social a{width:47px;height:47px}}
@media(max-width:420px){.hero h1{font-size:2.8rem}.hero-actions{gap:16px}.flavor-list{grid-template-columns:1fr}.sizes-grid{gap:10px}.size-card{padding:20px 17px}.gallery-grid{grid-template-rows:210px 170px;gap:10px}.gallery-card b{font-size:1rem}.gallery-placeholder{text-align:center;padding:8px}.gallery-placeholder b{font-size:.9rem}.about-image{height:360px}}
