:root{
  --bg:#111111; --bg-soft:#171717; --panel:#202020; --panel-2:#252525; --text:#f2f0ea; --muted:#b7b1a7; --line:rgba(255,255,255,.11); --gold:#c9a227; --gold-soft:#e5c75c; --shadow:0 30px 80px rgba(0,0,0,.38); --serif:'Cormorant Garamond', Georgia, serif; --sans:'Inter', Arial, sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.6;overflow-x:hidden} a{color:inherit;text-decoration:none} img{max-width:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.section-pad{padding:110px 0}.eyebrow{margin:0 0 14px;color:var(--gold-soft);letter-spacing:.22em;text-transform:uppercase;font-size:.74rem;font-weight:700}.preloader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:radial-gradient(circle at center,#1d1d1d 0%,#0f0f0f 62%);transition:opacity .75s ease,visibility .75s ease}.preloader.is-hidden{opacity:0;visibility:hidden}.preloader__mark{display:grid;justify-items:center;gap:28px;animation:markIn 1.2s ease both}.preloader__mark img{width:min(320px,72vw);filter:drop-shadow(0 18px 35px rgba(0,0,0,.45))}.preloader__mark span{width:160px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform-origin:center;animation:linePulse 1.6s ease infinite}@keyframes markIn{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes linePulse{0%,100%{transform:scaleX(.32);opacity:.4}50%{transform:scaleX(1);opacity:1}}
.site-header{position:fixed;top:0;left:0;right:0;height:82px;z-index:1000;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 34px;background:rgba(17,17,17,.7);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:height .25s ease,background .25s ease}.site-header.is-scrolled{height:68px;background:rgba(17,17,17,.91)}.brand img{width:176px}.site-nav{display:flex;gap:8px;align-items:center;justify-content:center}.site-nav a{padding:10px 14px;border-radius:999px;color:var(--muted);font-size:.88rem;font-weight:600;transition:.25s ease}.site-nav a:hover{color:var(--text);background:rgba(255,255,255,.07)}.socials{justify-self:end;display:flex;gap:11px}.socials a{width:36px;height:36px;border:1px solid var(--line);border-radius:999px;display:grid;place-items:center;color:var(--muted);transition:.25s ease}.socials svg{width:17px;height:17px;fill:currentColor}.socials a:hover{color:var(--gold-soft);border-color:rgba(201,162,39,.55);transform:translateY(-2px)}.nav-toggle{display:none;background:none;border:0;color:var(--text)}
.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;padding-top:82px}.hero-panel{position:relative;display:grid;place-items:center;min-height:calc(100vh - 82px);overflow:hidden;border-right:1px solid var(--line)}.hero-panel:last-child{border-right:0}.panel-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015)),radial-gradient(circle at 50% 38%,rgba(201,162,39,.16),transparent 42%);transition:transform .8s ease,opacity .8s ease}.hero-panel--luxury .panel-bg{background:linear-gradient(225deg,rgba(255,255,255,.06),rgba(255,255,255,.015)),radial-gradient(circle at 50% 38%,rgba(201,162,39,.18),transparent 42%)}.hero-panel:hover .panel-bg{transform:scale(1.045);opacity:.9}.panel-content{position:relative;z-index:1;width:min(470px,80%);display:grid;justify-items:center;text-align:center;padding:54px 36px;border:1px solid rgba(255,255,255,.12);background:rgba(17,17,17,.42);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.panel-content img{height:112px;width:auto;margin-bottom:28px}.panel-content p{margin:0;color:var(--muted);font-size:1rem}.panel-content span{margin-top:28px;color:var(--gold-soft);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.story h1,.division h2,.principles h2,.advantages h2,.contact h2{font-family:var(--serif);font-size:clamp(2.45rem,5vw,5rem);line-height:.95;margin:0;font-weight:700;letter-spacing:-.04em}.story-copy{color:var(--muted);font-size:1.05rem}.story-copy p:first-child{margin-top:0}.division{background:linear-gradient(180deg,var(--bg),var(--bg-soft))}.division-grid{display:grid;grid-template-columns:1.35fr .8fr;grid-template-rows:auto auto;gap:24px}.division-grid--reverse{grid-template-columns:.8fr 1.35fr}.division-grid--reverse .division-card--large{grid-column:2;grid-row:1/3}.division-card--large{grid-row:1/3;background:linear-gradient(145deg,#202020,#151515);padding:56px;border:1px solid var(--line);box-shadow:var(--shadow)}.division-card p{color:var(--muted)}.check-list{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:14px}.check-list li{position:relative;padding-left:28px;color:var(--text)}.check-list li:before{content:"";position:absolute;left:0;top:.68em;width:10px;height:10px;background:var(--gold);transform:rotate(45deg)}.material-card{background:var(--panel);border:1px solid var(--line);padding:34px;min-height:230px;display:flex;flex-direction:column;justify-content:flex-end}.material-card span{color:var(--gold);font-family:var(--serif);font-size:3.8rem;line-height:1}.material-card h3,.principles h3{font-family:var(--serif);font-size:1.75rem;line-height:1;margin:18px 0 10px}.material-card p,.principles p{color:var(--muted);margin:0}.section-head{max-width:780px;margin-bottom:44px}.section-head--center{text-align:center;margin-inline:auto}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.principles-grid article{padding:34px;border:1px solid var(--line);background:linear-gradient(180deg,#1c1c1c,#151515);min-height:260px}.advantages{background:#0e0e0e}.advantages-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.advantages-grid div{padding:34px;border-right:1px solid var(--line);min-height:220px}.advantages-grid div:last-child{border-right:0}.advantages-grid strong{display:block;font-family:var(--serif);font-size:3rem;color:var(--gold);line-height:1;margin-bottom:26px}.advantages-grid span{color:var(--muted)}.contact-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;padding:54px;background:linear-gradient(135deg,#202020,#131313);border:1px solid rgba(201,162,39,.25);box-shadow:var(--shadow)}.contact-card p{color:var(--muted)}.contact-directory{display:grid;gap:16px;min-width:0}.contact-directory__entry{min-width:0;padding:24px 26px;border:1px solid var(--line);background:rgba(17,17,17,.72);transition:border-color .25s ease,transform .25s ease,background .25s ease}.contact-directory__entry:hover{transform:translateY(-2px);border-color:rgba(201,162,39,.48);background:rgba(17,17,17,.92)}.contact-directory__role{margin:0 0 18px!important;color:var(--text)!important;font-family:var(--serif);font-size:clamp(1.55rem,2.4vw,2.05rem);font-weight:700;line-height:1.05}.contact-directory__details{display:grid;gap:14px;margin:0}.contact-directory__details div{display:grid;grid-template-columns:minmax(118px,.42fr) minmax(0,1fr);gap:18px;align-items:baseline}.contact-directory__details dt{color:var(--gold-soft);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.contact-directory__details dd{min-width:0;margin:0}.contact-directory__details a{display:inline-block;max-width:100%;color:var(--text);font-weight:600;overflow-wrap:anywhere;word-break:break-word;text-decoration:underline;text-decoration-color:rgba(201,162,39,.46);text-underline-offset:4px;transition:color .2s ease,text-decoration-color .2s ease}.contact-directory__details a:hover{color:var(--gold-soft);text-decoration-color:var(--gold-soft)}.contact-directory__details a:focus-visible{outline:2px solid var(--gold-soft);outline-offset:5px}.site-footer{border-top:1px solid var(--line);padding:34px 0;background:#0c0c0c}.footer-grid{display:grid;grid-template-columns:220px 1fr auto;gap:30px;align-items:center}.footer-grid img{width:190px;height:auto}.footer-grid p{color:var(--muted);margin:0}.footer-grid a{color:var(--gold-soft);font-weight:700}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:980px){.site-header{grid-template-columns:1fr auto;padding:0 20px}.brand img{width:150px}.nav-toggle{display:grid;gap:5px;justify-self:end;padding:10px}.nav-toggle span:not(.sr-only){display:block;width:25px;height:2px;background:var(--text)}.site-nav,.socials{position:fixed;left:20px;right:20px;display:none}.site-nav{top:80px;flex-direction:column;align-items:stretch;background:#151515;border:1px solid var(--line);padding:14px}.socials{top:258px;justify-content:center;background:#151515;border:1px solid var(--line);padding:14px}.site-header.nav-open .site-nav,.site-header.nav-open .socials{display:flex}.hero{grid-template-columns:1fr}.hero-panel{min-height:66vh;border-right:0;border-bottom:1px solid var(--line)}.two-col,.contact-card{grid-template-columns:1fr}.division-grid,.division-grid--reverse{grid-template-columns:1fr}.division-grid--reverse .division-card--large,.division-card--large{grid-column:auto;grid-row:auto}.principles-grid,.advantages-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}}
@media (max-width:620px){.section-pad{padding:76px 0}.container{width:min(100% - 28px,1160px)}.panel-content{width:88%;padding:34px 22px}.panel-content img{height:86px}.division-card--large,.contact-card{padding:30px}.principles-grid,.advantages-grid{grid-template-columns:1fr}.advantages-grid div{border-right:0;border-bottom:1px solid var(--line)}.advantages-grid div:last-child{border-bottom:0}.story h1,.division h2,.principles h2,.advantages h2,.contact h2{font-size:2.65rem}.footer-grid{gap:16px}.site-header{height:74px}.hero{padding-top:74px}}

/* Pages: Vesmar Projects / Vesmar Luxury */
.site-nav a[aria-current="page"]{color:var(--text);background:rgba(201,162,39,.16);box-shadow:inset 0 0 0 1px rgba(201,162,39,.18)}
.page-hero{position:relative;min-height:62vh;display:grid;align-items:end;padding:160px 0 82px;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 18% 20%,rgba(201,162,39,.18),transparent 36%),linear-gradient(145deg,#191919,#0f0f0f)}
.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent);opacity:.52}.page-hero--luxury{background:radial-gradient(circle at 76% 23%,rgba(229,199,92,.16),transparent 34%),linear-gradient(135deg,#161312,#221d1a 58%,#101010)}.page-hero__inner{position:relative;max-width:920px}.page-hero h1{font-family:var(--serif);font-size:clamp(3rem,7vw,7rem);line-height:.9;letter-spacing:-.055em;margin:0}.page-hero p:not(.eyebrow){max-width:720px;margin:26px 0 0;color:var(--muted);font-size:1.08rem}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-tile{position:relative;aspect-ratio:1/1;overflow:hidden;background:#1a1a1a;border:1px solid var(--line);box-shadow:0 22px 60px rgba(0,0,0,.24)}.project-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(0);transform:scale(1);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s ease}.project-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.78) 100%);z-index:1}.project-tile:hover img{filter:saturate(1.08);transform:scale(1.12)}.project-tile__content{position:absolute;left:22px;right:22px;bottom:20px;z-index:2}.project-tile__content h2{font-family:var(--serif);font-size:1.72rem;line-height:1;margin:0 0 8px;letter-spacing:-.025em}.project-tile__content p{margin:0;color:rgba(242,240,234,.78);font-size:.9rem;line-height:1.45}.luxury-catalog{background:linear-gradient(180deg,#111,#17120f 46%,#101010)}.luxury-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:34px;align-items:start}.luxury-item{display:grid;gap:22px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.luxury-item figure{margin:0;overflow:hidden;background:#1b1b1b}.luxury-item img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease,filter .9s ease;filter:saturate(.82) contrast(1.05)}.luxury-item:hover img{transform:scale(1.055);filter:saturate(1.15) contrast(1.02)}.luxury-item span{display:block;color:var(--gold);font-family:var(--serif);font-size:2.4rem;line-height:1;margin-bottom:10px}.luxury-item h2{font-family:var(--serif);font-size:clamp(1.9rem,3vw,3.3rem);line-height:.92;margin:0 0 12px;letter-spacing:-.045em}.luxury-item p{color:var(--muted);margin:0}.luxury-item--1{grid-column:span 5;transform:translateY(20px)}.luxury-item--2{grid-column:span 4}.luxury-item--3{grid-column:span 3;transform:translateY(84px)}.luxury-item--1 figure{aspect-ratio:4/5}.luxury-item--2 figure{aspect-ratio:1/1.25}.luxury-item--3 figure{aspect-ratio:3/4}
@media (max-width:1180px){.project-grid{grid-template-columns:repeat(3,1fr)}.luxury-item--1,.luxury-item--2,.luxury-item--3{grid-column:span 6;transform:none}}
@media (max-width:760px){.page-hero{min-height:54vh;padding:132px 0 64px}.project-grid{grid-template-columns:repeat(2,1fr);gap:12px}.project-tile__content{left:16px;right:16px;bottom:15px}.project-tile__content h2{font-size:1.35rem}.project-tile__content p{font-size:.78rem}.luxury-grid{grid-template-columns:1fr;gap:22px}.luxury-item--1,.luxury-item--2,.luxury-item--3{grid-column:auto}.luxury-item{padding:14px}.luxury-item figure{aspect-ratio:4/5!important}}
@media (max-width:460px){.project-grid{grid-template-columns:1fr}.project-tile{aspect-ratio:1/1}.page-hero h1{font-size:3rem}}


/* Vesmar Projects carousel modal */
.project-grid--three{grid-template-columns:repeat(3,1fr)}
.project-tile{cursor:pointer}
.project-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:92px 7vw 58px;background:radial-gradient(circle at 50% 45%,rgba(201,162,39,.16),transparent 35%),rgba(8,8,8,.96);backdrop-filter:blur(18px);opacity:0;transform:scale(.985)}
.project-modal.active{display:flex;animation:vesmarModalIn .38s cubic-bezier(.2,.7,.2,1) forwards}
body.modal-open{overflow:hidden}.modal-content{width:min(1180px,86vw);transform:scale(.86);animation:vesmarZoomIn .52s cubic-bezier(.2,.7,.2,1) forwards}.modal-image-wrap{position:relative;touch-action:pan-y;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(201,162,39,.34);border-radius:24px;background:#111;box-shadow:0 35px 120px rgba(0,0,0,.55)}.modal-image-wrap:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(135deg,rgba(201,162,39,.16),transparent 24%,transparent 72%,rgba(255,255,255,.08))}.modal-content img{display:block;width:auto;max-width:100%;height:auto;max-height:min(70vh,720px);object-fit:contain;opacity:0;transform:scale(1.035);transition:opacity .25s ease,transform .55s ease}.modal-content img.is-loaded{opacity:1;transform:scale(1)}.modal-text{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-top:18px;color:var(--text)}.modal-text h2{font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);line-height:.92;margin:0;color:var(--gold)}.modal-text p{max-width:620px;margin:8px 0 0;color:var(--muted)}#carouselCounter{font-size:.82rem;letter-spacing:.18em;color:rgba(242,240,234,.7)}.modal-close,.carousel-btn{position:absolute;z-index:10000;display:grid;place-items:center;border:1px solid rgba(201,162,39,.45);background:rgba(16,16,16,.76);color:var(--gold);cursor:pointer;transition:transform .25s ease,background .25s ease,border-color .25s ease}.modal-close:hover,.carousel-btn:hover{transform:scale(1.06);background:rgba(201,162,39,.15);border-color:rgba(201,162,39,.85)}.modal-close{top:28px;right:34px;width:54px;height:54px;border-radius:50%;font-size:38px;line-height:1}.carousel-btn{top:50%;width:66px;height:92px;margin-top:-46px;border-radius:999px;font-size:58px;line-height:1}.carousel-prev{left:34px}.carousel-next{right:34px}@keyframes vesmarModalIn{to{opacity:1;transform:scale(1)}}@keyframes vesmarZoomIn{to{transform:scale(1)}}
@media (max-width:1180px){.project-grid--three{grid-template-columns:repeat(2,1fr)}.modal-content{width:84vw}.carousel-prev{left:18px}.carousel-next{right:18px}}
@media (max-width:760px){.project-grid--three{grid-template-columns:1fr}.project-modal{padding:78px 18px 36px}.modal-content{width:100%}.modal-content img{max-height:56vh}.modal-text{display:block}.carousel-btn{width:48px;height:70px;font-size:44px}.modal-close{right:18px;top:18px}}


/* === Vesmar multilingual/header/background updates v1.5.0 === */
.header-actions{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:14px;
}
.header-actions .socials{justify-self:auto}
.language-switcher{
  display:flex;
  align-items:center;
  gap:7px;
  padding-left:4px;
  border-left:1px solid var(--line);
}
.language-flag{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  font-size:18px;
  line-height:1;
  transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
}
.language-flag:hover,
.language-flag.is-active{
  transform:translateY(-2px);
  border-color:rgba(201,162,39,.65);
  background:rgba(201,162,39,.12);
  box-shadow:0 10px 25px rgba(0,0,0,.28);
}

.page-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.page-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-size:cover;
  background-position:center;
  opacity:.22;
  filter:saturate(.85) contrast(1.05);
}
.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg, rgba(17,17,17,.94), rgba(17,17,17,.70), rgba(17,17,17,.92)),
    radial-gradient(circle at 20% 25%, rgba(201,162,39,.20), transparent 34%);
}
.page-hero--projects::before{background-image:url('/assets/img/vesmar-projects-fondo.jpg')}
.page-hero--luxury::before{background-image:url('/assets/img/vesmar-luxury-fondo.jpg')}

.soft-image-box{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.soft-image-box::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(rgba(17,17,17,.88), rgba(17,17,17,.92)),
    url('/assets/img/vesmarwood-fondo-suave.jpg');
  background-size:cover;
  background-position:center;
  opacity:.55;
  pointer-events:none;
}
.projects-grid.projects-grid--three{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

@media (max-width:1080px){
  .site-header{grid-template-columns:auto 1fr auto}
  .header-actions{gap:10px}
}
@media (max-width:920px){
  .site-header{padding:0 20px}
  .header-actions{position:fixed;right:20px;bottom:20px;z-index:1100;background:rgba(17,17,17,.86);border:1px solid var(--line);border-radius:999px;padding:8px 10px;backdrop-filter:blur(16px)}
  .language-switcher{border-left:1px solid var(--line)}
  .projects-grid.projects-grid--three{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:640px){
  .projects-grid.projects-grid--three{grid-template-columns:1fr !important;}
  .header-actions{left:50%;right:auto;transform:translateX(-50%);bottom:14px}
}

/* === AJUSTES SOLICITADOS: HOME + PROJECTS GRID === */

/* Home: fondos específicos en los dos paneles principales */
.hero-panel .panel-bg{
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.hero-panel--projects .panel-bg{
  background-image:
    linear-gradient(135deg, rgba(17,17,17,.70), rgba(17,17,17,.88)),
    url('/assets/img/portada-projects.jpg?v=2.0.0');
}
.hero-panel--luxury .panel-bg{
  background-image:
    linear-gradient(225deg, rgba(17,17,17,.70), rgba(17,17,17,.88)),
    url('/assets/img/luxury-fondo.jpg');
}
.hero-panel:hover .panel-bg{
  transform:scale(1.055);
  opacity:1;
}

/* Vesmar Projects: 3 columnas fijas en escritorio */
.projects-grid,
.projects-grid.projects-grid--three,
.project-grid,
.project-grid--three{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px;
}

/* Tarjetas actuales: portada en gris + color/zoom al hover */
.project-card,
.project-tile{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  cursor:pointer;
  border:1px solid var(--line);
  background:#151515;
  box-shadow:0 22px 60px rgba(0,0,0,.28);
}

.project-card img,
.project-tile img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(100%) saturate(0) contrast(1.04);
  transform:scale(1);
  transition:
    transform .85s cubic-bezier(.2,.7,.2,1),
    filter .85s ease;
}

.project-card::after,
.project-tile::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg, rgba(0,0,0,.05) 20%, rgba(0,0,0,.82) 100%),
    radial-gradient(circle at 80% 12%, rgba(201,162,39,.16), transparent 34%);
  pointer-events:none;
}

.project-card:hover img,
.project-tile:hover img{
  transform:scale(1.13);
  filter:grayscale(0%) saturate(1.08) contrast(1.02);
}

.project-overlay,
.project-tile__content{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:2;
}

.project-overlay h3,
.project-tile__content h2{
  font-family:var(--serif);
  font-size:1.72rem;
  line-height:1;
  margin:0 0 8px;
  letter-spacing:-.025em;
  color:var(--text);
}

.project-overlay p,
.project-tile__content p{
  margin:0;
  color:rgba(242,240,234,.78);
  font-size:.9rem;
  line-height:1.45;
}

@media (max-width:920px){
  .projects-grid,
  .projects-grid.projects-grid--three,
  .project-grid,
  .project-grid--three{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:18px;
  }
}

@media (max-width:640px){
  .projects-grid,
  .projects-grid.projects-grid--three,
  .project-grid,
  .project-grid--three{
    grid-template-columns:1fr !important;
  }
  .project-overlay,
  .project-tile__content{
    left:16px;
    right:16px;
    bottom:16px;
  }
  .contact-card{padding:28px 20px;gap:30px;}
  .contact-directory__entry{padding:22px 18px;}
  .contact-directory__details div{grid-template-columns:1fr;gap:4px;}
}
@media (max-width:380px){
  .contact-card{padding:24px 14px;}
  .contact-directory__entry{padding:20px 14px;}
  .contact-directory__details a{font-size:.92rem;}
}


/* === Enlaces legales y páginas legales === */
.footer-links{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 18px;
  text-align:right;
}
.footer-links a{
  white-space:nowrap;
  font-size:.86rem;
}
.legal-page{
  padding-top:82px;
}
.legal-hero{
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at 20% 15%, rgba(201,162,39,.16), transparent 32%),
    linear-gradient(180deg,#141414,#101010);
}
.legal-hero__inner{
  padding:96px 0 54px;
  max-width:920px;
}
.legal-hero h1{
  font-family:var(--serif);
  font-size:clamp(2.6rem,5vw,5.2rem);
  line-height:.95;
  margin:0 0 18px;
  letter-spacing:-.04em;
}
.legal-hero p,
.legal-content p,
.legal-content li{
  color:var(--muted);
}
.legal-content{
  max-width:920px;
  padding:64px 0 90px;
}
.legal-content section{
  padding:28px 0;
  border-bottom:1px solid var(--line);
}
.legal-content section:first-child{
  padding-top:0;
}
.legal-content h2{
  font-family:var(--serif);
  font-size:2rem;
  line-height:1;
  margin:0 0 18px;
}
.legal-content ul{
  margin:0;
  padding-left:20px;
}
.legal-content a{
  color:var(--gold-soft);
  font-weight:700;
}
@media (max-width:980px){
  .footer-links{justify-content:flex-start;text-align:left;}
  .legal-page{padding-top:74px;}
  .legal-hero__inner{padding:72px 0 42px;}
}

/* === Corrección header comprimido: alineación vertical de logo, navegación e iconos === */
.site-header{
  overflow:hidden;
}
.site-header > .brand,
.site-header > .site-nav,
.site-header > .header-actions{
  min-height:0;
}
.site-header > .brand{
  height:100%;
  display:flex;
  align-items:center;
  align-self:center;
}
.site-header .brand img{
  width:176px;
  height:auto;
  max-height:calc(100% - 18px);
  object-fit:contain;
  transition:max-height .25s ease, width .25s ease;
}
.site-header.is-scrolled .brand img{
  max-height:calc(100% - 14px);
}
.site-header > .site-nav{
  height:100%;
  align-self:center;
  align-items:center;
}
.site-header > .header-actions{
  height:100%;
  align-self:center;
  align-items:center;
}
.site-header .socials,
.site-header .language-switcher{
  align-items:center;
}
.site-header .socials a,
.site-header .language-flag{
  flex:0 0 auto;
}
@media (max-width:980px){
  .site-header .brand img{
    width:150px;
    max-height:calc(100% - 18px);
  }
  .site-header.is-scrolled .brand img{
    max-height:calc(100% - 14px);
  }
}
@media (max-width:920px){
  .site-header{
    overflow:visible;
  }
  .site-header > .header-actions{
    height:auto;
  }
}


/* === Novedades / News section === */
.news-teaser{
  padding:28px 0 6px;
  background:linear-gradient(180deg, rgba(14,14,14,1) 0%, rgba(17,17,17,1) 100%);
}
.news-teaser__card{
  display:grid;
  grid-template-columns:1.35fr auto;
  gap:24px;
  align-items:center;
  padding:30px 34px;
  border:1px solid rgba(201,162,39,.20);
  background:linear-gradient(135deg,#1b1b1b,#121212);
  box-shadow:var(--shadow);
}
.news-teaser__card h2,
.news-card__content h3,
.article-aside h2,
.article-gallery-wrap h2{
  font-family:var(--serif);
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:.96;
  margin:0 0 14px;
  letter-spacing:-.035em;
}
.news-teaser__card p,
.news-card__content p,
.article-aside p,
.article-body p{
  color:var(--muted);
}
.news-teaser__actions{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.button-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:15px 24px;
  border-radius:999px;
  border:1px solid rgba(201,162,39,.32);
  background:var(--gold);
  color:#111;
  font-size:.84rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  transition:transform .25s ease, background .25s ease, box-shadow .25s ease;
}
.button-link:hover{
  transform:translateY(-2px);
  background:var(--gold-soft);
  box-shadow:0 14px 28px rgba(0,0,0,.22);
}
.page-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.page-hero__actions .button-link{gap:12px}
.text-link{
  color:var(--gold-soft);
  font-weight:700;
  letter-spacing:.02em;
}
.text-link:hover{ color:#f2ddb0; }
.page-hero--news::before{background-image:url('/assets/img/novedades/VESMAR1-56.jpg');}
.page-hero--news-querola::before{background-image:url('/assets/img/novedades/la-querola-dordino-portada.png');}
.page-hero--news-clt::before{background-image:url('/assets/img/novedades/VESMAR1-56.jpg');}
.news-listing{background:linear-gradient(180deg,var(--bg),var(--bg-soft));}
.news-card{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch;}
.news-card__image{position:relative;overflow:hidden;min-height:460px;border:1px solid var(--line);box-shadow:var(--shadow);}
.news-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.news-card:hover .news-card__image img{transform:scale(1.06);}
.news-card__image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.08) 18%, rgba(0,0,0,.7) 100%);}
.news-card__badge{position:absolute;top:18px;left:18px;z-index:2;padding:8px 14px;border-radius:999px;background:rgba(17,17,17,.72);border:1px solid rgba(201,162,39,.35);color:var(--gold-soft);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;}
.news-card__content{display:flex;flex-direction:column;justify-content:center;padding:38px;border:1px solid var(--line);background:linear-gradient(140deg,#202020,#151515);}
.news-card__content .button-link{align-self:flex-start;margin-top:14px;}
.news-card + .news-card{margin-top:32px;}
.article-page{background:linear-gradient(180deg,var(--bg),#161616);}
.article-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;align-items:start;}
.article-aside{position:sticky;top:102px;padding:34px;border:1px solid var(--line);background:linear-gradient(140deg,#1d1d1d,#141414);box-shadow:var(--shadow);}
.article-body{padding:10px 6px 0;}
.article-body p{font-size:1.06rem;line-height:1.9;margin:0 0 24px;}
.article-body strong{color:var(--text);}
.article-gallery-wrap{padding:0 0 110px;}
.article-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;}
.article-gallery__item{grid-column:span 4;overflow:hidden;border:1px solid var(--line);background:#131313;}
.article-gallery__item--large{grid-column:span 8;grid-row:span 2;}
.article-gallery__item img{width:100%;height:100%;min-height:260px;object-fit:cover;transition:transform .75s ease;}
.article-gallery__item:hover img{transform:scale(1.04);}
@media (max-width:980px){.news-teaser__card,.news-card,.article-layout{grid-template-columns:1fr;}.article-aside{position:relative;top:auto;}}
@media (max-width:760px){.news-teaser{padding:20px 0 0;}.news-teaser__card,.news-card__content,.article-aside{padding:26px;}.news-card__image{min-height:320px;}.article-gallery__item,.article-gallery__item--large{grid-column:span 12;}.article-gallery__item img{min-height:220px;}}

/* === Página oculta Evento CLT v1.8.0 === */
.event-page{background:#0f0f0f;}
.event-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:1200;
  height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:0 34px;
  background:rgba(17,17,17,.76);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px);
}
.event-brand img{width:176px;}
.event-lang{display:flex;align-items:center;gap:8px;}
.event-lang a{
  min-width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  background:rgba(255,255,255,.035);
  transition:transform .25s ease,border-color .25s ease,color .25s ease,background .25s ease;
}
.event-lang a:hover,
.event-lang a.is-active{transform:translateY(-2px);border-color:rgba(201,162,39,.65);color:var(--text);background:rgba(201,162,39,.12);}
.event-hero{position:relative;min-height:100vh;padding:142px 0 76px;display:grid;align-items:center;overflow:hidden;isolation:isolate;}
.event-hero__bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(17,17,17,.96),rgba(17,17,17,.68),rgba(17,17,17,.94)),url('/assets/img/vesmar-projects-fondo.jpg');background-size:cover;background-position:center;filter:saturate(.8) contrast(1.05);}
.event-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 22%,rgba(201,162,39,.24),transparent 30%),radial-gradient(circle at 86% 70%,rgba(201,162,39,.12),transparent 35%);pointer-events:none;}
.event-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center;}
.event-hero__content h1,
.event-intro h2,
.event-form-copy h2{font-family:var(--serif);font-size:clamp(3.1rem,6vw,6.5rem);line-height:.88;margin:0 0 24px;font-weight:700;letter-spacing:-.055em;}
.event-hero__content p{max-width:760px;color:var(--muted);font-size:1.12rem;line-height:1.85;margin:0;}
.event-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px;}
.event-badges span{display:inline-flex;align-items:center;min-height:42px;padding:10px 16px;border:1px solid rgba(201,162,39,.32);border-radius:999px;color:#f2ddb0;background:rgba(201,162,39,.10);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;}
.event-hero__panel{padding:24px;border:1px solid rgba(201,162,39,.24);background:linear-gradient(150deg,rgba(32,32,32,.92),rgba(15,15,15,.92));box-shadow:var(--shadow);}
.event-hero__panel img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,255,255,.08);background:#111;margin-bottom:18px;}
.event-meta-row{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start;padding:18px 2px;border-top:1px solid rgba(255,255,255,.10);}
.event-meta-row span{color:var(--gold-soft);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.14em;}
.event-meta-row strong{font-size:1rem;color:var(--text);font-weight:700;}
.event-intro{background:linear-gradient(180deg,#101010,#171717);}
.event-intro h2{font-size:clamp(2.5rem,4.8vw,5rem);}
.event-copy{padding:40px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(145deg,#1f1f1f,#141414);box-shadow:var(--shadow);}
.event-copy p{margin:0 0 22px;color:var(--muted);font-size:1.06rem;line-height:1.9;}
.event-copy p:last-child{margin-bottom:0;}
.event-cards{padding:0 0 110px;background:#171717;}
.event-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.event-info-card{display:grid;grid-template-rows:auto 1fr;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.035);box-shadow:0 24px 70px rgba(0,0,0,.25);}
.event-info-card img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.9) contrast(1.05);}
.event-info-card div{padding:30px;}
.event-info-card h3{font-family:var(--serif);font-size:2.2rem;line-height:.95;margin:0 0 14px;letter-spacing:-.04em;}
.event-info-card p{margin:0;color:var(--muted);}
.event-form-section{background:radial-gradient(circle at 14% 0,rgba(201,162,39,.16),transparent 32%),linear-gradient(180deg,#0f0f0f,#17120f 58%,#101010);}
.event-form-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:48px;align-items:start;}
.event-form-copy{position:sticky;top:120px;}
.event-form-copy h2{font-size:clamp(2.8rem,5vw,5.8rem);}
.event-form-copy img{margin-top:28px;width:100%;border:1px solid rgba(201,162,39,.20);box-shadow:var(--shadow);}
.event-form{display:grid;gap:20px;padding:38px;border:1px solid rgba(201,162,39,.26);background:linear-gradient(145deg,rgba(31,31,31,.96),rgba(16,16,16,.96));box-shadow:var(--shadow);}
.event-form label{display:grid;gap:8px;color:var(--gold-soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900;}
.event-form input{width:100%;border:1px solid rgba(255,255,255,.13);background:#101010;color:var(--text);padding:16px 16px;font:inherit;outline:none;border-radius:0;}
.event-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,39,.12);}
.event-fieldset{margin:0;padding:0;border:0;display:grid;gap:14px;}
.event-fieldset legend{padding:0;margin:0 0 2px;color:var(--text);font-family:var(--serif);font-size:1.8rem;font-weight:700;line-height:1;letter-spacing:-.02em;}
.event-fieldset--compact legend{font-size:1.35rem;}
.event-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.event-choice{display:block!important;color:var(--text)!important;letter-spacing:0!important;text-transform:none!important;font-size:1rem!important;font-weight:700!important;}
.event-choice input{position:absolute;opacity:0;pointer-events:none;}
.event-choice span{display:grid;place-items:center;min-height:58px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.035);transition:background .25s ease,border-color .25s ease,transform .25s ease,color .25s ease;}
.event-choice:hover span{transform:translateY(-1px);border-color:rgba(201,162,39,.45);}
.event-choice input:checked + span{background:rgba(201,162,39,.18);border-color:rgba(201,162,39,.70);color:#f2ddb0;}
.event-form__yes{display:grid;gap:18px;padding-top:8px;}
.event-privacy{margin:0;color:var(--muted);font-size:.9rem;line-height:1.7;}
.event-submit{justify-self:start;min-height:54px;border:0;background:var(--gold);color:#111;padding:16px 24px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease;}
.event-submit:hover{transform:translateY(-2px);background:var(--gold-soft);box-shadow:0 14px 28px rgba(0,0,0,.28);}
.event-alert{padding:16px 18px;border:1px solid rgba(255,255,255,.12);font-weight:800;line-height:1.55;}
.event-alert--success{background:rgba(80,180,110,.12);border-color:rgba(80,180,110,.35);color:#d9ffe4;}
.event-alert--error{background:rgba(210,80,72,.12);border-color:rgba(210,80,72,.35);color:#ffd9d6;}
.event-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.event-footer .footer-grid a{color:var(--gold-soft);font-weight:800;}
@media (max-width:980px){
  .event-hero__grid,.event-form-layout{grid-template-columns:1fr;}
  .event-form-copy{position:relative;top:auto;}
  .event-card-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:680px){
  .event-header{height:74px;padding:0 18px;}
  .event-brand img{width:150px;}
  .event-lang a{min-width:36px;height:36px;font-size:.72rem;}
  .event-hero{padding:120px 0 58px;}
  .event-hero__grid{gap:30px;}
  .event-hero__content h1{font-size:3.15rem;}
  .event-badges span{width:100%;justify-content:center;}
  .event-meta-row{grid-template-columns:1fr;gap:4px;}
  .event-card-grid{grid-template-columns:1fr;}
  .event-form{padding:26px;}
  .event-choice-grid{grid-template-columns:1fr;}
}

/* === Página oculta Evento CLT v1.9.0: versión breve tipo Google Form === */
.event-page--formlight{
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 0,rgba(201,162,39,.16),transparent 32%),
    linear-gradient(180deg,#111111 0%,#151515 44%,#0f0f0f 100%);
}
.event-header--compact{
  position:sticky;
  height:auto;
  min-height:72px;
  padding:14px 28px;
  background:rgba(17,17,17,.92);
  backdrop-filter:blur(16px);
}
.event-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;}
.event-mini-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:10px 16px;
  border-radius:999px;
  background:var(--gold);
  color:#111;
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  box-shadow:0 12px 28px rgba(0,0,0,.26);
}
.event-mini-cta:hover{background:var(--gold-soft);transform:translateY(-1px);}
.event-simple{padding-bottom:54px;}
.event-simple-hero{padding:34px 0 18px;}
.event-simple-hero__grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:22px;align-items:stretch;}
.event-hero-card,
.event-summary-card,
.event-partners-card,
.event-form--google{
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:rgba(26,26,26,.92);
  box-shadow:0 22px 70px rgba(0,0,0,.28);
}
.event-hero-card{padding:34px;overflow:hidden;position:relative;}
.event-hero-card:before,
.event-form--google:before{
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:8px;
  background:linear-gradient(90deg,var(--gold),var(--gold-soft));
}
.event-hero-card h1{
  font-family:var(--serif);
  font-size:clamp(2.35rem,5vw,4.45rem);
  line-height:.94;
  letter-spacing:-.045em;
  margin:0 0 14px;
}
.event-hero-card p{max-width:820px;margin:0 0 22px;color:var(--muted);font-size:1.02rem;line-height:1.65;}
.event-primary-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 24px;
  border-radius:999px;
  background:var(--gold);
  color:#111;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  box-shadow:0 16px 34px rgba(0,0,0,.26);
  transition:transform .22s ease,background .22s ease;
}
.event-primary-cta:hover{transform:translateY(-2px);background:var(--gold-soft);}
.event-summary-card{padding:26px;display:grid;gap:0;align-content:center;}
.event-summary-card div{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.10);}
.event-summary-card div:first-child{padding-top:0;}
.event-summary-card div:last-child{border-bottom:0;padding-bottom:0;}
.event-summary-card span,
.event-main-sponsor p,
.event-supporters p{
  display:block;
  color:var(--gold-soft);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
  margin:0 0 5px;
}
.event-summary-card strong{display:block;color:var(--text);font-size:1rem;line-height:1.45;}
.event-partners-section{padding:12px 0 18px;}
.event-partners-card{padding:22px;display:grid;grid-template-columns:minmax(260px,.9fr) 1.1fr;gap:18px;align-items:stretch;background:rgba(20,20,20,.82);}
.event-main-sponsor,.event-supporters{display:grid;gap:10px;align-content:start;}
.event-supporters-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.event-logo-slot{
  min-height:92px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.045);
}
.event-logo-slot--featured{min-height:126px;border-color:rgba(201,162,39,.30);background:rgba(201,162,39,.075);}
.event-logo-slot img{max-width:78%;max-height:70px;width:auto;height:auto;object-fit:contain;}
.event-logo-slot--featured img{max-height:86px;}
.event-logo-slot--placeholder strong{font-family:var(--serif);font-size:2rem;line-height:1;color:var(--text);letter-spacing:-.03em;}
.event-logo-slot--placeholder span{display:block;margin-top:8px;color:var(--muted);font-size:.78rem;}
.event-form-section--simple{padding:18px 0 20px;background:transparent;}
.event-form-container{width:min(760px,calc(100% - 40px));}
.event-form--google{
  position:relative;
  gap:14px;
  padding:32px;
  overflow:hidden;
  background:rgba(245,241,232,.96);
  color:#181818;
  border-color:rgba(201,162,39,.26);
}
.event-form-head{padding:8px 0 4px;}
.event-form-head h2{margin:0;font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.2rem);line-height:1;letter-spacing:-.04em;color:#181818;}
.event-form--google .eyebrow{color:#8a6d15;margin-bottom:8px;}
.event-question-card{
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:16px;
  background:#fff;
  padding:20px!important;
  box-shadow:0 7px 20px rgba(0,0,0,.06);
}
.event-form--google label{color:#1d1d1d;font-size:.82rem;letter-spacing:.05em;text-transform:none;font-weight:800;}
.event-form--google input{
  border:0;
  border-bottom:1px solid rgba(0,0,0,.22);
  background:transparent;
  color:#181818;
  padding:12px 2px;
  border-radius:0;
}
.event-form--google input:focus{border-color:#8a6d15;box-shadow:none;}
.event-form--google input::placeholder{color:rgba(0,0,0,.42);}
.event-form--google .event-fieldset legend{
  color:#181818;
  font-family:var(--sans);
  font-size:1.02rem;
  line-height:1.35;
  font-weight:800;
  letter-spacing:0;
}
.event-form--google .event-fieldset--compact legend{font-size:1rem;}
.event-form--google .event-choice-grid{grid-template-columns:1fr 1fr;gap:10px;}
.event-form--google .event-choice span{
  min-height:48px;
  border-radius:999px;
  border-color:rgba(0,0,0,.16);
  background:#f7f3ea;
  color:#181818;
}
.event-form--google .event-choice:hover span{border-color:rgba(201,162,39,.65);}
.event-form--google .event-choice input:checked + span{
  background:rgba(201,162,39,.18);
  border-color:#8a6d15;
  color:#181818;
}
.event-two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.event-form--google .event-form__yes{gap:14px;padding-top:0;}
.event-form--google .event-privacy{color:rgba(0,0,0,.58);font-size:.82rem;line-height:1.55;margin:2px 0 0;}
.event-form--google .event-submit{
  width:100%;
  justify-self:stretch;
  min-height:52px;
  border-radius:999px;
  background:#111;
  color:var(--gold-soft);
  margin-top:2px;
}
.event-form--google .event-submit:hover{background:#1f1f1f;box-shadow:0 14px 28px rgba(0,0,0,.18);}
.event-form--google .event-alert{border-radius:14px;}
.event-form--google .event-alert--success{background:#eaf7ec;border-color:#a8dab0;color:#185326;}
.event-form--google .event-alert--error{background:#fff1ef;border-color:#efb7ad;color:#7a241d;}
.event-footer--simple{padding:26px 0 calc(26px + env(safe-area-inset-bottom));}
.event-footer--simple .footer-grid p{font-weight:700;color:var(--text);}
@media (max-width:860px){
  .event-simple-hero__grid,.event-partners-card{grid-template-columns:1fr;}
  .event-summary-card{padding:22px;}
  .event-supporters-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:620px){
  .event-header--compact{padding:11px 14px;gap:10px;align-items:flex-start;}
  .event-brand img{width:132px;}
  .event-header-actions{gap:8px;align-items:flex-end;flex-direction:column-reverse;}
  .event-mini-cta{min-height:34px;padding:8px 12px;font-size:.68rem;letter-spacing:.08em;}
  .event-lang{gap:5px;}
  .event-lang a{min-width:30px;height:30px;font-size:.66rem;}
  .event-simple-hero{padding:16px 0 10px;}
  .event-simple-hero__grid{gap:12px;}
  .event-hero-card{padding:28px 20px 22px;border-radius:18px;}
  .event-hero-card h1{font-size:2.35rem;margin-bottom:10px;}
  .event-hero-card p{font-size:.94rem;line-height:1.52;margin-bottom:16px;}
  .event-primary-cta{width:100%;min-height:50px;}
  .event-summary-card{padding:18px;border-radius:18px;}
  .event-summary-card div{padding:12px 0;}
  .event-partners-section{padding:8px 0 10px;}
  .event-partners-card{padding:16px;border-radius:18px;gap:14px;}
  .event-supporters-grid{grid-template-columns:1fr;}
  .event-logo-slot{min-height:78px;border-radius:14px;}
  .event-logo-slot--featured{min-height:96px;}
  .event-logo-slot--placeholder strong{font-size:1.65rem;}
  .event-form-section--simple{padding:10px 0 14px;}
  .event-form-container{width:min(100% - 24px,760px);}
  .event-form--google{padding:24px 14px;border-radius:18px;gap:12px;}
  .event-question-card{padding:16px!important;border-radius:14px;}
  .event-form-head h2{font-size:2.2rem;}
  .event-two-fields{grid-template-columns:1fr;gap:12px;}
  .event-form--google .event-choice-grid{grid-template-columns:1fr;}
  .event-form--google .event-choice span{min-height:46px;}
  .event-footer--simple .footer-grid{gap:10px;}
  .event-footer--simple .footer-grid img{width:150px;}
}
@media (max-width:380px){
  .event-hero-card h1{font-size:2.05rem;}
  .event-brand img{width:118px;}
  .event-mini-cta{font-size:.64rem;padding-inline:10px;}
}

/* === Página oculta Evento CLT v2.0.0: estética oscura premium + formulario afilado === */
.event-page--dark{
  position:relative;
  min-height:100vh;
  overflow-x:hidden;
  background:#080808;
  color:var(--text);
  isolation:isolate;
}
.event-global-bg{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(8,8,8,.94),rgba(8,8,8,.72),rgba(8,8,8,.96)),
    var(--event-bg-image) center/cover no-repeat;
  opacity:.58;
  filter:saturate(.82) contrast(1.06);
}
.event-page--dark::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 16% 18%,rgba(201,162,39,.18),transparent 28%),
    radial-gradient(circle at 82% 64%,rgba(201,162,39,.10),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.66));
}
.event-sci-fi-layer{
  position:fixed;
  inset:0;
  z-index:2;
  overflow:hidden;
  pointer-events:none;
  opacity:.54;
}
.event-sci-fi-layer span{
  position:absolute;
  display:block;
  width:clamp(80px,14vw,220px);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,162,39,.86),transparent);
  box-shadow:0 0 18px rgba(201,162,39,.34);
  transform:rotate(-18deg);
  animation:eventSignal 9s linear infinite;
}
.event-sci-fi-layer span::after{
  content:"";
  position:absolute;
  right:18%;
  top:-3px;
  width:6px;
  height:6px;
  background:rgba(201,162,39,.78);
  box-shadow:0 0 16px rgba(201,162,39,.72);
}
.event-sci-fi-layer span:nth-child(1){top:18%;left:-20%;animation-delay:0s;}
.event-sci-fi-layer span:nth-child(2){top:32%;left:58%;animation-delay:-3s;animation-duration:11s;}
.event-sci-fi-layer span:nth-child(3){top:54%;left:-16%;animation-delay:-6s;animation-duration:13s;}
.event-sci-fi-layer span:nth-child(4){top:71%;left:70%;animation-delay:-1.5s;animation-duration:10s;}
.event-sci-fi-layer span:nth-child(5){top:84%;left:8%;animation-delay:-5s;animation-duration:12s;}
.event-sci-fi-layer span:nth-child(6){top:9%;left:72%;animation-delay:-7s;animation-duration:14s;}
@keyframes eventSignal{
  0%{transform:translate3d(-24vw,0,0) rotate(-18deg);opacity:0;}
  12%{opacity:.72;}
  54%{opacity:.38;}
  100%{transform:translate3d(44vw,-18vh,0) rotate(-18deg);opacity:0;}
}
.event-page--dark .event-header,
.event-page--dark .event-dark-main,
.event-page--dark .event-footer{
  position:relative;
  z-index:5;
}
.event-header--dark{
  position:sticky;
  top:0;
  min-height:76px;
  height:auto;
  padding:14px 30px;
  background:rgba(10,10,10,.78);
  border-bottom:1px solid rgba(201,162,39,.20);
  backdrop-filter:blur(18px);
}
.event-header--dark .event-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;}
.event-page--dark .event-lang a{
  border-radius:0;
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.035);
}
.event-page--dark .event-lang a:hover,
.event-page--dark .event-lang a.is-active{
  border-color:rgba(201,162,39,.68);
  background:rgba(201,162,39,.14);
  color:#f2ddb0;
}
.event-page--dark .event-mini-cta,
.event-primary-cta--sharp,
.event-submit--sharp{
  border-radius:0;
  background:var(--gold);
  color:#111;
  box-shadow:0 16px 34px rgba(0,0,0,.32);
}
.event-page--dark .event-mini-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:10px 16px;
  border:1px solid rgba(201,162,39,.62);
  font-size:.76rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.event-page--dark .event-mini-cta:hover,
