/* =========================================================
   IL BOCATTO — HOME PREMIUM STABLE V8
   HERO VIDEO + SENSORY WOW + TESTIMONIALS + PREMIUM LOGO
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600&family=Manrope:wght@300;400;500;600;700&display=swap');

:root{
  --bg:#050505;
  --bg-soft:#0b0b0a;
  --cream:#f4efe8;
  --text:#eee8df;
  --muted:#b9afa3;
  --gold:#b99767;
  --line:rgba(255,255,255,.09);
  --serif:'Cormorant Garamond', serif;
  --sans:'Manrope', sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
}

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html,
body{
  width:100%;
  min-height:100%;
  background:var(--bg);
  color:var(--text);
  font-family:var(--sans);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

a{
  color:inherit;
  text-decoration:none;
}

img{
  display:block;
  max-width:100%;
}

.container{
  width:min(92%,1480px);
  margin:auto;
}

/* ================= HEADER ================= */

.site-header{
  position:fixed;
  top:24px;
  left:0;
  width:100%;
  z-index:999;
}

.header-inner{
  width:min(97%,1760px);
  margin:auto;
  min-height:82px;
  padding:12px 26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 12% 50%,rgba(185,151,103,.08),transparent 24%),
    linear-gradient(
      90deg,
      rgba(8,8,8,.93),
      rgba(34,31,27,.9),
      rgba(8,8,8,.93)
    );
  backdrop-filter:blur(28px);
  -webkit-backdrop-filter:blur(28px);
  box-shadow:
    0 18px 70px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.brand-wrap{
  display:flex;
  align-items:center;
  gap:18px;
}

.brand-symbol{
  position:relative;
  width:64px;
  height:64px;
  min-width:64px;
  max-width:64px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.12),rgba(255,255,255,.025) 60%),
    rgba(255,255,255,.04);
  box-shadow:
    0 0 0 1px rgba(185,151,103,.08),
    0 0 34px rgba(185,151,103,.16),
    inset 0 0 22px rgba(255,255,255,.035);
}

.brand-symbol::before,
.footer-symbol::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:999px;
  border:1px solid rgba(185,151,103,.18);
  pointer-events:none;
}

.brand-symbol::after,
.footer-symbol::after{
  content:"";
  position:absolute;
  inset:-40%;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.16),transparent 62%);
  transform:translateX(-120%) rotate(12deg);
  transition:.9s var(--ease);
}

.brand-wrap:hover .brand-symbol::after,
.footer-logo-wrap:hover .footer-symbol::after{
  transform:translateX(120%) rotate(12deg);
}

.brand-logo-img{
  position:relative;
  z-index:2;
  width:46px !important;
  height:46px !important;
  max-width:46px !important;
  object-fit:contain;
  filter:
    drop-shadow(0 0 10px rgba(185,151,103,.22))
    drop-shadow(0 4px 12px rgba(0,0,0,.35));
}

.brand-info{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.brand-text{
  font-size:.92rem;
  letter-spacing:.34em;
  color:var(--cream);
}

.brand-subtitle{
  font-size:.62rem;
  letter-spacing:.24em;
  color:rgba(244,239,232,.58);
}

.desktop-nav{
  display:flex;
  align-items:center;
  gap:24px;
  flex:1;
  justify-content:center;
  min-width:0;
}

.desktop-nav a{
  position:relative;
  font-size:.68rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(244,239,232,.72);
  transition:.4s var(--ease);
  white-space:nowrap;
}

.desktop-nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-9px;
  width:100%;
  height:1px;
  background:var(--gold);
  transform:scaleX(0);
  transform-origin:right;
  transition:.42s var(--ease);
  opacity:.8;
}

.desktop-nav a:hover{
  color:#fff;
}

.desktop-nav a:hover::after{
  transform:scaleX(1);
  transform-origin:left;
}

.header-btn{
  min-width:132px;
  min-height:56px;
  padding:0 28px;
  border-radius:999px;
  background:var(--cream);
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.76rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  transition:.4s var(--ease);
  box-shadow:0 12px 38px rgba(0,0,0,.22);
}

.header-btn:hover{
  transform:translateY(-2px);
  background:var(--gold);
}

/* ================= HERO VIDEO ================= */

.hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
}

.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.74;
  transform:scale(1.035);
  z-index:0;
}

.hero-image{
  display:none;
}

.hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(circle at 72% 30%,rgba(185,151,103,.16),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.62),rgba(0,0,0,.36)),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.84));
}

.hero-fire-glow{
  position:absolute;
  inset:auto 0 0 0;
  height:48%;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 35% 100%,rgba(185,105,45,.18),transparent 45%),
    radial-gradient(circle at 70% 70%,rgba(199,169,123,.13),transparent 38%);
  mix-blend-mode:screen;
  opacity:.55;
}

.hero-noise{
  position:absolute;
  inset:0;
  z-index:2;
  opacity:.045;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:80px 80px;
}

.hero-content{
  position:relative;
  z-index:3;
  padding-top:110px;
}

.hero-copy{
  max-width:1020px;
}

.hero-kicker,
.wow-kicker{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:32px;
}

.hero-title{
  max-width:960px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.8rem,7.2vw,8rem);
  line-height:.92;
  letter-spacing:-.06em;
}

.hero-description{
  max-width:650px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

.hero-actions{
  margin-top:48px;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
  min-height:58px;
  padding:0 32px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.82rem;
  letter-spacing:.14em;
  transition:.4s var(--ease);
}

.btn-primary{
  background:var(--cream);
  color:#111;
}

.btn-secondary{
  color:var(--cream);
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.03);
  backdrop-filter:blur(10px);
}

.btn-primary:hover,
.btn-secondary:hover{
  transform:translateY(-3px);
}

.hero-scroll{
  position:absolute;
  bottom:38px;
  left:50%;
  z-index:4;
}

.hero-scroll span{
  width:1px;
  height:74px;
  display:block;
  background:linear-gradient(transparent,rgba(255,255,255,.6),transparent);
}

/* ================= STATEMENT ================= */

.statement-section{
  position:relative;
  padding:160px 0;
  background:#050505;
  overflow:hidden;
}

.statement-number{
  position:absolute;
  right:8%;
  top:80px;
  font-family:var(--serif);
  font-size:13rem;
  line-height:1;
  color:rgba(255,255,255,.035);
}

.statement-inner{
  width:min(92%,1320px);
  margin:auto;
}

.section-label{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.32em;
  text-transform:uppercase;
  margin-bottom:36px;
}

.luxury-icon-row{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:44px;
}

.luxury-icon-card{
  min-height:54px;
  padding:0 18px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  color:rgba(244,239,232,.78);
  backdrop-filter:blur(16px);
}

.luxury-icon-card svg{
  width:20px;
  height:20px;
  color:var(--gold);
}

.luxury-icon-card span{
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.statement-title{
  max-width:1100px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,6.8rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.statement-content{
  margin-top:70px;
  display:flex;
  justify-content:flex-start;
}

.statement-description{
  max-width:720px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:2;
}

/* ================= LIGHT QUOTE ================= */

.light-quote-section{
  padding:150px 0;
  background:linear-gradient(180deg,#f1ebe2,#e2d8cb);
  color:#111;
}

.light-quote{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,6.8rem);
  line-height:1;
  letter-spacing:-.055em;
}

/* ================= EXPERIENCES ================= */

.experiences-section{
  padding:170px 0;
  background:#080808;
}

.experiences-heading{
  margin-bottom:80px;
}

.experiences-title{
  max-width:1050px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.4rem);
  line-height:1;
  letter-spacing:-.055em;
}

.experiences-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:26px;
}

.experience-card{
  position:relative;
  min-height:610px;
  overflow:hidden;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.09);
  background:#111;
  box-shadow:0 30px 90px rgba(0,0,0,.22);
}

.experience-image{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transition:1s var(--ease);
}

.experience-card:hover .experience-image{
  transform:scale(1.06);
}

.experience-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.15),transparent 35%),
    linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.86));
}

.experience-glow{
  position:absolute;
  inset:auto 0 0 0;
  height:50%;
  z-index:1;
  opacity:0;
  background:radial-gradient(circle at 50% 100%,rgba(185,151,103,.22),transparent 60%);
  transition:.8s var(--ease);
}

.experience-card:hover .experience-glow{
  opacity:1;
}

.experience-big-number{
  position:absolute;
  top:28px;
  right:34px;
  z-index:1;
  font-family:var(--serif);
  font-size:8rem;
  line-height:1;
  color:rgba(255,255,255,.055);
}

.experience-content{
  position:absolute;
  z-index:2;
  left:42px;
  right:42px;
  bottom:42px;
}

.experience-index{
  margin-bottom:18px;
  color:var(--gold);
  font-size:.8rem;
  letter-spacing:.24em;
}

.experience-content span,
.experience-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
  color:rgba(255,255,255,.76);
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.experience-label svg{
  width:18px;
  height:18px;
  color:var(--gold);
  flex:0 0 auto;
}

.experience-content h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,4vw,4.4rem);
  line-height:1;
}

.experience-content p{
  max-width:520px;
  margin-top:20px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

.experience-link{
  margin-top:22px;
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:var(--cream);
  font-size:.76rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  opacity:.72;
  transition:.4s var(--ease);
}

.experience-link::after{
  content:"→";
  color:var(--gold);
  transform:translateX(0);
  transition:.4s var(--ease);
}

.experience-link:hover{
  opacity:1;
}

.experience-link:hover::after{
  transform:translateX(6px);
}

.experience-office .experience-image{
  background-image:url("https://images.pexels.com/photos/3184418/pexels-photo-3184418.jpeg?auto=compress&cs=tinysrgb&w=1600");
}

.experience-private .experience-image{
  background-image:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1600");
}

.experience-worldcup .experience-image{
  background-image:url("https://images.pexels.com/photos/2747449/pexels-photo-2747449.jpeg?auto=compress&cs=tinysrgb&w=1600");
}

.experience-paella .experience-image{
  background-image:url("https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&w=1600");
}

/* ================= CINEMATIC WOW VIDEO ================= */

.wow-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
}

.wow-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.76;
  transform:scale(1.04);
  z-index:0;
}

.wow-image{
  display:none;
}

.wow-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(circle at 30% 35%,rgba(185,91,35,.13),transparent 38%),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.64),rgba(0,0,0,.36)),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.86));
}

.wow-fire-glow{
  position:absolute;
  inset:auto 0 0 0;
  height:50%;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 25% 100%,rgba(185,105,45,.18),transparent 42%),
    radial-gradient(circle at 60% 70%,rgba(199,169,123,.14),transparent 36%);
  mix-blend-mode:screen;
  opacity:.58;
}

.wow-content{
  position:relative;
  z-index:2;
  max-width:1200px;
}

.wow-title{
  max-width:1150px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,6.7rem);
  line-height:1;
  letter-spacing:-.055em;
}

/* ================= TESTIMONIALS ================= */

.testimonials-section{
  position:relative;
  padding:150px 0;
  background:
    radial-gradient(circle at 78% 20%,rgba(185,151,103,.09),transparent 32%),
    linear-gradient(180deg,#050505,#0b0a09 55%,#050505);
  overflow:hidden;
}

.testimonials-section::before{
  content:"“";
  position:absolute;
  top:8%;
  left:4%;
  font-family:var(--serif);
  font-size:28rem;
  line-height:1;
  color:rgba(255,255,255,.025);
  pointer-events:none;
}

.testimonials-inner{
  position:relative;
  z-index:2;
}

.testimonial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
}

.testimonial-card{
  position:relative;
  min-height:360px;
  padding:58px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:32px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  backdrop-filter:blur(18px);
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
}

.testimonial-card::before{
  content:"";
  position:absolute;
  top:-120px;
  right:-120px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(185,151,103,.15),transparent 70%);
  pointer-events:none;
}

.testimonial-card::after{
  content:"";
  position:absolute;
  left:58px;
  bottom:58px;
  width:72px;
  height:1px;
  background:var(--gold);
  opacity:.7;
}

.testimonial-card p{
  position:relative;
  z-index:2;
  max-width:720px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3rem,4.8vw,5.6rem);
  line-height:.98;
  letter-spacing:-.055em;
  color:var(--cream);
}

.testimonial-card span{
  position:relative;
  z-index:2;
  display:block;
  margin-top:44px;
  color:rgba(244,239,232,.56);
  font-size:.78rem;
  letter-spacing:.24em;
  text-transform:uppercase;
}

/* ================= SIGNATURE ================= */

.signature-section{
  padding:160px 0;
  background:#050505;
}

