/*
Theme Name: Advocate Krishan Murari Maheshwari
Theme URI: https://advocatekrishanmurarimaheshwari.com
Author: Advocate KMM
Author URI: https://advocatekrishanmurarimaheshwari.com
Description: A premium legal law firm WordPress theme for Advocate Krishan Murari Maheshwari, Agra. Featuring elegant gold & dark design, smooth animations, and full practice area pages.
Version: 1.0.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: advocate-kmm
Tags: law-firm, legal, attorney, advocacy, professional, dark, gold
*/

/* ============================================================
   ROOT & RESET
============================================================ */
:root {
  --gold:   #C9973A;
  --gold2:  #E8C36A;
  --gold3:  #8B6914;
  --dark:   #0D0D0D;
  --dark2:  #141414;
  --dark3:  #1C1C1C;
  --cream:  #F5F0E8;
  --cream2: #EDE5D5;
  --text:   #3A3530;
  --textl:  #6B6258;
  --white:  #FFFFFF;
  --border: rgba(201,151,58,0.25);
  --borderl:rgba(201,151,58,0.12);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden;max-width:100%}
body{font-family:'Lato',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden;max-width:100%}

/* SVG Icon helper */
.svg-icon{display:inline-block;width:1em;height:1em;vertical-align:middle;flex-shrink:0}

/* ============================================================
   HIDDEN SVG DEFS
============================================================ */
.svg-defs-hidden{display:none}

/* ============================================================
   CUSTOM CURSOR
============================================================ */
.cursor{width:10px;height:10px;background:var(--gold);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}
.cursor-ring{width:34px;height:34px;border:1.5px solid rgba(201,151,58,0.6);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:opacity .2s}
@media(max-width:768px){.cursor,.cursor-ring{display:none}}

/* ============================================================
   LOADER
============================================================ */
#loader{position:fixed;inset:0;background:var(--dark);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .7s,visibility .7s;overflow:hidden}
#loader.hidden{opacity:0;visibility:hidden;pointer-events:none}
.loader-logo{text-align:center;width:100%;padding:0 20px}
.loader-logo-text{font-family:'Cinzel',serif;font-size:22px;color:var(--gold2);letter-spacing:3px;animation:pulse 1.5s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.5;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}
.loader-bar{width:200px;height:2px;background:rgba(255,255,255,.08);margin-top:30px;border-radius:2px;overflow:hidden}
.loader-fill{height:100%;background:linear-gradient(90deg,var(--gold3),var(--gold),var(--gold2));animation:loadFill 1.6s ease forwards}
@keyframes loadFill{from{width:0}to{width:100%}}
.loader-txt{color:rgba(255,255,255,.4);font-size:10px;letter-spacing:5px;text-transform:uppercase;margin-top:18px;font-family:'Cinzel',serif;animation:blink 1.5s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:.3}50%{opacity:.8}}

/* ============================================================
   REVEAL ANIMATIONS
============================================================ */
.reveal,.reveal-l,.reveal-r,.reveal-s{opacity:0;transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}
.reveal{transform:translateY(36px)}
.reveal-l{transform:translateX(-48px)}
.reveal-r{transform:translateX(48px)}
.reveal-s{transform:scale(.92)}
.reveal.vis,.reveal-l.vis,.reveal-r.vis,.reveal-s.vis{opacity:1;transform:none}
.d1{transition-delay:.1s!important}.d2{transition-delay:.2s!important}.d3{transition-delay:.3s!important}
.d4{transition-delay:.4s!important}.d5{transition-delay:.5s!important}.d6{transition-delay:.6s!important}

/* ============================================================
   CONTAINER & LAYOUT
============================================================ */
.container{max-width:1200px;margin:0 auto;padding:0 30px}

/* ============================================================
   TOPBAR
============================================================ */
.topbar{background:var(--dark);border-bottom:1px solid var(--border);padding:9px 0;font-size:12.5px}
.topbar .container{display:flex;justify-content:space-between;align-items:center}
.tb-left,.tb-right{display:flex;gap:22px;align-items:center}
.tb-link{display:flex;align-items:center;gap:7px;color:rgba(255,255,255,.6);text-decoration:none;transition:color .3s}
.tb-link:hover{color:var(--gold2)}
.tb-link .svg-icon{width:13px;height:13px;color:var(--gold)}
.tb-sep{width:1px;height:14px;background:rgba(255,255,255,.1)}
@media(max-width:768px){.topbar{display:none}}

/* ============================================================
   HEADER / NAVIGATION
============================================================ */
#masthead{background:rgba(255,255,255,.97);backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--borderl),0 4px 30px rgba(0,0,0,.06);position:sticky;top:0;z-index:1000;transition:all .4s}
#masthead.scrolled{background:rgba(13,13,13,.97);box-shadow:0 1px 0 var(--border),0 8px 40px rgba(0,0,0,.3)}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.site-branding{display:flex;align-items:center;gap:14px;text-decoration:none}
.site-branding:hover .custom-logo{transform:scale(1.04)}
.custom-logo{height:62px;width:auto;transition:transform .4s;display:block}
.site-title-wrap .site-title{font-family:'Cinzel',serif;font-size:12.5px;font-weight:600;color:var(--dark);letter-spacing:.5px;line-height:1.4;transition:color .4s;text-decoration:none;display:block}
#masthead.scrolled .site-title{color:var(--white)}
.site-tagline{font-size:9.5px;color:var(--gold);letter-spacing:2.5px;text-transform:uppercase;margin-top:2px;display:block}