.event-primary-cta--sharp:hover,
.event-submit--sharp:hover{
  transform:translateY(-2px);
  background:var(--gold-soft);
}
.event-dark-main{padding-bottom:38px;}
.event-dark-hero{padding:48px 0 22px;}
.event-dark-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(280px,.82fr);
  gap:28px;
  align-items:stretch;
}
.event-dark-copy,
.event-dark-summary{
  border:1px solid rgba(201,162,39,.24);
  background:linear-gradient(145deg,rgba(28,28,28,.84),rgba(12,12,12,.88));
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}
.event-dark-copy{
  position:relative;
  overflow:hidden;
  padding:42px;
}
.event-dark-copy::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.event-dark-copy h1{
  max-width:780px;
  margin:0 0 16px;
  font-family:var(--serif);
  font-size:clamp(2.9rem,6vw,6.2rem);
  line-height:.9;
  letter-spacing:-.055em;
  font-weight:700;
}
.event-dark-copy p:not(.eyebrow){
  max-width:760px;
  margin:0 0 24px;
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.7;
}
.event-primary-cta--sharp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:16px 26px;
  border:1px solid rgba(201,162,39,.68);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  transition:transform .24s ease,background .24s ease,box-shadow .24s ease;
}
.event-dark-summary{
  display:grid;
  align-content:center;
  padding:28px;
}
.event-dark-summary div{
  padding:17px 0;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.event-dark-summary div:first-child{padding-top:0;}
.event-dark-summary div:last-child{border-bottom:0;padding-bottom:0;}
.event-dark-summary span{
  display:block;
  margin:0 0 6px;
  color:var(--gold-soft);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.event-dark-summary strong{
  display:block;
  color:var(--text);
  font-size:1rem;
  line-height:1.45;
}
.event-wide-image{
  width:100vw;
  margin:26px 0 0 calc(50% - 50vw);
  border-top:1px solid rgba(201,162,39,.18);
  border-bottom:1px solid rgba(201,162,39,.18);
  background:rgba(0,0,0,.34);
  overflow:hidden;
}
.event-wide-image img,
.event-wide-image__placeholder{
  width:100%;
  min-height:clamp(190px,32vw,440px);
  display:block;
}
.event-wide-image img{
  height:clamp(220px,34vw,480px);
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.06);
}
.event-wide-image__placeholder{
  display:grid;
  place-items:center;
  padding:34px 18px;
  color:rgba(242,221,176,.74);
  font-size:.82rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.16em;
  text-align:center;
  background:
    linear-gradient(90deg,rgba(201,162,39,.10),transparent,rgba(201,162,39,.08)),
    repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px);
}

