﻿:root{
  --bg:#f6f8ff;
  --surface:#ffffff;
  --surface-soft:#eef3ff;
  --surface-muted:#f6f8ff;
  --surface-glass:rgba(255,255,255,0.9);
  --surface-glass-strong:rgba(255,255,255,0.98);
  --border:rgba(35,58,110,0.14);
  --text:#0f172c;
  --text-muted:#475569;
  --primary:#3751ff;
  --primary-soft:rgba(55,81,255,0.12);
  --accent:#f7b84a;
  --accent-soft:rgba(255,197,96,0.16);
  --success:#2daf7f;
  --warning:#e3a742;
  --danger:#e34d59;
  --shadow:0 28px 80px -42px rgba(15,23,42,0.28);
  --radius:18px;
  --radius-sm:12px;
  --maxw:1280px;
  --space-xs:8px;
  --space-sm:16px;
  --space-md:24px;
  --space-lg:32px;
  --space-xl:48px;
}
body.dark{
  --bg:#07101f;
  --surface:#111827;
  --surface-soft:#141d2f;
  --surface-muted:#0b1220;
  --surface-glass:rgba(17,24,39,0.92);
  --surface-glass-strong:rgba(17,24,39,0.98);
  --border:rgba(255,255,255,0.14);
  --text:#e2e8f0;
  --text-muted:#94a3b8;
  --primary:#7c9cff;
  --primary-soft:rgba(124,156,255,0.18);
  --accent:#fbbf24;
  --accent-soft:rgba(251,191,36,0.18);
  --shadow:0 28px 80px -42px rgba(0,0,0,0.48);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;font-family:'Work Sans',sans-serif;}
