/*
Theme Name: KQ Solicitors
Theme URI: https://kqsolicitors.com
Author: KQ Solicitors
Author URI: https://kqsolicitors.com
Description: Custom premium theme for KQ Solicitors v2 - v9.9.6: CRITICAL: /about-us/ was rendering the team page because page-about.php was a byte-for-byte clone of page-our-team.php sharing the same Our Team template name, so About Us, Our Team and Our Founder menu items all opened identical content. Rewrote page-about.php as a genuine About page (firm story, services, how we work, founder teaser linking to /our-team/, credentials, AboutPage schema). Added template auto-assign forcing about-us slug to page-about.php and our-team slug to page-our-team.php by filename, so it is correct regardless of stored template meta. Nav hygiene now REMOVES the retired Our Founder menu item rather than retargeting it. Made both hero subtitles survive LiteSpeed CSS recombination via html-prefixed !important solid-colour rules (they were inheriting the dark wrapper colour after combine). v9.9.5: Sitewide SEO + menu repair. Fixed the master title filter clobbering all 30 per-page tuned titles with generic doubled-suffix titles (e.g. Our Team | KQ Solicitors | KQ Solicitors); template titles now win for non-guide pages with a double-brand-suffix guard. Fixed duplicate meta descriptions on 30 pages (header.php generic + template tuned) with a whole-document dedupe keeping the page-specific tag. Added nav-menu hygiene filter: retargets retired /founder/ item to /our-team/#founder, points Client Reviews at the canonical /kq-solicitors-reviews/, sends the Immigration Guides category archive to /knowledge-hub/, and strips brand suffixes from nav labels. Added 301 /client-reviews/ to /kq-solicitors-reviews/ with sitemap exclusion. v9.9.4: Fixed /our-team/ hero subtitle contrast and mobile heading spacing; made the firm-stat figures (admission year, SRA numbers) static and correctly formatted instead of count-animated with thousands commas (0 / 2,009 bug). Removed the standalone Author profile template and its internal links, with a 301 from /founder/ to /our-team/. v9.9.3: Deep audit pass. Fixed blank-page failure on virtual guide URLs: the virtual-page system now self-heals by dropping any slug whose template file is missing (prevents /uk-spouse-visa/ rendering blank when its template is absent) and no longer strips the query vars WordPress needs to resolve a real page. Repointed the /fiance-visa-uk/ virtual page and slug auto-assign to the actual template file (page-fiance-visa.php) so it renders instead of blanking. Fixed homepage Skilled Worker Extension link (removed -2 slug-conflict suffix). Converted hardcoded absolute internal links on the About and Team pages to portable home_url() and pointed client reviews to the canonical /kq-solicitors-reviews/. Removed em-dashes site-wide per brand style. Deleted dead backup templates. Carries forward all v9.9.2 features.
Version: 9.9.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kq-theme
*/

/* === RESET & VARIABLES === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --cream:#FAF6EE;--indigo:#27273A;--deep:#1A1C30;
  --gold:#A48945;--gold-light:#BFA45C;--gold-dark:#8B7339;--gold-muted:rgba(164,137,69,0.07);
  --royal:#1E3A8A;--royal-light:#2563EB;--royal-muted:rgba(30,58,138,0.06);
  --text:#2C2A34;--text-mid:#55525F;--text-soft:#7D7A88;--text-light:#A09DAA;
  --border:rgba(44,42,52,0.06);--border-gold:rgba(164,137,69,0.12);
  --glass:rgba(255,255,255,0.45);--glass-border:rgba(255,255,255,0.55);
  --card-shadow:0 1px 3px rgba(44,42,52,0.03),0 12px 36px rgba(44,42,52,0.05);
  --card-hover:0 1px 3px rgba(44,42,52,0.03),0 20px 50px rgba(44,42,52,0.08);
  --glow-gold:0 0 40px rgba(164,137,69,0.12);
  --radius:16px;--font-head:'Playfair Display',Georgia,serif;--font-body:'Inter',system-ui,sans-serif
}
html{scroll-behavior:smooth;font-size:16px}
body{background:var(--cream);color:var(--text-mid);font-family:var(--font-body);font-weight:450;line-height:1.72;overflow-x:hidden;-webkit-font-smoothing:antialiased;letter-spacing:-0.006em}
::selection{background:var(--gold);color:#fff}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(164,137,69,0.25);border-radius:10px}
a{color:var(--gold);text-decoration:none;transition:color .2s}a:hover{color:var(--gold-dark)}
img{max-width:100%;height:auto}

/* Ambient glow */
body::after{content:'';position:fixed;top:20%;left:-10%;width:40vw;height:40vw;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.04),transparent 70%);pointer-events:none;z-index:0;animation:ad 20s ease-in-out infinite alternate}
@keyframes ad{0%{transform:translate(0,0)}100%{transform:translate(15vw,10vh)}}
/* Grain */
body::before{content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E")}

/* === TOP BAR === */
.topbar{background:var(--deep);padding:.4rem 1.5rem;font-size:.72rem;color:rgba(250,246,238,0.5);position:relative;z-index:101}
.topbar-in{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}
.topbar a{color:var(--gold-light);text-decoration:none;font-weight:600;transition:color .2s}.topbar a:hover{color:#fff}
.topbar-left{display:flex;gap:1.5rem;align-items:center}
.topbar-item{display:flex;align-items:center;gap:.3rem}.topbar-item svg{width:12px;height:12px;color:var(--gold)}
.topbar-right a{padding:.3rem .9rem;border-radius:50px;background:var(--gold);color:var(--deep);font-weight:700;font-size:.68rem;letter-spacing:.03em;display:inline-block}
.topbar-right a:hover{background:var(--gold-light);color:var(--deep)}
@media(max-width:600px){.topbar-left{gap:.8rem}.topbar{font-size:.65rem}}

/* === HEADER === */
.site-header{position:sticky;top:0;z-index:100;padding:.7rem 1.5rem;background:rgba(250,246,238,0.7);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);border-bottom:1px solid rgba(255,255,255,0.4);transition:all .4s}
.site-header.sc{padding:.45rem 1.5rem;box-shadow:0 4px 30px rgba(44,42,52,0.06);background:rgba(250,246,238,0.88)}
.hdr-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:var(--font-head);font-size:1.35rem;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-0.01em;line-height:1.1}.logo b{color:var(--gold)}
.logo small{display:block;font-family:var(--font-body);font-size:.52rem;font-weight:500;color:var(--text-light);letter-spacing:.12em;text-transform:uppercase;margin-top:1px}
.nav-main{display:flex;align-items:center;gap:.1rem}
.nav-main ul{display:flex;list-style:none;gap:.1rem;align-items:center}
.nav-main ul li a{color:var(--text-soft);text-decoration:none;font-size:.78rem;font-weight:550;padding:.36rem .65rem;border-radius:8px;transition:all .2s;display:block}
.nav-main ul li a:hover,.nav-main ul li.current-menu-item>a,.nav-main ul li.current_page_item>a{color:var(--text);background:var(--gold-muted)}
/* Dropdown */
.nav-main ul li{position:relative}
.nav-main ul li ul.sub-menu{display:none;position:absolute;top:100%;left:0;background:rgba(250,246,238,0.95);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:12px;padding:.5rem;min-width:200px;box-shadow:var(--card-shadow);z-index:200;flex-direction:column}
.nav-main ul li:hover>ul.sub-menu{display:flex}
.nav-main ul li ul.sub-menu li a{font-size:.76rem;padding:.45rem .7rem;border-radius:8px;white-space:nowrap}
.hdr-cta{padding:.45rem 1.2rem;border-radius:50px;background:var(--gold);color:#fff;font-size:.74rem;font-weight:600;border:none;cursor:pointer;font-family:inherit;transition:all .3s;text-decoration:none;letter-spacing:.02em;box-shadow:0 2px 12px rgba(164,137,69,0.2);margin-left:.5rem;display:inline-block}
.hdr-cta:hover{background:var(--gold-dark);transform:translateY(-1px);color:#fff}
/* Mobile menu toggle */
.menu-toggle{display:none;background:none;border:none;cursor:pointer;width:44px;height:44px;position:relative;z-index:201;padding:0}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--text);border-radius:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:.3s}
.menu-toggle span::before,.menu-toggle span::after{content:'';display:block;width:20px;height:2px;background:var(--text);border-radius:2px;position:absolute;left:0;transition:.3s}
.menu-toggle span::before{top:-6px}.menu-toggle span::after{top:6px}
@media(max-width:960px){.nav-main,.hdr-cta{display:none}.menu-toggle{display:flex;align-items:center;justify-content:center}}

/* === MOBILE NAV === */
.mob-overlay{position:fixed;inset:0;background:rgba(26,28,48,0.3);z-index:199;opacity:0;pointer-events:none;transition:opacity .4s;backdrop-filter:blur(4px)}
.mob-overlay.on{opacity:1;pointer-events:auto}
.mob-nav{position:fixed;top:0;right:0;width:300px;height:100dvh;background:rgba(250,246,238,0.95);backdrop-filter:blur(30px);z-index:200;transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);padding:0;display:flex;flex-direction:column;box-shadow:-12px 0 50px rgba(26,28,48,0.12);overflow-y:auto}
.mob-nav.on{transform:translateX(0)}
.mob-nav-head{padding:1.2rem 1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.mob-nav-close{width:40px;height:40px;border-radius:50%;background:rgba(44,42,52,0.05);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-soft);transition:.2s}.mob-nav-close:hover{background:rgba(44,42,52,0.1)}.mob-nav-close svg{width:20px;height:20px}
.mob-nav-links{padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.15rem;flex:1}
.mob-nav-links ul{list-style:none}
.mob-nav-links ul li a{display:block;padding:.7rem .8rem;border-radius:10px;color:var(--text-soft);text-decoration:none;font-size:.95rem;font-weight:550;transition:.2s}
.mob-nav-links ul li a:hover{color:var(--gold-dark);background:var(--gold-muted)}
.mob-nav-links ul li ul.sub-menu{padding-left:1rem}
.mob-nav-links ul li ul.sub-menu li a{font-size:.85rem;padding:.5rem .8rem}
.mob-nav-cta{margin:1rem 1.5rem 2rem;padding:.85rem;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;text-align:center;font-weight:700;font-size:.9rem;border:none;cursor:pointer;font-family:inherit;box-shadow:0 6px 24px rgba(164,137,69,0.3);text-decoration:none;display:block;transition:.3s}

/* === HERO === */
.hero{min-height:92vh;display:flex;align-items:center;position:relative;overflow:hidden;background:var(--deep)}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 30% 45%,rgba(164,137,69,0.18),transparent 65%),radial-gradient(ellipse 50% 50% at 75% 55%,rgba(39,39,58,0.6),transparent 65%),linear-gradient(175deg,#0d0e1f 0%,var(--deep) 30%,#12132a 60%,var(--indigo) 100%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(164,137,69,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(164,137,69,0.06) 1px,transparent 1px);background-size:48px 48px;transform:perspective(400px) rotateX(60deg);transform-origin:center 85%;mask-image:linear-gradient(to top,rgba(0,0,0,0.8) 0%,transparent 55%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,0.8) 0%,transparent 55%)}
.fs{position:absolute;pointer-events:none;border:1px solid rgba(250,246,238,0.06);backdrop-filter:blur(2px)}
.fs:nth-child(3){width:100px;height:100px;top:15%;left:6%;border-radius:22px;background:linear-gradient(135deg,rgba(164,137,69,0.06),rgba(250,246,238,0.02));animation:f1 9s ease-in-out infinite}
.fs:nth-child(4){width:60px;height:60px;top:22%;right:8%;border-radius:50%;background:rgba(164,137,69,0.04);animation:f2 11s ease-in-out infinite}
@keyframes f1{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-22px) rotate(8deg)}}
@keyframes f2{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-18px) scale(1.08)}}
.hero-c{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:5rem 2rem 4rem;display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;width:100%}
.hero-text>*{opacity:0;transform:translateY(28px)}
.hbadge{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .9rem;border-radius:50px;background:rgba(164,137,69,0.1);border:1px solid rgba(164,137,69,0.2);color:var(--gold-light);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;animation:fu .9s .15s ease forwards}
.hbadge-dot{width:6px;height:6px;border-radius:50%;background:var(--gold-light);animation:dp 2s ease-in-out infinite}
@keyframes dp{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}
.hero-text h1{font-family:var(--font-head);font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:700;line-height:1.1;margin-bottom:.8rem;color:var(--cream);animation:fu .9s .3s ease forwards;letter-spacing:-0.02em}
.hero-text h1 em{font-style:italic;background:linear-gradient(135deg,var(--gold-light),var(--gold),#D4B96A,var(--gold-light));background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:sh 6s linear infinite}
@keyframes sh{0%{background-position:300% center}100%{background-position:-300% center}}
.hero-text>p{font-size:.9rem;color:rgba(250,246,238,0.45);max-width:460px;margin-bottom:1.5rem;animation:fu .9s .45s ease forwards;line-height:1.72}
.hero-btns{display:flex;gap:.7rem;flex-wrap:wrap;animation:fu .9s .6s ease forwards}
.btn-gold{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.8rem;border-radius:50px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:var(--deep);font-weight:700;font-size:.82rem;text-decoration:none;box-shadow:0 4px 16px rgba(164,137,69,0.25);transition:all .35s;border:none;cursor:pointer;font-family:inherit}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(164,137,69,0.35);color:var(--deep)}
.btn-gold svg{width:14px;height:14px;transition:transform .3s}.btn-gold:hover svg{transform:translateX(4px)}
.btn-ghost{display:inline-flex;align-items:center;gap:.4rem;padding:.68rem 1.5rem;border-radius:50px;border:1px solid rgba(250,246,238,0.15);color:rgba(250,246,238,0.7);font-size:.8rem;font-weight:600;text-decoration:none;background:rgba(250,246,238,0.04);transition:all .35s;cursor:pointer;font-family:inherit}
.btn-ghost:hover{border-color:rgba(164,137,69,0.5);color:var(--gold-light);background:rgba(164,137,69,0.08)}
.hero-trust{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;animation:fu .9s .75s ease forwards;opacity:0;transform:translateY(28px)}
.ht-pill{display:flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:50px;background:rgba(250,246,238,0.05);border:1px solid rgba(250,246,238,0.08);font-size:.66rem;color:rgba(250,246,238,0.5);font-weight:500}
.ht-pill svg{width:11px;height:11px;color:var(--gold-light)}
@keyframes fu{to{opacity:1;transform:translateY(0)}}
.hero-card{position:relative;z-index:2;animation:fu 1s .5s ease forwards;opacity:0;transform:translateY(28px)}
.hcard{position:relative;background:linear-gradient(135deg,rgba(164,137,69,0.08) 0%,rgba(250,246,238,0.04) 50%,rgba(30,58,138,0.06) 100%);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border:1px solid rgba(164,137,69,0.25);border-radius:22px;padding:2rem;box-shadow:0 1px 0 rgba(255,255,255,0.08) inset,0 30px 80px rgba(0,0,0,0.35),0 0 80px rgba(164,137,69,0.06);overflow:hidden}
.hcard::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(164,137,69,0.6) 20%,rgba(255,215,140,0.8) 50%,rgba(164,137,69,0.6) 80%,transparent 100%)}
.hcard::after{content:'';position:absolute;top:-40%;right:-20%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.15),transparent 65%);pointer-events:none;z-index:0}
.hcard > *{position:relative;z-index:1}
.hcard-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .85rem;border-radius:50px;background:rgba(76,175,80,0.15);border:1px solid rgba(76,175,80,0.35);color:#6FD672;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.1rem;box-shadow:0 0 20px rgba(76,175,80,0.15)}
.hcard-badge-dot{width:6px;height:6px;border-radius:50%;background:#6FD672;box-shadow:0 0 8px rgba(111,214,114,0.8);animation:dp 2s ease-in-out infinite}
.hcard-title,.hcard h3{font-family:var(--font-head);font-size:clamp(1.4rem,2.2vw,1.7rem) !important;font-weight:600;color:#fff;line-height:1.15;letter-spacing:-0.015em;margin:0 0 1.2rem;font-style:normal}
.hcard-title em,.hcard h3 em{color:var(--gold-light);font-style:italic;font-weight:500}
.hcard-stats{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.3rem}
.hs{position:relative;padding:.95rem .75rem;border-radius:13px;background:linear-gradient(135deg,rgba(164,137,69,0.1),rgba(250,246,238,0.02));border:1px solid rgba(164,137,69,0.18);text-align:center;transition:transform .3s ease,border-color .3s ease,background .3s ease}
.hs:hover{transform:translateY(-2px);border-color:rgba(164,137,69,0.4);background:linear-gradient(135deg,rgba(164,137,69,0.18),rgba(250,246,238,0.04))}
.hs::before{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,215,140,0.4),transparent)}
.hs-label{font-size:.6rem;color:rgba(250,246,238,0.55);text-transform:uppercase;letter-spacing:.1em;margin-top:.35rem;font-weight:600}
.hcard-items{display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.2rem;padding:0 .2rem}
.hcard-item{display:flex;align-items:center;gap:.55rem;font-size:.8rem;color:rgba(250,246,238,0.75);font-weight:500;letter-spacing:-0.005em}
.hcard-item svg{width:14px;height:14px;color:var(--gold-light);flex-shrink:0}
.hcard-cta{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.85rem;border-radius:13px;background:linear-gradient(135deg,var(--gold-light) 0%,var(--gold) 50%,var(--gold-dark) 100%);color:#fff !important;font-weight:700;font-size:.85rem;border:none;cursor:pointer;font-family:inherit;box-shadow:0 6px 20px rgba(164,137,69,0.45),0 1px 0 rgba(255,255,255,0.25) inset;transition:transform .25s cubic-bezier(0.2,0.8,0.2,1),box-shadow .25s ease;text-decoration:none !important;letter-spacing:.005em}
.hcard-cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(164,137,69,0.6),0 1px 0 rgba(255,255,255,0.3) inset;color:#fff !important}
@media(max-width:860px){.hero-c{grid-template-columns:1fr;text-align:center}.hero-text>p{margin:0 auto 1.5rem}.hero-btns,.hero-trust{justify-content:center}.hero-card{max-width:400px;margin:0 auto}}
.hero-fade{height:90px;background:linear-gradient(to bottom,var(--deep),var(--cream));position:relative;z-index:1}

/* === SECTIONS SHARED === */
.section{padding:4.5rem 1.5rem;position:relative;z-index:1}
.section-dark{background:var(--deep);color:rgba(250,246,238,0.5)}
.section-alt{background:rgba(255,255,255,0.25)}
.sc-in{max-width:1100px;margin:0 auto}
.sc-head{text-align:center;margin-bottom:2.5rem}
.sc-label{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}
.sc-head h2{font-family:var(--font-head);font-size:clamp(1.7rem,3.5vw,2.4rem);font-weight:700;color:var(--text);line-height:1.18;letter-spacing:-0.015em;margin-bottom:.5rem}
.sc-head h2 em{font-style:italic;color:var(--gold)}
.section-dark .sc-head h2{color:var(--cream)}
.sc-head p{font-size:.87rem;color:var(--text-soft);max-width:560px;margin:0 auto;line-height:1.72}
.section-dark .sc-head p{color:rgba(250,246,238,0.4)}

/* === WHY SOLICITOR === */
.why-section{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.why-section h2{font-family:var(--font-head);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;color:var(--text);line-height:1.18;margin-bottom:.8rem}
.why-section h2 em{font-style:italic;color:var(--gold)}
.why-section p{font-size:.87rem;color:var(--text-soft);line-height:1.76;margin-bottom:.7rem}
.why-points{display:flex;flex-direction:column;gap:.6rem}
.wp{display:flex;gap:.7rem;align-items:flex-start;padding:1rem;border-radius:12px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);transition:all .3s}
.wp:hover{transform:translateY(-3px);box-shadow:var(--card-hover)}
.wp-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--royal),#1E40AF);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.wp-icon svg{width:18px;height:18px;color:#fff}
.wp h3,.wp h4{font-size:.82rem;font-weight:700;color:var(--text);margin-bottom:.15rem}
.wp p{font-size:.76rem;color:var(--text-soft);line-height:1.6;margin:0}
@media(max-width:768px){.why-section{grid-template-columns:1fr}}