.signature-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:100px;
  align-items:start;
}

.signature-title{
  max-width:850px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,6.6rem);
  line-height:1;
  letter-spacing:-.055em;
}

.signature-right{
  display:flex;
  flex-direction:column;
}

.signature-item{
  padding:34px 0;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:60px 1fr;
  gap:26px;
}

.signature-item:last-child{
  border-bottom:1px solid var(--line);
}

.signature-item > span{
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  background:rgba(255,255,255,.025);
}

.signature-item > span svg{
  width:22px;
  height:22px;
}

.signature-item h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.2rem,3vw,3.2rem);
  line-height:1;
}

.signature-item p{
  margin-top:16px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

/* ================= STRIP ================= */

.editorial-strip{
  padding:48px 0;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.strip-track{
  display:flex;
  gap:70px;
  white-space:nowrap;
  animation:stripMove 28s linear infinite;
}

.strip-track span{
  font-family:var(--serif);
  font-size:clamp(4rem,7vw,7rem);
  color:rgba(255,255,255,.075);
}

@keyframes stripMove{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

/* ================= PROCESS ================= */

.process-section{
  padding:160px 0;
  background:linear-gradient(180deg,#111,#070707);
}

.process-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:110px;
  align-items:start;
}

.process-title{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,5.8vw,6.3rem);
  line-height:1;
  letter-spacing:-.055em;
}

.process-description{
  max-width:620px;
  margin-top:44px;
  color:var(--muted);
  font-size:1.06rem;
  line-height:2;
}

.process-right{
  border-top:1px solid var(--line);
}

.process-item{
  padding:38px 0;
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:70px 1fr;
  gap:22px;
}

.process-number{
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  background:rgba(255,255,255,.025);
}

.process-number svg{
  width:22px;
  height:22px;
}

.process-item-title{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.3rem,3.2vw,3.4rem);
  line-height:1;
}

.process-item-text{
  margin-top:14px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

/* ================= TRUST ================= */

.trust-section{
  padding:150px 0;
  background:#050505;
}

.trust-title{
  max-width:1000px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.6vw,6.2rem);
  line-height:1;
  letter-spacing:-.055em;
}

.trust-grid{
  margin-top:80px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.trust-card{
  position:relative;
  padding:44px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.018);
  overflow:hidden;
}

.trust-card::before{
  content:"";
  position:absolute;
  top:-80px;
  right:-80px;
  width:180px;
  height:180px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(185,151,103,.12),transparent 70%);
  pointer-events:none;
}

.trust-icon{
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  margin-bottom:26px;
  background:rgba(255,255,255,.025);
}

.trust-icon svg{
  width:22px;
  height:22px;
}

.trust-value{
  position:relative;
  z-index:2;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3rem,4vw,4.5rem);
}

.trust-text{
  position:relative;
  z-index:2;
  margin-top:22px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

/* ================= FINAL CTA ================= */

.final-cta-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.final-cta-bg{
  position:absolute;
  inset:0;
  background:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.final-cta-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.62);
}

.final-cta-content{
  position:relative;
  z-index:2;
  max-width:1150px;
}

.final-cta-title{
  max-width:1100px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,6.7rem);
  line-height:1;
  letter-spacing:-.055em;
}

.final-cta-description{
  max-width:680px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

/* ================= PREMIUM FOOTER ================= */

.site-footer{
  position:relative;
  padding:150px 0 56px;
  background:
    radial-gradient(circle at 18% 10%,rgba(185,151,103,.08),transparent 34%),
    radial-gradient(circle at 85% 20%,rgba(255,255,255,.04),transparent 30%),
    linear-gradient(180deg,#080807,#020202 72%);
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-big-word{
  position:absolute;
  top:22px;
  left:50%;
  transform:translateX(-50%);
  font-family:var(--serif);
  font-size:clamp(9rem,18vw,22rem);
  line-height:1;
  letter-spacing:-.08em;
  color:rgba(255,255,255,.028);
  pointer-events:none;
  white-space:nowrap;
}

.footer-glow{
  position:absolute;
  right:-16%;
  top:-28%;
  width:520px;
  height:520px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(185,151,103,.12),transparent 68%);
  pointer-events:none;
}

.footer-hero{
  position:relative;
  z-index:2;
  padding:0 0 76px;
  border-bottom:1px solid rgba(255,255,255,.08);
  display:grid;
  grid-template-columns:1.2fr auto;
  gap:70px;
  align-items:end;
}

.footer-kicker{
  color:var(--gold);
  font-size:.76rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:28px;
}

.footer-hero h2{
  max-width:920px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.96;
  letter-spacing:-.06em;
}

.footer-hero-text{
  max-width:620px;
  margin-top:30px;
  color:rgba(244,239,232,.62);
  font-size:1.06rem;
  line-height:1.9;
}

.footer-main-btn{
  min-width:250px;
  min-height:64px;
  padding:0 38px;
  border-radius:999px;
  background:var(--cream);
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  box-shadow:0 18px 60px rgba(0,0,0,.28);
  transition:.45s var(--ease);
}

.footer-main-btn:hover{
  transform:translateY(-4px);
  background:var(--gold);
}

.footer-grid{
  position:relative;
  z-index:2;
  padding:84px 0;
  display:grid;
  grid-template-columns:1.45fr 1fr 1fr 1fr;
  gap:76px;
}

.footer-logo-wrap{
  display:flex;
  align-items:center;
  gap:22px;
}

.footer-symbol{
  position:relative;
  width:88px;
  height:88px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.12),rgba(255,255,255,.025) 60%),
    rgba(255,255,255,.025);
  box-shadow:
    0 0 0 1px rgba(185,151,103,.08),
    0 0 48px rgba(185,151,103,.18),
    inset 0 0 28px rgba(255,255,255,.035);
}

.footer-logo-img{
  position:relative;
  z-index:2;
  width:60px !important;
  height:60px !important;
  object-fit:contain;
  filter:
    drop-shadow(0 0 12px rgba(185,151,103,.22))
    drop-shadow(0 4px 14px rgba(0,0,0,.4));
}

.footer-brand-title{
  font-size:1rem;
  letter-spacing:.32em;
}

.footer-brand-sub{
  margin-top:8px;
  color:rgba(255,255,255,.45);
  font-size:.64rem;
  letter-spacing:.24em;
}

.footer-description{
  max-width:430px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:2;
}

.footer-column{
  display:flex;
  flex-direction:column;
  gap:19px;
}

.footer-heading{
  margin-bottom:22px;
  color:var(--gold);
  font-size:.76rem;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.footer-column a,
.footer-column span{
  color:rgba(255,255,255,.62);
  font-size:1.02rem;
  transition:.4s var(--ease);
}

.footer-column a:hover{
  color:white;
  padding-left:8px;
}

.footer-bottom{
  position:relative;
  z-index:2;
  padding-top:36px;
  border-top:1px solid rgba(255,255,255,.07);
  display:flex;
  justify-content:space-between;
  gap:22px;
  color:rgba(255,255,255,.4);
  font-size:.88rem;
}

/* ================= FLOATING WHATSAPP ================= */

.floating-whatsapp{
  position:fixed;
  right:24px;
  bottom:24px;
  width:74px;
  height:74px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;
  color:white;
  background:
    linear-gradient(
      180deg,
      rgba(20,20,20,.95),
      rgba(8,8,8,.92)
    );
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(20px);
  box-shadow:
    0 10px 40px rgba(0,0,0,.45),
    0 0 30px rgba(185,151,103,.18);
  overflow:hidden;
  transition:.45s cubic-bezier(.16,1,.3,1);
}

.floating-whatsapp:hover{
  transform:translateY(-4px) scale(1.04);
  box-shadow:
    0 16px 50px rgba(0,0,0,.5),
    0 0 40px rgba(185,151,103,.28);
}

.floating-whatsapp svg{
  width:34px;
  height:34px;
  position:relative;
  z-index:3;
}

.wa-pulse{
  position:absolute;
  width:100%;
  height:100%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(185,151,103,.24),transparent 70%);
  animation:waPulse 3s infinite;
}

@keyframes waPulse{
  0%{
    transform:scale(1);
    opacity:.8;
  }

  70%{
    transform:scale(1.45);
    opacity:0;
  }

  100%{
    opacity:0;
  }
}

/* ================= ANIMATION STATES ================= */

.reveal,
.motion-reveal{
  opacity:0;
  transform:translateY(40px);
}

/* ================= RESPONSIVE ================= */

@media(max-width:1200px){
  .desktop-nav{
    display:none;
  }

  .experiences-grid,
  .signature-grid,
  .process-grid,
  .trust-grid,
  .testimonial-grid,
  .footer-grid,
  .footer-hero{
    grid-template-columns:1fr;
  }

  .footer-hero{
    align-items:flex-start;
  }
}

@media(max-width:760px){
  .site-header{
    top:12px;
  }

  .header-inner{
    width:calc(100% - 18px);
    min-height:70px;
    padding:10px 16px;
    border-radius:24px;
  }

  .header-btn{
    display:none;
  }

  .brand-symbol{
    width:52px;
    height:52px;
    min-width:52px;
    max-width:52px;
  }

  .brand-logo-img{
    width:38px !important;
    height:38px !important;
  }

  .brand-text{
    font-size:.82rem;
    letter-spacing:.25em;
  }

  .brand-subtitle{
    display:none;
  }

  .hero-title,
  .statement-title,
  .light-quote,
  .experiences-title,
  .wow-title,
  .signature-title,
  .process-title,
  .trust-title,
  .final-cta-title,
  .footer-hero h2{
    font-size:clamp(3.4rem,13vw,5.4rem);
  }

  .hero-section,
  .wow-section,
  .final-cta-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .statement-section,
  .light-quote-section,
  .experiences-section,
  .signature-section,
  .process-section,
  .trust-section,
  .testimonials-section{
    padding:110px 0;
  }

  .site-footer{
    padding:110px 0 44px;
  }

  .hero-description,
  .statement-description,
  .experience-content p,
  .signature-item p,
  .process-description,
  .process-item-text,
  .trust-text,
  .final-cta-description,
  .footer-description,
  .footer-hero-text{
    font-size:1rem;
  }

  .hero-actions{
    flex-direction:column;
  }

  .btn-primary,
  .btn-secondary{
    width:100%;
  }

  .luxury-icon-row{
    gap:10px;
  }

  .luxury-icon-card{
    width:100%;
    justify-content:center;
  }

  .experience-card{
    min-height:560px;
  }

  .experience-content{
    left:28px;
    right:28px;
    bottom:32px;
  }

  .experience-big-number{
    font-size:6rem;
  }

  .testimonial-card{
    min-height:300px;
    padding:38px;
  }

  .testimonial-card::after{
    left:38px;
    bottom:38px;
  }

  .testimonial-card p{
    font-size:clamp(2.8rem,12vw,4.6rem);
  }

  .process-item,
  .signature-item{
    grid-template-columns:1fr;
  }

  .footer-main-btn{
    width:100%;
  }

  .footer-symbol{
    width:78px;
    height:78px;
  }

  .footer-logo-img{
    width:54px !important;
    height:54px !important;
  }

  .floating-whatsapp{
    width:66px;
    height:66px;
    right:18px;
    bottom:18px;
  }

  .floating-whatsapp svg{
    width:30px;
    height:30px;
  }

  .footer-bottom{
    flex-direction:column;
  }
}

/* =========================================================
   GALERÍA EVENTOS PREMIUM — CINEMATIC EDITORIAL
========================================================= */

.gallery-hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  padding:190px 0 130px;
}

.gallery-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.52;
  transform:scale(1.04);
}

.gallery-hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 76% 28%,rgba(185,151,103,.18),transparent 36%),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.58),rgba(0,0,0,.34)),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.88));
}

.gallery-hero-content{
  position:relative;
  z-index:2;
}

.gallery-kicker,
.gallery-small-label{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.gallery-hero-title{
  max-width:1180px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.8rem,7.2vw,8.4rem);
  line-height:.92;
  letter-spacing:-.06em;
}

.gallery-hero-description{
  max-width:760px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.95;
}

.gallery-light-intro-section{
  padding:150px 0;
  background:linear-gradient(180deg,#f4efe8,#e6dacb);
  color:#111;
}

.gallery-light-intro-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:90px;
  align-items:end;
}

