@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url("fonts/font-1.ttf") format("truetype")}@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/font-2.ttf") format("truetype")}@font-face{font-family:"Manrope";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/font-3.ttf") format("truetype")}@font-face{font-family:"Manrope";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/font-4.ttf") format("truetype")}@font-face{font-family:"Manrope";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/font-5.ttf") format("truetype")}@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/font-6.ttf") format("truetype")}@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/font-7.ttf") format("truetype")}
:root { --radius: 0.15rem; --background: #f4f1e9; --foreground:#14352c; --card:#fbfaf6; --card-foreground:#14352c; --popover:#fbfaf6; --popover-foreground:#14352c; --primary:#14352c; --primary-foreground:#fffdf5; --secondary:#eae5d8; --secondary-foreground:#14352c; --muted:#e8e3d8; --muted-foreground:#66736c; --accent:#cb6a3a; --accent-foreground:#fffdf5; --destructive:#ae3b2a; --destructive-foreground:#fff; --border:#d9d3c6; --input:#d9d3c6; --ring:#cb6a3a; }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--background); color: var(--foreground); font-family: "Manrope", sans-serif; font-size: 15px; line-height: 1.65; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button:not(:disabled), a[href] { cursor: pointer; }

.site-width { width: min(100% - 48px, 1240px); margin-inline: auto; }
.sale-strip { background: #e9e2d6; color: #5b4637; border-bottom:1px solid #d9cfbf; font-size: 10px; letter-spacing:.02em; }
.sale-strip-inner { min-height: 37px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.sale-strip b { color:#a6532e; font-weight:800; text-transform:uppercase; letter-spacing:.08em; font-size:9px; }
.sale-link { color:#8f4829; display:inline-flex; align-items:center; gap:5px; white-space:nowrap; text-decoration:underline; text-underline-offset:3px; font-weight:800; }
.main-header { position: sticky; top:0; z-index:50; background:rgba(250,248,242,.96); border-bottom:1px solid rgba(20,53,44,.13); backdrop-filter: blur(10px); }
.header-inner { height:80px; display:flex; align-items:center; justify-content:space-between; gap:25px; }
.wordmark { display:inline-flex; align-items:center; gap:12px; flex:0 0 auto; font-family:"DM Serif Display",serif; font-size:37.5px; letter-spacing:-.06em; color:#14352c; }
.wordmark b { font-weight:400; }.wordmark i { color:#cb6a3a; font-style:normal; }.wordmark .domain { color:#cb6a3a; font-size:.8em; }.brand-symbol { width:42px; height:42px; object-fit:contain; }
.desktop-nav { display:flex; align-items:center; gap:27px; margin-left:auto; }.desktop-nav a { font-size:12px; font-weight:700; letter-spacing:.04em; position:relative; padding:8px 0; }.desktop-nav a:after { content:""; width:0; height:2px; position:absolute; bottom:0; left:0; background:#cb6a3a; transition:width .2s ease; }.desktop-nav a:hover:after,.desktop-nav a.active:after{width:100%;}
.header-actions { display:flex; align-items:center; gap:14px; }.header-search { display:grid; place-items:center; width:33px; height:33px; border-radius:50%; border:1px solid #d2cabb; }.button { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:14px 20px; font-size:12px; font-weight:800; letter-spacing:.04em; transition:transform .18s cubic-bezier(.23,1,.32,1), background .18s; }.button:active { transform:scale(.97); }.button-small { padding:11px 14px; font-size:10px; }.button-terracotta { background:#cb6a3a; color:#fffaf4; }.button-terracotta:hover { background:#ad532b; }.button-forest { background:#14352c; color:#fffdf5; }.button-forest:hover { background:#0d271f; }.button-cream { background:#fffdf5; color:#14352c; }.button-cream:hover{ background:#efe8d9; }
.mobile-menu-button { display:none; color:#14352c; background:transparent; border:0; padding:5px; }.mobile-menu { display:none; }
.eyebrow { display:inline-flex; align-items:center; gap:8px; color:#cb6a3a; text-transform:uppercase; font-size:10px; letter-spacing:.16em; font-weight:800; line-height:1.4; }.pin-dot{ width:6px; height:6px; background:#cb6a3a; display:block; border-radius:50% 50% 50% 0; transform:rotate(-45deg); }
h1,h2,h3,h4,p { margin-top:0; } h1,h2,h3 { font-family:"DM Serif Display",serif; font-weight:400; line-height:.98; letter-spacing:-.045em; } h1 em,h2 em{ color:#cb6a3a; font-style:italic; }.text-link { display:inline-flex; align-items:center; gap:7px; color:#14352c; font-size:12px; font-weight:800; letter-spacing:.03em; border-bottom:1px solid #cb6a3a; padding-bottom:3px; }.text-link:hover { color:#cb6a3a; }.text-link-light{color:#fffdf5;border-color:#fffdf5;}

.home-hero { min-height: calc(100vh - 117px); min-height:700px; position:relative; background-position:center; background-size:cover; color:#fffdf5; display:flex; align-items:flex-end; }.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,31,23,.77) 0%,rgba(9,31,23,.35) 47%,rgba(9,31,23,.1) 100%); }.hero-content { position:relative; z-index:1; padding-bottom:100px; }.home-hero .eyebrow { color:#edb18e; }.home-hero .pin-dot{background:#edb18e}.hero-content h1 { margin:20px 0; font-size:clamp(64px,8vw,118px); color:#fffdf5; }.hero-content p { max-width:485px; font-size:17px; line-height:1.7; color:#f2f0e7; }.hero-actions { display:flex; align-items:center; gap:25px; margin-top:30px; }.hero-route-mark { position:absolute; z-index:1; top:30%; right:11%; display:flex; align-items:center; gap:8px; color:#f3b18a; text-transform:uppercase; font-size:9px; font-weight:800; letter-spacing:.14em; transform:rotate(-8deg); }.hero-route-mark i { width:120px; height:48px; margin-left:5px; border-top:1px dashed rgba(255,255,255,.7); border-radius:70% 50% 0 0; transform:rotate(10deg); }.hero-note { position:absolute; right:max(24px,calc((100vw - 1240px)/2)); bottom:28px; z-index:2; display:flex; align-items:center; gap:14px; border-top:1px solid rgba(255,255,255,.55); padding-top:11px; width:255px; }.hero-note span { color:#e8a378; font-weight:800; font-size:11px; }.hero-note p { margin:0; font-size:11px; line-height:1.4; flex:1; }
.section { padding:128px 0; }.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:50px; }.section-heading h2 { font-size:clamp(42px,5.2vw,68px); margin:14px 0 0; }.split-heading > p { width:320px; margin:0 0 8px; color:#59665f; }.destination-section{background:#f4f1e9;}.destination-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr 1.2fr; min-height:390px; }.destination-card { position:relative; padding:28px; min-height:390px; display:flex; align-items:flex-end; color:#fffdf5; overflow:hidden; background-size:cover; background-position:center; transition:transform .25s cubic-bezier(.23,1,.32,1); }.destination-card:hover{transform:translateY(-6px);}.destination-card:before {content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,31,23,.88),rgba(9,31,23,.1) 70%);}.destination-card>*{position:relative;z-index:1;}.destination-card.andalucia{background-image:linear-gradient(145deg,#2b6450,#7e9858);}.destination-card.mallorca{background-image:linear-gradient(145deg,#835947,#d79b62);}.destination-card.brava{background-image:linear-gradient(145deg,#456759,#97a96f);}.destination-card.canarias{background-image:linear-gradient(145deg,#4d7774,#e19b59);}.destination-number{position:absolute;top:22px;left:27px;font-size:12px;font-weight:800;color:#f3c4a9;}.card-sun{position:absolute;top:20px;right:20px;}.card-kicker{font-family:"Manrope",sans-serif!important;font-size:10px!important;line-height:1.4!important;letter-spacing:.13em!important;text-transform:uppercase;font-weight:800;color:#cb6a3a;margin-bottom:12px!important;}.destination-card .card-kicker{color:#efd2bd;}.destination-card h3{font-size:36px;margin-bottom:12px;}.destination-card p:not(.card-kicker){font-size:13px;line-height:1.55;margin-bottom:16px;}.card-meta{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;}.section-end{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid #d9d3c6;margin-top:24px;font-size:12px;}
.editorial-feature { min-height:700px; display:grid; grid-template-columns:1.15fr .85fr; background:#14352c; color:#fffdf5; }.feature-photo{min-height:700px;background-position:center;background-size:cover;}.feature-copy{padding:88px max(40px,calc((100vw - 1240px)/2)); padding-left:80px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}.feature-copy .eyebrow{color:#edb18e}.feature-copy .pin-dot{background:#edb18e}.feature-number{color:#86a494;font-size:12px;letter-spacing:.1em;margin:45px 0 -20px}.feature-copy h2{font-size:clamp(50px,5vw,72px);margin:18px 0 25px}.feature-copy h2 em{color:#eaa175}.feature-copy>p:not(.feature-number){color:#d9e1d8;max-width:400px;margin-bottom:30px;}
.resorts-section{background:#fffdf8;}.resort-grid{display:grid;grid-template-columns:1.1fr .95fr .95fr;gap:20px;}.resort-card{background:#f6f3eb;border:1px solid #e0dbcf;display:flex;flex-direction:column;}.resort-image{height:250px;position:relative;background-size:cover;background-position:center;}.resort-card.camiral .resort-image{background-image:linear-gradient(135deg,#173b2e,#6c8f4b);}.resort-card.lacala .resort-image{background-image:linear-gradient(135deg,#375e4c,#a6a56d);}.resort-card.finca .resort-image{background-image:linear-gradient(135deg,#567345,#d4aa71);}.resort-card.salobre .resort-image{background-image:linear-gradient(135deg,#506f62,#c57a44);}.resort-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,28,22,.25),transparent);}.resort-image .resort-tag{position:absolute;z-index:1;top:15px;left:15px;background:#fffdf5;color:#14352c;padding:5px 8px;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:800;}.resort-image button{position:absolute;z-index:1;top:12px;right:12px;width:35px;height:35px;display:grid;place-items:center;background:rgba(255,253,245,.92);border:0;color:#14352c;border-radius:50%;}.resort-body{padding:26px;display:flex;flex:1;flex-direction:column;align-items:flex-start;}.resort-body .card-kicker{display:flex;align-items:center;gap:4px;color:#748078;}.resort-body h3{font-size:30px;margin-bottom:12px;}.resort-body>p:not(.card-kicker){font-size:13px;line-height:1.6;color:#58665f;margin-bottom:20px;}.resort-body ul{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:7px;}.resort-body li{font-size:10px;color:#536259;display:flex;align-items:center;gap:4px;}.resort-body li svg{color:#cb6a3a;}.resort-body .text-link{margin-top:auto;}.resort-card.featured{background:#14352c;color:#fffdf5;}.resort-card.featured .resort-body>p:not(.card-kicker),.resort-card.featured .resort-body li{color:#d3dfd3;}.resort-card.featured .text-link{color:#fffdf5;}
.wellness-section{background:#e7e2d6;padding:110px 0;}.wellness-wrap{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:9vw;}.wellness-image{height:560px;background-position:center;background-size:cover;position:relative;}.wellness-image span{position:absolute;bottom:17px;left:17px;background:#14352c;color:#fffdf5;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:8px 10px;}.wellness-copy h2{font-size:clamp(49px,5.2vw,73px);margin:15px 0 25px;}.wellness-copy>p{max-width:480px;color:#59665f;}.wellness-points{display:flex;flex-wrap:wrap;gap:20px;margin:30px 0;}.wellness-points span{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;}.wellness-points svg{color:#cb6a3a;}.diary-preview{background:#fffdf8;}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #d9d3c6;border-bottom:1px solid #d9d3c6;}.guide-card{padding:28px;min-height:320px;border-right:1px solid #d9d3c6;position:relative;display:flex;flex-direction:column;align-items:flex-start;}.guide-card:last-child{border-right:0}.guide-index{font-size:11px;color:#a9a99c;font-weight:800;margin-bottom:auto;}.guide-card h3{font-size:31px;margin:14px 0;}.guide-card>p:not(.card-kicker){font-size:13px;color:#66736c;margin-bottom:20px;}.round-arrow{width:38px;height:38px;border-radius:50%;border:1px solid #bfb9ad;display:grid;place-items:center;transition:all .2s;color:#14352c;margin-top:auto;}.round-arrow:hover{background:#14352c;color:#fffdf5;border-color:#14352c;transform:translate(2px,-2px);}.newsletter{background:#cb6a3a;color:#fff8ee;padding:85px 0;}.newsletter>.site-width{display:grid;grid-template-columns:1fr .75fr;gap:110px;align-items:end;}.newsletter .eyebrow{color:#ffd4bc}.newsletter .pin-dot{background:#ffd4bc}.newsletter h2{font-size:clamp(45px,5vw,70px);margin:14px 0 0}.newsletter h2 em{color:#fff8ee}.newsletter p{font-size:15px;line-height:1.7}.email-form{border-bottom:1px solid #fff7ee;display:flex;margin:22px 0 11px}.email-form input{min-width:0;flex:1;border:0;background:transparent;color:#fffdf5;padding:12px 0;outline:0}.email-form input::placeholder{color:#f5d3c1}.email-form button{border:0;background:transparent;color:#fffdf5;padding:10px}.newsletter small{font-size:10px;color:#f7dac9;}
.footer{background:#102b23;color:#dce5d9;padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr 1fr;gap:45px;padding-bottom:60px}.footer .wordmark{color:#fffdf5;margin-bottom:17px}.footer-brand p{font-size:13px;max-width:240px;color:#bfcfc4}.footer-email{display:inline-flex;gap:7px;align-items:center;color:#f0b18b;font-size:12px;font-weight:700}.footer h4{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#e8a378;margin:9px 0 20px}.footer-grid>div:not(.footer-brand) a{display:block;font-size:12px;margin:0 0 12px;color:#dce5d9}.footer-grid>div:not(.footer-brand) a:hover{color:#f0b18b}.footer-note{border-left:1px solid rgba(255,255,255,.18);padding-left:25px}.footer-note .eyebrow{color:#e8a378}.footer-note .pin-dot{background:#e8a378}.footer-note p{font-size:13px}.footer-note .text-link{color:#fffdf5}.footer-bottom{height:55px;border-top:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#9db2a4}.footer-bottom a{color:#e8a378;font-weight:700}

.page-intro{position:relative;padding:105px 0 80px;display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;overflow:hidden}.page-intro:before{content:"";position:absolute;z-index:-1;width:370px;height:200px;top:80px;left:-105px;border:1px dashed rgba(20,53,44,.25);border-radius:0 0 80% 45%;transform:rotate(12deg)}.page-intro h1{font-size:clamp(61px,7.5vw,104px);margin:0 0 25px}.page-intro p{max-width:610px;font-size:17px;color:#536159;line-height:1.7}.page-intro .button{margin-top:14px}.route-signal{grid-column:1;align-self:start;justify-self:end;margin-right:35px;display:flex;align-items:center;gap:7px;color:#cb6a3a;font-size:10px;font-weight:800;position:relative;z-index:1}.route-signal span{background:#14352c;color:#fffdf5;padding:2px 5px;font-size:8px}.route-signal i{width:75px;height:32px;border-top:1px dashed #cb6a3a;border-radius:70% 0 0 0;position:absolute;top:20px;left:12px;transform:rotate(16deg)}.destination-list{border-top:1px solid #cfc9bd}.map-legend{display:flex;gap:28px;align-items:center;padding:18px 2px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#647168;background:linear-gradient(90deg,rgba(20,53,44,.05),transparent)}.map-legend span{display:inline-flex;align-items:center;gap:7px}.map-point{width:9px;height:9px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);display:inline-block}.map-point.coast{background:#cb6a3a}.map-point.island{background:#d2984a}.map-point.forest{background:#416c55}.map-point.atlantic{background:#4d7e7b}.destination-row{position:relative;display:grid;grid-template-columns:75px 1fr 1.15fr .75fr;gap:26px;align-items:center;padding:38px 16px;border-bottom:1px solid #cfc9bd;overflow:hidden}.destination-row:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .25s;background:linear-gradient(90deg,rgba(20,53,44,.06),transparent)}.destination-row:hover:before{opacity:1}.destination-row>*{position:relative;z-index:1}.destination-row-no{color:#cb6a3a;font-size:13px;font-weight:800}.destination-row h2{font-size:51px;margin:0}.destination-row>p{font-size:13px;color:#59665f;margin:0}.destination-row-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#6c786f}.region-notes{background:#14352c;color:#fffdf5;padding:100px 0}.region-notes .eyebrow{color:#efb28e}.region-notes .pin-dot{background:#efb28e}.intention-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.intention-grid article{border-top:1px solid rgba(255,255,255,.3);padding-top:20px}.intention-grid svg{color:#e8a378}.intention-grid h3{font-size:30px;margin:18px 0 10px}.intention-grid p{font-size:13px;color:#c5d3c8;min-height:62px}.intention-grid .text-link{color:#fffdf5;border-color:#e8a378}.criteria-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;border-top:1px solid #cfc9bd;padding-top:25px}.criteria-grid b{color:#cb6a3a;font-size:12px}.criteria-grid h3{font-size:28px;margin:15px 0 10px}.criteria-grid p{font-size:13px;color:#5c6961}
.filter-band{background:#e6e0d5;border-top:1px solid #d6cec0;border-bottom:1px solid #d6cec0}.filter-band>.site-width{min-height:78px;display:flex;align-items:center;gap:10px}.filter-band span{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-right:10px}.filter-band button{display:inline-flex;align-items:center;gap:18px;border:1px solid #c5bcad;background:#f7f4ed;padding:9px 12px;color:#14352c;font-size:11px}.result-line{display:flex;justify-content:space-between;border-bottom:1px solid #d9d3c6;padding-bottom:16px;margin-bottom:28px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#5e6b63}.resort-annotation{display:grid;grid-template-columns:75px 1fr 1fr;gap:27px;padding:33px 32px 30px;margin-bottom:24px;background:#e8e1d5;position:relative;overflow:hidden}.resort-annotation:after{content:"";position:absolute;right:-40px;top:-80px;width:280px;height:160px;border:1px dashed rgba(20,53,44,.25);border-radius:50%;transform:rotate(-18deg)}.resort-annotation>*{position:relative;z-index:1}.annotation-seal{width:55px;height:55px;border-radius:50%;background:#14352c;color:#f2b08a;display:grid;place-items:center;align-content:center;font-size:9px;line-height:1}.annotation-seal span{font-size:8px;color:#fffdf5}.resort-annotation h2{font-size:38px;margin:8px 0 0}.resort-annotation p{font-size:13px;color:#55635b;line-height:1.65;align-self:center;margin:0;max-width:330px}.all-resorts{grid-template-columns:repeat(2,1fr);gap:24px}.all-resorts .resort-card.featured{grid-column:span 2;display:grid;grid-template-columns:1.1fr .9fr}.all-resorts .resort-card.featured .resort-image{height:auto;min-height:315px}.listing-cta{background:#14352c;color:#fffdf5;padding:90px 0}.listing-cta>.site-width{display:grid;grid-template-columns:1fr 1fr;gap:14vw}.listing-cta .eyebrow{color:#eeb38d}.listing-cta .pin-dot{background:#eeb38d}.listing-cta h2{font-size:54px;margin:16px 0 0}.listing-cta h2 em{color:#eeb38d}.listing-cta p{color:#d5e0d5;font-size:15px;margin:34px 0 25px}
.escape-list{display:flex;flex-direction:column;gap:65px;padding-bottom:110px}.escape-row{display:grid;grid-template-columns:1.12fr .88fr;min-height:430px;background:#e8e2d7}.escape-row:nth-child(even){grid-template-columns:.88fr 1.12fr}.escape-row:nth-child(even) .escape-photo{order:2}.escape-photo{background-size:cover;background-position:center;position:relative}.escape-sol .escape-photo{background-image:linear-gradient(135deg,#9c714b,#25483b)}.escape-isla .escape-photo{background-image:linear-gradient(135deg,#497c72,#e5bd79)}.escape-norte .escape-photo{background-image:linear-gradient(135deg,#30534a,#a3a965)}.escape-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,40,30,.25),transparent)}.escape-photo span{position:absolute;z-index:1;top:22px;left:22px;background:#fffdf5;color:#14352c;font-size:10px;font-weight:800;padding:7px 9px;letter-spacing:.12em}.escape-content{padding:65px 8vw 50px 55px;display:flex;flex-direction:column;align-items:flex-start}.escape-content h2{font-size:clamp(39px,4vw,58px);margin:6px 0 20px}.escape-content>p:not(.card-kicker){color:#56635b;font-size:15px}.escape-detail{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:#65726a;font-weight:700;margin:16px 0 28px}.escape-detail svg{color:#cb6a3a;flex:0 0 auto}.seasonal-section{background:#f8f6ef}.seasonal-wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.seasonal-wrap h2{font-size:58px;margin:14px 0}.season-table{border-top:1px solid #cfc9bd}.season-table>div{display:grid;grid-template-columns:100px 1fr 1.3fr;gap:18px;align-items:center;border-bottom:1px solid #cfc9bd;padding:18px 0}.season-table span{font-size:10px;color:#cb6a3a;font-weight:800;letter-spacing:.1em}.season-table b{font-family:"DM Serif Display",serif;font-size:28px;font-weight:400}.season-table p{font-size:12px;color:#606d65;margin:0}
.guides-layout{display:grid;grid-template-columns:.3fr 1fr;gap:70px;padding-bottom:120px}.guides-layout aside{border-top:1px solid #cfc9bd;padding-top:15px;align-self:start;position:sticky;top:100px}.guides-layout aside a{display:block;font-size:12px;padding:12px 0;border-bottom:1px solid #d8d2c5;color:#526057}.guides-layout aside a:hover{color:#cb6a3a}.guides-long-list{border-top:1px solid #cfc9bd}.guides-long-list article{display:grid;grid-template-columns:70px 1fr;gap:18px;border-bottom:1px solid #cfc9bd;padding:38px 0}.guides-long-list article>span{font-size:12px;color:#cb6a3a;font-weight:800}.guides-long-list h2{font-size:43px;margin:0 0 13px}.guides-long-list p{color:#5e6b63;max-width:560px;font-size:14px}.tool-callout{background:#e5ded1;padding:85px 0}.tool-callout>.site-width{display:grid;grid-template-columns:.25fr .9fr 1fr;align-items:center;gap:35px}.tool-symbol{width:75px;height:75px;border-radius:50%;background:#cb6a3a;color:#fffdf5;display:grid;place-items:center}.tool-callout h2{font-size:51px;margin:0}.tool-callout p{font-size:14px;color:#5e6c63;max-width:360px}
.diary-hero{background:#14352c;color:#fffdf5;padding:105px 0 95px;position:relative;overflow:hidden}.diary-hero:after{content:"";position:absolute;right:-60px;bottom:-150px;width:530px;height:350px;border:1px dashed rgba(239,177,140,.6);border-radius:50%;transform:rotate(12deg);box-shadow:0 0 0 42px rgba(239,177,140,.06),0 0 0 84px rgba(239,177,140,.04)}.diary-hero>.site-width{position:relative;z-index:1}.diary-hero .eyebrow{color:#ebb18c}.diary-hero .pin-dot{background:#ebb18c}.diary-hero h1{font-size:clamp(62px,8vw,108px);margin:18px 0}.diary-hero h1 em{color:#e7a275}.diary-hero p{max-width:470px;color:#d5e0d5;font-size:16px}.diary-feature{display:grid;grid-template-columns:.85fr 1.15fr;margin-top:-45px;position:relative}.diary-feature-panel{background:#cb6a3a;color:#fffaf3;padding:57px 58px;min-height:440px}.diary-feature-panel .card-kicker{color:#ffdac5}.diary-feature-panel h2{font-size:54px;margin:13px 0 20px}.diary-feature-panel>p:not(.card-kicker){font-size:14px;line-height:1.7}.diary-feature-image{min-height:440px;background-size:cover;background-position:center}.note-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.note-card{display:flex;min-height:300px;padding:24px;flex-direction:column;align-items:flex-start;color:#fffdf5}.note-1{background:#21453a}.note-2{background:#7c8060}.note-3{background:#a06042}.note-4{background:#385f5b}.note-card>span{font-size:11px;color:#f6cdb6;font-weight:800;margin-bottom:auto}.note-card .card-kicker{color:#f8d9c8}.note-card h3{font-size:32px;margin:14px 0}.note-card>div{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:auto}.note-card small{font-size:10px;color:#e2ece1}.note-card .round-arrow{color:#fffdf5;border-color:rgba(255,255,255,.55);margin:0}
.detail-hero{background:#14352c;position:relative;color:#fffdf5;min-height:590px;overflow:hidden}.detail-hero-image{position:absolute;right:0;top:0;bottom:0;width:58%;background-size:cover;background-position:center;opacity:.75}.detail-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14352c,transparent)}.detail-hero-content{position:relative;z-index:1;padding-top:65px}.back-link{font-size:11px;font-weight:800;letter-spacing:.04em;display:inline-block;margin-bottom:70px;color:inherit}.detail-hero .card-kicker{color:#e8ac84}.detail-hero h1{font-size:clamp(66px,8vw,112px);margin:8px 0 20px}.detail-hero h1 em{color:#ebb18e}.detail-hero-content>p:last-child{font-size:16px;color:#dae5da;max-width:450px}.detail-facts{background:#e6e0d4}.detail-facts>.site-width{display:grid;grid-template-columns:repeat(4,1fr)}.detail-facts div{padding:28px 20px;border-right:1px solid #cdc5b6;display:flex;flex-direction:column;align-items:flex-start;gap:5px}.detail-facts div:first-child{border-left:1px solid #cdc5b6}.detail-facts svg{color:#cb6a3a}.detail-facts b{font-family:"DM Serif Display",serif;font-size:22px;font-weight:400}.detail-facts span{font-size:10px;color:#617067}.detail-main{padding:120px 0;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.detail-lead h2{font-size:56px;margin:15px 0}.detail-copy p{font-size:16px;color:#506057;line-height:1.75}.detail-copy .button{margin-top:18px}.stay-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ccc4b6;border-bottom:1px solid #ccc4b6}.stay-grid article{padding:35px 33px;min-height:205px;border-right:1px solid #ccc4b6}.stay-grid article:first-child{border-left:1px solid #ccc4b6}.stay-grid span{color:#cb6a3a;font-size:12px;font-weight:800}.stay-grid h3{font-size:31px;margin:16px 0 8px}.stay-grid p{font-size:13px;color:#5c6b62}.detail-related{padding:105px 0;background:#f8f5ed}.related-links{border-top:1px solid #d1cabb}.related-links a{padding:21px 0;border-bottom:1px solid #d1cabb;display:flex;align-items:center;justify-content:space-between;font-family:"DM Serif Display",serif;font-size:28px}.related-links a:hover{color:#cb6a3a}
.article-header{padding:65px 0 42px}.article-header>.eyebrow{margin-bottom:25px}.article-header h1{font-size:clamp(63px,8vw,112px);margin:0 0 25px}.article-deck{max-width:630px;font-size:18px;color:#506057}.article-byline{display:flex;gap:20px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-top:32px;color:#68756c}.article-image{width:min(100% - 48px,1240px);margin:auto;height:580px;background-size:cover;background-position:center}.article-body{width:min(100% - 48px,1000px);margin:95px auto 120px;display:grid;grid-template-columns:180px 1fr;gap:90px}.article-body aside{font-size:11px;font-weight:800;letter-spacing:.08em;align-self:start;position:sticky;top:105px}.article-body aside span{display:block;color:#cb6a3a;margin-bottom:12px}.article-body aside a{display:block;padding:7px 0;color:#59675f;font-size:11px;letter-spacing:0}.article-body>div{max-width:635px}.article-intro{font-family:"DM Serif Display",serif;font-size:31px;line-height:1.3;color:#14352c}.article-body h2{font-size:45px;margin:48px 0 14px}.article-body p{font-size:15px;color:#4e5d55;line-height:1.82}.article-callout{background:#e8e1d5;padding:30px;margin-top:50px}.article-callout p{font-family:"DM Serif Display",serif;font-size:27px;line-height:1.3;color:#14352c;margin:12px 0 20px}
.sale-page-hero{background:#14352c;color:#fffdf5;padding:125px 0 115px;position:relative;overflow:hidden}.sale-page-hero:after{content:"";position:absolute;right:-100px;bottom:-180px;width:520px;height:520px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.035),0 0 0 160px rgba(255,255,255,.02)}.sale-page-hero>.site-width{position:relative;z-index:1}.sale-page-hero .eyebrow{color:#eeb18b}.sale-page-hero .pin-dot{background:#eeb18b}.sale-page-hero h1{font-size:clamp(67px,9vw,130px);margin:18px 0}.sale-page-hero h1 em{color:#eeb18b}.sale-page-hero p{max-width:585px;color:#d6e1d7;font-size:17px}.sale-page-hero .button{margin-top:18px}.sale-case{padding:120px 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:11vw}.sale-case h2{font-size:clamp(49px,5.8vw,76px);margin:16px 0}.sale-case-copy p{font-size:16px;line-height:1.8;color:#536058}.sale-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cbc4b8;border-bottom:1px solid #cbc4b8}.sale-metrics>div{padding:35px 25px;border-right:1px solid #cbc4b8}.sale-metrics>div:first-child{border-left:1px solid #cbc4b8}.sale-metrics b{font-size:12px;color:#cb6a3a}.sale-metrics h3{font-size:29px;margin:18px 0 9px}.sale-metrics p{font-size:12px;color:#5b6860}.contact-section{padding:110px 0;background:#e5ded1}.contact-wrap{display:grid;grid-template-columns:1fr .8fr;gap:12vw;align-items:center}.contact-wrap h2{font-size:65px;margin:14px 0}.contact-wrap>div>p{font-size:15px;color:#5c6b62;max-width:475px}.contact-card{background:#fffdf7;padding:38px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 20px 50px rgba(20,53,44,.1)}.contact-card svg{color:#cb6a3a;margin-bottom:25px}.contact-card span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#69766e}.contact-card>a:not(.button){font-family:"DM Serif Display",serif;font-size:31px;border-bottom:1px solid #cb6a3a;margin:7px 0 15px}.contact-card p{font-size:12px;color:#5e6b63}.contact-card .button{margin-top:12px}

@media (max-width: 900px) { .desktop-nav,.header-search,.header-actions>.button{display:none}.mobile-menu-button{display:block}.mobile-menu{display:flex;flex-direction:column;position:absolute;top:80px;left:0;right:0;background:#fbfaf6;border-bottom:1px solid #d7d0c3;padding:15px 24px 22px;box-shadow:0 15px 28px rgba(20,53,44,.1)}.mobile-menu a{font-weight:800;font-size:14px;padding:14px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e0dbcf}.mobile-menu .mobile-sale{color:#cb6a3a}.home-hero{min-height:650px}.destination-grid{grid-template-columns:repeat(2,1fr)}.destination-card{min-height:300px}.resort-grid{grid-template-columns:repeat(2,1fr)}.resort-card.featured{grid-column:span 2}.editorial-feature{grid-template-columns:1fr}.feature-photo{min-height:390px}.feature-copy{padding:65px 8vw}.wellness-wrap{gap:7vw}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-note{grid-column:1 / -1;border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:25px 0 0}.page-intro{grid-template-columns:1fr;padding:80px 0 60px;gap:25px}.route-signal{position:absolute;right:20px;top:24px;margin:0}.destination-row{grid-template-columns:55px 1fr .9fr}.destination-row-meta{grid-column:2 / -1}.criteria-grid{grid-template-columns:repeat(2,1fr)}.all-resorts{grid-template-columns:1fr}.all-resorts .resort-card.featured{grid-column:auto;display:flex}.all-resorts .resort-card.featured .resort-image{min-height:250px;height:250px}.resort-annotation{grid-template-columns:65px 1fr}.resort-annotation p{grid-column:2}.escape-content{padding:47px}.guides-layout{gap:35px}.tool-callout>.site-width{grid-template-columns:.2fr 1fr}.tool-callout p{grid-column:2}.note-grid{grid-template-columns:repeat(2,1fr)}.detail-main{gap:7vw}.sale-metrics{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 620px) { .site-width{width:min(100% - 32px,1240px)}.sale-strip{font-size:10px}.sale-strip-inner{padding:7px 0;min-height:38px}.sale-strip-inner>span{display:none}.sale-strip-inner{justify-content:flex-end}.header-inner{height:78px}.wordmark{font-size:34.5px;gap:10px}.brand-symbol{width:42px;height:42px}.main-header .mobile-menu{top:78px}.home-hero{min-height:610px}.hero-content{padding-bottom:70px}.hero-content h1{font-size:63px}.hero-content p{font-size:15px}.hero-note,.hero-route-mark{display:none}.hero-actions{gap:18px}.section{padding:78px 0}.section-heading{align-items:flex-start;flex-direction:column;margin-bottom:32px}.section-heading h2{font-size:45px}.split-heading>p{width:auto;font-size:14px}.destination-grid{grid-template-columns:1fr}.destination-card{min-height:250px}.editorial-feature{min-height:0}.feature-photo{min-height:300px}.feature-copy{padding:55px 24px}.feature-copy h2{font-size:51px}.resort-grid,.resort-card.featured{grid-template-columns:1fr;display:flex}.resort-card.featured{grid-column:auto}.resort-image{height:220px}.wellness-section{padding:72px 0}.wellness-wrap{grid-template-columns:1fr;gap:40px}.wellness-image{height:390px}.wellness-copy h2{font-size:50px}.guide-grid{grid-template-columns:1fr}.guide-card{border-right:0;border-bottom:1px solid #d9d3c6;min-height:260px}.guide-card:last-child{border-bottom:0}.newsletter>.site-width{grid-template-columns:1fr;gap:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand,.footer-note{grid-column:1 / -1}.footer-bottom{gap:10px;height:auto;padding:16px 0;flex-wrap:wrap}.footer-bottom span:nth-child(2){display:none}.page-intro h1{font-size:58px}.page-intro p{font-size:15px}.page-intro:before{width:260px;height:150px;top:30px}.route-signal{right:10px;top:19px}.map-legend{overflow-x:auto;gap:18px;padding:15px 0}.map-legend span{white-space:nowrap}.destination-row{grid-template-columns:44px 1fr;gap:12px;padding:27px 0}.destination-row h2{font-size:41px}.destination-row>p{grid-column:2;font-size:13px}.destination-row-meta{grid-column:2}.intention-grid,.criteria-grid{grid-template-columns:1fr;gap:28px}.intention-grid p{min-height:0}.filter-band>.site-width{overflow-x:auto;padding:13px 0;min-height:65px}.filter-band span{display:none}.filter-band button{white-space:nowrap}.result-line{font-size:9px}.resort-annotation{grid-template-columns:48px 1fr;padding:25px 18px;gap:16px}.resort-annotation h2{font-size:34px}.resort-annotation p{grid-column:1 / -1}.listing-cta>.site-width,.seasonal-wrap,.contact-wrap{grid-template-columns:1fr;gap:32px}.listing-cta h2,.seasonal-wrap h2,.contact-wrap h2{font-size:50px}.escape-row,.escape-row:nth-child(even){grid-template-columns:1fr}.escape-row:nth-child(even) .escape-photo{order:0}.escape-photo{height:270px}.escape-content{padding:36px 25px}.season-table>div{grid-template-columns:1fr;gap:2px}.guides-layout{grid-template-columns:1fr;padding-bottom:75px}.guides-layout aside{position:relative;top:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:0}.guides-layout aside .eyebrow{grid-column:1 / -1}.guides-long-list article{grid-template-columns:42px 1fr;padding:28px 0}.guides-long-list h2{font-size:37px}.tool-callout>.site-width{grid-template-columns:1fr;gap:22px}.tool-callout p{grid-column:auto}.diary-hero{padding:72px 0}.diary-hero h1{font-size:60px}.diary-feature{grid-template-columns:1fr;margin-top:0;width:100%}.diary-feature-panel{padding:43px 24px;min-height:360px}.diary-feature-panel h2{font-size:48px}.diary-feature-image{min-height:280px}.note-grid{grid-template-columns:1fr}.note-card{min-height:245px}.detail-hero{min-height:580px}.detail-hero-image{width:100%;opacity:.36}.detail-hero-content{padding-top:42px}.detail-hero-content .back-link{margin-bottom:90px}.detail-hero h1{font-size:66px}.detail-facts>.site-width{grid-template-columns:repeat(2,1fr)}.detail-facts div{padding:20px 15px;border-left:1px solid #cdc5b6}.detail-main{grid-template-columns:1fr;padding:75px 0;gap:30px}.detail-lead h2{font-size:48px}.stay-grid{grid-template-columns:1fr}.stay-grid article{border-left:1px solid #ccc4b6;min-height:0}.related-links a{font-size:24px;gap:15px}.article-header{padding:45px 0 32px}.article-header h1{font-size:58px}.article-deck{font-size:16px}.article-byline{flex-direction:column;gap:3px}.article-image{height:330px;width:100%}.article-body{grid-template-columns:1fr;gap:35px;margin:65px auto 80px}.article-body aside{position:relative;top:auto;display:flex;gap:15px;flex-wrap:wrap}.article-body aside span{width:100%}.article-body h2{font-size:39px}.article-intro{font-size:27px}.sale-page-hero{padding:85px 0}.sale-page-hero h1{font-size:64px}.sale-case{grid-template-columns:1fr;gap:25px;padding:75px 0}.sale-case h2{font-size:53px}.sale-metrics{grid-template-columns:1fr}.sale-metrics>div{border-left:1px solid #cbc4b8}.contact-section{padding:75px 0}.contact-card{padding:28px}.contact-card>a:not(.button){font-size:27px} }
@media (prefers-reduced-motion: no-preference) { .destination-card,.resort-card,.guide-card,.note-card{animation:rise .5s cubic-bezier(.23,1,.32,1) both;} .destination-card:nth-child(2),.resort-card:nth-child(2),.guide-card:nth-child(2){animation-delay:.06s}.destination-card:nth-child(3),.resort-card:nth-child(3),.guide-card:nth-child(3){animation-delay:.12s}@keyframes rise{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}} }
@media (max-width: 620px) { .sale-strip-inner{justify-content:space-between}.sale-strip-inner>.sale-message{display:block;white-space:nowrap}.sale-description{display:none} }

/* Ajustes exclusivos de la versión estática: menú controlado por JavaScript vanilla. */
.mobile-menu{display:none!important}@media(max-width:900px){.mobile-menu.is-open{display:flex!important}}
.icon{width:1em;height:1em;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em;flex:0 0 auto}.icon-fill{fill:currentColor;stroke:none}.resort-image button{pointer-events:none}.filter-band button{cursor:default}.email-form button{cursor:default}