/* === SERVICES === */
.srv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.8rem}
.srv-card{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;padding:1.4rem;box-shadow:var(--card-shadow);transition:all .4s;position:relative;overflow:hidden}
.srv-card:hover{transform:translateY(-5px);box-shadow:var(--card-hover),var(--glow-gold)}
.srv-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:scaleX(0);transition:transform .4s;transform-origin:left}
.srv-card:hover::before{transform:scaleX(1)}
.srv-icon{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--royal),#1E40AF);display:flex;align-items:center;justify-content:center;margin-bottom:.7rem}
.srv-icon svg{width:18px;height:18px;color:#fff}
.srv-card h3{font-family:var(--font-head);font-size:.95rem;font-weight:700;color:var(--text);margin-bottom:.3rem;font-style:italic}
.srv-card p{font-size:.76rem;color:var(--text-soft);line-height:1.65;margin-bottom:.6rem}
.srv-link{font-size:.72rem;font-weight:650;color:var(--gold);display:inline-flex;align-items:center;gap:.25rem;text-decoration:none;transition:gap .3s}
.srv-link:hover{gap:.5rem}
.srv-link svg{width:12px;height:12px}

/* === REVIEWS === */
.rev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}
.rev-card{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:14px;padding:1.4rem;box-shadow:var(--card-shadow);transition:all .3s}
.rev-card:hover{box-shadow:var(--card-hover);transform:translateY(-3px)}
.rev-stars{display:flex;gap:2px;margin-bottom:.6rem}
.rev-stars svg{width:13px;height:13px;fill:var(--gold)}
.rev-card blockquote{font-size:.82rem;color:var(--text-mid);line-height:1.72;margin-bottom:.8rem;font-style:italic;border:none;padding:0;background:none}
.rev-author{display:flex;align-items:center;gap:.5rem}
.rev-av{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--royal),var(--royal-light));display:flex;align-items:center;justify-content:center;color:#fff;font-size:.6rem;font-weight:700}
.rev-name{font-size:.76rem;font-weight:650;color:var(--text)}.rev-case{font-size:.64rem;color:var(--text-light)}

/* === AWARDS === */
.awards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.8rem}
.award-card{display:flex;align-items:center;gap:1rem;padding:1.2rem;border-radius:14px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);transition:all .3s}
.award-card:hover{transform:translateY(-3px);box-shadow:var(--card-hover)}
.award-logo{width:56px;height:56px;border-radius:12px;background:rgba(30,58,138,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-head);font-size:.55rem;font-weight:700;color:var(--royal);text-align:center;line-height:1.1;padding:.3rem}
.award-card h3,.award-card h4{font-size:.8rem;font-weight:700;color:var(--text);margin-bottom:.15rem}
.award-card p{font-size:.7rem;color:var(--text-soft);line-height:1.55;margin:0}

/* === TEAM === */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;justify-content:center;max-width:900px;margin-left:auto;margin-right:auto}
.team-card{text-align:center;padding:1.5rem 1rem;border-radius:16px;background:rgba(250,246,238,0.06);border:1px solid rgba(250,246,238,0.06);transition:all .3s}
.team-card:hover{background:rgba(250,246,238,0.1);transform:translateY(-4px)}
.team-av{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto .8rem;font-family:var(--font-head);font-size:1.1rem;font-weight:700;color:#fff;box-shadow:0 6px 20px rgba(164,137,69,0.2)}
.team-card h3,.team-card h4{font-size:.85rem;font-weight:700;color:var(--cream);margin-bottom:.15rem}
.team-card .role{font-size:.68rem;color:var(--gold-light);font-weight:600;letter-spacing:.03em;margin-bottom:.4rem}
.team-card p{font-size:.72rem;color:rgba(250,246,238,0.35);line-height:1.55}

/* === COSTS === */
.costs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem;margin-bottom:1.5rem}
.cost-card{padding:1.2rem;border-radius:14px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);transition:all .3s;text-align:center}
.cost-card:hover{transform:translateY(-3px);box-shadow:var(--card-hover)}
.cost-card h3,.cost-card h4{font-size:.8rem;font-weight:700;color:var(--text);margin-bottom:.3rem}
.cost-price{font-family:var(--font-head);font-size:1.4rem;font-weight:700;color:var(--gold);margin-bottom:.15rem}
.cost-card p{font-size:.7rem;color:var(--text-soft);line-height:1.5}
.cost-note{text-align:center;font-size:.8rem;color:var(--text-soft);max-width:600px;margin:0 auto}
.cost-note strong{color:var(--text)}

/* === PROCESS === */
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem;counter-reset:step}
.step{position:relative;padding:1.3rem 1rem;border-radius:13px;background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);text-align:center;counter-increment:step;transition:all .3s}
.step:hover{transform:translateY(-4px);box-shadow:var(--card-hover)}
.step::before{content:counter(step,decimal-leading-zero);display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;font-family:var(--font-head);font-size:.85rem;font-weight:700;margin:0 auto .6rem;box-shadow:0 4px 12px rgba(164,137,69,0.2)}
.step h3,.step h4{font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:.2rem}
.step p{font-size:.7rem;color:var(--text-soft);line-height:1.55}
@media(max-width:860px){.process-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){.process-grid{grid-template-columns:1fr 1fr}}

/* === WHY CHOOSE US === */
.wcu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem}
.wcu-card{padding:1.2rem;border-radius:13px;background:rgba(250,246,238,0.06);border:1px solid rgba(250,246,238,0.06);text-align:center;transition:all .3s}
.wcu-card:hover{background:rgba(250,246,238,0.1);border-color:rgba(164,137,69,0.15);transform:translateY(-3px)}
.wcu-icon{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto .6rem}
.wcu-icon svg{width:18px;height:18px;color:#fff}
.wcu-card h3,.wcu-card h4{font-size:.82rem;font-weight:700;color:var(--cream);margin-bottom:.2rem}
.wcu-card p{font-size:.72rem;color:rgba(250,246,238,0.35);line-height:1.55}
.lang-row{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem}
.lang-pill{padding:.35rem .8rem;border-radius:50px;background:rgba(250,246,238,0.06);border:1px solid rgba(250,246,238,0.08);color:rgba(250,246,238,0.45);font-size:.68rem;font-weight:600}

/* === ABOUT === */
.about-section{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.about-section h2{font-family:var(--font-head);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;color:var(--text);line-height:1.18;margin-bottom:.6rem}
.about-section h2 em{font-style:italic;color:var(--gold)}
.about-section>div>p{font-size:.85rem;color:var(--text-soft);line-height:1.76;margin-bottom:.5rem}
.about-card{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:18px;padding:2rem;box-shadow:var(--card-shadow)}
.about-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.ams{text-align:center;padding:.8rem;border-radius:11px;background:rgba(30,58,138,0.04);border:1px solid rgba(30,58,138,0.06)}
.ams-num{font-family:var(--font-head);font-size:1.5rem;font-weight:700;color:var(--royal)}
.ams-label{font-size:.6rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.07em;margin-top:.1rem}
.btn-outline{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.3rem;border-radius:50px;border:1.5px solid var(--gold);color:var(--gold);font-size:.8rem;font-weight:650;text-decoration:none;transition:all .3s;margin-top:.8rem}
.btn-outline:hover{background:var(--gold);color:#fff}
@media(max-width:768px){.about-section{grid-template-columns:1fr}}

/* === CONTACT === */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:.8rem}
.ci{display:flex;gap:.7rem;align-items:flex-start;padding:1rem;border-radius:12px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow)}
.ci-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ci-icon svg{width:17px;height:17px;color:#fff}
.ci h3,.ci h4{font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:.1rem}
.ci p,.ci a{font-size:.82rem;color:var(--text-soft);text-decoration:none;margin:0}.ci a:hover{color:var(--gold)}
.contact-form{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:18px;padding:1.8rem;box-shadow:var(--card-shadow)}
.contact-form h3{font-family:var(--font-head);font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:1rem;font-style:italic}
.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 input[type="tel"],.wpcf7 select,.wpcf7 textarea,
.fg input,.fg select,.fg textarea{width:100%;padding:.65rem .85rem;border-radius:10px;border:1.5px solid rgba(44,42,52,0.08);background:rgba(255,255,255,0.7);color:var(--text);font-family:inherit;font-size:16px;transition:all .25s;outline:none}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus,
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(164,137,69,0.08)}
.wpcf7 textarea,.fg textarea{resize:vertical;min-height:80px}
.fg{margin-bottom:.8rem}
.fg label{display:block;font-size:.72rem;font-weight:600;color:var(--text-soft);margin-bottom:.25rem}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.wpcf7 input[type="submit"],.form-submit{width:100%;padding:.72rem;border-radius:50px;border:none;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;font-weight:700;font-size:.85rem;cursor:pointer;font-family:inherit;box-shadow:0 4px 16px rgba(164,137,69,0.2);transition:all .3s;margin-top:.3rem}
.wpcf7 input[type="submit"]:hover,.form-submit:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(164,137,69,0.3)}
@media(max-width:768px){.contact-grid{grid-template-columns:1fr}.fg-row{grid-template-columns:1fr}}

/* === FAQ === */
.faq-item{border:1px solid var(--border);border-radius:12px;margin-bottom:.5rem;overflow:hidden;background:rgba(255,255,255,0.3);backdrop-filter:blur(8px);transition:all .3s}
.faq-item:hover{border-color:var(--border-gold)}
.faq-item.open{border-color:var(--border-gold);box-shadow:0 4px 24px rgba(164,137,69,0.06)}
.faq-q{width:100%;padding:.85rem 1.1rem;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.7rem;font-family:inherit;font-size:.83rem;font-weight:650;color:var(--text);text-align:left;line-height:1.5}
.faq-q svg{width:15px;height:15px;flex-shrink:0;transition:transform .35s;color:var(--gold)}
.faq-item.open .faq-q svg{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s ease}
.faq-item.open .faq-a{max-height:300px}
.faq-a-inner{padding:0 1.1rem .9rem;font-size:.8rem;color:var(--text-mid);line-height:1.72}

/* === CTA === */
.cta-section{padding:4.5rem 1.5rem;text-align:center;background:linear-gradient(175deg,var(--deep),#12132a,var(--indigo));position:relative;overflow:hidden;z-index:1}
.cta-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(164,137,69,0.15),transparent 55%)}
.cta-section h2{font-family:var(--font-head);font-size:clamp(1.7rem,3.5vw,2.8rem);font-weight:700;color:var(--cream);margin-bottom:.4rem;position:relative}
.cta-section h2 em{font-style:italic;color:var(--gold-light)}
.cta-section>p{font-size:.88rem;color:rgba(250,246,238,0.4);margin-bottom:1.8rem;position:relative;max-width:480px;margin-left:auto;margin-right:auto}
.cta-row{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;position:relative}

/* === FOOTER === */
.site-footer{padding:3rem 1.5rem 1.5rem;border-top:1px solid var(--border);background:rgba(255,255,255,0.2);position:relative;z-index:1}
.foot-in{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem}
.foot-brand .logo{font-size:1.2rem;margin-bottom:.4rem;display:inline-block}
.foot-brand>p{font-size:.74rem;color:var(--text-soft);line-height:1.6;max-width:260px}
.foot-col h3,.foot-col h4{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text);margin-bottom:.6rem}
.foot-col ul{list-style:none}
.foot-col ul li a,.foot-col a{display:block;font-size:.76rem;color:var(--text-soft);text-decoration:none;padding:.15rem 0;transition:color .2s}.foot-col a:hover{color:var(--gold)}
.foot-hours{margin-top:.85rem;padding-top:.7rem;border-top:1px solid rgba(44,42,52,0.08);font-size:.7rem;color:var(--text-light);line-height:1.55}
.foot-hours strong{display:block;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin-bottom:.25rem}
.foot-bottom{max-width:1100px;margin:2rem auto 0;padding-top:1.2rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem}
.foot-bottom p{font-size:.66rem;color:var(--text-light)}
.foot-sra{display:flex;align-items:center;gap:.3rem;font-size:.66rem;color:var(--text-soft);font-weight:500}
.foot-sra svg{width:13px;height:13px;color:var(--gold)}
@media(max-width:768px){.foot-in{grid-template-columns:1fr 1fr;gap:1.5rem}}
@media(max-width:480px){.foot-in{grid-template-columns:1fr}}

/* === SCROLL REVEAL === */
.sr{opacity:0;transform:translateY(24px);filter:blur(3px);transition:opacity .7s ease,transform .7s ease,filter .7s ease}
.sr.v{opacity:1;transform:translateY(0);filter:blur(0)}

/* === BLOG / SINGLE === */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.2rem;margin-top:2rem}
.blog-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:16px;overflow:hidden;box-shadow:var(--card-shadow);transition:all .3s}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--card-hover)}
.blog-card img{width:100%;height:200px;object-fit:cover}
.blog-card-body{padding:1.2rem}
.blog-card-body h3{font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--text);margin-bottom:.3rem;line-height:1.3}
.blog-card-body h3 a{color:var(--text);text-decoration:none}.blog-card-body h3 a:hover{color:var(--gold)}
.blog-card-body p{font-size:.78rem;color:var(--text-soft);line-height:1.65}
.blog-card-meta{font-size:.65rem;color:var(--text-light);margin-bottom:.4rem}
.single-content{max-width:760px;margin:0 auto;padding:3rem 1.5rem}
.single-content h1{font-family:var(--font-head);font-size:clamp(1.8rem,3vw,2.4rem);font-weight:700;color:var(--text);margin-bottom:1rem;line-height:1.2}
.single-content .entry-content p{margin-bottom:1rem}
.single-content .entry-content h2{font-family:var(--font-head);font-size:1.4rem;font-weight:700;color:var(--royal);margin:2rem 0 .8rem}
.single-content .entry-content h3{font-size:1rem;font-weight:700;color:var(--text);margin:1.5rem 0 .5rem}
.single-content .entry-content ul,.single-content .entry-content ol{margin:.7rem 0 1.2rem 1.3rem}
.single-content .entry-content li{margin-bottom:.4rem}
.single-content .entry-content img{border-radius:12px;margin:1rem 0}

/* === PAGE HEADER === */
.page-hero{background:var(--deep);padding:6rem 1.5rem 3rem;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(164,137,69,0.12),transparent 60%)}
.page-hero h1{font-family:var(--font-head);font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--cream);position:relative;margin-bottom:.4rem}
.page-hero h1 em{font-style:italic;color:var(--gold-light)}
.page-hero p{font-size:.9rem;color:rgba(250,246,238,0.4);position:relative}
.page-hero-fade{height:60px;background:linear-gradient(to bottom,var(--deep),var(--cream))}

/* WordPress defaults */
.wp-block-image img{border-radius:12px}
.aligncenter{text-align:center}
.alignleft{float:left;margin-right:1.5rem}
.alignright{float:right;margin-left:1.5rem}
.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;width:1px}

/* ============================================
   V2 - NEW COMPONENTS (Stage 1 SEO Brief)
   ============================================ */

/* === TRUST CREDENTIAL STRIP === */
/* === ACCREDITATIONS STRIP === */
.trust-strip{padding:2rem 1.5rem !important;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,0.7) 0%,rgba(250,246,238,0.4) 100%) !important;position:relative;z-index:2;margin-top:-45px}
.trust-strip::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:200px;height:1px;background:linear-gradient(90deg,transparent,rgba(164,137,69,0.4),transparent)}
.trust-strip-in{max-width:1200px !important;margin:0 auto !important;width:100%}
.trust-strip-label{display:flex !important;align-items:center;justify-content:center;gap:.9rem;font-family:var(--font-body);font-size:.64rem !important;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--text-soft);margin-bottom:1.3rem !important}
.trust-strip-label::before,.trust-strip-label::after{content:'';flex:0 0 56px;height:1px;background:linear-gradient(90deg,transparent,rgba(164,137,69,0.35),transparent)}

/* === ACCREDITATIONS STRIP - 4+3 Grid, Premium Glass Cards === */
.trust-strip{padding:3rem 1.5rem 2.8rem !important;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,0.55) 0%,rgba(250,246,238,0.15) 100%) !important;position:relative;z-index:2;margin-top:-45px;overflow:hidden}
.trust-strip::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:260px;height:1px;background:linear-gradient(90deg,transparent,rgba(164,137,69,0.5),transparent);z-index:1}
.trust-strip::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70%;height:120%;background:radial-gradient(ellipse at center,rgba(164,137,69,0.07) 0%,transparent 65%);pointer-events:none;z-index:0}
.trust-strip-in{max-width:1200px !important;margin:0 auto !important;width:100% !important;position:relative;z-index:1}
.trust-strip-label{display:flex !important;align-items:center;justify-content:center;gap:1rem;font-family:var(--font-body);font-size:.7rem !important;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--text-soft);margin-bottom:1.8rem !important}
.trust-strip-label::before,.trust-strip-label::after{content:'';flex:0 0 70px;height:1px;background:linear-gradient(90deg,transparent,rgba(164,137,69,0.4),transparent)}

/* 4 in row 1, 3 centered in row 2 - uniform cells */
.trust-strip-row{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:1rem !important;
  max-width:1040px !important;
  margin:0 auto !important;
  width:100% !important;
}

/* Glass card cells - larger, more presence */
.trust-strip-row .trust-logo-item{
  flex:0 0 calc(25% - 0.75rem) !important;
  height:110px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:1.1rem 1rem !important;
  margin:0 !important;
  background:rgba(255,255,255,0.6) !important;
  border:1px solid rgba(164,137,69,0.18) !important;
  border-radius:16px !important;
  box-shadow:0 2px 6px rgba(44,42,52,0.03),0 1px 2px rgba(44,42,52,0.04) !important;
  backdrop-filter:blur(10px) saturate(1.1) !important;
  -webkit-backdrop-filter:blur(10px) saturate(1.1) !important;
  filter:grayscale(55%) opacity(0.88) !important;
  transition:transform .4s cubic-bezier(0.2,0.8,0.2,1),box-shadow .4s ease,border-color .4s ease,background .4s ease,filter .4s ease !important;
  text-decoration:none !important;
  cursor:pointer;
  position:relative;
  overflow:hidden;
}

/* Subtle gold accent line on hover (top edge) */
.trust-strip-row .trust-logo-item::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%) scaleX(0);
  width:60%;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transition:transform .4s ease;
  transform-origin:center;
}

.trust-strip-row .trust-logo-item:hover{
  filter:grayscale(0%) opacity(1) !important;
  transform:translateY(-5px) !important;
  background:rgba(255,255,255,0.95) !important;
  border-color:rgba(164,137,69,0.45) !important;
  box-shadow:0 1px 3px rgba(44,42,52,0.03),0 18px 40px rgba(164,137,69,0.2) !important;
}
.trust-strip-row .trust-logo-item:hover::before{transform:translateX(-50%) scaleX(1)}

/* Image styling - larger, subtle scale on hover */
.trust-strip-row .trust-logo-item img{
  max-height:78px !important;
  max-width:100% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  background:transparent !important;
  transition:transform .4s ease !important;
}
.trust-strip-row .trust-logo-item:hover img{transform:scale(1.06) !important}

/* Tablet: keep 4+3 layout but slightly smaller */
@media(max-width:900px){
  .trust-strip{padding:2.2rem 1rem 2rem !important;margin-top:-30px}
  .trust-strip-label{font-size:.6rem !important;letter-spacing:.22em;margin-bottom:1.4rem !important}
  .trust-strip-label::before,.trust-strip-label::after{flex:0 0 40px}
  .trust-strip-row{gap:.8rem !important;max-width:760px !important}
  .trust-strip-row .trust-logo-item{flex:0 0 calc(25% - .6rem) !important;height:92px !important;padding:.9rem .7rem !important;border-radius:14px !important}
  .trust-strip-row .trust-logo-item img{max-height:66px !important}
}

