@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/font-0.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-1.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-2.woff2) format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-3.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-4.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-5.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-6.woff2) format('woff2');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-7.woff2) format('woff2');
}
:root{color-scheme:dark;--accent:#b0cd99;--on-accent:#142217;--text:#edf0e7;--background:#0d1511;--surface:#17221c;--surface-raised:#243429;--muted:#b0baac;--border:#35483b;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--background);color:var(--text);font-family:'DM Sans',sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d9bc82;outline-offset:5px}button{border:0}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h2{font-family:'Manrope',sans-serif;font-size:36px;line-height:1.25;letter-spacing:-1.5px;font-weight:600}h2 em{font-family:var(--serif);font-weight:400}p{line-height:1.8} .announcement{background:#1c3024;color:#e6eadc;font-size:11px;text-align:center;padding:10px 24px;letter-spacing:.45px}.announcement span{margin-left:30px;color:#c6d0bc}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5.4%;gap:35px;background:var(--background);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-weight:bold;font-size:37px;line-height:1;letter-spacing:-1.8px}.brand-shield{width:43px;height:52px;object-fit:contain;flex-shrink:0}.brand-sub{font:8px 'DM Sans',sans-serif;letter-spacing:2.6px;display:block;margin-top:8px}.header nav{display:flex;gap:30px;font-size:13px}.header nav a{position:relative;padding:10px 0}.header nav a:hover{color:var(--accent)}.button{display:inline-flex;gap:32px;align-items:center;justify-content:center;background:var(--accent);color:var(--on-accent);padding:17px 23px;border-radius:6px;font-weight:500;font-size:13px;transition:background .2s,transform .2s}.button:hover{background:#c4ddb0;transform:translateY(-2px)}.button span{font-size:19px}.button.small{padding:12px 17px;gap:13px}.button .plan-count{font-size:10px;background:#14221718;border-radius:20px;min-width:18px;padding:3px}.cream{background:#c5d8ae;color:var(--on-accent)}.cream:hover{background:#d7e7c5}.menu-toggle{display:none}.hero{position:relative;margin:0 22px;height:min(660px,75vw);min-height:540px;border-radius:10px;overflow:hidden;color:white}.hero-image,.hero-shade{position:absolute;width:100%;height:100%;inset:0}.hero-image{object-position:50% 58%}.hero-shade{background:linear-gradient(90deg,rgba(13,37,30,.8),rgba(14,32,27,.32) 65%,rgba(13,37,30,.18)),linear-gradient(0deg,rgba(14,33,28,.65),transparent 35%)}.hero-content{position:relative;padding:89px 6%}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;margin-bottom:21px;color:var(--accent)}.eyebrow.light{color:#e3e6d8}.location-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#c9d8a7;margin-right:8px}.hero h1{font-family:'Manrope',sans-serif;font-size:clamp(48px,5.1vw,76px);line-height:1.1;letter-spacing:-3.5px;font-weight:500}.hero h1 em{font-family:var(--serif);font-weight:400;color:#e8e8d1}.hero p{margin:25px 0 30px;color:#e1e6df;font-size:14px;line-height:1.8}.hero-bottom{position:absolute;bottom:28px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.5px}.hero-bottom a{letter-spacing:0;font-size:11px}.hero-bottom a span{display:inline-block;margin-left:13px;border:1px solid #ffffff65;border-radius:50%;padding:8px 12px;font-size:17px}.photo-credit{position:absolute;bottom:108px;right:5%;background:#ffffff15;backdrop-filter:blur(9px);border:1px solid #ffffff60;border-radius:7px;padding:15px 18px;display:flex;gap:14px;color:white;font-size:12px}.values-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:31px 8%;border-bottom:1px solid var(--border)}.values-strip>span{display:flex;align-items:center;gap:12px;font-size:26px;color:var(--accent)}.values-strip b{font-size:11px;font-weight:500;color:var(--muted)}.section{max-width:1440px;padding:82px 6%;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:15px}.section-heading h2{font-size:31px}.section-heading>p{font-size:12px;color:var(--muted);flex-shrink:0;padding-bottom:3px}.explore-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:29px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filter{padding:11px 14px;border:1px solid var(--border);border-radius:30px;font-size:11px;background:transparent;white-space:nowrap}.filter:hover{background:var(--surface-raised)}.filter.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.search{display:flex;gap:6px;align-items:center;border-bottom:1px solid var(--border);padding:7px 0;color:var(--muted)}.search span{font-size:24px}.search input{width:163px;border:0;background:transparent;font-size:11px;color:var(--text);padding:4px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.experience-card{border:1px solid var(--border);background:var(--surface);border-radius:9px;overflow:hidden;transition:transform .25s,box-shadow .25s}.experience-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0005}.card-image{position:relative;height:230px;overflow:hidden}.card-image>img{width:100%;height:100%;transition:transform .6s}.experience-card:hover .card-image>img{transform:scale(1.04)}.image-tag{position:absolute;left:15px;top:15px;padding:7px 12px;background:#132219ed;border-radius:25px;font-size:10px}.save-button{position:absolute;right:14px;top:13px;width:34px;height:34px;background:#132219ed;border-radius:50%;font-size:24px;line-height:34px}.save-button[aria-pressed=true]{color:#ffd1b3;background:#542f24}.card-body{padding:22px}.card-location{color:var(--muted);font-size:10px;display:flex;justify-content:space-between;margin-bottom:9px}.card-location span{color:var(--accent)}h3{font-family:'Manrope',sans-serif;font-size:19px;font-weight:650;letter-spacing:-.6px}.card-body h3 button{background:none;text-align:left;padding:0;font:inherit}.card-body p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px;min-height:66px}.text-button{display:flex;align-items:center;justify-content:space-between;gap:25px;background:none;padding:0;font-size:11px;font-weight:600}.card-body .text-button{width:100%;border-top:1px solid var(--border);padding-top:17px;margin-top:21px}.text-button span{font-size:18px}.results-note{text-align:center;color:var(--muted);font-size:11px;margin-top:26px}.essence{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:35px;padding-bottom:100px;align-items:center}.essence-images{position:relative;padding-bottom:24px}.essence-images>img{width:100%;height:415px;border-radius:8px;object-position:70% center}.stamp{position:absolute;right:-28px;bottom:56px;background:var(--surface-raised);width:134px;height:134px;border-radius:50%;text-align:center;font-size:8px;letter-spacing:1.3px;padding:17px 10px;transform:rotate(9deg);border:5px solid var(--background);box-shadow:0 0 0 1px var(--border)}.stamp strong{font:italic 21px var(--serif);letter-spacing:0}.image-caption{position:absolute;bottom:0;font-size:10px;font-style:italic;color:var(--muted)}.essence-copy h2{font-size:42px;margin-bottom:24px}.essence-copy p{font-size:13px;color:var(--muted);margin-bottom:15px;max-width:420px}.essence-copy .text-button{margin-top:28px;display:inline-flex;border-bottom:1px solid var(--accent);padding-bottom:9px}.flavors{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:420px;background:#1b3024;color:var(--text);overflow:hidden}.flavors-content{padding:68px 12% 65px 15%}.flavors h2{font-size:44px}.flavors p{color:#d1dacb;font-size:13px;margin:23px 0 28px;max-width:365px}.flavors>img{width:100%;height:100%;position:absolute;left:53%;width:47%;object-position:50% 57%}.flavor-caption{position:absolute;bottom:20px;right:25px;font:italic 15px var(--serif);text-shadow:0 1px 8px #000}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.visit-card{background:var(--surface);border:1px solid var(--border);padding:28px;text-align:left;border-radius:8px;transition:background .2s}.visit-card:hover{background:var(--surface-raised)}.visit-icon{display:grid;place-items:center;background:var(--surface-raised);color:var(--accent);width:44px;height:44px;border-radius:50%;font-size:24px;margin-bottom:23px}.visit-card p{font-size:12px;color:var(--muted);margin:13px 0 22px;max-width:280px}.closing{position:relative;text-align:center;background:#19291f;padding:62px 20px 65px;overflow:hidden}.closing .eyebrow{position:relative;z-index:1}.closing h2{font-size:49px;margin-bottom:26px;position:relative;z-index:1}.closing .button{position:relative;z-index:1}.closing-lines{position:absolute;inset:0;opacity:.3;background:repeating-radial-gradient(ellipse at -10% 120%,transparent 0,transparent 23px,#6f885b 24px,transparent 25px,transparent 40px);mask-image:linear-gradient(90deg,#000,transparent 37%,transparent 70%,#000)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;padding:47px 6% 22px;gap:30px;align-items:center}footer .brand{font-size:34px}footer p{font-size:12px;color:var(--muted)}footer>div{display:flex;gap:22px;justify-content:end;font-size:11px}footer button{background:none;padding:0;font-size:11px}footer small{border-top:1px solid var(--border);padding-top:22px;grid-column:1/-1;font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.skip-link{position:fixed;top:-60px;z-index:100;background:var(--surface-raised);padding:15px}.skip-link:focus{top:0}[hidden]{display:none!important}dialog{border:0;border-radius:13px;padding:0;width:min(620px,calc(100% - 32px));max-height:88vh;color:var(--text);background:var(--surface);box-shadow:0 20px 100px #0009}dialog::backdrop{background:#020805d9;backdrop-filter:blur(5px)}dialog>img{width:100%;height:260px}.dialog-close{position:absolute;right:14px;top:14px;z-index:2;background:var(--background);border:1px solid var(--border);border-radius:50%;width:36px;height:36px;font-size:25px}.dialog-content{padding:36px}.dialog-content h2{font-size:30px;margin-bottom:20px}.dialog-content>p{font-size:13px;color:var(--muted);margin-bottom:20px}.tip{background:var(--surface-raised);padding:20px;border-radius:7px;font-size:12px;margin:22px 0}.tip p{margin-top:6px}.plan-item{display:flex;gap:15px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.plan-item img{width:70px;height:65px;border-radius:6px}.plan-item div{flex:1}.plan-item h3{font-size:15px}.plan-item p{font-size:11px;color:var(--muted)}.plan-item button{background:none;font-size:12px;text-decoration:underline}#plan-items{margin:24px 0}#download-plan:disabled{opacity:.4;cursor:default}.dialog-content .fine-print{font-size:10px;margin-top:16px}.gallery-controls{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.gallery-controls h2{font-size:20px}.gallery-controls button{border:1px solid var(--border);border-radius:50%;width:38px;height:38px;background:var(--surface-raised)}#gallery-dialog{width:min(1000px,calc(100% - 32px))}#gallery-dialog>img{height:min(55vw,550px)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--surface-raised);color:var(--text);padding:13px 23px;border-radius:8px;box-shadow:0 4px 25px #0002;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:50;max-width:90vw;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}body.modal-open{overflow:hidden}#empty-results{padding:40px 0;text-align:center;color:var(--muted)}
@media(min-width:1500px){.hero{max-width:1600px;margin:auto}.header{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}
@media(max-width:1100px){.header{gap:20px;padding:0 4%}.header nav{gap:17px;font-size:11px}.section{padding-left:5%;padding-right:5%}.section-heading h2{font-size:27px}.section-heading>p{font-size:11px}.explore-tools{flex-wrap:wrap}.card-image{height:200px}.cards{gap:18px}.card-body{padding:18px}.card-body h3{font-size:17px}.values-strip{padding:25px 5%}.values-strip b{font-size:10px}.essence{gap:8%}.flavors-content{padding-left:10%;padding-right:8%}.flavors h2{font-size:38px}footer>div{gap:14px}}
@media(max-width:760px){html{scroll-padding-top:83px}.announcement{font-size:10px;padding:9px}.announcement span{display:none}.header{height:77px;gap:14px;padding:0 5%}.brand{font-size:30px}.brand-shield{width:34px;height:41px}.brand-sub{font-size:7px;letter-spacing:1.9px}.menu-toggle{display:block;margin-left:auto;background:transparent;font-size:23px;order:3}.header-plan.button{font-size:11px;padding:10px 12px;gap:7px}.header nav{display:none;position:absolute;left:0;right:0;top:77px;background:var(--background);padding:18px 6% 25px;box-shadow:0 12px 12px #0001;font-size:14px}.header nav.open{display:flex;flex-direction:column;gap:7px}.hero{margin:0 10px;height:600px;min-height:0;border-radius:8px}.hero-content{padding:70px 7%}.hero h1{font-size:49px;letter-spacing:-2px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero p{font-size:13px;margin-top:22px}.hero .button{font-size:11px;gap:18px;padding:15px 18px}.hero-bottom{left:7%;right:7%;bottom:22px}.hero-bottom>span{max-width:130px;font-size:8px;line-height:1.8}.hero-bottom a{font-size:10px}.photo-credit{bottom:100px;right:auto;left:7%;padding:10px 13px;font-size:10px}.values-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:24px 6%}.values-strip>span{font-size:22px;gap:8px}.values-strip b{font-size:9px}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:25px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.section-heading h2{font-size:29px;letter-spacing:-1px}.section-heading h2 em{display:block;margin-top:4px}.section-heading>p{font-size:12px;margin-top:17px}.explore-tools{gap:18px}.filters{gap:7px}.filter{padding:10px 13px;font-size:10px}.search{width:100%}.search input{width:100%;font-size:12px}.cards{grid-template-columns:1fr;gap:22px}.card-image{height:240px}.card-body{padding:22px}.card-body h3{font-size:21px}.card-body p{font-size:13px;min-height:0}.card-body .text-button{font-size:12px}.essence{grid-template-columns:1fr;gap:35px;padding-top:15px;padding-bottom:58px}.essence-images{margin-right:20px}.essence-images>img{height:320px}.stamp{right:-20px;width:125px;height:125px;bottom:42px}.essence-copy h2{font-size:36px}.flavors{grid-template-columns:1fr}.flavors-content{padding:45px 7%}.flavors h2{font-size:38px}.flavors>img{position:static;width:100%;height:260px}.flavors p{max-width:none}.flavor-caption{font-size:13px}.visit-grid{grid-template-columns:1fr;gap:15px}.visit-card{padding:24px}.visit-icon{float:left;margin-right:17px;width:40px;height:40px;font-size:23px}.visit-card h3{padding-top:9px}.visit-card p{clear:both;max-width:none}.closing{padding:48px 20px}.closing .eyebrow{font-size:8px}.closing h2{font-size:43px}footer{grid-template-columns:1fr 1fr;padding:35px 6% 20px;gap:26px}footer>div{grid-column:1/-1;justify-content:start;gap:25px}footer small{font-size:9px;gap:20px;line-height:1.7}footer small span{text-align:right}.dialog-content{padding:32px 23px}.dialog-content h2{font-size:27px}dialog>img{height:220px}.plan-item h3{font-size:13px}.plan-item button{font-size:10px}.gallery-controls{padding:17px}.gallery-controls h2{font-size:16px}.gallery-controls button{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Dark surfaces retain clear hover, focus and placeholder states. */
::selection{background:var(--accent);color:var(--on-accent)}
.search input::placeholder{color:var(--muted);opacity:1}
.text-button{color:var(--accent)}
.image-tag,.save-button{color:var(--text);box-shadow:0 1px 8px #0004}
.dialog-close:hover,.gallery-controls button:hover{background:var(--border)}
footer{background:#0a110d}

/* Videos sin controles que llenan el mismo espacio que las imágenes. */
.card-image>.experience-video{display:block;width:100%;height:100%;object-fit:cover;background:#080d0a}
#detail-video{display:block;width:100%;height:260px;object-fit:cover;background:#080d0a}

@media(max-width:760px){.photo-credit,dialog::backdrop{backdrop-filter:none}.experience-card:hover{transform:none}}
@media(max-width:360px){.header{gap:8px;padding:0 12px}.header .brand{font-size:28px}.header .brand-shield{width:30px;height:36px}.header-plan.button{padding:10px;gap:5px}}

@media(max-width:760px){#detail-video{height:220px}}

/* El menú ampliado usa el desplegable también en pantallas intermedias. */
@media(min-width:761px) and (max-width:1100px){.menu-toggle{display:block;margin-left:auto;background:transparent;font-size:23px;order:3}.header nav{display:none;position:absolute;left:0;right:0;top:94px;background:var(--background);padding:18px 6% 25px;box-shadow:0 12px 12px #0001;font-size:14px}.header nav.open{display:flex;flex-direction:column;gap:7px}}
@media(min-width:1101px) and (max-width:1300px){.header{padding-left:3%;padding-right:3%;gap:20px}.header nav{gap:18px;font-size:12px}}