body{margin:0;min-height:100vh;background:radial-gradient(circle at top left, rgba(124,156,255,0.14), transparent 25%),radial-gradient(circle at 60% 0%, rgba(251,191,36,0.16), transparent 18%),var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img, video, iframe{display:block;max-width:100%;height:auto;}
a, button{font:inherit;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
button{background:none;border:none;}
::selection{background:rgba(55,81,255,0.18);color:var(--text);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:0.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;}
.eyebrow::before{content:'';width:24px;height:1.5px;background:linear-gradient(90deg,var(--primary),var(--accent));display:inline-block;border-radius:999px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:999px;font-weight:700;letter-spacing:0.01em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;cursor:pointer;}
.btn:focus-visible{outline:2px solid rgba(55,81,255,0.4);outline-offset:3px;}
.btn-primary{background:linear-gradient(135deg,var(--primary),#425cff);color:#fff;box-shadow:0 18px 45px -22px rgba(55,81,255,0.35);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 26px 60px -30px rgba(55,81,255,0.35);}
.btn-gold{background:linear-gradient(135deg,var(--accent),#fff1d6);color:#1d1d1d;box-shadow:0 18px 45px -22px rgba(247,184,74,0.35);}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 26px 60px -30px rgba(247,184,74,0.35);}
.btn-outline{color:var(--primary);border:1px solid rgba(55,81,255,0.18);background:rgba(255,255,255,0.9);}
.btn-outline:hover{background:rgba(255,255,255,1);box-shadow:0 18px 40px -28px rgba(55,81,255,0.16);}
.text-gradient{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;color:transparent;}

header{position:sticky;top:0;z-index:100;background:var(--surface-glass);backdrop-filter:blur(18px);border-bottom:1px solid rgba(15,23,42,0.08);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;}
.logo{display:flex;align-items:center;gap:14px;}
.logo img{width:auto;height:44px;border-radius:16px;background:rgba(255,255,255,0.75);padding:8px;}
nav.links{display:flex;gap:30px;align-items:center;flex-wrap:wrap;}
nav.links a{position:relative;color:rgba(15,23,42,0.76);font-size:0.95rem;font-weight:600;transition:color .2s ease;}
nav.links a:hover,nav.links a.active{color:var(--text);}
nav.links a::after{content:'';position:absolute;left:0;right:0;bottom:-10px;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .25s ease;}
nav.links a:hover::after,nav.links a.active::after{transform:scaleX(1);}
.nav-actions{display:flex;align-items:center;gap:14px;}
.nav-call{display:flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:0.82rem;font-weight:600;color:var(--text-muted);}
.nav-call svg{width:16px;height:16px;color:var(--primary);}
.theme-switch{width:44px;height:44px;border-radius:16px;background:var(--surface-glass);border:1px solid rgba(15,23,42,0.08);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;}
.theme-switch:hover{transform:translateY(-1px);box-shadow:0 24px 40px -24px rgba(15,23,42,0.22);}
.burger{display:none;width:46px;height:46px;border-radius:16px;background:rgba(255,255,255,0.82);border:1px solid rgba(15,23,42,0.08);cursor:pointer;align-items:center;justify-content:center;transition:transform .2s ease;background-position:center;}
.burger svg{width:22px;height:22px;}
.burger:hover{transform:scale(1.02);background:rgba(255,255,255,0.95);}
.mobile-menu{display:none;flex-direction:column;gap:10px;padding:20px 0 24px;border-top:1px solid rgba(15,23,42,0.08);margin-top:10px;}
.mobile-menu a{display:block;padding:14px 0;font-weight:700;color:var(--text);border-bottom:1px solid rgba(15,23,42,0.08);}

.hero{position:relative;overflow:hidden;padding:96px 0 112px;}
.hero::before{content:'';position:absolute;top:-80px;right:-120px;width:420px;height:420px;background:radial-gradient(circle, rgba(55,81,255,0.24), transparent 55%);pointer-events:none;}
.hero::after{content:'';position:absolute;bottom:-80px;left:-80px;width:360px;height:360px;background:radial-gradient(circle, rgba(247,184,74,0.18), transparent 56%);pointer-events:none;}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:48px;align-items:center;position:relative;z-index:1;}
.hero h1{font-size:clamp(3rem, 6vw, 4.8rem);line-height:0.98;max-width:760px;margin-bottom:24px;color:var(--text);}
.hero h1 em{font-style:normal;color:var(--accent);}
.hero p.lead{font-size:1rem;color:var(--text-muted);max-width:580px;line-height:1.85;margin-bottom:32px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:22px;}
.hero-trust{display:flex;gap:22px;flex-wrap:wrap;align-items:center;margin-top:20px;}
.hero-trust div{display:flex;align-items:center;gap:10px;font-size:0.92rem;color:var(--text-muted);}
.hero-trust svg{width:18px;height:18px;color:var(--primary);}

.ticket-wrap{display:flex;justify-content:center;}
.ticket{position:relative;background:rgba(255,255,255,0.92);border:1px solid rgba(15,23,42,0.08);border-radius:28px;box-shadow:var(--shadow);padding:34px 30px 32px;max-width:440px;}
.ticket::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,255,255,0.65), transparent 34%);pointer-events:none;border-radius:28px;}
.ticket-head{display:flex;justify-content:space-between;align-items:flex-start;font-family:'IBM Plex Mono',monospace;font-size:0.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);padding-bottom:18px;}
.ticket-title{font-family:'Fraunces',serif;font-size:1.8rem;color:var(--text);font-weight:800;margin:0 0 18px;}
.ticket-divider{position:relative;border-top:1px dashed rgba(15,23,42,0.12);margin-bottom:18px;}
.ticket-divider::before,.ticket-divider::after{content:'';position:absolute;top:-11px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(15,23,42,0.08);}
.ticket-divider::before{left:-30px;}
.ticket-divider::after{right:-30px;}
.ticket-items{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;}
.ticket-item{display:flex;align-items:center;gap:14px;font-size:1rem;color:var(--text);}
.ticket-item .check{width:24px;height:24px;border-radius:14px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;}
.ticket-item .check svg{width:12px;height:12px;color:var(--accent);}
.ticket-footer{display:flex;justify-content:space-between;align-items:flex-end;padding-top:18px;border-top:1px dashed rgba(15,23,42,0.12);gap:12px;}
.ticket-footer .loc{font-size:0.85rem;color:var(--text-muted);max-width:240px;line-height:1.7;}
.barcode{display:flex;gap:3px;align-items:flex-end;height:30px;}
.barcode span{display:block;background:var(--text);width:2px;border-radius:999px;}
.badge-float{position:absolute;top:-14px;right:-14px;background:linear-gradient(135deg,var(--accent),#f5e1b1);color:#1f1b14;font-family:'IBM Plex Mono',monospace;font-size:0.72rem;font-weight:700;padding:10px 16px;border-radius:18px;box-shadow:0 22px 52px -30px rgba(0,0,0,.22);}

.area-strip{background:rgba(14,23,46,0.96);padding:22px 0;border-top:1px solid rgba(255,255,255,0.08);border-bottom:1px solid rgba(255,255,255,0.08);}
.area-strip .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.area-strip .label{font-family:'IBM Plex Mono',monospace;font-size:0.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:10px;}
.area-strip .label svg{width:16px;height:16px;}
.chips{display:flex;gap:10px;flex-wrap:wrap;}
.chip{font-size:0.84rem;color:rgba(255,255,255,0.92);background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.1);padding:10px 16px;border-radius:999px;}

section{padding:96px 0;position:relative;}
.section-head{max-width:720px;margin-bottom:60px;}
.section-head h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;color:var(--text);margin-bottom:18px;}
.section-head p{color:var(--text-muted);font-size:1rem;line-height:1.85;}

.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;}
.svc-card{position:relative;background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);border-radius:28px;padding:32px;box-shadow:var(--shadow);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;overflow:hidden;}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 42px 88px -44px rgba(15,23,42,.24);border-color:rgba(55,81,255,0.16);}
.svc-icon{width:56px;height:56px;border-radius:18px;background:rgba(55,81,255,0.08);display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.svc-icon svg{width:26px;height:26px;color:var(--primary);}
.svc-card h3{font-size:1.35rem;margin-bottom:14px;color:var(--text);}
.svc-card p.desc{font-size:0.98rem;color:var(--text-muted);margin-bottom:18px;line-height:1.8;}
.svc-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;}
.svc-tags span{font-family:'IBM Plex Mono',monospace;font-size:0.72rem;letter-spacing:.08em;color:var(--primary);background:rgba(55,81,255,0.08);padding:9px 14px;border-radius:999px;}
.svc-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:0.95rem;color:var(--primary);border-top:1px solid rgba(55,81,255,0.12);padding-top:16px;transition:transform .2s ease,color .2s ease;}
.svc-link svg{width:16px;height:16px;transition:transform .2s ease;}
.svc-card:hover .svc-link{transform:translateX(3px);}