/* Nav menu */
#primary-menu{display:flex;list-style:none;gap:2px;align-items:center}
#primary-menu > li > a{display:flex;align-items:center;gap:5px;padding:8px 13px;font-family:'Cinzel',serif;font-size:10.5px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--dark);text-decoration:none;cursor:pointer;transition:color .3s}
#masthead.scrolled #primary-menu > li > a{color:rgba(255,255,255,.8)}
#primary-menu > li > a:hover,#primary-menu > li.current-menu-item > a{color:var(--gold)}
/* Dropdown */
#primary-menu li{position:relative}
#primary-menu .sub-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;background:var(--dark2);border:1px solid var(--border);border-top:2px solid var(--gold);min-width:240px;z-index:200;list-style:none;animation:ddIn .25s cubic-bezier(.16,1,.3,1)}
@keyframes ddIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
#primary-menu li:hover > .sub-menu{display:block}
#primary-menu .sub-menu li a{display:block;padding:11px 20px;font-family:'Lato',sans-serif;font-size:13px;color:rgba(255,255,255,.65);border-bottom:1px solid rgba(255,255,255,.05);transition:all .25s;text-decoration:none}
#primary-menu .sub-menu li:last-child a{border-bottom:none}
#primary-menu .sub-menu li a:hover{color:var(--gold2);padding-left:28px;background:rgba(201,151,58,.06)}
.nav-cta > a{background:var(--gold)!important;color:var(--dark)!important;border-radius:2px;margin-left:8px;font-weight:700!important;padding:9px 20px!important;transition:all .3s!important}
.nav-cta > a:hover{background:var(--gold2)!important;transform:translateY(-1px);box-shadow:0 8px 25px rgba(201,151,58,.35)!important}
/* Mobile */
.menu-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--dark);padding:4px}
#masthead.scrolled .menu-toggle{color:var(--white)}
@media(max-width:600px){
  #primary-menu{display:none}
  .menu-toggle{display:flex;align-items:center}
  #primary-menu.mobile-open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--dark2);padding:16px;gap:4px;align-items:stretch}
  #primary-menu.mobile-open > li > a{color:rgba(255,255,255,.8);padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
  #primary-menu .sub-menu{position:static;display:block!important;border:none;background:rgba(255,255,255,.04);margin-top:4px}
}

/* ============================================================
   BUTTONS
============================================================ */
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 34px;font-family:'Cinzel',serif;font-size:10.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:all .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;text-decoration:none;border:none}
.btn .svg-icon{width:16px;height:16px}
.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:rgba(255,255,255,.12);transition:left .4s;pointer-events:none}
.btn:hover::before{left:100%}
.btn-gold{background:var(--gold);color:var(--dark);border:1.5px solid var(--gold);box-shadow:0 4px 20px rgba(201,151,58,.28)}
.btn-gold:hover{background:var(--gold2);border-color:var(--gold2);transform:translateY(-2px);box-shadow:0 12px 40px rgba(201,151,58,.42)}
.btn-white-o{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.45)}
.btn-white-o:hover{border-color:var(--white);background:rgba(255,255,255,.1);transform:translateY(-2px)}
.btn-gold-o{background:transparent;color:var(--gold);border:1.5px solid var(--gold)}
.btn-gold-o:hover{background:var(--gold);color:var(--dark);transform:translateY(-2px)}
.btn-dark{background:var(--dark);color:var(--white);border:1.5px solid var(--dark)}
.btn-dark:hover{background:var(--dark3);transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.3)}

/* ============================================================
   EYEBROW / SECTION LABELS
============================================================ */
.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.eyebrow::before{content:'';flex:0 0 28px;height:1px;background:var(--gold)}
.eyebrow span{font-size:10px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--gold)}
.section-title{font-family:'Cormorant Garamond',serif;font-size:48px;font-weight:600;line-height:1.15;color:var(--dark);margin-bottom:18px}
.section-title span{color:var(--gold);font-style:italic}
.section-title.light{color:var(--white)}
.section-desc{font-size:16px;line-height:1.82;color:var(--textl);max-width:580px}
.section-desc.light{color:rgba(255,255,255,.62)}

/* ============================================================
   HERO
============================================================ */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;background:var(--dark);overflow:hidden}
.hero-bg{position:absolute;inset:0;background-image:url('images/hero-bg.webp');background-size:cover;background-position:center 20%;opacity:.28;transform:scale(1.05);animation:bgFloat 22s ease-in-out infinite alternate}
@keyframes bgFloat{from{transform:scale(1.05) translateX(0)}to{transform:scale(1.1) translateX(-2%)}}
.hero-ov{position:absolute;inset:0;background:linear-gradient(108deg,rgba(13,13,13,.94) 0%,rgba(13,13,13,.68) 52%,rgba(13,13,13,.38) 100%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(201,151,58,.04) 1px,transparent 1px),linear-gradient(rgba(201,151,58,.04) 1px,transparent 1px);background-size:60px 60px;pointer-events:none}
.hero-inner{position:relative;z-index:5;width:100%;display:grid;grid-template-columns:1fr 460px;align-items:center;gap:20px;padding:100px 0 60px;min-height:100vh}
.hero-content{max-width:100%}
.hero-eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:22px;opacity:0;animation:slideUp .8s .4s cubic-bezier(.16,1,.3,1) forwards}
.hero-line{width:38px;height:1px;background:var(--gold)}
.hero-eyetxt{font-size:10px;letter-spacing:5px;text-transform:uppercase;color:var(--gold2);font-family:'Lato',sans-serif;font-weight:700}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:72px;font-weight:700;line-height:1.08;color:var(--white);margin-bottom:26px;opacity:0;animation:slideUp 1s .6s cubic-bezier(.16,1,.3,1) forwards}
.hero h1 .gold{color:var(--gold2);font-style:italic}
.hero-desc{font-size:16px;line-height:1.82;color:rgba(255,255,255,.72);margin-bottom:40px;max-width:520px;opacity:0;animation:slideUp 1s .8s cubic-bezier(.16,1,.3,1) forwards}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:slideUp 1s 1s cubic-bezier(.16,1,.3,1) forwards}
@keyframes slideUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-stats{display:flex;gap:46px;margin-top:58px;padding-top:38px;border-top:1px solid rgba(255,255,255,.1);opacity:0;animation:slideUp 1s 1.2s cubic-bezier(.16,1,.3,1) forwards;flex-wrap:wrap}
.hero-stat-num{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:700;color:var(--gold2);line-height:1;display:block}
.hero-stat-lbl{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.48);margin-top:5px;display:block}
/* Lawyer image - right column */
.hero-img-col{position:relative;display:flex;align-items:center;justify-content:center;height:100%;opacity:0;animation:heroPic 1.2s .5s cubic-bezier(.16,1,.3,1) forwards}
@keyframes heroPic{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:translateX(0)}}
.hero-lawyer{position:relative;width:100%;max-height:620px;height:620px;object-fit:contain;object-position:center bottom;display:block;filter:drop-shadow(-10px 0 40px rgba(0,0,0,.7))}
.hero-badge{display:none}
.hero-lawyer-old{display:none}
.scroll-ind{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:6;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;animation:slideUp .8s 1.8s ease forwards}
.scroll-ind span{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.38)}
@media(max-width:1100px){
  .hero h1{font-size:54px}
  .hero-inner{grid-template-columns:1fr 340px;gap:30px}
}
@media(max-width:768px){
  .hero h1{font-size:38px}
  .hero-inner{grid-template-columns:1fr;padding:90px 0 60px}
  .hero-img-col{display:none}
  .hero-stats{gap:0;margin-top:36px;padding-top:24px;display:grid;grid-template-columns:1fr 1fr}
  .hero-stats > div{padding:16px 12px;border:1px solid rgba(255,255,255,.06)}
  .hero-stat-num{font-size:32px}
  .hero-btns{flex-direction:column;gap:10px}
  .hero-btns .btn{width:100%;justify-content:center}
}