.gallery-light-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.gallery-light-copy h2{
  max-width:860px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.gallery-light-text{
  max-width:620px;
  color:#4a4037;
  font-size:1.08rem;
  line-height:2;
}

.gallery-editorial-section{
  padding:170px 0;
  background:#070707;
}

.gallery-editorial-grid{
  display:grid;
  grid-template-columns:1.14fr .86fr;
  gap:34px;
  align-items:center;
}

.gallery-editorial-image{
  position:relative;
  border-radius:34px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  box-shadow:0 40px 120px rgba(0,0,0,.38);
}

.gallery-editorial-image::after,
.gallery-final-image::after,
.gallery-grid-item::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 20%,rgba(185,151,103,.1),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.48));
}

.large-image{
  min-height:860px;
  background-image:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.small-image{
  min-height:430px;
  margin-top:34px;
  background-image:url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-editorial-copy h2{
  max-width:680px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.6rem,5vw,6.1rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.gallery-editorial-copy p{
  max-width:590px;
  margin-top:28px;
  color:var(--muted);
  font-size:1.05rem;
  line-height:2;
}

.gallery-quote-section{
  padding:165px 0;
  background:
    radial-gradient(circle at 15% 30%,rgba(185,151,103,.12),transparent 30%),
    linear-gradient(180deg,#1b1712,#0c0b09);
}

.gallery-quote{
  max-width:1150px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.2rem,6.2vw,7.2rem);
  line-height:.96;
  letter-spacing:-.06em;
  color:var(--cream);
}

.gallery-grid-section{
  padding:18px;
  background:#050505;
}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:350px;
  gap:18px;
}

.gallery-grid-item{
  position:relative;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  border-radius:26px;
}

.gallery-grid-item:nth-child(1){
  background-image:url("https://images.pexels.com/photos/1267320/pexels-photo-1267320.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-grid-item:nth-child(2){
  background-image:url("https://images.pexels.com/photos/5779785/pexels-photo-5779785.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-grid-item:nth-child(3){
  background-image:url("https://images.pexels.com/photos/5379706/pexels-photo-5379706.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-grid-item:nth-child(4){
  background-image:url("https://images.pexels.com/photos/696218/pexels-photo-696218.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-grid-item:nth-child(5){
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.gallery-grid-item.tall{
  grid-row:span 2;
}

.gallery-grid-item.wide{
  grid-column:span 2;
}

.gallery-trust-light-section{
  padding:140px 0;
  background:#f4efe8;
  color:#111;
}

.gallery-trust-light-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.gallery-trust-card{
  min-height:330px;
  padding:44px;
  border:1px solid rgba(17,17,17,.11);
  background:rgba(255,255,255,.36);
  border-radius:30px;
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.gallery-trust-card span{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.24em;
}

.gallery-trust-card h3{
  margin-top:36px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,4vw,4.6rem);
  line-height:1;
  letter-spacing:-.045em;
}

.gallery-trust-card p{
  margin-top:22px;
  color:#52483f;
  font-size:1rem;
  line-height:1.85;
}

.gallery-video-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
}

.gallery-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.58;
  transform:scale(1.04);
}

.gallery-video-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 22% 42%,rgba(185,151,103,.16),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34)),
    linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.86));
}

.gallery-video-content{
  position:relative;
  z-index:2;
}

.gallery-video-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.94;
  letter-spacing:-.06em;
}

.gallery-final-section{
  padding:180px 0;
  background:#050505;
}

.gallery-final-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:74px;
  align-items:center;
}

.gallery-final-copy h2{
  max-width:740px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.4vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.gallery-final-copy p{
  max-width:600px;
  margin-top:28px;
  margin-bottom:42px;
  color:var(--muted);
  font-size:1.05rem;
  line-height:2;
}

.gallery-final-image{
  position:relative;
  min-height:820px;
  border-radius:34px;
  overflow:hidden;
  background-image:url("https://images.pexels.com/photos/5638268/pexels-photo-5638268.jpeg?auto=compress&cs=tinysrgb&w=1800");
  background-size:cover;
  background-position:center;
  box-shadow:0 40px 120px rgba(0,0,0,.38);
}

/* ================= WHATSAPP LUXURY VERSION ================= */

.floating-whatsapp{
  background:#f4efe8 !important;
  color:#111 !important;

  border:1px solid rgba(255,255,255,.12) !important;

  box-shadow:
    0 18px 60px rgba(0,0,0,.45),
    0 0 0 6px rgba(185,151,103,.06),
    0 0 34px rgba(185,151,103,.12) !important;
}

.floating-whatsapp svg{
  color:#111 !important;
  filter:none;
}

.floating-whatsapp:hover{
  transform:translateY(-5px) scale(1.04);

  box-shadow:
    0 22px 70px rgba(0,0,0,.5),
    0 0 0 8px rgba(185,151,103,.08),
    0 0 44px rgba(185,151,103,.18) !important;
}

.wa-pulse{
  background:
    radial-gradient(circle,
    rgba(185,151,103,.18),
    transparent 70%) !important;
}

@media(max-width:1200px){

  .gallery-editorial-grid,
  .gallery-light-intro-grid,
  .gallery-final-grid,
  .gallery-trust-light-grid{
    grid-template-columns:1fr;
  }

  .gallery-grid{
    grid-template-columns:1fr;
  }

  .gallery-grid-item.wide,
  .gallery-grid-item.tall{
    grid-column:span 1;
    grid-row:span 1;
  }

}

@media(max-width:760px){

  .gallery-hero-section,
  .gallery-video-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .gallery-light-intro-section,
  .gallery-editorial-section,
  .gallery-quote-section,
  .gallery-trust-light-section,
  .gallery-final-section{
    padding:110px 0;
  }

  .gallery-hero-title,
  .gallery-quote,
  .gallery-video-title,
  .gallery-editorial-copy h2,
  .gallery-light-copy h2,
  .gallery-final-copy h2{
    font-size:clamp(3.3rem,13vw,5.3rem);
  }

  .gallery-grid{
    grid-auto-rows:420px;
  }

  .large-image,
  .gallery-final-image{
    min-height:520px;
  }

  .small-image{
    min-height:360px;
  }

  .gallery-trust-card{
    min-height:auto;
    padding:34px;
  }

}


/* =========================================================
   CATERING CORPORATIVO CDMX — PREMIUM PAGE
========================================================= */

.corporate-hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  padding:190px 0 130px;
}

.corporate-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.48;
  transform:scale(1.04);
}

.corporate-hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 78% 28%,rgba(185,151,103,.16),transparent 36%),
    linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.62),rgba(0,0,0,.34)),
    linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.88));
}

.corporate-hero-content{
  position:relative;
  z-index:2;
}

.corporate-kicker{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.corporate-hero-title{
  max-width:1180px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.6rem,7vw,8.2rem);
  line-height:.92;
  letter-spacing:-.06em;
}

.corporate-hero-description{
  max-width:780px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.95;
}

.corporate-light-section{
  padding:150px 0;
  background:linear-gradient(180deg,#f4efe8,#e6dacb);
  color:#111;
}

.corporate-light-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:90px;
  align-items:end;
}

.corporate-light-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.corporate-light-copy h2{
  max-width:900px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.corporate-light-text{
  max-width:640px;
}

.corporate-light-text p{
  color:#4a4037;
  font-size:1.08rem;
  line-height:2;
}

.corporate-light-text p + p{
  margin-top:22px;
}

.corporate-services-section{
  padding:170px 0;
  background:#070707;
}

.corporate-section-heading{
  margin-bottom:80px;
}

.corporate-section-title{
  max-width:1050px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.4rem);
  line-height:1;
  letter-spacing:-.055em;
}

.corporate-services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.corporate-service-card{
  min-height:430px;
  padding:44px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:30px;
  background:
    radial-gradient(circle at 85% 10%,rgba(185,151,103,.11),transparent 32%),
    linear-gradient(135deg,rgba(255,255,255,.052),rgba(255,255,255,.015));
  box-shadow:0 28px 90px rgba(0,0,0,.24);
  transition:.45s var(--ease);
}

.corporate-service-card:hover{
  transform:translateY(-8px);
  border-color:rgba(185,151,103,.26);
  box-shadow:0 36px 110px rgba(0,0,0,.34);
}

.corporate-card-number{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.24em;
  margin-bottom:52px;
}

.corporate-service-card h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,3.8vw,4.4rem);
  line-height:1;
  letter-spacing:-.045em;
}

.corporate-service-card p{
  margin-top:24px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

.corporate-service-card span{
  display:block;
  margin-top:34px;
  color:rgba(244,239,232,.52);
  font-size:.74rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.corporate-editorial-section{
  padding:170px 0;
  background:#050505;
}

.corporate-editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}

.corporate-editorial-image{
  min-height:760px;
  border-radius:34px;
  background-size:cover;
  background-position:center;
  box-shadow:0 40px 120px rgba(0,0,0,.38);
  position:relative;
  overflow:hidden;
}

.corporate-editorial-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 20%,rgba(185,151,103,.12),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.48));
}

.corporate-image-office{
  background-image:url("https://images.pexels.com/photos/3184465/pexels-photo-3184465.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.corporate-editorial-copy h2{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.6vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.corporate-editorial-copy p{
  max-width:620px;
  margin-top:30px;
  color:var(--muted);
  font-size:1.06rem;
  line-height:2;
}

.corporate-process-light-section{
  padding:160px 0;
  background:#f4efe8;
  color:#111;
}

.corporate-process-heading{
  max-width:1120px;
  margin-bottom:76px;
}

.corporate-process-heading h2{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.corporate-process-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.corporate-process-card{
  min-height:360px;
  padding:38px;
  border-radius:28px;
  border:1px solid rgba(17,17,17,.1);
  background:rgba(255,255,255,.36);
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.corporate-process-card span{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.24em;
}

.corporate-process-card h3{
  margin-top:42px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.5rem,3.4vw,3.8rem);
  line-height:1;
  letter-spacing:-.045em;
}

.corporate-process-card p{
  margin-top:22px;
  color:#52483f;
  font-size:.98rem;
  line-height:1.85;
}

.corporate-trust-section{
  padding:170px 0;
  background:
    radial-gradient(circle at 80% 20%,rgba(185,151,103,.12),transparent 32%),
    linear-gradient(180deg,#090909,#050505);
}

.corporate-trust-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:90px;
  align-items:start;
}

.corporate-trust-copy h2{
  max-width:850px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.5rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.corporate-trust-list{
  border-top:1px solid var(--line);
}

.corporate-trust-item{
  padding:32px 0;
  border-bottom:1px solid var(--line);
}

.corporate-trust-item strong{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.2vw,3.6rem);
  line-height:1;
  letter-spacing:-.04em;
}

.corporate-trust-item span{
  display:block;
  margin-top:14px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

.corporate-zones-section{
  padding:160px 0;
  background:linear-gradient(180deg,#efe7dc,#f4efe8);
  color:#111;
}

.corporate-zones-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:center;
}

.corporate-zones-copy h2{
  max-width:840px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.5rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.corporate-zones-copy p{
  max-width:650px;
  margin-top:30px;
  color:#4a4037;
  font-size:1.06rem;
  line-height:2;
}

.corporate-zones-list{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.corporate-zones-list span{
  min-height:54px;
  padding:0 22px;
  border-radius:999px;
  border:1px solid rgba(17,17,17,.12);
  background:rgba(255,255,255,.38);
  display:inline-flex;
  align-items:center;
  color:#2a221d;
  font-size:.84rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.corporate-faq-section{
  padding:170px 0;
  background:#070707;
}

.corporate-faq-list{
  border-top:1px solid var(--line);
}

.corporate-faq-item{
  padding:42px 0;
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:70px;
}

.corporate-faq-item h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,3.6vw,4.2rem);
  line-height:1;
  letter-spacing:-.045em;
}

.corporate-faq-item p{
  color:var(--muted);
  font-size:1.02rem;
  line-height:1.9;
}

.corporate-final-cta-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.corporate-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.62),rgba(0,0,0,.36));
}

.corporate-final-content{
  position:relative;
  z-index:2;
}

.corporate-final-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.corporate-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

@media(max-width:1200px){

  .corporate-light-grid,
  .corporate-editorial-grid,
  .corporate-trust-grid,
  .corporate-zones-grid{
    grid-template-columns:1fr;
  }

  .corporate-services-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .corporate-process-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .corporate-faq-item{
    grid-template-columns:1fr;
    gap:22px;
  }

}

@media(max-width:760px){

  .corporate-hero-section,
  .corporate-final-cta-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .corporate-light-section,
  .corporate-services-section,
  .corporate-editorial-section,
  .corporate-process-light-section,
  .corporate-trust-section,
  .corporate-zones-section,
  .corporate-faq-section{
    padding:110px 0;
  }

  .corporate-hero-title,
  .corporate-light-copy h2,
  .corporate-section-title,
  .corporate-editorial-copy h2,
  .corporate-process-heading h2,
  .corporate-trust-copy h2,
  .corporate-zones-copy h2,
  .corporate-final-title{
    font-size:clamp(3.2rem,13vw,5.3rem);
  }

  .corporate-services-grid,
  .corporate-process-grid{
    grid-template-columns:1fr;
  }

  .corporate-service-card,
  .corporate-process-card{
    min-height:auto;
    padding:34px;
  }

  .corporate-editorial-image{
    min-height:520px;
  }

  .corporate-zones-list span{
    width:100%;
    justify-content:center;
  }

}


/* =========================================================
   EXPERIENCIAS PRIVADAS / CHEF EN CASA CDMX — PREMIUM PAGE
========================================================= */

.private-hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  padding:190px 0 130px;
}

