@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{
 --ivory:#FAF7F1;--sand:#F1E8DB;--walnut:#372B27;--graphite:#514A44;--wine:#89273B;--green:#285B46;--copper:#C45A3E;--gold:#B18B4A;--mustard:#F5E8CC;--border:#DED2C3;--white:#FFFFFF;--wine-hover:#6E1D2F;
 --font-display:'Cormorant Garamond',Georgia,serif;--font-body:Inter,Arial,sans-serif;
 --content-width:1330px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);font-family:var(--font-body);color:var(--graphite);font-size:15px;line-height:1.5}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
button,input,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.container{width:min(var(--content-width),calc(100% - 48px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.icons-library{position:absolute;overflow:hidden;width:0;height:0;pointer-events:none}
.icon{display:inline-block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;border-radius:7px;padding:12px 20px;border:1px solid transparent;font:600 14px/1.2 var(--font-body);text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:var(--wine);color:var(--white)}.btn--primary:hover{background:var(--wine-hover)}
.btn--whatsapp{background:var(--green);color:white}.btn--whatsapp:hover{background:#204a39}
.btn--outline{background:var(--ivory);border:1px solid var(--wine);color:var(--wine)}.btn--outline:hover{background:#f8e9e5}

/* Header */
.site-header{position:relative;z-index:50;background:linear-gradient(180deg,#fbf8f2 0%,#f7f2e9 100%);border-bottom:2px solid var(--gold);overflow:visible}
.site-header__decoration{position:absolute;left:0;top:0;width:94px;height:80px;object-fit:cover;object-position:center;opacity:.13;pointer-events:none;clip-path:inset(0 0 0 0)}
.site-header__inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:82px}
.brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none;flex:none;min-width:0}
.brand__leaf{width:56px;height:56px;object-fit:contain;flex:none}
.brand__type{display:flex;flex-direction:column;min-width:0}
.brand__name{font:700 clamp(29px,2.85vw,46px)/.9 var(--font-display);letter-spacing:.01em;color:var(--walnut);white-space:nowrap}
.brand__sub{font:600 11px/1.35 var(--font-body);letter-spacing:.38em;color:#5f6677;margin-top:6px;padding-left:3px;white-space:nowrap}
.site-navigation{display:flex;align-items:center;gap:clamp(22px,2.8vw,40px)}
.nav-link,.nav-pending{position:relative;padding:10px 0 12px;font:600 14px/1.4 var(--font-body);color:#143d8a;text-decoration:none;white-space:nowrap;transition:color .15s ease}
.nav-link:hover,.nav-link[aria-current="page"]{color:#d08a00}
.nav-link[aria-current="page"]::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:4px;border-radius:999px;background:#d08a00}
.nav-pending{opacity:.75;cursor:default}
.menu-toggle{display:none;appearance:none;background:none;border:1px solid var(--border);padding:9px;border-radius:6px;color:var(--walnut)}
.menu-toggle span{display:block;width:23px;height:2px;margin:4px;background:currentColor}

/* Footer */
.site-footer{position:relative;margin-top:0;color:var(--ivory);background:linear-gradient(90deg,#3a2318 0%,#5c3827 20%,#6b432d 52%,#5a3726 80%,#3a2318 100%);border-top:1px solid rgba(177,139,74,.65);overflow:hidden}
.site-footer__decoration{position:absolute;top:6px;width:120px;height:120px;object-fit:contain;opacity:.13;pointer-events:none;filter:brightness(.9) sepia(.8) saturate(.7)}
.site-footer__decoration--left{left:-12px;transform:scaleX(-1) rotate(-10deg)}
.site-footer__decoration--right{right:-12px;transform:rotate(10deg)}
.site-footer__top{position:relative;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px;align-items:center;padding:16px 0 14px}
.site-footer__brand{display:flex;align-items:center;gap:14px;min-width:0}
.site-footer__brand img{width:54px;height:54px;object-fit:contain;flex:none}
.site-footer__name{font:600 clamp(26px,2.3vw,36px)/.95 var(--font-display);letter-spacing:.01em;color:var(--ivory);white-space:nowrap}
.site-footer__sub{font:500 10px/1.4 var(--font-body);letter-spacing:.32em;color:#f3e9db;padding-left:2px;white-space:nowrap}
.site-footer__info{min-height:64px;padding-left:26px;border-left:1px solid rgba(255,255,255,.28)}
.site-footer__info--address{display:flex;align-items:flex-start;gap:12px}
.site-footer__icon{font-size:30px;line-height:1;color:#e2b746;margin-top:1px;flex:none}
.site-footer__label{font:600 15px/1.15 var(--font-body);color:#fff;margin:0 0 4px}
.site-footer__copy p{margin:0;font-size:13px;line-height:1.45;color:#f2e9de;max-width:290px}
.site-footer__info--contact{display:flex;flex-direction:column;justify-content:center;gap:8px}
.site-footer__line{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.4;color:#fff}
.site-footer__line .icon{color:#2ed06a}
.site-footer__bottom{position:relative;display:flex;justify-content:center;align-items:center;padding:0 0 16px}
.site-footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:0}
.site-footer__nav a,.site-footer__nav .nav-link,.site-footer__nav .nav-pending{font:500 13px/1.35 var(--font-body);text-decoration:none;color:#fff;padding:0 18px;position:relative}
.site-footer__nav a + a::before,.site-footer__nav .nav-link + .nav-link::before,.site-footer__nav .nav-link + .nav-pending::before,.site-footer__nav .nav-pending + .nav-link::before,.site-footer__nav .nav-pending + .nav-pending::before{content:'';position:absolute;left:0;top:50%;width:1px;height:18px;background:rgba(255,255,255,.32);transform:translateY(-50%)}
.site-footer__nav a:hover,.site-footer__nav .nav-link:hover,.site-footer__nav .nav-link[aria-current="page"]{color:#f4d38a}

@media(max-width:980px){
 .site-header__inner{min-height:76px;gap:20px}
 .brand__leaf{width:50px;height:50px}
 .brand__name{font-size:32px}
 .brand__sub{font-size:10px;letter-spacing:.32em}
 .site-navigation{gap:22px}
 .site-footer__top{grid-template-columns:1fr;gap:16px}
 .site-footer__info{border-left:0;padding-left:0;min-height:auto}
 .site-footer__bottom{justify-content:flex-start}
 .site-footer__nav{justify-content:flex-start}
 .site-footer__nav a:first-child,.site-footer__nav .nav-link:first-child,.site-footer__nav .nav-pending:first-child{padding-left:0}
}
@media(max-width:800px){
 .container{width:calc(100% - 30px)}
 .menu-toggle{display:block}
 .site-navigation{display:none;position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--ivory);border-bottom:2px solid var(--gold);padding:12px 24px 20px;box-shadow:0 12px 18px rgba(56,41,34,.11);flex-direction:column;align-items:flex-start;gap:0}
 .site-navigation.is-open{display:flex}
 .site-navigation .nav-link,.site-navigation .nav-pending{padding:11px 0}
 .site-navigation .nav-link[aria-current=page]::after{bottom:5px;right:auto;width:32px}
}
@media(max-width:640px){
 .site-header__decoration{width:75px;height:70px;left:0;top:0}
 .site-header__inner{min-height:72px}
 .brand{gap:10px}
 .brand__leaf{width:44px;height:44px}
 .brand__name{font-size:24px}
 .brand__sub{font-size:8px;letter-spacing:.26em;margin-top:4px}
 .site-footer__decoration{display:none}
 .site-footer__name{font-size:28px}
 .site-footer__sub{font-size:9px;letter-spacing:.24em}
 .site-footer__nav{gap:10px 0}
 .site-footer__nav a,.site-footer__nav .nav-link,.site-footer__nav .nav-pending{padding:0 12px 0 0}
 .site-footer__nav a + a::before,.site-footer__nav .nav-link + .nav-link::before,.site-footer__nav .nav-link + .nav-pending::before,.site-footer__nav .nav-pending + .nav-link::before,.site-footer__nav .nav-pending + .nav-pending::before{display:none}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Retained shared components from the original site (not header/footer-specific). */
.btn svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn--outline-green{color:var(--green);background:var(--ivory);border-color:var(--green)}
.btn--outline-green:hover{background:#E9F0EA}
.btn-icon{display:inline-block;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.section-frame{border-bottom:3px solid #e7c574;position:relative}
.eyebrow{font:700 11px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:#8b2b2f;margin:0 0 4px}
h2{font:700 clamp(29px,2.45vw,37px)/.98 var(--font-display);letter-spacing:-.024em;color:#70252a;margin:0}
.section-lead{font-size:14px;color:#57769c;line-height:1.32;margin:4px 0}
@media(max-width:700px){.eyebrow{font-size:10px}h2{font-size:29px}.section-lead{font-size:13px}}
@media(min-width:800px) and (max-width:1100px){h2{font-size:29px}.section-lead{font-size:12px}}
