
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172019;background:#f6f4ef;line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{background:#0d1712;color:#fff;font-size:12px;padding:8px 0}.topbar .container{display:flex;justify-content:space-between;gap:20px}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #e6e2d9}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Georgia,serif;font-size:25px;font-weight:700}.brand small{display:block;font:800 10px/1.2 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}nav{display:flex;gap:22px;font-size:13px;font-weight:800}.nav-btn{display:none}.hero{min-height:660px;position:relative;display:grid;align-items:end;background:linear-gradient(135deg,var(--accent),#17281f);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,rgba(255,255,255,.16),transparent 35%),linear-gradient(0deg,rgba(4,16,10,.78),rgba(4,16,10,.18) 65%)}.hero-art{position:absolute;right:-6%;top:12%;width:58%;height:66%;border-radius:34px;transform:rotate(-3deg);background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 80px rgba(0,0,0,.24)}.hero-art:after{content:"";position:absolute;inset:9%;border-radius:28px;background:linear-gradient(140deg,var(--accent2),rgba(255,255,255,.1));opacity:.55}.hero-content{position:relative;padding:90px 0 64px;max-width:760px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.2em;color:var(--accent2)}h1,h2,h3{font-family:Georgia,serif}.hero h1{font-size:clamp(52px,7vw,88px);line-height:.96;letter-spacing:-.04em;margin:12px 0 18px}.hero p{font-size:20px;color:rgba(255,255,255,.82);max-width:650px}.facts{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0}.facts span{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);padding:9px 12px;border-radius:999px;font-size:12px;font-weight:800}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;font-size:13px;font-weight:900}.btn-primary{background:var(--accent2);color:#18231c}.btn-ghost{border:1px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.07)}.section{padding:86px 0}.section.alt{background:#ebe8df}.section.dark{background:#101b15;color:#fff}.section-head{max-width:760px;margin-bottom:34px}.section-head h2{font-size:clamp(36px,5vw,58px);line-height:1.02;margin:10px 0 14px}.section-head p{font-size:17px;color:#647069}.dark .section-head p{color:rgba(255,255,255,.65)}.overview{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:start}.overview-card{background:#fff;border-radius:24px;padding:28px;border:1px solid #e4e0d7}.overview-card strong{display:block;font-size:28px;font-family:Georgia,serif}.overview-card span{display:block;color:#69736d;margin-top:5px}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.area-card{background:#fff;border-radius:22px;overflow:hidden;border:1px solid #e1ddd4}.area-photo{height:185px;background:linear-gradient(135deg,var(--accent),var(--accent2));position:relative}.area-photo:after{content:"";position:absolute;inset:20%;border:1px solid rgba(255,255,255,.28);border-radius:50%}.area-body{padding:20px}.area-body h3{font-size:23px;margin:0 0 5px}.area-body p{font-size:13px;color:#69736d;margin:0}.amenities{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.amenity{padding:16px;border-radius:16px;border:1px solid #e2ded5;background:#fff;font-weight:800;font-size:13px}.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room{padding:24px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}.room h3{font-size:23px;margin:0 0 8px}.room p{font-size:13px;color:rgba(255,255,255,.62);margin:0}.booking{display:grid;grid-template-columns:1fr .8fr;gap:50px}.calendar{background:#fff;border:1px solid #e1ddd4;border-radius:24px;padding:24px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;text-align:center}.cal-grid span{padding:10px 4px;border-radius:10px;font-size:12px}.cal-grid .head{font-weight:900;color:#7a827d}.cal-grid .busy{background:#ece8df;text-decoration:line-through;color:#9b9f9c}.cal-grid .free{background:#f4f6f1}.price-box{background:var(--accent);color:#fff;border-radius:24px;padding:30px}.price-box .price{font-family:Georgia,serif;font-size:50px}.price-box p{color:rgba(255,255,255,.75)}.rules{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.rule{background:#fff;border:1px solid #e2ded5;border-radius:16px;padding:16px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.guide-card{background:#fff;border-radius:20px;border:1px solid #e1ddd4;padding:22px}.guide-card .guide-photo{height:130px;border-radius:14px;background:linear-gradient(135deg,var(--accent2),#d9d4ca);margin-bottom:16px}.host{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #e1ddd4;border-radius:24px;padding:26px}.avatar{width:86px;height:86px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:#fff;font-family:Georgia,serif;font-size:28px}.host h3{margin:0 0 6px;font-size:25px}.socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.socials a{padding:9px 12px;border-radius:999px;background:#efede6;font-size:12px;font-weight:900}.footer{background:#07110c;color:#fff;padding:50px 0 24px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer small{color:rgba(255,255,255,.5)}.footer-bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:18px;font-size:12px;color:rgba(255,255,255,.55)}.footer a{color:var(--accent2)}.wa{position:fixed;right:18px;bottom:18px;z-index:30;background:#173c2c;color:#fff;padding:13px 17px;border-radius:999px;font-size:13px;font-weight:900;box-shadow:0 14px 35px rgba(0,0,0,.22)}.page-hero{padding:100px 0 58px;background:var(--accent);color:#fff}.page-hero h1{font-size:clamp(44px,6vw,72px);margin:10px 0}.gallery-page{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.gallery-large{min-height:320px;border-radius:24px;background:linear-gradient(135deg,var(--accent),var(--accent2));position:relative}.gallery-large:after{content:"Galería de muestra";position:absolute;left:22px;bottom:20px;color:#fff;font-weight:900}.contact-card{background:#fff;border-radius:24px;border:1px solid #e1ddd4;padding:28px}.contact-card input,.contact-card textarea,.contact-card select{width:100%;padding:13px 14px;margin-top:6px;margin-bottom:14px;border:1px solid #d9d5cc;border-radius:12px;font:inherit}.contact-card button{border:0;cursor:pointer}.map-box{min-height:330px;border-radius:24px;background:linear-gradient(135deg,#d8d3c8,#b8c2b9);display:grid;place-items:center;color:#526057;font-weight:900;text-align:center;padding:30px}@media(max-width:900px){nav{display:none}.nav-btn{display:block}.overview,.booking{grid-template-columns:1fr}.area-grid{grid-template-columns:repeat(2,1fr)}.amenities{grid-template-columns:repeat(2,1fr)}.rooms{grid-template-columns:1fr 1fr}.guide-grid{grid-template-columns:1fr 1fr}.hero-art{width:70%;right:-25%}}@media(max-width:620px){.container{width:min(100% - 26px,1160px)}.topbar .container{display:block}.hero{min-height:700px}.hero-content{padding-bottom:46px}.hero h1{font-size:49px}.hero p{font-size:17px}.hero-art{width:95%;height:48%;top:12%;right:-35%}.actions{flex-direction:column}.btn{width:100%}.section{padding:64px 0}.area-grid,.amenities,.rooms,.guide-grid,.gallery-page{grid-template-columns:1fr}.footer-grid,.footer-bottom{flex-direction:column}.host{grid-template-columns:1fr}.signature{font-size:12px}.page-hero{padding-top:80px}}