.event-logo-band{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  padding-inline:20px;
}
.event-logo-band--boix{
  margin:28px 0 16px;
}
.event-logo-band--support{
  gap:clamp(28px,5vw,72px);
  margin:16px 0 4px;
}
.event-logo-band--boix img,
.event-logo-placeholder--boix{
  width:25vw;
  max-width:420px;
  min-width:180px;
}
.event-support-logo img,
.event-logo-placeholder--support{
  width:10vw;
  max-width:170px;
  min-width:86px;
}
.event-logo-band img{
  display:block;
  height:auto;
  max-height:120px;
  object-fit:contain;
  filter:drop-shadow(0 18px 32px rgba(0,0,0,.44));
}
.event-support-logo img{
  max-height:76px;
}
.event-logo-placeholder{
  display:grid;
  place-items:center;
  min-height:64px;
  padding:14px;
  border:1px solid rgba(201,162,39,.30);
  background:linear-gradient(145deg,rgba(23,23,23,.74),rgba(8,8,8,.82));
  color:rgba(242,221,176,.82);
  font-family:var(--serif);
  font-weight:700;
  letter-spacing:.02em;
  text-align:center;
  text-transform:uppercase;
  box-shadow:0 18px 44px rgba(0,0,0,.30);
}
.event-logo-placeholder--boix{
  min-height:clamp(78px,8vw,128px);
  font-size:clamp(1.5rem,3.1vw,3.25rem);
}
.event-logo-placeholder--support{
  min-height:clamp(46px,4.2vw,78px);
  font-size:clamp(.78rem,1.2vw,1.3rem);
}
.event-form-section--dark{
  padding:34px 0 22px;
  background:transparent;
}
.event-form-container--dark{width:min(760px,calc(100% - 40px));}
.event-form--sharp{
  gap:20px;
  padding:38px;
  border-radius:0;
  border:1px solid rgba(201,162,39,.28);
  background:linear-gradient(145deg,rgba(31,31,31,.94),rgba(12,12,12,.96));
  box-shadow:0 28px 80px rgba(0,0,0,.42);
}
.event-form--sharp .event-form-head{padding:0 0 2px;}
.event-form--sharp .event-form-head h2{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(2.5rem,5vw,4.2rem);
  line-height:.95;
  letter-spacing:-.045em;
  color:var(--text);
}
.event-form--sharp .eyebrow{color:var(--gold-soft);}
.event-form--sharp label{
  color:var(--gold-soft);
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
}
.event-form--sharp input{
  border-radius:0;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.28);
  color:var(--text);
}
.event-form--sharp input::placeholder{color:rgba(236,236,236,.38);}
.event-form--sharp input:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(201,162,39,.12);
}
.event-form--sharp .event-choice span{
  border-radius:0;
  min-height:56px;
}
.event-form--sharp .event-choice input:checked + span{
  background:rgba(201,162,39,.20);
  border-color:rgba(201,162,39,.78);
  color:#f2ddb0;
}
.event-form--sharp .event-submit{
  justify-self:stretch;
  width:100%;
  min-height:56px;
  border:1px solid rgba(201,162,39,.68);
  margin-top:2px;
}
.event-two-fields--dark{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.event-footer--dark{
  padding:28px 0 calc(28px + env(safe-area-inset-bottom));
  background:rgba(8,8,8,.84);
  border-top:1px solid rgba(201,162,39,.18);
}
.event-footer--dark .footer-grid p{font-weight:800;color:var(--text);}
.event-footer--dark .footer-grid a{color:var(--gold-soft);font-weight:900;}
.event-footer-grid{grid-template-columns:190px 1fr auto;}
.event-footer-vesmar-logo{width:170px;max-width:100%;}
.event-footer-thanks{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
  text-align:center;
}
.event-footer-thanks p{margin:0;}
.event-footer-pro-logo{
  width:clamp(120px,14vw,210px) !important;
  max-height:68px;
  object-fit:contain;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.32));
}

