
:root{
  --bg:#050505;
  --bg-soft:#090909;
  --panel:#101010;
  --panel-2:#151515;
  --line:rgba(255,255,255,.09);
  --line-strong:rgba(210,157,57,.35);
  --gold:#d09a32;
  --gold-soft:#e1b456;
  --gold-dark:#80611f;
  --text:#f6f1e8;
  --muted:#8d9393;
  --muted-2:#5f6667;
  --shadow:0 24px 80px rgba(0,0,0,.45);
  --max:1110px;
  --radius:0px;
  --font-body:'Helvetica Neue', Helvetica, Arial, sans-serif;
  --font-title:'Helvetica Neue', Helvetica, Arial, sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--text);
  background:
    radial-gradient(circle at 50% -5%, rgba(208,154,50,.08), transparent 25rem),
    linear-gradient(180deg,#030303 0%,#070707 40%,#030303 100%);
  min-height:100vh;
  overflow-x:hidden;
}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
.container{width:min(var(--max), calc(100% - 2rem)); margin-inline:auto}
.section{padding:7.4rem 0}
.section-tight{padding:4.8rem 0}
.section-dark{background:rgba(255,255,255,.012);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.eyebrow{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.52em;
  font-size:.74rem;
  line-height:1.5;
  font-weight:700;
}
.display-title,
.section-title,
.page-title{
  font-family:var(--font-title);
  font-weight:700;
  letter-spacing:-.035em;
  line-height:.98;
  margin:0;
  text-wrap:balance;
}
.display-title{font-size:clamp(3.5rem, 8.5vw, 6.8rem)}
.section-title{font-size:clamp(2.45rem, 5vw, 4.15rem)}
.page-title{font-size:clamp(3rem, 6vw, 5rem)}
.gold{color:var(--gold)}
.lead{color:var(--muted);font-size:1.08rem;line-height:1.9;max-width:48rem}
.muted{color:var(--muted)}
.center{text-align:center}.center .lead{margin-inline:auto}
.divider-line{width:4rem;height:1px;background:var(--line-strong);margin:2.3rem 0}

.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(3,3,3,.84);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.header-shell{
  width:min(1240px, calc(100% - 2rem));
  margin-inline:auto;
  min-height:5.75rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
}
.brand{display:inline-flex;align-items:center;gap:.55rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800;white-space:nowrap}
.brand-mark{font-size:1.15rem;color:var(--gold);line-height:1;transform:translateY(-1px)}
.brand-text{font-family:var(--font-title);font-size:.92rem;color:#fff;letter-spacing:.18em}
.main-nav{display:flex;align-items:center;justify-content:center;flex:1;gap:1.4rem;margin-left:0;text-align:center}
.nav-link{
  color:rgba(255,255,255,.9);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.7rem;
  font-weight:800;
  transition:color .2s ease;
}
.nav-link:hover,.nav-link.is-active{color:var(--gold)}
.header-cta,.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  min-height:2.75rem;
  padding:.85rem 1.9rem;
  border:1px solid var(--gold);
  background:transparent;
  color:var(--gold-soft);
  text-transform:uppercase;
  letter-spacing:.28em;
  font-size:.72rem;
  font-weight:800;
  cursor:pointer;
  transition:transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.header-cta:hover,.btn:hover{background:var(--gold);color:#050505;transform:translateY(-2px)}
.btn-primary{background:var(--gold);color:#050505;border-color:var(--gold)}
.btn-primary:hover{background:var(--gold-soft);border-color:var(--gold-soft)}
.btn-ghost{border-color:var(--line);color:#fff}.btn-ghost:hover{border-color:var(--gold);color:#050505;background:var(--gold)}
.menu-toggle{display:none;background:transparent;border:1px solid var(--line);width:2.7rem;height:2.7rem;align-items:center;justify-content:center;flex-direction:column;gap:.32rem;cursor:pointer}
.menu-toggle span{display:block;width:1.1rem;height:1px;background:#fff;transition:transform .2s ease, opacity .2s ease}
body.menu-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .menu-toggle span:nth-child(2){opacity:0}
body.menu-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-panel{display:none}

.hero{
  min-height:calc(100vh - 4.4rem);
  display:grid;place-items:center;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  isolation:isolate;
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-color:#030303;
  background-image:linear-gradient(90deg,#03030334 0%,rgba(3, 3, 3, 0.26) 42%,rgba(3, 3, 3, 0.226) 100%), var(--hero-image, none);
  background-position:center, center;
  background-size:cover, cover;
  background-repeat:no-repeat, no-repeat;
}
.hero::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(circle at 50% 45%, rgba(208,154,50,.12), transparent 23rem), linear-gradient(180deg,rgba(0,0,0,.42),#040404 95%);
}
.hero-content{width:min(980px, calc(100% - 2rem));text-align:center;padding:5rem 0 6rem}
.hero .eyebrow{margin-bottom:1.8rem}
.hero p{margin:1.55rem auto 2.6rem;color:#a1a1a1;font-size:1.05rem;line-height:1.8;max-width:45rem}
.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.down-cue{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.35);font-size:1.45rem;animation:bounce 2.4s infinite}
@keyframes bounce{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,.5rem)}}

.page-hero{padding:7.7rem 0 4.2rem;text-align:center;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.page-hero .eyebrow{margin-bottom:1.2rem}.page-hero .lead{margin:1.3rem auto 0}

.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.card-grid.two{grid-template-columns:repeat(2,1fr)}
.card-grid.four{grid-template-columns:repeat(4,1fr)}
.feature-card,.service-card,.price-box,.team-card,.product-card,.info-card,.contact-card{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));
  border:1px solid var(--line);
  min-height:10rem;
  padding:2rem;
  position:relative;
  overflow:hidden;
  transition:border-color .22s ease, transform .22s ease, background .22s ease;
}
.feature-card::after,.service-card::after,.team-card::after,.product-card::after{
  content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .22s ease;
}
.feature-card:hover,.service-card:hover,.price-box:hover,.team-card:hover,.product-card:hover,.info-card:hover{border-color:rgba(208,154,50,.33);transform:translateY(-4px);background:linear-gradient(180deg,rgba(208,154,50,.045),rgba(255,255,255,.018))}
.feature-card:hover::after,.service-card:hover::after,.team-card:hover::after,.product-card:hover::after{opacity:1}
.icon-box{width:2.65rem;height:2.65rem;border:1px solid var(--line);display:grid;place-items:center;color:var(--gold);margin-bottom:1.4rem;background:rgba(208,154,50,.055)}
.feature-card h3,.service-card h3,.price-box h3,.team-card h3,.product-card h3,.info-card h3,.contact-card h3{font-size:1rem;margin:0 0 .8rem;color:#fff}
.feature-card p,.service-card p,.price-box p,.team-card p,.product-card p,.info-card p,.contact-card p{margin:0;color:var(--muted);line-height:1.75;font-size:.9rem}
.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3.8rem}
.section-heading-row .link-arrow{color:var(--gold);text-transform:uppercase;letter-spacing:.25em;font-size:.75rem;font-weight:800;white-space:nowrap}.link-arrow:hover{text-decoration:underline;text-underline-offset:.35rem}

.split{display:grid;grid-template-columns:1.05fr .95fr;gap:5rem;align-items:center}
.split-media{position:relative;border:1px solid var(--line);min-height:31rem;overflow:hidden;background:#0c0c0c;box-shadow:var(--shadow)}
.split-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.85) contrast(1.05) brightness(.7)}
.split-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.55))}
.small-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.stat{border-left:1px solid var(--line-strong);padding-left:1rem}.stat strong{display:block;color:var(--gold);font-size:1.7rem;font-family:var(--font-title)}.stat span{display:block;color:var(--muted);font-size:.82rem;margin-top:.25rem}