/* ============================================================
   MARQUEE
============================================================ */
.marquee{background:var(--gold);padding:13px 0;overflow:hidden;white-space:nowrap}
.m-track{display:inline-flex;animation:mq 32s linear infinite}
.m-track span{font-family:'Cinzel',serif;font-size:10.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--dark);padding:0 36px}
.m-dot{color:rgba(13,13,13,.3);font-size:18px;line-height:1;padding:0!important}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   ABOUT SECTION
============================================================ */
.about-sec{padding:115px 0;background:var(--white)}
.about-grid{display:grid;grid-template-columns:0.9fr 1fr;gap:90px;align-items:center}
.about-img-wrap{position:relative}
.about-img-frame{position:relative;border-radius:4px;overflow:hidden}
.about-img-frame img{width:100%;height:560px;object-fit:cover;object-position:top;display:block;transition:transform 8s ease}
.about-img-frame:hover img{transform:scale(1.04)}
.about-accent{position:absolute;top:-18px;left:-18px;right:18px;bottom:18px;border:1.5px solid var(--gold);border-radius:4px;pointer-events:none;z-index:-1}
.about-badge{position:absolute;bottom:28px;right:-28px;background:var(--gold);color:var(--dark);padding:26px 30px;border-radius:4px;text-align:center;box-shadow:0 20px 50px rgba(201,151,58,.38);z-index:2}
.about-badge .yrs{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:700;line-height:1;display:block}
.about-badge .yrs-t{font-size:9.5px;letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-top:5px;display:block}
.about-content p{font-size:15.5px;line-height:1.85;color:var(--textl);margin-bottom:16px}
.about-content strong{color:var(--text)}
.about-div{width:56px;height:2px;background:var(--gold);margin:26px 0}
.about-quals{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:32px}
.aq-item{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text)}
.aq-item .svg-icon{width:14px;height:14px;color:var(--gold)}
.sig{font-family:'Cormorant Garamond',serif;font-size:34px;font-style:italic;color:var(--gold3);margin-top:28px;display:block}
.sig-t{font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--textl);margin-top:3px}
@media(max-width:1100px){.about-grid{grid-template-columns:1fr}.about-img-wrap{max-width:480px}}
@media(max-width:600px){.about-grid{gap:50px}.about-quals{grid-template-columns:1fr}}

/* ============================================================
   PRACTICE AREAS
============================================================ */
.practice-sec{padding:115px 0;background:var(--cream)}
.practice-hdr{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:56px}
.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.pc{background:var(--white);padding:42px 34px;position:relative;overflow:hidden;cursor:pointer;transition:all .45s cubic-bezier(.16,1,.3,1)}
.pc::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.pc:hover::after{transform:scaleX(1)}
.pc:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(0,0,0,.1)}
.pc-num{font-family:'Cormorant Garamond',serif;font-size:62px;font-weight:700;color:rgba(201,151,58,.07);line-height:1;position:absolute;top:14px;right:20px;transition:color .4s}
.pc:hover .pc-num{color:rgba(201,151,58,.16)}
.pc-icon{width:54px;height:54px;background:linear-gradient(135deg,var(--gold3),var(--gold));border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--white);margin-bottom:22px;transition:transform .4s,box-shadow .4s}
.pc-icon .svg-icon{width:26px;height:26px}
.pc:hover .pc-icon{transform:scale(1.08) rotate(-3deg);box-shadow:0 16px 40px rgba(201,151,58,.32)}
.pc h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:600;color:var(--dark);margin-bottom:10px;transition:color .3s}
.pc:hover h3{color:var(--gold3)}
.pc p{font-size:14px;line-height:1.75;color:var(--textl);margin-bottom:18px}
.pc-link{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);cursor:pointer;transition:gap .3s;text-decoration:none}
.pc-link .svg-icon{width:14px;height:14px}
.pc:hover .pc-link{gap:13px}
@media(max-width:900px){.practice-grid{grid-template-columns:1fr 1fr}.practice-hdr{grid-template-columns:1fr}}
@media(max-width:600px){.practice-grid{grid-template-columns:1fr}}