@media (prefers-reduced-motion:reduce){
  .event-sci-fi-layer span{animation:none;opacity:.22;}
}
@media (max-width:860px){
  .event-dark-hero{padding:26px 0 16px;}
  .event-dark-hero__grid{grid-template-columns:1fr;gap:16px;}
  .event-dark-copy{padding:32px 24px;}
  .event-dark-summary{padding:22px;}
  .event-wide-image{margin-top:18px;}
  .event-form-section--dark{padding:24px 0 16px;}
}
@media (max-width:620px){
  .event-header--dark{padding:11px 14px;gap:10px;align-items:flex-start;}
  .event-header--dark .event-brand img{width:132px;}
  .event-header--dark .event-header-actions{gap:8px;align-items:flex-end;flex-direction:column-reverse;}
  .event-page--dark .event-mini-cta{min-height:34px;padding:8px 12px;font-size:.67rem;letter-spacing:.08em;}
  .event-page--dark .event-lang{gap:5px;}
  .event-page--dark .event-lang a{min-width:30px;height:30px;font-size:.66rem;}
  .event-dark-copy{padding:28px 20px 22px;}
  .event-dark-copy h1{font-size:2.6rem;margin-bottom:12px;}
  .event-dark-copy p:not(.eyebrow){font-size:.95rem;line-height:1.56;margin-bottom:18px;}
  .event-primary-cta--sharp{width:100%;min-height:50px;}
  .event-dark-summary div{padding:12px 0;}
  .event-wide-image img,
  .event-wide-image__placeholder{min-height:230px;}
  .event-wide-image img{height:230px;}
  .event-logo-band{padding-inline:12px;}
  .event-logo-band--boix{margin:20px 0 12px;}
  .event-logo-band--support{gap:24px;margin:12px 0 0;}
  .event-form-container--dark{width:min(100% - 24px,760px);}
  .event-form--sharp{padding:26px 18px;gap:16px;}
  .event-form--sharp .event-form-head h2{font-size:2.45rem;}
  .event-two-fields--dark{grid-template-columns:1fr;gap:14px;}
  .event-form--sharp .event-choice-grid{grid-template-columns:1fr;}
  .event-form--sharp .event-choice span{min-height:48px;}
  .event-footer--dark .footer-grid{gap:10px;}
  .event-footer-vesmar-logo{width:150px;}
  .event-footer-grid{grid-template-columns:1fr;text-align:center;justify-items:center;}
  .event-footer-thanks{gap:12px;}
  .event-footer-pro-logo{width:clamp(118px,42vw,190px) !important;}
}
@media (max-width:380px){
  .event-dark-copy h1{font-size:2.25rem;}
  .event-header--dark .event-brand img{width:118px;}
}

