
:root{
  --bg:#070707;--panel:#111;--panel2:#171717;--line:#292929;
  --text:#f6f6f6;--muted:#a3a3a3;--red:#f52f35;--orange:#ff6b3d;
  --gold:#ffc64b;--radius:24px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 90% 0,rgba(245,47,53,.09),transparent 34rem),var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,select,textarea{font:inherit}
.wrap{width:min(1160px,calc(100% - 34px));margin:auto}
nav{position:sticky;top:0;z-index:50;background:rgba(7,7,7,.9);backdrop-filter:blur(18px);border-bottom:1px solid #222}
.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.brand-logo{width:47px;height:47px;object-fit:contain}
.links{display:flex;align-items:center;gap:20px;color:#ccc;font-size:14px}.links a:hover{color:#fff}
.call{background:#fff;color:#080808;padding:11px 16px;border-radius:999px;font-weight:900}
.mobile-menu{display:none;background:none;border:1px solid #333;color:#fff;border-radius:10px;padding:8px 10px}
.hero{min-height:83vh;position:relative;overflow:hidden;display:flex;align-items:end}
.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;z-index:-2;filter:brightness(.48) saturate(.9)}
.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.93),rgba(0,0,0,.35)),linear-gradient(0deg,#070707,transparent 45%)}
.hero-content{padding:94px 0 70px;max-width:800px}
.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #414141;background:rgba(20,20,20,.8);border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.dot{width:7px;height:7px;border-radius:50%;background:var(--red)}
h1{font-size:clamp(52px,8.5vw,104px);line-height:.88;letter-spacing:-.06em;margin:22px 0}
h1 span{color:transparent;-webkit-text-stroke:1px #fff}
.hero p,.lead{font-size:clamp(17px,2vw,21px);line-height:1.65;color:#c7c7c7;max-width:720px}
.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:999px;font-weight:900;border:1px solid transparent}
.primary{background:linear-gradient(135deg,var(--red),var(--orange))}
.secondary{border-color:#444;background:rgba(10,10,10,.65)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px;max-width:720px}
.stat{padding:17px 18px;border:1px solid #333;border-radius:18px;background:rgba(0,0,0,.46)}
.stat strong{display:block;font-size:21px}.stat small{color:#999}
section{padding:90px 0}.head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}
.head h2,.page-hero h1{font-size:clamp(38px,5vw,64px);line-height:.94;letter-spacing:-.045em;margin:0}
.head p{max-width:520px;color:#aaa;line-height:1.7;margin:0}
.services{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card-link{display:block}.card{height:100%;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s ease}
.card:hover{transform:translateY(-3px);border-color:#444}
.media{height:300px;position:relative;overflow:hidden}.media img{height:100%;object-fit:cover;transition:.4s}.card:hover .media img{transform:scale(1.03)}
.price{position:absolute;right:15px;top:15px;background:#fff;color:#090909;padding:9px 12px;border-radius:999px;font-weight:900}
.copy{padding:23px}.copy h3{font-size:29px;margin:0 0 8px}.copy p{color:#aaa;line-height:1.6;margin:0}
.tag{display:inline-block;margin-top:14px;color:#ff7979;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.details-link{display:inline-block;margin-top:14px;font-weight:900}
.packages{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.package{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.package.featured{border-color:var(--red);box-shadow:0 0 0 1px rgba(245,47,53,.18)}
.badge{display:inline-block;background:var(--red);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.package h3{font-size:25px;margin:14px 0 4px}.amount{font-size:42px;font-weight:900;letter-spacing:-.04em}.amount small{font-size:13px;color:#888}
.package ul,.detail-list{padding-left:20px;color:#bbb;line-height:1.8}
.book{display:block;margin-top:20px;text-align:center;padding:13px;border-radius:999px;background:#fff;color:#090909;font-weight:900}
.note{color:#858585;font-size:13px;line-height:1.6;margin-top:18px}
.gallery{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.gallery a{display:block;border-radius:24px;overflow:hidden;border:1px solid var(--line)}
.gallery .big{min-height:570px}.gallery .stack{display:grid;gap:16px}.gallery .stack a{min-height:277px}.gallery img{height:100%;object-fit:cover}
.review-summary{display:flex;align-items:center;gap:24px;border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:24px;margin-bottom:20px}
.review-score{font-size:64px;line-height:1;font-weight:900;letter-spacing:-.06em}.review-outof{color:#888}.stars,.summary-stars{color:var(--gold);letter-spacing:.08em}
.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.review{border:1px solid var(--line);background:#0f0f0f;border-radius:20px;padding:20px;min-height:155px}
.review strong{display:block;margin:10px 0 7px}.review p{margin:0;color:#9c9c9c;font-size:14px;line-height:1.55}
.disclosure{font-size:12px;color:#777;margin:8px 0 22px}
.form-card{border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:28px}.form-card h2,.form-card h3{margin-top:0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}
label{font-size:13px;color:#b7b7b7}input,select,textarea{width:100%;background:#090909;color:#fff;border:1px solid #353535;border-radius:13px;padding:13px}
textarea{min-height:130px;resize:vertical}.form-btn{border:0;cursor:pointer;background:linear-gradient(135deg,var(--red),var(--orange));color:white;padding:14px 20px;border-radius:999px;font-weight:900}
.page-hero{padding:80px 0 54px;border-bottom:1px solid #222}.page-hero .breadcrumb{color:#888;font-size:13px;margin-bottom:18px}.page-hero p{max-width:720px;color:#aaa;line-height:1.7}
.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px}.detail-photo{border-radius:26px;overflow:hidden;border:1px solid var(--line);min-height:480px}.detail-photo img{height:100%;object-fit:cover}
.detail-panel{border:1px solid var(--line);background:var(--panel);border-radius:26px;padding:28px}.detail-panel h2{font-size:36px;margin:0 0 8px}.detail-price{font-size:34px;font-weight:900;color:#fff;margin:12px 0}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.info{border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:20px}.info strong{display:block;margin-bottom:7px}.info p{margin:0;color:#999;line-height:1.55;font-size:14px}
.contact{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;border:1px solid var(--line);background:var(--panel);border-radius:28px;padding:34px}
.contact-links a{display:block;border:1px solid #303030;background:var(--panel2);border-radius:16px;padding:17px;margin:10px 0;font-weight:900}.contact-links small{display:block;color:#888;margin-bottom:5px}
footer{border-top:1px solid #222;padding:30px 0 45px;color:#777;font-size:13px}
@media(max-width:980px){.packages,.reviews-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr 1fr}.links{display:none}.links.open{display:flex;position:absolute;left:16px;right:16px;top:68px;flex-direction:column;align-items:stretch;background:#0d0d0d;border:1px solid #292929;border-radius:18px;padding:16px}.mobile-menu{display:block}}
@media(max-width:760px){.hero{min-height:790px}.stats,.services,.detail-grid,.contact,.gallery{grid-template-columns:1fr}.head{display:block}.head p{margin-top:15px}.gallery .big{min-height:420px}.gallery .stack a{min-height:250px}.form-grid,.info-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.media{height:255px}}
@media(max-width:600px){.packages,.reviews-grid{grid-template-columns:1fr}.review-summary{align-items:flex-start}.review-score{font-size:50px}}
