:root{--wine:#760f0d;--ink:#512517;--gold:#a46520;--peach:#ffe6cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);font-family:Georgia,'Times New Roman',serif;background:radial-gradient(ellipse at 25% 12%,#fff0d7a8,transparent 45%),radial-gradient(ellipse at 80% 50%,#f4b78e66,transparent 55%),linear-gradient(120deg,#f8d0ae,#ffe5cd 48%,#f7c7ab);line-height:1.4}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #76200f;outline-offset:5px}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}.skip{position:absolute;left:1rem;top:-80px;background:var(--peach);padding:12px;z-index:100}.skip:focus{top:12px}.art{display:block;width:100%;aspect-ratio:var(--w)/var(--h);background-image:url('assets/approved-artwork.png');background-repeat:no-repeat;background-size:calc(1536 / var(--w) * 100%) calc(1024 / var(--h) * 100%);background-position:calc(var(--x) / (1536 - var(--w)) * 100%) calc(var(--y) / (1024 - var(--h)) * 100%)}.leaves{position:absolute;top:0;bottom:0;width:clamp(55px,12vw,180px);min-height:100%;z-index:-1;background-image:url('assets/approved-artwork.png');background-size:auto 1024px;opacity:.68;pointer-events:none;mask-image:linear-gradient(to right,#000 40%,transparent)}.leaves-left{left:0;background-position:left top}.leaves-right{right:0;background-position:right top;mask-image:linear-gradient(to left,#000 40%,transparent)}body{position:relative;isolation:isolate}header,main,footer{max-width:1320px;margin:auto}header{padding:12px 55px 0}nav{display:grid;grid-template-columns:1fr 210px 1fr;align-items:center;gap:32px}.nav-group{display:flex;justify-content:space-around;align-items:center;gap:18px;border-block:1px solid #bc7c3b;padding:11px 0}.nav-group a{text-transform:uppercase;text-decoration:none;font-size:14px;white-space:nowrap}.nav-group a:hover{text-decoration:underline;text-underline-offset:5px}.brand{display:block;width:210px}.hero{display:grid;grid-template-columns:46% 54%;align-items:center;margin:0 44px}.hero-copy{padding:0 20px 20px 50px;position:relative;z-index:1}.hero h1{font-size:52px;line-height:1.05;color:var(--wine);margin:0;font-weight:500}.hero h1 em{display:block;font-family:'Snell Roundhand','Apple Chancery','Palatino Linotype',cursive;font-size:65px;white-space:nowrap;font-weight:400;color:#995018;margin:0 0 0 -35px}.hero p{font-size:18px;line-height:1.3;max-width:470px;margin:0 0 22px}.hero-image{mask-image:linear-gradient(to right,transparent,#000 15%,#000 95%,transparent);border-radius:14px}.flourish{color:var(--gold);text-align:center;letter-spacing:5px;margin:8px 0}.cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;text-transform:uppercase;text-decoration:none;background:linear-gradient(#a92816,#790b09);color:#fff0d8;border:2px solid #c88a2a;border-radius:30px;padding:9px 21px;box-shadow:0 2px 4px #813c2935;font-size:15px}.cta span{border:1px solid #e9b74e;border-radius:50%;line-height:21px;width:23px;text-align:center;font-size:23px}.cta:hover{background:#68100a}h2{font-size:29px;text-transform:uppercase;color:var(--wine);font-weight:500;line-height:1.2;text-align:center;margin:0}h2:before,h2:after{content:'❧';display:inline-block;color:var(--gold);font-size:31px;margin:0 22px}h2:after{transform:scaleX(-1)}.subtitle{text-align:center;margin:0 0 12px;font-size:17px}.services-section{padding:6px 55px 12px;background:linear-gradient(90deg,transparent,#ffe6cc70,transparent)}.services{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.service{position:relative;text-align:center}.service-trigger{background:none;border:0;padding:0 3px;width:100%;color:#542311;text-transform:uppercase;line-height:1.15;font-size:16px}.service-trigger .art{width:80px;margin:0 auto 3px;border-radius:50%}.service-trigger>span:last-child{display:block;max-width:165px;margin:auto}.service-trigger:hover>span:last-child,.service-trigger[aria-expanded=true]>span:last-child{text-decoration:underline;text-underline-offset:4px;color:var(--wine)}.service>p{font-size:14px;line-height:1.25;margin:5px auto 0;max-width:155px}.flyout{position:absolute;top:10px;left:calc(100% + 10px);width:330px;max-height: min(580px,80vh);overflow:auto;z-index:20;padding:26px 25px 24px;background:linear-gradient(135deg,#fff0de,#fbd5bc);border:1px solid #b57b31;border-radius:8px;box-shadow:0 10px 35px #71382640;text-align:left}.service[data-direction=left] .flyout{left:auto;right:calc(100% + 10px)}.flyout h3{font-size:23px;line-height:1.15;color:var(--wine);text-align:center;margin:14px 0}.flyout p{font-size:16px;line-height:1.5;margin:12px 0 20px}.close{position:absolute;top:4px;right:4px;width:36px;height:36px;font-size:28px;border:0;background:transparent;color:var(--wine)}.quote-link{color:var(--wine);font-size:16px;text-underline-offset:4px}#galeria{padding:0 34px}.gallery{display:flex;gap:12px;align-items:center}.gallery-track{list-style:none;display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0;padding:5px 2px 8px;flex:1}.gallery-track::-webkit-scrollbar{display:none}.gallery-track li{flex:0 0 calc((100% - 30px)/4);scroll-snap-align:start;border:2px solid #ffe9d3;box-shadow:0 2px 4px #6b291c66}.round{border:1px solid #d79631;background:#850e08;color:#ffead0;border-radius:50%;width:36px;height:36px;flex-shrink:0;font-size:30px;line-height:28px}.gallery-note{text-align:center;margin:4px 0 13px;font-size:13px;color:#77412b;font-style:italic}.bottom{display:grid;grid-template-columns:1.7fr 1fr;gap:36px;margin:0 65px}.bottom p{text-align:center;font-size:16px;margin:0}.bottom #nosotros{padding-top:12px}.bottom h2{font-size:27px}.bottom #contacto{padding:12px 18px 16px;border:1px solid #c28b4b;border-radius:6px;background:#ffe4c966;text-align:center}.bottom #contacto h2{font-size:19px;margin:0 0 6px}.bottom #contacto h2:before,.bottom #contacto h2:after{content:none}#contacto>a:not(.cta){display:block;margin:5px auto;text-decoration:none;font-size:17px}#contacto>a:hover{text-decoration:underline}#contacto .cta{margin-top:8px}.email{overflow-wrap:anywhere}footer{padding:24px;text-align:center;font-size:12px;color:#78472f}
@media(min-width:1500px){header,main,footer{max-width:1460px}.gallery-track li{flex-basis:calc((100% - 50px)/6)}.hero h1{font-size:58px}.hero h1 em{font-size:76px}}
@media(max-width:1100px){header{padding-inline:25px}nav{gap:15px;grid-template-columns:1fr 155px 1fr}.brand{width:155px}.nav-group{flex-wrap:wrap;gap:9px}.nav-group a{font-size:12px}.hero{margin:10px 25px}.hero-copy{padding-left:15px}.hero h1{font-size:42px}.hero h1 em{font-size:49px;margin-left:0}.hero p{font-size:16px}.services-section{padding-inline:30px}.services{gap:8px}.service-trigger{font-size:14px}.service>p{font-size:13px}.flyout{width:300px}.bottom{margin-inline:30px;gap:20px}h2:before,h2:after{margin-inline:10px}.bottom h2{font-size:24px}}
@media(max-width:760px){header{padding:10px 18px}nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.brand{order:-1;width:185px;flex-basis:185px;margin:0 calc((100% - 185px)/2)}.nav-group{border:0;padding:3px 0;gap:15px}.nav-group a{font-size:12px}.hero{display:flex;flex-direction:column;margin:8px 22px 15px}.hero-copy{text-align:center;padding:0}.hero h1{font-size:43px}.hero h1 em{font-size:49px;white-space:normal}.hero p{font-size:17px;margin:0 auto 17px;max-width:480px}.hero-image{margin-top:20px;width:100%;max-width:570px}.services-section{padding:8px 23px 22px}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.service-trigger{font-size:16px}.service>p{font-size:14px}.service-trigger .art{width:76px}h2{font-size:25px}h2:before,h2:after{font-size:23px;margin-inline:8px}.subtitle{font-size:16px}.flyout,.service[data-direction=left] .flyout{position:fixed;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;box-shadow:0 0 0 100vmax #542b214d,0 10px 35px #71382640}.flyout .close{width:44px;height:44px}.gallery-track li{flex-basis:calc((100% - 10px)/2)}#galeria{padding-inline:12px}.gallery{gap:6px}.round{width:34px;height:34px}.bottom{grid-template-columns:1fr;margin:4px 24px;gap:25px}.bottom p{font-size:17px}.bottom h2{font-size:24px}.bottom #contacto{padding:18px 12px}.leaves{width:60px;opacity:.45}footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-track{scroll-behavior:auto}}
/* Keep the decorative edge viewport outside the original page controls. */
.leaves{width:min(6vw,90px)}
.hero-image{mask-image:linear-gradient(to right,transparent,#000 15%,#000 94%,transparent);clip-path:inset(3px 0 0)}

/* Approved hero alignment: one centerline for heading, ornament and CTA. */
.hero-copy{text-align:center}
.hero h1 em{margin-left:0}
.hero .flourish{font-size:23px;line-height:1.2;letter-spacing:6px;width:fit-content;max-width:100%;margin:10px auto 12px;padding-left:6px;white-space:nowrap}
.hero p{margin-left:auto;margin-right:auto}
@media(max-width:380px){.hero h1{font-size:38px}.hero h1 em{font-size:42px;white-space:nowrap}}
