
:root{
  --dark:#111417;
  --dark2:#1a1f23;
  --gold:#c48b46;
  --gold2:#e0b06c;
  --paper:#f3f4f1;
  --white:#fff;
  --text:#20262a;
  --muted:#667178;
  --line:#d9dddf;
  --radius:24px;
  --shadow:0 24px 60px rgba(17,20,23,.15);
  --container:1180px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:var(--paper);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
body.menu-open,body.lightbox-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit}
button{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin:auto}
.section{padding:110px 0}
.overline{margin:0 0 16px;color:var(--gold);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3,p{overflow-wrap:anywhere}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em}
h2{font-size:clamp(2.6rem,5vw,5rem);line-height:1;margin:0}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 22px;border-radius:999px;font-weight:800;text-decoration:none;border:1px solid transparent;transition:.2s ease}
.button:hover{transform:translateY(-2px)}
.button--gold{background:var(--gold);color:var(--dark)}
.button--gold:hover{background:var(--gold2)}
.button--outline{border-color:rgba(255,255,255,.35);color:var(--white);background:rgba(255,255,255,.04)}
.button--full{width:100%}

.header{position:fixed;z-index:1000;inset:0 0 auto;height:82px;background:rgba(17,20,23,.94);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand__symbol{position:relative;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22)}
.brand__symbol i{position:absolute;width:27px;height:2px;background:var(--gold)}
.brand__symbol i:first-child{transform:translateY(-7px)}
.brand__symbol i:last-child{transform:translateY(7px)}
.brand strong{display:block;font-size:1.4rem;letter-spacing:.16em}
.brand small{display:block;color:rgba(255,255,255,.62);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}
.menu{display:flex;align-items:center;gap:25px}
.menu a{color:rgba(255,255,255,.8);font-size:.92rem;font-weight:700;text-decoration:none}
.menu a:hover{color:#fff}
.menu__whatsapp{padding:10px 16px!important;border-radius:999px;background:var(--gold);color:var(--dark)!important}
.menu-button{display:none;width:46px;height:46px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:transparent;cursor:pointer}
.menu-button span{display:block;width:22px;height:2px;margin:5px auto;background:#fff;transition:.2s}

.hero{min-height:100vh;padding:145px 0 72px;color:#fff;background:
linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
var(--dark);background-size:48px 48px;display:grid;align-items:center}
.hero__grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(45px,7vw,95px)}
.hero h1{margin:0;font-size:clamp(3.4rem,7vw,7rem);line-height:.98}
.hero h1 span{display:block;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.65)}
.hero__text{max-width:690px;margin:28px 0 0;color:rgba(255,255,255,.72);font-size:1.08rem}
.hero__buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero__areas{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid rgba(255,255,255,.16)}
.hero__areas div{padding:18px 18px 0 0}
.hero__areas div+div{padding-left:18px;border-left:1px solid rgba(255,255,255,.12)}
.hero__areas span{display:block;color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.15em}
.hero__areas strong{display:block;margin-top:4px;font-size:.9rem}
.hero__image{position:relative;padding:12px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);box-shadow:0 34px 76px rgba(0,0,0,.32)}
.hero__image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#33393d}
.hero__badge{position:absolute;left:-28px;bottom:30px;padding:17px 20px;background:var(--gold);color:var(--dark);box-shadow:var(--shadow)}
.hero__badge strong{display:block;font-size:1.3rem;letter-spacing:.16em}
.hero__badge span{display:block;font-size:.67rem;font-weight:800;text-transform:uppercase}

.heading{max-width:760px;margin-bottom:50px}
.heading>p:not(.overline){margin:22px 0 0;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{min-height:340px;display:flex;flex-direction:column;padding:34px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 42px rgba(17,20,23,.06)}
.card--dark{background:var(--dark);color:#fff;border-color:var(--dark)}
.card__number{color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.16em}
.card h3{margin:32px 0 0;font-size:1.75rem}
.card ul{margin:auto 0 0;padding:22px 0 0;list-style:none;border-top:1px solid var(--line)}
.card--dark ul{border-color:rgba(255,255,255,.15)}
.card li{padding:5px 0;color:var(--muted)}
.card--dark li{color:rgba(255,255,255,.68)}

.dark-block{background:var(--dark2);color:#fff}
.dark-block__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,120px)}
.dark-block p:not(.overline){color:rgba(255,255,255,.65)}
.text-link{display:inline-flex;gap:12px;margin-top:26px;color:var(--gold);font-weight:800;text-decoration:none}
.list{border-top:1px solid rgba(255,255,255,.16)}
.list div{min-height:100px;display:grid;grid-template-columns:75px 1fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.16)}
.list span{color:var(--gold);font-size:.74rem;font-weight:800}
.list strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,2.5vw,2.25rem);font-weight:500}