.service-card{min-height:15rem;display:flex;flex-direction:column}.service-card .tag,.product-card .tag{display:inline-flex;align-self:flex-start;background:rgba(208,154,50,.1);color:var(--gold);letter-spacing:.25em;text-transform:uppercase;font-size:.63rem;padding:.55rem .8rem;margin-bottom:1.25rem}.service-card .price,.product-card .price{font-family:var(--font-title);font-size:1.85rem;color:var(--gold);margin-top:auto;padding-top:1.8rem}.card-arrow{position:absolute;right:1.85rem;bottom:1.65rem;color:rgba(255,255,255,.35);font-size:1.3rem}.service-card:hover .card-arrow{color:var(--gold)}

.testimonial-wrap{text-align:center;max-width:860px;margin:0 auto}.quote-mark{font-family:var(--font-title);font-size:4.5rem;color:rgba(208,154,50,.25);line-height:1}.testimonial-quote{font-family:var(--font-title);font-style:italic;font-weight:700;color:rgba(255,255,255,.84);font-size:clamp(1.4rem,3vw,2.05rem);line-height:1.35;margin:0 auto 2rem;text-wrap:balance}.testimonial-person{font-weight:800;color:#fff}.testimonial-role{color:var(--muted-2);font-size:.85rem;margin-top:.45rem}.testimonial-dots{display:flex;gap:.55rem;justify-content:center;margin-top:2.4rem}.testimonial-dots button{width:.55rem;height:.55rem;border-radius:999px;border:0;background:#3b3b3b;padding:0;cursor:pointer}.testimonial-dots button.is-active{width:1.55rem;background:var(--gold)}

.cta-band{padding:6rem 0;text-align:center;background:linear-gradient(180deg,rgba(208,154,50,.055),rgba(255,255,255,.01));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cta-band .brand-mark{font-size:2.4rem;color:rgba(208,154,50,.38);display:block;margin-bottom:1.4rem}.cta-band p{color:var(--muted);margin:1.4rem auto 2.3rem;max-width:44rem;line-height:1.8}

.value-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:2.2rem}.value-item{text-align:center}.value-item .icon-box{margin-inline:auto}.value-item h3{font-size:.9rem;margin:.85rem 0 .4rem}.value-item p{font-size:.82rem;color:var(--muted);line-height:1.65;margin:0}

.price-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.price-box{padding:2.5rem}.price-box h3{color:var(--gold);letter-spacing:.4em;text-transform:uppercase;font-size:.78rem;margin-bottom:2rem}.price-list{display:grid;gap:1.6rem}.price-line{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center}.price-line span:first-child{color:#fff}.price-line .rule{height:1px;background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.03));align-self:center}.price-line strong{color:var(--gold);font-family:var(--font-title);font-size:1.35rem}

.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.gallery-item{position:relative;overflow:hidden;border:1px solid var(--line);background:#0c0c0c;min-height:240px;cursor:pointer}.gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(3){min-height:270px}.gallery-item img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:brightness(.65) saturate(.85);transition:transform .35s ease, filter .35s ease}.gallery-item:hover img{transform:scale(1.05);filter:brightness(.86) saturate(.95)}.gallery-item span{position:absolute;left:1rem;bottom:1rem;background:rgba(0,0,0,.65);border:1px solid var(--line);padding:.55rem .75rem;font-size:.72rem;color:var(--gold);text-transform:uppercase;letter-spacing:.18em}.gallery-modal{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;padding:2rem}.gallery-modal.is-open{display:flex}.gallery-modal img{max-width:min(100%,1000px);max-height:82vh;border:1px solid var(--line);box-shadow:var(--shadow)}.gallery-modal button{position:absolute;top:1rem;right:1rem;width:3rem;height:3rem;background:#0a0a0a;border:1px solid var(--line);color:#fff;font-size:1.7rem;cursor:pointer}

.team-card{text-align:center}.team-photo{width:7.5rem;height:7.5rem;border-radius:999px;overflow:hidden;margin:0 auto 1.4rem;border:1px solid rgba(208,154,50,.2);background:rgba(208,154,50,.08)}.team-photo img{width:100%;height:100%;object-fit:cover;filter:brightness(.7) saturate(.85)}.team-specialty{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;font-weight:800;margin-bottom:.55rem}.team-years{color:var(--muted-2);font-size:.82rem;margin-bottom:1.7rem}.team-quote{font-style:italic;color:var(--muted-2);font-size:.78rem;margin-top:1.3rem}.team-social{display:inline-grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--line);color:var(--muted);margin-top:1.4rem}

.product-card{min-height:14rem}.product-thumb{width:3.3rem;height:3.3rem;background:rgba(208,154,50,.09);border:1px solid var(--line);display:grid;place-items:center;margin-bottom:1.3rem;color:var(--gold)}.product-thumb::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--gold)}