.private-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.5;
  transform:scale(1.04);
}

.private-hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 74% 26%,rgba(185,151,103,.18),transparent 35%),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.58),rgba(0,0,0,.34)),
    linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.88));
}

.private-hero-content{
  position:relative;
  z-index:2;
}

.private-kicker{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.private-hero-title{
  max-width:1160px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.6rem,7vw,8.2rem);
  line-height:.92;
  letter-spacing:-.06em;
}

.private-hero-description{
  max-width:760px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.95;
}

.private-light-section{
  padding:155px 0;
  background:linear-gradient(180deg,#f4efe8,#e5d8c8);
  color:#111;
}

.private-light-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:70px;
  align-items:center;
}

.private-light-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.private-light-copy h2{
  max-width:860px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.private-light-image{
  min-height:680px;
  border-radius:36px;
  background:
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.38)),
    url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover no-repeat;
  box-shadow:0 34px 100px rgba(40,28,16,.18);
}

.private-moodboard-section{
  padding:170px 0;
  background:#070707;
}

.private-moodboard-heading{
  margin-bottom:80px;
}

.private-section-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.private-masonry-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:190px;
  gap:18px;
}

.private-pin{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background-size:cover;
  background-position:center;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
  transition:.55s var(--ease);
}

.private-pin:hover{
  transform:translateY(-8px);
  box-shadow:0 42px 120px rgba(0,0,0,.42);
}

.private-pin::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 20%,rgba(185,151,103,.12),transparent 36%),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.68));
}

.private-pin figcaption{
  position:absolute;
  left:26px;
  right:26px;
  bottom:24px;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:18px;
  color:var(--cream);
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.private-pin figcaption span{
  color:var(--gold);
}

.pin-tall{
  grid-row:span 3;
}

.pin-wide{
  grid-column:span 2;
  grid-row:span 2;
}

.pin-medium{
  grid-row:span 2;
}

.pin-small{
  grid-row:span 2;
}

.pin-01{
  background-image:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-02{
  background-image:url("https://images.pexels.com/photos/5779785/pexels-photo-5779785.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-03{
  background-image:url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-04{
  background-image:url("https://images.pexels.com/photos/696218/pexels-photo-696218.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-05{
  background-image:url("https://images.pexels.com/photos/4253312/pexels-photo-4253312.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-06{
  background-image:url("https://images.pexels.com/photos/1267320/pexels-photo-1267320.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.pin-07{
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.private-quote-section{
  padding:165px 0;
  background:
    radial-gradient(circle at 18% 35%,rgba(185,151,103,.13),transparent 32%),
    linear-gradient(180deg,#1c1712,#0b0a08);
}

.private-quote{
  max-width:1150px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.2rem,6.2vw,7.2rem);
  line-height:.96;
  letter-spacing:-.06em;
  color:var(--cream);
}

.private-types-section{
  padding:170px 0;
  background:#050505;
}

.private-types-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.private-type-card{
  position:relative;
  min-height:680px;
  border-radius:34px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  box-shadow:0 34px 110px rgba(0,0,0,.34);
}

.private-type-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 18%,rgba(185,151,103,.14),transparent 35%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.82));
}

.private-type-01{
  background-image:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.private-type-02{
  background-image:url("https://images.pexels.com/photos/3171837/pexels-photo-3171837.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.private-type-03{
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.private-type-content{
  position:absolute;
  left:34px;
  right:34px;
  bottom:36px;
  z-index:2;
}

.private-type-content span{
  display:block;
  margin-bottom:20px;
  color:var(--gold);
  font-size:.76rem;
  letter-spacing:.26em;
  text-transform:uppercase;
}

.private-type-content h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,3.8vw,4.4rem);
  line-height:1;
  letter-spacing:-.045em;
}

.private-process-section{
  padding:160px 0;
  background:#f4efe8;
  color:#111;
}

.private-process-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:90px;
  align-items:start;
}

.private-process-copy h2{
  max-width:840px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.private-process-steps{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.private-process-step{
  min-height:310px;
  padding:36px;
  border-radius:28px;
  border:1px solid rgba(17,17,17,.1);
  background:rgba(255,255,255,.36);
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.private-process-step span{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.24em;
}

.private-process-step h3{
  margin-top:38px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,3.6vw,4rem);
  line-height:1;
  letter-spacing:-.045em;
}

.private-process-step p{
  margin-top:20px;
  color:#52483f;
  font-size:1rem;
  line-height:1.8;
}

.private-video-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
}

.private-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.58;
  transform:scale(1.04);
}

.private-video-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 24% 36%,rgba(185,151,103,.16),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.32)),
    linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.86));
}

.private-video-content{
  position:relative;
  z-index:2;
}

.private-video-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.94;
  letter-spacing:-.06em;
}

.private-faq-light-section{
  padding:160px 0;
  background:linear-gradient(180deg,#efe7dc,#f4efe8);
  color:#111;
}

.private-faq-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:90px;
  align-items:start;
}

.private-faq-heading h2{
  max-width:680px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.private-faq-list{
  border-top:1px solid rgba(17,17,17,.12);
}

.private-faq-item{
  padding:34px 0;
  border-bottom:1px solid rgba(17,17,17,.12);
}

.private-faq-item h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.2vw,3.6rem);
  line-height:1;
  letter-spacing:-.04em;
}

.private-faq-item p{
  max-width:760px;
  margin-top:14px;
  color:#52483f;
  font-size:1rem;
  line-height:1.85;
}

.private-final-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.private-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34));
}

.private-final-content{
  position:relative;
  z-index:2;
}

.private-final-title{
  max-width:1140px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.private-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

/* =========================================================
   FUTURE PAGES BASE — PAELLA / COBERTURA / NOSOTROS
   Estos estilos base evitan que páginas nuevas se vean planas
========================================================= */

.page-hero-section,
.paella-hero-section,
.zones-hero-section,
.about-hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  padding:190px 0 130px;
}

.page-hero-bg,
.paella-hero-video,
.zones-hero-video,
.about-hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.5;
  transform:scale(1.04);
}

.page-hero-overlay,
.paella-hero-overlay,
.zones-hero-overlay,
.about-hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 74% 26%,rgba(185,151,103,.18),transparent 35%),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.58),rgba(0,0,0,.34)),
    linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.88));
}

.page-hero-content,
.paella-hero-content,
.zones-hero-content,
.about-hero-content{
  position:relative;
  z-index:2;
}

.page-kicker,
.paella-kicker,
.zones-kicker,
.about-kicker{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.page-title,
.paella-title,
.zones-title,
.about-title{
  max-width:1160px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.6rem,7vw,8.2rem);
  line-height:.92;
  letter-spacing:-.06em;
}

.page-description,
.paella-description,
.zones-description,
.about-description{
  max-width:760px;
  margin-top:38px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.95;
}

.page-light-section,
.paella-light-section,
.zones-light-section,
.about-light-section{
  padding:155px 0;
  background:linear-gradient(180deg,#f4efe8,#e5d8c8);
  color:#111;
}

.page-dark-section,
.paella-dark-section,
.zones-dark-section,
.about-dark-section{
  padding:170px 0;
  background:#070707;
}

.page-grid-2,
.paella-grid-2,
.zones-grid-2,
.about-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}

.page-grid-3,
.paella-grid-3,
.zones-grid-3,
.about-grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.page-card,
.paella-card,
.zones-card,
.about-card{
  min-height:360px;
  padding:42px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 85% 10%,rgba(185,151,103,.11),transparent 32%),
    linear-gradient(135deg,rgba(255,255,255,.052),rgba(255,255,255,.015));
  box-shadow:0 28px 90px rgba(0,0,0,.24);
}

.page-card h3,
.paella-card h3,
.zones-card h3,
.about-card h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,3.6vw,4rem);
  line-height:1;
  letter-spacing:-.045em;
}

.page-card p,
.paella-card p,
.zones-card p,
.about-card p{
  margin-top:20px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

@media(max-width:1200px){

  .private-light-grid,
  .private-process-grid,
  .private-faq-grid,
  .page-grid-2,
  .paella-grid-2,
  .zones-grid-2,
  .about-grid-2{
    grid-template-columns:1fr;
  }

  .private-types-grid,
  .page-grid-3,
  .paella-grid-3,
  .zones-grid-3,
  .about-grid-3{
    grid-template-columns:1fr;
  }

  .private-masonry-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .pin-wide{
    grid-column:span 2;
  }

}

@media(max-width:760px){

  .private-hero-section,
  .private-video-section,
  .private-final-section,
  .page-hero-section,
  .paella-hero-section,
  .zones-hero-section,
  .about-hero-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .private-light-section,
  .private-moodboard-section,
  .private-quote-section,
  .private-types-section,
  .private-process-section,
  .private-faq-light-section,
  .page-light-section,
  .page-dark-section,
  .paella-light-section,
  .paella-dark-section,
  .zones-light-section,
  .zones-dark-section,
  .about-light-section,
  .about-dark-section{
    padding:110px 0;
  }

  .private-hero-title,
  .private-light-copy h2,
  .private-section-title,
  .private-quote,
  .private-process-copy h2,
  .private-video-title,
  .private-faq-heading h2,
  .private-final-title,
  .page-title,
  .paella-title,
  .zones-title,
  .about-title{
    font-size:clamp(3.2rem,13vw,5.3rem);
  }

  .private-masonry-grid{
    grid-template-columns:1fr;
    grid-auto-rows:420px;
  }

  .pin-wide,
  .pin-tall,
  .pin-medium,
  .pin-small{
    grid-column:span 1;
    grid-row:span 1;
  }

  .private-light-image,
  .private-type-card{
    min-height:520px;
  }

  .private-process-steps{
    grid-template-columns:1fr;
  }

}


/* =========================================================
   PAELLA EXPERIENCE — VISUAL WARM PREMIUM PAGE
========================================================= */

.paella-poster-hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  padding:190px 0 130px;
}

.paella-poster-bg{
  position:absolute;
  inset:0;
  background:
    url("https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
  opacity:.68;
  transform:scale(1.04);
}

.paella-poster-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 76% 34%,rgba(185,91,35,.2),transparent 36%),
    linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.58),rgba(0,0,0,.26)),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.88));
}

.paella-poster-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 360px;
  gap:70px;
  align-items:end;
}

.paella-poster-copy{
  max-width:1100px;
}

.paella-poster-title{
  max-width:1050px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.8rem,7.6vw,8.8rem);
  line-height:.9;
  letter-spacing:-.065em;
}

.paella-poster-description{
  max-width:720px;
  margin-top:36px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.95;
}

.paella-poster-card{
  min-height:380px;
  padding:38px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:32px;
  background:
    radial-gradient(circle at 80% 10%,rgba(185,151,103,.16),transparent 36%),
    linear-gradient(135deg,rgba(20,18,15,.74),rgba(8,8,8,.5));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 32px 100px rgba(0,0,0,.36);
}

.paella-card-label{
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.paella-card-number{
  margin-top:54px;
  font-family:var(--serif);
  font-size:7rem;
  line-height:1;
  color:rgba(244,239,232,.28);
}

.paella-poster-card p{
  margin-top:34px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

.paella-warm-section{
  padding:160px 0;
  background:linear-gradient(180deg,#ead8c1,#f4efe8);
  color:#111;
}

.paella-warm-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}

.paella-warm-image{
  min-height:760px;
  border-radius:38px;
  background:
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.35)),
    url("https://images.pexels.com/photos/4253312/pexels-photo-4253312.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover no-repeat;
  box-shadow:0 34px 100px rgba(75,42,19,.18);
}

.paella-warm-kicker{
  color:#9a6335;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.paella-warm-copy h2{
  max-width:860px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.paella-warm-copy p{
  max-width:620px;
  margin-top:28px;
  color:#4a3427;
  font-size:1.08rem;
  line-height:2;
}

.paella-mood-section{
  padding:170px 0;
  background:#070707;
}

.paella-mood-heading{
  margin-bottom:80px;
}

.paella-section-title{
  max-width:1100px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.paella-mosaic{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:210px;
  gap:18px;
}

.paella-tile{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background-size:cover;
  background-position:center;
  box-shadow:0 30px 90px rgba(0,0,0,.3);
  transition:.55s var(--ease);
}

.paella-tile:hover{
  transform:translateY(-8px);
  box-shadow:0 44px 120px rgba(0,0,0,.44);
}

.paella-tile::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 72% 20%,rgba(185,91,35,.16),transparent 34%),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.7));
}

