
    :root{--forest:#173f2d;--deep:#0e2b1f;--leaf:#4f7b45;--sage:#a9bd91;--moss:#dce5ce;--cream:#f6f0e2;--paper:#fffaf0;--yellow:#e5bd43;--brick:#a84f3e;--ink:#243028;--muted:#677168;--line:rgba(36,48,40,.17);--shadow:0 24px 70px rgba(16,47,33,.16)}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;overflow-x:hidden}
    body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.17;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}
    img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input{font:inherit}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.serif{font-family:Marcellus,Georgia,serif}
    .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--brick);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
    .section-title{font:400 clamp(2.8rem,5.6vw,5.3rem)/.93 Marcellus,serif;letter-spacing:-.045em;margin:0}.section-copy{font-size:1rem;line-height:1.75;color:var(--muted);max-width:620px}
    .btn{min-height:49px;padding:0 21px;border:1px solid var(--deep);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:transparent;color:var(--deep);font-size:.75rem;font-weight:700;cursor:pointer;transition:.23s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--deep);color:#fff}.btn-yellow{background:var(--yellow);color:var(--deep);border-color:var(--yellow)}.btn-paper{background:var(--paper)}
    .topbar{height:34px;background:var(--deep);color:#e9eedf;overflow:hidden;font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ticker{display:flex;width:max-content;white-space:nowrap;animation:ticker 26s linear infinite}.ticker span{height:34px;display:inline-flex;align-items:center;padding-right:34px}.ticker i{width:7px;height:7px;border-radius:50%;background:var(--yellow);margin-right:34px}@keyframes ticker{to{transform:translateX(-50%)}}
    header{position:sticky;top:0;z-index:50;background:rgba(246,240,226,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:82px;display:grid;grid-template-columns:280px 1fr auto;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:46px;height:46px;border-radius:50% 50% 46% 54%;display:grid;place-items:center;background:var(--forest);color:var(--yellow);font-size:1.25rem;box-shadow:inset 0 0 0 2px rgba(255,255,255,.2)}.brand-name{font:400 1.25rem/1 Marcellus,serif;color:var(--deep)}.brand-name small{display:block;margin-top:6px;font:700 .53rem/1 "DM Sans",sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--brick)}
    .nav-links{display:flex;justify-content:center;gap:25px;font-size:.7rem;font-weight:700}.nav-links a{padding:10px 0;border-bottom:1px solid transparent}.nav-links a:hover{color:var(--brick);border-color:var(--brick)}.nav-actions{display:flex;align-items:center;gap:8px}.menu-toggle{display:none;width:45px;height:45px;border-radius:50%;border:1px solid var(--deep);background:var(--paper);cursor:pointer}.mobile-menu{display:none}
    .nav-instagram{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--forest);transition:background .2s,color .2s,border-color .2s}.nav-instagram:hover{background:var(--forest);border-color:var(--forest);color:var(--paper)}.nav-instagram svg{width:21px;height:21px;display:block}@media(min-width:1001px){.nav{grid-template-columns:220px 1fr auto;gap:18px}.nav-links{gap:18px;white-space:nowrap}}
    .hero{position:relative;min-height:750px;overflow:hidden;isolation:isolate;background:var(--moss)}.hero::before{content:"";position:absolute;width:680px;height:680px;border-radius:50%;right:-255px;top:-270px;background:var(--yellow);opacity:.82;z-index:-2}.hero::after{content:"";position:absolute;width:360px;height:360px;border:70px solid rgba(168,79,62,.18);border-radius:50%;left:-260px;bottom:-130px;z-index:-2}.hero-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:72px;align-items:center;padding-top:66px;padding-bottom:78px}.hero-copy{position:relative;z-index:2}.hero-kicker{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(23,63,45,.22);border-radius:999px;background:rgba(255,250,240,.56);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--forest)}.hero-kicker span{width:7px;height:7px;border-radius:50%;background:var(--brick)}
    h1{font:400 clamp(4.1rem,7.2vw,7.2rem)/.85 Marcellus,serif;letter-spacing:-.06em;margin:27px 0 25px;color:var(--deep)}h1 em{display:block;color:var(--brick);font-style:normal}.hero-copy>p{font-size:1.05rem;line-height:1.72;color:#536458;max-width:540px;margin:0 0 28px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-note{display:flex;align-items:center;gap:14px;margin-top:32px;font-size:.7rem;line-height:1.45;color:#58665c}.hero-note i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--yellow);font-style:normal}
    .hero-visual{height:600px;position:relative}.hero-main{position:absolute;inset:0 36px 0 86px;border-radius:220px 220px 22px 22px;overflow:hidden;box-shadow:var(--shadow)}.hero-main img{object-position:center 60%}.hero-small{position:absolute;width:230px;height:285px;left:0;bottom:-15px;border:9px solid var(--moss);border-radius:110px 110px 18px 18px;overflow:hidden;box-shadow:0 18px 48px rgba(14,43,31,.2);transform:rotate(-3deg)}.hero-small img{object-position:center 40%}.hero-stamp{position:absolute;right:0;top:40px;width:126px;height:126px;border-radius:50%;background:var(--deep);color:#fff;display:grid;place-items:center;text-align:center;border:1px solid rgba(255,255,255,.4);outline:7px solid rgba(255,250,240,.65);font-size:.57rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;transform:rotate(7deg)}.hero-stamp strong{display:block;font:400 1.55rem/1 Marcellus,serif;color:var(--yellow);letter-spacing:0}
    .path-divider{height:22px;background:var(--forest);clip-path:polygon(0 55%,4% 22%,8% 60%,12% 25%,16% 65%,20% 30%,24% 70%,28% 35%,32% 73%,36% 38%,40% 76%,44% 40%,48% 72%,52% 36%,56% 68%,60% 31%,64% 63%,68% 27%,72% 58%,76% 22%,80% 55%,84% 18%,88% 50%,92% 14%,96% 47%,100% 10%,100% 100%,0 100%)}
    .quick-strip{background:var(--forest);color:#fff;padding:28px 0}.quick-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:30px;align-items:center}.quick-grid>p{font:400 1.55rem/1.1 Marcellus,serif;margin:0}.quick-item{padding-left:23px;border-left:1px solid rgba(255,255,255,.2)}.quick-item strong{display:block;font:400 1.08rem/1.1 Marcellus,serif;color:#fff;margin-bottom:5px}.quick-item span{font-size:.61rem;letter-spacing:.1em;text-transform:uppercase;color:#bdcbb8}
    section{padding:108px 0}.section-head{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:49px}.section-head .section-copy{max-width:490px;margin:0}
    .experiences{background:var(--paper);position:relative;overflow:hidden}.experiences::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(229,189,67,.18);left:-180px;top:100px}.experience-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.experience-card{position:relative;display:flex;flex-direction:column;min-height:610px;border:1px solid var(--line);overflow:hidden;background:var(--cream);transition:.25s}.experience-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.experience-card:nth-child(2){background:var(--deep);color:#fff}.experience-card:nth-child(3){background:#e5e0ce}.card-top{height:205px;position:relative;overflow:hidden}.card-art{position:absolute;inset:0;display:grid;place-items:center;font:400 6rem/1 Marcellus,serif;color:rgba(255,255,255,.9)}.romantic{background:radial-gradient(circle at 30% 30%,#e99a8e,transparent 28%),linear-gradient(135deg,#9f3f3c,#d66c5d)}.detox{background:radial-gradient(circle at 65% 30%,rgba(229,189,67,.45),transparent 25%),linear-gradient(135deg,#244e38,#102b20)}.camping{background:linear-gradient(165deg,#dfb956 0 46%,#66815b 47% 62%,#183d2c 63%)}.card-number{position:absolute;left:18px;top:15px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--deep);font-size:.65rem;font-weight:700}.card-body{padding:27px;display:flex;flex-direction:column;flex:1}.card-tag{font-size:.59rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--brick)}.experience-card:nth-child(2) .card-tag{color:var(--yellow)}.card-body h3{font:400 2rem/1 Marcellus,serif;margin:10px 0 12px}.card-body>p{font-size:.76rem;line-height:1.6;color:#667068;margin:0 0 17px}.experience-card:nth-child(2) .card-body>p{color:#c8d1c5}.includes{display:grid;gap:8px;margin:0 0 23px;padding:0;list-style:none}.includes li{display:flex;gap:9px;font-size:.7rem;line-height:1.35}.includes li::before{content:"✓";color:var(--brick);font-weight:700}.experience-card:nth-child(2) .includes li::before{color:var(--yellow)}.price-row{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.experience-card:nth-child(2) .price-row{border-color:rgba(255,255,255,.18)}.price-row small{display:block;font-size:.54rem;text-transform:uppercase;letter-spacing:.1em;color:#7a817a}.experience-card:nth-child(2) .price-row small{color:#aab8a7}.price-row strong{font:400 1.35rem/1 Marcellus,serif}.price-row .btn{min-height:40px;padding:0 15px;font-size:.66rem}.experience-card:nth-child(2) .btn{border-color:var(--yellow);background:var(--yellow);color:var(--deep)}

    .rate-note{font-size:.65rem;color:#7a817a;text-align:center;margin:24px 0 0}
    .stay{background:var(--cream)}.stay-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:72px;align-items:center}.stay-gallery{height:650px;position:relative}.stay-main{position:absolute;inset:0 70px 55px 0;border-radius:180px 20px 20px 20px;overflow:hidden;box-shadow:var(--shadow)}.stay-detail{position:absolute;width:255px;height:320px;right:0;bottom:0;border:8px solid var(--cream);overflow:hidden;border-radius:120px 120px 18px 18px;box-shadow:var(--shadow)}.stay-detail img{object-position:center}.stay-copy .section-copy{margin:24px 0 30px}.amenity-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;margin:0 0 29px}.amenity{padding:14px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;font-size:.74rem;font-weight:600}.amenity span{font-size:1.1rem}.stay-actions{display:flex;flex-wrap:wrap;gap:9px}
    .services{background:var(--deep);color:#fff;position:relative;overflow:hidden}.services::after{content:"";position:absolute;width:480px;height:480px;border:80px solid rgba(229,189,67,.08);border-radius:50%;right:-260px;top:120px}.services .eyebrow{color:var(--yellow)}.services .section-copy{color:#bdc8be}.service-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-card{min-height:220px;padding:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;transition:.25s}.service-card:hover{background:rgba(255,255,255,.1);transform:translateY(-3px)}.service-icon{font-size:1.6rem;margin-bottom:auto}.service-card h3{font:400 1.18rem/1.15 Marcellus,serif;margin:20px 0 9px}.service-card p{font-size:.68rem;line-height:1.52;color:#b9c5b9;margin:0}.scope-note{margin:24px 0 0;padding:16px 18px;border-left:3px solid var(--yellow);background:rgba(255,255,255,.05);font-size:.67rem;line-height:1.55;color:#bac5ba}
    .coffee{background:#dfcfaa;position:relative;overflow:hidden}.coffee::after{content:"CAFÉ";position:absolute;right:-35px;bottom:-55px;font:400 12rem/1 Marcellus,serif;color:rgba(23,63,45,.08)}.coffee-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;position:relative;z-index:2}.coffee-pack{aspect-ratio:3/2;background:var(--paper);padding:15px;box-shadow:var(--shadow);transform:rotate(-2deg)}.coffee-pack img{object-fit:contain}.coffee-copy .section-copy{margin:24px 0}.coffee-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0}.coffee-spec{padding:16px;border:1px solid rgba(23,63,45,.24);background:rgba(255,250,240,.46)}.coffee-spec small{display:block;font-size:.54rem;letter-spacing:.11em;text-transform:uppercase;color:#66705f;margin-bottom:5px}.coffee-spec strong{font:400 1.05rem/1.2 Marcellus,serif;color:var(--deep)}.brew{padding-top:19px;border-top:1px solid rgba(23,63,45,.25)}.brew strong{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.brew ol{display:flex;gap:16px;padding:0;list-style:none;counter-reset:brew;margin:13px 0 0}.brew li{flex:1;font-size:.64rem;line-height:1.4;color:#5d665b;counter-increment:brew}.brew li::before{content:counter(brew);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--forest);color:#fff;font-weight:700;margin-bottom:7px}.coffee-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
    .visit{background:var(--paper);position:relative}.visit-layout{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);background:#fff;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.visit-copy{padding:59px}.visit-copy address{font-style:normal;font:400 1.65rem/1.25 Marcellus,serif;margin:22px 0 10px}.visit-copy>p{font-size:.73rem;line-height:1.6;color:#6a746b}.visit-facts{display:grid;gap:0;margin:25px 0}.visit-fact{padding:13px 0;border-top:1px solid var(--line)}.visit-fact strong{display:block;font-size:.69rem;margin-bottom:3px}.visit-fact span{font-size:.65rem;color:#717a72}.visit-actions{display:flex;flex-wrap:wrap;gap:8px}.map{min-height:540px;background:#ddd}.map iframe{border:0;width:100%;height:100%;filter:saturate(.7) contrast(.95)}
    footer{background:var(--deep);color:#fff;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px;padding-bottom:42px}.footer-logo{font:400 2rem/1 Marcellus,serif}.footer-logo span{display:block;color:var(--yellow);font:700 .57rem/1 "DM Sans",sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-top:9px}.footer-copy{font-size:.72rem;line-height:1.65;color:#acbbad;max-width:390px;margin-top:15px}.footer-col strong{display:block;font-size:.63rem;text-transform:uppercase;letter-spacing:.14em;color:var(--yellow);margin-bottom:15px}.footer-col a{display:block;width:max-content;font-size:.73rem;color:#d0d9cf;margin:9px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:21px;border-top:1px solid rgba(255,255,255,.14);font-size:.59rem;color:#87988b}
    .wa-float{position:fixed;z-index:65;left:18px;bottom:18px;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#24b76a;color:#fff;border:0;box-shadow:0 10px 30px rgba(14,43,31,.25);font-size:1.2rem}
    .guide-button{position:fixed;z-index:70;right:18px;bottom:18px;border:0;border-radius:999px;background:var(--yellow);color:var(--deep);padding:9px 16px 9px 9px;display:flex;align-items:center;gap:9px;box-shadow:0 12px 35px rgba(14,43,31,.28);cursor:pointer}.guide-button i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--yellow);font-style:normal}.guide-button span{text-align:left;font-size:.66rem;font-weight:700;line-height:1.25}.guide-button small{display:block;font-size:.53rem;color:#655921;font-weight:600}
    .chat{position:fixed;z-index:80;right:18px;bottom:82px;width:min(400px,calc(100vw - 28px));height:min(585px,calc(100dvh - 103px));display:none;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 24px 80px rgba(14,43,31,.28)}.chat.open{display:flex;animation:rise .24s ease}@keyframes rise{from{opacity:0;transform:translateY(10px)}}.chat-head{padding:16px 17px;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:space-between}.chat-head strong{font:400 1.1rem/1 Marcellus,serif}.chat-head small{display:block;color:#b5c3b7;font-size:.57rem;margin-top:4px}.close{width:32px;height:32px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:#fff;cursor:pointer}.messages{flex:1;overflow:auto;padding:17px;background:#edf1e7}.bubble{max-width:89%;padding:11px 13px;border-radius:16px;font-size:.73rem;line-height:1.5;margin-bottom:9px}.bot{background:var(--paper);border-radius:16px 16px 16px 3px}.user{background:var(--forest);color:#fff;margin-left:auto;border-radius:16px 16px 3px 16px}.quick{display:flex;gap:6px;overflow:auto;padding:0 15px 11px;background:#edf1e7}.quick button{white-space:nowrap;border:1px solid #b8c8b7;background:var(--paper);border-radius:999px;padding:7px 9px;font-size:.59rem;font-weight:700;color:var(--forest);cursor:pointer}.chat-form{display:flex;gap:7px;padding:12px;border-top:1px solid var(--line)}.chat-form input{min-width:0;flex:1;border:1px solid var(--line);border-radius:999px;padding:0 13px;font-size:.72rem}.chat-form button{width:42px;height:42px;border-radius:50%;border:0;background:var(--forest);color:#fff;cursor:pointer}
    :focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
    @media(max-width:1000px){.nav{grid-template-columns:1fr auto}.nav-links,.nav-actions>.btn{display:none}.menu-toggle{display:block}.mobile-menu{position:absolute;left:0;right:0;top:82px;background:var(--paper);border-bottom:1px solid var(--line);padding:18px;box-shadow:0 18px 40px rgba(14,43,31,.12)}.mobile-menu.open{display:grid;gap:7px}.mobile-menu a{padding:12px 13px;border:1px solid var(--line);border-radius:10px;font-size:.78rem;font-weight:700}.hero-grid{grid-template-columns:1fr;gap:48px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-actions,.hero-note{justify-content:center}.hero-visual{width:100%;max-width:700px;margin:auto}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid>p{grid-column:span 2}.experience-grid{grid-template-columns:1fr 1fr}.experience-card:nth-child(3){grid-column:span 2;min-height:520px}.stay-layout{grid-template-columns:1fr;gap:45px}.stay-gallery{max-width:720px;width:100%;margin:auto}.service-grid{grid-template-columns:repeat(2,1fr)}.coffee-layout{grid-template-columns:1fr}.coffee-pack{max-width:760px;width:100%;margin:auto}.visit-layout{grid-template-columns:1fr}.map{min-height:430px}}
    @media(max-width:700px){.shell{width:min(100% - 28px,1180px)}.topbar{font-size:.56rem}.nav{height:70px}.mobile-menu{top:70px}.brand-mark{width:40px;height:40px}.brand-name{font-size:1.05rem}.brand-name small{font-size:.47rem}.hero{min-height:auto}.hero-grid{padding-top:40px;padding-bottom:65px}.hero::before{width:370px;height:370px;right:-250px;top:40px}h1{font-size:clamp(3.8rem,17vw,5.2rem);margin:23px 0 21px}.hero-copy>p{font-size:.93rem}.hero-actions .btn{width:100%}.hero-note{align-items:flex-start;text-align:left}.hero-visual{height:440px}.hero-main{inset:0 16px 0 42px;border-radius:150px 150px 18px 18px}.hero-small{width:145px;height:190px;border-width:6px}.hero-stamp{width:88px;height:88px;right:-2px;font-size:.42rem;outline-width:4px}.hero-stamp strong{font-size:1.12rem}.quick-grid{gap:20px}.quick-grid>p{font-size:1.35rem}.quick-item{padding-left:13px}.quick-item strong{font-size:.95rem}section{padding:77px 0}.section-head{display:block}.section-head .section-copy{margin-top:20px}.section-title{font-size:clamp(2.9rem,13.5vw,4.2rem)}.experience-grid{grid-template-columns:1fr}.experience-card,.experience-card:nth-child(3){grid-column:auto;min-height:580px}.card-top{height:190px}.stay-gallery{height:440px}.stay-main{inset:0 35px 45px 0;border-radius:110px 18px 18px 18px}.stay-detail{width:150px;height:195px;border-width:6px}.amenity-list{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr;gap:8px}.service-card{min-height:205px;padding:18px}.service-card h3{font-size:1.02rem}.coffee-pack{padding:8px;transform:none}.coffee::after{font-size:7rem}.coffee-specs{grid-template-columns:1fr}.brew ol{display:grid;grid-template-columns:1fr 1fr}.coffee-actions .btn{width:100%}.visit-copy{padding:37px 24px}.map{min-height:350px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{display:block;line-height:1.7}.guide-button{right:11px;bottom:11px;padding-right:9px}.guide-button span{display:none}.wa-float{left:11px;bottom:11px}.chat{right:9px;bottom:71px;width:calc(100vw - 18px);height:min(620px,calc(100dvh - 84px))}}
    /* Photographs of Villa Bienestar: originals remain unchanged. */
    .card-top.photo{height:220px;isolation:isolate}
    .card-top.photo::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(14,43,31,.72));z-index:1;pointer-events:none}
    .card-top.photo img{transition:transform .5s ease}
    .experience-card:hover .card-top.photo img{transform:scale(1.035)}
    .card-top.photo .card-number{z-index:2}
    .photo-caption{position:absolute;bottom:17px;left:22px;right:18px;color:#fff;font-size:.65rem;letter-spacing:.07em;z-index:2}
    .stay-gallery{height:620px}
    .stay-main{inset:0 50px 92px 0;border-radius:24px}
    .stay-detail{width:280px;height:210px;border-radius:20px}
    .stay-detail img{object-position:center 65%}
    .places{background:var(--paper);border-top:1px solid var(--line)}
    .places .section-head{align-items:center}
    .places-intro{max-width:390px}
    .places-intro .section-copy{margin:0 0 16px}
    .gallery-hint{font-size:.7rem;color:var(--forest);display:flex;gap:8px;align-items:center}
    .places-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:240px 240px;gap:14px}
    .place-tile{position:relative;display:block;min-width:0;overflow:hidden;border:0;border-radius:18px;padding:0;background:var(--deep);text-align:left;cursor:zoom-in;color:#fff}
    .place-tile:first-child{grid-row:span 2}
    .place-tile:first-child img{object-fit:contain}
    .place-tile img{transition:transform .45s ease}
    .place-tile:hover img{transform:scale(1.035)}
    .place-tile::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(8,25,17,.88));pointer-events:none}
    .place-caption{position:absolute;z-index:1;bottom:21px;left:21px;right:21px;font:400 1.3rem/1.15 Marcellus,serif}
    .place-caption small{display:block;margin-bottom:6px;font:600 .57rem/1.2 "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.13em;color:#e4e9dc}
    .place-zoom{position:absolute;top:13px;right:13px;z-index:1;width:34px;height:34px;display:grid;place-items:center;background:rgba(14,43,31,.65);border:1px solid rgba(255,255,255,.5);border-radius:50%;font-size:1.05rem}
    .places-grid .place-night img{object-fit:contain}
    .places-footer{margin:25px 0 0;display:flex;align-items:center;justify-content:space-between;gap:20px}
    .places-footer p{font-size:.78rem;line-height:1.6;color:var(--muted);max-width:640px;margin:0}
    .coffee-visuals{min-width:0}
    .coffee-origin{margin:30px 0 0;position:relative;height:195px;border-radius:18px;overflow:hidden}
    .coffee-origin img{object-position:center 45%}
    .coffee-origin::after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(14,43,31,.82))}
    .coffee-origin figcaption{position:absolute;z-index:1;left:20px;bottom:18px;color:#fff;font:400 1.35rem/1.1 Marcellus,serif}
    .coffee-origin figcaption small{display:block;margin-top:6px;font:500 .65rem/1.4 "DM Sans",sans-serif}
    body.gallery-open{overflow:hidden}
    .photo-dialog{width:min(1080px,calc(100% - 28px));max-height:calc(100dvh - 30px);border:1px solid rgba(255,255,255,.22);border-radius:20px;padding:18px;background:var(--deep);color:var(--paper);box-shadow:0 25px 100px rgba(0,0,0,.5)}
    .photo-dialog::backdrop{background:rgba(5,18,12,.88);backdrop-filter:blur(5px)}
    .photo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px}
    .photo-toolbar h2{margin:0;font:400 1.2rem/1.2 Marcellus,serif}
    .photo-control{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:transparent;color:#fff;cursor:pointer;font-size:1.2rem}
    .photo-control:hover{background:rgba(255,255,255,.15)}
    .photo-stage{margin:0}
    .photo-stage img{width:100%;height:min(65dvh,680px);object-fit:contain;background:#091c13}
    .photo-stage figcaption{font-size:.82rem;line-height:1.5;margin:13px 0 0;min-height:2.8em}
    .photo-controls{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:12px}
    .photo-counter{min-width:70px;text-align:center;font-size:.74rem;font-variant-numeric:tabular-nums}
    @media(max-width:1000px){.places-grid{grid-template-columns:1fr 1fr;grid-template-rows:290px 230px 230px}.place-tile:first-child{grid-row:auto;grid-column:span 2}.coffee-visuals{width:100%;max-width:760px;margin:auto}.coffee-origin{height:220px}}
    @media(max-width:700px){.stay-gallery{height:465px}.stay-main{inset:0 20px 115px 0;border-radius:20px}.stay-detail{width:210px;height:165px;border-width:6px}.places-grid{grid-template-rows:270px 210px 210px;gap:10px}.place-tile{border-radius:13px}.place-caption{left:13px;right:10px;bottom:15px;font-size:1.05rem}.place-caption small{font-size:.5rem}.place-zoom{width:30px;height:30px;top:10px;right:10px}.places-footer{display:block}.places-footer .btn{margin-top:18px;width:100%}.coffee-origin{height:180px;margin-top:20px}.photo-dialog{padding:12px}.photo-stage img{height:54dvh}.photo-toolbar h2{font-size:1.05rem}.card-top.photo{height:210px}}

    /* Additional selected photographs: keep source logos and full images in the viewer. */
    .places-grid{grid-template-rows:repeat(3,240px);grid-auto-rows:240px}
    .place-original img{object-fit:contain}
    .wellness-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:26px;position:relative;z-index:2}
    .wellness-photo{display:grid;grid-template-columns:160px 1fr;gap:22px;align-items:center;margin:0;padding:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:16px}
    .wellness-photo img{width:160px;height:160px;object-fit:contain;border-radius:10px}
    .wellness-photo figcaption{font:400 1.4rem/1.15 Marcellus,serif}
    .wellness-photo small{display:block;margin-top:10px;color:#bdc8be;font:400 .75rem/1.65 "DM Sans",sans-serif}
    @media(max-width:1000px){.places-grid{grid-template-rows:290px;grid-auto-rows:230px}.place-tile:last-child{grid-column:span 2}.wellness-photo{grid-template-columns:115px 1fr;gap:15px}.wellness-photo img{width:115px;height:115px}.wellness-photo figcaption{font-size:1.15rem}}
    @media(max-width:700px){.places-grid{grid-template-rows:270px;grid-auto-rows:210px}.wellness-photos{grid-template-columns:1fr}.wellness-photo{grid-template-columns:110px 1fr;padding:12px}.wellness-photo img{width:110px;height:110px}.wellness-photo small{font-size:.7rem;margin-top:7px}}
    /* Language controls stay visible in both desktop and mobile navigation. */
    .language-switch{display:flex;flex-shrink:0;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}
    .language-switch button{min-width:36px;min-height:38px;padding:7px;border:0;border-radius:999px;background:transparent;color:var(--forest);font-size:.65rem;font-weight:700;cursor:pointer}
    .language-switch button[aria-pressed="true"]{background:var(--forest);color:var(--paper)}
    .language-switch button:hover{box-shadow:inset 0 0 0 1px var(--forest)}
    html[lang="en"] .hero-stamp{font-size:.5rem}
    html[lang="en"] .coffee::after{content:"COFFEE"}
    @media(min-width:1001px) and (max-width:1240px){.nav{grid-template-columns:1fr auto}.nav-links,.nav-actions>.btn{display:none}.menu-toggle{display:block}.mobile-menu{position:absolute;left:0;right:0;top:82px;background:var(--paper);border-bottom:1px solid var(--line);padding:18px;box-shadow:0 18px 40px rgba(14,43,31,.12)}.mobile-menu.open{display:grid;gap:7px}.mobile-menu a{padding:12px 13px;border:1px solid var(--line);border-radius:10px;font-size:.78rem;font-weight:700}}
    @media(max-width:700px){.nav{gap:8px}.brand{gap:8px}.brand-name{font-size:.98rem}.brand-name small{font-size:.4rem;letter-spacing:.08em}.nav-actions{gap:5px}.brand-mark{flex-shrink:0;width:34px;height:38px}.menu-toggle{width:36px;height:40px}.nav-instagram{flex-basis:36px;width:36px;height:40px}.language-switch button{min-width:29px;min-height:34px;padding:5px}.language-switch{padding:2px}}
    @media(max-width:370px){.nav{height:110px;grid-template-columns:1fr;gap:0;padding-block:7px}.brand{justify-content:center}.nav-actions{justify-content:center}.mobile-menu{top:110px}}
    @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