/* === Vesmar Luxury showroom page v2.0.0 === */
.luxury-page-v2{background:#0f0d0b;}
.luxury-page-v2 .page-hero--luxury::before{
  background-image:url('/assets/img/luxury-showroom/luxury-showroom-01.webp');
  opacity:.34;
  filter:saturate(.95) contrast(1.08) brightness(.82);
}
.luxury-page-v2 .page-hero--luxury::after{
  background:
    linear-gradient(90deg, rgba(12,10,8,.96), rgba(12,10,8,.78) 44%, rgba(12,10,8,.96)),
    radial-gradient(circle at 72% 18%, rgba(201,162,39,.22), transparent 32%);
}
.luxury-hero-v2{min-height:92vh;padding:150px 0 88px;align-items:center;}
.luxury-hero-v2__inner{position:relative;z-index:3;display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center;max-width:1180px;}
.luxury-hero-v2__copy h1,
.luxury-intro__copy h2,
.luxury-pillars .section-head h2,
.luxury-showroom__head h2,
.luxury-visit__card h2{
  font-family:var(--serif);
  line-height:.9;
  letter-spacing:-.055em;
  margin:0;
  color:var(--text);
}
.luxury-hero-v2__copy h1{font-size:clamp(3.35rem,6.8vw,7.2rem);max-width:900px;}
.luxury-hero-v2__copy > p:not(.eyebrow){max-width:720px;margin:28px 0 0;color:rgba(242,240,234,.76);font-size:1.08rem;line-height:1.85;}
.luxury-hero-v2__actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:34px;}
.luxury-hero-v2__actions span{color:#e6c86e;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;}
.luxury-hero-v2__image{position:relative;margin:0;min-height:620px;border:1px solid rgba(201,162,39,.28);background:#15110e;box-shadow:0 34px 100px rgba(0,0,0,.50);overflow:hidden;}
.luxury-hero-v2__image::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.11);z-index:2;pointer-events:none;}
.luxury-hero-v2__image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.48));z-index:1;pointer-events:none;}
.luxury-hero-v2__image img{width:100%;height:100%;min-height:620px;object-fit:cover;filter:saturate(1.02) contrast(1.05);transform:scale(1.012);}
.luxury-intro{background:linear-gradient(180deg,#0f0d0b,#17120f 58%,#111);}
.luxury-intro__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:start;}
.luxury-intro__copy h2,
.luxury-pillars .section-head h2,
.luxury-showroom__head h2,
.luxury-visit__card h2{font-size:clamp(2.7rem,5.2vw,5.6rem);}
.luxury-intro__text p{margin:0 0 22px;color:var(--muted);font-size:1.06rem;line-height:1.9;}
.luxury-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:40px;border:1px solid rgba(201,162,39,.22);background:rgba(255,255,255,.035);}
.luxury-stats div{padding:24px 22px;border-right:1px solid rgba(255,255,255,.1);}
.luxury-stats div:last-child{border-right:0;}
.luxury-stats strong{display:block;font-family:var(--serif);font-size:2rem;line-height:1;color:var(--gold-soft);margin-bottom:8px;}
.luxury-stats span{display:block;color:rgba(242,240,234,.76);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;}
.luxury-pillars{background:radial-gradient(circle at 12% 0,rgba(201,162,39,.16),transparent 34%),linear-gradient(180deg,#111,#171717);}
.luxury-pillars__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.luxury-pillar{min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;padding:32px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(160deg,rgba(35,31,27,.92),rgba(17,17,17,.96));box-shadow:0 24px 70px rgba(0,0,0,.22);transition:transform .35s ease,border-color .35s ease,background .35s ease;}
.luxury-pillar:hover{transform:translateY(-6px);border-color:rgba(201,162,39,.36);background:linear-gradient(160deg,rgba(48,39,28,.92),rgba(17,17,17,.96));}
.luxury-pillar span{font-family:var(--serif);font-size:3.6rem;line-height:1;color:rgba(201,162,39,.78);margin-bottom:auto;}
.luxury-pillar h3{font-family:var(--serif);font-size:2rem;line-height:.95;letter-spacing:-.035em;margin:30px 0 12px;color:var(--text);}
.luxury-pillar p{margin:0;color:var(--muted);}
.luxury-showroom{background:linear-gradient(180deg,#171717,#100d0b 48%,#0f0f0f);}
.luxury-showroom__head{display:grid;grid-template-columns:1fr .82fr;gap:56px;align-items:end;margin-bottom:42px;}
.luxury-showroom__head p:not(.eyebrow){margin:0;color:var(--muted);font-size:1rem;line-height:1.85;}
.luxury-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:112px;gap:18px;}
.luxury-mosaic__item{position:relative;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.10);background:#171717;box-shadow:0 24px 60px rgba(0,0,0,.25);}
.luxury-mosaic__item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.32));opacity:.75;transition:opacity .35s ease;pointer-events:none;}
.luxury-mosaic__item img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.06);transform:scale(1.01);transition:transform .85s cubic-bezier(.2,.7,.2,1),filter .85s ease;}
.luxury-mosaic__item:hover img{transform:scale(1.07);filter:saturate(1.1) contrast(1.03);}
.luxury-mosaic__item:hover::after{opacity:.28;}
.luxury-mosaic__item--large{grid-column:span 5;grid-row:span 5;}
.luxury-mosaic__item--wide{grid-column:span 4;grid-row:span 3;}
.luxury-mosaic__item--tall{grid-column:span 3;grid-row:span 5;}
.luxury-mosaic__item--vertical{grid-column:span 3;grid-row:span 4;}
.luxury-mosaic__item--medium{grid-column:span 4;grid-row:span 4;}
.luxury-mosaic__item--small{grid-column:span 2;grid-row:span 3;}
.luxury-visit{background:radial-gradient(circle at 78% 20%,rgba(201,162,39,.18),transparent 35%),linear-gradient(180deg,#0f0f0f,#111);}
.luxury-visit__card{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:54px;border:1px solid rgba(201,162,39,.28);background:linear-gradient(135deg,rgba(38,33,28,.96),rgba(14,14,14,.98));box-shadow:var(--shadow);}
.luxury-visit__card p:not(.eyebrow){margin:0 0 26px;color:var(--muted);font-size:1.05rem;line-height:1.86;}
.luxury-page-v2 .button-link{border:1px solid rgba(201,162,39,.56);}

@media (max-width:1180px){
  .luxury-hero-v2__inner{grid-template-columns:1fr;gap:34px;}
  .luxury-hero-v2__image{min-height:480px;}
  .luxury-hero-v2__image img{min-height:480px;}
  .luxury-pillars__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .luxury-showroom__head{grid-template-columns:1fr;gap:20px;}
  .luxury-mosaic{grid-auto-rows:96px;}
  .luxury-mosaic__item--large{grid-column:span 6;grid-row:span 5;}
  .luxury-mosaic__item--wide{grid-column:span 6;grid-row:span 3;}
  .luxury-mosaic__item--tall,.luxury-mosaic__item--vertical{grid-column:span 6;grid-row:span 4;}
  .luxury-mosaic__item--medium{grid-column:span 6;grid-row:span 4;}
  .luxury-mosaic__item--small{grid-column:span 6;grid-row:span 3;}
}
@media (max-width:860px){
  .luxury-hero-v2{min-height:auto;padding:132px 0 64px;}
  .luxury-intro__grid,.luxury-visit__card{grid-template-columns:1fr;gap:28px;}
  .luxury-stats{grid-template-columns:1fr;}
  .luxury-stats div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);}
  .luxury-stats div:last-child{border-bottom:0;}
  .luxury-mosaic{grid-template-columns:1fr;grid-auto-rows:auto;gap:16px;}
  .luxury-mosaic__item,
  .luxury-mosaic__item--large,
  .luxury-mosaic__item--wide,
  .luxury-mosaic__item--tall,
  .luxury-mosaic__item--vertical,
  .luxury-mosaic__item--medium,
  .luxury-mosaic__item--small{grid-column:auto;grid-row:auto;}
  .luxury-mosaic__item img{aspect-ratio:4/5;}
}
@media (max-width:640px){
  .luxury-hero-v2__copy h1{font-size:3rem;}
  .luxury-hero-v2__image,.luxury-hero-v2__image img{min-height:340px;}
  .luxury-hero-v2__image::before{inset:10px;}
  .luxury-pillars__grid{grid-template-columns:1fr;}
  .luxury-pillar{min-height:260px;padding:26px;}
  .luxury-visit__card{padding:30px 24px;}
  .luxury-hero-v2__actions{align-items:flex-start;flex-direction:column;}
}