.paella-tile figcaption{
  position:absolute;
  left:28px;
  bottom:26px;
  z-index:2;
  color:var(--cream);
  font-size:.76rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.paella-tile-01{
  grid-row:span 3;
  background-image:url("https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-tile-02{
  grid-column:span 2;
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/4253312/pexels-photo-4253312.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-tile-03{
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-tile-04{
  grid-column:span 2;
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-tile-05{
  background-image:url("https://images.pexels.com/photos/696218/pexels-photo-696218.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-tile-06{
  background-image:url("https://images.pexels.com/photos/5638268/pexels-photo-5638268.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.paella-terracotta-section{
  padding:160px 0;
  background:
    radial-gradient(circle at 15% 35%,rgba(255,255,255,.08),transparent 28%),
    linear-gradient(180deg,#8b4d2b,#432417);
  color:#f7efe5;
}

.paella-terracotta-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:start;
}

.paella-terracotta-copy span{
  display:block;
  margin-bottom:30px;
  color:#f0c58d;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
}

.paella-terracotta-copy h2{
  max-width:900px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.7rem,5.6vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.paella-terracotta-list{
  border-top:1px solid rgba(255,255,255,.18);
}

.paella-terracotta-list div{
  padding:32px 0;
  border-bottom:1px solid rgba(255,255,255,.18);
}

.paella-terracotta-list strong{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.2vw,3.6rem);
  line-height:1;
}

.paella-terracotta-list p{
  max-width:620px;
  margin-top:14px;
  color:rgba(247,239,229,.7);
  font-size:1rem;
  line-height:1.8;
}

.paella-video-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
}

.paella-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.58;
  transform:scale(1.04);
}

.paella-video-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 24% 36%,rgba(185,91,35,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.32)),
    linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.86));
}

.paella-video-content{
  position:relative;
  z-index:2;
}

.paella-video-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.94;
  letter-spacing:-.06em;
}

.paella-process-section{
  padding:160px 0;
  background:#f4efe8;
  color:#111;
}

.paella-process-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:90px;
  align-items:start;
}

.paella-process-copy h2{
  max-width:840px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.paella-process-steps{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.paella-process-step{
  min-height:310px;
  padding:36px;
  border-radius:28px;
  border:1px solid rgba(17,17,17,.1);
  background:rgba(255,255,255,.36);
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.paella-process-step span{
  color:#9a6335;
  font-size:.78rem;
  letter-spacing:.24em;
}

.paella-process-step h3{
  margin-top:38px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,3.6vw,4rem);
  line-height:1;
  letter-spacing:-.045em;
}

.paella-process-step p{
  margin-top:20px;
  color:#52483f;
  font-size:1rem;
  line-height:1.8;
}

.paella-final-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.paella-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,91,35,.2),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34));
}

.paella-final-content{
  position:relative;
  z-index:2;
}

.paella-final-title{
  max-width:1140px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.paella-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

@media(max-width:1200px){

  .paella-poster-grid,
  .paella-warm-grid,
  .paella-terracotta-grid,
  .paella-process-grid{
    grid-template-columns:1fr;
  }

  .paella-mosaic{
    grid-template-columns:repeat(2,1fr);
  }

  .paella-tile-01,
  .paella-tile-02,
  .paella-tile-03,
  .paella-tile-04,
  .paella-tile-05,
  .paella-tile-06{
    grid-column:auto;
    grid-row:span 2;
  }

}

@media(max-width:760px){

  .paella-poster-hero,
  .paella-video-section,
  .paella-final-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .paella-warm-section,
  .paella-mood-section,
  .paella-terracotta-section,
  .paella-process-section{
    padding:110px 0;
  }

  .paella-poster-title,
  .paella-warm-copy h2,
  .paella-section-title,
  .paella-terracotta-copy h2,
  .paella-video-title,
  .paella-process-copy h2,
  .paella-final-title{
    font-size:clamp(3.2rem,13vw,5.3rem);
  }

  .paella-poster-card{
    min-height:auto;
  }

  .paella-warm-image{
    min-height:520px;
  }

  .paella-mosaic{
    grid-template-columns:1fr;
    grid-auto-rows:420px;
  }

  .paella-tile-01,
  .paella-tile-02,
  .paella-tile-03,
  .paella-tile-04,
  .paella-tile-05,
  .paella-tile-06{
    grid-column:span 1;
    grid-row:span 1;
  }

  .paella-process-steps{
    grid-template-columns:1fr;
  }

}


/* =========================================================
   ABOUT / SOBRE BOCATTO — EDITORIAL MANIFESTO
========================================================= */

.about-manifesto-hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 75% 20%,rgba(185,151,103,.08),transparent 32%),
    #050505;
  padding:190px 0 130px;
}

.about-hero-noise{
  position:absolute;
  inset:0;
  opacity:.08;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:4px 4px;
}

.about-manifesto-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 520px;
  gap:70px;
  align-items:center;
}

.about-manifesto-title{
  max-width:1100px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.8rem,7vw,8.6rem);
  line-height:.9;
  letter-spacing:-.065em;
}

.about-manifesto-image{
  position:relative;
  min-height:720px;
  border-radius:36px;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.7)),
    url("https://images.pexels.com/photos/5779785/pexels-photo-5779785.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover no-repeat;
  box-shadow:0 34px 110px rgba(0,0,0,.36);
}

.about-image-label{
  position:absolute;
  left:32px;
  bottom:28px;
  color:var(--gold);
  font-size:.74rem;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.about-light-statement{
  padding:160px 0;
  background:linear-gradient(180deg,#f4efe8,#e5d8c8);
  color:#111;
}

.about-light-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:start;
}

.about-light-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.about-light-copy h2{
  max-width:860px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.about-light-text p{
  color:#4f4338;
  font-size:1.05rem;
  line-height:2;
  margin-bottom:28px;
}

.about-beliefs-section{
  padding:170px 0;
  background:#070707;
}

.about-beliefs-heading{
  margin-bottom:80px;
}

.about-section-title{
  max-width:1080px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.about-beliefs-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}

.about-belief-card{
  min-height:360px;
  padding:42px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 80% 10%,rgba(185,151,103,.1),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.01));
  box-shadow:0 30px 90px rgba(0,0,0,.26);
}

.about-belief-card span{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.24em;
}

.about-belief-card h3{
  margin-top:36px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3rem,4vw,4.4rem);
  line-height:1;
  letter-spacing:-.05em;
}

.about-belief-card p{
  margin-top:24px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

.about-editorial-split{
  padding:170px 0;
  background:#111;
}

.about-editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
}

.about-editorial-image{
  min-height:780px;
  border-radius:36px;
  overflow:hidden;
  box-shadow:0 34px 110px rgba(0,0,0,.34);
}

.about-editorial-01{
  background:
    linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.6)),
    url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover no-repeat;
}

.about-editorial-copy h2{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,5.8vw,6.4rem);
  line-height:.95;
  letter-spacing:-.055em;
}

.about-editorial-copy p{
  max-width:620px;
  margin-top:30px;
  color:var(--muted);
  font-size:1.05rem;
  line-height:2;
}

.about-not-section{
  padding:170px 0;
  background:
    radial-gradient(circle at 15% 35%,rgba(185,151,103,.08),transparent 30%),
    linear-gradient(180deg,#1d1510,#0b0a08);
}

.about-not-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:90px;
}

.about-warm-kicker{
  color:#c79a62;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.about-not-copy h2{
  max-width:700px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.about-not-list{
  border-top:1px solid rgba(255,255,255,.14);
}

.about-not-item{
  padding:34px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.about-not-item span{
  display:block;
  margin-bottom:14px;
  color:#c79a62;
  font-size:.74rem;
  letter-spacing:.24em;
}

.about-not-item p{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.4vw,3.8rem);
  line-height:1.05;
  letter-spacing:-.045em;
}

.about-curated-section{
  padding:170px 0;
  background:#070707;
}

.about-curated-heading{
  margin-bottom:80px;
}

.about-curated-mosaic{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:220px;
  gap:18px;
}

.about-curated-tile{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background-size:cover;
  background-position:center;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
}

.about-curated-tile::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.72));
}

.about-curated-tile figcaption{
  position:absolute;
  left:28px;
  bottom:24px;
  z-index:2;
  color:var(--cream);
  font-size:.74rem;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.about-tile-01{
  grid-row:span 3;
  background-image:url("https://images.pexels.com/photos/5779785/pexels-photo-5779785.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.about-tile-02{
  grid-column:span 2;
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.about-tile-03{
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.about-tile-04{
  grid-column:span 2;
  grid-row:span 2;
  background-image:url("https://images.pexels.com/photos/5638732/pexels-photo-5638732.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.about-tile-05{
  background-image:url("https://images.pexels.com/photos/5638268/pexels-photo-5638268.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.about-principles-section{
  padding:160px 0;
  background:#f4efe8;
  color:#111;
}

.about-principles-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:90px;
}

.about-principles-copy h2{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.about-principles-list{
  border-top:1px solid rgba(17,17,17,.1);
}

.about-principle{
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding:32px 0;
  border-bottom:1px solid rgba(17,17,17,.1);
}

.about-principle strong{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2rem,3vw,3.2rem);
  line-height:1;
}

.about-principle span{
  max-width:360px;
  color:#53493f;
  font-size:1rem;
  line-height:1.8;
}

.about-big-quote-section{
  padding:190px 0;
  background:#050505;
}

.about-big-quote{
  max-width:1240px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.4rem,6.6vw,7.8rem);
  line-height:.94;
  letter-spacing:-.06em;
}

.about-final-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/5779785/pexels-photo-5779785.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.about-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34));
}

.about-final-content{
  position:relative;
  z-index:2;
}

.about-final-title{
  max-width:1140px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.about-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

@media(max-width:1200px){

  .about-manifesto-grid,
  .about-light-grid,
  .about-editorial-grid,
  .about-not-grid,
  .about-principles-grid{
    grid-template-columns:1fr;
  }

  .about-curated-mosaic{
    grid-template-columns:repeat(2,1fr);
  }

  .about-beliefs-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:760px){

  .about-manifesto-hero,
  .about-final-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .about-light-statement,
  .about-beliefs-section,
  .about-editorial-split,
  .about-not-section,
  .about-curated-section,
  .about-principles-section,
  .about-big-quote-section{
    padding:110px 0;
  }

  .about-manifesto-title,
  .about-light-copy h2,
  .about-section-title,
  .about-editorial-copy h2,
  .about-not-copy h2,
  .about-principles-copy h2,
  .about-big-quote,
  .about-final-title{
    font-size:clamp(3.2rem,13vw,5.4rem);
  }

  .about-manifesto-image,
  .about-editorial-image{
    min-height:520px;
  }

  .about-curated-mosaic{
    grid-template-columns:1fr;
    grid-auto-rows:420px;
  }

  .about-tile-01,
  .about-tile-02,
  .about-tile-03,
  .about-tile-04,
  .about-tile-05{
    grid-column:span 1;
    grid-row:span 1;
  }

  .about-principle{
    flex-direction:column;
  }

}


/* =========================================================
   COBERTURA CDMX / ZMVM — EDITORIAL MAP PAGE
========================================================= */

.zones-map-hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:190px 0 130px;
  background:
    radial-gradient(circle at 78% 24%,rgba(185,151,103,.15),transparent 34%),
    linear-gradient(180deg,#f4efe8,#e5d8c8);
  color:#111;
}

.zones-map-hero-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:80px;
  align-items:center;
}

.zones-map-copy{
  position:relative;
  z-index:2;
}

.zones-kicker{
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.zones-map-hero .zones-kicker,
.zones-warm-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.zones-map-title{
  max-width:900px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.4rem,6.6vw,7.8rem);
  line-height:.92;
  letter-spacing:-.065em;
}

.zones-map-description{
  max-width:650px;
  margin-top:34px;
  color:#4f4338;
  font-size:1.08rem;
  line-height:1.95;
}

.zones-dark-btn{
  color:#111;
  border-color:rgba(17,17,17,.14);
  background:rgba(255,255,255,.28);
}

.zones-map-card{
  position:relative;
  min-height:720px;
  border-radius:42px;
  overflow:hidden;
  border:1px solid rgba(17,17,17,.1);
  background:
    radial-gradient(circle at 50% 45%,rgba(255,255,255,.48),rgba(255,255,255,.1) 52%,transparent 72%),
    linear-gradient(135deg,rgba(255,255,255,.38),rgba(255,255,255,.12));
  box-shadow:0 34px 100px rgba(48,31,16,.14);
}

.zones-map-art{
  position:absolute;
  inset:38px;
  border-radius:34px;
  background:
    linear-gradient(rgba(17,17,17,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,17,17,.035) 1px,transparent 1px);
  background-size:58px 58px;
  overflow:hidden;
}

.zones-map-art::before{
  content:"";
  position:absolute;
  inset:8% 10%;
  border:1px solid rgba(142,112,71,.2);
  border-radius:48% 52% 44% 56% / 58% 43% 57% 42%;
  transform:rotate(-8deg);
}

.zones-map-art::after{
  content:"";
  position:absolute;
  inset:17% 20%;
  border:1px solid rgba(142,112,71,.14);
  border-radius:56% 44% 58% 42% / 45% 58% 42% 55%;
  transform:rotate(12deg);
}

.map-line{
  position:absolute;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(142,112,71,.34),transparent);
  transform-origin:left center;
  z-index:1;
}

