:root{--cream:#f3ebe0;--paper:#fbf7f1;--ink:#241a14;--soft:#7a6a58;--gold:#c9a36a;--gold-deep:#8a6b42;--line:rgba(201,163,106,.30);--sun:#ff6a00;--sun-soft:#ff8a3c;--serif:'Prata',Georgia,serif;--sans:'Manrope',system-ui,sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-weight:300;color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;background:var(--paper)}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:.2px}
.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep);font-weight:600;font-family:var(--sans)}

/* NAV */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:rgba(251,247,241,.82);border-bottom:1px solid var(--line);transition:all .3s}
header.scrolled{background:rgba(251,247,241,.95);box-shadow:0 2px 20px rgba(0,0,0,.06)}
.nav{display:flex;align-items:center;gap:22px;padding:14px 0}
.brand{font-family:var(--serif);font-size:22px;letter-spacing:.5px}
.brand .hash{color:var(--gold)}
.nav .links{display:flex;gap:22px;margin-left:auto;font-size:14px;font-weight:400}
.nav .links a{color:var(--soft);transition:.2s}
.nav .links a:hover,.nav .links a.active{color:var(--gold-deep)}
.nav .call{font-weight:600;font-size:15px;white-space:nowrap}
.nav .book-btn{padding:10px 22px;background:var(--gold);color:#fff;border-radius:999px;font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;transition:.2s}
.nav .book-btn:hover{background:var(--ink);color:var(--cream)}
@media(max-width:760px){.nav .links{display:none}.nav .call{font-size:14px}}

/* BREADCRUMBS */
.breadcrumbs{padding:18px 0 0;font-size:13px;color:var(--soft)}
.breadcrumbs a{color:var(--gold-deep);transition:.2s}
.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs span{margin:0 6px;opacity:.5}

/* HERO */
.hero{padding:80px 0 40px;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-150px;right:-100px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(201,163,106,.1) 0%,transparent 70%);pointer-events:none}
.hero h1{font-size:clamp(36px,7vw,68px);line-height:1.02}
.hero h1 .li{font-style:italic;color:var(--gold-deep)}
.hero p.lead{max-width:560px;margin:18px auto 0;color:var(--soft);font-size:17px}
.cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 28px;border-radius:999px;font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s;border:1px solid transparent}
.btn-primary{background:var(--ink);color:var(--cream)}
.btn-primary:hover{background:var(--gold-deep);transform:translateY(-1px)}
.btn-ghost{border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-deep)}
.btn-tg{background:#229ED9;color:#fff}.btn-tg:hover{filter:brightness(1.06)}

/* HERO STATS */
.hero-stats{display:flex;justify-content:center;gap:40px;margin-top:48px;flex-wrap:wrap}
.hero-stat{text-align:center}
.hero-stat .num{font-family:var(--serif);font-size:36px;color:var(--gold-deep)}
.hero-stat .label{font-size:12px;color:var(--soft);letter-spacing:.1em;text-transform:uppercase;margin-top:2px}

/* SECTION COMMON */
section{padding:54px 0;scroll-margin-top:78px}
.sec-head{text-align:center;margin-bottom:34px}
.sec-head h2{font-size:clamp(28px,5vw,40px);margin-top:8px}
.sec-head p{color:var(--soft);margin-top:8px;font-size:15px}

/* PROMOS */
.promos{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}
@media(max-width:860px){.promos{grid-template-columns:1fr}}
.promo{border-radius:22px;padding:26px;position:relative;overflow:hidden;border:1px solid var(--line)}
.promo-sun{background:linear-gradient(160deg,#211c18,#161310);color:#fff;border:none;display:flex;flex-direction:column;gap:14px}
.promo-sun .sun{position:absolute;top:-46px;right:-30px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffb27a,var(--sun));opacity:.95}
.promo-sun .tag{display:inline-block;align-self:flex-start;background:linear-gradient(90deg,var(--sun-soft),var(--sun));color:#fff;font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:7px 14px;border-radius:999px}
.promo-sun h3{font-family:var(--serif);font-size:clamp(30px,6vw,46px);color:#fff;line-height:1;margin-top:4px;position:relative}
.promo-sun .gauge-label{display:flex;justify-content:space-between;font-size:13px;color:#cdbfb2;font-weight:500}
.gauge{height:16px;border-radius:9px;background:rgba(255,255,255,.12);overflow:hidden}
.gauge>span{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,var(--sun-soft),var(--sun));transition:width .8s cubic-bezier(.2,.8,.2,1)}
.resource{display:flex;align-items:flex-end;gap:8px}
.resource .big{font-family:var(--serif);font-size:46px;line-height:.9}
.resource .of{font-size:13px;color:#cdbfb2;padding-bottom:6px}
.tariffs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px}
.tariffs .t{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:11px 8px;text-align:center;display:flex;flex-direction:column;justify-content:flex-end;gap:3px}
.tariffs .t .min{font-size:11px;letter-spacing:.06em;color:#cdbfb2;text-transform:uppercase;white-space:nowrap}
.tariffs .t .price{font-weight:800;font-size:22px;color:#fff;margin-top:0;line-height:1}
.tariffs .t .price b{color:var(--sun-soft)}
.note-fresh{font-size:12px;color:#cdbfb2}
.promo-soft{background:linear-gradient(160deg,#fff,#f6efe4);display:flex;flex-direction:column;justify-content:center;gap:10px}
.promo-soft .tag{align-self:flex-start;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep);font-weight:700}
.promo-soft h3{font-size:26px;line-height:1.1}
.promo-soft p{color:var(--soft);font-size:14px}
.promo-soft .mini{display:inline-flex;gap:7px;align-items:center;color:var(--gold-deep);font-weight:600;font-size:14px;margin-top:6px}

/* SERVICES */
.services{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.svc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;transition:.25s}
.svc:hover{border-color:var(--gold);box-shadow:0 12px 30px rgba(138,107,66,.10);transform:translateY(-2px)}
.svc .ill{width:74px;height:74px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#fff,#f2e7d6);border:1px solid var(--line);margin-bottom:16px}
.svc h3{font-size:22px;margin-bottom:4px}
.svc .desc{color:var(--soft);font-size:13.5px;margin-bottom:14px}
.svc ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.svc li{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:14.5px;padding-bottom:9px;border-bottom:1px dashed var(--line)}
.svc li:last-child{border-bottom:none;padding-bottom:0}
.svc li .nm{font-weight:400}
.svc li .pr{font-weight:600;white-space:nowrap;color:var(--gold-deep)}
.svc li .pr small{font-weight:400;color:var(--soft)}
.svc .more{display:inline-block;margin-top:14px;font-size:13px;font-weight:600;color:var(--gold-deep)}

/* SERVICE PAGE TABLE */
.price-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:15px}
.price-table th{text-align:left;padding:12px 16px;background:var(--cream);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep);border-bottom:2px solid var(--line)}
.price-table td{padding:12px 16px;border-bottom:1px solid var(--line)}
.price-table tr:hover td{background:rgba(201,163,106,.06)}
.price-table .price{font-weight:600;color:var(--gold-deep);white-space:nowrap}
.price-table .dur{color:var(--soft);font-size:13px}

/* CONTACT */
.contact{background:linear-gradient(160deg,#241a14,#3a2a1d);color:var(--cream);border-radius:26px;padding:46px 34px;text-align:center}
.contact h2{color:#fff;font-size:34px}
.contact .phone{font-family:var(--serif);font-size:clamp(30px,6vw,46px);color:var(--gold);margin:14px 0 6px;display:inline-block}
.contact .sub{color:#cdbfb2;font-size:15px}
.contact .cta{margin-top:26px}
.contact .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}
.contact .btn-ghost:hover{border-color:var(--gold);color:var(--gold)}

footer{padding:30px 0 46px;text-align:center;color:var(--soft);font-size:13px}
footer .brand{font-size:18px;color:var(--ink)}
footer a{color:var(--gold-deep)}

/* TARIFFS */
.tariff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
@media(max-width:820px){.tariff-grid{grid-template-columns:1fr}}
.tariff{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 24px 24px;display:flex;flex-direction:column;gap:4px;transition:.25s}
.tariff:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(138,107,66,.12)}
.tariff .kind{font-size:13px;letter-spacing:.05em;color:var(--soft);font-weight:500}
.tariff .price{font-family:var(--serif);font-size:48px;line-height:1;color:var(--ink);margin-top:8px}
.tariff .price .cur{font-size:24px;color:var(--gold-deep)}
.tariff .per{font-size:14px;color:var(--soft);margin-top:6px}
.tariff .save{margin-top:12px;font-size:13.5px;font-weight:700;color:var(--gold-deep)}
.tariff .save.muted{color:var(--soft);font-weight:500}
.tariff .badge{position:absolute;top:18px;right:18px;background:rgba(201,163,106,.16);color:var(--gold-deep);border:1px solid var(--line);font-weight:800;font-size:13px;padding:6px 12px;border-radius:999px}
.tariff .ribbon{position:absolute;top:-1px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,var(--sun-soft),var(--sun));color:#fff;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;padding:5px 16px;border-radius:0 0 12px 12px}
.tariff .buy{margin-top:20px;display:block;text-align:center;padding:13px;border-radius:999px;font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink);transition:.2s}
.tariff .buy:hover{border-color:var(--gold);color:var(--gold-deep)}
.tariff.hit{background:linear-gradient(160deg,#241c16,#15110d);border:none;color:#fff;padding-top:38px}
.tariff.hit .kind{color:#cdbfb2}.tariff.hit .price{color:#fff}.tariff.hit .price .cur{color:var(--sun-soft)}
.tariff.hit .per{color:#cdbfb2}.tariff.hit .save{color:var(--sun-soft)}
.tariff.hit .badge{background:linear-gradient(90deg,var(--sun-soft),var(--sun));color:#fff;border:none}
.tariff.hit .buy{background:linear-gradient(90deg,var(--sun-soft),var(--sun));color:#fff;border:none}
.tariff.hit .buy:hover{filter:brightness(1.06);color:#fff}

.lamp-strip{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 24px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.lamp-strip .ll{flex:1;min-width:220px}
.lamp-strip .hh{font-family:var(--serif);font-size:20px;margin-bottom:4px}
.lamp-strip .nums{display:flex;align-items:flex-end;gap:8px}
.lamp-strip .nums .big{font-family:var(--serif);font-size:40px;line-height:.9;color:var(--sun)}
.lamp-strip .nums .of{font-size:13px;color:var(--soft);padding-bottom:5px}
.fresh-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,106,0,.12);color:var(--sun);border:1px solid rgba(255,106,0,.3);padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}

/* FAQ */
.faq{max-width:720px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line);padding:18px 0}
.faq-item summary{font-weight:500;font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-item summary::after{content:'+';font-size:22px;color:var(--gold);transition:.2s;flex-shrink:0}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{color:var(--soft);font-size:14.5px;margin-top:10px;line-height:1.7}

/* REVIEWS */
.reviews{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.review{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;position:relative}
.review::before{content:'"';font-family:var(--serif);font-size:60px;color:var(--line);position:absolute;top:8px;right:18px;line-height:1}
.review .text{font-size:14.5px;line-height:1.7;color:var(--ink);margin-bottom:14px;font-style:italic}
.review .author{font-size:13px;font-weight:600;color:var(--gold-deep)}
.review .stars{color:var(--sun);font-size:14px;margin-top:4px;letter-spacing:2px}

/* RELATED */
.related{background:var(--cream);border-radius:22px;padding:34px;margin-top:20px}
.related h3{font-size:22px;margin-bottom:16px}
.related-links{display:flex;flex-wrap:wrap;gap:10px}
.related-links a{display:inline-block;padding:10px 20px;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:14px;font-weight:500;transition:.2s}
.related-links a:hover{border-color:var(--gold);color:var(--gold-deep)}

/* SCROLL REVEAL */
.rv{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}
.rv.vis{opacity:1;transform:none}

/* FOOTER MAP */
.map-section{padding:0;margin-top:40px;border-radius:22px;overflow:hidden;height:280px;background:var(--cream)}
.map-section iframe{width:100%;height:100%;border:none}

/* SERVICE PAGE CONTENT */
.service-content{max-width:760px;margin:0 auto}
.service-content h2{font-size:28px;margin:30px 0 12px}
.service-content h3{font-size:22px;margin:24px 0 10px}
.service-content p{color:var(--soft);font-size:15px;line-height:1.8;margin-bottom:14px}
.service-content ul{margin:10px 0 14px 20px;color:var(--soft);font-size:15px;line-height:1.8}
.service-content ul li{margin-bottom:6px}

@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
