
:root{
  --ink:#07080a;
  --ink-2:#14100a;
  --ink-3:#1a1d24;
  --gold:#cfd3dc;
  --gold-2:#f2f4f8;
  --gold-3:#8b93a3;
  --cream:#f4f6fb;
  --paper:#07080a;
  --white:#ffffff;
  --muted:#c5cad6;
  --soft:#ffffff;
  --accent:#ffcf33;
  --rose:#8b93a3;
  --green:#39d98a;
  --shadow:0 28px 90px rgba(0,0,0,.38);
  --gold-shadow:0 22px 70px rgba(207,211,220,.18);
  --radius:30px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% 6%,rgba(242,244,248,.16),transparent 28rem),
    radial-gradient(circle at 90% 10%,rgba(207,211,220,.12),transparent 24rem),
    linear-gradient(180deg,#050608 0%,#111318 42%,#06070a 100%);
  line-height:1.6;
}
a{color:inherit}
img{max-width:100%;height:auto}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.skip-link{position:absolute;left:-999px;top:10px;background:var(--gold);color:#07080a;padding:10px 14px;border-radius:999px;z-index:999;font-weight:900}
.skip-link:focus{left:10px}
.site-header{
  position:sticky;top:0;z-index:70;
  background:rgba(8,7,5,.88);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(207,211,220,.24)
}
.header-inner{min-height:82px;display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content}
.brand-mark{
  width:46px;height:46px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--gold-2),var(--gold),var(--gold-3));
  color:#07080a;box-shadow:var(--gold-shadow);font-weight:1000
}
.brand strong{display:block;font-size:1.06rem;letter-spacing:-.02em;color:#f7f8fb}
.brand small{display:block;font-size:.72rem;color:var(--muted);line-height:1.2}
.main-nav{display:flex;align-items:center;gap:18px;margin-left:auto}
.main-nav a{text-decoration:none;font-weight:900;font-size:.93rem;color:#e7ebf3}
.main-nav a:hover{color:#fff}
.header-cta{display:flex;gap:10px;align-items:center}
.phone-pill,.sms-pill{padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:950}
.phone-pill{background:rgba(255,255,255,.06);border:1px solid rgba(207,211,220,.34);color:#f7f8fb}
.sms-pill{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#100b04;box-shadow:var(--gold-shadow)}
.menu-toggle{display:none;margin-left:auto;border:1px solid rgba(207,211,220,.45);border-radius:999px;background:#111;color:var(--gold-2);padding:10px 14px;font-weight:900}
.hero{padding:82px 0 58px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(340px,.97fr);gap:46px;align-items:center}
.kicker{margin:0 0 12px;color:var(--gold-2);text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:1000}
h1{font-size:clamp(2.65rem,7vw,5.85rem);line-height:.91;letter-spacing:-.075em;margin:0 0 18px;color:#ffffff}
.lead{font-size:clamp(1.08rem,2.2vw,1.34rem);color:#d8dde8;max-width:720px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:14px 20px;border-radius:999px;text-decoration:none;border:0;font-weight:1000;cursor:pointer;transition:.18s ease}
.btn:hover{transform:translateY(-2px)}
.btn.primary{color:#07080a;background:linear-gradient(135deg,var(--gold-2),var(--gold),var(--gold-3));box-shadow:var(--gold-shadow)}
.btn.light{background:rgba(255,255,255,.07);color:#f7f8fb;border:1px solid rgba(207,211,220,.30)}
.btn.gold{background:linear-gradient(135deg,#fff1a6,var(--gold));color:#0c0904;box-shadow:var(--gold-shadow)}
.trust-row{display:flex;gap:10px;flex-wrap:wrap}
.trust-row span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(207,211,220,.24);font-size:.88rem;font-weight:850;color:#eef1f7}
.hero-gallery{
  position:relative;border-radius:42px;overflow:hidden;box-shadow:var(--shadow);
  background:#06070a;border:1px solid rgba(207,211,220,.36)
}
.hero-gallery:before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.42));
  pointer-events:none
}
.hero-gallery img{display:block;width:100%;height:520px;object-fit:cover}
.hero-gallery-card{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;background:rgba(9,8,6,.84);backdrop-filter:blur(10px);padding:16px;border-radius:24px;border:1px solid rgba(207,211,220,.30)}
.hero-gallery-card strong{display:block;font-size:1.1rem;color:#ffffff}
.hero-gallery-card span{color:#d8dde8;font-weight:750}
.section{padding:74px 0}
.section-head{max-width:820px;margin:0 auto 34px;text-align:center}
.section-head h2,.split h2{font-size:clamp(2rem,4vw,3.55rem);line-height:.98;letter-spacing:-.05em;margin:0 0 12px;color:#fff3c4}
.section-head p:not(.kicker){color:#c5cad6;font-size:1.08rem}
.card-grid{display:grid;gap:22px}
.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{
  padding:30px;border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  border:1px solid rgba(207,211,220,.24);
  box-shadow:0 18px 50px rgba(0,0,0,.22)
}
.card h3{margin:0 0 10px;font-size:1.5rem;line-height:1.1;letter-spacing:-.03em;color:#ffffff}
.card p{color:#c5cad6}
.card a{font-weight:1000;color:#f5d76e}
.icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--gold-2),var(--gold));font-size:2rem;margin-bottom:18px;box-shadow:var(--gold-shadow)}
.soft-pink,.soft-gold,.soft-blue,.soft-green{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(212,175,55,.05))}
.banner{
  padding:36px;border-radius:36px;
  background:linear-gradient(135deg,#050608,#151922 45%,#3b414d);
  color:#fff;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.36)
}
.banner h2{font-size:clamp(2rem,4.5vw,4.2rem);line-height:.95;letter-spacing:-.06em;margin:0 0 14px;color:#ffffff}
.banner p{color:#d8dde8;font-size:1.1rem}
.carousel-shell{position:relative;overflow:hidden;border-radius:34px;background:linear-gradient(180deg,#14100a,#07080a);box-shadow:var(--shadow);padding:16px;border:1px solid rgba(207,211,220,.30)}
.carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-item{flex:0 0 min(78vw,420px);scroll-snap-align:start;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}
.carousel-item img{width:100%;height:300px;object-fit:cover;border-radius:24px;display:block;box-shadow:0 16px 36px rgba(0,0,0,.35);border:1px solid rgba(212,175,55,.2)}
.carousel-item span{display:block;padding:10px 6px 0;color:#d8dde8;font-weight:850}
.carousel-controls{display:flex;justify-content:center;gap:10px;margin-top:18px}
.carousel-controls button{border:0;border-radius:999px;padding:10px 15px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#07080a;font-weight:1000;cursor:pointer}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:100;padding:24px}
.lightbox.is-open{display:flex}
.lightbox-inner{max-width:1050px;width:100%;background:#07080a;border-radius:28px;padding:16px;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.36)}
.lightbox img{width:100%;max-height:75vh;object-fit:contain;border-radius:18px;background:#111}
.lightbox p{font-weight:900;color:#f5d76e}
.lightbox-close{float:right;border:0;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#07080a;border-radius:999px;padding:10px 14px;font-weight:1000;cursor:pointer}
.process{background:rgba(255,255,255,.035);border-top:1px solid rgba(212,175,55,.13);border-bottom:1px solid rgba(212,175,55,.13)}
.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.step{padding:28px;border-radius:var(--radius);background:rgba(255,255,255,.06);border:1px solid rgba(212,175,55,.18);box-shadow:0 12px 35px rgba(0,0,0,.18)}
.step span{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#07080a;font-weight:1000}
.step h3{font-size:1.35rem;margin:20px 0 8px;color:#ffffff}
.step p{color:#c5cad6;margin-bottom:0}
.split-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);gap:34px;align-items:start}
.checks{list-style:none;padding:0;margin:24px 0 0}
.checks li{margin:10px 0;padding-left:32px;position:relative;color:#e5d4a5;font-weight:760}
.checks li:before{content:"✓";position:absolute;left:0;top:-1px;width:22px;height:22px;display:grid;place-items:center;border-radius:999px;color:#07080a;background:var(--gold);font-size:.82rem;font-weight:1000}
.dark-card{padding:34px;border-radius:34px;background:linear-gradient(180deg,#151922,#050608);color:#fff;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.32)}
.dark-card h3{margin-top:0;font-size:1.55rem;color:#ffffff}
.dark-card p,.dark-card li{color:#c5cad6}
.area-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.area-list a{padding:16px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(207,211,220,.24);text-decoration:none;font-weight:950;box-shadow:0 10px 24px rgba(0,0,0,.18);color:#f5d76e}
.page-hero{padding:76px 0 54px;background:radial-gradient(circle at 20% 20%,rgba(212,175,55,.16),transparent 24rem)}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:30px;align-items:center}
.big-emoji{min-height:220px;border-radius:42px;background:linear-gradient(180deg,#18120a,#050608);display:grid;place-items:center;font-size:6rem;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.30)}
.quote-section{background:radial-gradient(circle at 25% 30%,rgba(212,175,55,.18),transparent 18rem),rgba(255,255,255,.035)}
.quote-wrap{max-width:920px;margin:0 auto}
.quote-form{padding:28px;border-radius:32px;background:linear-gradient(180deg,#151922,#07080a);box-shadow:var(--shadow);border:1px solid rgba(212,175,55,.25)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.quote-form label{display:grid;gap:7px;margin-bottom:16px;font-weight:900;color:#ffffff}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid rgba(207,211,220,.36);border-radius:16px;padding:13px 14px;font:inherit;background:#07080a;color:#f7f8fb}
.quote-form input::placeholder,.quote-form textarea::placeholder{color:#8b93a3}
.form-note{color:#c5cad6;margin-bottom:0}
.faq details{max-width:850px;margin:12px auto;padding:20px 22px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(212,175,55,.18);box-shadow:0 10px 25px rgba(0,0,0,.16)}
.faq summary{font-weight:950;cursor:pointer;color:#ffffff}
.faq p{color:#c5cad6}
.sms-widget{position:fixed;right:18px;bottom:18px;z-index:80}
.sms-button{border:0;border-radius:999px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#07080a;padding:14px 18px;font-weight:1000;box-shadow:var(--gold-shadow);cursor:pointer}
.sms-panel{display:none;position:absolute;right:0;bottom:62px;width:min(380px,calc(100vw - 36px));padding:18px;border-radius:26px;background:#07080a;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.32)}
.sms-panel.is-open{display:block}
.sms-panel h3{margin:0 0 8px;color:#ffffff}
.sms-panel p{color:#c5cad6;margin:0 0 12px}
.sms-panel textarea,.sms-panel input{width:100%;border:1px solid rgba(207,211,220,.30);border-radius:16px;padding:12px;font:inherit;background:#111318;color:#f7f8fb;margin-bottom:10px}
.sms-status{font-size:.92rem;font-weight:850;color:#f5d76e;margin-top:10px}
.footer{background:#050608;color:#fff;padding:54px 0 24px;border-top:1px solid rgba(207,211,220,.24)}
.footer-grid{display:grid;grid-template-columns:1.1fr .75fr .75fr .85fr;gap:28px}
.footer h2,.footer h3{margin-top:0;color:#ffffff}
.footer p,.footer a{color:#c5cad6}
.footer a{display:block;margin:7px 0;text-decoration:none}
.footer a:hover{color:#fff}
.footer-bottom{margin-top:34px;padding-top:22px;border-top:1px solid rgba(212,175,55,.14);color:#8b93a3}
@media(max-width:1000px){
  .menu-toggle{display:inline-flex}
  .main-nav{position:absolute;top:82px;left:20px;right:20px;display:none;margin-left:0;background:#07080a;border-radius:24px;padding:18px;box-shadow:var(--shadow);border:1px solid rgba(207,211,220,.30)}
  .main-nav.is-open{display:grid;gap:12px}
  .phone-pill{display:none}
  .hero-grid,.split-grid,.page-hero-grid{grid-template-columns:1fr}
  .card-grid.three,.card-grid.four,.card-grid.two,.step-grid,.footer-grid,.area-list{grid-template-columns:1fr}
  .hero-gallery img{height:430px}
}
@media(max-width:640px){
  .container{width:min(100% - 26px,1180px)}
  .header-inner{min-height:72px}
  .brand small{display:none}
  .header-cta{display:none}
  .hero{padding-top:46px}
  .section{padding:54px 0}
  .form-grid{grid-template-columns:1fr}
  .quote-form{padding:20px}
  .carousel-item{flex-basis:86vw}
  .carousel-item img{height:240px}
}