.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;align-items:start}.contact-list{display:grid;gap:2rem;margin-bottom:2.5rem}.contact-item{display:grid;grid-template-columns:3rem 1fr;gap:1rem}.contact-item .icon-box{margin:0}.contact-item h3{margin:.1rem 0 .55rem;font-size:1rem}.contact-item p{margin:0;color:var(--muted);line-height:1.7}.map-shell{border:1px solid var(--line);height:26rem;position:relative;overflow:hidden;background:#111}.map-shell img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.35)}.map-shell a{position:absolute;top:1rem;left:1rem;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:.75rem 1rem;color:#fff;font-weight:700;font-size:.86rem}.contact-form{border:1px solid var(--line);padding:2rem;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));margin-top:2rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.field{display:grid;gap:.55rem}.field.full{grid-column:1/-1}.field label{color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;font-weight:800}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:#080808;color:#fff;padding:.95rem 1rem;outline:none}.field textarea{min-height:9rem;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(208,154,50,.55)}.form-note{font-size:.82rem;color:var(--muted-2);line-height:1.6;margin-top:1rem}

.faq-list{display:grid;gap:1rem}.faq-item{border:1px solid var(--line);background:rgba(255,255,255,.02);padding:1.4rem 1.6rem}.faq-item h3{margin:0 0 .6rem;font-size:1rem;color:#fff}.faq-item p{margin:0;color:var(--muted);line-height:1.7}

.whatsapp-float{position:fixed;right:1.6rem;bottom:1.35rem;z-index:150;width:3.55rem;height:3.55rem;border-radius:50%;display:grid;place-items:center;background:#20d766;color:#fff;font-size:1.65rem;box-shadow:0 0 28px rgba(32,215,102,.28);border:0}
.scroll-top{position:fixed;left:1.1rem;bottom:1.55rem;z-index:140;width:2.55rem;height:2.55rem;border:1px solid var(--line);background:#111;color:rgba(255,255,255,.65);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s ease}.scroll-top.is-visible{opacity:1;pointer-events:auto}.scroll-top:hover{transform:translateY(-2px);color:var(--gold);border-color:rgba(208,154,50,.45)}

.site-footer{border-top:1px solid var(--line);background:#050505;padding:4.8rem 0 1.8rem}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1.15fr;gap:4rem}.site-footer .brand{margin-bottom:1.4rem}.site-footer p{color:var(--muted);line-height:1.7;font-size:.9rem;margin:0 0 1rem}.site-footer h3{color:var(--gold);text-transform:uppercase;letter-spacing:.35em;font-size:.72rem;margin:0 0 1.4rem}.footer-links{display:grid;gap:.78rem}.footer-links a{color:var(--muted);font-size:.9rem}.footer-links a:hover{color:var(--gold)}.social-row{display:flex;gap:.75rem;margin-top:1.5rem}.social-row a{width:2.25rem;height:2.25rem;display:grid;place-items:center;border:1px solid var(--line);color:var(--muted)}.social-row a:hover{border-color:var(--gold);color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1.8rem;margin-top:3.5rem;color:#3f4747;font-size:.78rem}.footer-bottom span:last-child{text-transform:uppercase;letter-spacing:.18em}

@media (max-width: 1040px){
  .main-nav{gap:1.2rem}.nav-link{font-size:.7rem;letter-spacing:.18em}.header-cta{padding-inline:1.3rem}.card-grid.four{grid-template-columns:repeat(2,1fr)}.value-strip{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 860px){
  .header-shell{min-height:4rem}.main-nav,.header-cta{display:none}.menu-toggle{display:flex}.mobile-panel{display:block;position:fixed;inset:4rem 0 auto 0;background:rgba(4,4,4,.98);border-bottom:1px solid var(--line);transform:translateY(-120%);opacity:0;pointer-events:none;transition:transform .25s ease, opacity .25s ease}.mobile-panel nav{display:grid;padding:1.2rem;width:min(100%,30rem);margin-inline:auto}.mobile-panel .nav-link{padding:1rem;border-bottom:1px solid var(--line);font-size:.78rem}.mobile-reserve{margin-top:1rem;display:flex;justify-content:center;border:1px solid var(--gold);color:var(--gold);padding:1rem;text-transform:uppercase;letter-spacing:.22em;font-size:.74rem;font-weight:800}body.menu-open .mobile-panel{transform:translateY(0);opacity:1;pointer-events:auto}.section{padding:5.5rem 0}.hero{min-height:calc(100svh - 4rem)}.hero-content{padding-top:3rem}.split,.contact-layout{grid-template-columns:1fr;gap:3rem}.card-grid,.card-grid.two,.card-grid.four,.price-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.footer-grid{gap:2.5rem}.section-heading-row{align-items:flex-start;flex-direction:column;margin-bottom:2.4rem}.small-stat-row{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width: 560px){
  .container{width:min(var(--max), calc(100% - 1.15rem))}.display-title{font-size:clamp(3rem,15vw,4.1rem)}.hero-actions{display:grid}.btn{width:100%;padding-inline:1.1rem}.eyebrow{letter-spacing:.36em}.page-hero{padding:5.3rem 0 3rem}.section{padding:4.3rem 0}.feature-card,.service-card,.price-box,.team-card,.product-card,.info-card,.contact-card{padding:1.4rem}.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(3){min-height:240px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:grid}.form-grid{grid-template-columns:1fr}.small-stat-row{grid-template-columns:1fr}.contact-item{grid-template-columns:1fr}.whatsapp-float{right:.9rem;bottom:.9rem;width:3.25rem;height:3.25rem}.scroll-top{left:.8rem;bottom:.95rem}.brand-text{font-size:1rem;letter-spacing:.18em}
}
/* Ajustes finales: Helvetica, navegación compacta y responsive mejorado */
body,
button,
input,
textarea,
select{
  font-family:var(--font-body);
}

.display-title,
.section-title,
.page-title,
.brand-text,
.stat strong,
.service-card .price,
.product-card .price,
.price-line strong,
.testimonial-quote,
.quote-mark{
  font-family:var(--font-title);
}

.display-title,
.section-title,
.page-title{
  font-weight:800;
  letter-spacing:-.055em;
  line-height:1.02;
}

.site-header{
  min-height:5.75rem;
}

.header-shell{
  min-height:5.75rem;
  width:min(1260px, calc(100% - 2rem));
  gap:1.5rem;
}

.brand{
  gap:.5rem;
  letter-spacing:.18em;
}

.brand-mark{font-size:1.15rem;}

.brand-text{
  font-size:.92rem;
  letter-spacing:.18em;
  font-weight:800;
}

.main-nav{display:flex;align-items:center;justify-content:center;flex:1;gap:1.4rem;margin-left:0;text-align:center}

.nav-link{
  color:rgba(255,255,255,.9);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.7rem;
  font-weight:800;
  line-height:1;
  transition:color .2s ease;
}

.header-cta,
.btn{
  min-height:2.45rem;
  padding:.78rem 1.45rem;
  font-size:.64rem;
  letter-spacing:.24em;
}

.mobile-reserve{
  font-size:.68rem;
  letter-spacing:.2em;
}

.footer-links a{
  font-size:.82rem;
  line-height:1.45;
}

.site-footer h3{
  font-size:.66rem;
  letter-spacing:.28em;
}

.card-grid{
  align-items:stretch;
}

.feature-card,
.service-card,
.price-box,
.team-card,
.product-card,
.info-card,
.contact-card{
  padding:1.8rem;
}

@media (max-width: 1180px){
  .main-nav{gap:1rem}
  .nav-link{font-size:.74rem;letter-spacing:.13em}
  .header-cta{padding-inline:1.1rem;letter-spacing:.2em}
  .brand-text{font-size:.96rem;letter-spacing:.18em}
}

@media (max-width: 980px){
  .site-header{position:sticky}
  .header-shell{min-height:4rem}
  .main-nav,
  .header-cta{display:none}
  .menu-toggle{display:flex}
  .mobile-panel{
    display:block;
    position:fixed;
    inset:4rem 0 0 0;
    height:calc(100svh - 4rem);
    overflow-y:auto;
    background:rgba(4,4,4,.985);
    border-bottom:1px solid var(--line);
    transform:translateY(-105%);
    opacity:0;
    pointer-events:none;
    transition:transform .25s ease, opacity .25s ease;
  }
  .mobile-panel nav{
    display:grid;
    gap:.15rem;
    width:min(100%, 28rem);
    margin-inline:auto;
    padding:1.2rem 1rem 2rem;
  }
  .mobile-panel .nav-link{
    padding:.9rem .75rem;
    border-bottom:1px solid var(--line);
    font-size:.72rem;
    letter-spacing:.18em;
  }
  body.menu-open .mobile-panel{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .section{padding:5rem 0}
  .section-tight{padding:3.8rem 0}
  .page-hero{padding:5.6rem 0 3.2rem}
  .hero{min-height:calc(100svh - 4rem)}
  .hero-content{padding:3.8rem 0 4.6rem}
  .split,
  .contact-layout{grid-template-columns:1fr;gap:3rem}
  .card-grid,
  .card-grid.two,
  .price-grid{grid-template-columns:1fr}
  .card-grid.four{grid-template-columns:repeat(2, minmax(0,1fr))}
  .gallery-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  .value-strip{grid-template-columns:repeat(2, minmax(0,1fr));gap:1.6rem}
  .footer-grid{grid-template-columns:repeat(2, minmax(0,1fr));gap:2.4rem}
  .section-heading-row{align-items:flex-start;flex-direction:column;margin-bottom:2.4rem}
}

@media (max-width: 720px){
  .container{width:min(var(--max), calc(100% - 1.25rem))}
  .display-title{font-size:clamp(2.55rem, 13vw, 4rem)}
  .section-title{font-size:clamp(2rem, 9vw, 3rem)}
  .page-title{font-size:clamp(2.35rem, 11vw, 3.8rem)}
  .lead{font-size:.98rem;line-height:1.75}
  .eyebrow{font-size:.64rem;letter-spacing:.32em}
  .hero p{font-size:.95rem;line-height:1.7;margin:1.1rem auto 2rem}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:.85rem;width:min(100%, 21rem);margin-inline:auto}
  .btn{width:100%;letter-spacing:.19em;padding-inline:1rem}
  .card-grid.four,
  .gallery-grid,
  .value-strip{
    grid-template-columns:1fr;
  }
  .feature-card,
  .service-card,
  .price-box,
  .team-card,
  .product-card,
  .info-card,
  .contact-card{
    padding:1.35rem;
  }
  .service-card,
  .product-card{min-height:auto}
  .price-box{padding:1.45rem}
  .price-line{grid-template-columns:1fr auto;gap:.75rem}
  .price-line .rule{display:none}
  .gallery-item,
  .gallery-item:nth-child(1),
  .gallery-item:nth-child(2),
  .gallery-item:nth-child(3){min-height:220px}
  .split-media{min-height:22rem}
  .map-shell{height:20rem}
  .footer-grid{grid-template-columns:1fr;gap:2rem}
  .footer-bottom{display:grid;gap:.65rem}
  .contact-item{grid-template-columns:2.7rem 1fr}
  .form-grid{grid-template-columns:1fr}
  .brand-text{font-size:.92rem;letter-spacing:.16em}
  .brand-mark{font-size:1.15rem}
}

@media (max-width: 420px){
  .header-shell{width:min(100% - .9rem, 1260px)}
  .brand-text{font-size:.82rem;letter-spacing:.13em}
  .menu-toggle{width:2.45rem;height:2.45rem}
  .display-title{font-size:2.35rem}
  .hero-content{padding:3rem 0 4rem}
  .section{padding:3.7rem 0}
  .page-hero{padding:4.6rem 0 2.6rem}
  .mobile-panel .nav-link{font-size:.68rem;padding:.82rem .65rem}
  .mobile-reserve{font-size:.64rem;padding:.85rem}
  .whatsapp-float{right:.8rem;bottom:.85rem;width:3.05rem;height:3.05rem;font-size:1.35rem}
  .scroll-top{left:.7rem;bottom:.85rem;width:2.35rem;height:2.35rem}
}
