:root{
  --green:#062c24;
  --green2:#0c3c32;
  --gold:#bd9651;
  --cream:#f4efe6;
  --paper:#fbfaf7;
  --text:#25302c;
  --muted:#68736d;
  --line:rgba(6,44,36,.14);
  --shadow:0 28px 90px rgba(6,44,36,.14);
  --radius:34px;
  --container:min(1180px,calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);font-family:Inter,system-ui,sans-serif;color:var(--text);line-height:1.6}
img{display:block;width:100%;height:auto}
a{text-decoration:none;color:inherit}

.hero-desktop{background:var(--green)}
.hero-desktop img{width:100%;height:auto}
.hero-mobile{display:none}

.nav{
  position:sticky;top:0;z-index:5;background:rgba(6,44,36,.94);color:white;
  display:flex;justify-content:center;gap:25px;flex-wrap:wrap;padding:14px 24px;
  backdrop-filter:blur(12px);font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700
}
.nav a{opacity:.88}.nav a:hover{opacity:1}.nav .cta{border:1px solid rgba(255,255,255,.34);padding:8px 14px;border-radius:999px}

.container{width:var(--container);margin:0 auto}
.section{padding:112px 0}
.kicker{
  margin:0 0 14px;color:var(--gold);text-transform:uppercase;letter-spacing:.18em;
  font-size:12px;font-weight:800
}
h1,h2,h3{
  font-family:"Cormorant Garamond",Georgia,serif;line-height:.94;font-weight:600;
  letter-spacing:-.045em;margin:0;color:var(--text)
}
h1{font-size:clamp(54px,6.2vw,92px)}
h2{font-size:clamp(46px,5.4vw,82px)}
h3{font-size:clamp(42px,4.4vw,68px)}
p{color:var(--muted);font-size:18px;line-height:1.72}
.rule{display:block;width:68px;height:1px;background:var(--gold);margin:24px 0 34px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.center-rule{margin-left:auto;margin-right:auto}
.section-title{max-width:860px;margin-bottom:54px}
.section-title p{max-width:720px;margin-left:auto;margin-right:auto}

.editorial-grid{
  display:grid;grid-template-columns:.82fr 1.18fr;gap:64px;align-items:center
}
.editorial-copy p{max-width:580px}
.concept{background:var(--cream)}
.concept .editorial-grid{grid-template-columns:.70fr 1.30fr}
.concept .editorial-copy p{max-width:520px}
.photo,.wide-photo,.plan-showcase,.plan-full,.coverage-grid figure{
  margin:0;border-radius:var(--radius);overflow:hidden;background:white;box-shadow:var(--shadow)
}
.framed{padding:0;background:white}

.diffs{background:white}
.diff-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--line);
  border-radius:30px;overflow:hidden;background:var(--line)
}
.diff-grid article{padding:34px 20px;text-align:center;background:var(--paper);min-height:154px}
.diff-grid strong{
  font-family:"Cormorant Garamond",serif;color:var(--green);font-size:38px;
  display:block;line-height:1;margin-bottom:10px;font-weight:600;letter-spacing:-.035em
}
.diff-grid span{font-size:14px;color:var(--muted);line-height:1.45}

.dark{background:var(--green);color:white}
.dark h2{color:white}
.dark p{color:rgba(255,255,255,.74)}
.wide-photo{border-radius:38px}
.mosaic{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}
.mosaic figure{margin:0;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:white}

.plans{background:var(--paper);display:flow-root}
.plans .container{display:flow-root}
.plan-showcase{
  display:grid;grid-template-columns:.34fr 1.66fr;gap:46px;padding:44px;margin:0 0 64px;align-items:center
}
.plan-showcase figure{margin:0}
.plan-copy{padding:28px 4px 28px 20px}
.plan-copy h3{font-size:clamp(44px,4.8vw,72px)}
.plan-copy ul{padding-left:18px;color:var(--muted);font-size:18px;line-height:1.85;margin-top:28px}
.plan-full{padding:0;margin:46px 0}
.coverage-title{text-align:center;margin:96px auto 42px;max-width:800px}
.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}

