@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--forest:#183d32;--forest2:#244e3d;--cream:#f7f3eb;--sand:#e1d2b7;--earth:#916c4f;--ink:#21362d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer}.nav{height:86px;background:#faf8f3;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,80px);gap:22px;position:sticky;top:0;z-index:20;border-bottom:1px solid #e5e2d9}.brand{display:flex;align-items:center;gap:11px;line-height:1.12;font-size:14px;letter-spacing:.16em;font-weight:600;white-space:nowrap}.brand b{display:block;font-size:17px;letter-spacing:.095em}.brand small{display:block;font-size:8px;letter-spacing:.14em;margin-top:5px}.brand-symbol{font-size:32px;color:var(--earth)}.nav nav{display:flex;gap:28px;font-size:12px;font-weight:600;letter-spacing:.03em}.nav nav a:hover{color:var(--earth)}.nav-actions{display:flex;align-items:center;gap:14px}.nav-actions button{border:0;background:transparent;font-weight:700;color:var(--forest)}.nav-cta{background:var(--forest);color:white;padding:13px 19px;font-size:12px}.hero{min-height:680px;position:relative;background:radial-gradient(ellipse at 70% 42%,#41634b 0%,transparent 33%),radial-gradient(ellipse at 8% 78%,#345442 0%,transparent 42%),linear-gradient(120deg,#102c27,#295b44 65%,#173b34);color:white;overflow:hidden;display:flex;align-items:center}.hero-inner{position:relative;z-index:2;width:min(760px,90%);margin-left:clamp(20px,9vw,150px);padding:110px 0}.eyebrow{font-size:10px;letter-spacing:.28em;font-weight:700;color:#dfd2b2}.eyebrow.dark{color:#80785f}.hero h1,.section h2,.nature h2,.closing h2{font-family:'Playfair Display',Georgia,serif;font-weight:400}.hero h1{font-size:clamp(45px,6vw,85px);line-height:1.11;letter-spacing:-.03em;margin:25px 0}.hero-inner>p{max-width:530px;font-size:17px;line-height:1.9;color:#e3e9df}.hero-actions{display:flex;gap:13px;margin-top:37px}.btn{padding:16px 25px;font-size:12px;display:inline-block;font-weight:700;letter-spacing:.03em}.btn.light{background:#f4efe3;color:var(--forest)}.btn.outline{border:1px solid #ccd7c7;color:white}.hero-foot{position:absolute;bottom:27px;left:clamp(20px,9vw,150px);right:5vw;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.3em;color:#c0d0bb}.canopy{position:absolute;inset:0;overflow:hidden;opacity:.45}.leaf{position:absolute;display:block;width:360px;height:540px;border:80px solid #133c30;border-radius:100% 5% 90% 10%;transform:rotate(20deg);filter:blur(3px)}.l1{right:-150px;top:-190px}.l2{right:90px;top:-350px;transform:rotate(90deg)}.l3{right:-160px;bottom:-300px;transform:rotate(130deg)}.l4{left:-220px;bottom:-320px;transform:rotate(-30deg)}.l5{right:23%;bottom:-410px;transform:rotate(65deg)}.section{padding:100px clamp(20px,8vw,130px)}.intro{text-align:center}.intro h2{font-size:clamp(35px,4vw,59px);margin:16px}.intro-copy{max-width:700px;margin:0 auto;line-height:2;color:#65726a;font-size:16px}.values{display:grid;grid-template-columns:repeat(3,1fr);margin:65px auto 0;max-width:900px}.values>div{padding:0 25px;border-right:1px solid #ddd8c9}.values>div:last-child{border:0}.values span{color:#aa9477;font-size:12px}.values h3{font-family:Georgia,serif;font-size:26px;margin:13px 0 7px;font-weight:400}.values p{color:#69776f;font-size:13px}.stays{background:#f0eee6}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-head h2{font-size:clamp(36px,4.4vw,60px);margin:12px 0 0}.section-head>p{max-width:310px;line-height:1.7;color:#6d756e;font-size:14px}.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.stay-card{background:#fff}.scenic{height:390px;position:relative;overflow:hidden;background:linear-gradient(160deg,#38604f,#18392f 75%)}.scene-two{background:linear-gradient(150deg,#355046,#112e2c 75%)}.scenic:before,.scenic:after{content:'';position:absolute;width:45%;height:90%;background:#244b3d;border-radius:70% 0;filter:blur(20px);top:-30%;left:-22%;transform:rotate(30deg)}.scenic:after{left:auto;right:-20%;top:20%;background:#477454}.dome{position:absolute;bottom:17%;left:22%;width:56%;height:42%;border-radius:55% 55% 3% 3%;background:linear-gradient(120deg,#d0b98e 0%,#c5c4ad 50%,#9a997f 100%);border:7px solid #b7a98a;box-shadow:0 32px 45px #142d2590;clip-path:polygon(50% 0%,76% 9%,96% 36%,100% 100%,0 100%,4% 36%,24% 9%)}.dome:before{content:'';position:absolute;inset:25% 19% 0%;background:linear-gradient(140deg,#203d3e,#4d6760);clip-path:polygon(50% 0,100% 100%,0 100%)}.dome-two{background:linear-gradient(120deg,#d1c1a6,#b7b0a4)}.photo-label{position:absolute;top:20px;left:22px;font-size:11px;color:#fff9;padding:8px 11px;border:1px solid #ffffff70;z-index:4;background:#0003}.card-bottom{display:flex;justify-content:space-between;padding:30px}.card-bottom h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:11px 0}.card-bottom p{line-height:1.7;color:#6e776d;font-size:14px;max-width:370px}.arrow{font-size:24px}.note{font-size:12px;color:#7f837a;margin-top:27px}.nature{min-height:420px;background:radial-gradient(circle at 80% 35%,#71956a33,transparent 32%),linear-gradient(100deg,#142e29,#31543f);color:white;display:flex;align-items:center;justify-content:space-between;padding:60px clamp(20px,8vw,130px);overflow:hidden}.nature-overlay{max-width:690px}.nature h2{font-size:clamp(37px,4.5vw,61px);line-height:1.2;margin:20px 0}.nature p{max-width:540px;color:#d2dfd1;line-height:1.8;font-size:15px}.nature-pattern{font-size:140px;line-height:1;color:#769a7b55;transform:rotate(-12deg)}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.three-col article{background:white}.exp-visual{height:230px;display:flex;align-items:center;justify-content:center;font-size:70px}.nocturnal{background:radial-gradient(circle at 40% 25%,#7c8a64 0 5%,transparent 7%),linear-gradient(140deg,#172d37,#345044)}.cacao{background:radial-gradient(circle at 35% 60%,#a97b4c 0%,transparent 30%),linear-gradient(145deg,#4e402f,#756748)}.trails{background:radial-gradient(circle at 75% 35%,#759675 0%,transparent 38%),linear-gradient(145deg,#254b36,#536e4d)}.exp-visual span{color:#f9e8bfaa}.exp-content{padding:25px}.exp-content h3{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:14px 0}.exp-content p{line-height:1.7;font-size:13px;color:#66736b}.exp-content .meta{font-weight:700;color:#355444;margin-top:20px}.closing{text-align:center;background:#204334;color:white;padding:90px 20px}.closing h2{font-size:clamp(38px,5vw,65px);margin:19px 0 33px}footer{background:#142b25;color:#e9eee7;padding:62px clamp(20px,8vw,130px);display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.footer-brand{font-size:16px;letter-spacing:.18em}.footer-brand b{display:block;font-size:23px}.footer-brand small{display:block;margin-top:9px;font-size:9px}.footer-links{display:flex;gap:18px;font-size:12px}footer p{font-size:12px;color:#abbbae}footer strong{font-size:13px}@media(max-width:980px){.nav nav{display:none}.nav{height:76px}.two-col,.three-col{grid-template-columns:1fr}.scenic{height:320px}.section{padding:75px 24px}.hero{min-height:620px}.hero-inner{margin-left:28px}.section-head{display:block}.section-head>p{max-width:none}.nature-pattern{display:none}}@media(max-width:600px){.nav-cta{display:none}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:start}.values{grid-template-columns:1fr;gap:25px}.values>div{border-right:0;border-bottom:1px solid #ddd8c9;padding:15px}.values>div:last-child{border:0}footer{grid-template-columns:1fr}.scenic{height:260px}.hero-inner{padding:70px 0}}


