:root{--cream:#f3eddf;--paper:#faf7ef;--ink:#183f35;--terracotta:#c85536;--mustard:#e0ad39;--white:#fff;--font-display:'Fraunces',Georgia,serif;--font-body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:82px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-size:1.35rem;font-weight:700}.brand img{border-radius:50%;object-fit:cover}.site-header nav{display:flex;align-items:center;gap:clamp(22px,3vw,44px);font-size:.88rem;font-weight:600}.site-header nav>a:not(.nav-cta){position:relative}.site-header nav>a:not(.nav-cta):after{content:'';position:absolute;left:0;right:100%;bottom:-4px;height:2px;background:var(--terracotta);transition:.2s}.site-header nav>a:hover:after{right:0}.nav-cta{padding:12px 19px;border:1px solid var(--ink);transition:.2s}.nav-cta:hover{background:var(--ink);color:white}.menu-toggle{display:none;background:transparent;border:0;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:var(--ink);margin:5px}.hero{height:calc(100svh - 82px);min-height:620px;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('imagenes/entrada principal.jpg') center 52%/cover no-repeat;transform:scale(1.015);animation:settle 1.5s ease-out forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,31,26,.78) 0%,rgba(10,31,26,.38) 55%,rgba(10,31,26,.15)),linear-gradient(0deg,rgba(10,22,18,.35),transparent 60%)}.hero-content{position:relative;width:min(1260px,90%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.73rem;font-weight:600;margin:0 0 18px}.eyebrow.dark{color:var(--terracotta)}h1,h2{font-family:var(--font-display);line-height:.98;letter-spacing:-.035em;margin:0}h1{font-size:clamp(4rem,8.3vw,8rem);max-width:900px}h1 em{color:#f1b944;font-style:italic}.hero-copy{font-size:clamp(1rem,1.5vw,1.25rem);max-width:520px;margin:26px 0 32px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:10px;padding:15px 21px;font-size:.84rem;font-weight:600;border:1px solid transparent;transition:.2s}.button-primary{background:var(--terracotta);color:white}.button-primary:hover{background:#ab4229}.button-ghost{border-color:rgba(255,255,255,.7)}.button-ghost:hover{background:#fff;color:var(--ink)}.scroll-cue{position:absolute;right:5%;bottom:32px;text-transform:uppercase;letter-spacing:.16em;font-size:.63rem;display:flex;align-items:center;gap:10px}.scroll-cue span{width:42px;height:1px;background:white}.section{padding:clamp(80px,10vw,150px) max(5vw,24px)}.intro{display:grid;grid-template-columns:.2fr 1.2fr 1fr;gap:6vw;align-items:start;background:var(--cream)}.intro-mark{color:var(--terracotta);font-size:2.3rem}.intro h2,.gallery-section h2,.visit h2{font-size:clamp(3rem,5.5vw,6rem)}.intro-copy{padding-top:38px;font-size:1.05rem}.intro-copy p:first-child{font-size:1.2rem}.gallery-section{padding:clamp(80px,9vw,130px) max(5vw,24px);background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}.section-heading h2{max-width:750px}.tabs{display:flex;border-bottom:1px solid #baa}.tab{border:0;background:none;padding:12px 20px;cursor:pointer;color:#6e756f;position:relative}.tab.active{color:var(--ink);font-weight:600}.tab.active:after{content:'';height:3px;background:var(--terracotta);position:absolute;bottom:-2px;left:0;right:0}.gallery-grid{display:grid;grid-template-columns:1.18fr .82fr .82fr;grid-auto-rows:250px;gap:16px}.gallery-item{position:relative;overflow:hidden;background:#ddd}.gallery-item:first-child{grid-row:span 2}.gallery-item:nth-child(4){grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery-item:hover img{transform:scale(1.045)}.gallery-item:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);pointer-events:none}.gallery-item.show{animation:fade .45s both}.quote-band{background:var(--terracotta);color:#fff;text-align:center;padding:90px 20px}.quote-band p{color:var(--mustard);font-size:1.5rem}.quote-band blockquote{font-family:var(--font-display);font-size:clamp(2.7rem,5vw,5.5rem);line-height:1.08;margin:20px auto;font-style:italic}.visit{display:grid;grid-template-columns:1fr 1fr;padding-top:0;padding-bottom:0;background:var(--ink);color:#fff}.visit-card{padding:clamp(70px,9vw,130px) clamp(25px,7vw,110px) clamp(70px,9vw,130px) 0}.visit-card>p:not(.eyebrow){max-width:480px;color:#d2ded9;font-size:1.08rem}.contact-row{display:grid;grid-template-columns:95px 1fr;padding:18px 0;border-top:1px solid rgba(255,255,255,.2);font-size:.92rem}.contact-row>span{color:#9db0a8;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.contact-row p{margin:0}.contact-row a{text-decoration:underline;text-underline-offset:4px}.button-light{margin-top:22px;background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--mustard)}.map-card{min-height:560px;position:relative;overflow:hidden;background-color:#e8deca;background-image:linear-gradient(30deg,transparent 49%,rgba(24,63,53,.12) 50%,transparent 51%),linear-gradient(120deg,transparent 49%,rgba(24,63,53,.1) 50%,transparent 51%);background-size:170px 150px}.map-lines{position:absolute;width:80%;height:65%;left:10%;top:12%;border:12px double rgba(255,255,255,.9);border-radius:45% 15% 55% 20%;transform:rotate(-13deg)}.map-road{position:absolute;height:28px;background:rgba(255,255,255,.8);width:130%;left:-15%;top:46%;transform:rotate(22deg)}.map-road.two{transform:rotate(-38deg);top:31%}.pin{position:absolute;left:50%;top:41%;transform:translate(-50%,-50%);width:76px;height:76px;background:var(--terracotta);border:6px solid white;border-radius:50% 50% 50% 0;display:grid;place-items:center;box-shadow:0 10px 30px #514b;transform-origin:center;rotate:-45deg}.pin img{border-radius:50%;rotate:45deg}.map-label{position:absolute;left:50%;top:59%;transform:translateX(-50%);text-align:center;background:white;color:var(--ink);padding:13px 22px;box-shadow:0 8px 30px #5145;white-space:nowrap}.map-label strong,.map-label small{display:block}.map-label strong{font-family:var(--font-display);font-size:1.25rem}.map-label small{font-size:.72rem}footer{padding:55px max(5vw,24px);background:#102c25;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:25px}footer .footer-brand{font-family:var(--font-display);font-size:2rem}footer p,footer small{color:#a9bab4}footer div{display:flex;gap:24px;font-size:.85rem}@keyframes settle{to{transform:scale(1)}}@keyframes fade{from{opacity:.15;transform:translateY(8px)}}@media(max-width:800px){.site-header{height:70px}.menu-toggle{display:block}.site-header nav{position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;align-items:stretch;opacity:0;transform:translateY(-12px);pointer-events:none;transition:.2s;box-shadow:0 10px 20px #0002}.site-header nav.open{opacity:1;transform:none;pointer-events:auto}.hero{height:calc(100svh - 70px);min-height:580px}.hero-content{align-self:end;margin-bottom:100px}.scroll-cue{display:none}.intro{grid-template-columns:1fr}.intro-mark{display:none}.intro-copy{padding-top:0}.section-heading{align-items:start;flex-direction:column}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.gallery-item:first-child{grid-row:span 2}.gallery-item:nth-child(4){grid-column:span 1}.visit{grid-template-columns:1fr;padding:0}.visit-card{padding-left:24px;padding-right:24px}.map-card{min-height:440px}footer{grid-template-columns:1fr 1fr}footer div{justify-self:end}}@media(max-width:520px){h1{font-size:3.5rem}.hero-actions .button{width:100%;justify-content:center}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:310px}.gallery-item:first-child{grid-row:span 1}.section-heading h2,.intro h2,.visit h2{font-size:2.75rem}.tabs{width:100%}.tab{flex:1}.contact-row{grid-template-columns:1fr;gap:5px}footer{grid-template-columns:1fr}footer div{justify-self:start}}
