:root{--wine:#731725;--ink:#24191a;--cream:#fbf6ef;--sand:#e9d6ba;--gold:#b98a49;--muted:#6c5c59}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.12;margin:0 0 18px}h2{font-size:clamp(2.2rem,4vw,4rem)}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:12px;top:12px;background:white;padding:10px;z-index:5}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,6vw,88px);background:#fffdf9;position:sticky;top:0;z-index:10;border-bottom:1px solid #eadfd3}.brand{display:flex;gap:10px;align-items:center;font-family:'Playfair Display',serif;font-size:1.18rem;line-height:1.05}.brand small{display:block;font:500 .66rem 'DM Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-top:5px}.brand-mark{font-size:1.9rem;color:var(--wine)}nav{display:flex;gap:25px;font-size:.9rem;font-weight:600}nav a:hover,.text-link{color:var(--wine)}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem}.hero{min-height:620px;background:var(--wine);color:white;display:grid;grid-template-columns:1.1fr .9fr;position:relative;overflow:hidden}.hero-copy{padding:clamp(70px,11vw,150px) clamp(25px,8vw,130px);z-index:1;align-self:center}.hero-pattern{position:absolute;width:600px;height:600px;left:-240px;top:-260px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 55px #ffffff0a,0 0 0 110px #ffffff08}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:700;margin:0 0 18px}.gold{color:var(--gold)}h1{font-size:clamp(3.1rem,6vw,6.2rem);letter-spacing:-.055em}h1 em{color:#efc97f;font-style:italic}.hero-text{max-width:520px;font-size:1.1rem;color:#f3dfe1}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 22px;border-radius:2px;font-weight:700;font-size:.9rem;transition:.2s}.button-light{background:#fff;color:var(--wine)}.button-outline{border:1px solid #ffffff80;color:white}.button:hover{transform:translateY(-2px)}.hero-image{margin:clamp(35px,7vw,92px) clamp(25px,8vw,130px) clamp(35px,7vw,92px) 0;min-height:430px}.placeholder-photo{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:linear-gradient(145deg,#d9b98b,#886848);color:#fff;letter-spacing:.12em;font-size:.8rem;position:relative;overflow:hidden}.placeholder-photo:before{content:'✦';font-size:3rem;opacity:.65;margin-bottom:10px}.placeholder-photo small{letter-spacing:0;text-transform:none;margin-top:7px;opacity:.9}.intro,.contact{max-width:1250px;margin:auto;padding:clamp(72px,10vw,140px) clamp(24px,7vw,92px);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(35px,10vw,160px)}.intro p{margin-top:0;color:var(--muted)}.text-link{font-weight:700;display:inline-block;margin-top:8px}.text-link span{margin-left:8px}.section{padding:clamp(72px,9vw,125px) clamp(24px,7vw,92px)}.services{background:#f0e4d3}.section-heading{max-width:700px;margin:0 auto 46px;text-align:center}.section-heading>p:last-child{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1250px;margin:auto;gap:1px;background:#d5bfa0}.service-grid article{padding:30px;background:#f8f0e5}.service-grid span{font:700 .8rem 'DM Sans';color:var(--gold)}.service-grid h3{font-size:1.5rem;margin-top:30px}.service-grid p{font-size:.93rem;color:var(--muted)}.gallery{max-width:1400px;margin:auto}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:230px;gap:14px}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.videos{background:var(--ink);color:white}.videos .section-heading>p:last-child{color:#d8c7c1}.video-grid{max-width:1100px;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:auto}.video-placeholder{min-height:280px;background:linear-gradient(130deg,#684d45,#352625);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.video-placeholder span{width:55px;height:55px;line-height:55px;text-align:center;border:1px solid #fff;border-radius:50%;font-size:1.2rem}.video-placeholder small{color:#e0d0c9}.testimonials{max-width:1350px;margin:auto}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.testimonial-grid blockquote{margin:0;background:white;padding:28px;border-top:3px solid var(--gold);font-family:'Playfair Display',serif;font-size:1.15rem}.testimonial-grid cite{display:block;margin-top:20px;font:600 .76rem 'DM Sans';font-style:normal;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.contact{align-items:center}.contact>div>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.contact-card{background:var(--wine);padding:36px;color:white;display:grid;gap:20px}.contact-card a:not(.button){display:flex;flex-direction:column;gap:2px;word-break:break-word}.contact-card b{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#e6bf75}.contact-card span{font-size:.94rem}.button-dark{background:#f2d297;color:var(--ink);margin-top:6px}footer{background:#1e1415;color:#fff;padding:42px clamp(24px,7vw,92px);display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;font-size:.82rem}footer p{margin:0;color:#cdbdb9}.whatsapp-float{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:50%;background:#25d366;color:white;display:grid;place-items:center;font-size:30px;box-shadow:0 8px 25px #0004;z-index:4}@media(max-width:780px){.site-header{height:70px;padding:0 20px}.menu-toggle{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fffdf9;padding:20px;flex-direction:column;border-bottom:1px solid #eadfd3}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding-top:75px}.hero-image{min-height:300px;margin:0 25px 50px}.intro,.contact{grid-template-columns:1fr;gap:26px}.service-grid,.testimonial-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-auto-rows:160px;grid-template-columns:1fr 1fr}.gallery-item.wide{grid-column:span 1}.video-grid{grid-template-columns:1fr}.video-placeholder{min-height:220px}}@media(max-width:480px){.service-grid,.testimonial-grid{grid-template-columns:1fr}.gallery-grid{grid-auto-rows:140px}.gallery-item.tall{grid-row:span 1}footer{align-items:flex-start;flex-direction:column}}