/* Mobile: 2+2+2+1 - better touch targets, badges remain legible */
@media(max-width:600px){
  .trust-strip{padding:1.8rem .8rem 1.6rem !important}
  .trust-strip-label{font-size:.55rem !important;letter-spacing:.18em}
  .trust-strip-row{gap:.7rem !important;max-width:460px !important}
  .trust-strip-row .trust-logo-item{flex:0 0 calc(50% - .4rem) !important;height:88px !important;padding:.9rem !important;border-radius:12px !important}
  .trust-strip-row .trust-logo-item img{max-height:64px !important}
}

@media(max-width:380px){
  .trust-strip-row{gap:.5rem !important}
  .trust-strip-row .trust-logo-item{flex:0 0 calc(50% - .3rem) !important;height:76px !important;padding:.7rem !important}
  .trust-strip-row .trust-logo-item img{max-height:54px !important}
}

/* === SPOTLIGHT GRID === */
.spotlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.spot-card{padding:1.8rem;border-radius:16px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);text-align:center;transition:all .3s}
.spot-card:hover{transform:translateY(-5px);box-shadow:var(--card-hover)}
.spot-card-accent{background:linear-gradient(145deg,rgba(164,137,69,0.06),var(--glass));border-color:var(--border-gold)}
.spot-icon{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--royal),#1E40AF);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#fff;box-shadow:0 4px 16px rgba(30,58,138,0.15)}
.spot-card-accent .spot-icon{background:linear-gradient(135deg,var(--gold),var(--gold-dark));box-shadow:0 4px 16px rgba(164,137,69,0.25)}
.spot-card h3{font-family:var(--font-head);font-size:1.05rem;font-weight:700;color:var(--text);margin-bottom:.4rem;font-style:italic}
.spot-card p{font-size:.8rem;color:var(--text-soft);line-height:1.65;margin-bottom:.6rem}
@media(max-width:768px){.spotlight-grid{grid-template-columns:1fr}}

/* === ELIGIBILITY CALCULATOR - PREMIUM REDESIGN === */
.calc-wrap{max-width:640px;margin:0 auto;position:relative}
.calc-wrap::before{content:'';position:absolute;inset:-2px;border-radius:24px;background:linear-gradient(135deg,var(--gold),transparent 40%,transparent 60%,var(--gold-light));opacity:.3;z-index:0;animation:calcGlow 4s ease-in-out infinite alternate}
@keyframes calcGlow{0%{opacity:.2;filter:blur(0)}100%{opacity:.4;filter:blur(2px)}}
.calc-card{position:relative;z-index:1;background:linear-gradient(165deg,rgba(26,28,48,0.95),rgba(39,39,58,0.9));backdrop-filter:blur(30px);border:1px solid rgba(164,137,69,0.15);border-radius:22px;padding:2.5rem 2rem;min-height:380px;box-shadow:0 20px 60px rgba(0,0,0,0.25),0 0 80px rgba(164,137,69,0.06),inset 0 1px 0 rgba(250,246,238,0.05)}
.calc-step{display:none;text-align:center}.calc-step.active{display:block;animation:calcFadeIn .4s ease}
@keyframes calcFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.calc-progress{height:5px;background:rgba(250,246,238,0.06);border-radius:5px;margin-bottom:1.5rem;overflow:hidden;position:relative}
.calc-progress::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);animation:shimmer 2s infinite}
@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.calc-bar{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold),var(--gold-light));border-radius:5px;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px rgba(164,137,69,0.4)}
.calc-step-label{display:inline-block;padding:.25rem .8rem;border-radius:50px;background:rgba(164,137,69,0.08);border:1px solid rgba(164,137,69,0.12);font-size:.58rem;color:var(--gold-light);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.8rem;font-weight:600}
.calc-step h3{font-family:var(--font-head);font-size:1.25rem;font-weight:700;color:var(--cream);margin-bottom:1.5rem;font-style:italic;letter-spacing:-0.01em;line-height:1.3}
.calc-options{display:flex;flex-direction:column;gap:.6rem}
.calc-opt{padding:.9rem 1.2rem;border-radius:14px;border:1.5px solid rgba(250,246,238,0.08);background:linear-gradient(135deg,rgba(250,246,238,0.03),rgba(250,246,238,0.01));color:rgba(250,246,238,0.7);font-size:.85rem;font-weight:550;cursor:pointer;font-family:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;overflow:hidden}
.calc-opt::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(164,137,69,0.12),rgba(164,137,69,0.04));opacity:0;transition:opacity .3s}
.calc-opt:hover{border-color:rgba(164,137,69,0.5);color:var(--gold-light);transform:translateY(-2px);box-shadow:0 4px 20px rgba(164,137,69,0.12)}
.calc-opt:hover::before{opacity:1}
.calc-opt:active{transform:translateY(0)}
.calc-result-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto 1.2rem;color:#fff;box-shadow:0 8px 28px rgba(164,137,69,0.3),0 0 40px rgba(164,137,69,0.1);animation:resultPop .5s cubic-bezier(.175,.885,.32,1.275)}
@keyframes resultPop{0%{transform:scale(0)}100%{transform:scale(1)}}
.calc-result-cta{margin-top:1.5rem;padding-top:1.2rem;border-top:1px solid rgba(250,246,238,0.06)}
.calc-restart{margin-top:1.2rem;background:rgba(250,246,238,0.04);border:1px solid rgba(250,246,238,0.1);color:rgba(250,246,238,0.4);padding:.5rem 1.2rem;border-radius:50px;font-size:.72rem;cursor:pointer;font-family:inherit;transition:all .2s;font-weight:550}
.calc-restart:hover{border-color:rgba(250,246,238,0.3);color:rgba(250,246,238,0.7);background:rgba(250,246,238,0.06)}
#calcResult h3{font-family:var(--font-head);font-size:1.3rem;color:var(--gold-light);margin-bottom:.8rem;font-style:italic}
#calcResult p{font-size:.85rem;color:rgba(250,246,238,0.55);line-height:1.75;max-width:460px;margin:0 auto}
#calcResult strong{color:var(--gold-light)}