/* ============================================================
   STATS SECTION
============================================================ */
.stats-sec{padding:115px 0;background:var(--dark);position:relative;overflow:hidden}
.stats-bg{position:absolute;inset:0;background-image:url('images/lawyer-2.webp');background-size:cover;background-position:center right;opacity:.07}
.stats-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(201,151,58,.07) 0%,transparent 60%)}
.stats-outer{display:grid;grid-template-columns:1fr 360px;gap:80px;align-items:start;position:relative;z-index:3}
.stats-nums{display:grid;grid-template-columns:repeat(2,1fr);margin-top:50px}
.stat-box{padding:34px;border:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden;transition:background .4s}
.stat-box::before{content:'';position:absolute;top:0;left:0;width:3px;height:0;background:var(--gold);transition:height .6s .1s}
.stat-box.vis::before{height:100%}
.stat-box:hover{background:rgba(201,151,58,.04)}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:60px;font-weight:700;color:var(--gold2);line-height:1;display:block}
.stat-lbl{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.42);margin-top:8px;display:block}
.wh{background:rgba(255,255,255,.03);border:1px solid var(--border);border-top:3px solid var(--gold);padding:34px;border-radius:2px;backdrop-filter:blur(10px)}
.wh-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--white);margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;gap:10px}
.wh-title .svg-icon{width:18px;height:18px;color:var(--gold)}
.wh-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:13.5px}
.wh-row:last-of-type{border-bottom:none}
.wh-day{color:rgba(255,255,255,.58)}
.wh-time{color:var(--gold2);font-weight:600;font-size:13px}
.wh-closed{color:rgba(255,255,255,.28);font-style:italic}
.wh-btn{display:block;margin-top:22px;background:var(--gold);color:var(--dark);text-align:center;padding:13px;font-family:'Cinzel',serif;font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s;border-radius:2px;text-decoration:none}
.wh-btn:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 8px 25px rgba(201,151,58,.32)}
@media(max-width:1100px){.stats-outer{grid-template-columns:1fr}}
@media(max-width:600px){.stats-nums{grid-template-columns:1fr 1fr}}

/* ============================================================
   WHY CHOOSE US
============================================================ */
.why-sec{padding:115px 0;background:var(--white)}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.why-img-side{position:relative}
.why-img-main{width:100%;height:530px;object-fit:cover;border-radius:4px;display:block}
.why-overlay{position:absolute;bottom:28px;left:28px;background:var(--dark);color:var(--white);padding:26px 30px;border-left:3px solid var(--gold);max-width:250px}
.why-overlay h4{font-family:'Cormorant Garamond',serif;font-size:22px;margin-bottom:7px}
.why-overlay p{font-size:13px;color:rgba(255,255,255,.6);line-height:1.6}
.why-features{display:grid;gap:28px}
.why-item{display:flex;gap:20px;padding:26px;border:1px solid var(--borderl);border-radius:3px;transition:all .4s;position:relative;overflow:hidden}
.why-item::after{content:'';position:absolute;left:0;top:0;width:3px;height:0;background:var(--gold);transition:height .4s}
.why-item:hover{border-color:var(--border);box-shadow:0 10px 40px rgba(0,0,0,.07)}
.why-item:hover::after{height:100%}
.why-icon{width:50px;height:50px;background:linear-gradient(135deg,var(--cream2),var(--cream));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0;transition:all .4s}
.why-icon .svg-icon{width:22px;height:22px}
.why-item:hover .why-icon{background:var(--gold);color:var(--white)}
.why-text h4{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:600;color:var(--dark);margin-bottom:5px}
.why-text p{font-size:14px;color:var(--textl);line-height:1.72}
@media(max-width:1100px){.why-grid{grid-template-columns:1fr}.why-img-side{display:none}}

/* ============================================================
   CTA SPLIT
============================================================ */
.cta-split{display:grid;grid-template-columns:1fr 1fr}
.cta-panel{padding:76px 56px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.cta-panel.dp{background:var(--dark3)}
.cta-panel.gp{background:var(--gold)}
.cta-panel h3{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:600;color:var(--white);margin-bottom:12px}
.cta-panel.gp h3{color:var(--dark)}
.cta-panel p{font-size:15px;color:rgba(255,255,255,.7);margin-bottom:28px;line-height:1.72;max-width:380px}
.cta-panel.gp p{color:rgba(13,13,13,.68)}
.cta-bg-icon{position:absolute;right:36px;bottom:24px;opacity:.045}
.cta-bg-icon .svg-icon{width:120px;height:120px;color:var(--white)}
.cta-panel.gp .cta-bg-icon{opacity:.06}
.cta-panel.gp .cta-bg-icon .svg-icon{color:var(--dark)}
@media(max-width:900px){.cta-split{grid-template-columns:1fr}}

/* ============================================================
   TIMELINE
============================================================ */
.tl-sec{padding:115px 0;background:var(--cream)}
.tl{position:relative;margin-top:76px}
.tl-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,var(--gold) 12%,var(--gold) 88%,transparent);transform:translateX(-50%)}
.tl-item{display:grid;grid-template-columns:1fr 72px 1fr;margin-bottom:54px;align-items:center}
.tl-item:last-child{margin-bottom:0}
.tl-content{background:var(--white);padding:32px;border-radius:3px;box-shadow:0 4px 28px rgba(0,0,0,.06);transition:transform .4s,box-shadow .4s}
.tl-content:hover{transform:translateY(-4px);box-shadow:0 18px 55px rgba(0,0,0,.1)}
.tl-step{font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:9px;display:block}
.tl-content h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--dark);margin-bottom:8px}
.tl-content p{font-size:14px;color:var(--textl);line-height:1.75}
.tl-dot-w{display:flex;align-items:center;justify-content:center;z-index:2}
.tl-dot{width:16px;height:16px;background:var(--gold);border-radius:50%;border:4px solid var(--cream);box-shadow:0 0 0 3px var(--gold);animation:dotP 2.5s ease-in-out infinite}
@keyframes dotP{0%,100%{box-shadow:0 0 0 3px var(--gold)}50%{box-shadow:0 0 0 8px rgba(201,151,58,.18)}}
.tl-item:nth-child(odd) .tl-content{grid-column:1}
.tl-item:nth-child(odd) .tl-dot-w{grid-column:2}
.tl-item:nth-child(odd) .tl-empty{grid-column:3}
.tl-item:nth-child(even) .tl-empty{grid-column:1}
.tl-item:nth-child(even) .tl-dot-w{grid-column:2}
.tl-item:nth-child(even) .tl-content{grid-column:3}
@media(max-width:900px){
  .tl-line{left:18px}
  .tl-item{grid-template-columns:36px 1fr}
  .tl-item:nth-child(odd) .tl-content,.tl-item:nth-child(even) .tl-content{grid-column:2;grid-row:1}
  .tl-item:nth-child(odd) .tl-dot-w,.tl-item:nth-child(even) .tl-dot-w{grid-column:1;grid-row:1}
  .tl-empty{display:none}
}