/* Fase 8 · framed boutique stay cards */
.stays{background:linear-gradient(180deg,#eef0e7 0%,#f4efe4 100%);position:relative;overflow:hidden}
.stays:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(200,173,117,.16),transparent 22%),radial-gradient(circle at 84% 10%,rgba(27,121,87,.08),transparent 18%);pointer-events:none}
.stays .section-head,.stays .two-col,.stays .note{position:relative;z-index:1}
.stay-card{position:relative;background:linear-gradient(180deg,#fffdf7 0%,#fbf8ef 100%);border:1px solid rgba(166,106,50,.28);padding:16px;box-shadow:0 20px 50px rgba(18,63,50,.10);overflow:hidden}
.stay-card:before{content:"";position:absolute;inset:8px;border:1px solid rgba(166,106,50,.18);pointer-events:none}
.stay-card:after{content:"✦";position:absolute;top:18px;right:18px;color:rgba(166,106,50,.35);font-size:18px;pointer-events:none}
.stay-card .scenic{height:410px;border:1px solid rgba(166,106,50,.22);box-shadow:inset 0 0 0 8px rgba(255,249,236,.10)}
.stay-card .scenic:before{display:none}.stay-card .scenic:after{display:none}
.stay-card .scenic .real-photo{transition:transform .7s ease,filter .4s ease;filter:saturate(1.02) contrast(1.02)}
.stay-card:hover .scenic .real-photo{transform:scale(1.04);filter:saturate(1.08) contrast(1.03)}
.stay-card .scenic:has(.real-photo:not(.missing))::before{content:"";display:block;position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,36,28,.06),rgba(13,36,28,.14));z-index:3}
.stay-card .card-bottom{padding:28px 8px 12px;align-items:flex-start;gap:20px;position:relative}
.stay-card .card-bottom > div{flex:1}
.stay-card .eyebrow.dark{display:inline-flex;align-items:center;gap:10px;color:#a66a32;letter-spacing:.22em;font-size:10px;font-weight:700}
.stay-card .eyebrow.dark:before,.stay-card .eyebrow.dark:after{content:"";display:inline-block;width:28px;height:1px;background:rgba(166,106,50,.6)}
.stay-card .card-bottom h3{font-size:34px;color:#163f32;margin-top:14px;margin-bottom:12px}
.stay-card .card-bottom p{font-size:15px;line-height:1.8;color:#5b6d63}
.stay-card .detail-link{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-width:170px;padding:16px 20px;border:1px solid rgba(27,121,87,.45);color:#1b7957;background:linear-gradient(180deg,#fffef9 0%,#f6f0df 100%);font-weight:700;letter-spacing:.02em;transition:all .25s ease;box-shadow:0 8px 20px rgba(18,63,50,.06)}
.stay-card .detail-link:hover{background:#1b7957;color:#fff;border-color:#1b7957;transform:translateY(-1px)}
.stay-card .detail-link::after{content:"→";margin-left:8px;transition:transform .25s ease}
.stay-card .detail-link:hover::after{transform:translateX(2px)}
.stay-card .card-bottom:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(27,121,87,.35),transparent)}
@media(max-width:980px){.stay-card .card-bottom{padding:24px 4px 8px;flex-direction:column}.stay-card .detail-link{min-width:auto;width:100%}.stay-card .scenic{height:360px}}
@media(max-width:600px){.stay-card{padding:12px}.stay-card:before{inset:6px}.stay-card .scenic{height:255px}.stay-card .card-bottom h3{font-size:30px}}


/* Fase 9 · portada refinada */
.hero{min-height:760px;padding-top:34px}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:42px;width:min(1280px,92%);margin:0 auto;padding:78px 0 118px}
.hero-inner{width:auto;max-width:700px;margin-left:0;padding:0}
.hero-inner>p{max-width:560px}
.hero-signature{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.hero-chip{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(244,239,227,.22);background:rgba(11,31,24,.28);backdrop-filter:blur(8px);min-width:180px}
.hero-chip span{font-family:'Playfair Display',Georgia,serif;font-size:28px;line-height:1;color:#f5e7c0}.hero-chip small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#eef2e7;line-height:1.5}
.hero-showcase{position:relative}
.showcase-card{position:relative;padding:18px;background:linear-gradient(180deg,rgba(255,249,236,.96),rgba(252,247,238,.92));border:1px solid rgba(255,249,236,.28);box-shadow:0 24px 70px rgba(8,24,17,.26)}
.showcase-card:before{content:"";position:absolute;inset:8px;border:1px solid rgba(166,106,50,.18);pointer-events:none}
.showcase-card:after{content:"✦";position:absolute;top:20px;right:20px;color:rgba(166,106,50,.45);font-size:18px}
.showcase-photo{height:355px;border:1px solid rgba(166,106,50,.20);overflow:hidden;background:linear-gradient(145deg,#2a4b3d,#14332a)}
.showcase-photo:before,.showcase-photo:after{display:none!important}
.showcase-photo.scenic:has(.real-photo:not(.missing))::before{content:"";display:block;position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,37,29,.08),rgba(14,37,29,.18));z-index:3}
.showcase-content{padding:22px 10px 10px;color:#19392f}
.showcase-content h3{font-family:'Playfair Display',Georgia,serif;font-size:37px;line-height:1.12;font-weight:400;margin:14px 0 12px;color:#15372d}
.showcase-content p{font-size:15px;line-height:1.8;color:#5f6e65;margin:0 0 18px}
.showcase-mini{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.mini-item{padding:14px 14px 12px;border:1px solid rgba(27,121,87,.18);background:linear-gradient(180deg,#fffdf8,#f7f0df)}
.mini-item strong{display:block;font-size:14px;color:#173b30;margin-bottom:6px}.mini-item span{font-size:12px;color:#6a766f;line-height:1.5}
.hero-foot{left:clamp(20px,4vw,60px);right:clamp(20px,4vw,60px);bottom:26px}
@media(max-width:1120px){.hero-grid{grid-template-columns:1fr;gap:28px;padding:60px 0 110px}.hero-inner{max-width:780px}.hero-showcase{max-width:760px;width:100%}.showcase-photo{height:310px}}
@media(max-width:760px){.hero{min-height:auto}.hero-grid{width:min(94%,760px);padding:42px 0 100px}.showcase-card{padding:14px}.showcase-photo{height:240px}.showcase-content h3{font-size:30px}.showcase-mini{grid-template-columns:1fr}.hero-signature{gap:10px}.hero-chip{width:100%;min-width:0}}

/* Arenal Perch: approved original logo, image bytes unchanged. */
.brand-logo{display:block;width:194px;height:72px;object-fit:contain;background:#fff;border-radius:4px}.footer-brand-logo{display:block;width:min(270px,100%);height:auto;background:#fff;border-radius:5px}@media(max-width:640px){.brand-logo{width:150px;height:62px}}
