*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --o:#FF6A00;--o-dark:#E05500;--o-soft:#FFF7F1;
  --dark:#141414;--mid:#5B5B5B;--line:#ECECEC;--light:#FFFAF6;--white:#fff;
  --r:8px;--shadow:0 2px 12px rgba(0,0,0,.08);--max:1180px;
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.7;color:var(--dark);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--o-dark);text-decoration:none}
h1,h2,h3,h4{line-height:1.25;font-weight:800;color:var(--dark)}
h1{font-size:clamp(1.7rem,4.4vw,2.85rem);letter-spacing:-.02em}
h2{font-size:clamp(1.35rem,3vw,2.05rem);letter-spacing:-.015em}
h3{font-size:clamp(1.05rem,1.9vw,1.25rem)}
p{margin-bottom:1rem}
.container{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.narrow{max-width:820px;margin-left:auto;margin-right:auto}
section{padding:3.25rem 0}
.bg-light{background:var(--light)}
.center{text-align:center}
.eyebrow{display:inline-block;background:var(--o-soft);color:var(--o-dark);font-weight:700;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem 1rem;border-radius:100px;margin-bottom:1rem}
.sec-intro{color:var(--mid);max-width:760px}
.center .sec-intro{margin-left:auto;margin-right:auto}

/* buttons */
.btn{display:inline-block;background:var(--o);color:#fff!important;padding:.85rem 1.75rem;border-radius:var(--r);font-weight:700;font-size:1rem;transition:background .2s,transform .12s;border:2px solid var(--o)}
.btn:hover{background:var(--o-dark);border-color:var(--o-dark);transform:translateY(-2px)}
.btn-outline{background:#fff;color:var(--o-dark)!important;border:2px solid var(--o)}
.btn-outline:hover{background:var(--o-soft);transform:translateY(-2px)}
.btn-lg{padding:1rem 2.1rem;font-size:1.05rem}
.btn-white{background:#fff;color:var(--o-dark)!important;border-color:#fff}
.btn-white:hover{background:var(--dark);color:#fff!important;border-color:var(--dark)}

/* nav */
.navbar{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:var(--shadow)}
.nav-container{max-width:var(--max);margin:0 auto;padding:0 1.25rem;display:flex;align-items:center;gap:1rem;height:68px}
.nav-logo{font-weight:800;font-size:1.12rem;color:var(--dark);flex-shrink:0;line-height:1.15}
.nav-logo span{color:var(--o);display:block;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
.nav-links{display:none;list-style:none;margin-left:auto}
.nav-links>li>a{display:block;padding:0 .95rem;line-height:68px;color:var(--dark);font-weight:600;font-size:.94rem;white-space:nowrap}
.nav-links>li>a:hover{color:var(--o-dark)}
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:#fff;box-shadow:0 8px 30px rgba(0,0,0,.12);min-width:230px;border-radius:0 0 var(--r) var(--r);border-top:3px solid var(--o);list-style:none}
.dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu{display:block}
.dropdown-menu li a{display:block;line-height:1.4;padding:.85rem 1.2rem;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--dark);font-weight:500}
.dropdown-menu li:last-child a{border-bottom:none}
.dropdown-menu li a:hover{background:var(--o-soft);color:var(--o-dark)}
.nav-cta{display:none;margin-left:1rem;padding:.6rem 1.15rem;font-size:.92rem}
.hamburger{margin-left:auto;background:none;border:1px solid var(--line);border-radius:var(--r);font-size:1.35rem;line-height:1;padding:.4rem .65rem;cursor:pointer;color:var(--dark)}
.nav-links.open{display:block;position:absolute;top:68px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:var(--shadow);padding:.5rem 0}
.nav-links.open>li>a{line-height:1.4;padding:.85rem 1.5rem}
.nav-links.open .dropdown-menu{display:block;position:static;box-shadow:none;border-top:none;border-left:3px solid var(--o);margin:0 1.5rem .5rem;border-radius:0}

/* hero */
.hero{position:relative;padding:3.5rem 0 3rem;text-align:center;border-bottom:1px solid var(--line);overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:-8%;background-image:url('../images/hero-lahore.jpg');background-size:cover;background-position:center 62%;z-index:-2;animation:orbit 16s linear infinite;will-change:transform}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.66)}
@keyframes orbit{
  0%{transform:scale(1.14) translate3d(2.2%,0,0) rotate(0.6deg)}
  25%{transform:scale(1.14) translate3d(0,2.2%,0) rotate(0deg)}
  50%{transform:scale(1.14) translate3d(-2.2%,0,0) rotate(-0.6deg)}
  75%{transform:scale(1.14) translate3d(0,-2.2%,0) rotate(0deg)}
  100%{transform:scale(1.14) translate3d(2.2%,0,0) rotate(0.6deg)}
}
@media(prefers-reduced-motion:reduce){.hero-bg{animation:none}}
.hero h1{max-width:900px;margin:0 auto}
.hero h1 em{color:var(--o);font-style:normal}
.hero-sub{color:#333;font-size:1.06rem;max-width:720px;margin:1.1rem auto 1.6rem;font-weight:500}
.hero .eyebrow{background:#fff;border:1.5px solid var(--o);color:var(--o-dark)}
.hero-ctas{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.hero-trust{display:flex;gap:1.25rem;justify-content:center;flex-wrap:wrap;margin-top:1.6rem;color:#3D3D3D;font-size:.9rem;font-weight:600}
.hero-trust span{background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.9);padding:.35rem .85rem;border-radius:100px;color:#333}
.hero .container{position:relative;z-index:1}

/* trust bar (marquee) */
.trust-bar{background:var(--o);color:#fff;overflow:hidden;padding:.85rem 0;white-space:nowrap}
.trust-track{display:inline-flex;gap:2.75rem;animation:marquee 38s linear infinite}
.trust-bar:hover .trust-track{animation-play-state:paused}
.trust-item{font-weight:600;font-size:.94rem}
.trust-item::before{content:"✓ ";opacity:.85}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.trust-track{animation:none}}

/* pricing */
.pgrid{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:1.75rem}
.pcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.6rem 1.25rem;text-align:center;transition:border-color .2s,transform .15s}
.pcard:hover{border-color:var(--o);transform:translateY(-2px)}
.pcard.feat{border:2px solid var(--o);background:var(--o-soft)}
.pbadge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--o);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.09em;padding:.25rem .8rem;border-radius:100px;white-space:nowrap}
.pname{font-size:.95rem;font-weight:700;color:var(--mid);margin-bottom:.5rem}
.pprice{font-size:1.85rem;font-weight:800;color:var(--o-dark);letter-spacing:-.02em;line-height:1.1}
.pprice.sm{font-size:1.15rem}
.pold{display:block;font-size:.85rem;color:#9AA1AC;font-weight:500;text-decoration:line-through}
.pmeta{display:block;font-size:.82rem;color:var(--mid);margin-top:.15rem}
.ptime{display:inline-block;margin-top:.7rem;font-size:.8rem;color:var(--mid);background:var(--light);padding:.25rem .75rem;border-radius:100px;border:1px solid var(--line)}
.pcard.feat .ptime{background:#fff}
.pchips{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1.5rem}
.chip{background:#fff;border:1px solid var(--line);border-radius:100px;padding:.5rem 1rem;font-size:.87rem;font-weight:600;color:var(--dark)}
.chip b{color:var(--o-dark)}
.rate-caption{text-align:center;font-size:.86rem;color:var(--mid);margin-top:1.1rem;font-style:italic}

/* generic cards */
.grid{display:grid;gap:1.1rem;grid-template-columns:1fr;margin-top:1.75rem}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.6rem;transition:border-color .2s,box-shadow .2s}
.card:hover{border-color:var(--o);box-shadow:var(--shadow)}
.card h3{margin-bottom:.65rem}
.card p:last-child{margin-bottom:0}
.card p{font-size:.97rem;color:var(--mid)}
.card .icon{width:42px;height:42px;border-radius:10px;background:var(--o-soft);color:var(--o-dark);display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:.85rem;font-weight:700}

/* brands */
.brand-feat{position:relative;background:linear-gradient(135deg,var(--o-soft) 0%,#fff 62%);border:1px solid #F6D9C3;border-radius:14px;padding:1.75rem 1.5rem;margin-top:1.75rem;overflow:hidden}
.brand-feat::after{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--o)}
.brand-feat .tagline{display:inline-block;background:var(--o);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.09em;padding:.25rem .75rem;border-radius:100px;margin-bottom:.7rem}
.brand-feat h3{margin-bottom:.7rem}
.brand-feat p{color:var(--mid);font-size:.97rem}
.brand-feat p:last-child{margin-bottom:0}
.brand-head{display:flex;align-items:center;gap:1rem;margin:2.25rem 0 1.1rem}
.brand-head h3{white-space:nowrap;font-size:1.1rem}
.brand-head::after{content:"";flex:1;height:1px;background:var(--line)}
.brand-list{display:grid;gap:1rem;grid-template-columns:1fr}
.brand-item{background:#fff;border:1px solid var(--line);border-top:3px solid var(--o);border-radius:10px;padding:1.25rem;transition:border-color .2s,box-shadow .2s}
.brand-item:hover{box-shadow:var(--shadow)}
.brand-item .bname{display:block;font-weight:800;font-size:1rem;color:var(--dark);margin-bottom:.35rem}
.brand-item p{margin:0;font-size:.93rem;color:var(--mid)}
.brand-more{background:var(--light);border:1px solid var(--line);border-radius:12px;padding:1.15rem 1.4rem;margin-top:1.5rem;font-size:.93rem;color:var(--mid);text-align:center}

/* symptoms */
.sym-grid{display:grid;gap:.8rem;grid-template-columns:1fr;margin-top:1.75rem}
.sym{display:flex;gap:.9rem;background:#fff;border:1px solid var(--line);border-radius:10px;padding:1.05rem 1.15rem;transition:border-color .2s}
.sym:hover{border-color:var(--o)}
.sym .n{flex-shrink:0;width:26px;height:26px;border-radius:6px;background:var(--o-soft);color:var(--o-dark);font-size:.82rem;font-weight:700;display:flex;align-items:center;justify-content:center}
.sym b{display:block;font-size:.98rem;margin-bottom:.15rem}
.sym span{color:var(--mid);font-size:.93rem}

/* areas */
.area-feat{display:grid;gap:1.1rem;grid-template-columns:1fr;margin-top:1.75rem}
.area-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6rem;position:relative;transition:border-color .2s,box-shadow .2s}
.area-card:hover{border-color:var(--o);box-shadow:var(--shadow)}
.area-card .pin{width:38px;height:38px;border-radius:10px;background:var(--o-soft);color:var(--o-dark);display:flex;align-items:center;justify-content:center;font-size:1.05rem;margin-bottom:.8rem}
.area-card h3{margin-bottom:.7rem}
.area-card p{font-size:.96rem;color:var(--mid)}
.area-card p:last-child{margin-bottom:0}
.zone-head{display:flex;align-items:center;gap:1rem;margin:2.25rem 0 1.1rem}
.zone-head h3{white-space:normal;font-size:1.1rem}
.zone-head::after{content:"";flex:1;height:1px;background:var(--line)}
.zone-grid{display:grid;gap:1rem;grid-template-columns:1fr}
.zone{background:#fff;border:1px solid var(--line);border-left:3px solid var(--o);border-radius:0 10px 10px 0;padding:1.15rem 1.25rem;transition:box-shadow .2s}
.zone:hover{box-shadow:var(--shadow)}
.zone .zname{display:block;font-weight:800;font-size:.98rem;color:var(--dark);margin-bottom:.3rem}
.zone p{margin:0;font-size:.93rem;color:var(--mid)}
.also{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.75rem 1.5rem;margin-top:2rem;text-align:center}
.also-label{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--mid);margin-bottom:1.1rem}
.area-chips{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}
.area-chips span{background:var(--light);border:1px solid var(--line);border-radius:100px;padding:.45rem 1rem;font-size:.86rem;color:var(--dark);font-weight:500;transition:background .2s,border-color .2s,color .2s;cursor:default}
.area-chips span:hover{background:var(--o-soft);border-color:var(--o);color:var(--o-dark)}
.area-note{margin:1.5rem auto 0;padding-top:1.25rem;border-top:1px dashed var(--line);font-weight:700;font-size:1rem;max-width:620px}
.area-note a{color:var(--o-dark);white-space:nowrap}

/* checklist table */
.check-list{margin-top:1.75rem;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.check-row{display:flex;align-items:center;gap:.9rem;padding:1rem 1.15rem;border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap}
.check-row:last-child{border-bottom:none}
.check-row .q{flex:1 1 240px;font-weight:600;font-size:.97rem}
.check-row .n{width:24px;height:24px;border-radius:50%;background:var(--light);border:1px solid var(--line);font-size:.78rem;font-weight:700;color:var(--mid);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.check-row .a{color:#15803D;font-weight:700;font-size:.9rem;white-space:nowrap}

/* booking */
.book-grid{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:1.75rem}
.book{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.5rem;transition:border-color .2s}
.book:hover{border-color:var(--o)}
.book .icon{font-size:1.5rem;margin-bottom:.6rem}
.book h3{font-size:1.05rem;margin-bottom:.4rem}
.book p{font-size:.95rem;color:var(--mid);margin-bottom:0}

/* faq */
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:1rem 1.15rem;margin-bottom:.7rem}
.faq details[open]{border-color:var(--o)}
.faq summary{cursor:pointer;font-weight:700;list-style:none;font-size:.99rem;padding-right:1.75rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:-2px;color:var(--o);font-size:1.35rem;line-height:1;font-weight:600}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--mid);margin:.6rem 0 0;font-size:.96rem}

/* inline cta */
.cta-inline{background:var(--o-soft);border:1px solid #F6D5BC;border-radius:12px;padding:1.15rem 1.4rem;margin-top:1.75rem;font-weight:700;text-align:center;font-size:1rem}
.cta-inline a{color:var(--o-dark)}
.cta-band{background:var(--o);color:#fff;border-radius:14px;padding:2.5rem 1.5rem;text-align:center}
.cta-band h2{color:#fff;margin-bottom:.5rem}
.cta-band p{opacity:.95;margin-bottom:1.4rem}

/* footer */
footer{background:var(--dark);color:#B9C0CC;padding:3rem 0 6.5rem;font-size:.94rem}
footer h4{color:#fff;font-size:1rem;margin-bottom:.85rem}
footer a{color:#B9C0CC}
footer a:hover{color:var(--o)}
footer ul{list-style:none;line-height:2}
.fgrid{display:grid;gap:1.75rem;grid-template-columns:1fr}
.fbottom{border-top:1px solid #232B39;margin-top:2rem;padding-top:1.25rem;font-size:.86rem;color:#7C8698}

/* sticky call bar */
.callbar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 -2px 12px rgba(0,0,0,.09);padding:.6rem 1rem;display:flex;gap:.75rem;align-items:center;justify-content:center;z-index:900}
.callbar p{margin:0;font-size:.92rem;font-weight:600;display:none}
.callbar .btn{flex:1;text-align:center;padding:.8rem 1rem}

/* reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ---- tablet ---- */
@media(min-width:640px){
  section{padding:4rem 0}
  .pgrid{grid-template-columns:repeat(2,1fr)}
  .grid{grid-template-columns:repeat(2,1fr)}
  .sym-grid{grid-template-columns:repeat(2,1fr)}
  .brand-list{grid-template-columns:repeat(2,1fr)}
  .area-feat{grid-template-columns:repeat(2,1fr)}
  .zone-grid{grid-template-columns:repeat(2,1fr)}
  .book-grid{grid-template-columns:repeat(3,1fr)}
  .book-grid.two{grid-template-columns:repeat(2,1fr);max-width:820px;margin-left:auto;margin-right:auto}
  .fgrid{grid-template-columns:repeat(2,1fr)}
  .callbar p{display:block}
  .callbar .btn{flex:0 0 auto}
}
/* ---- desktop ---- */
@media(min-width:1024px){
  .hamburger{display:none}
  .nav-links{display:flex}
  .nav-cta{display:inline-block}
  .pgrid{grid-template-columns:repeat(5,1fr)}
  .grid.g3{grid-template-columns:repeat(3,1fr)}
  .brand-list{grid-template-columns:repeat(4,1fr)}
  .zone-grid{grid-template-columns:repeat(4,1fr)}
  .area-card{padding:1.9rem}
  .brand-feat{padding:2rem 2.25rem}
  .brand-feat .feat-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem}
  .brand-feat .feat-cols p{margin-bottom:0}
  .fgrid{grid-template-columns:2fr 1fr 1fr 1.2fr}
  footer{padding-bottom:3rem}
  .callbar{display:none}
  .hero{padding:4.5rem 0 3.75rem}
}

/* ===== inner pages (about / contact) ===== */
.page-hero{background:linear-gradient(180deg,var(--o-soft) 0%,#fff 100%);padding:2.75rem 0 2.5rem;text-align:center;border-bottom:1px solid var(--line)}
.page-hero h1{max-width:820px;margin:0 auto}
.page-hero p{color:var(--mid);max-width:680px;margin:1rem auto 0}
.split{display:grid;gap:1.75rem;grid-template-columns:1fr;align-items:start}
.owner{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.75rem;position:relative}
.owner::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--o);border-radius:14px 14px 0 0}
.owner .who{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem}
.owner .avatar{width:60px;height:60px;border-radius:50%;background:var(--o-soft);color:var(--o-dark);display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:800;flex-shrink:0;border:2px solid var(--o)}
.owner .who h3{margin:0;font-size:1.15rem}
.owner .who span{display:block;font-size:.88rem;color:var(--mid);font-weight:600}
.owner p{color:var(--mid);font-size:.97rem}
.owner p:last-child{margin-bottom:0}
.factlist{list-style:none;margin-top:1.25rem;border-top:1px solid var(--line);padding-top:1.1rem}
.factlist li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px dashed var(--line);font-size:.93rem}
.factlist li:last-child{border-bottom:none}
.factlist b{color:var(--dark)}
.factlist span{color:var(--mid);text-align:right}
.contact-grid{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:1.75rem}
.ccard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.75rem;text-align:center;transition:border-color .2s,box-shadow .2s}
.ccard:hover{border-color:var(--o);box-shadow:var(--shadow)}
.ccard .ic{width:52px;height:52px;border-radius:14px;background:var(--o-soft);color:var(--o-dark);display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin:0 auto .9rem}
.ccard h3{margin-bottom:.35rem}
.ccard .big{font-size:1.3rem;font-weight:800;color:var(--o-dark);letter-spacing:-.01em;display:block;margin-bottom:.5rem}
.ccard p{color:var(--mid);font-size:.94rem}
.hours{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.94rem}
.hours td{padding:.65rem .25rem;border-bottom:1px solid var(--line);color:var(--mid)}
.hours td:last-child{text-align:right;font-weight:700;color:var(--dark)}
.hours tr:last-child td{border-bottom:none}
.nap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.75rem}
.nap h3{margin-bottom:.9rem}
.nap p{color:var(--mid);font-size:.96rem}
.todo{background:#FFFBEB;border:1px dashed #F0C000;border-radius:10px;padding:.9rem 1.1rem;font-size:.88rem;color:#8A6100;margin:1rem 0}
@media(min-width:640px){.contact-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.split{grid-template-columns:1.35fr 1fr}.contact-grid{grid-template-columns:repeat(2,1fr);max-width:860px;margin-left:auto;margin-right:auto}}

/* ===== incidents ===== */
.inc-grid{display:grid;gap:1.1rem;grid-template-columns:1fr;margin-top:1.75rem}
.inc{background:#fff;border:1px solid var(--line);border-left:4px solid #C62828;border-radius:0 12px 12px 0;padding:1.5rem;transition:box-shadow .2s}
.inc:hover{box-shadow:var(--shadow)}
.inc .when{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#C62828;background:#FDECEC;padding:.25rem .7rem;border-radius:100px;margin-bottom:.7rem}
.inc h3{font-size:1.05rem;margin-bottom:.55rem}
.inc p{font-size:.95rem;color:var(--mid)}
.inc .src{display:inline-block;font-size:.86rem;font-weight:600;margin-top:.35rem}
.inc .src::after{content:" ↗";font-size:.8rem}
.inc .lesson{margin-top:.9rem;padding-top:.9rem;border-top:1px dashed var(--line);font-size:.93rem;color:var(--dark)}
.inc .lesson b{color:#C62828}
.disclaim{font-size:.85rem;color:var(--mid);text-align:center;margin-top:1.5rem;font-style:italic}
@media(min-width:1024px){.inc-grid{grid-template-columns:repeat(3,1fr)}}