/* ============================================================
   TESTIMONIALS
============================================================ */
.test-sec{padding:115px 0;background:var(--dark);position:relative;overflow:hidden}
.test-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 28% 50%,rgba(201,151,58,.06) 0%,transparent 60%)}
.test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:56px}
.tc{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);padding:38px;border-radius:3px;position:relative;overflow:hidden;transition:all .4s}
.tc::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--gold3),var(--gold),var(--gold2));transform:scaleX(0);transform-origin:left;transition:transform .5s}
.tc:hover::before{transform:scaleX(1)}
.tc:hover{background:rgba(255,255,255,.05);transform:translateY(-4px);box-shadow:0 20px 50px rgba(0,0,0,.3)}
.tc-quote{position:absolute;top:10px;right:18px;opacity:.12}
.tc-quote .svg-icon{width:68px;height:68px;color:var(--gold)}
.tc-stars{display:flex;gap:3px;margin-bottom:16px}
.tc-stars .svg-icon{width:13px;height:13px;color:var(--gold)}
.tc-text{font-family:'Cormorant Garamond',serif;font-size:16px;line-height:1.85;color:rgba(255,255,255,.68);font-style:italic;margin-bottom:26px}
.tc-author{display:flex;align-items:center;gap:14px}
.tc-av{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--gold3),var(--gold));display:flex;align-items:center;justify-content:center;color:var(--dark);font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;flex-shrink:0}
.tc-name{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--white);display:block}
.tc-case{font-size:11.5px;color:var(--gold);letter-spacing:1px;text-transform:uppercase}
@media(max-width:900px){.test-grid{grid-template-columns:1fr}}

/* ============================================================
   APPOINTMENT CTA
============================================================ */
.appt-sec{padding:115px 0;background:var(--cream);position:relative;overflow:hidden;text-align:center}
.appt-deco{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:580px;height:580px;border:1px solid rgba(201,151,58,.1);border-radius:50%;pointer-events:none}
.appt-deco::before{content:'';position:absolute;inset:30px;border:1px solid rgba(201,151,58,.06);border-radius:50%}
.appt-btns{display:flex;justify-content:center;gap:14px;margin-top:38px;flex-wrap:wrap}

/* ============================================================
   PAGE HERO
============================================================ */
.page-hero{background:var(--dark);padding:105px 0 65px;position:relative;overflow:hidden}
.page-hero-bg{position:absolute;inset:0;background-image:url('images/hero-bg.webp');background-size:cover;background-position:center;opacity:.1}
.page-hero-ov{position:absolute;inset:0;background:linear-gradient(to right,rgba(13,13,13,.95) 40%,rgba(13,13,13,.68))}
.page-hero .container{position:relative;z-index:3}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:56px;font-weight:700;color:var(--white);margin-bottom:14px}
.breadcrumb{display:flex;gap:9px;align-items:center;font-size:13px;color:rgba(255,255,255,.44)}
.breadcrumb .svg-icon{width:10px;height:10px;color:var(--gold)}
.breadcrumb a{cursor:pointer;transition:color .3s;color:rgba(255,255,255,.44);text-decoration:none}
.breadcrumb a:hover{color:rgba(255,255,255,.8)}
.breadcrumb span.cur{color:var(--gold2)}

/* ============================================================
   VALUES
============================================================ */
.val-sec{padding:115px 0;background:var(--white)}
.val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px}
.vc{padding:42px 32px;border:1px solid var(--borderl);border-radius:3px;text-align:center;transition:all .4s;position:relative;overflow:hidden}
.vc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold3),var(--gold));transform:scaleX(0);transition:transform .4s}
.vc:hover::after{transform:scaleX(1)}
.vc:hover{box-shadow:0 18px 55px rgba(0,0,0,.08);transform:translateY(-4px)}
.vc-icon{width:66px;height:66px;background:linear-gradient(135deg,var(--cream2),var(--cream));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);margin:0 auto 22px;transition:all .4s}
.vc-icon .svg-icon{width:28px;height:28px}
.vc:hover .vc-icon{background:var(--gold);color:var(--white)}
.vc h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--dark);margin-bottom:10px}
.vc p{font-size:14px;color:var(--textl);line-height:1.75}
@media(max-width:900px){.val-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.val-grid{grid-template-columns:1fr}}

