:root{
  --sand:#f4efe7;--paper:#fbf8f2;--clay:#a84a31;--clay-dark:#713223;--wood:#4d2e1f;--ink:#2b241f;--muted:#746960;--accent:#d79b61;--white:#fff;
  --shadow:0 18px 60px rgba(62,39,25,.16);--radius:24px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--paper) url('img/fondo-piedra.jpg') center top/1000px auto repeat;line-height:1.6} img{max-width:100%;display:block} a{color:inherit;text-decoration:none} button{font:inherit}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:78px;display:flex;align-items:center;gap:28px;padding:0 4vw;background:rgba(27,20,16,.34);backdrop-filter:blur(12px);color:#fff;border-bottom:1px solid rgba(255,255,255,.12);transition:.3s}.site-header.scrolled{background:rgba(40,29,23,.94)}
.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:38px;height:38px;border:2px solid currentColor;display:grid;place-items:center;font-size:22px;transform:rotate(-2deg)}.brand strong{display:block;font-family:'DM Serif Display',serif;font-size:22px;letter-spacing:.2px;line-height:1}.brand small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:2px;margin-top:5px;opacity:.85}
.main-nav{display:flex;gap:22px;margin-left:auto}.main-nav a{font-size:14px;font-weight:600;opacity:.92}.main-nav a:hover{color:#ffd7ab}.header-actions{display:flex;align-items:center;gap:10px}.lang{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;border-radius:999px;padding:8px 11px;cursor:pointer;font-weight:700}.menu-toggle{display:none;border:0;background:none;color:white;font-size:26px;margin-left:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--clay);color:#fff;padding:13px 20px;border-radius:999px;font-weight:700;box-shadow:0 8px 24px rgba(126,57,39,.2);transition:.2s}.btn:hover{transform:translateY(-2px);background:var(--clay-dark)}.btn-small{padding:9px 16px;font-size:14px}.btn-ghost{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.6);box-shadow:none}.btn-ghost:hover{background:#fff;color:var(--wood)}
.hero{min-height:100svh;position:relative;display:grid;align-items:center;background:url('img/hero-volcan.jpg') center top/cover no-repeat;color:#fff;overflow:hidden}.hero:after{content:'';position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--paper))}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,18,12,.78) 0%,rgba(30,18,12,.48) 46%,rgba(30,18,12,.12) 72%),linear-gradient(0deg,rgba(20,15,11,.2),rgba(20,15,11,.1))}.hero-content{position:relative;z-index:2;width:min(760px,90%);margin-left:7vw;padding-top:60px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;font-weight:800;color:var(--clay);margin:0 0 14px}.eyebrow.light{color:#ffd0a1}.hero .eyebrow{color:#f5c18f}.hero h1{font-family:'DM Serif Display',serif;font-size:clamp(72px,9vw,142px);line-height:.82;margin:0;text-shadow:0 8px 30px rgba(0,0,0,.25)}.hero-subtitle{font-family:'DM Serif Display',serif;font-size:clamp(24px,3vw,44px);margin:14px 0}.hero-copy{font-size:clamp(17px,1.8vw,22px);max-width:650px;color:#f7eee8}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.scroll-cue{position:absolute;z-index:3;bottom:34px;left:50%;font-size:32px;animation:bounce 1.8s infinite}@keyframes bounce{50%{transform:translateY(8px)}}
.section{padding:100px 7vw}.section-heading{max-width:780px;margin-bottom:44px}.section-heading h2,.intro h2,.desert-card h2,.location-copy h2,.contact-content h2{font-family:'DM Serif Display',serif;font-size:clamp(40px,5vw,68px);line-height:1.05;margin:0 0 18px;color:var(--wood)}.section-heading>p:last-child{color:var(--muted);font-size:18px}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.intro-copy p{font-size:18px;color:#514942}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}.features div{background:var(--sand);border-radius:18px;padding:18px;text-align:center}.features strong{display:block;font-family:'DM Serif Display',serif;font-size:38px;color:var(--clay);line-height:1}.features span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-top:8px;color:var(--muted)}
.collage{position:relative;min-height:570px}.collage img{position:absolute;border:10px solid #fff;box-shadow:var(--shadow);object-fit:cover}.img-a{width:72%;height:68%;right:0;top:0;transform:rotate(2deg)}.img-b{width:52%;height:48%;left:0;bottom:10px;transform:rotate(-4deg)}.img-c{width:48%;height:38%;right:4%;bottom:0;transform:rotate(3deg)}
.desert-section{background:var(--sand)}.desert-card{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.3fr .7fr;background:#fff;border-radius:32px;overflow:hidden;box-shadow:var(--shadow)}.desert-card>div{padding:64px}.desert-card p{font-size:17px;color:var(--muted)}.desert-card img{width:100%;height:100%;object-fit:cover;object-position:center}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.experience-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(60,40,28,.08);min-height:365px;position:relative}.experience-card img{width:100%;height:220px;object-fit:cover}.experience-card>div:last-child{padding:22px}.experience-card h3{font-family:'DM Serif Display',serif;font-size:26px;margin:0 0 8px;color:var(--wood)}.experience-card p{margin:0;color:var(--muted)}.night-card{background:radial-gradient(circle at 30% 20%,#374565,#152037 52%,#0e1422);color:#fff;display:flex;align-items:flex-end;overflow:hidden}.night-card h3,.night-card p{color:#fff}.stars{position:absolute;inset:0;background-image:radial-gradient(#fff 1px,transparent 1.3px);background-size:34px 34px;opacity:.6}.night-card>div:last-child{position:relative;z-index:2}
.gallery-section{background:#efe8df}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:14px}.gallery-item{border:0;padding:0;cursor:pointer;overflow:hidden;border-radius:18px;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.brochure-links{display:flex;gap:16px;margin-top:24px;flex-wrap:wrap}.brochure-links a{color:var(--clay);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.location-section{background:var(--paper)}.location-card{display:grid;grid-template-columns:.8fr 1.2fr;max-width:1280px;margin:auto;background:#fff;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.location-copy{padding:62px}.location-copy p{color:var(--muted);font-size:18px}.map-wrap{min-height:500px}.map-wrap iframe{border:0;width:100%;height:100%;min-height:500px}
.contact-section{position:relative;min-height:700px;display:grid;place-items:center;padding:90px 7vw;color:#fff;background:#2d1d14;overflow:hidden}.contact-bg{position:absolute;inset:0;background:url('img/casa-exterior.jpg') center/cover no-repeat;opacity:.34;transform:scale(1.02)}.contact-section:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,26,17,.9),rgba(42,26,17,.62))}.contact-content{position:relative;z-index:2;max-width:1100px;width:100%}.contact-content h2{color:#fff;max-width:800px}.contact-content>p{max-width:730px;font-size:18px;color:#f1e8e0}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:32px}.contact-grid a{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);border-radius:18px;padding:20px 22px;transition:.2s}.contact-grid a:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}.contact-grid span{display:block;text-transform:uppercase;letter-spacing:2px;font-size:11px;color:#f0c394}.contact-grid strong{display:block;margin-top:7px;font-size:17px;word-break:break-word}.manager{font-family:'DM Serif Display',serif!important;font-size:24px!important;margin-top:28px}
footer{padding:34px 7vw;background:#1b130f;color:#d9cbc1;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px}.footer-brand{color:#fff}.footer-brand .brand-mark{width:32px;height:32px}.footer-brand strong{font-size:18px}
.lightbox{position:fixed;z-index:100;inset:0;background:rgba(10,8,7,.92);display:none;place-items:center;padding:40px}.lightbox.open{display:grid}.lightbox img{max-width:min(1100px,94vw);max-height:88vh;border-radius:16px}.lightbox-close{position:absolute;right:28px;top:18px;border:0;background:none;color:#fff;font-size:42px;cursor:pointer}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.main-nav{display:none;position:absolute;left:0;right:0;top:78px;background:#2d211b;padding:18px 6vw;flex-direction:column}.main-nav.open{display:flex}.menu-toggle{display:block}.header-actions{margin-left:0}.intro-grid,.desert-card,.location-card{grid-template-columns:1fr}.collage{min-height:520px}.experience-grid{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}.map-wrap{min-height:380px}.map-wrap iframe{min-height:380px}footer{flex-direction:column;text-align:center}}
@media(max-width:640px){.site-header{padding:0 18px;height:70px}.brand strong{font-size:18px}.brand small{font-size:9px}.brand-mark{width:32px;height:32px}.header-actions .btn{display:none}.main-nav{top:70px}.hero-content{margin-left:0;padding:100px 22px 0;width:100%}.hero h1{font-size:68px}.section{padding:72px 22px}.section-heading h2,.intro h2,.desert-card h2,.location-copy h2,.contact-content h2{font-size:42px}.intro-grid{gap:34px}.features{grid-template-columns:repeat(2,1fr)}.collage{min-height:390px}.desert-card>div,.location-copy{padding:34px 26px}.experience-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-item.tall,.gallery-item.wide{grid-row:auto;grid-column:auto}.contact-section{padding:76px 22px}.contact-grid{grid-template-columns:1fr}footer{padding:28px 22px}}

.location-originals{display:flex;gap:18px;align-items:center;margin-top:26px;flex-wrap:wrap}.location-originals img:first-child{width:min(300px,100%);height:auto}.location-originals img:last-child{width:115px;height:auto;object-fit:contain}.desert-card>img{object-fit:contain;background:linear-gradient(180deg,#f8efe7,#f3dfd1);padding:20px 0 0}.intro,.experiences,.location-section{background:rgba(249,246,241,.90);backdrop-filter:blur(1px)}

/* Video Casa Vieja */
.video-section { text-align: center; }
.video-wrap { max-width: 520px; margin: 2rem auto 0; padding: 10px; background: rgba(255,255,255,.9); border-radius: 24px; box-shadow: 0 18px 50px rgba(61,35,20,.18); }
.video-wrap video { display:block; width:100%; max-height:78vh; border-radius:16px; background:#000; object-fit:contain; }
@media (max-width: 640px) { .video-wrap { max-width: 92%; padding:6px; border-radius:18px; } .video-wrap video { border-radius:13px; } }
