:root{--ink:#3d3032;--muted:#76686a;--pink:#d67f98;--pink-dark:#b95f7b;--blush:#f5dfe4;--cream:#fffaf7;--gold:#b59465;--white:#fff;--line:#eadadd;--shadow:0 20px 50px rgba(73,43,50,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(20px,5vw,72px);color:#fff}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.04em}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;font-family:'Playfair Display',serif;font-size:24px}.brand small{display:block;font-size:9px;letter-spacing:.28em}.nav{display:flex;align-items:center;gap:30px;font-size:14px}.nav a{opacity:.9}.nav-cta{border:1px solid rgba(255,255,255,.65);padding:11px 18px;border-radius:999px}.menu-toggle{display:none;background:none;border:0;color:#fff}.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(34,23,27,.72) 0%,rgba(34,23,27,.36) 52%,rgba(34,23,27,.08) 100%)}.hero-content{position:relative;z-index:2;max-width:780px;padding:150px clamp(22px,8vw,130px) 90px;color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:700;color:var(--pink-dark);margin:0 0 14px}.hero .eyebrow{color:#f4ced8}.hero h1,.section h2{font-family:'Playfair Display',serif;line-height:1.05;margin:0}.hero h1{font-size:clamp(48px,7vw,92px);font-weight:600}.hero-content>p:not(.eyebrow){font-size:clamp(17px,2vw,22px);max-width:650px;opacity:.93}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 24px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:.2s}.btn-primary{background:var(--pink);color:white}.btn-primary:hover{background:var(--pink-dark);transform:translateY(-2px)}.btn-ghost{border-color:rgba(255,255,255,.75);color:#fff}.btn-outline{border-color:var(--pink);color:var(--pink-dark)}.scroll-cue{position:absolute;z-index:2;bottom:28px;left:50%;color:#fff;font-size:28px;animation:bounce 1.8s infinite}@keyframes bounce{50%{transform:translateY(8px)}}.section{padding:110px clamp(22px,7vw,110px)}.intro,.process,.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(45px,7vw,110px);align-items:center}.intro-image img,.process-image img{height:min(720px,75vw);object-fit:cover;border-radius:220px 220px 24px 24px;box-shadow:var(--shadow)}.intro-copy h2,.process-copy h2,.contact-copy h2{font-size:clamp(42px,5vw,70px)}.intro-copy>p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:18px;color:var(--muted)}.signature{font-family:'Playfair Display',serif;font-style:italic;font-size:24px;color:var(--pink-dark);margin:28px 0}.text-link{font-weight:700;color:var(--pink-dark)}.section-heading{max-width:760px;margin:0 auto 55px;text-align:center}.section-heading h2{font-size:clamp(42px,5vw,68px)}.section-heading>p:last-child{color:var(--muted);font-size:18px}.services{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1250px;margin:auto}.service-card{position:relative;min-height:480px;overflow:hidden;border-radius:28px}.service-card img{height:100%;object-fit:cover;transition:.5s}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(42,28,32,.75),transparent 65%)}.service-card>div{position:absolute;z-index:2;left:30px;right:30px;bottom:24px;color:white}.service-card span{font-family:'Playfair Display',serif;font-size:20px}.service-card h3{font-family:'Playfair Display',serif;font-size:34px;margin:4px 0}.service-card p{margin:0;max-width:420px}.service-card:hover img{transform:scale(1.03)}.quote-banner{min-height:470px;background:url('assets/images/gifts.webp') center/cover fixed;display:grid;place-items:center;position:relative}.quote-banner:before{content:"";position:absolute;inset:0;background:rgba(52,32,38,.62)}.quote-inner{position:relative;color:#fff;text-align:center;padding:30px}.quote-inner p{font-family:'Playfair Display',serif;font-size:clamp(42px,6vw,78px);font-style:italic;margin:0}.quote-inner span{letter-spacing:.22em;text-transform:uppercase;font-size:12px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1250px;margin:auto}.package-card{padding:40px 34px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 40px rgba(70,40,47,.06)}.package-card.featured{background:var(--blush);transform:translateY(-18px);border-color:#e5b8c4}.package-label{display:inline-block;color:var(--pink-dark);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.package-card h3{font-family:'Playfair Display',serif;font-size:38px;margin:10px 0}.package-card>p{color:var(--muted)}.package-card ul{list-style:none;padding:0;margin:26px 0}.package-card li{padding:9px 0 9px 24px;position:relative;border-bottom:1px solid var(--line)}.package-card li:before{content:"✓";position:absolute;left:0;color:var(--pink-dark)}.price{min-height:52px}.process{background:#fff}.process-image img{border-radius:24px 220px 220px 24px}.process-copy ol{list-style:none;padding:0;margin:38px 0}.process-copy li{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.process-copy li>span{font-family:'Playfair Display',serif;font-size:26px;color:var(--pink-dark)}.process-copy h3{margin:0;font-size:20px}.process-copy p{margin:4px 0 0;color:var(--muted)}.gallery{background:#f7ecef}.gallery-grid{max-width:1250px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:420px 420px;gap:18px}.gallery-grid figure{margin:0;overflow:hidden;border-radius:22px}.gallery-grid img{height:100%;object-fit:cover;transition:.5s}.gallery-grid figure:hover img{transform:scale(1.025)}.g1{grid-row:1/3}.g4{display:none}.testimonial{background:#fff;padding-top:80px;padding-bottom:80px}.testimonial-card{max-width:900px;text-align:center;margin:auto}.stars{color:var(--gold);letter-spacing:.3em}.testimonial blockquote{font-family:'Playfair Display',serif;font-size:clamp(30px,4vw,50px);line-height:1.3;margin:24px 0}.testimonial p{color:var(--muted)}.faq-list{max-width:920px;margin:auto;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{cursor:pointer;list-style:none;padding:24px 4px;font-weight:700;font-size:18px;display:flex;justify-content:space-between}summary:after{content:"+";color:var(--pink-dark);font-size:24px}details[open] summary:after{content:"–"}details p{color:var(--muted);padding:0 4px 24px;margin:0}.contact{background:#3d3032;color:#fff}.contact .eyebrow{color:#f0b9c6}.contact-copy>p:not(.eyebrow){color:#e0d6d8}.contact-links{display:grid;gap:12px;margin-top:28px}.contact-links a{font-weight:700}.contact-form{background:#fff;color:var(--ink);padding:34px;border-radius:26px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:grid;gap:7px;margin-bottom:15px;font-weight:600;font-size:14px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:#fff}.contact-form textarea{resize:vertical}.contact-form .btn{width:100%;border:0}.form-note{font-size:12px;color:var(--muted);text-align:center;margin-bottom:0}footer{padding:60px clamp(22px,7vw,110px);background:#2d2326;color:#fff;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.footer-brand{grid-row:1/3}footer p{margin:0;text-align:right;color:#d8cacc}footer>div{display:flex;gap:18px;justify-content:flex-end}footer>small{grid-column:1/3;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;color:#bcaeb2}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:20;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-size:24px;box-shadow:0 10px 25px rgba(0,0,0,.2)}.reveal{opacity:0;transform:translateY(28px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{position:absolute}.menu-toggle{display:block;z-index:2}.menu-toggle span{display:block;width:26px;height:2px;background:currentColor;margin:6px}.nav{display:none;position:absolute;top:76px;right:20px;flex-direction:column;align-items:flex-start;background:#fff;color:var(--ink);padding:24px;border-radius:16px;box-shadow:var(--shadow);min-width:220px}.nav.open{display:flex}.intro,.process,.contact{grid-template-columns:1fr}.intro-image{order:2}.intro-image img,.process-image img{height:620px}.service-grid{grid-template-columns:1fr}.package-grid{grid-template-columns:1fr}.package-card.featured{transform:none}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 360px}.g1{grid-column:1/3;grid-row:auto}.gallery-grid .g4{display:block}.field-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;text-align:center}.footer-brand{grid-row:auto;justify-content:center}footer p{text-align:center}footer>div{justify-content:center}footer>small{grid-column:auto}}
@media(max-width:600px){.hero-content{padding-top:130px}.hero h1{font-size:50px}.section{padding:80px 20px}.intro-image img,.process-image img{height:470px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:none}.g1{grid-column:auto}.gallery-grid figure{height:330px}.quote-banner{background-attachment:scroll}.contact-form{padding:24px 18px}.service-card{min-height:420px}}

/* Language switcher and location */
.language-toggle{border:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.10);color:inherit;border-radius:999px;padding:9px 13px;font-weight:700;letter-spacing:.08em;cursor:pointer;line-height:1;transition:.2s}
.language-toggle:hover{background:#fff;color:var(--ink)}
.footer-location{grid-column:1/3;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.footer-location p{font-weight:700;color:#fff;text-align:left}
.footer-location a{color:#f3d7df;text-decoration:underline;text-underline-offset:4px}
.footer-location a:hover{color:#fff}
@media(max-width:900px){.language-toggle{border-color:var(--pink);color:var(--pink-dark);background:var(--blush)}.footer-location{grid-column:auto;flex-direction:column;gap:6px}.footer-location p{text-align:center}}