/* ============================================================
   QUALIFICATIONS
============================================================ */
.qual-sec{padding:100px 0;background:var(--cream)}
.qual-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:56px}
.qual-block h3{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--dark);margin-bottom:28px}
.qual-item{padding:22px 22px 22px 26px;background:var(--white);border-radius:3px;border-left:3px solid var(--gold);margin-bottom:14px;transition:box-shadow .3s}
.qual-item:hover{box-shadow:0 8px 28px rgba(0,0,0,.07)}
.qual-yr{font-size:10.5px;color:var(--gold);font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:5px}
.qual-item h4{font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--dark);margin-bottom:3px}
.qual-item span{font-size:13px;color:var(--textl)}
@media(max-width:900px){.qual-grid{grid-template-columns:1fr}}

/* ============================================================
   SERVICE BIG GRID
============================================================ */
.svc-page{padding:96px 0}
.svc-big-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:56px}
.sbc{background:var(--cream);padding:50px 46px;position:relative;overflow:hidden;cursor:pointer;transition:all .45s;display:block;text-decoration:none}
.sbc::before{content:'';position:absolute;inset:0;background:var(--dark);transform:scaleY(0);transform-origin:bottom;transition:transform .5s cubic-bezier(.16,1,.3,1);z-index:1}
.sbc:hover::before{transform:scaleY(1)}
.sbc-inner{position:relative;z-index:2}
.sbc-icon{width:62px;height:62px;background:var(--white);border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--gold);margin-bottom:26px;transition:all .4s}
.sbc-icon .svg-icon{width:28px;height:28px}
.sbc:hover .sbc-icon{background:var(--gold);color:var(--dark)}
.sbc h3{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;color:var(--dark);margin-bottom:12px;transition:color .4s}
.sbc p{font-size:15px;color:var(--textl);line-height:1.75;transition:color .4s;margin:0}
.sbc:hover h3,.sbc:hover p{color:var(--white)}
.sbc-link{display:inline-flex;align-items:center;gap:7px;margin-top:22px;font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);cursor:pointer;transition:gap .3s,color .4s}
.sbc-link .svg-icon{width:14px;height:14px}
.sbc:hover .sbc-link{gap:13px;color:var(--gold2)}
@media(max-width:900px){.svc-big-grid{grid-template-columns:1fr}}

/* ============================================================
   SERVICE DETAIL
============================================================ */
.sd-sec{padding:96px 0}
.sd-layout{display:grid;grid-template-columns:1fr 330px;gap:56px}
.sd-content h2{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:600;color:var(--dark);margin-bottom:22px;line-height:1.18}
.sd-content h2 span{color:var(--gold);font-style:italic}
.sd-content p{font-size:15.5px;color:var(--textl);line-height:1.85;margin-bottom:18px}
.sd-content h3{font-family:'Cormorant Garamond',serif;font-size:26px;color:var(--dark);margin:34px 0 14px}
.sc-list{list-style:none;margin-bottom:28px;padding:0}
.sc-list li{display:flex;align-items:flex-start;gap:13px;padding:11px 0;border-bottom:1px solid var(--borderl);font-size:15px;color:var(--text);line-height:1.6}
.sc-list li:last-child{border-bottom:none}
.sc-list li .svg-icon{width:16px;height:16px;color:var(--gold);flex-shrink:0;margin-top:2px}
.sw{background:var(--cream);border:1px solid var(--borderl);border-radius:3px;overflow:hidden;margin-bottom:22px}
.sw-head{background:var(--dark);color:var(--white);padding:16px 22px;font-family:'Cinzel',serif;font-size:11.5px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;border-bottom:2px solid var(--gold)}
.sw-body{padding:8px}
.sw-link{display:flex;align-items:center;gap:9px;padding:10px 14px;font-size:13.5px;color:var(--text);cursor:pointer;border-radius:2px;transition:all .3s;border-left:2px solid transparent;margin-bottom:2px;text-decoration:none}
.sw-link .svg-icon{width:15px;height:15px;color:var(--textl);transition:color .3s}
.sw-link:hover,.sw-link.active{background:var(--white);border-left-color:var(--gold);color:var(--gold3)}
.sw-link:hover .svg-icon,.sw-link.active .svg-icon{color:var(--gold)}
.sw-cta{background:var(--gold);padding:34px 26px;border-radius:3px;text-align:center}
.sw-cta h4{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--dark);margin-bottom:9px}
.sw-cta p{font-size:13.5px;color:rgba(13,13,13,.68);margin-bottom:20px;line-height:1.6}
.sw-phone{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14.5px;font-weight:700;color:var(--dark);text-decoration:none}
.sw-phone .svg-icon{width:15px;height:15px;color:var(--dark)}
@media(max-width:900px){.sd-layout{grid-template-columns:1fr}}

/* ============================================================
   CONTACT
============================================================ */
.ct-sec{padding:96px 0}
.ct-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:76px}
.ct-item{display:flex;gap:18px;margin-bottom:30px}
.ct-icon{width:52px;height:52px;background:linear-gradient(135deg,var(--cream2),var(--cream));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0;transition:all .3s}
.ct-icon .svg-icon{width:20px;height:20px}
.ct-item:hover .ct-icon{background:var(--gold);color:var(--white)}
.ct-text h4{font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--dark);margin-bottom:4px}
.ct-text p,.ct-text a{font-size:14.5px;color:var(--textl);text-decoration:none;display:block;line-height:1.7}
.ct-text a:hover{color:var(--gold)}
.cf-wrap{background:var(--cream);padding:46px;border-radius:4px;border:1px solid var(--borderl)}
.cf-wrap h3{font-family:'Cormorant Garamond',serif;font-size:32px;color:var(--dark);margin-bottom:28px}
.cf-wrap h3 span{color:var(--gold);font-style:italic}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg{margin-bottom:16px}
.fg label{display:block;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--textl);margin-bottom:7px}
.fg input,.fg select,.fg textarea{width:100%;padding:13px 16px;background:var(--white);border:1.5px solid rgba(0,0,0,.08);border-radius:3px;font-family:'Lato',sans-serif;font-size:14.5px;color:var(--dark);transition:all .3s;appearance:none}
.fg input:focus,.fg select:focus,.fg textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,151,58,.1)}
.fg textarea{height:125px;resize:vertical}
.form-note{font-size:12px;color:var(--textl);margin-top:10px;display:flex;align-items:center;gap:6px}
.form-note .svg-icon{width:13px;height:13px;color:var(--gold)}
.map-wrap{margin-top:76px;border-radius:4px;overflow:hidden;border:1px solid var(--borderl)}
.map-wrap iframe{width:100%;height:360px;border:none;display:block}
@media(max-width:900px){.ct-layout{grid-template-columns:1fr}}
@media(max-width:600px){.form-row{grid-template-columns:1fr}.cf-wrap{padding:26px 20px}}

