/*
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 — Stage 1 Complete. All sections from SEO brief implemented.
Version: 8.2
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-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{
  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{
    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}
.review-platform::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:currentColor;opacity:0;transform:scaleX(0);transition:opacity .3s ease,transform .3s ease;transform-origin:left}
.review-platform-google::before{color:#4285F4}
.review-platform-trustpilot::before{color:#00B67A}
.review-platform-facebook::before{color:#1877F2}
.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:hover::before{opacity:1;transform:scaleX(1)}
.review-platform-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:rgba(0,0,0,0.03);display:flex;align-items:center;justify-content:center}
.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:#F4B400}
.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:#4285F4}
.review-platform-trustpilot:hover .review-platform-arrow{color:#00B67A}
.review-platform-facebook:hover .review-platform-arrow{color:#1877F2}

/* 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)}

/* 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}

/* 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}