/* === COST TABLE === */
.cost-table-wrap{max-width:700px;margin:0 auto}
.cost-table{width:100%;border-collapse:collapse;font-size:.82rem;border-radius:12px;overflow:hidden;box-shadow:var(--card-shadow)}
.cost-table thead{background:linear-gradient(135deg,var(--royal),#1E40AF)}
.cost-table th{text-align:left;padding:.7rem .9rem;font-weight:700;color:#fff;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}
.cost-table td{padding:.65rem .9rem;border-top:1px solid var(--border);color:var(--text-mid);background:rgba(255,255,255,0.6)}
.cost-table tr:nth-child(even) td{background:rgba(255,255,255,0.35)}
.cost-table .cost-highlight{font-family:var(--font-head);font-size:1.1rem;font-weight:700;color:var(--gold)}
.cost-table .cost-total td{background:linear-gradient(135deg,rgba(164,137,69,0.08),rgba(164,137,69,0.04));border-top:2px solid var(--gold)}

/* Mobile: convert 3-col cost table into stacked cards (each row becomes a card)
   Each TD is labelled by its column heading using data-label attributes added below. */
@media(max-width:560px){
  .cost-table{display:block;font-size:.9rem;background:transparent;box-shadow:none;border-radius:0}
  .cost-table thead{display:none}
  .cost-table tbody{display:block}
  .cost-table tr{display:block;background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:.7rem;padding:.4rem .6rem;box-shadow:var(--card-shadow)}
  .cost-table tr:nth-child(even) td{background:transparent}
  .cost-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;padding:.55rem .3rem;border-top:none;border-bottom:1px dashed rgba(164,137,69,.18);background:transparent;font-size:.84rem;line-height:1.45}
  .cost-table td:last-child{border-bottom:none}
  .cost-table td::before{content:attr(data-label);font-weight:700;color:var(--text-strong,#1A1C30);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;min-width:38%;color:var(--gold-dark,#8B7339)}
  .cost-table td:first-child::before{display:none}
  .cost-table td:first-child{font-weight:700;color:#1A1C30;font-size:.95rem;border-bottom:1px solid rgba(164,137,69,.25);padding-bottom:.55rem;margin-bottom:.2rem}
  .cost-table .cost-highlight{font-size:1.15rem}
  .cost-table tr.cost-total{background:linear-gradient(135deg,rgba(164,137,69,0.1),rgba(164,137,69,0.04));border:2px solid var(--gold)}
  .cost-table tr.cost-total td{background:transparent}
}
.cost-badges{display:flex;justify-content:center;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}
.cost-badge-item{padding:.3rem .7rem;border-radius:50px;background:rgba(164,137,69,0.08);border:1px solid rgba(164,137,69,0.15);font-size:.62rem;font-weight:600;color:var(--gold);letter-spacing:.02em}

/* === INSIGHT CARDS === */
.insight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.8rem}
.insight-card{padding:1.4rem;border-radius:14px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);transition:all .3s;position:relative;padding-left:3.5rem}
.insight-card:hover{transform:translateY(-3px);box-shadow:var(--card-hover)}
.insight-num{position:absolute;left:1.2rem;top:1.4rem;font-family:var(--font-head);font-size:1.1rem;font-weight:700;color:var(--gold)}
.insight-card h3,.insight-card h4{font-size:.82rem;font-weight:700;color:var(--text);margin-bottom:.25rem}
.insight-card p{font-size:.76rem;color:var(--text-soft);line-height:1.6;margin:0}

/* === LEAD MAGNET === */
.leadmagnet{text-align:center;padding:2rem;border-radius:20px;background:rgba(250,246,238,0.04);border:1px solid rgba(250,246,238,0.06)}
.leadmagnet-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#fff;box-shadow:0 6px 20px rgba(164,137,69,0.2)}
.leadmagnet h2{font-family:var(--font-head);font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:700;color:var(--cream);margin-bottom:.5rem}
.leadmagnet h2 em{font-style:italic;color:var(--gold-light)}
.leadmagnet>p{font-size:.85rem;color:rgba(250,246,238,0.4);margin-bottom:1.2rem;max-width:500px;margin-left:auto;margin-right:auto}
.leadmagnet-form{display:flex;gap:.5rem;max-width:440px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.leadmagnet-input{flex:1;min-width:200px;padding:.7rem 1rem;border-radius:50px;border:1px solid rgba(250,246,238,0.1);background:rgba(250,246,238,0.06);color:var(--cream);font-family:inherit;font-size:.82rem;outline:none;transition:border-color .2s}
.leadmagnet-input:focus{border-color:var(--gold)}
.leadmagnet-input::placeholder{color:rgba(250,246,238,0.3)}

/* === REFUSAL SECTION === */
.refusal-section{background:linear-gradient(135deg,rgba(185,28,28,0.03),rgba(164,137,69,0.03))}
.refusal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.refusal-card{padding:1.3rem;border-radius:14px;background:rgba(255,255,255,0.5);border:1px solid rgba(185,28,28,0.1);box-shadow:0 2px 12px rgba(185,28,28,0.03);transition:all .3s}
.refusal-card:hover{transform:translateY(-3px);border-color:rgba(185,28,28,0.2)}
.refusal-card h3,.refusal-card h4{font-size:.82rem;font-weight:700;color:#991B1B;margin-bottom:.3rem}
.refusal-card p{font-size:.76rem;color:var(--text-soft);line-height:1.6;margin:0}
@media(max-width:768px){.refusal-grid{grid-template-columns:1fr}}

/* === TEAM FEATURED === */
.team-featured{display:grid;grid-template-columns:280px 1fr;gap:2rem;align-items:center;padding:2rem;border-radius:20px;background:rgba(250,246,238,0.04);border:1px solid rgba(250,246,238,0.06)}
.team-photo-wrap{width:100%}
.team-photo-placeholder{width:200px;height:240px;border-radius:16px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto;box-shadow:0 12px 40px rgba(164,137,69,0.2)}
.team-photo-placeholder span{font-family:var(--font-head);font-size:2.5rem;font-weight:700;color:#fff}
.team-photo-placeholder small{font-size:.55rem;color:rgba(255,255,255,0.5);margin-top:.3rem}
.team-featured-info h3{font-family:var(--font-head);font-size:1.5rem;font-weight:700;color:var(--cream);margin-bottom:.15rem}
.team-featured-info .team-role{font-size:.72rem;color:var(--gold-light);font-weight:600;margin-bottom:.8rem}
.team-credentials{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem}
.team-credentials span{padding:.25rem .65rem;border-radius:50px;background:rgba(164,137,69,0.1);border:1px solid rgba(164,137,69,0.15);font-size:.62rem;font-weight:600;color:var(--gold-light)}
.team-featured-info p{font-size:.82rem;color:rgba(250,246,238,0.4);line-height:1.7}
@media(max-width:768px){.team-featured{grid-template-columns:1fr;text-align:center}}

/* === WHATSAPP FLOAT (Task 10) === */
/* old .wa-float removed; now using .kq-wa-float in footer (page-aware pre-filled messages) */
@media(max-width:768px){.wa-float{bottom:5.5rem;right:.8rem;width:50px;height:50px}}

/* === MOBILE CTA BAR (Task 11) === */
.mobile-cta-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:160;background:var(--deep);border-top:1px solid rgba(164,137,69,0.15);padding:.5rem;gap:.4rem}
.mcta-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.7rem;border-radius:10px;font-size:.78rem;font-weight:700;text-decoration:none;font-family:inherit;transition:all .2s}
.mcta-call{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff}
.mcta-wa{background:#25D366;color:#fff}
@media(max-width:768px){.mobile-cta-bar{display:flex}}

/* === LANGUAGE SELECTOR === */
.lang-select{position:relative}
.lang-btn{background:none;border:1px solid rgba(250,246,238,0.15);color:rgba(250,246,238,0.6);padding:.2rem .6rem;border-radius:50px;font-size:.62rem;font-weight:600;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:.3rem;transition:all .2s}
.lang-btn:hover{border-color:rgba(164,137,69,0.4);color:var(--gold-light)}
.lang-dropdown{display:none;position:absolute;top:100%;right:0;background:rgba(250,246,238,0.95);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:10px;padding:.4rem;min-width:160px;box-shadow:var(--card-shadow);z-index:200;margin-top:.3rem}
.lang-select:hover .lang-dropdown{display:flex;flex-direction:column}
.lang-dropdown span{padding:.35rem .6rem;border-radius:6px;font-size:.72rem;color:var(--text-mid);cursor:pointer;transition:all .15s}
.lang-dropdown span:hover{background:var(--gold-muted);color:var(--gold)}

/* === SERVICE CATEGORY TITLE === */
.srv-category-title{font-family:var(--font-head);font-size:1rem;font-weight:600;color:var(--royal);margin-bottom:.8rem;font-style:italic;padding-left:.5rem;border-left:3px solid var(--gold)}

/* === CALENDAR EMBED FIX === */
.calendly-inline-widget{border-radius:12px;overflow:hidden;background:rgba(255,255,255,0.5)}

/* === GOOGLE MAPS === */
.ci-map{border-radius:12px;overflow:hidden;box-shadow:var(--card-shadow);margin-top:.4rem}

/* Adjust footer padding for mobile CTA bar */
@media(max-width:768px){.site-footer{padding-bottom:5rem}}

/* === TEAM PHOTO IMAGES === */
.team-photo-img{width:200px;height:240px;border-radius:16px;object-fit:cover;display:block;margin:0 auto;box-shadow:0 12px 40px rgba(164,137,69,0.2)}
.team-card-img{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block;margin:0 auto .8rem;box-shadow:0 6px 20px rgba(164,137,69,0.2)}

/* ============================================
   CONTACT PAGE STYLES
   ============================================ */

/* Quick Contact Strip */
.quick-contact-strip{padding:1.5rem;background:rgba(255,255,255,0.3);border-bottom:1px solid var(--border);margin-top:-30px;position:relative;z-index:2}
.qc-in{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.qc-item{display:flex;align-items:center;gap:.7rem;padding:1rem;border-radius:14px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);text-decoration:none;transition:all .3s;color:var(--text)}
.qc-item:hover{transform:translateY(-3px);box-shadow:var(--card-hover);color:var(--text)}
.qc-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--royal),#1E40AF);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}
.qc-wa{background:#25D366!important}
.qc-gold{background:linear-gradient(135deg,var(--gold),var(--gold-dark))!important}
.qc-item strong{display:block;font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:.1rem}
.qc-item span{font-size:.72rem;color:var(--text-soft)}
.qc-cta{background:linear-gradient(135deg,rgba(164,137,69,0.06),var(--glass));border-color:var(--border-gold)}
@media(max-width:768px){.qc-in{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.qc-in{grid-template-columns:1fr}}

/* Contact Page Grid */
.contact-page-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:2.5rem;align-items:start}
@media(max-width:860px){.contact-page-grid{grid-template-columns:1fr}}

/* Contact Cards */
.cp-card{display:flex;gap:.8rem;align-items:flex-start;padding:1.1rem;border-radius:13px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);margin-bottom:.7rem;transition:all .3s}
.cp-card:hover{transform:translateY(-2px);box-shadow:var(--card-hover)}
.cp-icon{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;box-shadow:0 4px 12px rgba(164,137,69,0.15)}
.cp-card h3,.cp-card h4{font-size:.82rem;font-weight:700;color:var(--text);margin-bottom:.2rem}
.cp-card p{font-size:.8rem;color:var(--text-soft);line-height:1.6;margin:0}
.cp-card a{font-size:.8rem;color:var(--gold);text-decoration:none;display:inline-block;line-height:1.6;transition:color .2s}
.cp-card a:hover{color:var(--gold-dark)}

/* Map */
.cp-map{margin-top:.7rem;border-radius:14px;overflow:hidden;box-shadow:var(--card-shadow)}

/* Office Photo */
.cp-office-photo{margin-top:.7rem}

/* Booking Card */
.booking-card{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:20px;padding:0;box-shadow:var(--card-shadow);overflow:hidden;position:sticky;top:80px}
.booking-header{padding:1.8rem 1.8rem 1rem;text-align:center;background:linear-gradient(135deg,rgba(164,137,69,0.04),rgba(30,58,138,0.02))}
.booking-icon{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto .8rem;color:#fff;box-shadow:0 6px 20px rgba(164,137,69,0.2)}
.booking-header h2{font-family:var(--font-head);font-size:1.3rem;font-weight:700;color:var(--text);margin-bottom:.3rem;font-style:italic}
.booking-header p{font-size:.8rem;color:var(--text-soft);line-height:1.6}
.booking-card .calendly-inline-widget{border-top:1px solid var(--border)}

/* === COOKIE BANNER OVERRIDE === */
.cookie-notice-container{background:var(--deep)!important;border-top:1px solid rgba(164,137,69,0.15)!important}
.cookie-notice-container .cn-button:not(.cn-button-custom){background:var(--gold)!important;color:#fff!important;border-radius:50px!important;border:none!important;padding:.4rem 1rem!important}
.cookie-notice-container .cn-button:not(.cn-button-custom):hover{background:var(--gold-dark)!important}
.cookie-notice-container a{color:var(--gold-light)!important}
.cookie-notice-container .cn-text-container{color:rgba(250,246,238,0.6)!important;font-size:.78rem!important}

/* === NAV ACTIVE STATE FIX === */
.nav-main ul li.current-menu-item>a,.nav-main ul li.current_page_item>a,.nav-main ul li.current-menu-ancestor>a{color:var(--gold)!important;background:var(--gold-muted)!important}

/* === ELEMENTOR OVERRIDE - force our styles on Elementor pages === */
.elementor-page .site-header,.elementor-page .topbar,.elementor-page .site-footer,.elementor-page .wa-float,.elementor-page .mobile-cta-bar{display:block!important}

/* ============================================
   ELEMENTOR PAGE OVERRIDES - Force gold/cream theme
   ============================================ */

/* Override Elementor teal backgrounds */
.elementor-section[data-settings*="background_color"],
.elementor-element .elementor-widget-container,
.elementor-section.elementor-section-full_width{transition:none!important}

/* Teal/green backgrounds → dark indigo */
.elementor-element [style*="background-color: #16a08c"],
.elementor-element [style*="background-color:#16a08c"],
.elementor-element [style*="background-color: #1a9e8c"],
.elementor-element [style*="background-color:#1a9e8c"],
.elementor-element [style*="background-color: #17a389"],
.elementor-element [style*="background: #16a08c"],
.elementor .elementor-section[style*="16a08c"],
.elementor .elementor-section[style*="1a9e8c"],
.elementor-section .elementor-container [style*="background"]{
  /* Can't override inline styles easily, so we use a different approach */
}

/* Force our colors on ALL Elementor hero sections */
body.elementor-page .elementor-section:first-child,
body.elementor-page .elementor-section.elementor-section-height-full,
body.elementor-page .elementor-section[data-element_type="section"]:first-of-type{
  background:var(--deep)!important
}

/* Override ALL teal-colored elements globally */
body.elementor-page .elementor-button{
  background-color:var(--gold)!important;
  border-color:var(--gold)!important;
  border-radius:50px!important;
  font-family:var(--font-body)!important;
  font-weight:600!important;
  transition:all .3s!important
}
body.elementor-page .elementor-button:hover{
  background-color:var(--gold-dark)!important;
  border-color:var(--gold-dark)!important
}

/* Force heading fonts */
body.elementor-page h1,body.elementor-page h2,body.elementor-page h3{
  font-family:var(--font-head)!important;
  color:var(--text)!important
}
body.elementor-page .elementor-section:first-child h1,
body.elementor-page .elementor-section:first-child h2{
  color:var(--cream)!important
}

/* Override teal text/icon colors */
body.elementor-page .elementor-icon i,
body.elementor-page .elementor-icon svg{
  color:var(--gold)!important;
  fill:var(--gold)!important
}

/* Fix Elementor section backgrounds that use teal */
body.elementor-page .elementor-section{
  background-color:var(--cream)!important
}
body.elementor-page .elementor-section:first-child{
  background:linear-gradient(175deg,var(--deep),var(--indigo))!important
}
body.elementor-page .elementor-section:first-child *{
  color:var(--cream)!important
}
body.elementor-page .elementor-section:first-child .elementor-button{
  color:var(--deep)!important
}

/* Fix link colors */
body.elementor-page a{color:var(--gold)}
body.elementor-page a:hover{color:var(--gold-dark)}

/* Override Elementor divider colors */
body.elementor-page .elementor-divider-separator{
  border-color:var(--gold)!important
}

/* Fix the sticky Call Now / WhatsApp bar at bottom (from old Elementor) */
body.elementor-page .elementor-section[data-settings*="sticky"]{
  background:var(--deep)!important
}

/* Mobile CTA bars from Elementor */
body .elementor-element [style*="background-color: #c49a36"],
body .elementor-element [style*="background-color:#c49a36"]{
  background-color:var(--gold)!important
}
body .elementor-element [style*="background-color: #25D366"],
body .elementor-element [style*="background-color:#25D366"]{
  background-color:#25D366!important
}

/* Google review badge - keep as is */
body.elementor-page .elementor-widget-image img{
  border-radius:12px
}

/* Body text */
body.elementor-page .elementor-widget-text-editor{
  color:var(--text-mid)!important;
  font-family:var(--font-body)!important
}

/* Tables in Elementor */
body.elementor-page table thead{
  background:linear-gradient(135deg,var(--royal),#1E40AF)!important
}
body.elementor-page table thead th{
  color:#fff!important
}
body.elementor-page table{
  border-radius:12px;
  overflow:hidden;
  box-shadow:var(--card-shadow)
}

/* === HIDE OLD ELEMENTOR STICKY CTA BUTTONS === */
body.elementor-page .elementor-section[data-settings*="sticky_on"],
body.elementor-page .elementor-sticky--active,
body.elementor-page .elementor-section-wrap>.elementor-section:last-child[data-element_type="section"][style*="position"]{
  display:none!important
}
/* Target the full-width Call Now / WhatsApp bars specifically */
body.elementor-page .elementor-element a[href^="tel:"][style*="background"],
body.elementor-page .elementor-element a[href*="wa.me"][style*="background"]{
  /* keep visible but restyle */
}
/* Hide any fixed/sticky bottom bars from Elementor */
.elementor-section[style*="position: fixed"],
.elementor-section[style*="position:fixed"]{
  display:none!important
}

/* === HIDE MOBILE CTA BAR ON ELEMENTOR PAGES === */
body.elementor-page .mobile-cta-bar{display:none!important}
body.elementor-page .wa-float{display:none!important}

/* === LOGO IMAGE === */
.logo-img{height:72px;width:auto;display:inline-block;vertical-align:middle;margin-right:.5rem;border-radius:4px;object-fit:contain}
.logo-img-footer{height:60px;margin-right:.4rem}
.logo{display:flex!important;align-items:center}
.logo .logo-text{display:inline}
@media(max-width:480px){.logo-img{height:56px}.logo-img-footer{height:48px}}

/* ============================================
   ABOUT US PAGE STYLES
   ============================================ */
.about-intro{max-width:800px;margin:0 auto;text-align:center}
.about-intro p{font-size:.88rem;color:var(--text-soft);line-height:1.75;margin-bottom:.8rem}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.about-stat{text-align:center;font-size:.72rem;color:var(--text-soft);font-weight:500}
.about-stat-num{font-family:var(--font-head);font-size:1.8rem;font-weight:700;color:var(--gold);line-height:1.2}
@media(max-width:480px){.about-stats{grid-template-columns:repeat(2,1fr)}}

.about-details-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.about-detail-card{padding:1.3rem;border-radius:14px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow)}
.about-detail-card h3,.about-detail-card h4{font-size:.78rem;font-weight:700;color:var(--gold);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.04em}
.about-detail-card p{font-size:.8rem;color:var(--text-soft);line-height:1.6;margin:0}
.about-detail-card strong{color:var(--text)}
@media(max-width:768px){.about-details-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.about-details-grid{grid-template-columns:1fr}}

.about-qual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.about-qual-card{padding:1.5rem;border-radius:16px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--card-shadow)}
.about-qual-card h3,.about-qual-card h4{font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--text);margin-bottom:.8rem;font-style:italic}
.about-qual-items{display:flex;flex-direction:column;gap:.35rem}
.about-qual-items span{font-size:.78rem;color:var(--text-soft);padding:.3rem .6rem;border-radius:8px;background:rgba(164,137,69,0.04);border:1px solid rgba(164,137,69,0.08)}
@media(max-width:768px){.about-qual-grid{grid-template-columns:1fr}}

/* ============================================
   VISA CHECKER - SPLIT PANEL DESIGN
   ============================================ */
.vc-wrapper{display:grid;grid-template-columns:380px 1fr;border-radius:24px;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,0.12),0 0 0 1px rgba(0,0,0,0.04);max-width:920px;margin:0 auto;min-height:480px}
.vc-info{background:linear-gradient(170deg,var(--deep) 0%,#0F1029 100%);padding:2.5rem;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.vc-info::before{content:'';position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.08),transparent 70%)}
.vc-info::after{content:'';position:absolute;bottom:-40px;left:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(30,58,138,0.1),transparent 70%)}
.vc-info-inner{position:relative;z-index:1}
.vc-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .8rem;border-radius:50px;background:rgba(164,137,69,0.12);border:1px solid rgba(164,137,69,0.2);font-size:.65rem;font-weight:600;color:var(--gold-light);margin-bottom:1.2rem;letter-spacing:.03em}
.vc-info h2{font-family:var(--font-head);font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:800;color:var(--cream);line-height:1.15;margin-bottom:1rem}
.vc-info h2 em{font-style:italic;color:var(--gold-light);display:block}
.vc-info>p,.vc-info-inner>p{font-size:.85rem;color:rgba(250,246,238,0.45);line-height:1.65;margin-bottom:1.5rem}
.vc-features{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}
.vc-feat{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:rgba(250,246,238,0.55);font-weight:500}
.vc-feat svg{color:var(--gold-light);flex-shrink:0}
.vc-secure{display:flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;color:var(--gold-light);margin-bottom:1.2rem}
.vc-users{display:flex;align-items:center;gap:.5rem;font-size:.68rem;color:rgba(250,246,238,0.3)}
.vc-user-dots{display:flex;gap:-4px}
.vc-user-dots span{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));border:2px solid var(--deep);margin-right:-6px;display:block}
.vc-user-dots span:nth-child(2){background:linear-gradient(135deg,var(--royal),#1E40AF)}
.vc-user-dots span:nth-child(3){background:linear-gradient(135deg,#059669,#047857)}
.vc-user-dots span:nth-child(4){background:linear-gradient(135deg,#7C3AED,#6D28D9)}

/* Quiz Panel */
.vc-quiz{background:#fff;padding:2.5rem;display:flex;flex-direction:column;justify-content:center}
.vc-quiz .calc-step{display:none;animation:vcSlide .35s ease}.vc-quiz .calc-step.active{display:block}
@keyframes vcSlide{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
.vc-step-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.vc-step-num{font-size:.68rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.08em}
.vc-dots{display:flex;gap:.4rem}
.vc-dots span{width:28px;height:4px;border-radius:4px;background:rgba(0,0,0,0.08);transition:all .3s}
.vc-dots span.active{background:var(--gold);width:36px}
.vc-dots span.done{background:var(--gold-light)}
.vc-quiz h3{font-family:var(--font-head);font-size:1.2rem;font-weight:700;color:var(--text);margin-bottom:1.5rem;line-height:1.35}

/* Radio Options */
.vc-options{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}
.vc-radio{display:flex;align-items:center;gap:.8rem;padding:1rem 1.2rem;border-radius:14px;border:1.5px solid rgba(0,0,0,0.08);cursor:pointer;transition:all .25s;position:relative}
.vc-radio:hover{border-color:rgba(164,137,69,0.3);background:rgba(164,137,69,0.02)}
.vc-radio input{display:none}
.vc-radio-dot{width:20px;height:20px;border-radius:50%;border:2px solid rgba(0,0,0,0.15);flex-shrink:0;position:relative;transition:all .25s}
.vc-radio-dot::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--gold);transform:scale(0);transition:transform .25s cubic-bezier(.175,.885,.32,1.275)}
.vc-radio input:checked~.vc-radio-dot{border-color:var(--gold)}
.vc-radio input:checked~.vc-radio-dot::after{transform:scale(1)}
.vc-radio input:checked~.vc-radio-text{color:var(--text);font-weight:600}
.vc-radio:has(input:checked){border-color:var(--gold);background:rgba(164,137,69,0.04);box-shadow:0 2px 12px rgba(164,137,69,0.08)}
.vc-radio-text{font-size:.88rem;color:var(--text-mid);font-weight:500;transition:all .2s}

/* Buttons */
.vc-next,.vc-submit{width:100%;padding:.85rem;border:none;border-radius:14px;background:var(--deep);color:#fff;font-size:.88rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:.4rem}
.vc-next:hover:not(:disabled),.vc-submit:hover:not(:disabled){background:#0F1029;transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,0.15)}
.vc-next:disabled,.vc-submit:disabled{opacity:.3;cursor:not-allowed}
.vc-back{background:none;border:none;color:var(--text-light);font-size:.78rem;font-weight:600;cursor:pointer;font-family:inherit;padding:.5rem 0;transition:color .2s}
.vc-back:hover{color:var(--gold)}
.vc-btn-row{display:flex;align-items:center;gap:1rem}
.vc-btn-row .vc-next,.vc-btn-row .vc-submit{flex:1}

/* Results */
.vc-quiz .calc-result-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#059669,#047857);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#fff;animation:resultPop .5s cubic-bezier(.175,.885,.32,1.275)}

/* Responsive */
@media(max-width:768px){
  .vc-wrapper{grid-template-columns:1fr;max-width:500px}
  .vc-info{padding:2rem;text-align:center}
  .vc-info h2{font-size:1.6rem}
  .vc-features{align-items:center}
  .vc-users{justify-content:center}
  .vc-quiz{padding:1.8rem}
}


/* ============================================
   FLOATING WHATSAPP BUTTON
   Fixed bottom-right, expands on desktop hover
   ============================================ */
.kq-wa-float{
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:9998;
  display:flex;
  align-items:center;
  height:60px;
  padding:0 14px;
  background:linear-gradient(135deg,#25D366 0%,#128C7E 100%);
  color:#fff !important;
  text-decoration:none !important;
  border-radius:50px;
  box-shadow:0 6px 20px rgba(37,211,102,0.35),0 2px 6px rgba(0,0,0,0.12);
  font-family:var(--font-body);
  font-size:.9rem;
  font-weight:600;
  letter-spacing:.01em;
  transition:transform .25s ease,box-shadow .25s ease,padding .25s ease;
  overflow:hidden;
  max-width:60px;
  animation:kq-wa-entrance .6s ease-out .8s both;
}
.kq-wa-float:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 28px rgba(37,211,102,0.45),0 3px 8px rgba(0,0,0,0.15);
  max-width:260px;
  padding:0 22px 0 14px;
}
.kq-wa-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0}
.kq-wa-label{
  margin-left:10px;
  white-space:nowrap;
  opacity:0;
  transform:translateX(-8px);
  transition:opacity .2s ease .05s,transform .25s ease;
  font-weight:600;
}
.kq-wa-float:hover .kq-wa-label{opacity:1;transform:translateX(0)}

/* Pulse ring - subtle attention-getter */
.kq-wa-pulse{
  position:absolute;
  top:50%;
  left:28px;
  transform:translate(-50%,-50%);
  width:60px;
  height:60px;
  border-radius:50%;
  background:#25D366;
  opacity:.4;
  pointer-events:none;
  animation:kq-wa-pulse 2.4s ease-out infinite;
  z-index:-1;
}
@keyframes kq-wa-pulse{
  0%{transform:translate(-50%,-50%) scale(0.9);opacity:.45}
  70%{transform:translate(-50%,-50%) scale(1.8);opacity:0}
  100%{transform:translate(-50%,-50%) scale(1.8);opacity:0}
}
@keyframes kq-wa-entrance{
  0%{transform:translateY(80px) scale(0.6);opacity:0}
  100%{transform:translateY(0) scale(1);opacity:1}
}

/* Mobile: compact circle only, always visible */
@media(max-width:720px){
  .kq-wa-float{
    bottom:18px;
    right:18px;
    height:56px;
    width:56px;
    max-width:56px;
    padding:0;
    justify-content:center;
  }
  .kq-wa-float:hover{max-width:56px;padding:0;transform:scale(1.05)}
  .kq-wa-label{display:none}
  .kq-wa-pulse{left:50%;width:56px;height:56px}
}

/* Lift WhatsApp button above guide-page floating CTAs so they don't overlap.
   Uses :has() (modern browsers) with a class-based fallback below. */
body:has(.kq-svex-floating.show) .kq-wa-float,
body:has(.kq-skw-floating.show) .kq-wa-float,
body:has(.kq-ssvg-floating.show) .kq-wa-float,
body:has(.kq-ilr-floating.show) .kq-wa-float,
body:has(.kq-ihs-floating.show) .kq-wa-float,
body:has(.kq-psw-floating.show) .kq-wa-float,
body:has(.kq-fnc-floating.show) .kq-wa-float,
body:has(.kq-clinic-floating.show) .kq-wa-float{
  bottom:96px;
  transition:bottom .35s cubic-bezier(.2,.8,.2,1),transform .25s ease,box-shadow .25s ease,padding .25s ease;
}
@media(max-width:720px){
  body:has(.kq-svex-floating.show) .kq-wa-float,
  body:has(.kq-skw-floating.show) .kq-wa-float,
  body:has(.kq-ssvg-floating.show) .kq-wa-float,
  body:has(.kq-ilr-floating.show) .kq-wa-float,
  body:has(.kq-ihs-floating.show) .kq-wa-float,
  body:has(.kq-psw-floating.show) .kq-wa-float,
  body:has(.kq-fnc-floating.show) .kq-wa-float,
  body:has(.kq-clinic-floating.show) .kq-wa-float{
    bottom:90px;
  }
}

/* Fallback for browsers without :has() - JS toggles a body class instead.
   See footer.php for the script. */
body.kq-cta-visible .kq-wa-float{
  bottom:96px;
  transition:bottom .35s cubic-bezier(.2,.8,.2,1),transform .25s ease,box-shadow .25s ease,padding .25s ease;
}
@media(max-width:720px){
  body.kq-cta-visible .kq-wa-float{bottom:90px}
}

/* Respect user reduced-motion preference */
@media(prefers-reduced-motion:reduce){
  .kq-wa-float,.kq-wa-pulse{animation:none !important;transition:none !important}
}

/* ============================================
   PERFORMANCE - CLS prevention & resource hints
   ============================================ */
/* Force explicit aspect ratios on known image classes to stop layout shift */
.logo-img,.logo-img-footer{aspect-ratio:auto}
.trust-strip-row .trust-logo-item img{aspect-ratio:auto}
/* Ensure fonts swap-in instead of blocking */
body{font-display:swap}

/* ============================================
   ACCESSIBILITY & PAGESPEED v23 FIXES
   ============================================ */

/* CONTRAST FIXES - darken too-light text to hit WCAG AA (4.5:1 for normal, 3:1 for large) */
:root{
  --text-soft:#635F6E;   /* was #7D7A88 - contrast 4.1 → 5.8 on cream */
  --text-light:#7C7987;  /* was #A09DAA - contrast 2.8 → 4.6 on cream */
}

/* Small uppercase labels - bump color up to pass contrast */
.trust-strip-label{color:#545260 !important}
.accred-label,.footnote,.small-caps{color:#545260 !important}

/* Footer "Unsubscribe" tiny text - was rgba(250,246,238,0.25) - fails contrast */
.leadmagnet p[style*="rgba(250,246,238,0.25)"]{color:rgba(250,246,238,0.6) !important}

/* === NON-COMPOSITED ANIMATION FIX === */
/* Promote animated layers to their own compositor layer so animations don't trigger paint/layout */
body::after,
body::before,
.kq-wa-pulse,
.kq-wa-float,
.hero-bg,
.fs{
  will-change:transform,opacity;
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* Force hardware acceleration on the body ambient glow specifically */
body::after{
  contain:layout paint;
}

/* === LONG MAIN-THREAD TASK MITIGATION === */
/* content-visibility lets the browser skip rendering off-screen sections entirely until scrolled near */
.section:not(.hero):not(.trust-strip):not(.hero-section){
  content-visibility:auto;
  contain-intrinsic-size:auto 600px; /* prevents scrollbar jumps */
}

/* === REDUCE CLS ON HERO (LCP element gets priority) === */
.hero{contain:layout style}

/* ============================================
   IMMIGRATION FEES PAGE
   ============================================ */

/* --- Hero --- */
.fee-hero{position:relative;padding:6rem 1.5rem 4rem;overflow:hidden;background:linear-gradient(180deg,#FAF6EE 0%,#F3ECD9 100%);border-bottom:1px solid var(--border-gold)}
.fee-hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0}
.fee-hero-bg::before{content:'';position:absolute;top:-15%;right:-8%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.12),transparent 65%)}
.fee-hero-bg::after{content:'';position:absolute;bottom:-20%;left:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(30,58,138,0.08),transparent 65%)}
.fee-hero-in{max-width:960px;margin:0 auto;position:relative;z-index:1;text-align:center}
.fee-hero-label{justify-content:center;display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .9rem;background:rgba(164,137,69,0.12);border:1px solid rgba(164,137,69,0.3);border-radius:50px;font-size:.65rem;font-weight:600;color:var(--gold-dark);letter-spacing:.22em;text-transform:uppercase;margin-bottom:1.2rem}
.fee-hero-label span{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(164,137,69,0.6)}
.fee-hero h1{font-family:var(--font-head);font-size:clamp(2.2rem,5vw,3.8rem);font-weight:600;color:var(--text);line-height:1.08;letter-spacing:-0.025em;margin:0 0 1rem}
.fee-hero h1 em{font-style:italic;font-weight:500;color:var(--gold);display:block}
.fee-hero-sub{font-size:clamp(.95rem,1.5vw,1.1rem);color:var(--text-mid);max-width:680px;margin:0 auto 2rem;line-height:1.7}
.fee-hero-trust{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}
.fee-trust-card{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#fff;border:1px solid var(--border);border-radius:50px;font-size:.8rem;color:var(--text-mid);box-shadow:0 2px 8px rgba(44,42,52,0.04)}
.fee-trust-card strong{color:var(--text);font-weight:700;font-size:.9rem}
.fee-trust-card span{color:var(--gold-dark);font-weight:600}
.fee-trust-stars{display:flex;gap:1px;margin-right:.2rem}
.fee-hero-cta{padding:.75rem 1.4rem !important;font-size:.82rem !important}

/* --- Intro --- */
.fee-intro-section{padding:3rem 1.5rem 2rem !important}
.fee-intro{max-width:820px;margin:0 auto;padding:1.5rem 1.8rem;background:rgba(255,255,255,0.5);border:1px solid var(--border-gold);border-left:3px solid var(--gold);border-radius:12px}
.fee-intro p{margin:0;font-size:.88rem;color:var(--text-mid);line-height:1.75;letter-spacing:-0.005em}
.fee-intro strong{color:var(--text);font-weight:600}
.fee-intro a{color:var(--gold-dark);font-weight:600;text-decoration:underline;text-decoration-color:rgba(164,137,69,0.3);text-underline-offset:2px}

/* --- Fee Section --- */
.fee-section{padding:3.5rem 1.5rem !important;position:relative}
.fee-section-alt{background:linear-gradient(180deg,rgba(164,137,69,0.03),rgba(164,137,69,0.06))}
.fee-section .sc-in{max-width:1100px}

.fee-category-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.8rem;padding-bottom:1.2rem;border-bottom:1px solid var(--border-gold)}
.fee-category-icon{flex-shrink:0;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--royal),#2A4BA8);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(30,58,138,0.25)}
.fee-category-head h2{font-family:var(--font-head);font-size:clamp(1.4rem,2.6vw,2rem);font-weight:600;color:var(--text);letter-spacing:-0.015em;line-height:1.15;margin:0}

/* --- Fee Table (desktop) --- */
.fee-table-wrap{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 10px 30px rgba(44,42,52,0.04)}
.fee-table{width:100%;border-collapse:collapse;font-size:.82rem}
.fee-table thead{background:linear-gradient(135deg,var(--royal) 0%,#1A3379 100%)}
.fee-table thead th{padding:1rem 1.2rem;color:#fff;font-family:var(--font-body);font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-align:left;white-space:nowrap;border-right:1px solid rgba(255,255,255,0.08)}
.fee-table thead th:last-child{border-right:none}
.fee-table tbody tr{border-top:1px solid var(--border);transition:background .2s ease}
.fee-table tbody tr:nth-child(even){background:rgba(164,137,69,0.025)}
.fee-table tbody tr:hover{background:rgba(164,137,69,0.07)}
.fee-table tbody td{padding:.9rem 1.2rem;color:var(--text-mid);vertical-align:top;line-height:1.5}
.fee-cell-service{color:var(--text) !important;font-weight:600;font-size:.84rem}
.fee-price-num{font-family:var(--font-head);font-size:1rem;font-weight:600;color:var(--gold-dark);letter-spacing:-0.01em}

/* --- Tier Pills --- */
.fee-tier-pill{display:inline-block;padding:.22rem .65rem;border-radius:50px;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;line-height:1.3}
.fee-tier-standard{background:rgba(30,58,138,0.08);color:var(--royal);border:1px solid rgba(30,58,138,0.2)}
.fee-tier-premium{background:linear-gradient(135deg,rgba(164,137,69,0.15),rgba(164,137,69,0.25));color:var(--gold-dark);border:1px solid rgba(164,137,69,0.35)}
.fee-tier-urgent{background:rgba(185,28,28,0.08);color:#991B1B;border:1px solid rgba(185,28,28,0.2)}
.fee-tier-note{background:rgba(0,0,0,0.04);color:var(--text-soft);border:1px solid var(--border);font-weight:500;letter-spacing:.01em;text-transform:none;font-size:.7rem;padding:.2rem .55rem}

/* --- Why Choose Us --- */
.fee-why-section{padding:4rem 1.5rem !important}
.fee-why-card{max-width:1000px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:20px;padding:2.5rem;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 20px 50px rgba(44,42,52,0.05);position:relative;overflow:hidden}
.fee-why-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light),var(--gold))}
.fee-why-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.8rem}
.fee-why-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px rgba(164,137,69,0.3)}
.fee-why-head h2{font-family:var(--font-head);font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:600;color:var(--text);letter-spacing:-0.015em;margin:.2rem 0 0}
.fee-why-head h2 em{color:var(--gold);font-style:italic;font-weight:500}
.fee-why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem 2rem}
.fee-why-item{display:flex;gap:.8rem;align-items:flex-start}
.fee-why-check{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,rgba(164,137,69,0.15),rgba(164,137,69,0.25));color:var(--gold-dark);display:flex;align-items:center;justify-content:center;margin-top:2px}
.fee-why-item h3,.fee-why-item h4{font-family:var(--font-body);font-size:.95rem;font-weight:700;color:var(--text);margin:0 0 .2rem;letter-spacing:-0.005em}
.fee-why-item p{font-size:.82rem;color:var(--text-mid);line-height:1.6;margin:0}

/* --- CTA --- */
.fee-cta-section{padding:3.5rem 1.5rem 4rem !important;background:linear-gradient(135deg,var(--deep) 0%,var(--indigo) 100%) !important;position:relative;overflow:hidden}
.fee-cta-section::before{content:'';position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:800px;height:400px;background:radial-gradient(ellipse,rgba(164,137,69,0.15),transparent 65%);pointer-events:none}
.fee-cta{max-width:720px;margin:0 auto;text-align:center;position:relative;z-index:1}
.fee-cta-eyebrow{display:inline-block;font-size:.65rem;font-weight:600;color:var(--gold-light);letter-spacing:.22em;text-transform:uppercase;margin-bottom:.9rem;padding:.3rem .9rem;background:rgba(164,137,69,0.1);border:1px solid rgba(164,137,69,0.3);border-radius:50px}
.fee-cta h2{font-family:var(--font-head);font-size:clamp(1.8rem,3.8vw,2.8rem);font-weight:500;color:#fff;line-height:1.15;letter-spacing:-0.02em;margin:0 0 1rem}
.fee-cta h2 em{color:var(--gold-light);font-style:italic}
.fee-cta p{font-size:.95rem;color:rgba(250,246,238,0.7);max-width:540px;margin:0 auto 1.8rem;line-height:1.7}
.fee-cta-btns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}
.fee-cta-btns .btn-outline{display:inline-flex;align-items:center;gap:.5rem;padding:.78rem 1.4rem;background:transparent;color:#FAF6EE;border:1px solid rgba(250,246,238,0.25);border-radius:50px;font-size:.82rem;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:all .25s ease}
.fee-cta-btns .btn-outline:hover{background:rgba(250,246,238,0.08);border-color:rgba(250,246,238,0.5);transform:translateY(-1px)}

/* --- Disclaimer --- */
.fee-disclaimer-section{padding:2rem 1.5rem;background:var(--cream);border-top:1px solid var(--border-gold)}
.fee-disclaimer{max-width:960px;margin:0 auto;display:flex;gap:.9rem;align-items:flex-start;padding:1.1rem 1.4rem;background:rgba(255,255,255,0.5);border:1px solid var(--border);border-radius:12px}
.fee-disclaimer-icon{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:rgba(164,137,69,0.1);color:var(--gold-dark);display:flex;align-items:center;justify-content:center;margin-top:1px}
.fee-disclaimer p{margin:0;font-size:.72rem;color:var(--text-soft);line-height:1.65;letter-spacing:-0.002em}
.fee-disclaimer strong{color:var(--text-mid);font-weight:600}
.fee-disclaimer a{color:var(--gold-dark);text-decoration:underline}

/* === RESPONSIVE: Mobile turns tables into stacked cards === */
@media(max-width:780px){
  .fee-hero{padding:4rem 1.2rem 3rem}
  .fee-section{padding:2.5rem 1rem !important}
  .fee-category-head{gap:.7rem;margin-bottom:1.3rem;padding-bottom:.9rem}
  .fee-category-icon{width:42px;height:42px;border-radius:11px}
  .fee-why-section{padding:2.5rem 1rem !important}
  .fee-why-card{padding:1.6rem}
  .fee-why-grid{grid-template-columns:1fr;gap:1rem}
  .fee-cta-section{padding:2.5rem 1.2rem 3rem !important}
  .fee-cta-btns{flex-direction:column;align-items:stretch}
  .fee-cta-btns a{justify-content:center}

  /* Table → stacked cards */
  .fee-table-wrap{background:transparent;border:none;box-shadow:none;overflow:visible}
  .fee-table,.fee-table thead,.fee-table tbody,.fee-table th,.fee-table td,.fee-table tr{display:block;width:100%}
  .fee-table thead{display:none} /* hide header row, labels come from data-label */
  .fee-table tr{background:#fff;border:1px solid var(--border);border-radius:14px;margin-bottom:1rem;padding:.3rem 0;box-shadow:0 1px 3px rgba(44,42,52,0.04),0 6px 18px rgba(44,42,52,0.03);overflow:hidden}
  .fee-table tr:nth-child(even){background:#fff}
  .fee-table tr:hover{background:#fff;transform:translateY(-1px);box-shadow:0 2px 4px rgba(44,42,52,0.04),0 12px 30px rgba(164,137,69,0.08)}
  .fee-table tbody td{padding:.7rem 1.1rem;border-top:1px solid var(--border);position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;min-height:unset}
  .fee-table tbody td:first-child{border-top:none;background:linear-gradient(135deg,rgba(30,58,138,0.04),rgba(30,58,138,0.08));padding:.9rem 1.1rem;font-weight:600}
  .fee-table tbody td::before{content:attr(data-label);flex-shrink:0;font-size:.55rem;font-weight:700;color:var(--text-soft);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
  .fee-table tbody td:first-child::before{display:none} /* service title - no label prefix */
  .fee-cell-service{font-size:.9rem !important}
  .fee-price-num{font-size:1.1rem}
  .fee-table tbody td > *:not(::before){text-align:right}
  .fee-table tbody td{text-align:right}
  .fee-cell-service{text-align:left !important}
}

/* ============================================
   FEES SHORTCODE - break out of Elementor containers
   ============================================ */
.kq-fees-shortcode-wrap{display:block;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background:transparent}
.kq-fees-shortcode-wrap > section{width:100%}
/* Reset Elementor's default 0 padding on pages containing this shortcode */
.elementor-widget-shortcode:has(.kq-fees-shortcode-wrap),
.elementor-widget-text-editor:has(.kq-fees-shortcode-wrap){padding:0 !important;margin:0 !important}
.kq-fees-shortcode-wrap *{box-sizing:border-box}

/* ============================================
   "HOW TO START" - 6-step process
   ============================================ */
.howstart-section{position:relative;background:linear-gradient(180deg,#FAF6EE 0%,#F3ECD9 100%) !important;padding:4.5rem 1.5rem !important;overflow:hidden}
.howstart-section::before{content:'';position:absolute;top:-10%;right:-5%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.1),transparent 65%);pointer-events:none;z-index:0}
.howstart-section::after{content:'';position:absolute;bottom:-15%;left:-8%;width:450px;height:450px;border-radius:50%;background:radial-gradient(circle,rgba(30,58,138,0.08),transparent 65%);pointer-events:none;z-index:0}
.howstart-section .sc-in{position:relative;z-index:1}
.howstart-intro{font-size:.95rem;color:var(--text-mid);max-width:560px;margin:.9rem auto 0;line-height:1.65;text-align:center}
.howstart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.5rem;max-width:1100px;margin-left:auto;margin-right:auto}
.howstart-card{position:relative;background:#fff;border:1px solid rgba(164,137,69,0.12);border-radius:18px;padding:2.5rem 1.6rem 1.8rem;text-align:center;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 12px 32px rgba(44,42,52,0.04);transition:transform .4s cubic-bezier(0.2,0.8,0.2,1),box-shadow .4s ease,border-color .4s ease}
.howstart-card:hover{transform:translateY(-6px);box-shadow:0 2px 6px rgba(44,42,52,0.04),0 24px 50px rgba(164,137,69,0.18);border-color:rgba(164,137,69,0.35)}
.howstart-num{position:absolute;top:-22px;left:50%;transform:translateX(-50%);width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--royal) 0%,#1A3379 100%);color:#fff;font-family:var(--font-head);font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(30,58,138,0.35),0 0 0 4px #FAF6EE;letter-spacing:0.01em}
.howstart-card-final .howstart-num{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);box-shadow:0 6px 18px rgba(164,137,69,0.4),0 0 0 4px #FAF6EE}
.howstart-card h3,.howstart-card h4{font-family:var(--font-head);font-size:1.1rem;font-weight:600;color:var(--text);margin:.6rem 0 .6rem;letter-spacing:-0.01em;line-height:1.25}
.howstart-celebrate{display:inline-block;font-size:1rem;margin-left:.15rem;animation:howstart-wiggle 3s ease-in-out infinite}
@keyframes howstart-wiggle{0%,90%,100%{transform:rotate(0)}92%{transform:rotate(-12deg)}94%{transform:rotate(12deg)}96%{transform:rotate(-8deg)}98%{transform:rotate(4deg)}}
.howstart-card p{font-size:.82rem;color:var(--text-mid);line-height:1.65;margin:0;letter-spacing:-0.005em}
.howstart-cta{display:inline-block;margin-top:1rem;padding:.5rem 1.1rem;background:var(--royal);color:#fff !important;border-radius:50px;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-decoration:none;transition:all .25s ease;box-shadow:0 4px 12px rgba(30,58,138,0.25)}
.howstart-cta:hover{background:#1A3379;transform:translateY(-2px);box-shadow:0 6px 16px rgba(30,58,138,0.35);color:#fff !important}
.howstart-bottom-cta{text-align:center;margin-top:2.5rem}
@media(max-width:900px){.howstart-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem 1rem}}
@media(max-width:560px){.howstart-section{padding:3rem 1rem !important}.howstart-grid{grid-template-columns:1fr;gap:2rem}.howstart-card{padding:2.2rem 1.2rem 1.4rem}.howstart-num{width:46px;height:46px;font-size:1rem;top:-18px}}

/* ============================================
   WHY PEOPLE CHOOSE KQ SOLICITORS - 8 glass cards + CTA
   ============================================ */
.whyus-section{position:relative;overflow:hidden}
.whyus-section::before{content:'';position:absolute;top:20%;left:-15%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.08),transparent 70%);pointer-events:none;z-index:0}
.whyus-section::after{content:'';position:absolute;bottom:-20%;right:-10%;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(30,58,138,0.12),transparent 65%);pointer-events:none;z-index:0}
.whyus-section .sc-in{position:relative;z-index:1}
.whyus-head{text-align:center;margin-bottom:2.8rem}
.whyus-head h2{font-family:var(--font-head);font-size:clamp(1.9rem,3.8vw,2.8rem);font-weight:600;color:#fff;line-height:1.15;letter-spacing:-0.02em;margin:.4rem 0 0}
.whyus-head h2 em{color:var(--gold-light);font-style:italic;font-weight:500}
.whyus-intro{font-size:1rem;color:rgba(250,246,238,0.75);max-width:640px;margin:1rem auto 0;line-height:1.65;letter-spacing:-0.005em}

.whyus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:1180px;margin:0 auto}
.whyus-card{position:relative;background:rgba(255,255,255,0.05);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);border:1px solid rgba(164,137,69,0.2);border-radius:16px;padding:1.5rem 1.2rem 1.4rem;transition:transform .4s cubic-bezier(0.2,0.8,0.2,1),background .4s ease,border-color .4s ease,box-shadow .4s ease;overflow:hidden}
.whyus-card::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%) scaleX(0);width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--gold-light),transparent);transition:transform .4s ease;transform-origin:center}
.whyus-card:hover{transform:translateY(-5px);background:rgba(255,255,255,0.09);border-color:rgba(164,137,69,0.45);box-shadow:0 1px 3px rgba(0,0,0,0.1),0 18px 40px rgba(164,137,69,0.15)}
.whyus-card:hover::before{transform:translateX(-50%) scaleX(1)}
.whyus-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,rgba(164,137,69,0.2),rgba(164,137,69,0.35));color:var(--gold-light);display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;border:1px solid rgba(164,137,69,0.3)}
.whyus-card h3,.whyus-card h4{font-family:var(--font-body);font-size:.92rem;font-weight:700;color:#fff;margin:0 0 .4rem;letter-spacing:-0.005em;line-height:1.3}
.whyus-card p{font-size:.75rem;color:rgba(250,246,238,0.6);line-height:1.55;margin:0;letter-spacing:-0.003em}

/* Language pills - tighter and gold-hover */
.whyus-section .lang-row{justify-content:center;gap:.4rem;margin-top:2.2rem;display:flex;flex-wrap:wrap}
.whyus-section .lang-pill{padding:.35rem 1rem;background:rgba(255,255,255,0.04);border:1px solid rgba(164,137,69,0.2);border-radius:50px;color:rgba(250,246,238,0.7);font-size:.7rem;font-weight:500;letter-spacing:.015em;transition:all .25s ease}
.whyus-section .lang-pill:hover{background:rgba(164,137,69,0.15);color:#fff;border-color:rgba(164,137,69,0.5)}

/* CTA block inside Why Us */
.whyus-cta{margin-top:3rem;text-align:center;max-width:720px;margin-left:auto;margin-right:auto;padding:2.2rem 1.8rem;background:linear-gradient(135deg,rgba(164,137,69,0.1),rgba(164,137,69,0.03));border:1px solid rgba(164,137,69,0.25);border-radius:20px;backdrop-filter:blur(6px)}
.whyus-cta h3{font-family:var(--font-head);font-size:clamp(1.4rem,2.4vw,1.8rem);font-weight:600;color:#fff;line-height:1.25;letter-spacing:-0.015em;margin:0 0 .6rem}
.whyus-cta p{font-size:.9rem;color:rgba(250,246,238,0.75);max-width:520px;margin:0 auto 1.4rem;line-height:1.6}
.whyus-cta-btns{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.4rem}
.whyus-cta-btns .btn-outline-light{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.3rem;background:transparent;color:#FAF6EE;border:1px solid rgba(250,246,238,0.3);border-radius:50px;font-size:.78rem;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:all .25s ease}
.whyus-cta-btns .btn-outline-light:hover{background:rgba(250,246,238,0.08);border-color:rgba(250,246,238,0.6);transform:translateY(-1px)}
.whyus-trust-boost{display:flex;gap:1.3rem;justify-content:center;flex-wrap:wrap;padding-top:1.2rem;border-top:1px solid rgba(164,137,69,0.2)}
.whyus-trust-boost span{display:inline-flex;align-items:center;gap:.4rem;font-size:.68rem;color:rgba(250,246,238,0.7);font-weight:500;letter-spacing:.01em}
.whyus-trust-boost svg{color:var(--gold-light);flex-shrink:0}

@media(max-width:960px){.whyus-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.whyus-card{padding:1.3rem 1rem 1.2rem}}
@media(max-width:480px){.whyus-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.whyus-card{padding:1.1rem .9rem 1rem}.whyus-card h3,.whyus-card h4{font-size:.82rem}.whyus-card p{font-size:.68rem}.whyus-cta{padding:1.8rem 1.2rem}.whyus-cta-btns a{flex:1;min-width:140px;justify-content:center}.whyus-trust-boost{gap:.6rem .8rem;font-size:.62rem}}

/* ============================================
   "REGULATED BY & AWARDS" - Big heading
   ============================================ */
.trust-strip .awards-heading{padding-top:.3rem;padding-bottom:.3rem}
.trust-strip .awards-heading::before,
.trust-strip .awards-heading::after{display:none}
.trust-strip .awards-h2{font-family:var(--font-head);font-size:clamp(1.5rem,3vw,2.3rem);font-weight:600;color:var(--text);letter-spacing:-0.015em;line-height:1.15;margin:0 0 .35rem;text-align:center;text-transform:none}
.trust-strip .awards-sub{font-size:.82rem;color:var(--text-soft);margin:0 auto 1.8rem;max-width:560px;line-height:1.5;letter-spacing:-0.005em;text-align:center;text-transform:none;font-weight:400}
.trust-strip{padding:2.5rem 1.5rem 2.2rem !important}

/* Certificate badge - slightly different treatment since it's decorative */
.trust-logo-cert{background:rgba(26,28,48,0.04) !important}

/* ============================================
   LATEST BLOG POSTS SECTION
   ============================================ */
.blog-section{padding:4rem 1.5rem !important;background:linear-gradient(180deg,#FAF6EE 0%,#F5EEDE 100%)}
.blog-intro{font-size:.95rem;color:var(--text-mid);max-width:600px;margin:.9rem auto 0;line-height:1.65;letter-spacing:-0.005em;text-align:center}
.blog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2.5rem;max-width:1200px;margin-left:auto;margin-right:auto}
.blog-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:transform .4s cubic-bezier(0.2,0.8,0.2,1),box-shadow .4s ease,border-color .4s ease;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 10px 30px rgba(44,42,52,0.04)}
.blog-card:hover{transform:translateY(-6px);box-shadow:0 2px 6px rgba(44,42,52,0.04),0 24px 50px rgba(164,137,69,0.15);border-color:rgba(164,137,69,0.3)}
.blog-card-link{display:block;text-decoration:none;color:inherit}
.blog-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,rgba(30,58,138,0.06),rgba(164,137,69,0.08))}
.blog-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(0.2,0.8,0.2,1)}
.blog-card:hover .blog-card-img{transform:scale(1.05)}
.blog-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(30,58,138,0.25)}
.blog-card-cat{position:absolute;top:.7rem;left:.7rem;padding:.2rem .7rem;background:rgba(255,255,255,0.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--royal);font-family:var(--font-body);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:50px;border:1px solid rgba(30,58,138,0.1)}
.blog-card-body{padding:1.2rem 1.1rem 1.3rem}
.blog-card-meta{display:flex;align-items:center;gap:.35rem;font-size:.65rem;color:var(--text-soft);font-weight:500;letter-spacing:.02em;margin-bottom:.6rem}
.blog-card-meta svg{color:var(--gold)}
.blog-card-title{font-family:var(--font-head);font-size:1rem;font-weight:600;color:var(--text);line-height:1.3;letter-spacing:-0.01em;margin:0 0 .55rem;transition:color .25s ease;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.blog-card:hover .blog-card-title{color:var(--gold-dark)}
.blog-card-excerpt{font-size:.78rem;color:var(--text-mid);line-height:1.6;margin:0 0 .9rem;letter-spacing:-0.003em;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-card-more{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;color:var(--gold-dark);letter-spacing:.01em;transition:gap .25s ease}
.blog-card:hover .blog-card-more{gap:.55rem}
.blog-all-cta{text-align:center;margin-top:2.2rem}
.btn-outline-dark{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.4rem;background:transparent;color:var(--text);border:1px solid rgba(44,42,52,0.2);border-radius:50px;font-size:.8rem;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:all .25s ease}
.btn-outline-dark:hover{background:var(--text);color:#fff;border-color:var(--text);transform:translateY(-2px)}
@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.blog-grid{grid-template-columns:1fr;gap:1rem}.blog-section{padding:3rem 1rem !important}.blog-card-media{aspect-ratio:16/9}}

/* ============================================
   HERO STAT COUNTERS - Bolder, more impact
   ============================================ */
.hs-num{font-family:var(--font-head) !important;font-weight:700 !important;font-size:clamp(1.8rem,3.2vw,2.4rem) !important;letter-spacing:-0.025em;color:var(--gold-light);line-height:1;font-variant-numeric:tabular-nums;transition:color .3s ease;text-shadow:0 0 30px rgba(164,137,69,0.25)}
.hs-num[data-counted="1"]{color:var(--gold)}
@media(max-width:500px){.hs-num{font-size:1.7rem !important}}

/* ============================================
   REVIEWS SECTION - Platform hub + video carousel
   ============================================ */
.reviews-section{position:relative;padding:4.5rem 1.5rem !important;background:linear-gradient(180deg,#FAF6EE 0%,#F3ECD9 50%,#FAF6EE 100%);overflow:hidden}
.reviews-section::before{content:'';position:absolute;top:20%;right:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.08),transparent 65%);pointer-events:none;z-index:0}
.reviews-section .sc-in{position:relative;z-index:1}
.reviews-intro{font-size:.95rem;color:var(--text-mid);max-width:620px;margin:.9rem auto 0;line-height:1.65;text-align:center}

/* Platform cards */
.reviews-platforms{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:980px;margin:2.5rem auto 1.8rem}
.review-platform{position:relative;display:flex;align-items:center;gap:1rem;padding:1.2rem 1.3rem;background:#fff;border:1px solid var(--border);border-radius:16px;text-decoration:none !important;color:inherit;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 10px 28px rgba(44,42,52,0.04);transition:transform .35s cubic-bezier(0.2,0.8,0.2,1),box-shadow .35s ease,border-color .35s ease;overflow:hidden}
/* Brand-color top accent bar - ALWAYS visible (was hover-only).
   This is what gives each card its instantly-recognisable identity. */
.review-platform::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:currentColor;opacity:1;transform:scaleX(1);transition:height .3s ease}
.review-platform:hover::before{height:6px}
.review-platform-google::before{color:#FBBC04}        /* Google yellow (rating stars) */
.review-platform-trustpilot::before{color:#00B67A}    /* Trustpilot green */
.review-platform-facebook::before{color:#1877F2}      /* Facebook blue */
.review-platform-reviewsolicitors::before{color:#01875F} /* ReviewSolicitors green */
.review-platform:hover{transform:translateY(-4px);box-shadow:0 2px 6px rgba(44,42,52,0.05),0 22px 44px rgba(44,42,52,0.08);border-color:rgba(44,42,52,0.12)}
.review-platform-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:background .3s ease}
/* Brand-color icon backgrounds - soft tint, full saturation on hover */
.review-platform-google .review-platform-icon{background:rgba(251,188,4,0.12)}
.review-platform-trustpilot .review-platform-icon{background:rgba(0,182,122,0.10)}
.review-platform-facebook .review-platform-icon{background:rgba(24,119,242,0.10)}
.review-platform-reviewsolicitors .review-platform-icon{background:rgba(1,135,95,0.10)}
.review-platform-google:hover .review-platform-icon{background:rgba(251,188,4,0.20)}
.review-platform-trustpilot:hover .review-platform-icon{background:rgba(0,182,122,0.18)}
.review-platform-facebook:hover .review-platform-icon{background:rgba(24,119,242,0.18)}
.review-platform-reviewsolicitors:hover .review-platform-icon{background:rgba(1,135,95,0.18)}
.review-platform-body{flex:1;min-width:0}
.review-platform-label{font-family:var(--font-head);font-size:1.05rem;font-weight:600;color:var(--text);letter-spacing:-0.01em;line-height:1.1;margin-bottom:.25rem}
.review-platform-stars{display:flex;align-items:center;gap:.4rem;margin-bottom:.1rem}
.rp-stars{display:inline-flex;gap:1px}
.rp-score{font-size:.82rem;font-weight:700;color:var(--text)}
.review-platform-trustpilot .rp-score{color:#00B67A}
.review-platform-facebook .rp-score{color:#1877F2}
.review-platform-google .rp-score{color:#FBBC04}
.review-platform-reviewsolicitors .rp-score{color:#01875F}
.review-platform-count{font-size:.68rem;color:var(--text-soft);letter-spacing:.03em}
.review-platform-arrow{flex-shrink:0;color:var(--text-soft);transition:transform .3s ease,color .3s ease}
.review-platform:hover .review-platform-arrow{transform:translateX(3px)}
.review-platform-google:hover .review-platform-arrow{color:#FBBC04}
.review-platform-trustpilot:hover .review-platform-arrow{color:#00B67A}
.review-platform-facebook:hover .review-platform-arrow{color:#1877F2}
.review-platform-reviewsolicitors:hover .review-platform-arrow{color:#01875F}

/* Leave a review CTA */
.reviews-cta{text-align:center;margin-bottom:3.5rem;font-size:.85rem;color:var(--text-mid)}
.reviews-cta p{margin:0 0 .6rem}
.reviews-cta strong{color:var(--text);font-weight:600}
.reviews-cta-links{display:inline-flex;gap:.6rem;flex-wrap:wrap;justify-content:center;align-items:center}
.reviews-cta-links a{color:var(--gold-dark);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(164,137,69,0.3);transition:border-color .25s ease,color .25s ease}
.reviews-cta-links a:hover{color:var(--text);border-color:var(--gold)}
.reviews-cta-dot{color:var(--text-light)}

/* ==================== VIDEO CAROUSEL ==================== */
.video-testimonials{max-width:1180px;margin:0 auto;padding-top:2rem;border-top:1px solid var(--border-gold)}
.video-testimonials-head{text-align:center;margin-bottom:2rem}
.video-label{display:inline-block !important;margin-bottom:.6rem}
.video-testimonials-head h3{font-family:var(--font-head);font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:600;color:var(--text);letter-spacing:-0.015em;line-height:1.15;margin:0 0 .6rem}
.video-testimonials-head h3 em{font-style:italic;font-weight:500;color:var(--gold)}
.video-testimonials-head p{font-size:.88rem;color:var(--text-mid);max-width:520px;margin:0 auto;line-height:1.6}

.video-carousel{position:relative;padding:0 2.5rem}
.video-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding:.5rem 0 1.2rem;scrollbar-width:none}
.video-track::-webkit-scrollbar{display:none}

.video-item{flex:0 0 calc(33.333% - .67rem);scroll-snap-align:start;cursor:pointer}
.video-thumb{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#1a1c30;box-shadow:0 4px 20px rgba(44,42,52,0.12);transition:transform .35s cubic-bezier(0.2,0.8,0.2,1),box-shadow .35s ease}
.video-item:hover .video-thumb{transform:translateY(-4px);box-shadow:0 10px 32px rgba(44,42,52,0.22),0 0 0 2px rgba(164,137,69,0.35)}
.video-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s cubic-bezier(0.2,0.8,0.2,1)}
.video-item:hover .video-thumb img{transform:scale(1.03)}

/* Client name strip - sits at the bottom of each thumbnail.
   Uses a subtle gradient fade so it never fights the thumbnail design. */
.video-thumb-name{position:absolute;left:0;right:0;bottom:0;padding:1.6rem .9rem .7rem;background:linear-gradient(180deg,rgba(26,28,48,0) 0%,rgba(26,28,48,.55) 65%,rgba(26,28,48,.85) 100%);color:#FAF6EE;font:600 .8rem/1.2 Inter,system-ui,sans-serif;letter-spacing:-.005em;text-shadow:0 1px 4px rgba(0,0,0,.4);pointer-events:none;z-index:1}

/* "See All Client Stories" CTA - appears below the carousel.
   Pill-shaped button with subtle gold-on-navy treatment that matches
   the brand without competing with hero CTAs above. */
.reviews-all-cta{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-gold)}
.reviews-all-cta-btn{display:inline-flex;align-items:center;gap:.65rem;padding:.85rem 1.6rem .85rem 1.4rem;background:linear-gradient(135deg,#1A1C30 0%,#2C2F52 100%);color:#FAF6EE;border-radius:50px;text-decoration:none;font:600 .92rem/1 Inter,system-ui,sans-serif;letter-spacing:-.005em;box-shadow:0 6px 22px rgba(26,28,48,.22),inset 0 1px 0 rgba(250,246,238,.08);border:1px solid rgba(164,137,69,.32);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease}
.reviews-all-cta-btn:hover{transform:translateY(-2px);border-color:rgba(164,137,69,.7);box-shadow:0 12px 32px rgba(26,28,48,.32),0 0 0 4px rgba(164,137,69,.08),inset 0 1px 0 rgba(250,246,238,.12)}
.reviews-all-cta-btn:focus{outline:none}
.reviews-all-cta-btn:focus-visible{outline:3px solid rgba(164,137,69,.6);outline-offset:3px}
.reviews-all-cta-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#BFA45C,#A48945);color:#1A1C30;box-shadow:0 3px 10px rgba(164,137,69,.4),inset 0 1px 0 rgba(255,255,255,.3);flex-shrink:0}
.reviews-all-cta-text{white-space:nowrap}
.reviews-all-cta-arrow{display:inline-flex;align-items:center;color:rgba(250,246,238,.7);transition:transform .28s ease,color .28s ease}
.reviews-all-cta-btn:hover .reviews-all-cta-arrow{transform:translateX(3px);color:var(--gold)}
.reviews-all-cta-sub{margin:.85rem 0 0;font-size:.78rem;color:var(--text-mid);letter-spacing:-.005em}

@media(max-width:560px){
  .reviews-all-cta-btn{padding:.75rem 1.2rem .75rem 1rem;font-size:.85rem;gap:.5rem}
  .reviews-all-cta-icon{width:26px;height:26px}
  .reviews-all-cta-text{white-space:normal;text-align:left}
  .reviews-all-cta-sub{font-size:.74rem;padding:0 1rem}
}

/* Carousel nav arrows */
.video-nav{position:absolute;top:calc(50% - 1.2rem);transform:translateY(-50%);width:42px;height:42px;border-radius:50%;background:#fff;color:var(--text);border:1px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(44,42,52,0.12);transition:all .25s ease;z-index:3}
.video-nav:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-50%) scale(1.06);box-shadow:0 6px 22px rgba(164,137,69,0.35)}
.video-nav:disabled{opacity:.35;cursor:not-allowed;transform:translateY(-50%) scale(1);background:#fff;color:var(--text-soft);box-shadow:0 2px 8px rgba(44,42,52,0.08)}
.video-nav:disabled:hover{background:#fff;color:var(--text-soft);border-color:var(--border)}
.video-nav-prev{left:-.2rem}
.video-nav-next{right:-.2rem}

/* Lightbox */
.video-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,0.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;pointer-events:none;transition:opacity .35s ease}
.video-lightbox.active{opacity:1;pointer-events:auto}
.video-lightbox-inner{width:100%;max-width:1000px;aspect-ratio:16/9;position:relative;border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,0.6)}
.video-lightbox-inner iframe{width:100%;height:100%;border:none;display:block}
.video-lightbox-close{position:absolute;top:1.2rem;right:1.2rem;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.15);color:#fff;border:1px solid rgba(255,255,255,0.2);cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .25s ease}
.video-lightbox-close:hover{background:rgba(255,255,255,0.25);transform:scale(1.08) rotate(90deg)}
body.video-lightbox-open{overflow:hidden}

/* Responsive */
@media(max-width:900px){
  .reviews-platforms{grid-template-columns:1fr;gap:.7rem;max-width:520px}
  .review-platform{padding:1rem 1.1rem}
  .reviews-cta-links{flex-direction:column;gap:.4rem}
  .reviews-cta-dot{display:none}
  .video-item{flex:0 0 calc(50% - .5rem)}
  .video-carousel{padding:0 1.8rem}
  .video-nav{width:36px;height:36px}
}
@media(max-width:560px){
  .reviews-section{padding:3rem 1rem !important}
  .video-item{flex:0 0 calc(88% - .25rem)}
  .video-carousel{padding:0 1.5rem}
  .video-nav{width:32px;height:32px}
  .video-nav svg{width:16px;height:16px}
  .video-play-btn{width:54px;height:54px}
  .video-lightbox{padding:.8rem}
  .video-lightbox-close{top:.6rem;right:.6rem;width:40px;height:40px}
}

/* ============================================
   LANGUAGE SWITCHER (Google Translate integration)
   ============================================ */
.kq-translate-wrap{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .8rem;background:transparent;color:var(--gold-light) !important;border:1px solid rgba(164,137,69,0.3);border-radius:50px;font-family:var(--font-body);font-size:.68rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:all .2s ease}
.lang-btn:hover{background:rgba(164,137,69,0.12);border-color:rgba(164,137,69,0.5);color:#fff !important}
.lang-btn svg:first-child{flex-shrink:0}
.kq-lang-caret{flex-shrink:0;transition:transform .25s ease;margin-left:.1rem}
.kq-translate-wrap.open .kq-lang-caret{transform:rotate(180deg)}

.kq-translate-wrap .lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:rgba(26,28,48,0.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(164,137,69,0.25);border-radius:12px;padding:.4rem;box-shadow:0 12px 40px rgba(0,0,0,0.4),0 2px 8px rgba(0,0,0,0.2);opacity:0;pointer-events:none;transform:translateY(-6px) scale(0.98);transform-origin:top right;transition:opacity .22s ease,transform .22s cubic-bezier(0.2,0.8,0.2,1);z-index:200;display:block !important}
.kq-translate-wrap.open .lang-dropdown{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}

.kq-lang-opt{display:block;width:100%;text-align:left;padding:.5rem .75rem;background:transparent;color:rgba(250,246,238,0.75);border:none;border-radius:8px;font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:-0.003em;cursor:pointer;transition:background .18s ease,color .18s ease}
.kq-lang-opt:hover,.kq-lang-opt:focus-visible{background:rgba(164,137,69,0.18);color:#fff;outline:none}

/* Hide Google Translate UI artifacts that would clutter the page */
.goog-te-banner-frame.skiptranslate,.goog-te-gadget-icon,
#goog-gt-tt,.goog-te-balloon-frame{display:none !important}
body{top:0 !important}
.goog-tooltip,.goog-tooltip:hover,.goog-text-highlight{background:none !important;box-shadow:none !important;border:none !important}

/* Mobile: dropdown nudged to fit screen width */
@media(max-width:480px){
  .kq-translate-wrap .lang-dropdown{right:-.4rem;min-width:170px}
}

/* RTL support for Arabic & Urdu */
html[dir="rtl"] body{direction:rtl;text-align:right}
html[dir="rtl"] .site-header .hdr-in,
html[dir="rtl"] .topbar-in,
html[dir="rtl"] .foot-in{direction:rtl}
html[dir="rtl"] .nav-main ul{flex-direction:row-reverse}

/* ============================================
   CONTACT PAGE - Office directions card (replaces ugly placeholder)
   ============================================ */
.cp-directions{margin-top:1rem}
.cp-directions-card{display:flex;gap:1.1rem;align-items:flex-start;padding:1.3rem 1.4rem;background:linear-gradient(135deg,var(--deep) 0%,var(--indigo) 100%);border:1px solid rgba(164,137,69,0.22);border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,0.08),0 12px 32px rgba(0,0,0,0.15);position:relative;overflow:hidden}
.cp-directions-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.cp-directions-card::after{content:'';position:absolute;top:-30%;right:-15%;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.12),transparent 65%);pointer-events:none}
.cp-directions-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(164,137,69,0.3);position:relative;z-index:1}
.cp-directions-body{flex:1;min-width:0;position:relative;z-index:1}
.cp-directions-label{font-size:.6rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light);margin-bottom:.35rem}
.cp-directions-body h3,.cp-directions-body h4{font-family:var(--font-head);font-size:1.25rem;font-weight:600;color:#fff;letter-spacing:-0.01em;line-height:1.2;margin:0 0 .4rem}
.cp-directions-body p{font-size:.82rem;color:rgba(250,246,238,0.7);line-height:1.6;margin:0 0 .9rem}
.cp-directions-note{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;background:rgba(164,137,69,0.12);border:1px solid rgba(164,137,69,0.22);border-radius:50px;font-size:.68rem;color:rgba(250,246,238,0.75);line-height:1.3;margin-bottom:1rem}
.cp-directions-note svg{color:var(--gold-light);flex-shrink:0}
.cp-directions-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.1rem;background:var(--gold);color:var(--deep) !important;border-radius:50px;font-size:.75rem;font-weight:700;letter-spacing:.01em;text-decoration:none !important;transition:all .25s ease;box-shadow:0 4px 12px rgba(164,137,69,0.3)}
.cp-directions-btn:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 6px 18px rgba(164,137,69,0.5)}

@media(max-width:600px){
  .cp-directions-card{flex-direction:column;gap:.8rem;padding:1.2rem}
  .cp-directions-icon{width:42px;height:42px}
}

/* ============================================
   PROFESSIONAL SPACING TIGHTENING
   Reduces excessive vertical padding site-wide for
   a tighter, more professional density.
   ============================================ */
.section{padding:2.8rem 1.5rem !important}
.section .sc-head{margin-bottom:1.6rem}
.hero-c{padding:3.5rem 2rem 2.8rem !important;gap:2.2rem !important}
.page-hero{padding:4rem 1.5rem 2.2rem !important}
.cta-section{padding:3rem 1.5rem !important}

/* Per-section overrides */
.howstart-section{padding:3rem 1.5rem !important}
.blog-section{padding:2.8rem 1.5rem !important}
.reviews-section{padding:3rem 1.5rem !important}
.fee-hero{padding:4rem 1.5rem 2.5rem !important}
.fee-section{padding:2.4rem 1.5rem !important}
.fee-why-section{padding:2.8rem 1.5rem !important}
.fee-cta-section{padding:2.8rem 1.5rem !important}
.fee-intro-section{padding:2rem 1.5rem 1.2rem !important}

/* Section head margin-bottom - less empty air */
.sc-head{margin-bottom:1.8rem}
.sc-head h2{margin-bottom:.4rem}
.sc-head p{margin-top:.5rem}
.howstart-grid,.blog-grid,.whyus-grid,.reviews-platforms{margin-top:1.8rem !important}

/* Tighten trust strip */
.trust-strip{padding:2rem 1.5rem 1.8rem !important}
.trust-strip .awards-heading{padding:0}
.trust-strip .awards-sub{margin-bottom:1.3rem !important}

/* Tighten the "why us" dark section bottom spacing now that the CTA block is removed */
.whyus-section .lang-row{margin-top:1.8rem !important;margin-bottom:.5rem !important}

/* Cost cards + service cards: reduce gap/margin */
.cost-breakdown,.srv-grid{margin-top:1.5rem}
.spotlight-grid{margin-top:1.4rem}

/* Video testimonials - tighter top border spacing */
.video-testimonials{padding-top:1.8rem !important;margin-top:1.8rem !important}
.video-testimonials-head{margin-bottom:1.4rem !important}

/* FAQ + contact section top spacing */
.faq-split{margin-top:1.5rem}

/* Media query: mobile slightly less tight */
@media(max-width:600px){
  .section{padding:2.2rem 1rem !important}
  .hero-c{padding:2.5rem 1.2rem 2rem !important;gap:1.5rem !important}
  .howstart-section,.blog-section,.reviews-section{padding:2.4rem 1rem !important}
  .cta-section{padding:2.2rem 1rem !important}
}

/* ============================================
   AUTHOR PAGE - Khurram Amir Qureshi profile
   ============================================ */

/* HERO */
.author-hero{position:relative;padding:5rem 1.5rem 4rem;overflow:hidden;background:linear-gradient(135deg,var(--deep) 0%,var(--indigo) 60%,#0E1128 100%);border-bottom:1px solid rgba(164,137,69,0.22)}
.author-hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.author-hero-bg::before{content:'';position:absolute;top:-15%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.18),transparent 65%)}
.author-hero-bg::after{content:'';position:absolute;bottom:-20%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(30,58,138,0.3),transparent 65%)}
.author-hero-in{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.author-hero-grid{display:grid;grid-template-columns:260px 1fr;gap:3rem;align-items:center}

.author-hero-photo{position:relative;justify-self:center}
.author-photo-frame{position:relative;width:240px;height:280px;border-radius:20px;overflow:hidden;border:1px solid rgba(164,137,69,0.3);box-shadow:0 20px 60px rgba(0,0,0,0.5),0 0 0 1px rgba(164,137,69,0.15) inset;z-index:2}
.author-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}
.author-photo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#fff;font-family:var(--font-head);font-size:5rem;font-weight:700}
.author-photo-glow{position:absolute;inset:-20px;background:radial-gradient(circle,rgba(164,137,69,0.25),transparent 65%);filter:blur(30px);z-index:1;pointer-events:none}

.author-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .95rem;background:rgba(164,137,69,0.13);border:1px solid rgba(164,137,69,0.3);border-radius:50px;color:var(--gold-light);font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.1rem}
.author-dot{width:6px;height:6px;border-radius:50%;background:var(--gold-light);box-shadow:0 0 8px rgba(191,164,92,0.7);animation:dp 2s ease-in-out infinite}
.author-hero-text h1{font-family:var(--font-head);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:600;color:#fff;line-height:1.08;letter-spacing:-0.02em;margin:0 0 .6rem}
.author-hero-text h1 em{color:var(--gold-light);font-style:italic;font-weight:500;display:block}
.author-tagline{font-size:.95rem;color:rgba(250,246,238,0.75);line-height:1.5;margin:0 0 1.3rem;letter-spacing:-0.003em}
.author-bullet{color:var(--gold);margin:0 .35rem}

.author-badges{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.6rem}
.author-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .8rem;background:rgba(255,255,255,0.05);border:1px solid rgba(164,137,69,0.25);border-radius:50px;color:rgba(250,246,238,0.85);font-size:.68rem;font-weight:600;letter-spacing:-0.005em;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.author-badge svg{color:var(--gold-light);flex-shrink:0}

.author-hero-actions{display:flex;gap:.6rem;flex-wrap:wrap}

/* BODY SECTION */
.author-body-section{padding:3.5rem 1.5rem !important;background:linear-gradient(180deg,#FAF6EE 0%,#F5EEDE 100%)}
.author-body-in{max-width:1180px}
.author-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3rem;align-items:start}

/* MAIN COLUMN */
.author-main{min-width:0}
.author-block{margin-bottom:2.6rem}
.author-block:last-child{margin-bottom:0}
.author-block-label{font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:.6rem}
.author-block h2{font-family:var(--font-head);font-size:clamp(1.4rem,2.4vw,1.85rem);font-weight:600;color:var(--text);line-height:1.2;letter-spacing:-0.015em;margin:0 0 1rem}
.author-block h2 em{color:var(--gold);font-style:italic;font-weight:500}
.author-block p{font-size:.9rem;color:var(--text-mid);line-height:1.75;letter-spacing:-0.003em;margin:0 0 .9rem}
.author-block p strong{color:var(--text);font-weight:600}
.author-block p:last-child{margin-bottom:0}

/* PRACTICE GRID */
.author-practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin:1.2rem 0}
.author-practice-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.2rem 1.1rem;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 8px 24px rgba(44,42,52,0.04);transition:transform .3s cubic-bezier(0.2,0.8,0.2,1),box-shadow .3s ease,border-color .3s ease}
.author-practice-card:hover{transform:translateY(-3px);border-color:rgba(164,137,69,0.3);box-shadow:0 2px 6px rgba(44,42,52,0.04),0 14px 34px rgba(164,137,69,0.1)}
.author-practice-icon{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,var(--royal),#1A3379);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem;box-shadow:0 4px 12px rgba(30,58,138,0.25)}
.author-practice-card h3,.author-practice-card h4{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:-0.005em;margin:0 0 .4rem;line-height:1.25}
.author-practice-card p{font-size:.78rem !important;line-height:1.6 !important;margin:0 !important}
.author-language-note{margin-top:1.2rem !important;padding:.9rem 1.1rem;background:rgba(164,137,69,0.06);border-left:3px solid var(--gold);border-radius:4px;font-size:.82rem !important}

/* BOOKS GRID */
.author-books-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem;margin:1.2rem 0}
.author-book{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.1rem 1.1rem .9rem;position:relative;transition:transform .3s cubic-bezier(0.2,0.8,0.2,1),border-color .3s ease,box-shadow .3s ease}
.author-book:hover{transform:translateY(-3px);border-color:rgba(164,137,69,0.35);box-shadow:0 10px 30px rgba(164,137,69,0.1)}
.author-book-icon{position:absolute;top:1rem;right:1rem;color:var(--gold);opacity:.35;transition:opacity .3s ease}
.author-book:hover .author-book-icon{opacity:.7}
.author-book h3,.author-book h4{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:-0.005em;line-height:1.25;margin:0 0 .25rem;padding-right:2rem}
.author-book-meta{font-size:.66rem !important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark) !important;margin:0 0 .55rem !important;line-height:1.4 !important}
.author-book-desc{font-size:.78rem !important;line-height:1.55 !important;color:var(--text-mid) !important;margin:0 0 .65rem !important}
.author-book-link{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:700;color:var(--royal);text-decoration:none;letter-spacing:-0.005em;transition:color .25s ease,gap .25s ease}
.author-book-link:hover{color:var(--gold-dark);gap:.5rem}
.author-books-note{margin-top:1.2rem !important;font-size:.85rem !important;color:var(--text-soft) !important;font-style:italic}

/* ACADEMIC LIST */
.author-academic-list{list-style:none;padding:0;margin:1rem 0 0}
.author-academic-list li{position:relative;padding:.7rem 0 .7rem 1.8rem;border-bottom:1px solid var(--border);font-size:.88rem;color:var(--text-mid);line-height:1.55}
.author-academic-list li:last-child{border-bottom:none}
.author-academic-list li::before{content:'';position:absolute;left:0;top:1.05rem;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(164,137,69,0.15)}
.author-academic-list li strong{color:var(--text);font-weight:600}
.author-current{display:inline-block;margin-left:.5rem;padding:.12rem .5rem;background:rgba(76,175,80,0.13);border:1px solid rgba(76,175,80,0.28);color:#3E8E41;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:50px}

/* ===== Author page additions (v9.7.6): glance list, cases grid, helps list, h3, disclaimer, CTA ===== */
.author-glance-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem .9rem}
.author-glance-list li{position:relative;padding:.55rem 0 .55rem 1.6rem;font-size:.88rem;color:var(--text-mid);line-height:1.5}
.author-glance-list li::before{content:'';position:absolute;left:0;top:.95rem;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(164,137,69,0.15)}
@media (max-width:760px){.author-glance-list{grid-template-columns:1fr}}

.author-cases-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin:1.2rem 0}
.author-cases-col{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.3rem 1.2rem;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 8px 24px rgba(44,42,52,0.04)}
.author-cases-title{display:flex;align-items:center;gap:.55rem;font-family:var(--font-head);font-size:1.05rem;font-weight:600;color:var(--text);margin:0 0 .85rem;padding-bottom:.7rem;border-bottom:1px solid var(--border);letter-spacing:-0.005em}
.author-cases-title svg{color:var(--gold);flex-shrink:0}
.author-cases-list{list-style:none;padding:0;margin:0}
.author-cases-list li{position:relative;padding:.45rem 0 .45rem 1.4rem;font-size:.85rem;color:var(--text-mid);line-height:1.5;border-bottom:1px solid rgba(0,0,0,.04)}
.author-cases-list li:last-child{border-bottom:none}
.author-cases-list li::before{content:'';position:absolute;left:.2rem;top:1rem;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.author-cases-list li a{color:var(--text);text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.author-cases-list li a:hover{color:var(--gold-dark);border-bottom-color:var(--gold)}
@media (max-width:760px){.author-cases-grid{grid-template-columns:1fr;gap:1rem}}

.author-helps-list{list-style:none;padding:0;margin:1rem 0 0}
.author-helps-list li{position:relative;padding:.65rem 0 .65rem 1.7rem;font-size:.9rem;color:var(--text-mid);line-height:1.55;border-bottom:1px solid var(--border)}
.author-helps-list li:last-child{border-bottom:none}
.author-helps-list li::before{content:'';position:absolute;left:0;top:1rem;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(164,137,69,0.15)}
.author-helps-list li a{color:var(--gold-dark);text-decoration:none;font-weight:500;border-bottom:1px solid rgba(164,137,69,0.35)}
.author-helps-list li a:hover{color:var(--gold);border-bottom-color:var(--gold)}

.author-h3{font-family:var(--font-head);font-size:1.1rem;font-weight:600;color:var(--text);margin:1.6rem 0 .6rem;letter-spacing:-0.005em;line-height:1.3}

.author-disclaimer-block{background:#FAF6EE;border:1px solid rgba(164,137,69,0.22);border-left:3px solid var(--gold);border-radius:8px;padding:1.2rem 1.3rem;margin-top:2rem !important}
.author-disclaimer-title{font-family:var(--font-head);font-size:.95rem;font-weight:700;color:var(--text);margin:0 0 .55rem;letter-spacing:-0.005em}
.author-disclaimer-block p{font-size:.85rem !important;color:var(--text-mid) !important;line-height:1.6 !important;margin:0 !important}

.author-cta-block{background:linear-gradient(135deg,#FAF6EE,#fff);border:1px solid rgba(164,137,69,0.18);border-radius:18px;padding:1.7rem 1.5rem;box-shadow:0 8px 22px rgba(44,42,52,0.06)}
.author-cta-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.1rem}
.author-cta-actions .btn-gold,.author-cta-actions .btn-outline-light{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem}
.author-cta-actions .btn-outline-light{color:var(--text);border-color:rgba(44,42,52,0.18);background:#fff}
.author-cta-actions .btn-outline-light:hover{border-color:var(--gold);color:var(--gold-dark)}
.author-cta-secondary{margin-top:1rem !important;padding-top:.95rem;border-top:1px solid rgba(164,137,69,0.18);font-size:.82rem !important;color:var(--text-soft) !important}
.author-cta-secondary a{color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(164,137,69,0.35);font-weight:500}
.author-cta-secondary a:hover{color:var(--gold);border-bottom-color:var(--gold)}

/* PULL QUOTE */
.author-quote{position:relative;margin:3rem 0;padding:2.2rem 2rem 1.8rem;background:linear-gradient(135deg,var(--deep),var(--indigo));border-radius:20px;border:1px solid rgba(164,137,69,0.22);overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,0.12)}
.author-quote::before{content:'';position:absolute;top:-30%;right:-10%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.14),transparent 65%);pointer-events:none}
.author-quote-mark{position:absolute;top:.8rem;left:1.4rem;color:var(--gold);opacity:.4}
.author-quote p{font-family:var(--font-head);font-size:clamp(1rem,1.6vw,1.2rem);font-weight:500;font-style:italic;color:#fff;line-height:1.55;letter-spacing:-0.01em;margin:.4rem 0 1.3rem;padding-left:2.6rem;position:relative;z-index:1}
.author-quote-footer{display:flex;flex-direction:column;gap:.15rem;padding-left:2.6rem;position:relative;z-index:1}
.author-quote-name{font-family:var(--font-body);font-size:.82rem;font-weight:700;color:var(--gold-light);letter-spacing:.01em}
.author-quote-role{font-size:.7rem;color:rgba(250,246,238,0.55);letter-spacing:-0.005em}

/* SOCIAL GRID */
.author-social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1rem}
.author-social-card{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;background:#fff;border:1px solid var(--border);border-radius:12px;text-decoration:none !important;color:inherit;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.author-social-card:hover{transform:translateY(-2px);border-color:rgba(44,42,52,0.15);box-shadow:0 8px 24px rgba(44,42,52,0.08)}
.author-social-icon{width:36px;height:36px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.author-social-name{font-size:.82rem;font-weight:700;color:var(--text);letter-spacing:-0.005em;line-height:1.2}
.author-social-handle{font-size:.68rem;color:var(--text-soft);line-height:1.3;margin-top:.15rem}

/* SIDEBAR */
.author-sidebar{position:sticky;top:100px}
.author-sidebar-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.4rem 1.3rem;margin-bottom:1rem;box-shadow:0 1px 3px rgba(44,42,52,0.03),0 10px 28px rgba(44,42,52,0.04)}
.author-sidebar-label{font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--border-gold)}

/* Contact card rows */
.author-contact-row{display:flex;gap:.7rem;align-items:flex-start;padding:.55rem 0;font-size:.78rem;color:var(--text-mid);line-height:1.5}
.author-contact-row strong{display:block;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text);margin-bottom:.12rem}
.author-contact-row a{color:var(--gold-dark);text-decoration:none;font-weight:600}
.author-contact-row a:hover{text-decoration:underline}
.author-contact-icon{flex-shrink:0;width:30px;height:30px;border-radius:8px;background:rgba(164,137,69,0.1);color:var(--gold-dark);display:flex;align-items:center;justify-content:center;margin-top:2px}
.author-sidebar-cta{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem;padding:.75rem;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:#fff !important;text-decoration:none !important;border-radius:10px;font-size:.78rem;font-weight:700;letter-spacing:.01em;box-shadow:0 4px 14px rgba(164,137,69,0.3);transition:transform .25s ease,box-shadow .25s ease}
.author-sidebar-cta:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(164,137,69,0.45)}

/* Facts dl */
.author-facts{margin:0;display:flex;flex-direction:column;gap:.1rem}
.author-facts > div{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;padding:.55rem 0;border-bottom:1px dashed rgba(44,42,52,0.08)}
.author-facts > div:last-child{border-bottom:none}
.author-facts dt{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-soft);margin:0;flex-shrink:0}
.author-facts dd{margin:0;font-size:.78rem;color:var(--text);line-height:1.4;text-align:right;max-width:60%}
.author-facts dd small{color:var(--text-soft);font-size:.65rem;line-height:1.3}

/* Verify list */
.author-verify-list{list-style:none;padding:0;margin:0}
.author-verify-list li{padding:.8rem 0;border-bottom:1px dashed rgba(44,42,52,0.08)}
.author-verify-list li:last-child{border-bottom:none}
.author-verify-list li strong{display:block;font-size:.82rem;color:var(--text);font-weight:700;margin-bottom:.15rem}
.author-verify-list li span{display:block;font-size:.7rem;color:var(--text-soft);line-height:1.45;margin-bottom:.35rem}
.author-verify-list li a{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;color:var(--royal);text-decoration:none;letter-spacing:-0.005em;transition:color .2s ease,gap .2s ease}
.author-verify-list li a:hover{color:var(--gold-dark);gap:.35rem}

/* RESPONSIVE */
@media(max-width:960px){
  .author-hero{padding:3.5rem 1.2rem 2.8rem}
  .author-hero-grid{grid-template-columns:1fr;gap:2rem;text-align:center}
  .author-hero-photo{justify-self:center}
  .author-badges{justify-content:center}
  .author-hero-actions{justify-content:center}
  .author-layout{grid-template-columns:1fr;gap:2rem}
  .author-sidebar{position:static}
  .author-practice-grid{grid-template-columns:1fr}
  .author-books-grid{grid-template-columns:1fr}
  .author-social-grid{grid-template-columns:1fr}
  .author-quote{padding:1.8rem 1.3rem 1.3rem}
  .author-quote p,.author-quote-footer{padding-left:0}
  .author-quote-mark{position:static;display:block;margin-bottom:.4rem}
}
@media(max-width:500px){
  .author-body-section{padding:2.5rem 1rem !important}
  .author-photo-frame{width:200px;height:240px}
  .author-hero-actions{flex-direction:column;align-items:stretch}
  .author-hero-actions a{justify-content:center}
  .author-facts > div{flex-direction:column;gap:.15rem}
  .author-facts dd{text-align:left;max-width:100%}
}

/* ============================================
   ABOUT OUR EXPERT + DISCLAIMER
   Renders at the bottom of every single blog post.
   ============================================ */
.kq-expert-box{margin:3.5rem 0 1rem;background:linear-gradient(135deg,#FBF6E9 0%,#F3ECD9 100%);border:1px solid rgba(164,137,69,0.25);border-radius:18px;padding:2rem 2rem 1.5rem;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(44,42,52,0.04),0 14px 40px rgba(44,42,52,0.06)}
.kq-expert-box::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--gold-light) 20%,var(--gold) 50%,var(--gold-light) 80%,transparent 100%)}
.kq-expert-box::after{content:'';position:absolute;top:-50%;right:-15%;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(164,137,69,0.12),transparent 65%);pointer-events:none;z-index:0}
.kq-expert-box > *{position:relative;z-index:1}

.kq-expert-header{margin-bottom:1.4rem;padding-bottom:1.2rem;border-bottom:1px solid rgba(164,137,69,0.18)}
.kq-expert-eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:.5rem}
.kq-expert-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(164,137,69,0.5);flex-shrink:0}
.kq-expert-title{font-family:var(--font-head);font-size:clamp(1.4rem,2.4vw,1.75rem);font-weight:600;color:var(--text);line-height:1.15;letter-spacing:-0.015em;margin:0 0 .3rem}
.kq-expert-role{font-size:.8rem;color:var(--text-mid);font-weight:500;letter-spacing:-0.005em}

.kq-expert-body{display:flex;gap:1.6rem;align-items:flex-start;margin-bottom:1.4rem}
.kq-expert-photo{flex-shrink:0}
.kq-expert-photo img{width:110px;height:110px;border-radius:50%;object-fit:cover;display:block;border:3px solid #fff;box-shadow:0 8px 28px rgba(164,137,69,0.28),0 0 0 1px rgba(164,137,69,0.25)}
.kq-expert-content{flex:1;min-width:0}
.kq-expert-content p{font-size:.88rem;color:var(--text-mid);line-height:1.75;letter-spacing:-0.003em;margin:0 0 .8rem}
.kq-expert-content p:last-of-type{margin-bottom:0}
.kq-expert-content strong{color:var(--text);font-weight:600}
.kq-expert-firm{font-size:.82rem !important;color:var(--text-soft) !important;font-style:italic;padding:.7rem 1rem;background:rgba(164,137,69,0.07);border-left:3px solid var(--gold);border-radius:4px;margin-top:.6rem !important}
.kq-expert-firm strong{color:var(--gold-dark) !important;font-style:normal}

.kq-expert-credentials{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.kq-expert-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;background:#fff;border:1px solid rgba(164,137,69,0.28);border-radius:50px;color:var(--gold-dark);font-size:.68rem;font-weight:600;letter-spacing:-0.003em}
.kq-expert-chip svg{color:var(--gold);flex-shrink:0}

.kq-expert-social{display:flex;gap:.45rem;margin-top:1rem}
.kq-expert-social a{width:32px;height:32px;border-radius:9px;background:var(--deep);color:#fff !important;display:flex;align-items:center;justify-content:center;text-decoration:none !important;transition:transform .2s ease,background .2s ease;border:1px solid rgba(255,255,255,0.08)}
.kq-expert-social a:hover{transform:translateY(-2px)}
.kq-expert-social a[aria-label="LinkedIn"]:hover{background:#0A66C2}
.kq-expert-social a[aria-label="YouTube"]:hover{background:#FF0000}
.kq-expert-social a[aria-label="TikTok"]:hover{background:#000}
.kq-expert-social a[aria-label="Facebook"]:hover{background:#1877F2}

.kq-disclaimer{display:flex;gap:.8rem;align-items:flex-start;padding:1rem 1.2rem;background:rgba(220,38,38,0.06);border:1px solid rgba(220,38,38,0.22);border-radius:12px;margin-top:1.3rem;position:relative;z-index:1}
.kq-disclaimer-icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:rgba(220,38,38,0.12);color:#B91C1C;display:flex;align-items:center;justify-content:center;margin-top:1px}
.kq-disclaimer p{font-size:.76rem;color:#7F1D1D;line-height:1.65;letter-spacing:-0.002em;margin:0}
.kq-disclaimer strong{color:#B91C1C;font-weight:700}
.kq-disclaimer a{color:#B91C1C;text-decoration:underline;text-decoration-color:rgba(220,38,38,0.4);text-underline-offset:2px;font-weight:600}
.kq-disclaimer a:hover{text-decoration-color:#B91C1C;color:#991B1B}
.kq-disclaimer a strong{color:#B91C1C}

@media(max-width:640px){
  .kq-expert-box{padding:1.5rem 1.3rem 1.2rem;margin:2.5rem 0 .5rem}
  .kq-expert-body{flex-direction:column;gap:1rem;align-items:center;text-align:center}
  .kq-expert-credentials{justify-content:center}
  .kq-expert-social{justify-content:center}
  .kq-expert-photo img{width:90px;height:90px}
  .kq-expert-content{text-align:left;width:100%}
  .kq-expert-firm{text-align:left}
}

/* ============================================
   Linked credential chips (SRA / Resolution)
   ============================================ */
.kq-expert-chip-link{text-decoration:none !important;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease;cursor:pointer}
.kq-expert-chip-link:hover{transform:translateY(-1px);background:#fff;border-color:var(--gold) !important;color:#5F4A1F !important;box-shadow:0 3px 10px rgba(164,137,69,0.25)}
.kq-expert-chip-link:hover svg{color:var(--gold-dark) !important}

/* ============================================================
   KQ KNOWLEDGE HUB SECTION
   Featured article slider + 7-article guide grid
   ============================================================ */
.kq-hub-section{
  background:linear-gradient(180deg,#FAF6EE 0%,#F5ECCF 100%);
  position:relative;
  overflow:hidden;
}
.kq-hub-section::before{
  content:'';
  position:absolute;
  top:-150px;
  right:-150px;
  width:400px;
  height:400px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(164,137,69,.12),transparent 65%);
  pointer-events:none;
  filter:blur(40px);
}
.kq-hub-section::after{
  content:'';
  position:absolute;
  bottom:-150px;
  left:-150px;
  width:400px;
  height:400px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(30,58,138,.08),transparent 65%);
  pointer-events:none;
  filter:blur(40px);
}
.kq-hub-section .sc-in{position:relative;z-index:2}

/* ============== FEATURED SLIDER (HERO) ============== */
.kq-hub-featured{
  position:relative;
  margin-bottom:2rem;
}
.kq-hub-featured-eyebrow{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  margin-bottom:1.5rem;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#A48945;
  flex-wrap:wrap;
}
.kq-hub-pulse{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#A48945;
  position:relative;
  box-shadow:0 0 0 0 rgba(164,137,69,.5);
  animation:kqHubPulse 2s ease-in-out infinite;
}
@keyframes kqHubPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(164,137,69,.5)}
  50%{box-shadow:0 0 0 8px rgba(164,137,69,0)}
}
.kq-hub-eyebrow-text{color:#A48945}
.kq-hub-eyebrow-divider{color:rgba(164,137,69,.4);font-weight:400}
.kq-hub-eyebrow-count{color:#7D7A88;font-weight:600;letter-spacing:.1em}

/* Slider container */
.kq-hub-slider{
  position:relative;
  background:linear-gradient(135deg,#0F1024 0%,#1A1C30 50%,#2C2F52 100%);
  border-radius:24px;
  padding:3rem 4rem 3.5rem;
  min-height:340px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(26,28,48,.25),0 4px 12px rgba(26,28,48,.1),inset 0 1px 0 rgba(255,255,255,.08);
  border:1px solid rgba(164,137,69,.2);
}
.kq-hub-slider::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(ellipse 60% 50% at 20% 30%,rgba(164,137,69,.18),transparent 60%),
    radial-gradient(ellipse 50% 60% at 80% 70%,rgba(30,58,138,.25),transparent 65%);
  pointer-events:none;
}
.kq-hub-slider::after{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(164,137,69,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(164,137,69,.04) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 30%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 30%,transparent 80%);
  pointer-events:none;
}

.kq-hub-slider-track{
  display:flex;
  width:100%;
  transition:transform .65s cubic-bezier(.22,.61,.36,1);
  position:relative;
  z-index:2;
}

.kq-hub-slide{
  flex:0 0 100%;
  min-width:0;
  padding:.5rem 0;
  text-align:center;
  opacity:.35;
  transform:scale(.97);
  transition:opacity .55s ease,transform .55s cubic-bezier(.22,.61,.36,1);
}
.kq-hub-slide.is-current{opacity:1;transform:scale(1)}

.kq-hub-slide-meta{
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  margin-bottom:1.1rem;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.05em;
}
.kq-hub-slide-tag{
  background:linear-gradient(135deg,#BFA45C,#A48945);
  color:#1A1C30;
  padding:.35rem .85rem;
  border-radius:50px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.62rem;
  box-shadow:0 4px 12px rgba(164,137,69,.35);
}
.kq-hub-slide-date{
  color:rgba(250,246,238,.55);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.62rem;
}

.kq-hub-slide-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(1.6rem,3.4vw,2.4rem);
  font-weight:700;
  line-height:1.18;
  color:#FAF6EE;
  letter-spacing:-0.02em;
  margin:0 auto 1rem;
  max-width:760px;
  text-wrap:balance;
}
.kq-hub-slide-title em{
  font-style:italic;
  background:linear-gradient(135deg,#BFA45C 0%,#D6A55C 50%,#BFA45C 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  display:inline-block;
}

.kq-hub-slide-desc{
  max-width:680px;
  margin:0 auto 1.6rem;
  font-size:1rem;
  line-height:1.65;
  color:rgba(250,246,238,.78);
}

.kq-hub-slide-cta{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.85rem 1.7rem;
  background:linear-gradient(135deg,#BFA45C 0%,#A48945 100%);
  color:#1A1C30 !important;
  text-decoration:none !important;
  border-radius:50px;
  font-weight:700;
  font-size:.88rem;
  letter-spacing:.005em;
  box-shadow:0 8px 22px rgba(164,137,69,.4),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .25s,box-shadow .25s;
  position:relative;
  overflow:hidden;
}
.kq-hub-slide-cta::before{
  content:'';
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
  transition:left .55s;
}
.kq-hub-slide-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(164,137,69,.55),inset 0 1px 0 rgba(255,255,255,.3);
}
.kq-hub-slide-cta:hover::before{left:100%}

/* Slider arrows */
.kq-hub-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(250,246,238,.2);
  color:#FAF6EE;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:3;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background .25s,border-color .25s,transform .25s;
  padding:0;
}
.kq-hub-arrow:hover{
  background:rgba(164,137,69,.25);
  border-color:rgba(164,137,69,.6);
  transform:translateY(-50%) scale(1.08);
}
.kq-hub-arrow:active{transform:translateY(-50%) scale(.96)}
.kq-hub-arrow-prev{left:1rem}
.kq-hub-arrow-next{right:1rem}

/* Progress bar */
.kq-hub-progress{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:3px;
  background:rgba(250,246,238,.08);
  overflow:hidden;
  z-index:3;
}
.kq-hub-progress-fill{
  height:100%;
  background:linear-gradient(90deg,#BFA45C,#A48945);
  width:0%;
  transition:width .3s linear;
  box-shadow:0 0 12px rgba(164,137,69,.6);
}

/* Dots indicator */
.kq-hub-dots{
  position:absolute;
  bottom:1rem;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:.45rem;
  z-index:3;
}
.kq-hub-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(250,246,238,.25);
  border:none;
  cursor:pointer;
  padding:0;
  transition:background .25s,width .35s;
}
.kq-hub-dot:hover{background:rgba(250,246,238,.45)}
.kq-hub-dot.is-active{
  background:#BFA45C;
  width:24px;
  border-radius:4px;
  box-shadow:0 0 10px rgba(191,164,92,.5);
}

/* ============== ARTICLE GRID ============== */
.kq-hub-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:1rem;
  margin-top:1.5rem;
}
.kq-hub-card{
  position:relative;
  display:block;
  padding:1.5rem 1.4rem 1.3rem;
  background:#fff;
  border-radius:16px;
  border:1px solid rgba(164,137,69,.18);
  text-decoration:none !important;
  color:inherit !important;
  box-shadow:0 1px 3px rgba(44,42,52,.05),0 8px 22px rgba(44,42,52,.06);
  transition:transform .35s cubic-bezier(.2,.9,.3,1),box-shadow .35s,border-color .35s;
  overflow:hidden;
}
.kq-hub-card::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg,#BFA45C,#A48945);
  opacity:0;
  transition:opacity .3s;
}
.kq-hub-card:hover{
  transform:translateY(-5px);
  box-shadow:0 1px 3px rgba(44,42,52,.05),0 24px 48px rgba(44,42,52,.14);
  border-color:rgba(164,137,69,.4);
}
.kq-hub-card:hover::before{opacity:1}
.kq-hub-card-icon{
  width:46px;
  height:46px;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(164,137,69,.12),rgba(164,137,69,.06));
  display:flex;
  align-items:center;
  justify-content:center;
  color:#A48945;
  margin-bottom:1rem;
  transition:background .3s,transform .3s;
}
.kq-hub-card:hover .kq-hub-card-icon{
  background:linear-gradient(135deg,#BFA45C,#A48945);
  color:#FAF6EE;
  transform:scale(1.05);
}
.kq-hub-card-tag{
  position:absolute;
  top:1rem;
  right:1rem;
  font-size:.6rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#1A1C30;
  background:linear-gradient(135deg,#BFA45C,#A48945);
  padding:.25rem .55rem;
  border-radius:50px;
  box-shadow:0 3px 8px rgba(164,137,69,.3);
}
.kq-hub-card h3{
  font-family:'Playfair Display',Georgia,serif;
  font-size:1.05rem;
  font-weight:700;
  color:#1A1C30;
  letter-spacing:-0.015em;
  line-height:1.25;
  margin:0 0 .5rem;
}
.kq-hub-card p{
  font-size:.84rem;
  line-height:1.55;
  color:#55525F;
  margin:0 0 1rem;
}
.kq-hub-card-link{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  font-size:.78rem;
  font-weight:700;
  color:#A48945;
  letter-spacing:.005em;
  transition:gap .25s,color .25s;
}
.kq-hub-card:hover .kq-hub-card-link{
  gap:.6rem;
  color:#5F4A1F;
}

/* ============== MOBILE RESPONSIVE ============== */
@media (max-width:768px){
  .kq-hub-slider{
    padding:2.2rem 1.2rem 3rem;
    min-height:auto;
    border-radius:18px;
  }
  .kq-hub-slide-title{font-size:1.4rem;line-height:1.22}
  .kq-hub-slide-desc{font-size:.9rem;line-height:1.55}
  .kq-hub-slide-cta{padding:.75rem 1.4rem;font-size:.84rem}
  .kq-hub-arrow{width:36px;height:36px}
  .kq-hub-arrow-prev{left:.5rem}
  .kq-hub-arrow-next{right:.5rem}
  .kq-hub-arrow svg{width:14px;height:14px}
  .kq-hub-dots{bottom:.7rem;gap:.35rem}
  .kq-hub-dot{width:6px;height:6px}
  .kq-hub-dot.is-active{width:18px}
  .kq-hub-grid{grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1.2rem}
  .kq-hub-card{padding:1.2rem 1rem 1rem}
  .kq-hub-card-icon{width:38px;height:38px;margin-bottom:.7rem}
  .kq-hub-card h3{font-size:.92rem}
  .kq-hub-card p{font-size:.76rem;margin-bottom:.7rem}
  .kq-hub-card-tag{font-size:.55rem;padding:.2rem .45rem}
  .kq-hub-featured-eyebrow{font-size:.62rem;letter-spacing:.14em}
}
@media (max-width:460px){
  .kq-hub-grid{grid-template-columns:1fr}
  .kq-hub-slide-meta{flex-direction:column;gap:.4rem}
}
@media (prefers-reduced-motion:reduce){
  .kq-hub-pulse,.kq-hub-slide-cta::before{animation:none}
  .kq-hub-slider-track,.kq-hub-slide{transition:none}
  .kq-hub-progress-fill{transition:none}
}

/* ============================================================
   FAQ ACCORDION + COLLAPSIBLE LISTS
   Applied via JavaScript across all 7 guide articles.
   The 6 standardised pages get FAQ converted to accordion;
   the spouse visa has its own .faq-item accordion already.
   Long lists (>6 items) get a "Show all N items" toggle.
   ============================================================ */

/* ---------- FAQ Accordion (6 standardised pages) ---------- */
.kq-acc-wrap{
  margin:1rem 0;
  max-width:100%;
}
.kq-acc-item{
  border:1px solid rgba(164,137,69,.16);
  border-radius:10px;
  margin-bottom:.4rem;
  background:#fff;
  overflow:hidden;
  transition:border-color .25s ease, box-shadow .25s ease;
}
.kq-acc-item:hover{border-color:rgba(164,137,69,.3)}
.kq-acc-item.is-open{
  border-color:rgba(164,137,69,.4);
  box-shadow:0 1px 2px rgba(44,42,52,.04),0 4px 14px rgba(44,42,52,.05);
}

.kq-acc-q{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:.8rem;
  width:100%;
  padding:.7rem .95rem;
  background:transparent;
  border:none;
  text-align:left;
  cursor:pointer;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-size:.88rem;
  font-weight:600;
  color:#1A1C30;
  letter-spacing:-0.005em;
  line-height:1.35;
  transition:background .2s ease, color .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.kq-acc-q:hover{background:rgba(164,137,69,.04)}
.kq-acc-q:focus{outline:none}
.kq-acc-q:focus-visible{
  outline:2px solid rgba(164,137,69,.5);
  outline-offset:-2px;
  border-radius:10px;
}
.kq-acc-item.is-open .kq-acc-q{
  background:rgba(164,137,69,.05);
  color:#5F4A1F;
}
.kq-acc-q-text{flex:1;text-align:left;text-wrap:balance}
.kq-acc-q-icon{
  flex-shrink:0;
  margin-top:2px;
  color:#A48945;
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
}
.kq-acc-item.is-open .kq-acc-q-icon{transform:rotate(180deg)}

.kq-acc-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .4s cubic-bezier(.2,.8,.2,1);
}
.kq-acc-item.is-open .kq-acc-a{max-height:1500px}
.kq-acc-a-inner{
  padding:.65rem .95rem .85rem;
  border-top:1px solid rgba(164,137,69,.12);
  opacity:0;
  transform:translateY(-4px);
  transition:opacity .3s ease .06s, transform .35s cubic-bezier(.2,.8,.2,1) .06s;
}
.kq-acc-item.is-open .kq-acc-a-inner{opacity:1;transform:translateY(0)}
.kq-acc-a-inner > *:first-child{margin-top:0 !important}
.kq-acc-a-inner > *:last-child{margin-bottom:0 !important}
.kq-acc-a-inner p{
  margin:0 0 .5rem !important;
  font-size:.86rem;
  line-height:1.55;
  color:#3C3947;
}
.kq-acc-a-inner ul,.kq-acc-a-inner ol{margin:.3rem 0 .5rem 1.3rem !important}
.kq-acc-a-inner li{font-size:.85rem;line-height:1.55;color:#3C3947;margin-bottom:.25rem}

/* ---------- Collapsible Long Lists (all 7 pages) ---------- */
.kq-list-hidden{
  display:none !important;
}
ul.kq-list-collapsed.kq-list-expanded .kq-list-hidden,
ol.kq-list-collapsed.kq-list-expanded .kq-list-hidden{
  display:list-item !important;
  animation:kqListReveal .45s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes kqListReveal{
  from{opacity:0;transform:translateY(-6px)}
  to{opacity:1;transform:translateY(0)}
}

.kq-list-toggle{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem 1rem;
  margin:.3rem 0 1.2rem;
  background:rgba(164,137,69,.06);
  border:1px solid rgba(164,137,69,.32);
  border-radius:50px;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-size:.78rem;
  font-weight:600;
  color:#A48945;
  cursor:pointer;
  letter-spacing:.005em;
  transition:background .25s ease, border-color .25s ease, color .25s ease, transform .15s ease;
  -webkit-tap-highlight-color:transparent;
}
.kq-list-toggle:hover{
  background:rgba(164,137,69,.12);
  border-color:rgba(164,137,69,.55);
  color:#5F4A1F;
}
.kq-list-toggle:active{transform:scale(.96)}
.kq-list-toggle:focus{outline:none}
.kq-list-toggle:focus-visible{
  outline:2px solid rgba(164,137,69,.5);
  outline-offset:2px;
}
.kq-list-toggle svg{
  transition:transform .3s cubic-bezier(.2,.8,.2,1);
}
.kq-list-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}

/* ---------- Print: expand everything for printing ---------- */
@media print{
  .kq-acc-a{max-height:none !important;overflow:visible !important}
  .kq-acc-a-inner{opacity:1 !important;transform:none !important}
  .kq-acc-q-icon{display:none}
  .kq-list-hidden{display:list-item !important}
  .kq-list-toggle{display:none}
}

/* ---------- Reduced motion: turn off slide animations ---------- */
@media (prefers-reduced-motion:reduce){
  .kq-acc-a,.kq-acc-a-inner,.kq-acc-q-icon,.kq-list-toggle svg{transition:none !important}
  ul.kq-list-collapsed.kq-list-expanded .kq-list-hidden,
  ol.kq-list-collapsed.kq-list-expanded .kq-list-hidden{animation:none !important}
}

/* ---------- Mobile tweaks ---------- */
@media (max-width:560px){
  .kq-acc-q{font-size:.84rem;padding:.6rem .8rem;gap:.6rem}
  .kq-acc-a-inner{padding:.55rem .8rem .75rem}
  .kq-acc-a-inner p{font-size:.82rem}
  .kq-list-toggle{padding:.4rem .85rem;font-size:.74rem}
}