.coverage{color:#fff;background:
linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
var(--dark);background-size:48px 48px}
.coverage__grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:clamp(50px,8vw,110px)}
.coverage p:not(.overline){color:rgba(255,255,255,.68);margin:24px 0 30px}
.coverage__art{position:relative;min-height:420px}
.ring{position:absolute;top:50%;left:50%;border:1px solid rgba(255,255,255,.18);border-radius:50%;transform:translate(-50%,-50%)}
.ring--1{width:390px;height:390px}
.ring--2{width:265px;height:265px}
.ring--3{width:145px;height:145px;border-color:rgba(196,139,70,.65)}
.pin{position:absolute;top:50%;left:50%;width:42px;height:42px;border:10px solid var(--gold);border-radius:50% 50% 50% 0;background:var(--dark);transform:translate(-50%,-65%) rotate(-45deg)}
.place{position:absolute;padding:7px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(17,20,23,.84);font-size:.78rem;font-weight:700}
.place--1{top:10%;left:8%}.place--2{top:25%;right:3%}.place--3{bottom:10%;left:20%}

.gallery{background:#eceeeb}
.heading--wide{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:40px}
.heading--wide>p{max-width:360px;text-align:right}
.gallery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.gallery__item{position:relative;padding:12px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 14px 32px rgba(17,20,23,.08);cursor:zoom-in}
.gallery__item--wide{grid-column:1/-1}
.gallery__item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#d9dcda}
.gallery__item span{position:absolute;right:24px;bottom:24px;padding:8px 12px;border-radius:999px;background:rgba(17,20,23,.85);color:#fff;font-size:.74rem;font-weight:800}

.contact{color:#fff;background:var(--dark)}
.contact__grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(48px,8vw,105px)}
.contact p:not(.overline){color:rgba(255,255,255,.67)}
.contact__panel{padding:12px 34px 34px;border-radius:var(--radius);background:#fff;color:var(--text);box-shadow:0 30px 80px rgba(0,0,0,.28)}
.contact__panel>div{display:grid;gap:6px;padding:22px 0;border-bottom:1px solid var(--line)}
.contact__panel span{color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.contact__panel a:not(.button),.contact__panel strong{font-size:1.06rem;font-weight:800;text-decoration:none}
.contact__panel .button{margin-top:28px}

.footer{padding:42px 0;background:#090c0e;color:rgba(255,255,255,.65);border-top:1px solid rgba(255,255,255,.1)}
.footer__grid{display:grid;grid-template-columns:1.1fr 1.2fr .7fr;gap:38px}
.footer strong{color:#fff;font-size:1.4rem;letter-spacing:.14em}
.footer span{display:block;color:#fff;font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.footer p{margin:7px 0 0}
.footer a{color:var(--gold);font-weight:800;text-decoration:none}

.whatsapp,.top{position:fixed;z-index:900;right:22px;display:grid;place-items:center;border-radius:50%;box-shadow:0 14px 32px rgba(0,0,0,.25)}
.whatsapp{bottom:22px;width:58px;height:58px;background:#1fa855;color:#fff;font-weight:900;text-decoration:none}
.top{bottom:92px;width:44px;height:44px;border:0;background:var(--dark);color:#fff;cursor:pointer;opacity:0;pointer-events:none;transition:.2s}
.top.is-visible{opacity:1;pointer-events:auto}

.lightbox{position:fixed;z-index:3000;inset:0;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;gap:14px;padding:28px;background:rgba(5,7,8,.96)}
.lightbox[hidden]{display:none}
.lightbox img{max-width:100%;max-height:calc(100vh - 56px);margin:auto;object-fit:contain}
.lightbox button{width:52px;height:52px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:2rem;cursor:pointer}
.lightbox__close{position:absolute;top:20px;right:20px;z-index:2}

@media(max-width:1000px){
  .hero{min-height:auto}
  .hero__grid,.dark-block__grid,.coverage__grid,.contact__grid{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .hero__image{max-width:760px}
}
@media(max-width:820px){
  .header{height:76px}
  .brand small{display:none}
  .menu-button{display:block;position:relative;z-index:1002}
  .menu-button[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}
  .menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-button[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}
  .menu{position:fixed;z-index:1001;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:90px 28px 38px;background:rgba(9,12,14,.99);transform:translateX(100%);visibility:hidden;transition:.25s}
  .menu.is-open{transform:none;visibility:visible}
  .menu a{padding:13px 10px;font-size:1.3rem}
  .menu__whatsapp{text-align:center;margin-top:12px}
  .heading--wide{align-items:flex-start;flex-direction:column}
  .heading--wide>p{text-align:left}
  .footer__grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .container{width:min(calc(100% - 28px),var(--container))}
  .section{padding:76px 0}
  .hero{padding:118px 0 66px}
  .hero h1{font-size:clamp(3rem,15vw,4.6rem)}
  .hero__buttons{flex-direction:column}
  .button{width:100%}
  .hero__areas{grid-template-columns:1fr}
  .hero__areas div,.hero__areas div+div{padding:13px 0;border-left:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .hero__badge{position:relative;left:auto;bottom:auto;width:max-content;margin:12px 0 0 auto}
  h2{font-size:clamp(2.4rem,12vw,3.5rem)}
  .gallery__grid{grid-template-columns:1fr}
  .gallery__item--wide{grid-column:auto}
  .contact__panel{padding:8px 22px 24px}
  .lightbox{grid-template-columns:1fr;padding:70px 12px 78px}
  .lightbox button:not(.lightbox__close){position:absolute;bottom:15px}
  .lightbox__prev{left:calc(50% - 64px)}
  .lightbox__next{right:calc(50% - 64px)}
}