.svc-media{width:100%;height:240px;object-fit:cover;border-radius:24px;margin-bottom:22px;background:linear-gradient(180deg,#eef5ff,#f3f8ff);box-shadow:0 20px 48px -28px rgba(15,23,42,.18);}
video.svc-media{background:#111d44;}

.process{background:linear-gradient(180deg,#f8fbff 0%,#eef3ff 100%);}
.process .section-head p{color:var(--text-muted);}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;}
.step{position:relative;padding:32px 28px;border-radius:28px;background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);box-shadow:0 30px 68px -46px rgba(15,23,42,.16);transition:transform .22s ease,border-color .22s ease;}
.step:hover{transform:translateY(-3px);border-color:rgba(55,81,255,0.18);}
.step .idx{font-family:'IBM Plex Mono',monospace;font-size:0.96rem;color:var(--primary);display:block;margin-bottom:18px;}
.step h4{color:var(--text);font-size:1.08rem;margin-bottom:12px;}
.step p{font-size:0.96rem;color:var(--text-muted);line-height:1.75;}
.step::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);width:56px;height:4px;background:rgba(55,81,255,0.15);border-radius:999px;}

.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.why-item{background:rgba(255,255,255,0.94);border:1px solid rgba(15,23,42,0.1);border-radius:30px;padding:34px;box-shadow:0 34px 72px -48px rgba(15,23,42,.18);transition:transform .22s ease,box-shadow .22s ease;}
.why-item:hover{transform:translateY(-4px);box-shadow:0 44px 90px -46px rgba(15,23,42,.2);}
.why-item svg{width:28px;height:28px;color:var(--primary);margin-bottom:18px;}
.why-item h4{font-size:1.1rem;margin-bottom:12px;color:var(--text);}
.why-item p{font-size:0.96rem;color:var(--text-muted);line-height:1.75;}

.about-grid{display:grid;grid-template-columns:0.95fr 1.05fr;gap:56px;align-items:center;}
.about-card{background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);border-radius:32px;padding:40px;box-shadow:0 40px 86px -52px rgba(15,23,42,.18);}
.about-card .big{font-family:'Fraunces',serif;font-size:3.65rem;color:var(--primary);font-weight:800;line-height:0.98;}
.about-card .cap{font-family:'IBM Plex Mono',monospace;font-size:0.78rem;text-transform:uppercase;letter-spacing:.18em;color:var(--primary);margin-top:10px;}
.about-list{margin-top:32px;display:flex;flex-direction:column;gap:18px;}
.about-list li{display:flex;gap:16px;align-items:flex-start;font-size:0.98rem;color:var(--text-muted);line-height:1.85;}
.about-list svg{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:4px;}
.about-copy p{color:var(--text-muted);margin-bottom:18px;line-height:1.85;}