.line-01{
  width:62%;
  top:34%;
  left:18%;
  transform:rotate(18deg);
}

.line-02{
  width:54%;
  top:54%;
  left:24%;
  transform:rotate(-22deg);
}

.line-03{
  width:48%;
  top:68%;
  left:30%;
  transform:rotate(9deg);
}

.line-04{
  width:44%;
  top:42%;
  left:36%;
  transform:rotate(78deg);
}

.map-pin{
  position:absolute;
  z-index:3;
  min-height:44px;
  padding:0 16px 0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.62);
  color:#211915;
  border:1px solid rgba(17,17,17,.1);
  box-shadow:0 18px 48px rgba(40,28,16,.1);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  white-space:nowrap;
}

.map-pin span{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#8e7047;
  box-shadow:0 0 0 7px rgba(142,112,71,.13);
}

.pin-polanco{ top:18%; left:34%; }
.pin-santafe{ top:42%; left:12%; }
.pin-reforma{ top:38%; left:48%; }
.pin-roma{ top:54%; left:48%; }
.pin-condesa{ top:58%; left:31%; }
.pin-lomas{ top:26%; left:19%; }
.pin-delvalle{ top:72%; left:42%; }
.pin-cuajimalpa{ top:55%; left:8%; }

.map-center-mark{
  position:absolute;
  z-index:2;
  top:46%;
  left:50%;
  transform:translate(-50%,-50%);
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(5rem,9vw,9rem);
  line-height:1;
  letter-spacing:-.08em;
  color:rgba(17,17,17,.06);
  pointer-events:none;
}

.zones-chips-section{
  padding:150px 0;
  background:#050505;
}

.zones-chips-heading{
  max-width:1050px;
  margin-bottom:70px;
}

.zones-chips-heading h2{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.zones-chips-grid{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.zones-chips-grid span{
  min-height:58px;
  padding:0 24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(circle at 50% 0,rgba(185,151,103,.08),transparent 50%),
    rgba(255,255,255,.025);
  color:rgba(244,239,232,.78);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.78rem;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.zones-editorial-section{
  padding:170px 0;
  background:#070707;
}

.zones-editorial-heading{
  margin-bottom:80px;
}

.zones-section-title{
  max-width:1120px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.zones-editorial-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}

.zone-editorial-card{
  position:relative;
  min-height:600px;
  border-radius:34px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  box-shadow:0 34px 110px rgba(0,0,0,.34);
}

.zone-editorial-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 20%,rgba(185,151,103,.13),transparent 36%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.82));
}

.zone-polanco{
  background-image:url("https://images.pexels.com/photos/3184465/pexels-photo-3184465.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.zone-santafe{
  background-image:url("https://images.pexels.com/photos/3184418/pexels-photo-3184418.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.zone-roma{
  background-image:url("https://images.pexels.com/photos/4552131/pexels-photo-4552131.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.zone-reforma{
  background-image:url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=1800");
}

.zone-card-content{
  position:absolute;
  z-index:2;
  left:38px;
  right:38px;
  bottom:38px;
}

.zone-card-content span{
  display:block;
  color:var(--gold);
  font-size:.76rem;
  letter-spacing:.26em;
  text-transform:uppercase;
  margin-bottom:20px;
}

.zone-card-content h3{
  max-width:620px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3rem,4.2vw,4.8rem);
  line-height:1;
  letter-spacing:-.05em;
}

.zone-card-content p{
  max-width:520px;
  margin-top:22px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
}

.zones-logistics-section{
  padding:160px 0;
  background:#f4efe8;
  color:#111;
}

.zones-logistics-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:90px;
  align-items:start;
}

.zones-logistics-copy h2{
  max-width:820px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,7rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.zones-logistics-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.zones-logistics-item{
  min-height:300px;
  padding:36px;
  border-radius:28px;
  border:1px solid rgba(17,17,17,.1);
  background:rgba(255,255,255,.36);
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.zones-logistics-item span{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.24em;
}

.zones-logistics-item h3{
  margin-top:36px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.4vw,3.8rem);
  line-height:1;
  letter-spacing:-.045em;
}

.zones-logistics-item p{
  margin-top:20px;
  color:#52483f;
  font-size:1rem;
  line-height:1.8;
}

.zones-wide-visual{
  position:relative;
  min-height:90vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.84)),
    url("https://images.pexels.com/photos/3184291/pexels-photo-3184291.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.zones-wide-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.52),rgba(0,0,0,.32));
}

.zones-wide-content{
  position:relative;
  z-index:2;
}

.zones-wide-title{
  max-width:1150px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.zones-seo-section{
  padding:160px 0;
  background:linear-gradient(180deg,#eadfce,#f4efe8);
  color:#111;
}

.zones-seo-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:start;
}

.zones-seo-copy h2{
  max-width:860px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.5rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.zones-seo-text p{
  color:#4f4338;
  font-size:1.06rem;
  line-height:2;
  margin-bottom:26px;
}

.zones-faq-section{
  padding:170px 0;
  background:#070707;
}

.zones-faq-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:90px;
  align-items:start;
}

.zones-faq-heading h2{
  max-width:720px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.zones-faq-list{
  border-top:1px solid var(--line);
}

.zones-faq-item{
  padding:34px 0;
  border-bottom:1px solid var(--line);
}

.zones-faq-item h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.4rem,3.2vw,3.6rem);
  line-height:1;
  letter-spacing:-.04em;
}

.zones-faq-item p{
  max-width:760px;
  margin-top:16px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

.zones-final-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.zones-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34));
}

.zones-final-content{
  position:relative;
  z-index:2;
}

.zones-final-title{
  max-width:1150px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.zones-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

@media(max-width:1200px){

  .zones-map-hero-grid,
  .zones-logistics-grid,
  .zones-seo-grid,
  .zones-faq-grid{
    grid-template-columns:1fr;
  }

  .zones-editorial-grid,
  .zones-logistics-list{
    grid-template-columns:1fr;
  }

  .zones-map-card{
    min-height:640px;
  }

}

@media(max-width:760px){

  .zones-map-hero,
  .zones-wide-visual,
  .zones-final-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .zones-chips-section,
  .zones-editorial-section,
  .zones-logistics-section,
  .zones-seo-section,
  .zones-faq-section{
    padding:110px 0;
  }

  .zones-map-title,
  .zones-chips-heading h2,
  .zones-section-title,
  .zones-logistics-copy h2,
  .zones-wide-title,
  .zones-seo-copy h2,
  .zones-faq-heading h2,
  .zones-final-title{
    font-size:clamp(3.2rem,13vw,5.4rem);
  }

  .zones-map-card{
    min-height:720px;
    border-radius:30px;
  }

  .zones-map-art{
    inset:22px;
  }

  .map-pin{
    font-size:.62rem;
    min-height:38px;
    padding:0 12px 0 10px;
    letter-spacing:.12em;
  }

  .pin-polanco{ top:16%; left:28%; }
  .pin-santafe{ top:43%; left:6%; }
  .pin-reforma{ top:34%; left:42%; }
  .pin-roma{ top:52%; left:42%; }
  .pin-condesa{ top:60%; left:20%; }
  .pin-lomas{ top:25%; left:9%; }
  .pin-delvalle{ top:73%; left:34%; }
  .pin-cuajimalpa{ top:50%; left:4%; }

  .zones-chips-grid span{
    width:100%;
  }

  .zone-editorial-card{
    min-height:520px;
  }

  .zones-logistics-item{
    min-height:auto;
  }

}


/* =========================================================
   FAQ PREMIUM — HOSPITALITY SUPPORT EXPERIENCE
========================================================= */

.faq-hero-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:190px 0 130px;
  background:
    radial-gradient(circle at 78% 24%,rgba(185,151,103,.14),transparent 34%),
    linear-gradient(180deg,#f4efe8,#e5d8c8);
  color:#111;
}

.faq-hero-grid{
  display:grid;
  grid-template-columns:1fr 420px;
  gap:80px;
  align-items:end;
}

.faq-kicker{
  color:#8e7047;
  font-size:.78rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:30px;
}

.faq-hero-title{
  max-width:980px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4.4rem,6.8vw,8rem);
  line-height:.92;
  letter-spacing:-.065em;
}

.faq-hero-description{
  max-width:700px;
  margin-top:34px;
  color:#4f4338;
  font-size:1.08rem;
  line-height:1.95;
}

.faq-hero-card{
  padding:38px;
  border-radius:34px;
  border:1px solid rgba(17,17,17,.08);
  background:
    radial-gradient(circle at 80% 10%,rgba(185,151,103,.12),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.52),rgba(255,255,255,.18));
  box-shadow:0 34px 90px rgba(48,31,16,.12);
  backdrop-filter:blur(16px);
}

.faq-hero-card span{
  display:block;
  color:#8e7047;
  font-size:.74rem;
  letter-spacing:.26em;
  text-transform:uppercase;
}

.faq-hero-card p{
  margin-top:26px;
  color:#43372e;
  font-size:1rem;
  line-height:1.9;
}

.faq-hero-card a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 22px;
  margin-top:30px;
  border-radius:999px;
  background:#111;
  color:#f4efe8;
  font-size:.74rem;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.faq-chips-section{
  padding:80px 0;
  background:#050505;
}

.faq-chips-grid{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.faq-chips-grid span{
  min-height:56px;
  padding:0 22px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:rgba(244,239,232,.76);
  font-size:.74rem;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.faq-main-section{
  padding:170px 0;
  background:#070707;
}

.faq-section-heading{
  margin-bottom:90px;
}

.faq-section-title{
  max-width:1100px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.faq-editorial-list{
  border-top:1px solid rgba(255,255,255,.1);
}

.faq-editorial-item{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:80px;
  padding:42px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.faq-question span{
  display:block;
  margin-bottom:18px;
  color:var(--gold);
  font-size:.74rem;
  letter-spacing:.24em;
}

.faq-question h3{
  max-width:620px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,4vw,4.6rem);
  line-height:1;
  letter-spacing:-.045em;
}

.faq-answer p{
  max-width:720px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.95;
}

.faq-concierge-section{
  padding:170px 0;
  background:
    radial-gradient(circle at 20% 30%,rgba(185,151,103,.08),transparent 30%),
    linear-gradient(180deg,#17120e,#080808);
}

.faq-concierge-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:90px;
  align-items:center;
}

.faq-concierge-copy h2{
  max-width:920px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.8rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.faq-concierge-panel{
  padding:54px;
  border-radius:38px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 80% 10%,rgba(185,151,103,.1),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  box-shadow:0 30px 90px rgba(0,0,0,.3);
}

.faq-concierge-panel p{
  color:var(--muted);
  font-size:1.08rem;
  line-height:2;
}

.faq-cards-light-section{
  padding:160px 0;
  background:linear-gradient(180deg,#f4efe8,#eadfce);
  color:#111;
}

.faq-cards-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.faq-card-light{
  min-height:360px;
  padding:38px;
  border-radius:30px;
  border:1px solid rgba(17,17,17,.08);
  background:rgba(255,255,255,.36);
  box-shadow:0 22px 70px rgba(40,28,16,.08);
}

.faq-card-light span{
  display:block;
  color:#8e7047;
  font-size:.74rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.faq-card-light h3{
  margin-top:32px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.2rem,3vw,3.5rem);
  line-height:1;
  letter-spacing:-.04em;
}

.faq-card-light p{
  margin-top:22px;
  color:#4f4338;
  font-size:1rem;
  line-height:1.85;
}

.faq-secondary-section{
  padding:170px 0;
  background:#070707;
}

.faq-secondary-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:90px;
}

.faq-secondary-heading h2{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,5.8vw,6.4rem);
  line-height:.96;
  letter-spacing:-.055em;
}

.faq-secondary-list{
  border-top:1px solid rgba(255,255,255,.1);
}

.faq-mini-item{
  padding:34px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.faq-mini-item h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2rem,3vw,3.2rem);
  line-height:1;
  letter-spacing:-.04em;
}

.faq-mini-item p{
  max-width:720px;
  margin-top:16px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.9;
}

.faq-final-section{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.82)),
    url("https://images.pexels.com/photos/3184192/pexels-photo-3184192.jpeg?auto=compress&cs=tinysrgb&w=2200") center/cover no-repeat;
}

