@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--green:#193b32;--deep:#122c26;--cream:#f7f5ee;--sand:#eae5d8;--lime:#dce9a2;--ink:#243c32;--muted:#6d776b;--line:#d8ddcf;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.65 var(--sans)}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b19152;outline-offset:4px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1}h1{font-size:clamp(50px,5.9vw,92px);letter-spacing:-3px}h2{font-size:clamp(34px,3.5vw,54px);letter-spacing:-1.8px}h3{font-size:30px;letter-spacing:-.7px}em{font-weight:400}p{line-height:1.75}button,a{touch-action:manipulation}[hidden]{display:none!important}.eyebrow{font:600 10px/1.5 var(--sans);letter-spacing:2.3px;margin-bottom:20px;color:#6d7c62}.eyebrow.light{color:#e4ebd5}.light{color:#fff}.header{height:86px;display:flex;align-items:center;padding:0 4.3%;gap:32px;background:var(--cream);position:sticky;top:0;z-index:20;border-bottom:1px solid #e5e6dc}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}.brand img{width:45px;height:45px}.brand span{font:11px/1.4 var(--sans);letter-spacing:2.5px}.brand strong{display:block;font:600 19px/1.2 var(--serif);letter-spacing:.5px}.header nav{display:flex;gap:27px;margin:auto;font-size:12px}.header nav a{padding:30px 0;position:relative}.header nav a.active:after{content:'';position:absolute;bottom:18px;left:0;right:0;height:2px;background:var(--green)}.nav-actions{display:flex;align-items:center;gap:18px}.bag{font-size:12px;white-space:nowrap;padding:10px 0}.bag span{display:inline-grid;place-items:center;background:var(--sand);width:24px;height:24px;border-radius:50%;margin-left:5px}.btn{background:var(--lime);color:var(--deep);padding:17px 24px;border-radius:3px;display:inline-flex;justify-content:center;align-items:center;gap:25px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.btn:hover{background:#e8f3bc;transform:translateY(-2px)}.btn.small{padding:12px 18px;font-size:11px}.btn.dark{background:var(--green);color:white}.btn.dark:hover{background:#2b5144}.btn:disabled{opacity:.5;cursor:not-allowed}.full{width:100%}.text-link{font-size:13px;display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid #9aa795;padding:8px 0}.text-link.light{border-color:#ffffff70}.menu-toggle{display:none}.hero{height:min(760px,calc(100svh - 86px));min-height:620px;position:relative;color:white;overflow:hidden}.hero-img{position:absolute;inset:0;height:100%;object-position:center 52%;animation:heroReveal 1.2s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,29,21,.84),rgba(9,29,21,.4) 55%,rgba(9,29,21,.07)),linear-gradient(0deg,rgba(9,29,21,.55),transparent 25%)}.hero-content{position:relative;padding:65px 6.5%;max-width:1000px}.hero h1 em{color:#dfe8bc}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);margin:0 9px 1px 0}.hero-copy{margin-top:23px;color:#e2e7dc;font-size:15px}.hero-buttons{display:flex;align-items:center;gap:30px;margin-top:30px}.hero-bottom{position:absolute;bottom:25px;left:6.5%;right:6.5%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px}.hero-bottom a{font-size:11px;letter-spacing:0}.photo-peek{position:absolute;right:6.5%;bottom:95px;display:flex;gap:16px;align-items:center;text-align:left;color:white;padding:12px;background:#f8f5e912;border:1px solid #ffffff40;backdrop-filter:blur(12px);border-radius:3px}.photo-peek img{width:80px;height:74px}.photo-peek span{font-size:8px;letter-spacing:1.5px;padding-right:12px}.photo-peek strong{display:block;font:18px/1.5 var(--serif);letter-spacing:0;margin-top:5px}.values-strip{display:flex;justify-content:space-between;gap:20px;background:var(--green);color:#dbe2cb;padding:22px 6.5%;font-size:11px;letter-spacing:.6px}.section{padding:85px 6.5%}.section-pad{margin:0 6.5%}.intro{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:70px;padding-bottom:45px}.intro>p{font-size:15px;max-width:410px;color:var(--muted);margin-bottom:4px}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.path-card{height:470px;position:relative;overflow:hidden;border-radius:4px;color:white}.path-card>img{height:100%;transition:transform .8s}.path-card:first-child>img{object-position:center 48%}.path-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102a24e8,transparent 100%)}.path-card:hover img{transform:scale(1.04)}.path-card>div{position:absolute;inset:auto 36px 28px;z-index:1}.path-card h3{font-size:42px}.path-card p{font-size:12px;color:#d6e2d7;margin-top:15px}.card-link{display:flex;justify-content:space-between;align-items:center;font-size:12px;border-top:1px solid #ffffff40;margin-top:25px;padding-top:17px}.card-link b{font:25px var(--sans)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.section-top>p{font-size:13px;max-width:350px;color:var(--muted)}.preview-products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-photo{height:280px;position:relative;overflow:hidden;background:var(--sand);border-radius:4px}.product-photo img{height:100%;transition:transform .6s}.product:hover img{transform:scale(1.04)}.product-tag{position:absolute;top:14px;left:14px;background:#f7f5eeeb;border-radius:2px;padding:5px 10px;font-size:8px;letter-spacing:1.5px}.product-bottom{display:flex;align-items:start;justify-content:space-between;padding-top:17px;gap:15px}.product h3{font-size:25px}.product p{font-size:11px;color:var(--muted);margin-top:8px}.add-btn{border:1px solid #b5bfae;border-radius:50%;width:38px;height:38px;font-size:23px;line-height:1;flex-shrink:0;transition:background .2s}.add-btn:hover{background:var(--green);color:white}.experience-banner{display:grid;grid-template-columns:1.05fr 1fr;background:var(--green);color:white}.experience-banner>img{height:540px}.experience-banner>div{padding:68px 14% 60px 13%;display:flex;flex-direction:column;align-items:start;justify-content:center}.experience-banner h2{font-size:64px;color:#f3f3df}.experience-banner p:not(.eyebrow){margin:25px 0 28px;color:#d3dfd5;font-size:13px}.roots{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:90px}.roots h2{font-size:42px}.roots p:not(.eyebrow){font-size:14px;color:var(--muted);margin:26px 0;max-width:470px}.root-photo{position:relative;padding:0;border-radius:4px;overflow:hidden;transform:rotate(2deg)}.root-photo img{height:350px}.root-photo span{position:absolute;bottom:0;left:0;right:0;background:#142d24c9;color:white;padding:15px;font-size:11px}.page-intro{position:relative;background:#eaeede;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:60px 6.5%;min-height:420px}.page-intro h1{font-size:74px}.page-intro p:not(.eyebrow){margin-top:24px;max-width:450px;color:#5e6e5c}.page-intro>img{height:340px;border-radius:160px 160px 3px 3px;object-position:center 40%}.image-caption{position:absolute;bottom:23px;right:10%;font-size:8px;letter-spacing:2px}.shop{padding-top:45px}.shop-tools{display:flex;gap:25px;justify-content:space-between;align-items:center}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button,.experience-tabs button{padding:10px 18px;border:1px solid #ccd3c4;border-radius:30px;font-size:12px}.filters button.active,.experience-tabs button.active{background:var(--green);color:white;border-color:var(--green)}.search{display:flex;gap:12px;border-bottom:1px solid #bec8b8;align-items:center;min-width:230px}.search span{font-size:25px}.search input{background:none;border:0;min-width:0;width:100%;padding:10px 0;font-size:12px}.shop-note{font-size:11px;color:var(--muted);margin:24px 0 34px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}.product-grid .product-photo{height:280px}.product-description{font-size:12px!important;min-height:42px;margin-top:10px!important}.b2b{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:white;margin-bottom:85px;overflow:hidden;border-radius:4px}.b2b>div{padding:55px}.b2b>img{height:100%;min-height:420px}.b2b p:not(.eyebrow){margin:24px 0;max-width:380px;color:#d5dfcf;font-size:13px}.experience-hero{height:570px;position:relative;color:white}.experience-hero>img{height:100%}.experience-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#142c26db,#142c2615)}.experience-hero>div{position:absolute;top:65px;left:6.5%;z-index:1}.experience-hero h1{font-size:70px}.experience-hero .btn{margin-top:30px}.experience-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:35px}.experience-detail{display:grid;grid-template-columns:1.1fr 1fr;background:#edeedd}.experience-detail>img{height:430px}.experience-detail>div{padding:45px}.experience-detail h3{font-size:38px}.experience-detail p{margin:20px 0;color:#68735f;font-size:14px}.experience-detail ul{padding-left:18px;font-size:12px;line-height:2.2;margin:0 0 20px}.gallery-section{padding-top:0}.gallery-section .section-top>span{font-size:11px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.gallery-grid button{padding:0;position:relative;overflow:hidden;border-radius:3px}.gallery-grid button:first-child{grid-row:span 2}.gallery-grid img{height:190px;transition:transform .5s}.gallery-grid button:first-child img{height:396px}.gallery-grid button:hover img{transform:scale(1.05)}.gallery-grid span{position:absolute;bottom:12px;right:12px;background:var(--cream);border-radius:50%;width:28px;height:28px;line-height:28px}.questions{padding-top:0;display:grid;grid-template-columns:1fr 1.4fr;gap:70px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:14px}details p{font-size:13px;color:var(--muted);margin-top:15px}.event-hero h1{font-size:76px}.event-hero p:not(.eyebrow){margin-top:22px}.venue-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.venue-grid img{height:310px;border-radius:4px;margin-bottom:25px}.venue-grid p{font-size:13px;margin:17px 0;color:var(--muted)}.event-cta{text-align:center;background:#eaeede;padding-top:65px;padding-bottom:65px}.event-cta .btn{margin-top:30px}footer{background:var(--deep);color:#e2e7d7;padding:60px 6.5% 24px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-bottom:40px}.footer-main .brand{margin-bottom:18px}.footer-main h4{font-size:12px;margin:0 0 18px}.footer-main p,.footer-main a:not(.brand){font-size:12px;color:#b9c6b8}.footer-main a:not(.brand){display:block;margin:10px 0}.footer-bottom{padding-top:22px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:10px;color:#aabca9}.footer-bottom button{font-size:10px}.floating-plan{position:fixed;bottom:24px;right:26px;display:flex;align-items:center;gap:12px;background:var(--cream);border:1px solid #d1d7c5;box-shadow:0 4px 20px #0d271a18;border-radius:30px;padding:12px 18px;font-size:11px;z-index:15}.floating-plan>span:first-child{color:#668341;font-size:19px}.toast{position:fixed;bottom:85px;left:50%;transform:translate(-50%,20px);background:var(--green);color:white;box-shadow:0 5px 25px #0002;padding:13px 25px;border-radius:3px;z-index:100;opacity:0;pointer-events:none;transition:.25s;font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:0;color:var(--ink);background:var(--cream);padding:0;box-shadow:0 20px 100px #0003;max-height:94svh;border-radius:6px}dialog::backdrop{background:#0d241dbd;backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:30px}.dialog-head .eyebrow{margin-bottom:12px}.close{position:absolute;top:15px;right:15px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--cream);font:28px/1 var(--sans);z-index:2}.drawer{width:460px;max-width:100%;height:100svh;max-height:100svh;margin:0 0 0 auto;border-radius:0;padding:40px 30px}.cart-row{display:flex;gap:15px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-row img{width:65px;height:75px;border-radius:3px}.cart-row-content{flex:1}.cart-row h3{font-size:20px}.cart-row p{font-size:10px;color:var(--muted)}.quantity{display:flex;align-items:center;gap:14px;margin-top:8px;font-size:13px}.quantity button{border:1px solid var(--line);width:28px;height:28px;border-radius:50%;font-size:16px}.remove{font-size:11px;text-decoration:underline;padding:0}.cart-empty{text-align:center;padding:30px 0}.cart-empty p{font-size:13px;margin:20px 0}.cart-empty>span{font-size:42px}form label{display:flex;flex-direction:column;gap:7px;font-size:11px;margin-top:18px;font-weight:500}input,select,textarea{background:#fffdf8;border:1px solid #ccd3c4;border-radius:3px;padding:12px;color:var(--ink);width:100%;font-size:13px}textarea{resize:vertical}.form-note{font-size:10px;color:var(--muted);margin:20px 0 15px;line-height:1.6}.planner{width:930px;max-width:95vw}.planner[open]{display:grid;grid-template-columns:.8fr 1fr}.planner-visual{position:relative;min-height:100%;overflow:hidden}.planner-visual>img{height:100%;position:absolute;inset:0}.planner-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#142d25dd,#142d2520)}.planner-visual>div{position:absolute;bottom:45px;left:30px;right:25px;color:white;z-index:1}.planner-visual h2{font-size:47px}.planner-visual p:not(.eyebrow){font-size:13px;margin-top:20px}.planner-body{padding:35px}.planner-body h2{font-size:36px}.planner-body>.eyebrow{margin-bottom:14px}.form-row{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.plan-suggestion{background:#e9eddd;border-left:2px solid #92a76c;padding:13px 16px;margin-top:18px;font-size:11px;color:#58664d}.plan-suggestion strong{display:block;font-size:11px;margin-bottom:5px}.lightbox{width:min(1050px,94vw);background:var(--deep);color:white}.lightbox>img{height:76svh;object-fit:contain}.gallery-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font-size:12px}.gallery-controls button{color:white;padding:8px 20px;font-size:24px}.privacy{max-width:560px;padding:45px}.privacy p:not(.eyebrow){margin:25px 0;font-size:14px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:10px;z-index:200}.skip:focus{top:10px}@keyframes heroReveal{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(min-width:1600px){.hero-content{padding-top:85px}.hero{height:800px}.header{gap:50px}.header nav{gap:40px}.section,.section-pad{max-width:1500px;margin-left:auto;margin-right:auto}.section-pad{width:87%}}
@media(max-width:1150px){.header{gap:20px;padding:0 4%}.header nav{gap:18px;font-size:11px}.nav-actions{gap:12px}.nav-actions>.btn{display:none}.hero-content{padding-top:70px}.hero{height:700px;min-height:600px}.photo-peek{right:4%;bottom:85px}.hero-buttons{gap:25px}.roots{gap:45px}.experience-banner>div{padding:50px 12%}.experience-banner h2{font-size:54px}}
@media(max-width:760px){h1{letter-spacing:-2px}h2{letter-spacing:-1px}.header{height:72px;padding:0 20px}.brand img{width:38px;height:38px}.brand span{font-size:8px}.brand strong{font-size:16px}.nav-actions{margin-left:auto;gap:16px}.bag{font-size:10px}.menu-toggle{display:block;font-size:22px;padding:0}.header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:15px 25px 25px;box-shadow:0 15px 15px #0001}.header nav.open{display:flex;flex-direction:column;gap:0}.header nav a{font-size:15px;padding:13px 0}.header nav a.active:after{bottom:7px;width:35px}.hero{height:710px;min-height:0;max-height:calc(100svh - 72px)}.hero-content{padding:48px 25px}.hero h1{font-size:59px}.hero-shade{background:linear-gradient(90deg,#10271ed4,#10271e55),linear-gradient(0deg,#10271eb8,transparent)}.hero-img{object-position:60% center}.hero-copy{font-size:13px;margin-top:25px}.hero-buttons{align-items:start;flex-direction:column;gap:10px;margin-top:25px}.hero-buttons .btn{font-size:11px;padding:15px 18px;gap:12px}.hero-buttons .text-link{font-size:12px}.photo-peek{display:none}.hero-bottom{left:25px;right:25px;bottom:25px}.hero-bottom>span{font-size:7px;letter-spacing:1px;max-width:200px}.hero-bottom a{font-size:10px}.values-strip{display:grid;grid-template-columns:1fr 1fr;padding:20px 25px;gap:15px;font-size:9px;letter-spacing:0}.section{padding:55px 25px}.section-pad{margin-left:25px;margin-right:25px}.intro{grid-template-columns:1fr;gap:23px;padding-bottom:30px}.intro>p{font-size:13px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:15px}.path-grid{grid-template-columns:1fr;gap:18px}.path-card{height:400px}.path-card>div{left:25px;right:25px;bottom:25px}.path-card h3{font-size:37px}.section-top{align-items:start;gap:20px;flex-direction:column;margin-bottom:28px}.section-top h2{font-size:36px}.preview-products{grid-template-columns:1fr;gap:30px}.preview-products .product{display:grid;grid-template-columns:130px 1fr;gap:18px}.preview-products .product-photo{height:150px}.preview-products .product-bottom{padding-top:10px}.preview-products .product-tag{font-size:7px;left:8px;top:8px;padding:4px 7px}.product h3{font-size:23px}.add-btn{width:33px;height:33px}.experience-banner{grid-template-columns:1fr}.experience-banner>img{height:300px}.experience-banner>div{padding:40px 25px 50px}.experience-banner h2{font-size:48px}.roots{grid-template-columns:1fr;gap:35px}.roots h2{font-size:34px}.root-photo img{height:280px}.page-intro{padding:40px 25px;grid-template-columns:1.3fr 1fr;gap:20px;min-height:0}.page-intro h1{font-size:44px}.page-intro p:not(.eyebrow){font-size:12px;margin-top:18px}.page-intro>img{height:260px;border-radius:90px 90px 3px 3px}.image-caption{display:none}.shop-tools{align-items:stretch;flex-direction:column;gap:15px}.filters{gap:6px}.filters button{padding:9px 12px;font-size:10px}.shop-note{font-size:10px}.product-grid{grid-template-columns:1fr 1fr;gap:30px 15px}.product-grid .product-photo{height:185px}.product-grid .product-tag{font-size:7px;left:9px;top:9px}.product-grid h3{font-size:22px}.product-grid .product-bottom{gap:5px}.product-description{font-size:10px!important}.b2b{grid-template-columns:1fr;margin-bottom:55px}.b2b>div{padding:32px 25px}.b2b>img{height:260px;min-height:0}.experience-hero{height:520px}.experience-hero>div{top:55px;left:25px;right:25px}.experience-hero h1{font-size:49px}.experience-hero>img{object-position:63% center}.experience-tabs{gap:7px}.experience-tabs button{font-size:10px;padding:9px 12px}.experience-detail{grid-template-columns:1fr}.experience-detail>img{height:270px}.experience-detail>div{padding:30px 25px}.experience-detail h3{font-size:32px}.gallery-section{padding-top:0}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-grid button:first-child{grid-column:span 2;grid-row:auto}.gallery-grid button:first-child img{height:240px}.gallery-grid img{height:170px}.questions{grid-template-columns:1fr;gap:15px;padding-top:0}.venue-grid{grid-template-columns:1fr;gap:40px}.venue-grid img{height:270px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-bottom{gap:18px;flex-wrap:wrap}.footer-bottom span:nth-child(2){display:none}footer{padding:45px 25px 90px}.floating-plan{bottom:15px;right:15px;font-size:10px;padding:10px 15px}.planner[open]{display:block}.planner-visual{display:none}.planner-body{padding:35px 22px 25px}.planner-body h2{font-size:31px}.planner-body .eyebrow{padding-right:30px}.planner{max-height:94svh}.drawer{padding:35px 22px}.toast{max-width:90%;width:max-content;font-size:12px}.lightbox>img{height:65svh}.privacy{max-width:92vw;padding:40px 25px}.form-row{grid-template-columns:1.3fr 1fr;gap:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
/* A tactile 3D chapter, with the real hacienda beside its conceptual model. */
.world-section{background:#193b32;padding:70px 6.5% 40px;color:#f2f2e4;scroll-margin-top:85px}.world-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.world-heading h2{font-size:47px}.world-heading>p{font-size:12px;color:#c4d2bc;max-width:300px}.world-heading .eyebrow{color:#becf96}.world-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;overflow:hidden;border-radius:6px;background:#e9eddf;box-shadow:0 22px 50px #071a1720}.world-view{position:relative;min-height:540px;background:radial-gradient(ellipse at 45% 40%,#f1f1df,#d0dbbf);transition:background 1s;isolation:isolate}.sunset .world-view{background:radial-gradient(ellipse at 45% 40%,#a8aa9b,#636f6a)}#world-canvas{position:absolute;inset:0;cursor:grab;touch-action:pan-y}#world-canvas.dragging{cursor:grabbing}#world-canvas canvas{width:100%;height:100%;display:block}.world-badge{position:absolute;top:24px;left:24px;font-size:8px;letter-spacing:1.6px;z-index:2;color:#294b3e;pointer-events:none}.world-badge .dot{background:#6b8651}.world-light{position:absolute;right:18px;top:16px;background:#fcfaedc9;color:#244237;border:1px solid #62795d30;padding:9px 13px;font-size:10px;border-radius:24px;z-index:3}.world-hotspots{position:absolute;inset:0;pointer-events:none}.world-pin{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);padding:10px;filter:drop-shadow(0 4px 5px #0003)}.world-pin span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #fff9;background:#244c3ee8;color:white;border-radius:50%;font:11px var(--sans);transition:.2s}.world-pin:hover span,.world-pin.active span{background:#e4d29d;color:#223c2b;transform:scale(1.2)}.world-pin:after{content:'';position:absolute;width:1px;height:22px;top:39px;left:50%;background:#f9f5e2a0}.world-controls{position:absolute;bottom:18px;left:22px;right:22px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#455b44;pointer-events:none}.world-controls>span{font-size:9px;letter-spacing:.4px}.world-controls>div{display:flex;gap:5px;pointer-events:auto;background:#fffdf0d9;padding:5px;border-radius:30px;border:1px solid #80907133;backdrop-filter:blur(10px)}.world-controls button{width:32px;height:32px;border-radius:50%;font-size:18px;display:grid;place-items:center}.world-controls button:hover{background:#dce5c8}.world-controls button:disabled{opacity:.35;cursor:default}.sunset .world-controls>span,.sunset .world-badge{color:#f5efda}.world-story{background:#f7f5ee;color:#243c32;border-left:1px solid #c9d1bd}.world-story-photo{height:218px;position:relative;overflow:hidden}.world-story-photo img{height:100%;transition:opacity .25s}.world-story-photo>span{position:absolute;bottom:12px;left:16px;color:white;font-size:7px;letter-spacing:2px;background:#173b32b0;padding:5px 8px}.world-story-body{padding:26px}.world-story-body>.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:16px}.world-story h3{font-size:29px;line-height:1.15}.world-story-body>p:not(.eyebrow){font-size:12px;color:#75816c;margin:18px 0}.world-story .text-link{font-size:11px;gap:5px}.world-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.world-bottom>p{font-size:9px;color:#aabda7;line-height:1.6;text-align:right}.world-places{display:flex;gap:8px;flex-wrap:wrap}.world-places button{border:1px solid #a4bb8e44;border-radius:30px;padding:10px 17px;color:#a7bb93;font-size:9px;transition:.2s}.world-places button span{color:#e4ead8;font-size:11px;margin-left:6px}.world-places button.active,.world-places button:hover{background:#dce9a2;color:#415d37}.world-places button.active span,.world-places button:hover span{color:#254331}.world-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#35573f;font-size:12px;z-index:5;background:#e4e9d9}.world-loading>span{font-size:48px;animation:worldSpin 4s linear infinite}.world-fallback{position:absolute;inset:0;background:#e4e9d9;z-index:1}.world-fallback img{height:80%;opacity:.85}.world-fallback p{position:absolute;bottom:70px;left:25px;right:25px;background:#f7f5eeef;color:#244237;padding:16px;font-size:12px;border-radius:4px}.path-card{transition:transform .35s ease-out;will-change:transform}.path-card .card-link{transform:translateZ(20px)}@keyframes worldSpin{to{transform:rotate(360deg)}}
@media(max-width:1050px){.world-shell{grid-template-columns:minmax(0,1fr) 250px}.world-story-body{padding:22px}.world-story h3{font-size:26px}.world-places button{padding:9px 12px}.world-bottom{align-items:start}}
@media(max-width:760px){.world-section{padding:45px 20px 30px}.world-heading{display:block;margin-bottom:25px}.world-heading h2{font-size:36px}.world-heading>p{margin-top:22px;font-size:12px}.world-shell{grid-template-columns:1fr}.world-view{min-height:370px}.world-badge{top:20px;left:16px;font-size:7px;letter-spacing:1px}.world-light{top:12px;right:12px;font-size:9px}.world-controls{left:12px;right:12px;bottom:12px;gap:8px}.world-controls>span{font-size:8px;max-width:60px}.world-controls button{width:29px;height:29px}.world-story{border-left:0;display:grid;grid-template-columns:105px 1fr}.world-story-photo{height:100%;min-height:235px}.world-story-photo>span{font-size:6px;left:8px;bottom:10px;padding:5px;letter-spacing:1px}.world-story-body{padding:22px 18px}.world-story h3{font-size:24px}.world-story-body>.eyebrow{font-size:7px;margin-bottom:12px}.world-story-body>p:not(.eyebrow){font-size:11px;margin:14px 0}.world-story .text-link{font-size:10px}.world-bottom{display:block;margin-top:20px}.world-places{display:grid;grid-template-columns:1fr 1fr;gap:7px}.world-places button{text-align:left;padding:10px 12px}.world-bottom>p{text-align:left;margin-top:18px;font-size:8px}.world-pin span{width:25px;height:25px;font-size:9px}.world-pin:after{top:35px;height:15px}}
@media(prefers-reduced-motion:reduce){.world-loading>span{animation:none}.path-card{transform:none!important}}

body.exploring-3d .floating-plan{opacity:0;pointer-events:none}

/* Hacienda El Paraíso — agregados al diseño base */
.venue-grid.four{grid-template-columns:repeat(4,1fr)}
.venue-grid.four article{background:#fff;border-radius:4px;padding:28px}
.video-grid{grid-template-columns:repeat(3,1fr)}
.video-grid img{height:auto;aspect-ratio:16/9;object-fit:cover}
.venue-grid p,.b2b p:not(.eyebrow){font-size:15px;line-height:1.6}
.venue-grid .text-link+.text-link,.experience-detail .text-link+.text-link{margin-left:22px}
.footer-main{grid-template-columns:1.3fr 1fr 1fr 1fr}
.footer-bottom a{color:inherit;margin-left:16px}
.event-cta p:not(.eyebrow){max-width:560px;margin:18px auto 0;color:var(--muted)}
@media(max-width:1000px){.venue-grid.four,.video-grid{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.venue-grid.four,.video-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}}
.root-photo{display:block}