.location{background:var(--cream)}
.location .editorial-grid{align-items:start}
.location .editorial-copy{padding-top:18px}
.pills{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.pills span{
  padding:12px 15px;border:1px solid var(--line);border-radius:999px;
  background:rgba(255,255,255,.55);color:var(--green);font-size:14px;font-weight:800
}

.builder{background:white}
.builder h2{max-width:840px}
.builder-text{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px;max-width:980px}

.final{
  padding:118px 0;background:linear-gradient(rgba(6,44,36,.92),rgba(6,44,36,.92)),url("assets/fachada-noturna.webp") center/cover;
  color:white;text-align:center
}
.final h2{color:white;max-width:850px;margin:0 auto 22px}
.final p{color:rgba(255,255,255,.75);max-width:780px;margin:0 auto 12px}
.registry{font-size:14px!important;color:rgba(255,255,255,.55)!important}
.actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:34px}
.actions a{min-height:52px;display:inline-flex;align-items:center;padding:0 22px;border-radius:999px;background:var(--gold);font-weight:800}
.actions a:nth-child(2){background:white;color:var(--green)}
.actions a:nth-child(3){background:transparent;border:1px solid rgba(255,255,255,.34)}

@media(min-width:981px){
  .section{padding:104px 0}
  h2{font-size:clamp(54px,3.5vw,68px)}
  .section-title{max-width:1040px;margin-bottom:46px}
  .section-title h2{max-width:100%;line-height:.98}
  .section-title p{max-width:760px}
  .diffs .section-title,.plans .section-title{max-width:1120px}
  .dark .section-title{max-width:1120px;margin-bottom:44px}
  .dark .section-title p{max-width:780px;margin-left:0}
  .plan-showcase{gap:40px;padding:40px;margin-bottom:58px}
  .plan-full{margin:42px 0}
  .coverage-title{max-width:980px;margin:84px auto 40px}
  .builder h2{max-width:1120px}
  .builder .rule{margin-bottom:28px}
  .builder-text{max-width:1060px;gap:54px;margin-top:22px}
  .final{padding:106px 0}
  .final h2{max-width:1060px;line-height:.98}
}

@media(max-width:980px){
  .section{padding:84px 0}
  .concept .editorial-grid,
  .editorial-grid,.plan-showcase,.coverage-grid,.mosaic,.builder-text{grid-template-columns:1fr}
  .diff-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
  .container{width:min(100% - 32px,1180px)}
  .hero-desktop{display:none}
  .hero-mobile{
    position:relative;display:block;min-height:100svh;overflow:hidden;background:var(--green);color:white
  }
.hero-mobile-bg{
    position:absolute;left:0;top:0;z-index:0;width:100%;height:auto;min-height:100%
  }
  .hero-mobile::before{
    content:"";position:absolute;inset:0;z-index:1;
    background:
      linear-gradient(180deg,rgba(5,8,8,.06) 0%,rgba(5,8,8,.10) 34%,rgba(5,8,8,.66) 76%,rgba(5,8,8,.92) 100%),
      radial-gradient(circle at 15% 8%,rgba(4,7,7,.58) 0%,rgba(4,7,7,.28) 25%,rgba(4,7,7,0) 48%)
  }
  .hero-mobile-panel{
    position:relative;z-index:2;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;
    padding:20px 20px 26px
  }
  .hero-mobile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
  .hero-mobile-logo{width:128px;height:auto;filter:drop-shadow(0 5px 12px rgba(0,0,0,.55))}
  .hero-mobile-content{padding-top:48svh}
  .hero-mobile-label{
    margin:0 0 2px;color:white;text-transform:uppercase;letter-spacing:.34em;font-size:12px;line-height:1.1;text-align:center
  }
  .hero-mobile-title{
    margin:0;font-family:"Cormorant Garamond",Georgia,serif;color:white;text-transform:uppercase;
    font-size:clamp(56px,16vw,74px);line-height:.78;letter-spacing:.05em;text-align:center
  }
  .hero-mobile-subtitle{
    margin:12px 0 0;color:#f0d29e;font-size:17px;line-height:1.22;text-align:center
  }
  .hero-mobile-features{
    width:100%;
    display:grid;grid-template-columns:1fr .82fr 1fr 1.32fr;gap:0;border-top:1px solid rgba(189,150,81,.72);padding-top:16px
  }
  .hero-mobile-features span{
    min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;
    padding:0 3px;border-left:1px solid rgba(255,255,255,.24)
  }
  .hero-mobile-features span:first-child{border-left:0}
  .hero-mobile-features strong{
    color:white;text-transform:uppercase;font-size:8.5px;line-height:1.15;letter-spacing:.02em
  }
  .hero-mobile-features small{margin-top:3px;color:white;font-size:8px;line-height:1.15}
  .nav{overflow:auto;justify-content:flex-start;flex-wrap:nowrap}
  .diff-grid{grid-template-columns:1fr}
  .plan-showcase{padding:16px;border-radius:24px}
  .section{padding:70px 0}
  h1{font-size:52px}
  h2{font-size:46px}
}


.closing-strip {
  background: var(--paper);
  padding: 0;
  aspect-ratio:1024/500;
  overflow:hidden;
}

.closing-strip img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 62%;
}