.area-hero{padding:88px 0;background:linear-gradient(135deg,#f7f4ff,#eff8ff);}
.area-hero::before{content:'';position:absolute;top:0;right:0;width:320px;height:320px;background:radial-gradient(circle, rgba(55,81,255,0.18), transparent 55%);pointer-events:none;}
.area-hero-grid{display:grid;grid-template-columns:1.35fr 0.65fr;gap:48px;align-items:center;position:relative;z-index:1;}
.area-summary{background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);border-radius:32px;padding:32px;box-shadow:0 32px 72px -48px rgba(15,23,42,.16);}
.area-summary strong{display:block;font-family:'Fraunces',serif;font-size:2.4rem;color:var(--primary);margin-bottom:10px;}
.area-summary span{display:block;font-size:1.1rem;color:var(--text);margin-bottom:16px;}
.area-summary p{color:var(--text-muted);line-height:1.75;margin:0;}

.coverage-section{padding:82px 0;}
.coverage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.coverage-card{background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);border-radius:28px;padding:30px;box-shadow:0 32px 72px -48px rgba(15,23,42,.16);}
.coverage-card>span{font-family:'IBM Plex Mono',monospace;color:var(--primary);font-size:.78rem;letter-spacing:.16em;}
.coverage-card h3{margin:14px 0 10px;color:var(--text);font-size:1.3rem;}
.coverage-card p{margin:0 0 10px;font-weight:600;color:var(--text);line-height:1.7;}
.coverage-card small{color:var(--text-muted);line-height:1.7;}

.area-info{background:rgba(239,244,255,0.86);padding:84px 0;}
.area-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;}
.area-info h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:18px;}
.area-info p{color:var(--text-muted);line-height:1.85;}
.area-checklist{background:rgba(255,255,255,0.96);border:1px solid rgba(15,23,42,0.1);padding:30px;border-radius:30px;box-shadow:0 32px 72px -48px rgba(15,23,42,.16);}
.area-checklist p{font-weight:700;color:var(--text);margin-bottom:18px;}
.area-checklist ul{margin:16px 0 26px;padding-left:18px;}
.area-checklist li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid rgba(15,23,42,0.08);color:var(--text-muted);line-height:1.8;}
.area-checklist li:last-child{border-bottom:none;}
.area-checklist li:before{content:'✓';position:absolute;left:0;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700;}
.area-checklist a.btn{width:100%;justify-content:center;}