@media (max-width:620px){
  .hero-panel--projects .panel-bg{
    background-image:
      linear-gradient(180deg, rgba(17,17,17,.66), rgba(17,17,17,.86)),
      url('/assets/img/portfolio/showroom-arte-portada-mobile.jpg?v=2.0.0');
    background-position:center 30%;
  }
}

/* === Showroom Vesmar Luxury 360 - self-hosted panorama viewer === */
.showroom360{
  position:relative;
  padding-top:84px;
  padding-bottom:82px;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 12%,rgba(201,162,39,.12),transparent 28%),
    linear-gradient(180deg,#111 0%,#151515 100%);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.showroom360__head-wrap{margin-bottom:38px}
.showroom360__head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:64px;
  align-items:end;
}
.showroom360__head h2{
  max-width:820px;
  margin:0;
  font-family:var(--serif);
  font-size:clamp(2.7rem,5.4vw,5.7rem);
  line-height:.91;
  letter-spacing:-.05em;
  font-weight:600;
}
.showroom360__intro p{margin:0;color:var(--muted);font-size:1rem;line-height:1.8}
.showroom360__intro .showroom360__microcopy{margin-top:14px;color:rgba(242,240,234,.72);font-size:.86rem}

.showroom360__stage{
  position:relative;
  width:100vw;
  height:clamp(560px,76vh,860px);
  margin-left:calc(50% - 50vw);
  overflow:hidden;
  isolation:isolate;
  background:#070707;
  border-top:1px solid rgba(201,162,39,.24);
  border-bottom:1px solid rgba(201,162,39,.24);
  box-shadow:0 32px 100px rgba(0,0,0,.38);
}
.showroom360__viewer{
  position:absolute;
  inset:0;
  z-index:1;
  background:#090909;
}
.showroom360__viewer .psv-container,
.showroom360__viewer .psv-canvas-container,
.showroom360__viewer canvas{width:100%!important;height:100%!important}
.showroom360__viewer .psv-loader-container{z-index:8}
.showroom360__viewer .psv-loader-canvas{color:var(--gold-soft)}

