:root{--ink:#20201d;--deep:#171713;--muted:#746f67;--soft:#f8f3ea;--soft2:#eee3d3;--line:#e4d8c7;--gold:#a77b37;--gold2:#d8bd82;--white:#fff;--green:#33382f;--shadow:0 30px 90px rgba(35,31,25,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--soft);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}.serif{font-family:Georgia,"Times New Roman",serif}.wrap{width:min(1180px,calc(100% - 44px));margin-inline:auto}.eyebrow{font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:800}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:1px solid currentColor;text-decoration:none;font-weight:800;letter-spacing:.01em}.btn.primary{background:var(--deep);color:#fff;border-color:var(--deep)}.btn.ghost{background:rgba(255,255,255,.62);color:var(--deep)}.section{padding:92px 0}.top{position:sticky;top:0;z-index:20;background:rgba(248,243,234,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(228,216,199,.78)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:13px}.mark{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;font-family:Georgia,"Times New Roman",serif;color:var(--gold);font-size:1.1rem}.brand strong{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:1rem}.brand span span{display:block;margin-top:4px;color:var(--muted);font-size:.82rem}.links{display:flex;align-items:center;gap:24px;color:#413f39;font-size:.93rem}.links a{text-decoration:none}.links a[aria-current="page"]{color:var(--gold);font-weight:800}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 5%,#fff 0,#fff7 28%,transparent 50%),linear-gradient(115deg,var(--soft),#fff 54%,var(--soft2))}.hero-grid{display:grid;grid-template-columns:1fr minmax(380px,.86fr);gap:64px;align-items:center;min-height:640px;padding:54px 0 70px}.hero h1,.page-hero h1{margin:18px 0 0;font-size:clamp(3.35rem,7vw,7.8rem);line-height:.88;letter-spacing:-.07em}.lead{margin:28px 0 0;color:#5f6864;font-size:clamp(1.08rem,1.65vw,1.32rem);line-height:1.78;max-width:680px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.photo-frame{position:relative;padding:14px;background:rgba(255,255,255,.82);box-shadow:var(--shadow)}.photo-frame:before{content:"";position:absolute;inset:28px -18px -18px 42px;border:1px solid rgba(167,123,55,.45);z-index:-1}.photo-frame img{width:100%;height:560px;object-fit:cover;filter:saturate(.9) contrast(1.03)}.caption-card{position:absolute;left:-34px;bottom:42px;background:var(--green);color:#fff;width:min(260px,70%);padding:24px;box-shadow:0 22px 60px rgba(23,23,19,.26)}.caption-card b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2.4rem;line-height:.9;color:var(--gold2)}.caption-card span{display:block;margin-top:10px;line-height:1.55;color:rgba(255,255,255,.82)}.hero-photo{position:relative;margin:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:52px;background:var(--line);border:1px solid var(--line);max-width:720px}.stat{background:rgba(255,255,255,.72);padding:20px}.stat b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;color:var(--ink)}.stat span{color:var(--muted);font-size:.92rem}.page-hero{padding:86px 0 70px;background:linear-gradient(115deg,#fff,var(--soft) 58%,var(--soft2))}.two{display:grid;grid-template-columns:.82fr 1.18fr;gap:58px;align-items:start}.h2{margin:10px 0 0;font-size:clamp(2.35rem,4.5vw,5rem);line-height:.95;letter-spacing:-.055em}.copy{color:var(--muted);font-size:1.04rem;line-height:1.86}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);padding:30px;box-shadow:0 16px 48px rgba(35,31,25,.05)}.card h2,.card h3{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.05;margin:0 0 14px}.card p{color:var(--muted);line-height:1.75}.card ul{list-style:none;padding:0;margin:22px 0 0;color:var(--muted);line-height:1.95}.card li:before{content:"—";color:var(--gold);font-weight:900;margin-right:10px}.dark{background:var(--deep);color:#fff}.dark .copy{color:rgba(255,255,255,.72)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.045);padding:20px;color:rgba(255,255,255,.9)}.editorial{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:stretch}.image-panel{min-height:520px;background:linear-gradient(rgba(32,32,29,.08),rgba(32,32,29,.08)),url('habitacion-vasanta.jpg') center/cover;border:14px solid #fff;box-shadow:var(--shadow)}.quote-panel{background:var(--green);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:space-between}.quote-panel p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.3vw,3.9rem);line-height:1.02;margin:0}.quote-panel span{color:rgba(255,255,255,.7);line-height:1.7}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.info-box{background:#fff;border:1px solid var(--line);padding:28px}.info-box b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2rem;color:var(--ink)}.info-box span{color:var(--muted)}.nearby{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.near{background:#fff;border:1px solid var(--line);padding:22px}.near small{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.near h3{margin:.55rem 0 .3rem}.near p{margin:0;color:var(--muted);line-height:1.55}.map-card{background:var(--green);color:#fff;padding:40px;min-height:430px;display:flex;flex-direction:column;justify-content:space-between}.pin{width:70px;height:70px;border-radius:999px;background:var(--deep);color:var(--gold2);display:grid;place-items:center;font-size:1.8rem}.booking{background:linear-gradient(135deg,var(--green),var(--deep));color:#fff}.booking .copy{color:rgba(255,255,255,.72)}.footer{background:#11110f;color:#fff;padding:44px 0}.footer-grid{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.footer p{margin:.4rem 0 0;color:rgba(255,255,255,.62)}.legal{display:flex;gap:16px;flex-wrap:wrap}.legal a{color:rgba(255,255,255,.82)}@media(max-width:980px){.links{display:none}.hero-grid,.two,.editorial,.location-grid{grid-template-columns:1fr}.photo-frame img{height:460px}.caption-card{left:18px}.cards{grid-template-columns:1fr 1fr}.service-grid,.nearby{grid-template-columns:1fr 1fr}.section{padding:72px 0}.stats{grid-template-columns:repeat(3,1fr)}.footer-grid{display:block}.legal{margin-top:20px}}@media(max-width:620px){.wrap{width:min(100% - 30px,1180px)}.nav{height:68px}.brand span span{display:none}.top .btn{display:none}.hero-grid{min-height:auto;padding:42px 0 58px}.hero h1,.page-hero h1{font-size:3.3rem}.photo-frame{padding:8px}.photo-frame:before{display:none}.photo-frame img{height:340px}.caption-card{position:static;width:100%}.actions .btn{width:100%}.stats,.cards,.service-grid,.nearby{grid-template-columns:1fr}.image-panel{min-height:330px;border-width:8px}.quote-panel{padding:30px}.h2{font-size:2.65rem}}


.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.photo-tile{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);min-height:300px;box-shadow:0 18px 50px rgba(35,31,25,.06)}.photo-tile.tall{grid-row:span 2;min-height:620px}.photo-tile.wide{grid-column:span 2;min-height:300px}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;filter:saturate(.96) contrast(1.02)}.photo-tile:hover img{transform:scale(1.035)}.photo-tile figcaption{display:none}.room-photo{margin:-34px -34px 24px}.room-photo img{width:100%;height:240px;object-fit:cover}.split-photo{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split-photo picture img{width:100%;height:360px;object-fit:cover;border:10px solid #fff;box-shadow:0 14px 38px rgba(35,31,25,.08)}
@media(max-width:980px){.photo-grid{grid-template-columns:1fr 1fr}.photo-tile.wide{grid-column:span 1}.photo-tile.tall{grid-row:span 1;min-height:260px}.split-photo{grid-template-columns:1fr}}
@media(max-width:620px){.photo-grid{grid-template-columns:1fr}.photo-tile{min-height:300px}.room-photo img{height:220px}.split-photo picture img{height:260px}}


.gallery-page{background:#fff}.gallery-intro{max-width:760px}.gallery-block{padding:72px 0;border-top:1px solid var(--line)}.gallery-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:28px}.gallery-head h2{margin:0;font-size:clamp(2.1rem,3.6vw,4.2rem);line-height:.98;letter-spacing:-.05em}.gallery-head p{max-width:430px;margin:0;color:var(--muted);line-height:1.65}.gallery-mosaic{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:16px;grid-auto-flow:dense}.gitem{display:block;position:relative;overflow:hidden;background:var(--soft);border:1px solid var(--line);box-shadow:0 14px 42px rgba(35,31,25,.06)}.gitem.big{grid-column:span 6;grid-row:span 3}.gitem.med{grid-column:span 4;grid-row:span 2}.gitem.small{grid-column:span 3;grid-row:span 2}.gitem.wide{grid-column:span 6;grid-row:span 2}.gitem picture,.gitem img{width:100%;height:100%;display:block}.gitem img{object-fit:cover;transition:transform .5s ease,filter .5s ease;filter:saturate(.96) contrast(1.02)}.gitem:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.04)}.gallery-cta{background:var(--deep);color:#fff;padding:64px 0}.gallery-cta .copy{color:rgba(255,255,255,.72)}.home-gallery-cta{margin-top:28px}.home-clean-gallery .photo-grid{grid-template-columns:1.2fr .8fr .8fr}.home-clean-gallery .photo-tile{min-height:320px}.home-clean-gallery .photo-tile.tall{min-height:660px}.home-clean-gallery .photo-tile:nth-child(n+5){display:none}@media(max-width:980px){.gallery-head{display:block}.gallery-head p{margin-top:16px}.gallery-mosaic{grid-template-columns:repeat(6,1fr);grid-auto-rows:135px}.gitem.big,.gitem.med,.gitem.small,.gitem.wide{grid-column:span 3;grid-row:span 2}.home-clean-gallery .photo-grid{grid-template-columns:1fr 1fr}.home-clean-gallery .photo-tile:nth-child(n+5){display:block}}@media(max-width:620px){.gallery-mosaic{grid-template-columns:1fr;grid-auto-rows:auto}.gitem.big,.gitem.med,.gitem.small,.gitem.wide{grid-column:auto;grid-row:auto}.gitem img{height:290px}.gallery-block{padding:52px 0}.home-clean-gallery .photo-grid{grid-template-columns:1fr}.home-clean-gallery .photo-tile.tall{min-height:360px}}
/* Galería final: masonry limpio sin huecos */
.gallery-mosaic{display:block;columns:3 280px;column-gap:16px}.gitem,.gitem.big,.gitem.med,.gitem.small,.gitem.wide{display:block;break-inside:avoid;margin:0 0 16px;grid-column:auto;grid-row:auto;min-height:0}.gitem img{height:auto;aspect-ratio:auto;object-fit:contain}.gitem picture{height:auto}@media(max-width:620px){.gallery-mosaic{columns:1}.gitem img{height:auto}}
/* Galería definitiva: rejilla uniforme, estable y presentable */
.gallery-mosaic{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;columns:auto!important}.gitem,.gitem.big,.gitem.med,.gitem.small,.gitem.wide{display:block!important;margin:0!important;min-height:0!important;height:260px!important;grid-column:auto!important;grid-row:auto!important;border:1px solid var(--line);background:#fff;box-shadow:0 14px 38px rgba(35,31,25,.07)}.gitem img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.gallery-block:first-of-type .gitem:first-child{grid-column:span 2!important;height:538px!important}@media(max-width:980px){.gallery-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gallery-block:first-of-type .gitem:first-child{grid-column:auto!important;height:260px!important}}@media(max-width:620px){.gallery-mosaic{grid-template-columns:1fr!important}.gitem,.gitem.big,.gitem.med,.gitem.small,.gitem.wide{height:260px!important}}

/* Home Vasanta: collage editorial tipo boutique, sin página de galería */
.vasanta-collage-section{background:#f8f3ea;padding-top:96px}.collage-copy{max-width:850px;margin-bottom:34px}.collage-copy .copy{max-width:660px}.vasanta-collage{display:grid;grid-template-columns:1.05fr .78fr .78fr;grid-auto-rows:210px;gap:18px;align-items:stretch}.collage-item{margin:0;overflow:hidden;background:#fff;box-shadow:0 18px 54px rgba(35,31,25,.10);border:1px solid rgba(228,216,199,.9)}.collage-item img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96) contrast(1.03)}.collage-hero{grid-row:span 2}.collage-tall{grid-row:span 2}.collage-wide{grid-column:span 2}@media(max-width:980px){.vasanta-collage{grid-template-columns:1fr 1fr;grid-auto-rows:230px}.collage-hero,.collage-tall{grid-row:span 1}.collage-wide{grid-column:span 1}}@media(max-width:620px){.vasanta-collage-section{padding-top:72px}.vasanta-collage{grid-template-columns:1fr;grid-auto-rows:260px}.collage-item:nth-child(n+7){display:none}}
/* Ajuste global pedido: H2 siempre al lateral, no en composiciones partidas */
.two{display:block!important}.two>div:first-child{max-width:900px;margin:0 0 28px!important}.two>div:nth-child(2){max-width:900px}.two .service-grid{max-width:none}.h2{text-align:left!important;margin-left:0!important;margin-right:auto!important}.section .eyebrow{text-align:left!important}.collage-copy{margin-left:0!important;margin-right:auto!important}.gallery-head{display:block!important}.gallery-head p{margin-top:14px!important}.map-card{justify-content:flex-start!important;gap:80px}.cards .card h2{text-align:left!important}

/* Ajuste 2026-07-09: unificar altura de arranque de títulos principales */
.page-hero,
.section{
  padding-top:64px!important;
}
.vasanta-collage-section{
  padding-top:64px!important;
}
.two>div:first-child,
.collage-copy,
.gallery-head,
.page-hero .wrap{
  margin-top:0!important;
}
.section .eyebrow,
.page-hero .eyebrow{
  margin-top:0!important;
}
.h2,
.page-hero h1{
  margin-top:10px!important;
}
@media(max-width:620px){
  .page-hero,
  .section,
  .vasanta-collage-section{
    padding-top:52px!important;
  }
}

/* Ajuste 2026-07-09: margen horizontal para títulos de bloque sueltos */
.section > .wrap > .eyebrow:first-child,
.section > .wrap > .eyebrow:first-child + .h2,
.gallery-head,
.collage-copy{
  padding-left:30px!important;
  padding-right:30px!important;
}
.section > .wrap > .eyebrow:first-child + .h2 + .photo-grid,
.gallery-head + .gallery-mosaic,
.collage-copy + .vasanta-collage{
  margin-top:34px!important;
}
@media(max-width:620px){
  .section > .wrap > .eyebrow:first-child,
  .section > .wrap > .eyebrow:first-child + .h2,
  .gallery-head,
  .collage-copy{
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Ajuste 2026-07-09: todos los títulos con el mismo margen horizontal del bloque superior */
.collage-copy,
.gallery-head{
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.section > .wrap > .eyebrow:first-child,
.section > .wrap > .eyebrow:first-child + .h2{
  padding-left:0!important;
  padding-right:0!important;
}

/* Habitaciones: display editorial adaptado a 4 habitaciones reales */
.rooms-section{padding-top:54px!important}.rooms-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;align-items:stretch}.room-card{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:0!important;background:#fffdf9!important;border:1px solid rgba(167,123,55,.22)!important;box-shadow:0 24px 70px rgba(35,31,25,.10)!important}.room-card:nth-child(2){transform:translateY(34px)}.room-card:nth-child(3){transform:translateY(-10px)}.room-card:nth-child(4){transform:translateY(24px)}.room-card .room-photo{margin:0!important;position:relative;overflow:hidden}.room-card .room-photo:after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(to top,rgba(23,23,19,.38),transparent);pointer-events:none}.room-card .room-photo img{height:390px!important;width:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease;filter:saturate(.96) contrast(1.03)}.room-card:hover .room-photo img{transform:scale(1.035);filter:saturate(1) contrast(1.05)}.room-kicker{margin:28px 34px 0;color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;font-weight:900}.room-card h2{margin:10px 34px 0!important;font-size:clamp(2rem,3vw,3.2rem)!important;line-height:.98!important;letter-spacing:-.045em;color:var(--ink)}.room-card p{margin:18px 34px 0;color:var(--muted);line-height:1.72}.room-card ul{margin:22px 34px 0!important;padding:20px 0 0!important;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;line-height:1.45!important}.room-card li{font-size:.94rem}.room-card li:before{content:"✓"!important;margin-right:8px}.room-cta{margin:26px 34px 34px;display:inline-flex;align-self:flex-start;text-decoration:none;color:var(--deep);font-weight:900;border-bottom:1px solid var(--gold);padding-bottom:5px}.room-cta:after{content:" →";color:var(--gold);padding-left:5px}@media(max-width:980px){.rooms-grid{grid-template-columns:1fr!important}.room-card:nth-child(n){transform:none}.room-card .room-photo img{height:360px!important}}@media(max-width:620px){.rooms-section{padding-top:44px!important}.room-card .room-photo img{height:280px!important}.room-kicker,.room-card h2,.room-card p,.room-card ul,.room-cta{margin-left:24px!important;margin-right:24px!important}.room-card ul{grid-template-columns:1fr}.room-cta{margin-bottom:28px!important}}

/* Habitaciones: 4 tarjetas alineadas, sin efecto escalonado */
.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:30px!important}.room-card:nth-child(n){transform:none!important}.room-card .room-photo img{height:400px!important}.room-card{min-height:100%;}.rooms-section + .section.dark{margin-top:18px}@media(max-width:980px){.room-card .room-photo img{height:340px!important}}@media(max-width:620px){.room-card .room-photo img{height:280px!important}}

/* Identidad corporativa Vasanta — manual de marca 2026-07-09
   Titulares/logotipo: ITC Benguiat Book; cuerpos: Futura Medium/Bold.
   Colores: #f7eee8, #293a31, #d8c188, #fff9e2, #7b937a. */
:root{--ink:#293a31!important;--deep:#293a31!important;--muted:#5f6c61!important;--soft:#f7eee8!important;--soft2:#fff9e2!important;--line:rgba(41,58,49,.16)!important;--gold:#d8c188!important;--gold2:#d8c188!important;--white:#fff9e2!important;--green:#7b937a!important;--shadow:0 26px 80px rgba(41,58,49,.14)!important;--brand-cream:#f7eee8;--brand-green:#293a31;--brand-gold:#d8c188;--brand-ivory:#fff9e2;--brand-sage:#7b937a}
body{background:var(--brand-cream)!important;color:var(--brand-green)!important;font-family:Futura,"Futura PT","Avenir Next",Avenir,"Century Gothic",Montserrat,Arial,sans-serif!important;font-weight:500}.serif,h1,h2,h3,.brand strong,.mark,.stat b,.caption-card b,.card h2,.card h3,.info-box b,.quote-panel p{font-family:"ITC Benguiat","Benguiat",Georgia,"Times New Roman",serif!important;font-weight:400!important}.top{background:rgba(247,238,232,.94)!important;border-bottom:1px solid rgba(41,58,49,.13)!important}.nav{height:88px!important}.brand{gap:18px!important}.mark{width:54px!important;height:54px!important;border-color:var(--brand-green)!important;color:var(--brand-green)!important;font-size:0!important;background:var(--brand-ivory);position:relative}.mark:before{content:"V";font-size:1.7rem;line-height:1;color:var(--brand-green)}.brand strong{font-size:1.45rem!important;letter-spacing:.08em!important;color:var(--brand-green)!important}.brand span span{font-size:.7rem!important;letter-spacing:.22em;text-transform:uppercase;color:var(--brand-green)!important}.links{font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem!important}.links a[aria-current="page"]{color:var(--brand-sage)!important}.btn{border-radius:0!important;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem;background:transparent}.btn.primary{background:var(--brand-green)!important;border-color:var(--brand-green)!important;color:var(--brand-ivory)!important}.btn.ghost{background:transparent!important;border-color:var(--brand-gold)!important;color:var(--brand-ivory)!important}.hero{background:linear-gradient(115deg,var(--brand-cream),var(--brand-ivory) 58%,rgba(216,193,136,.28))!important}.hero h1,.page-hero h1{letter-spacing:-.045em!important;color:var(--brand-green)!important}.page-hero{background:linear-gradient(115deg,var(--brand-ivory),var(--brand-cream) 62%,rgba(123,147,122,.18))!important}.lead{color:rgba(41,58,49,.78)!important}.eyebrow{color:var(--brand-sage)!important;letter-spacing:.28em!important}.h2{color:var(--brand-green)!important;letter-spacing:-.04em!important}.copy{color:rgba(41,58,49,.72)!important}.card,.info-box,.near,.room-card{background:rgba(255,249,226,.72)!important;border-color:rgba(41,58,49,.14)!important}.dark,.footer{background:var(--brand-green)!important;color:var(--brand-ivory)!important}.dark .h2,.dark h2,.dark .eyebrow,.footer strong{color:var(--brand-ivory)!important}.dark .copy,.footer p{color:rgba(255,249,226,.74)!important}.service{border-color:rgba(216,193,136,.34)!important;background:rgba(255,249,226,.06)!important;color:var(--brand-ivory)!important}.quote-panel,.map-card{background:var(--brand-green)!important;color:var(--brand-ivory)!important}.pin{background:var(--brand-ivory)!important;color:var(--brand-green)!important}.photo-frame,.image-panel,.split-photo picture img{border-color:var(--brand-ivory)!important}.photo-frame{background:rgba(255,249,226,.82)!important}.photo-frame:before{border-color:rgba(216,193,136,.72)!important}.caption-card{background:var(--brand-green)!important;color:var(--brand-ivory)!important}.caption-card b{color:var(--brand-gold)!important}.stat{background:rgba(255,249,226,.72)!important}.stat span{color:rgba(41,58,49,.68)!important}.room-kicker{color:var(--brand-sage)!important}.room-card h2{color:var(--brand-green)!important}.room-cta{color:var(--brand-green)!important;border-bottom-color:var(--brand-gold)!important}.room-cta:after{color:var(--brand-sage)!important}.room-card li:before{color:var(--brand-sage)!important}.legal a{color:rgba(255,249,226,.84)!important}
@media(max-width:620px){.nav{height:76px!important}.mark{width:44px!important;height:44px!important}.mark:before{font-size:1.35rem}.brand strong{font-size:1.05rem!important}}

/* Refinado manual marca Vasanta: sobriedad, contraste y uso preciso del color */
.hero{background:linear-gradient(115deg,#f7eee8 0%,#fff9e2 78%,rgba(216,193,136,.18) 100%)!important}.hero h1,.page-hero h1{font-size:clamp(3rem,6.15vw,6.85rem)!important;line-height:.94!important;max-width:820px}.btn.ghost{color:var(--brand-green)!important;border-color:var(--brand-green)!important;background:rgba(255,249,226,.52)!important}.dark .btn.ghost,.booking .btn.ghost{color:var(--brand-ivory)!important;border-color:var(--brand-gold)!important;background:transparent!important}.photo-frame{padding:10px!important;box-shadow:0 20px 56px rgba(41,58,49,.13)!important}.photo-frame:before{inset:24px -10px -10px 32px!important;border-color:rgba(216,193,136,.46)!important}.photo-frame img{filter:saturate(.92) contrast(1.02) sepia(.03)!important}.stats{background:rgba(41,58,49,.12)!important;border-color:rgba(41,58,49,.12)!important;box-shadow:none!important}.stat{background:rgba(255,249,226,.54)!important;padding:18px 20px!important}.stat b{font-family:Futura,"Futura PT","Avenir Next",Avenir,"Century Gothic",Montserrat,Arial,sans-serif!important;font-size:1.05rem!important;letter-spacing:.08em;text-transform:uppercase;font-weight:700!important}.stat span{font-size:.76rem!important;letter-spacing:.16em;text-transform:uppercase}.caption-card{box-shadow:0 18px 48px rgba(41,58,49,.18)!important}.lead,.copy,.card p,.near p,.room-card p{color:rgba(41,58,49,.82)!important}.links a[aria-current="page"]{border-bottom:1px solid var(--brand-gold);padding-bottom:5px}.top .btn.primary{min-height:44px!important;padding:0 20px!important}.section{background-color:transparent}.section:nth-of-type(even):not(.dark):not(.booking){background:rgba(255,249,226,.30)}
@media(max-width:620px){.hero h1,.page-hero h1{font-size:3rem!important;line-height:.96!important}.stats{margin-top:36px!important}.stat b{font-size:1rem!important}}

/* Reencuadre foto habitación vasanta-04: cama + ventana, menos techo/aire lateral */
img[src*="vasanta-04"]{
  object-position:35% 60%!important;
}
.hero-photo img[src*="vasanta-04"]{
  object-position:35% 58%!important;
}
.room-card img[src*="vasanta-04"]{
  object-position:35% 62%!important;
}

/* Ajuste 2026-07-09: título del collage alineado al mismo margen que el bloque superior */
.collage-copy{
  max-width:1180px!important;
  width:min(1180px,calc(100% - 44px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.collage-copy .copy{
  max-width:760px!important;
}

/* Ubicación: mapa embebido usable dentro de la página */
.map-card-live{padding:0!important;overflow:hidden;gap:0!important;background:var(--brand-green)!important}.map-card-live .map-copy{padding:34px 34px 26px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start}.embedded-map{height:390px;border-top:1px solid rgba(216,193,136,.35);background:var(--brand-cream)}.embedded-map iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.85) contrast(.96)}@media(max-width:620px){.map-card-live .map-copy{grid-template-columns:1fr;padding:28px 24px 22px}.embedded-map{height:330px}}

/* Ubicación: layout editorial con mapa, accesos e imágenes reales */
.location-feature-section{padding-top:58px!important}.location-feature{display:grid;grid-template-columns:1.08fr .92fr;gap:30px;align-items:stretch}.location-map-panel,.location-visual-panel{min-width:0}.location-map-panel{display:grid;grid-template-rows:1fr auto;background:var(--brand-green);box-shadow:0 22px 62px rgba(41,58,49,.12);overflow:hidden}.location-map-panel .embedded-map{height:520px!important;border:0!important}.location-address-card{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:34px;background:var(--brand-green);border-top:1px solid rgba(216,193,136,.35)}.location-address-card .h2{color:var(--brand-ivory)!important;margin-top:8px!important}.location-address-card .copy{color:rgba(255,249,226,.78)!important}.location-visual-panel{display:grid;grid-template-rows:minmax(330px,1fr) auto auto;gap:18px}.location-photo-main,.location-mini-grid img{overflow:hidden;background:var(--brand-ivory);border:1px solid rgba(41,58,49,.13);box-shadow:0 18px 48px rgba(41,58,49,.10)}.location-photo-main img,.location-mini-grid img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.02) sepia(.02)}.location-photo-main img{object-position:center 52%}.location-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;height:190px}.location-access-list{display:grid;grid-template-columns:1fr;gap:12px}.location-access-list .info-box{padding:22px 24px!important;background:rgba(255,249,226,.72)!important}.location-access-list .info-box b{font-size:1.55rem!important}.location-access-list .info-box span{display:block;margin-top:5px;color:rgba(41,58,49,.72)!important}@media(max-width:980px){.location-feature{grid-template-columns:1fr}.location-map-panel .embedded-map{height:430px!important}.location-visual-panel{grid-template-rows:auto auto auto}.location-photo-main{height:360px}.location-mini-grid{height:170px}}@media(max-width:620px){.location-feature-section{padding-top:44px!important}.location-map-panel .embedded-map{height:330px!important}.location-address-card{grid-template-columns:1fr;padding:26px 24px}.location-photo-main{height:300px}.location-mini-grid{grid-template-columns:1fr;height:auto}.location-mini-grid img{height:220px}.location-access-list .info-box b{font-size:1.35rem!important}}

/* Home: foto principal con recorte dedicado para cama + ventana */
.hero-photo .photo-frame img[src*="vasanta-04-home"]{
  aspect-ratio:4/3!important;
  height:auto!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.hero-grid{grid-template-columns:1fr minmax(460px,.92fr)!important;}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr!important}.hero-photo .photo-frame img[src*="vasanta-04-home"]{width:100%!important}}

/* Contacto: opción WhatsApp destacada */
.contact-whatsapp-note{margin-top:18px;color:rgba(41,58,49,.78)}
.contact-whatsapp-note a{font-weight:800;color:var(--brand-green)}

/* Contacto: bloque ancho completo con dos imágenes */
.contact-feature-section{padding-top:56px!important}.contact-feature{display:grid;grid-template-columns:1.04fr .96fr;gap:30px;align-items:stretch}.contact-panel{background:var(--brand-green);color:var(--brand-ivory);padding:46px;display:flex;flex-direction:column;justify-content:center;min-height:560px}.contact-panel .h2{color:var(--brand-ivory)!important}.contact-panel .copy{color:rgba(255,249,226,.76)!important;max-width:720px}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.contact-details{display:grid;grid-template-columns:1fr;gap:14px;margin-top:38px}.contact-details article{border-top:1px solid rgba(216,193,136,.34);padding-top:16px}.contact-details span{display:block;color:var(--brand-gold);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:900}.contact-details strong{display:block;margin-top:7px;color:var(--brand-ivory);font-weight:600;line-height:1.45}.contact-images{display:grid;grid-template-columns:1fr 1fr;gap:18px;min-height:560px}.contact-images figure{margin:0;overflow:hidden;background:var(--brand-ivory);border:1px solid rgba(41,58,49,.14);box-shadow:0 22px 60px rgba(41,58,49,.12)}.contact-images figure:first-child{margin-top:42px}.contact-images figure:last-child{margin-bottom:42px}.contact-images img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.02) sepia(.02)}@media(max-width:980px){.contact-feature{grid-template-columns:1fr}.contact-panel{min-height:auto}.contact-images{min-height:380px}.contact-images figure:first-child,.contact-images figure:last-child{margin:0}}@media(max-width:620px){.contact-feature-section{padding-top:44px!important}.contact-panel{padding:32px 24px}.contact-images{grid-template-columns:1fr;min-height:auto}.contact-images figure{height:260px}.contact-actions .btn{width:100%}}

/* Servicios: bloque Ambientes a ancho completo con 2 imágenes */
.ambientes-section .two{
  display:block!important;
}
.ambientes-section .two>div:first-child,
.ambientes-section .two>div:nth-child(2){
  max-width:none!important;
  width:100%!important;
}
.ambientes-section .two>div:first-child{
  margin-bottom:34px!important;
}
.ambientes-section .copy{
  max-width:900px!important;
}
.ambientes-section .split-photo{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:28px!important;
  width:100%!important;
}
.ambientes-section .split-photo picture{
  display:block;
  min-height:430px;
  overflow:hidden;
  background:var(--brand-ivory);
  border:10px solid var(--brand-ivory);
  box-shadow:0 20px 58px rgba(41,58,49,.12);
}
.ambientes-section .split-photo picture img{
  width:100%!important;
  height:430px!important;
  object-fit:cover!important;
  border:0!important;
  box-shadow:none!important;
  filter:saturate(.92) contrast(1.02) sepia(.02);
}
.ambientes-section .split-photo picture:first-child img{object-position:center 56%!important;}
.ambientes-section .split-photo picture:last-child img{object-position:center 52%!important;}
@media(max-width:980px){.ambientes-section .split-photo{gap:18px!important}.ambientes-section .split-photo picture,.ambientes-section .split-photo picture img{height:360px!important;min-height:360px!important}}
@media(max-width:620px){.ambientes-section .split-photo{grid-template-columns:1fr!important}.ambientes-section .split-photo picture,.ambientes-section .split-photo picture img{height:270px!important;min-height:270px!important}}

/* Ubicación: fotografías de atracciones cercanas, no del hotel */
.location-photo-main img[src*="assets/location"],
.location-mini-grid img[src*="assets/location"]{object-fit:cover!important;filter:saturate(.92) contrast(1.01) sepia(.02)!important}.attraction-tile{background:var(--brand-green)!important;border-color:rgba(216,193,136,.34)!important}.attraction-tile figcaption{display:block!important;position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(to top,rgba(41,58,49,.92),rgba(41,58,49,.62),transparent);color:var(--brand-ivory)}.attraction-tile figcaption strong{display:block;font-family:"ITC Benguiat","Benguiat",Georgia,serif;font-size:1.65rem;font-weight:400}.attraction-tile figcaption span{display:block;margin-top:6px;font-size:.82rem;letter-spacing:.04em;color:rgba(255,249,226,.78)}.attraction-tile img{filter:saturate(.9) contrast(1.02) sepia(.02)!important}.attraction-tile:hover img{filter:saturate(.98) contrast(1.04)!important}@media(max-width:620px){.attraction-tile figcaption{padding:18px}.attraction-tile figcaption strong{font-size:1.35rem}}


/* Ajuste 2026-07-10: logo real Vasanta en header y footer */
.brand-logo{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-width:150px!important;
}
.brand-logo img{
  width:168px!important;
  height:auto!important;
  display:block!important;
}
.footer-brand{
  max-width:360px;
}
.footer-logo{
  width:190px!important;
  height:auto!important;
  display:block!important;
  margin:0 0 18px!important;
}
.footer-brand p{
  margin:.4rem 0 0;
  color:rgba(255,249,226,.74)!important;
}
@media(max-width:620px){
  .brand-logo img{width:142px!important;}
  .footer-logo{width:168px!important;}
}


/* Ajuste 2026-07-10: uso correcto de los dos logos recibidos */
.brand-logo img{
  width:174px!important;
  height:auto!important;
  object-fit:contain!important;
}
.footer-logo-full{
  width:148px!important;
  height:auto!important;
  object-fit:contain!important;
  margin:0 0 20px!important;
}
@media(max-width:620px){
  .brand-logo img{width:146px!important;}
  .footer-logo-full{width:132px!important;}
}


/* Ajuste 2026-07-10: footer completo y útil */
.footer-complete{padding:58px 0 26px!important;background:var(--brand-green)!important;}
.footer-grid-complete{display:grid!important;grid-template-columns:minmax(240px,1.35fr) repeat(3,minmax(160px,.75fr));gap:38px!important;align-items:start!important;}
.footer-complete .footer-logo-full{width:128px!important;margin-bottom:20px!important;}
.footer-intro{max-width:360px;line-height:1.65!important;color:rgba(255,249,226,.78)!important;margin-bottom:18px!important;}
.footer-col h3{margin:0 0 16px;color:var(--brand-gold)!important;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;font-family:Futura,"Futura PT","Avenir Next",Avenir,"Century Gothic",Montserrat,Arial,sans-serif!important;font-weight:800!important;}
.footer-col a,.footer-col p{display:block;margin:0 0 11px;color:rgba(255,249,226,.80)!important;text-decoration:none;line-height:1.55;}
.footer-col a:hover{color:var(--brand-ivory)!important;}
.footer-cta{display:inline-flex!important;margin-top:8px!important;padding-bottom:5px;border-bottom:1px solid var(--brand-gold);font-weight:800;letter-spacing:.04em;}
.footer-small{margin-top:24px!important;font-size:.86rem;color:rgba(255,249,226,.56)!important;}
.footer-bottom{margin-top:42px!important;padding-top:20px;border-top:1px solid rgba(216,193,136,.25);display:flex;justify-content:space-between;gap:18px;color:rgba(255,249,226,.58);font-size:.86rem;}
@media(max-width:980px){.footer-grid-complete{grid-template-columns:1fr 1fr!important;}}
@media(max-width:620px){.footer-complete{padding-top:44px!important;}.footer-grid-complete{grid-template-columns:1fr!important;gap:26px!important;}.footer-bottom{display:block;}.footer-bottom span{display:block;margin-top:8px;}}


/* Ajuste 2026-07-10: footer más aireado, sin texto de web provisional */
.footer-complete{padding:72px 0 30px!important;}
.footer-grid-complete{min-height:255px!important;align-items:stretch!important;column-gap:58px!important;}
.footer-brand,.footer-col{display:flex!important;flex-direction:column!important;}
.footer-brand{justify-content:flex-start!important;}
.footer-col{justify-content:flex-start!important;gap:2px!important;}
.footer-intro{margin-top:6px!important;margin-bottom:26px!important;line-height:1.78!important;}
.footer-col h3{margin-bottom:20px!important;}
.footer-col a,.footer-col p{margin-bottom:14px!important;line-height:1.72!important;}
.footer-cta{margin-top:12px!important;max-width:200px;}
.footer-bottom{margin-top:18px!important;}
.footer-small{display:none!important;}
@media(max-width:980px){.footer-grid-complete{min-height:0!important;column-gap:34px!important;row-gap:38px!important;}}
@media(max-width:620px){.footer-complete{padding-top:50px!important;}.footer-grid-complete{row-gap:30px!important;}}


/* Ajuste 2026-07-10: ubicación sin CTA duplicado de Google Maps */
.location-address-redesign{
  padding:42px!important;
  min-height:280px;
  align-items:center!important;
  border-top:1px solid rgba(216,193,136,.32)!important;
}
.location-address-redesign .pin{
  width:86px!important;
  height:86px!important;
  font-size:2.1rem!important;
  background:var(--brand-ivory)!important;
  color:var(--brand-green)!important;
}
.location-address-redesign .h2{
  font-size:clamp(4.2rem,7vw,7.4rem)!important;
  line-height:.9!important;
  margin-top:12px!important;
}
.location-address-redesign .copy{
  margin:18px 0 0!important;
  font-size:1.15rem!important;
  letter-spacing:.03em;
}
.address-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}
.address-highlights span{
  border:1px solid rgba(216,193,136,.36);
  background:rgba(255,249,226,.08);
  color:rgba(255,249,226,.82);
  padding:10px 13px;
  font-size:.76rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:800;
}
@media(max-width:620px){
  .location-address-redesign{padding:30px 24px!important;min-height:0;}
  .location-address-redesign .pin{width:66px!important;height:66px!important;font-size:1.6rem!important;}
  .location-address-redesign .h2{font-size:3.8rem!important;}
  .address-highlights{display:grid;grid-template-columns:1fr;}
}


/* Ajuste 2026-07-10: bloque "Cerca de ti" pensado para 4 tarjetas */
.nearby-four{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.nearby-four .near{
  min-height:230px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px 24px!important;
}
.nearby-four .near h3{
  font-size:1.45rem;
  line-height:1.08;
  margin:.75rem 0 .9rem!important;
}
.nearby-four .near p{
  line-height:1.62!important;
}
@media(max-width:980px){.nearby-four{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.nearby-four{grid-template-columns:1fr!important;}.nearby-four .near{min-height:0;}}


/* Ajuste 2026-07-10: Contacto pensado para 4 bloques iguales */
.contact-steps-section{
  padding-top:74px!important;
}
.contact-steps{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
}
.contact-steps .card{
  min-height:300px;
  padding:30px 28px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.contact-steps .card h2{
  font-size:clamp(1.8rem,2.2vw,2.5rem)!important;
  margin-bottom:18px!important;
}
.contact-steps .card p{
  line-height:1.72!important;
}
.contact-steps .room-cta{
  margin-top:20px!important;
  margin-left:0!important;
  margin-right:0!important;
}
@media(max-width:980px){
  .contact-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .contact-steps .card{min-height:250px;}
}
@media(max-width:620px){
  .contact-steps-section{padding-top:52px!important;}
  .contact-steps{grid-template-columns:1fr!important;}
  .contact-steps .card{min-height:0;}
}


/* Ajuste 20260710T115329Z: selector multilingüe ES/EN */
.lang-switch{display:flex;align-items:center;gap:8px;margin-left:auto;border:1px solid rgba(41,58,49,.18);padding:7px 9px;background:rgba(255,249,226,.45)}
.lang-switch a,.lang-switch span{font-size:.72rem;letter-spacing:.14em;text-decoration:none;font-weight:900;color:var(--brand-green);line-height:1}
.lang-switch span{color:var(--brand-sage)}
@media(max-width:980px){.lang-switch{margin-left:0}}
@media(max-width:620px){.lang-switch{padding:6px 8px}.lang-switch a,.lang-switch span{font-size:.68rem}}


/* Habitaciones detalle 2026-07-15 */
.room-back{display:inline-flex;margin:0 0 22px;color:rgba(41,58,49,.72);font-weight:800;text-decoration:none;border-bottom:1px solid rgba(216,193,136,.8);padding-bottom:5px}.room-detail-hero{padding:70px 0 78px;background:linear-gradient(115deg,var(--brand-ivory),var(--brand-cream) 64%,rgba(123,147,122,.16))}.room-detail-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}.room-detail-hero h1{margin:12px 0 0;font-size:clamp(3rem,6vw,6.8rem);line-height:.94;letter-spacing:-.045em;color:var(--brand-green)}.room-detail-features{list-style:none;padding:24px 0 0;margin:28px 0 0;border-top:1px solid rgba(41,58,49,.16);display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;color:rgba(41,58,49,.82);font-weight:700}.room-detail-features li:before{content:'✓';color:var(--brand-sage);font-weight:900;margin-right:9px}.room-detail-hero-photo{margin:0;overflow:hidden;border:12px solid var(--brand-ivory);box-shadow:0 24px 72px rgba(41,58,49,.14);background:var(--brand-ivory)}.room-detail-hero-photo img{width:100%;height:620px;object-fit:cover;filter:saturate(.94) contrast(1.02) sepia(.02)}.room-detail-gallery-section{background:rgba(255,249,226,.26)}.room-detail-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.room-detail-tile{margin:0;overflow:hidden;background:var(--brand-ivory);border:1px solid rgba(41,58,49,.14);box-shadow:0 16px 48px rgba(41,58,49,.08)}.room-detail-tile:first-child{grid-column:span 2;grid-row:span 2}.room-detail-tile img{width:100%;height:310px;object-fit:cover;display:block;filter:saturate(.93) contrast(1.02) sepia(.02);transition:transform .45s ease}.room-detail-tile:first-child img{height:638px}.room-detail-tile:hover img{transform:scale(1.03)}.room-detail-gallery-small .room-detail-tile:first-child{grid-column:auto;grid-row:auto}.room-detail-gallery-small .room-detail-tile img{height:260px}.details-soft{background:var(--brand-cream)}.gallery-head p{max-width:760px;color:rgba(41,58,49,.74);line-height:1.72;margin-top:16px}@media(max-width:980px){.room-detail-hero-grid{grid-template-columns:1fr}.room-detail-hero-photo img{height:470px}.room-detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.room-detail-tile:first-child{grid-column:auto;grid-row:auto}.room-detail-tile:first-child img,.room-detail-tile img{height:300px}}@media(max-width:620px){.room-detail-hero{padding:52px 0 58px}.room-detail-hero h1{font-size:3rem}.room-detail-features{grid-template-columns:1fr}.room-detail-hero-photo{border-width:8px}.room-detail-hero-photo img{height:330px}.room-detail-gallery{grid-template-columns:1fr}.room-detail-tile img,.room-detail-tile:first-child img,.room-detail-gallery-small .room-detail-tile img{height:270px}}

/* Ajuste 2026-07-20: galería de ubicación con 4 tarjetas del mismo tamaño */
.photo-grid .attraction-tile,
.photo-grid .attraction-tile.wide{
  grid-column:span 1!important;
  grid-row:span 1!important;
  min-height:330px!important;
  aspect-ratio:1 / 1.22;
}
.photo-grid .attraction-tile picture,
.photo-grid .attraction-tile img{
  width:100%!important;
  height:100%!important;
}
@media(max-width:980px){
  .photo-grid .attraction-tile,
  .photo-grid .attraction-tile.wide{min-height:320px!important;aspect-ratio:auto;}
}
@media(max-width:620px){
  .photo-grid .attraction-tile,
  .photo-grid .attraction-tile.wide{min-height:300px!important;}
}

/* Ajuste 2026-07-20: lightbox para ampliar imágenes de galerías */
.is-lightboxable{cursor:zoom-in}.gallery-lightbox-open{overflow:hidden}.gallery-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(17,17,15,.92);padding:34px;color:var(--brand-ivory)}.gallery-lightbox.is-open{display:flex}.glb-stage{width:min(1120px,calc(100vw - 160px));height:min(78vh,820px);margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.glb-stage img{max-width:100%;max-height:calc(100% - 54px);width:auto;height:auto;object-fit:contain;box-shadow:0 28px 90px rgba(0,0,0,.42);background:#111}.glb-stage figcaption{width:100%;min-height:42px;margin-top:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;color:rgba(255,249,226,.82);line-height:1.45}.glb-caption{font-family:Georgia,"Times New Roman",serif;font-size:1.05rem}.glb-count{white-space:nowrap;color:rgba(255,249,226,.58);font-weight:800;letter-spacing:.08em}.glb-close,.glb-prev,.glb-next{position:absolute;border:1px solid rgba(255,249,226,.32);background:rgba(255,249,226,.08);color:var(--brand-ivory);display:grid;place-items:center;cursor:pointer;transition:background .2s ease,transform .2s ease}.glb-close:hover,.glb-prev:hover,.glb-next:hover{background:rgba(255,249,226,.18)}.glb-close{top:22px;right:24px;width:48px;height:48px;font-size:2rem;line-height:1}.glb-prev,.glb-next{top:50%;transform:translateY(-50%);width:58px;height:74px;font-size:3.1rem;line-height:1}.glb-prev{left:24px}.glb-next{right:24px}.gallery-lightbox.is-single .glb-prev,.gallery-lightbox.is-single .glb-next{display:none}@media(max-width:720px){.gallery-lightbox{padding:18px}.glb-stage{width:100%;height:82vh}.glb-stage img{max-height:calc(100% - 72px)}.glb-stage figcaption{display:block;font-size:.92rem}.glb-count{display:block;margin-top:5px}.glb-prev,.glb-next{width:46px;height:56px;font-size:2.4rem;background:rgba(17,17,15,.42)}.glb-prev{left:10px}.glb-next{right:10px}.glb-close{top:12px;right:12px;width:42px;height:42px}}