.contact{background:linear-gradient(180deg,#f8fbff,#eef3ff);}
.contact-grid{display:grid;grid-template-columns:1fr minmax(320px,0.9fr);gap:40px;}
.contact-card{background:rgba(255,255,255,0.94);border:1px solid rgba(15,23,42,0.1);border-radius:32px;padding:32px;box-shadow:0 38px 80px -52px rgba(20,34,66,.22);}
.contact-row{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid rgba(15,23,42,0.08);}
.contact-row:last-child{border-bottom:none;}
.contact-row svg{width:24px;height:24px;color:var(--primary);flex-shrink:0;margin-top:4px;}
.lbl{font-family:'IBM Plex Mono',monospace;font-size:0.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--primary);margin-bottom:6px;}
.val{font-size:1rem;color:var(--text);font-weight:600;line-height:1.65;}
.map-frame{border-radius:32px;overflow:hidden;border:1px solid rgba(15,23,42,0.1);height:100%;min-height:380px;box-shadow:0 36px 75px -52px rgba(23,37,63,.24);}
.map-frame iframe{width:100%;height:100%;border:0;display:block;}

footer{background:#081223;color:#cfd9ef;padding:64px 0 24px;}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:36px;margin-bottom:42px;}
.foot-logo{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.footer-brand-logo{width:180px;height:auto;border-radius:18px;background:rgba(255,255,255,0.08);padding:12px;}
footer p.tag{font-size:0.95rem;color:rgba(255,255,255,0.78);max-width:320px;line-height:1.8;}
footer h5{font-family:'IBM Plex Mono',monospace;font-size:0.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);margin-bottom:18px;}
footer ul li{margin-bottom:12px;font-size:0.95rem;}
footer ul li a{color:rgba(255,255,255,0.8);transition:color .2s ease;}
footer ul li a:hover{color:#fff;}
.foot-bottom{border-top:1px solid rgba(255,255,255,0.08);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:0.9rem;color:rgba(255,255,255,0.62);}

.sticky-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:rgba(15,23,42,0.98);border-top:1px solid rgba(255,255,255,0.08);padding:14px 16px;box-shadow:0 -18px 44px -28px rgba(0,0,0,.38);gap:14px;}
.sticky-bar a{flex:1;justify-content:center;}
.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:70;background:rgba(15,23,42,0.98);backdrop-filter:blur(18px);border-top:1px solid rgba(255,255,255,0.08);padding:10px 14px;box-shadow:0 -18px 44px -28px rgba(0,0,0,.38);}
.mobile-bottom-nav .nav-item{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:16px;color:rgba(255,255,255,0.72);font-size:0.85rem;transition:background .2s ease,color .2s ease;}
.mobile-bottom-nav .nav-item svg{width:18px;height:18px;}
.mobile-bottom-nav .nav-item:hover,.mobile-bottom-nav .nav-item.active{background:rgba(255,255,255,0.1);color:#fff;}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;will-change:transform,opacity;}
.reveal.active{opacity:1;transform:translateY(0);}
.reveal-delay-1{transition-delay:0.08s;}
.reveal-delay-2{transition-delay:0.16s;}
.reveal-delay-3{transition-delay:0.24s;}

@media (max-width:1080px){.hero-grid{grid-template-columns:1fr;} .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .steps{grid-template-columns:repeat(2,minmax(0,1fr));} .why-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .about-grid{grid-template-columns:1fr;} .contact-grid{grid-template-columns:1fr;} .foot-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:860px){.wrap{padding:0 24px;} .nav{gap:16px;} .nav-actions{gap:10px;} nav.links{gap:20px;} .area-strip .wrap{justify-content:center;} .chips{justify-content:center;}}
@media (max-width:760px){nav.links{display:none;} .nav-call{display:none;} .burger{display:flex;} .mobile-menu.open{display:flex;} .services-grid{grid-template-columns:1fr;} .steps{grid-template-columns:1fr;} .why-grid{grid-template-columns:1fr;} .foot-grid{grid-template-columns:1fr;gap:28px;} section{padding:72px 0 84px;} .sticky-bar{display:flex;} body{padding-bottom:96px;} .ticket{transform:rotate(0);}.hero h1{font-size:clamp(2.4rem, 8vw, 3.6rem);} .hero p.lead{font-size:1rem;} .hero-ctas{flex-direction:column;align-items:stretch;}.hero-trust{justify-content:flex-start;} .theme-switch{display:none;}}
@media (max-width:520px){.wrap{padding:0 18px;} .nav{padding:14px 0;} .hero{padding:66px 0 74px;} .hero h1{font-size:2.4rem;} .hero p.lead{font-size:0.98rem;} .ticket{padding:28px 24px 24px;border-radius:22px;} .svc-card{padding:26px;} .about-card,.contact-card{padding:26px;} .area-strip .label{width:100%;justify-content:center;} .mobile-bottom-nav{display:flex;justify-content:space-between;} .mobile-bottom-nav .nav-item{flex:1;} .mobile-bottom-nav .nav-item:nth-child(n+2){margin-left:8px;}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto;animation:none!important;transition:none!important;}}

/* Premium glossy refresh */
:root{--teal-deep:#6d1738;--teal-mid:#b53c70;--turmeric:#f0b84b;--mint-soft:#fff1f6;--shadow:0 24px 60px -24px rgba(64,10,34,.35)}
body{background:linear-gradient(180deg,#fff 0%,#fff9fb 100%)}header{background:rgba(255,250,252,.9);box-shadow:0 8px 35px rgba(76,16,42,.08)}
.brand-logo{width:190px;height:62px;object-fit:contain;background:#050505;padding:3px 7px;border-radius:8px;box-shadow:0 8px 22px rgba(0,0,0,.18)}.btn{box-shadow:inset 0 1px rgba(255,255,255,.3);border-radius:8px}.btn-primary{background:linear-gradient(135deg,#7c2740,#b53c70)}.btn-gold{background:linear-gradient(135deg,#ffd475,#e9a72f)}
.svc-card{padding:0 0 25px;overflow:hidden;border-radius:14px;box-shadow:0 18px 42px -28px rgba(76,16,42,.45);background:linear-gradient(145deg,#fff,#fff8fb)}.svc-card .svc-icon,.svc-card h3,.svc-card .desc,.svc-card .svc-tags,.svc-card .svc-link{margin-left:24px;margin-right:24px}.svc-card .svc-icon{margin-top:22px}.svc-media{height:285px;margin:0 0 4px;border-radius:0;object-fit:cover;cursor:zoom-in;transition:transform .35s,filter .35s}.svc-card:hover .svc-media{transform:scale(1.025);filter:saturate(1.08)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.service-video{height:285px}
.media-viewer{width:min(1100px,94vw);max-height:92vh;border:0;padding:0;background:transparent;overflow:visible}.media-viewer::backdrop{background:rgba(10,4,7,.86);backdrop-filter:blur(8px)}.media-viewer img{display:block;max-width:100%;max-height:88vh;margin:auto;border-radius:14px;box-shadow:0 30px 80px #000}.media-close{position:absolute;right:-12px;top:-18px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#4d1730;font-size:28px;cursor:pointer}
.hero-carousel{position:relative;height:min(760px,78vh);min-height:600px;overflow:hidden;background:#160912;color:#fff}.carousel-track,.carousel-slide{position:absolute;inset:0}.carousel-slide{opacity:0;transition:opacity .8s}.carousel-slide.active{opacity:1}.carousel-slide img{width:100%;height:100%;object-fit:cover}.slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,4,9,.82),rgba(30,8,17,.28) 60%,rgba(10,2,5,.15))}.carousel-content{position:relative;z-index:3;height:100%;display:grid;grid-template-columns:1.05fr .75fr;gap:60px;align-items:center}.carousel-copy{max-width:650px}.carousel-copy h1{font-size:clamp(2.5rem,5vw,4.7rem);line-height:1.02;color:#fff;margin-bottom:20px;text-shadow:0 6px 30px rgba(0,0,0,.35)}.carousel-copy h1 em{color:var(--turmeric);font-style:normal}.carousel-copy p{font-size:1.12rem;color:#f9eaf0;max-width:560px}.btn-glass{color:#fff;border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.12);backdrop-filter:blur(12px)}
.carousel-service-card,.glossy-panel{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,241,246,.84));border:1px solid rgba(255,255,255,.75);box-shadow:0 30px 70px -25px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.9);backdrop-filter:blur(18px);border-radius:18px}.carousel-service-card{padding:30px;color:var(--ink)}.carousel-service-card h2{font-size:1.7rem;margin:10px 0 16px}.carousel-service-card li{padding:10px 0 10px 26px;border-bottom:1px solid var(--line);position:relative}.carousel-service-card li:before{content:'✓';position:absolute;left:2px;color:var(--teal-mid);font-weight:800}.carousel-service-card .btn{margin-top:20px}.carousel-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.25);color:#fff;font-size:34px;cursor:pointer}.carousel-arrow.prev{left:18px}.carousel-arrow.next{right:18px}.carousel-dots{position:absolute;z-index:5;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.5)}.carousel-dots button.active{width:30px;border-radius:10px;background:var(--turmeric)}
.booking-panel{margin-top:42px;padding:34px}.booking-form{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.booking-form label,.admin-auth label,.admin-filters label,.edit-grid label{display:grid;gap:7px;font-weight:600;color:var(--teal-deep)}.booking-form input,.booking-form select,.booking-form textarea,.admin-auth input,.admin-filters input,.admin-filters select,.edit-grid input,.edit-grid select,.edit-grid textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit}.form-wide{grid-column:1/-1}.form-message.success{color:#147a4c}.form-message.error{color:#b42318}
.admin-body{min-height:100vh;background:radial-gradient(circle at top right,#ffe3ed,#fff 45%,#f8eaf0)}.admin-shell{max-width:1400px;margin:auto;padding:50px 26px}.admin-auth{max-width:480px;margin:5vh auto;padding:36px}.admin-logo{width:220px;background:#000;border-radius:10px;margin:0 auto 28px}.admin-auth form{display:grid;gap:18px}.admin-back{display:block;margin-top:22px;color:var(--teal-mid)}.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.admin-filters{padding:20px;display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:14px;align-items:end}.admin-table-wrap{padding:18px;margin-top:22px;overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:1000px}.admin-table th,.admin-table td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}.status{padding:5px 9px;border-radius:20px;background:#f6dee4;white-space:nowrap}.status-completed{background:#d9f7e7;color:#147a4c}.status-cancelled{background:#fee2e2;color:#b42318}.table-btn{border:0;background:none;padding:6px;color:var(--teal-mid);cursor:pointer}.table-btn.delete{color:#b42318}.empty-state{text-align:center;padding:35px}.edit-dialog{width:min(760px,94vw);border:0;border-radius:16px;padding:30px}.edit-dialog::backdrop{background:rgba(20,5,12,.65)}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.edit-wide{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}
@media(max-width:900px){.carousel-content{grid-template-columns:1fr;gap:22px;padding-top:65px;padding-bottom:60px}.hero-carousel{height:auto;min-height:820px}.carousel-copy h1{font-size:2.7rem}.carousel-service-card{max-width:560px}.admin-filters{grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:1fr}.svc-media,.service-video{height:330px}}
@media(max-width:600px){.brand-logo{width:145px;height:50px}.hero-carousel{min-height:900px}.carousel-content{padding-left:24px;padding-right:24px}.carousel-copy h1{font-size:2.25rem}.carousel-service-card{padding:23px}.carousel-arrow{display:none}.booking-form,.edit-grid{grid-template-columns:1fr}.form-wide,.edit-wide{grid-column:auto}.admin-filters{grid-template-columns:1fr}.svc-media,.service-video{height:260px}.admin-topbar{align-items:flex-start;gap:15px}}

.brand-logo{width:190px;height:84px;object-fit:contain}
@media(max-width:600px){.brand-logo{width:135px;height:64px}}

/* Home carousel: single-column copy after removing overlay card */
.hero-carousel .carousel-content{grid-template-columns:1fr}
.hero-carousel .carousel-copy{max-width:720px}


/* Service navigation and detail page */
.home-service-link,.service-detail-trigger{cursor:pointer}.svc-card h3 a{color:inherit}.service-detail-link:hover,.svc-card h3 a:hover{color:var(--teal-mid)}
.service-more{display:inline-flex;margin:0 24px 13px;color:var(--teal-mid);font-weight:700;font-size:.88rem}.service-more:hover{text-decoration:underline}
.detail-header{position:relative}.detail-nav{display:flex;justify-content:space-between;align-items:center;padding:14px 0}.service-detail-main{padding:64px 0 90px;min-height:75vh}.detail-back{display:inline-flex;margin-bottom:24px;color:var(--teal-mid);font-weight:700}.service-detail-card{display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.detail-media{min-height:570px;background:#160912}.detail-media img,.detail-media video{width:100%;height:100%;min-height:570px;object-fit:cover;display:block}.detail-content{padding:48px}.detail-content h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.05;margin-bottom:18px}.detail-lead{font-size:1.08rem;color:var(--ink-soft);margin-bottom:30px}.detail-content h2{font-size:1.35rem;margin-bottom:12px}.detail-points{margin-bottom:30px}.detail-points li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--line)}.detail-points li:before{content:'✓';position:absolute;left:3px;color:var(--teal-mid);font-weight:800}.detail-actions{display:flex;gap:12px;flex-wrap:wrap}
.svc-card:target{outline:3px solid var(--turmeric);box-shadow:0 25px 60px -20px rgba(181,60,112,.55);animation:targetGlow 1.4s ease}@keyframes targetGlow{0%{transform:translateY(-8px)}100%{transform:none}}
@media(max-width:850px){.service-detail-card{grid-template-columns:1fr}.detail-media,.detail-media img,.detail-media video{min-height:360px;max-height:520px}.detail-content{padding:32px}}
@media(max-width:520px){.detail-nav{padding:10px 18px}.detail-nav .btn{padding:10px 12px;font-size:.8rem}.service-detail-main{padding-top:35px}.detail-content{padding:25px}.detail-media,.detail-media img,.detail-media video{min-height:280px}.detail-actions .btn{width:100%;justify-content:center}}

/* Clear admin customer columns */
.admin-table{min-width:1250px}.admin-table th{white-space:nowrap;color:var(--teal-deep);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.admin-table td{line-height:1.45}.date-cell{min-width:145px;white-space:nowrap}.contact-value{color:var(--teal-deep);font-weight:600;white-space:nowrap}.email-value{max-width:220px;display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.action-cell{white-space:nowrap}.admin-table tbody tr:hover{background:rgba(246,222,228,.35)}


/* Editable booking status */
.status-select{min-width:125px;padding:7px 28px 7px 10px;border:1px solid var(--line);border-radius:20px;background:#f6dee4;color:var(--ink);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}.status-select.status-contacted{background:#e3efff;color:#24558a}.status-select.status-booked{background:#fff1c9;color:#805b00}.status-select.status-completed{background:#d9f7e7;color:#147a4c}.status-select.status-cancelled{background:#fee2e2;color:#b42318}.status-select:disabled{opacity:.65;cursor:wait}


/* Final responsive overrides: one-slide carousel and compact mobile actions */
.hero-carousel{width:100%;overflow:hidden}.hero-carousel .carousel-track{position:absolute!important;inset:0!important;display:block!important}.hero-carousel .carousel-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important}.hero-carousel .carousel-slide:not(.active){opacity:0!important;pointer-events:none}.hero-carousel .carousel-slide.active{opacity:1!important}.hero-carousel .carousel-slide img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;display:block!important}
.sticky-bar{display:none!important}
@media(max-width:760px){body{padding-bottom:72px}.mobile-bottom-nav{display:flex!important;justify-content:center;gap:8px;padding:8px 12px}.mobile-bottom-nav .nav-item{flex:1;max-width:180px;padding:9px 10px;border-radius:10px;font-size:.8rem}.mobile-bottom-nav .nav-item:nth-child(n+2){margin-left:0}.hero-carousel{height:650px!important;min-height:650px!important}.hero-carousel .carousel-content{height:100%;padding-top:54px;padding-bottom:54px;align-items:center}.carousel-copy{max-width:560px}.carousel-copy h1{font-size:clamp(2rem,9vw,3rem)}}
@media(max-width:480px){.hero-carousel{height:590px!important;min-height:590px!important}.carousel-copy h1{font-size:2.05rem}.carousel-copy p{font-size:.95rem}.carousel-copy .hero-ctas{flex-direction:row;gap:9px}.carousel-copy .hero-ctas .btn{width:auto;flex:0 1 auto;padding:10px 13px;font-size:.78rem}.mobile-bottom-nav .nav-item{padding:8px 7px;font-size:.74rem}}