.showroom360__topbar{
  position:absolute;
  z-index:20;
  top:0;
  left:0;
  right:0;
  min-height:92px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:22px clamp(18px,3.2vw,54px);
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,0));
}
.showroom360__location{display:grid;gap:2px;text-shadow:0 2px 18px rgba(0,0,0,.75)}
.showroom360__location-kicker{color:var(--gold-soft);font-size:.69rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.showroom360__location strong{color:#fff;font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2rem);font-weight:600}
.showroom360__vr{
  pointer-events:auto;
  appearance:none;
  min-width:82px;
  height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(8,8,8,.58);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  color:#fff;
  font:700 .8rem/1 var(--sans);
  letter-spacing:.08em;
  cursor:pointer;
  transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
}
.showroom360__vr:hover{transform:translateY(-2px);border-color:var(--gold);background:rgba(201,162,39,.16);color:var(--gold-soft)}
.showroom360__vr-icon{position:relative;width:20px;height:11px;border:1.5px solid currentColor;border-radius:3px}
.showroom360__vr-icon::before,.showroom360__vr-icon::after{content:"";position:absolute;top:2px;width:5px;height:5px;border:1px solid currentColor;border-radius:50%}
.showroom360__vr-icon::before{left:2px}.showroom360__vr-icon::after{right:2px}

.showroom360__bottom{
  position:absolute;
  z-index:20;
  left:0;
  right:0;
  bottom:0;
  display:flex;
  justify-content:center;
  padding:44px clamp(12px,3vw,42px) 22px;
  pointer-events:none;
  background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,0));
}
.showroom360__scenes{
  pointer-events:auto;
  width:min(100%,760px);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  padding:7px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  background:rgba(10,10,10,.70);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 14px 48px rgba(0,0,0,.34);
}
.showroom360__scene{
  appearance:none;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:11px 14px;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:rgba(255,255,255,.74);
  font:inherit;
  cursor:pointer;
  transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
}
.showroom360__scene span{color:rgba(218,188,91,.86);font-size:.68rem;letter-spacing:.14em}
.showroom360__scene strong{font-size:.78rem;font-weight:600;white-space:nowrap}
.showroom360__scene:hover{background:rgba(255,255,255,.06);color:#fff}
.showroom360__scene.is-active{border-color:rgba(201,162,39,.48);background:rgba(201,162,39,.15);color:#fff}

.showroom360__status{
  position:absolute;
  inset:0;
  z-index:12;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:110px 24px 130px;
  text-align:center;
  background:
    radial-gradient(circle at 50% 45%,rgba(201,162,39,.12),transparent 34%),
    linear-gradient(180deg,#101010,#080808);
}
.showroom360__status[hidden]{display:none}
.showroom360__status-mark{color:rgba(201,162,39,.24);font-family:var(--serif);font-size:clamp(5rem,18vw,13rem);line-height:.72;letter-spacing:-.08em}
.showroom360__status strong{margin-top:8px;color:#fff;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.6rem);font-weight:600}
.showroom360__status p{max-width:680px;margin:0;color:var(--muted);font-size:.9rem;line-height:1.7}
.showroom360__note{max-width:940px;margin:18px 0 0;color:rgba(183,177,167,.72);font-size:.78rem;line-height:1.6}

.showroom360__stage:fullscreen,
.showroom360__stage.is-vr-fallback{
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  margin:0!important;
  border:0!important;
  background:#000;
}
.showroom360__stage.is-vr-fallback{position:fixed!important;inset:0!important;z-index:100000!important}
html.showroom360-vr-lock,html.showroom360-vr-lock body{overflow:hidden!important}
.showroom360__stage:fullscreen .showroom360__bottom,
.showroom360__stage.is-vr-fallback .showroom360__bottom{padding-bottom:max(24px,env(safe-area-inset-bottom))}
.showroom360__stage:fullscreen .showroom360__topbar,
.showroom360__stage.is-vr-fallback .showroom360__topbar{padding-top:max(22px,env(safe-area-inset-top))}

@media (max-width:900px){
  .showroom360{padding-top:70px;padding-bottom:70px}
  .showroom360__head{grid-template-columns:1fr;gap:22px}
  .showroom360__head-wrap{margin-bottom:28px}
  .showroom360__stage{height:70svh;min-height:520px}
}
@media (max-width:620px){
  .showroom360{padding-top:54px;padding-bottom:58px}
  .showroom360__head h2{font-size:clamp(2.45rem,13vw,4.3rem)}
  .showroom360__stage{height:72svh;min-height:500px}
  .showroom360__topbar{min-height:78px;padding:16px 14px}
  .showroom360__vr{height:44px;min-width:76px;padding:0 13px}
  .showroom360__bottom{padding:36px 8px 10px}
  .showroom360__scenes{gap:4px;padding:5px;border-radius:14px}
  .showroom360__scene{min-height:52px;gap:6px;padding:8px 7px;border-radius:10px;flex-direction:column}
  .showroom360__scene span{font-size:.58rem;line-height:1}
  .showroom360__scene strong{font-size:.66rem;white-space:normal;line-height:1.15;text-align:center}
  .showroom360__status{padding:96px 22px 112px}
}