.faq-final-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 75% 25%,rgba(185,151,103,.18),transparent 34%),
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58),rgba(0,0,0,.34));
}

.faq-final-content{
  position:relative;
  z-index:2;
}

.faq-final-title{
  max-width:1080px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6.2vw,7.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}

.faq-final-description{
  max-width:700px;
  margin-top:34px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.9;
}

@media(max-width:1200px){

  .faq-hero-grid,
  .faq-concierge-grid,
  .faq-secondary-grid{
    grid-template-columns:1fr;
  }

  .faq-cards-grid{
    grid-template-columns:1fr;
  }

  .faq-editorial-item{
    grid-template-columns:1fr;
    gap:30px;
  }

}

@media(max-width:760px){

  .faq-hero-section,
  .faq-final-section{
    min-height:auto;
    padding:170px 0 110px;
  }

  .faq-main-section,
  .faq-concierge-section,
  .faq-cards-light-section,
  .faq-secondary-section{
    padding:110px 0;
  }

  .faq-hero-title,
  .faq-section-title,
  .faq-concierge-copy h2,
  .faq-secondary-heading h2,
  .faq-final-title{
    font-size:clamp(3.2rem,13vw,5.4rem);
  }

  .faq-question h3,
  .faq-card-light h3,
  .faq-mini-item h3{
    font-size:clamp(2.2rem,10vw,3.8rem);
  }

}


/* =========================================================
   GLOBAL NAVIGATION SYSTEM
========================================================= */

.active-link{
  color:var(--gold)!important;
}

.mobile-menu-toggle{
  display:none;
  position:relative;
  width:54px;
  height:54px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
}

.mobile-menu-toggle span{
  width:22px;
  height:1px;
  background:#f4efe8;
  transition:.4s ease;
}

.mobile-toggle-active span:nth-child(1){
  transform:rotate(45deg) translateY(5px);
}

.mobile-toggle-active span:nth-child(2){
  transform:rotate(-45deg) translateY(-5px);
}

.mobile-nav{
  position:fixed;
  inset:0;
  z-index:999;
  background:rgba(5,5,5,.96);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:26px;
  opacity:0;
  pointer-events:none;
  transition:.45s ease;
}

.mobile-nav a{
  color:#f4efe8;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2rem,7vw,3.8rem);
  letter-spacing:-.04em;
}

.mobile-nav-open{
  opacity:1;
  pointer-events:auto;
}

@media(max-width:980px){

  .desktop-nav{
    display:none;
  }

  .mobile-menu-toggle{
    display:flex;
  }

}


/* =========================================================
   MOBILE MENU FIX — FULLSCREEN LAYER + SCROLL LOCK
========================================================= */

body.mobile-menu-is-open{
  overflow:hidden !important;
  height:100vh !important;
  touch-action:none;
}

@media(max-width:980px){

  .site-header{
    z-index:100000 !important;
  }

  .header-inner{
    position:relative;
    z-index:100002 !important;
  }

  .mobile-menu-toggle{
    display:flex !important;
    position:relative !important;
    z-index:100005 !important;
    flex:0 0 54px;
  }

  .mobile-nav{
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:0 !important;
    width:100vw !important;
    height:100vh !important;
    min-height:100dvh !important;
    z-index:100001 !important;

    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;

    gap:20px !important;
    padding:120px 28px 54px !important;

    overflow-y:auto !important;
    overscroll-behavior:contain !important;

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    background:
      radial-gradient(circle at 75% 20%,rgba(185,151,103,.16),transparent 34%),
      linear-gradient(180deg,rgba(5,5,5,.98),rgba(5,5,5,.96)) !important;

    backdrop-filter:blur(24px) !important;
    -webkit-backdrop-filter:blur(24px) !important;

    transform:translateY(-8px);
    transition:
      opacity .35s var(--ease),
      visibility .35s var(--ease),
      transform .35s var(--ease) !important;
  }

  .mobile-nav::before{
    content:"BOCATTO";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    font-family:var(--serif);
    font-size:clamp(6rem,28vw,13rem);
    line-height:1;
    letter-spacing:-.08em;
    color:rgba(255,255,255,.035);
    pointer-events:none;
    white-space:nowrap;
  }

  .mobile-nav.mobile-nav-open{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }

  .mobile-nav a{
    position:relative;
    z-index:2;
    display:block;
    width:100%;
    max-width:520px;
    text-align:center;

    color:#f4efe8 !important;
    font-family:var(--serif) !important;
    font-weight:300 !important;
    font-size:clamp(2rem,9vw,4.2rem) !important;
    line-height:.95 !important;
    letter-spacing:-.045em !important;

    padding:6px 0 !important;
  }

  .mobile-nav a.active-link{
    color:var(--gold) !important;
  }

  .mobile-nav a::after{
    display:none !important;
  }

  .mobile-toggle-active{
    background:#f4efe8 !important;
    border-color:rgba(244,239,232,.45) !important;
  }

  .mobile-toggle-active span{
    background:#111 !important;
  }

  .floating-whatsapp{
    z-index:90000 !important;
  }

  body.mobile-menu-is-open .floating-whatsapp{
    opacity:0 !important;
    pointer-events:none !important;
    transform:scale(.9) !important;
  }

}


/* =========================================================
   MOBILE MENU FINAL FIX — TRUE FULLSCREEN + CENTERED X
========================================================= */

@media(max-width:980px){

  .mobile-nav{
    position:fixed !important;
    inset:0 !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;

    width:100vw !important;
    height:100vh !important;
    min-height:100vh !important;
    min-height:100dvh !important;

    margin:0 !important;
    border-radius:0 !important;

    z-index:2147483000 !important;

    padding:
      calc(env(safe-area-inset-top, 0px) + 110px)
      26px
      calc(env(safe-area-inset-bottom, 0px) + 52px)
      26px !important;

    background:
      radial-gradient(circle at 75% 18%, rgba(185,151,103,.18), transparent 34%),
      radial-gradient(circle at 20% 80%, rgba(255,255,255,.035), transparent 32%),
      linear-gradient(180deg, rgba(5,5,5,.985), rgba(5,5,5,.975)) !important;

    box-shadow:none !important;
  }

  .mobile-nav.mobile-nav-open{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  .mobile-menu-toggle{
    position:relative !important;
    z-index:2147483001 !important;
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .mobile-menu-toggle span{
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    width:23px !important;
    height:1.4px !important;
    margin:0 !important;
    transform-origin:center !important;
  }

  .mobile-menu-toggle span:nth-child(1){
    transform:translate(-50%, -5px) !important;
  }

  .mobile-menu-toggle span:nth-child(2){
    transform:translate(-50%, 5px) !important;
  }

  .mobile-toggle-active span:nth-child(1){
    transform:translate(-50%, -50%) rotate(45deg) !important;
  }

  .mobile-toggle-active span:nth-child(2){
    transform:translate(-50%, -50%) rotate(-45deg) !important;
  }

}


/* =========================================================
   EXPERIENCE IL BOCATTO — GUIDED BUILDER HOME
========================================================= */

.ilb-experience-section{
  position:relative;
  padding:150px 0;
  background:
    radial-gradient(circle at 12% 18%,rgba(185,151,103,.12),transparent 34%),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.04),transparent 30%),
    linear-gradient(180deg,#050505,#0a0908 58%,#050505);
  overflow:hidden;
}

.ilb-experience-orb{
  position:absolute;
  width:420px;
  height:420px;
  border-radius:999px;
  pointer-events:none;
  filter:blur(44px);
  opacity:.28;
  background:radial-gradient(circle,rgba(185,151,103,.22),transparent 68%);
}

.ilb-orb-one{left:-160px;top:6%;}
.ilb-orb-two{right:-180px;bottom:10%;opacity:.18;}

.ilb-experience-container{position:relative;z-index:2;}

.ilb-experience-heading{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:70px;
  align-items:end;
  margin-bottom:58px;
}

.ilb-experience-title{
  max-width:830px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,5.9vw,6.8rem);
  line-height:.96;
  letter-spacing:-.06em;
}

.ilb-experience-intro{
  max-width:560px;
  color:var(--muted);
  font-size:1.06rem;
  line-height:1.9;
}

.ilb-experience-shell{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
  gap:28px;
  align-items:start;
}

.ilb-builder-main,
.ilb-builder-summary{
  border:1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(circle at 78% 8%,rgba(185,151,103,.1),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.052),rgba(255,255,255,.016));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 34px 110px rgba(0,0,0,.3);
}

.ilb-builder-main{
  position:relative;
  min-height:620px;
  border-radius:36px;
  padding:44px;
  overflow:hidden;
}

.ilb-builder-progress{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  max-width:520px;
  margin-bottom:58px;
}

.ilb-progress-line{
  position:absolute;
  left:7px;
  right:7px;
  top:50%;
  height:1px;
  background:rgba(255,255,255,.12);
  transform:translateY(-50%);
}

.ilb-progress-line span{
  display:block;
  width:0%;
  height:100%;
  background:linear-gradient(90deg,var(--gold),rgba(244,239,232,.78));
  transition:.55s var(--ease);
}

.ilb-progress-dot{
  position:relative;
  z-index:2;
  width:13px;
  height:13px;
  border-radius:999px;
  background:#191817;
  border:1px solid rgba(255,255,255,.18);
  transition:.45s var(--ease);
}

.ilb-progress-dot.active{
  background:var(--gold);
  border-color:var(--gold);
  box-shadow:0 0 0 8px rgba(185,151,103,.1);
}

.ilb-step-panel{
  display:none;
  max-width:920px;
}

.ilb-step-panel.active{
  display:block;
  animation:ilbStepIn .48s var(--ease) both;
}

@keyframes ilbStepIn{
  from{opacity:0;transform:translateY(18px) scale(.985);}
  to{opacity:1;transform:translateY(0) scale(1);}
}

.ilb-step-kicker{
  display:block;
  color:var(--gold);
  font-size:.74rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  margin-bottom:24px;
}

.ilb-step-panel h3{
  max-width:820px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.4rem,5.3vw,5.9rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.ilb-step-panel p{
  max-width:620px;
  margin-top:20px;
  color:var(--muted);
  font-size:1.02rem;
  line-height:1.85;
}

.ilb-option-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:42px;
}

.ilb-option-card,
.ilb-chip-option,
.ilb-next-btn,
.ilb-reset-btn{
  font-family:var(--sans);
  cursor:pointer;
}

.ilb-option-card{
  min-height:178px;
  padding:26px;
  text-align:left;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025);
  color:var(--cream);
  transition:.4s var(--ease);
}

.ilb-option-card span{
  display:block;
  margin-bottom:36px;
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.24em;
}

.ilb-option-card strong{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-size:2.5rem;
  line-height:1;
  letter-spacing:-.04em;
}

.ilb-option-card small{
  display:block;
  margin-top:14px;
  color:rgba(244,239,232,.55);
  font-size:.92rem;
  line-height:1.55;
}

.ilb-option-card:hover,
.ilb-option-card.selected,
.ilb-chip-option:hover,
.ilb-chip-option.selected{
  border-color:rgba(185,151,103,.75);
  background:linear-gradient(135deg,rgba(185,151,103,.16),rgba(255,255,255,.03));
  transform:translateY(-3px);
}

.ilb-choice-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:42px;
}

.ilb-chip-option{
  min-height:56px;
  padding:0 24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  color:var(--cream);
  font-size:.86rem;
  transition:.35s var(--ease);
}