/* ============================================================
   POLICY PAGES
============================================================ */
.pol-sec{padding:96px 0}
.pol-body{max-width:820px}
.pol-meta{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:38px}
.pol-meta-item{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--textl)}
.pol-meta-item .svg-icon{width:14px;height:14px;color:var(--gold)}
.pol-body h2{font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--dark);margin:44px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--borderl)}
.pol-body h3{font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--dark);margin:24px 0 10px}
.pol-body p{font-size:15.5px;color:var(--textl);line-height:1.85;margin-bottom:14px}
.pol-body ul{list-style:none;margin-bottom:16px;padding:0}
.pol-body ul li{display:flex;gap:11px;font-size:15px;color:var(--textl);margin-bottom:9px;line-height:1.7}
.pol-body ul li::before{content:'—';color:var(--gold);font-weight:700;flex-shrink:0}

/* ============================================================
   FOOTER
============================================================ */
#colophon{background:var(--dark);border-top:1px solid var(--border)}
.footer-top{padding:76px 0 56px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:46px}
.f-brand p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.48);margin-bottom:22px;margin-top:14px}
.f-socials{display:flex;gap:9px}
.f-soc{width:38px;height:38px;border:1px solid rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.48);cursor:pointer;transition:all .3s;text-decoration:none}
.f-soc .svg-icon{width:15px;height:15px}
.f-soc:hover{background:var(--gold);border-color:var(--gold);color:var(--dark);transform:translateY(-3px)}
.f-col h4{font-family:'Cinzel',serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--white);margin-bottom:22px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.f-links{list-style:none;padding:0}
.f-links li{margin-bottom:9px}
.f-links li a{font-size:14px;color:rgba(255,255,255,.48);cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:7px;text-decoration:none}
.f-links li a::before{content:'—';font-size:10px;color:var(--gold3);transition:color .3s}
.f-links li a:hover{color:var(--gold2)}
.f-links li a:hover::before{color:var(--gold)}
.f-c-list{list-style:none;padding:0}
.f-c-item{display:flex;gap:12px;margin-bottom:16px}
.f-c-item .svg-icon{width:14px;height:14px;color:var(--gold);flex-shrink:0;margin-top:3px}
.f-c-item span,.f-c-item a{font-size:13.5px;color:rgba(255,255,255,.52);line-height:1.6;text-decoration:none;transition:color .3s}
.f-c-item a:hover{color:var(--gold2)}
.footer-bot{padding:20px 0;border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
.footer-bot-l{font-size:12.5px;color:rgba(255,255,255,.32)}
.footer-bot-r{display:flex;gap:22px}
.footer-bot-r a{font-size:12.5px;color:rgba(255,255,255,.32);cursor:pointer;transition:color .3s;text-decoration:none}
.footer-bot-r a:hover{color:var(--gold2)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-bot{flex-direction:column}}

/* ============================================================
   FLOATING BUTTONS
============================================================ */
.float-wrap{position:fixed;bottom:28px;right:28px;z-index:900;display:flex;flex-direction:column;gap:11px;align-items:flex-end}
.float-btn{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;box-shadow:0 8px 25px rgba(0,0,0,.25);text-decoration:none}
.float-btn .svg-icon{width:22px;height:22px}
.fb-wa{background:#25D366;color:var(--white)}
.fb-wa:hover{background:#128C7E;transform:scale(1.1)}
.fb-ph{background:var(--gold);color:var(--dark)}
.fb-ph:hover{background:var(--gold2);transform:scale(1.1)}

/* ============================================================
   WORDPRESS SPECIFIC
============================================================ */
.wp-block-image img{max-width:100%;height:auto}
img{max-width:100%;height:auto}
.aligncenter{display:block;margin:0 auto}
.alignleft{float:left;margin-right:20px}
.alignright{float:right;margin-left:20px}
.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px}
.entry-content{line-height:1.8}
.entry-content p{margin-bottom:1.2em;color:var(--textl);font-size:15.5px;line-height:1.85}
.entry-content h2{font-family:'Cormorant Garamond',serif;font-size:32px;color:var(--dark);margin:34px 0 14px}
.entry-content h3{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--dark);margin:28px 0 10px}
.entry-content ul,.entry-content ol{padding-left:24px;margin-bottom:1.2em;color:var(--textl);font-size:15px}

/* ============================================================
   MOBILE RESPONSIVE — COMPREHENSIVE FIX (max-width: 768px)
============================================================ */
@media(max-width:768px){

  /* Container */
  .container{padding:0 18px}

  /* Topbar — hide completely */
  .topbar{display:none}

  /* Header / Navbar */
  .navbar{padding:11px 0}
  .text-logo-icon{width:36px;height:36px}
  .text-logo-icon svg{width:20px;height:20px}
  .text-logo .tl-name{font-size:14px;white-space:normal;line-height:1.2}
  .text-logo .tl-tag{font-size:8px;letter-spacing:1.5px}

  /* Mobile Menu */
  #primary-menu{display:none}
  .menu-toggle{display:flex;align-items:center}
  #primary-menu.mobile-open{
    display:flex;flex-direction:column;
    position:absolute;top:100%;left:0;right:0;
    background:var(--dark2);padding:16px;gap:2px;align-items:stretch;
    box-shadow:0 20px 40px rgba(0,0,0,.4);z-index:999
  }
  #primary-menu.mobile-open > li > a{
    color:rgba(255,255,255,.85);padding:13px 16px;
    border-bottom:1px solid rgba(255,255,255,.06);font-size:11px
  }
  #primary-menu.mobile-open .nav-cta > a{
    background:var(--gold)!important;color:var(--dark)!important;
    margin:10px 0 4px;text-align:center;justify-content:center;border-radius:2px
  }
  #primary-menu .sub-menu{
    position:static!important;display:block!important;
    border:none;background:rgba(255,255,255,.04);margin-top:2px
  }
  #primary-menu .sub-menu li a{padding:10px 20px;font-size:12px}

  /* Hero Section */
  .hero{min-height:100svh}
  .hero-content{padding:90px 0 60px;max-width:100%}
  .hero h1{font-size:34px;line-height:1.12;margin-bottom:18px}
  .hero-eyetxt{font-size:9px;letter-spacing:3px}
  .hero-desc{font-size:14.5px;line-height:1.75;margin-bottom:30px}
  .hero-btns{flex-direction:column;gap:10px}
  .hero-btns .btn{width:100%;justify-content:center;padding:13px 20px}
  .hero-stats{gap:0;margin-top:36px;padding-top:24px;display:grid;grid-template-columns:1fr 1fr}
  .hero-stats > div{padding:16px 12px;border:1px solid rgba(255,255,255,.06)}
  .hero-stat-num{font-size:32px}
  .hero-stat-lbl{font-size:9px;letter-spacing:1.5px}
  .hero-lawyer,.hero-badge{display:none}
  .scroll-ind{display:none}

  /* About Section */
  .about-sec{padding:70px 0}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .about-img-wrap{max-width:100%}
  .about-img-frame img{height:320px}
  .about-badge{right:-10px;bottom:16px;padding:18px 20px}
  .about-badge .yrs{font-size:38px}
  .about-accent{display:none}
  .section-title{font-size:34px}
  .about-quals{grid-template-columns:1fr}

  /* Practice Areas */
  .practice-sec{padding:70px 0}
  .practice-hdr{grid-template-columns:1fr;gap:20px;margin-bottom:36px}
  .practice-grid{grid-template-columns:1fr}
  .pc{padding:30px 24px}

  /* Stats Section */
  .stats-sec{padding:70px 0}
  .stats-outer{grid-template-columns:1fr;gap:40px}
  .stats-nums{grid-template-columns:1fr 1fr}
  .stat-num{font-size:42px}

  /* Why Choose Us */
  .why-sec{padding:70px 0}
  .why-grid{grid-template-columns:1fr;gap:36px}
  .why-img-side{display:none}

  /* CTA Split */
  .cta-split{grid-template-columns:1fr}
  .cta-panel{padding:50px 28px}
  .cta-panel h3{font-size:28px}

  /* Timeline */
  .tl-sec{padding:70px 0}
  .tl-line{left:16px}
  .tl-item{grid-template-columns:32px 1fr;margin-bottom:28px}
  .tl-item:nth-child(odd) .tl-content,
  .tl-item:nth-child(even) .tl-content{grid-column:2;grid-row:1}
  .tl-item:nth-child(odd) .tl-dot-w,
  .tl-item:nth-child(even) .tl-dot-w{grid-column:1;grid-row:1}
  .tl-empty{display:none}
  .tl-content{padding:22px 18px}
  .tl-content h3{font-size:18px}

  /* Testimonials */
  .test-sec{padding:70px 0}
  .test-grid{grid-template-columns:1fr;gap:16px;margin-top:36px}
  .tc{padding:26px 20px}
  .tc-text{font-size:14.5px}

  /* Appointment CTA */
  .appt-sec{padding:70px 0}
  .appt-btns{flex-direction:column;align-items:center;gap:12px}
  .appt-btns .btn{width:100%;max-width:340px;justify-content:center}

  /* Page Hero (inner pages) */
  .page-hero{padding:80px 0 44px}
  .page-hero h1{font-size:34px}

  /* Footer */
  .footer-top{padding:44px 0 30px}
  .footer-grid{grid-template-columns:1fr;gap:36px;width:100%}
  #colophon{padding-bottom:90px;overflow:hidden;width:100%}
  .footer-bot{flex-direction:column;text-align:center;gap:10px}
  .footer-bot-r{justify-content:center;flex-wrap:wrap;gap:14px}
  .f-brand{max-width:100%;overflow:hidden}
  .f-brand p{font-size:13px}
  .f-c-item span,.f-c-item a{word-break:break-all;font-size:12.5px}
  .footer-bot-l{font-size:11px;word-break:break-word;text-align:center}
  .f-col{width:100%}

  /* Service / Contact pages */
  .svc-big-grid{grid-template-columns:1fr}
  .sd-layout{grid-template-columns:1fr}
  .ct-layout{grid-template-columns:1fr;gap:40px}
  .cf-wrap{padding:26px 18px}
  .form-row{grid-template-columns:1fr}

  /* Float buttons */
  .float-wrap{bottom:16px;right:14px;gap:8px}
  .float-btn{width:44px;height:44px}
  .float-btn .svg-icon{width:19px;height:19px}

  /* Section titles */
  .section-title{font-size:30px}
}

/* Extra small phones (max-width: 380px) */
@media(max-width:380px){
  .hero h1{font-size:28px}
  .text-logo .tl-name{font-size:12px}
  .text-logo .tl-tag{display:none}
  .section-title{font-size:26px}
  .footer-grid{grid-template-columns:1fr}
}