.ilb-counter-card{
  max-width:520px;
  min-height:78px;
  margin-top:42px;
  display:grid;
  grid-template-columns:74px 1fr 74px;
  gap:12px;
  align-items:center;
}

.ilb-counter-card button{
  height:64px;
  border-radius:999px;
  border:1px solid rgba(185,151,103,.38);
  background:rgba(185,151,103,.08);
  color:var(--cream);
  font-size:1.6rem;
  cursor:pointer;
}

.ilb-counter-card input,
.ilb-date-input,
.ilb-notes-input{
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.22);
  color:var(--cream);
  outline:none;
  font-family:var(--sans);
}

.ilb-counter-card input{
  height:64px;
  border-radius:999px;
  text-align:center;
  font-size:1.2rem;
}

.ilb-date-input{
  max-width:520px;
  height:68px;
  margin-top:42px;
  padding:0 22px;
  border-radius:20px;
  color-scheme:dark;
}

.ilb-notes-input{
  min-height:130px;
  margin-top:30px;
  padding:22px;
  border-radius:22px;
  resize:vertical;
  line-height:1.6;
}

.ilb-next-btn,
.ilb-final-btn{
  min-height:62px;
  margin-top:34px;
  padding:0 30px;
  border-radius:999px;
  border:1px solid rgba(185,151,103,.42);
  background:var(--cream);
  color:#111;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:.4s var(--ease);
}

.ilb-final-btn:hover,
.ilb-next-btn:hover{
  transform:translateY(-3px);
  background:var(--gold);
}

.ilb-reset-btn{
  display:block;
  margin-top:22px;
  color:rgba(244,239,232,.62);
  border:none;
  background:transparent;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.ilb-builder-summary{
  position:sticky;
  top:132px;
  border-radius:32px;
  padding:34px;
}

.ilb-summary-kicker{
  display:block;
  color:var(--gold);
  font-size:.7rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  margin-bottom:18px;
}

.ilb-builder-summary h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,3.4vw,3.6rem);
  line-height:1;
  letter-spacing:-.045em;
  margin-bottom:24px;
}

.ilb-summary-list{
  border-top:1px solid rgba(255,255,255,.1);
}

.ilb-summary-list div{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.09);
}

.ilb-summary-list span{
  color:rgba(244,239,232,.42);
  font-size:.72rem;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.ilb-summary-list strong{
  color:var(--cream);
  font-size:.94rem;
  text-align:right;
  font-weight:500;
}

.ilb-summary-price{
  margin-top:28px;
  padding:28px;
  border-radius:26px;
  border:1px solid rgba(185,151,103,.25);
  background:linear-gradient(135deg,rgba(185,151,103,.12),rgba(255,255,255,.025));
}

.ilb-summary-price span{
  display:block;
  color:rgba(244,239,232,.5);
  font-size:.72rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  margin-bottom:16px;
}

.ilb-summary-price strong{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.8rem,3.4vw,3.8rem);
  line-height:1;
  letter-spacing:-.045em;
}

.ilb-summary-price p{
  margin-top:14px;
  color:rgba(244,239,232,.48);
  font-size:.86rem;
  line-height:1.65;
}

@media(max-width:1200px){
  .ilb-experience-heading,
  .ilb-experience-shell{
    grid-template-columns:1fr;
  }

  .ilb-builder-summary{
    position:relative;
    top:auto;
  }
}

@media(max-width:760px){
  .ilb-experience-section{
    padding:110px 0;
  }

  .ilb-experience-heading{
    gap:24px;
    margin-bottom:34px;
  }

  .ilb-experience-title,
  .ilb-step-panel h3{
    font-size:clamp(3.1rem,12vw,4.8rem);
  }

  .ilb-builder-main,
  .ilb-builder-summary{
    border-radius:28px;
    padding:24px;
  }

  .ilb-builder-main{
    min-height:auto;
  }

  .ilb-builder-progress{
    max-width:none;
    margin-bottom:38px;
  }

  .ilb-option-grid{
    grid-template-columns:1fr;
  }

  .ilb-option-card{
    min-height:150px;
  }

  .ilb-counter-card{
    grid-template-columns:58px 1fr 58px;
  }

  .ilb-counter-card button,
  .ilb-counter-card input{
    height:58px;
  }

  .ilb-chip-option,
  .ilb-next-btn,
  .ilb-final-btn{
    width:100%;
  }

  .ilb-summary-list div{
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    padding:14px 0;
  }

  .ilb-summary-list strong{
    text-align:left;
  }
}



/* =========================================================
   EXPERIENCE IL BOCATTO — GUIDED HOME BUILDER REAL
========================================================= */

.ilb-experience-section{
  position:relative;
  padding:150px 0 170px;
  background:
    radial-gradient(circle at 18% 12%,rgba(185,151,103,.1),transparent 34%),
    linear-gradient(180deg,#050505,#0d0c0b 52%,#050505);
  overflow:hidden;
}

.ilb-experience-section::before{
  content:"EXPERIENCIA";
  position:absolute;
  right:-4vw;
  top:40px;
  font-family:var(--serif);
  font-size:clamp(8rem,18vw,22rem);
  line-height:1;
  letter-spacing:-.08em;
  color:rgba(255,255,255,.025);
  pointer-events:none;
}

.ilb-experience-wrap{position:relative;z-index:2;}

.ilb-experience-heading{
  max-width:980px;
  margin-bottom:72px;
}

.ilb-experience-heading h2{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(4rem,6vw,6.8rem);
  line-height:.96;
  letter-spacing:-.06em;
}

.ilb-experience-heading p{
  max-width:690px;
  margin-top:28px;
  color:var(--muted);
  font-size:1.06rem;
  line-height:1.9;
}

.ilb-builder-shell{
  display:grid;
  grid-template-columns:minmax(0,1.48fr) minmax(360px,.52fr);
  gap:28px;
  align-items:start;
}

.ilb-builder-left,
.ilb-summary-card{
  border:1px solid rgba(255,255,255,.1);
  border-radius:36px;
  background:
    radial-gradient(circle at 82% 0,rgba(185,151,103,.09),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow:0 34px 110px rgba(0,0,0,.28);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.ilb-builder-left{
  min-height:620px;
  padding:42px;
  display:flex;
  flex-direction:column;
}

.ilb-progress{
  display:flex;
  gap:10px;
  margin-bottom:46px;
}

.ilb-progress-dot{
  width:38px;
  height:2px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  transition:.45s var(--ease);
}

.ilb-progress-dot.is-active{
  background:var(--gold);
  box-shadow:0 0 22px rgba(185,151,103,.28);
}

.ilb-step{
  display:none;
  animation:ilbStepIn .42s var(--ease) both;
}

.ilb-step.is-active{display:block;}

@keyframes ilbStepIn{
  from{opacity:0;transform:translateY(14px) scale(.99);}
  to{opacity:1;transform:translateY(0) scale(1);}
}

.ilb-step-number{
  display:block;
  margin-bottom:26px;
  color:var(--gold);
  font-size:.78rem;
  letter-spacing:.28em;
}

.ilb-step h3{
  max-width:760px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.2rem,5vw,5.6rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.ilb-step p{
  max-width:650px;
  margin-top:18px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.85;
}

.ilb-option-grid{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.ilb-option,
.ilb-pill,
.ilb-counter-btn,
.ilb-next-btn,
.ilb-back-btn,
.ilb-whatsapp-btn{
  appearance:none;
  border:0;
  font-family:var(--sans);
  cursor:pointer;
}

.ilb-option{
  min-height:154px;
  padding:28px;
  border-radius:28px;
  text-align:left;
  color:var(--cream);
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025);
  transition:.4s var(--ease);
}

.ilb-option span{
  display:block;
  font-family:var(--serif);
  font-weight:300;
  font-size:2.2rem;
  letter-spacing:-.04em;
}

.ilb-option small{
  display:block;
  max-width:270px;
  margin-top:14px;
  color:rgba(244,239,232,.58);
  font-size:.92rem;
  line-height:1.55;
}

.ilb-option:hover,
.ilb-option.is-selected,
.ilb-pill:hover,
.ilb-pill.is-selected{
  border-color:rgba(185,151,103,.65);
  background:linear-gradient(135deg,rgba(185,151,103,.14),rgba(255,255,255,.03));
  transform:translateY(-2px);
}

.ilb-pill-row{
  margin-top:42px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.ilb-pill{
  min-height:54px;
  padding:0 22px;
  border-radius:999px;
  color:var(--cream);
  border:1px solid rgba(255,255,255,.11);
  background:rgba(255,255,255,.025);
  font-size:.86rem;
  transition:.4s var(--ease);
}

.ilb-counter{
  margin-top:44px;
  display:grid;
  grid-template-columns:64px minmax(160px,360px) 64px;
  gap:14px;
  align-items:center;
}

.ilb-counter-btn{
  height:64px;
  border-radius:999px;
  color:var(--cream);
  border:1px solid rgba(185,151,103,.45);
  background:rgba(185,151,103,.08);
  font-size:1.4rem;
}

.ilb-counter-input,
.ilb-date-input,
.ilb-notes{
  width:100%;
  min-height:64px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.22);
  color:var(--cream);
  padding:0 24px;
  font-family:var(--sans);
  font-size:1rem;
  outline:none;
}

.ilb-counter-input{text-align:center;}

.ilb-date-input{margin-top:42px;max-width:420px;}

.ilb-notes{
  min-height:132px;
  margin-top:26px;
  padding:22px 24px;
  border-radius:24px;
  resize:vertical;
  line-height:1.65;
}

.ilb-builder-actions{
  margin-top:auto;
  padding-top:42px;
  display:flex;
  justify-content:space-between;
  gap:16px;
}

.ilb-back-btn,
.ilb-next-btn,
.ilb-whatsapp-btn{
  min-height:58px;
  padding:0 28px;
  border-radius:999px;
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:.4s var(--ease);
}

.ilb-back-btn{
  color:var(--cream);
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
}

.ilb-next-btn,
.ilb-whatsapp-btn{
  color:#111;
  background:var(--cream);
}

.ilb-back-btn:hover,
.ilb-next-btn:hover,
.ilb-whatsapp-btn:hover{
  transform:translateY(-3px);
  background:var(--gold);
  color:#111;
}

.ilb-summary-card{
  position:sticky;
  top:132px;
  padding:36px;
}

.ilb-summary-kicker{
  display:block;
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  margin-bottom:22px;
}

.ilb-summary-card h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.5rem,3.5vw,3.6rem);
  line-height:1;
  letter-spacing:-.045em;
  margin-bottom:28px;
}

.ilb-summary-list{
  border-top:1px solid rgba(255,255,255,.09);
}

.ilb-summary-list div{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.ilb-summary-list span{
  color:rgba(244,239,232,.46);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.ilb-summary-list strong{
  color:var(--cream);
  font-weight:400;
  font-size:.95rem;
  text-align:right;
}

.ilb-price-box{
  margin:28px 0 22px;
  padding:28px;
  border-radius:28px;
  border:1px solid rgba(185,151,103,.28);
  background:radial-gradient(circle at 80% 0,rgba(185,151,103,.16),rgba(255,255,255,.025) 58%);
}

.ilb-price-box span{
  color:rgba(244,239,232,.55);
  font-size:.72rem;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.ilb-price-box strong{
  display:block;
  margin-top:16px;
  font-family:var(--serif);
  font-weight:300;
  font-size:3rem;
  line-height:1;
  letter-spacing:-.045em;
}

.ilb-price-box p{
  margin-top:14px;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.65;
}

.ilb-whatsapp-btn{width:100%;}

@media(max-width:1200px){
  .ilb-builder-shell{grid-template-columns:1fr;}
  .ilb-summary-card{position:relative;top:auto;}
}

@media(max-width:760px){
  .ilb-experience-section{padding:110px 0;}
  .ilb-builder-left,.ilb-summary-card{padding:26px;border-radius:28px;}
  .ilb-option-grid{grid-template-columns:1fr;}
  .ilb-option{min-height:128px;}
  .ilb-step h3{font-size:clamp(3rem,12vw,4.8rem);}
  .ilb-counter{grid-template-columns:54px 1fr 54px;}
  .ilb-counter-btn{height:54px;}
  .ilb-builder-actions{flex-direction:column-reverse;}
  .ilb-back-btn,.ilb-next-btn{width:100%;}
  .ilb-summary-list div{align-items:flex-start;flex-direction:column;gap:8px;padding:14px 0;}
  .ilb-summary-list strong{text-align:left;}
}
