/*
Theme Name: Aashish SEO - Nepal
Theme URI: https://aashishmaharjan.com.np
Author: Aashish Maharjan
Author URI: https://www.linkedin.com/in/aashish-mhrzn/
Description: SEO Expert in Nepal - custom multi-page conversion theme. Ecommerce and international SEO specialist.
Version: 4.0
License: GNU General Public License v2 or later
Text Domain: aashish-seo
*/

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --bg:#faf7f2; --bg2:#f4eee4; --bg3:#ece4d6;
    --border:rgba(40,32,24,0.1); --border-md:rgba(40,32,24,0.16);
    --blue:#c24d28; --blue-lt:#b3401c; --blue-dim:rgba(194,77,40,0.07);
    --green:#2e7d52; --green-dim:rgba(46,125,82,0.1);
    --text:#1f1b16; --muted:#6b665d; --dim:#a59d8f;
    --serif:'Playfair Display',Georgia,serif; --sans:'Sora',system-ui,sans-serif;
    --r:8px; --rl:14px; --max:1120px; --ease:0.22s ease;
  }
  html { scroll-behavior:smooth; }
  body { font-family:var(--sans); background:var(--bg); color:var(--text); line-height:1.7; font-size:16px; overflow-x:hidden; }
  /* HERO */
  .hero { min-height:100vh; display:flex; align-items:center; padding:104px 2.5rem 70px; position:relative; overflow:hidden; }
  .hero::before { content:''; position:absolute; top:-20%; right:-12%; width:720px; height:720px; background:radial-gradient(circle,rgba(194,77,40,0.06) 0%,transparent 64%); pointer-events:none; }
  .hero-grid { position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(40,32,24,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(40,32,24,0.03) 1px,transparent 1px); background-size:58px 58px; mask-image:radial-gradient(ellipse 75% 70% at 60% 35%,black 15%,transparent 80%); }
  .hero-inner { max-width:var(--max); margin:0 auto; width:100%; position:relative; z-index:1; }
  .badge-pill { display:inline-flex; align-items:center; gap:8px; font-size:0.74rem; font-weight:500; letter-spacing:0.04em; color:var(--blue-lt); background:var(--blue-dim); border:0.5px solid var(--border-md); padding:6px 14px; border-radius:100px; margin-bottom:1.6rem; }
  .badge-pill .dot { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 8px var(--green); }
  .hero h1 { font-family:var(--serif); font-size:clamp(2.7rem,5.6vw,4.7rem); font-weight:700; line-height:1.08; letter-spacing:-0.02em; margin-bottom:1.4rem; max-width:840px; }
  .hero h1 em { font-style:italic; color:var(--blue-lt); }
  .hero-sub { font-size:1.05rem; color:var(--muted); font-weight:300; max-width:560px; line-height:1.85; margin-bottom:2.3rem; }
  .hero-btns { display:flex; gap:14px; flex-wrap:wrap; align-items:center; margin-bottom:3rem; }
  .btn-p { display:inline-block; padding:15px 32px; background:var(--blue); color:#fff; font-size:0.9rem; font-weight:600; border-radius:var(--r); text-decoration:none; transition:background var(--ease),transform var(--ease),box-shadow var(--ease); box-shadow:0 4px 16px rgba(194,77,40,0.22); }
  .prose a.btn-p, .page-extra a.btn-p, a.btn-p { color:#fff; text-decoration:none; }
  .prose a.btn-p:hover, .page-extra a.btn-p:hover { color:#fff; }
  .btn-p:hover { background:#a8401f; transform:translateY(-1px); box-shadow:0 6px 24px rgba(194,77,40,0.28); }
  .btn-g { display:inline-flex; align-items:center; gap:6px; padding:15px 26px; border:0.5px solid var(--border-md); color:var(--muted); font-size:0.9rem; border-radius:var(--r); text-decoration:none; transition:border-color var(--ease),color var(--ease); }
  .prose a.btn-g, .page-extra a.btn-g { color:var(--muted); text-decoration:none; }
  .btn-g:hover { border-color:var(--blue); color:var(--blue); }
  .prose a.btn-g:hover, .page-extra a.btn-g:hover { color:var(--blue); }
  .hero-stats { display:flex; flex-wrap:wrap; gap:38px; }
  .hstat-n { font-family:var(--serif); font-size:2.2rem; font-weight:700; color:var(--text); line-height:1; }
  .hstat-n .ph { color:var(--blue-lt); }
  .hstat-l { font-size:0.78rem; color:var(--muted); margin-top:6px; }
  .hero-copy > * { opacity:0; transform:translateY(12px); animation:up 0.5s ease forwards; }
  .hero-copy > *:nth-child(1){animation-delay:.06s} .hero-copy > *:nth-child(2){animation-delay:.16s} .hero-copy > *:nth-child(3){animation-delay:.26s} .hero-copy > *:nth-child(4){animation-delay:.36s} .hero-copy > *:nth-child(5){animation-delay:.46s}
  @keyframes up { to { opacity:1; transform:translateY(0);} }

  /* EDITABLE NOTE */
  .ph { position:relative; }
  .edit-note { display:inline-block; font-family:var(--sans); font-size:0.6rem; font-weight:600; letter-spacing:0.05em; text-transform:uppercase; color:#9a4422; background:rgba(194,77,40,0.09); border:0.5px solid rgba(194,77,40,0.25); padding:1px 6px; border-radius:4px; vertical-align:middle; margin-left:6px; }

  /* MARQUEE */
  .marquee-wrap { border-top:0.5px solid var(--border); border-bottom:0.5px solid var(--border); background:var(--bg2); overflow:hidden; padding:18px 0; }
  .marquee { display:flex; gap:0; white-space:nowrap; animation:scroll 28s linear infinite; }
  .marquee span { font-size:0.85rem; font-weight:500; letter-spacing:0.06em; color:var(--muted); padding:0 28px; }
  .marquee span::after { content:'✦'; color:var(--blue); margin-left:28px; }
  @keyframes scroll { to { transform:translateX(-50%); } }

  /* SECTIONS */
  section { padding:92px 2.5rem; }
  .container { max-width:var(--max); margin:0 auto; }
  .sec-label { font-size:0.68rem; font-weight:600; letter-spacing:0.15em; text-transform:uppercase; color:var(--blue); display:flex; align-items:center; gap:10px; margin-bottom:1rem; }
  .sec-label.center { justify-content:center; }
  .sec-label::after { content:''; flex:1; max-width:48px; height:1px; background:var(--blue); opacity:.35; }
  .sec-label.center::before { content:''; flex:1; max-width:48px; height:1px; background:var(--blue); opacity:.35; }
  .sec-title { font-family:var(--serif); font-size:clamp(1.9rem,3.7vw,2.8rem); font-weight:700; line-height:1.15; letter-spacing:-0.02em; margin-bottom:0.8rem; }
  .sec-title em { font-style:italic; color:var(--blue-lt); }
  .sec-sub { font-size:0.95rem; color:var(--muted); line-height:1.85; max-width:560px; }
  .center-head { text-align:center; max-width:640px; margin:0 auto; }
  .center-head .sec-sub { margin:0 auto; }

  /* PROBLEM/VALUE */
  .value-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:3rem; }
  .value-card { padding:30px 26px; background:var(--bg2); border:0.5px solid var(--border); border-radius:var(--rl); transition:border-color var(--ease),transform var(--ease); }
  .value-card:hover { border-color:rgba(194,77,40,0.3); transform:translateY(-3px); }
  .value-ico { width:42px; height:42px; border-radius:10px; background:var(--blue-dim); display:flex; align-items:center; justify-content:center; margin-bottom:16px; color:var(--blue); }
  .value-ico svg { width:22px; height:22px; }
  .value-card h3 { font-size:1.02rem; font-weight:600; color:var(--text); margin-bottom:9px; }
  .value-card p { font-size:0.86rem; color:var(--muted); line-height:1.75; }

  /* SERVICES */
  .svc-section { background:var(--bg2); }
  .svc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:var(--rl); overflow:hidden; margin-top:3rem; }
  .svc-card { background:var(--bg2); padding:30px 26px; transition:background var(--ease); position:relative; }
  .svc-card:hover { background:var(--bg3); }
  .svc-tag { font-size:0.62rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--blue); margin-bottom:10px; display:block; }
  .svc-ico { width:30px; height:30px; color:var(--blue); opacity:.85; margin-bottom:13px; }
  .svc-card h3 { font-size:1rem; font-weight:600; color:var(--text); margin-bottom:8px; }
  .svc-card p { font-size:0.82rem; color:var(--muted); line-height:1.7; }

  /* CASE STUDIES */
  .case-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin-top:3rem; }
  .case-card { background:var(--bg2); border:0.5px solid var(--border); border-radius:var(--rl); padding:30px 28px; transition:border-color var(--ease),transform var(--ease); position:relative; overflow:hidden; }
  .case-card:hover { border-color:rgba(194,77,40,0.35); transform:translateY(-3px); }
  .case-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
  .case-brand { font-family:var(--serif); font-size:1.2rem; font-weight:700; color:var(--text); }
  .case-meta { font-size:0.68rem; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:var(--blue); }
  .case-result { display:flex; align-items:baseline; gap:10px; margin-bottom:16px; padding:16px 18px; background:var(--green-dim); border:0.5px solid rgba(47,208,126,0.25); border-radius:var(--r); }
  .case-result .big { font-family:var(--serif); font-size:1.9rem; font-weight:700; color:var(--green); line-height:1; }
  .case-result .lbl { font-size:0.8rem; color:var(--muted); }
  .case-body { font-size:0.85rem; color:var(--muted); line-height:1.75; }
  .case-body strong { color:var(--text); font-weight:600; }

  /* PROCESS */
  .proc-section { background:var(--bg2); }
  .proc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:3rem; }
  .proc-card { padding:26px 22px; position:relative; }
  .proc-n { font-family:var(--serif); font-size:2.6rem; font-weight:700; color:var(--blue); opacity:.22; line-height:1; margin-bottom:10px; }
  .proc-card h3 { font-size:0.96rem; font-weight:600; color:var(--text); margin-bottom:8px; }
  .proc-card p { font-size:0.82rem; color:var(--muted); line-height:1.72; }
  .proc-line { position:absolute; top:34px; right:-9px; width:18px; height:1px; background:var(--border-md); }

  /* ABOUT */
  .about-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; margin-top:3rem; }
  .about-quote { font-family:var(--serif); font-size:1.3rem; font-style:italic; line-height:1.6; color:var(--blue-lt); padding-left:1.4rem; border-left:2px solid var(--blue); margin-bottom:1.8rem; }
  .about-body { font-size:0.95rem; color:var(--muted); line-height:1.88; }
  .about-body p+p { margin-top:1rem; }
  .about-body strong { color:var(--text); font-weight:600; }
  .about-facts { display:flex; flex-direction:column; gap:14px; }
  .fact { display:flex; gap:14px; align-items:flex-start; padding:18px 20px; background:var(--bg2); border:0.5px solid var(--border); border-radius:var(--rl); transition:border-color var(--ease); }
  .fact:hover { border-color:rgba(194,77,40,0.28); }
  .fact-ico { flex-shrink:0; width:34px; height:34px; border-radius:8px; background:var(--blue-dim); display:flex; align-items:center; justify-content:center; color:var(--blue); }
  .fact-ico svg { width:18px; height:18px; }
  .fact h4 { font-size:0.86rem; font-weight:600; color:var(--text); margin-bottom:3px; }
  .fact p { font-size:0.79rem; color:var(--muted); line-height:1.6; }

  /* CLIENTS */
  .clients-section { background:var(--bg2); }
  .logos-row { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin-top:2.6rem; }
  .logo-chip { padding:14px 26px; background:var(--bg); border:0.5px solid var(--border); border-radius:var(--r); font-family:var(--serif); font-size:1.05rem; font-weight:600; color:var(--muted); letter-spacing:0.01em; transition:color var(--ease),border-color var(--ease); }
  .logo-chip:hover { color:var(--text); border-color:rgba(194,77,40,0.32); }
  .logo-chip span { font-size:0.62rem; font-family:var(--sans); color:var(--blue); display:block; letter-spacing:0.08em; text-transform:uppercase; margin-top:2px; }

  /* TOOLS */
  .tools-wrap { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; margin-top:2.6rem; }
  .tool { display:inline-flex; align-items:center; gap:7px; padding:8px 15px; background:var(--bg2); border:0.5px solid var(--border-md); border-radius:100px; font-size:0.8rem; color:var(--muted); transition:border-color var(--ease),color var(--ease); }
  .tool:hover { border-color:rgba(194,77,40,0.45); color:var(--text); }
  .tool-dot { width:5px; height:5px; border-radius:50%; background:var(--blue); }

  /* FAQ */
  .faq-list { margin-top:3rem; max-width:780px; margin-left:auto; margin-right:auto; }
  .faq-item { border-bottom:0.5px solid var(--border); }
  .faq-q { width:100%; text-align:left; background:none; border:none; color:var(--text); font-family:var(--sans); font-size:1rem; font-weight:500; padding:22px 40px 22px 0; cursor:pointer; position:relative; }
  .faq-q::after { content:'+'; position:absolute; right:0; top:50%; transform:translateY(-50%); font-size:1.4rem; color:var(--blue); font-weight:300; transition:transform var(--ease); }
  .faq-item.open .faq-q::after { transform:translateY(-50%) rotate(45deg); }
  .faq-a { max-height:0; overflow:hidden; transition:max-height 0.3s ease; }
  .faq-a p { font-size:0.88rem; color:var(--muted); line-height:1.8; padding:0 0 22px; }
  .faq-item.open .faq-a { max-height:300px; }

  /* CTA */
  .cta-section { text-align:center; position:relative; overflow:hidden; }
  .cta-section::before { content:''; position:absolute; top:-30%; left:50%; transform:translateX(-50%); width:700px; height:500px; background:radial-gradient(circle,rgba(194,77,40,0.07) 0%,transparent 65%); pointer-events:none; }
  .cta-inner { max-width:620px; margin:0 auto; position:relative; z-index:1; }
  .cta-sub { font-size:1rem; color:var(--muted); line-height:1.88; margin-bottom:2.4rem; }
  .cta-btns { display:flex; justify-content:center; gap:13px; flex-wrap:wrap; }
  .cta-meta { display:flex; justify-content:center; gap:30px; flex-wrap:wrap; margin-top:3rem; padding-top:2.4rem; border-top:0.5px solid var(--border); }
  .cta-meta-item { display:flex; flex-direction:column; align-items:center; gap:4px; }
  .cta-meta-l { font-size:0.64rem; text-transform:uppercase; letter-spacing:0.09em; color:var(--dim); font-weight:600; }
  .cta-meta-v { font-size:0.87rem; color:var(--muted); text-decoration:none; transition:color var(--ease); }
  .cta-meta-v:hover { color:var(--blue); }
  @media (max-width:880px) {
    .value-grid, .svc-grid, .case-grid, .proc-grid { grid-template-columns:1fr 1fr; }
    .about-grid { grid-template-columns:1fr; gap:36px; }
    .proc-line { display:none; }
  }
  @media (max-width:620px) {
    nav { padding:0 1.2rem; }
    .nav-links { display:none; }
    .hero, section { padding-left:1.2rem; padding-right:1.2rem; }
    .value-grid, .svc-grid, .case-grid, .proc-grid { grid-template-columns:1fr; }
    .hero-stats { gap:24px; }
    .foot { flex-direction:column; align-items:flex-start; }
  }

  /* ===== MULTI-PAGE NAV ===== */
  .site-nav { position:fixed; top:0; left:0; right:0; z-index:200; background:rgba(250,247,242,0.88); backdrop-filter:blur(18px); border-bottom:0.5px solid var(--border); transition:box-shadow .25s ease, background .25s ease; }
  .site-nav.scrolled { box-shadow:0 4px 24px rgba(40,32,24,0.08); background:rgba(250,247,242,0.96); }
  .nav-wrap { max-width:var(--max); margin:0 auto; height:64px; display:flex; align-items:center; justify-content:space-between; padding:0 2.5rem; }
  .nav-logo { font-family:var(--sans); font-size:1.05rem; font-weight:700; color:var(--text); text-decoration:none; letter-spacing:-0.01em; }
  .nav-logo span { color:var(--blue); }
  .nav-links { display:flex; align-items:center; gap:1.8rem; list-style:none; margin:0; padding:0; }
  .nav-links > li { position:relative; }
  .nav-links a { font-size:0.85rem; font-weight:400; color:var(--muted); text-decoration:none; transition:color var(--ease); display:inline-flex; align-items:center; gap:5px; }
  .nav-links a:hover { color:var(--text); }
  .nav-links .caret { transition:transform var(--ease); opacity:.7; }
  .has-dropdown:hover .caret { transform:rotate(180deg); }
  .nav-cta { font-size:0.79rem !important; font-weight:600 !important; padding:8px 18px; background:var(--blue); color:#fff !important; border-radius:var(--r); box-shadow:0 2px 12px rgba(194,77,40,0.2); transition:background var(--ease), box-shadow var(--ease) !important; }
  .nav-cta:hover { background:#a8401f; box-shadow:0 4px 18px rgba(194,77,40,0.26); }
  /* dropdown */
  .dropdown { position:absolute; top:calc(100% + 14px); left:50%; transform:translateX(-50%) translateY(-8px); min-width:210px; background:var(--bg2); border:0.5px solid var(--border-md); border-radius:var(--rl); padding:8px; list-style:none; margin:0; opacity:0; visibility:hidden; transition:all .22s ease; box-shadow:0 18px 44px rgba(40,32,24,0.14); }
  .has-dropdown:hover .dropdown { opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }
  .dropdown::before { content:''; position:absolute; top:-14px; left:0; right:0; height:14px; }
  .dropdown li { display:block; }
  .dropdown a { display:block; padding:10px 14px; font-size:0.83rem; color:var(--muted); border-radius:8px; transition:background var(--ease), color var(--ease); }
  .dropdown a:hover { background:var(--blue-dim); color:var(--text); }
  /* mobile toggle */
  .nav-toggle { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px; }
  .nav-toggle span { width:22px; height:2px; background:var(--text); border-radius:2px; transition:all .25s ease; }
  .nav-toggle.active span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  .nav-toggle.active span:nth-child(2){ opacity:0; }
  .nav-toggle.active span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

  /* ===== MULTI-COLUMN FOOTER ===== */
  .site-footer { border-top:0.5px solid var(--border); background:var(--bg2); padding:56px 2.5rem 0; }
  .foot { max-width:var(--max); margin:0 auto; display:flex; justify-content:space-between; gap:48px; flex-wrap:wrap; padding-bottom:40px; }
  .foot-brand { max-width:300px; }
  .foot-tag { font-size:0.82rem; color:var(--muted); margin-top:10px; line-height:1.6; }
  .foot-cols { display:flex; gap:56px; flex-wrap:wrap; }
  .foot-col h4 { font-size:0.7rem; text-transform:uppercase; letter-spacing:0.1em; color:var(--blue); margin-bottom:14px; font-weight:600; }
  .foot-col a { display:block; font-size:0.84rem; color:var(--muted); text-decoration:none; margin-bottom:9px; transition:color var(--ease); }
  .foot-col a:hover { color:var(--text); }
  .foot-bottom { max-width:var(--max); margin:0 auto; border-top:0.5px solid var(--border); padding:22px 0; }
  .foot-bottom p { font-size:0.78rem; color:var(--dim); }

  /* ===== PAGE HERO (inner pages) ===== */
  .page-hero { padding:140px 2.5rem 60px; position:relative; overflow:hidden; }
  .page-hero::before { content:''; position:absolute; top:-30%; right:-10%; width:600px; height:600px; background:radial-gradient(circle,rgba(194,77,40,0.05) 0%,transparent 64%); pointer-events:none; }
  .page-hero .container { position:relative; z-index:1; }
  .breadcrumb { font-size:0.76rem; color:var(--dim); margin-bottom:1.2rem; }
  .breadcrumb a { color:var(--muted); text-decoration:none; }
  .breadcrumb a:hover { color:var(--blue); }
  .page-hero h1 { font-family:var(--serif); font-size:clamp(2.2rem,4.6vw,3.5rem); font-weight:700; line-height:1.12; letter-spacing:-0.02em; margin-bottom:1.1rem; max-width:780px; }
  .page-hero h1 em { font-style:italic; color:var(--blue-lt); }
  .page-hero .lead { font-size:1.05rem; color:var(--muted); font-weight:300; max-width:600px; line-height:1.85; margin-bottom:2rem; }

  /* ===== PROSE (service/about body copy) ===== */
  .prose { max-width:760px; }
  .prose h2 { font-family:var(--serif); font-size:1.7rem; font-weight:700; color:var(--text); margin:2.4rem 0 1rem; letter-spacing:-0.01em; }
  .prose h3 { font-size:1.15rem; font-weight:600; color:var(--text); margin:1.8rem 0 0.7rem; }
  .prose p { font-size:0.97rem; color:var(--muted); line-height:1.9; margin-bottom:1.1rem; }
  .prose ul { list-style:none; margin:1rem 0 1.6rem; padding:0; }
  .prose li { font-size:0.95rem; color:var(--muted); line-height:1.7; padding-left:28px; position:relative; margin-bottom:10px; }
  .prose li::before { content:''; position:absolute; left:0; top:10px; width:8px; height:8px; border-radius:50%; background:var(--blue); }
  .prose strong { color:var(--text); font-weight:600; }
  .prose a { color:var(--blue-lt); text-decoration:underline; text-underline-offset:3px; }

  /* mid-page CTA band */
  .cta-band { background:linear-gradient(135deg, rgba(194,77,40,0.07), rgba(46,125,82,0.05)), var(--bg2); border:0.5px solid var(--border-md); border-radius:18px; padding:42px 40px; text-align:center; margin:3rem auto 0; max-width:var(--max); }
  .cta-band h2 { font-family:var(--serif); font-size:1.7rem; font-weight:700; color:var(--text); margin-bottom:0.7rem; }
  .cta-band p { font-size:0.95rem; color:var(--muted); margin-bottom:1.6rem; max-width:520px; margin-left:auto; margin-right:auto; }


  /* nav mobile */
  @media (max-width:820px) {
    .nav-toggle { display:flex; }
    .nav-links { position:fixed; top:64px; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; background:var(--bg2); border-bottom:0.5px solid var(--border); padding:10px 0; max-height:0; overflow:hidden; transition:max-height .3s ease; }
    .nav-links.open { max-height:600px; }
    .nav-links > li { padding:0 2rem; }
    .nav-links > li > a { padding:13px 0; font-size:0.95rem; }
    .nav-cta { display:inline-block; margin:10px 0; text-align:center; }
    .dropdown { position:static; transform:none; opacity:1; visibility:visible; box-shadow:none; background:transparent; border:none; padding:0 0 0 14px; max-height:0; overflow:hidden; transition:max-height .25s ease; }
    .has-dropdown.open .dropdown { max-height:400px; }
    .has-dropdown:hover .dropdown { opacity:1; visibility:visible; transform:none; }
    .nav-wrap { padding:0 1.2rem; }
    .foot { gap:32px; }
    .foot-cols { gap:36px; }
  }


  /* ===== HOMEPAGE TWEAKS (multi-page) ===== */
  a.svc-card { text-decoration:none; display:block; cursor:pointer; }
  a.svc-card h3 { transition:color var(--ease); }
  a.svc-card:hover h3 { color:var(--blue-lt); }
  a.svc-card::after { content:'→'; position:absolute; top:26px; right:24px; color:var(--blue); opacity:0; transform:translateX(-4px); transition:all var(--ease); font-size:1rem; }
  a.svc-card:hover::after { opacity:1; transform:translateX(0); }

  /* ===== PHASE 2: taller dropdown + case-studies button spacing ===== */
  .dropdown { max-height:none; }
  @media (max-width:820px) {
    .has-dropdown.open .dropdown { max-height:600px; }
  }

  /* ===== EDITABLE PAGE-EXTRA CONTENT (added via WP editor) ===== */
  .page-extra { border-top:0.5px solid var(--border); padding-top:2.5rem; }
  .page-extra img { max-width:100%; height:auto; border-radius:12px; }
  .page-extra h2 { font-family:var(--serif); font-size:1.7rem; font-weight:700; color:var(--text); margin:2rem 0 1rem; }
  .page-extra h3 { font-size:1.15rem; font-weight:600; color:var(--text); margin:1.6rem 0 0.6rem; }
  .page-extra p { font-size:0.97rem; color:var(--muted); line-height:1.9; margin-bottom:1.1rem; }
  .page-extra a { color:var(--blue-lt); text-decoration:underline; text-underline-offset:3px; }
  .page-extra ul { margin:1rem 0 1.5rem; padding-left:0; list-style:none; }
  .page-extra li { font-size:0.95rem; color:var(--muted); line-height:1.7; padding-left:28px; position:relative; margin-bottom:10px; }
  .page-extra li::before { content:''; position:absolute; left:0; top:10px; width:8px; height:8px; border-radius:50%; background:var(--blue); }
  /* ===== SEO AUDIT CTA BOX (mailto + LinkedIn) ===== */
  .audit-cta-box { background:var(--bg2); border:0.5px solid var(--border-md); border-radius:18px; padding:40px 36px; margin-top:3rem; max-width:760px; }
  .audit-cta-title { font-family:var(--serif); font-size:1.5rem; font-weight:700; color:var(--text); margin-bottom:0.6rem; }
  .audit-cta-sub { font-size:0.92rem; color:var(--muted); margin-bottom:1.8rem; line-height:1.7; }
  .audit-cta-buttons { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
  @media (max-width:620px){ .audit-cta-box { padding:28px 22px; } .audit-cta-buttons { flex-direction:column; align-items:stretch; } .audit-cta-buttons a { text-align:center; } }

  /* ===== BLOG LISTING ===== */
  .blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-bottom:3rem; }
  .blog-card { background:var(--bg2); border:0.5px solid var(--border); border-radius:var(--rl); overflow:hidden; transition:border-color var(--ease), transform var(--ease); }
  .blog-card:hover { border-color:rgba(194,77,40,0.35); transform:translateY(-3px); }
  .blog-card-link { text-decoration:none; display:block; height:100%; }
  .blog-card-thumb { aspect-ratio:16/9; overflow:hidden; background:var(--bg3); }
  .blog-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
  .blog-card-thumb-empty { display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, rgba(194,77,40,0.1), rgba(46,125,82,0.06)), var(--bg3); }
  .blog-card-thumb-empty span { font-family:var(--serif); font-size:1.6rem; font-weight:700; color:rgba(194,77,40,0.4); letter-spacing:0.1em; }
  .blog-card-body { padding:22px 22px 24px; }
  .blog-card-meta { font-size:0.7rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--blue); margin-bottom:10px; font-weight:600; }
  .blog-card-title { font-family:var(--serif); font-size:1.15rem; font-weight:700; color:var(--text); line-height:1.3; margin-bottom:10px; transition:color var(--ease); }
  .blog-card:hover .blog-card-title { color:var(--blue-lt); }
  .blog-card-excerpt { font-size:0.85rem; color:var(--muted); line-height:1.65; margin-bottom:14px; }
  .blog-card-more { font-size:0.8rem; font-weight:600; color:var(--blue); }

  /* pagination */
  .blog-pagination { margin-bottom:1rem; }
  .blog-pagination .nav-links { display:flex; gap:8px; justify-content:center; align-items:center; flex-wrap:wrap; }
  .blog-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; padding:0 12px; background:var(--bg2); border:0.5px solid var(--border-md); border-radius:8px; color:var(--muted); text-decoration:none; font-size:0.85rem; transition:all var(--ease); }
  .blog-pagination .page-numbers:hover { border-color:var(--blue); color:var(--text); }
  .blog-pagination .page-numbers.current { background:var(--blue); color:#fff; border-color:var(--blue); }
  
  /* ===== SINGLE POST (clean, content-first) ===== */
  .post-single { padding-top:96px; }
  .post-head { padding:32px 1.5rem 28px; }
  .post-head-inner { max-width:740px; margin:0 auto; }
  .post-head .breadcrumb { margin-bottom:1rem; }
  .post-cat { display:inline-block; font-size:0.7rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:var(--blue); text-decoration:none; margin-bottom:1rem; }
  .post-cat:hover { color:var(--blue-lt); }
  .post-head h1 { font-family:var(--serif); font-size:clamp(2rem,4.2vw,3rem); font-weight:700; line-height:1.15; letter-spacing:-0.02em; color:var(--text); margin-bottom:1.1rem; }
  .post-byline { display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-size:0.85rem; color:var(--muted); }
  .post-author { color:var(--text); font-weight:500; }
  .post-dot { color:var(--dim); }
  .post-feature { padding:0 1.5rem; margin:0.5rem 0 1rem; }
  .post-feature-inner { max-width:860px; margin:0 auto; border-radius:14px; overflow:hidden; }
  .post-feature-inner img { width:100%; height:auto; display:block; }
  .post-wrap { max-width:1080px; margin:0 auto; padding:1.5rem 1.5rem 96px; display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:48px; align-items:start; }
  .post-main { max-width:740px; min-width:0; }
  .post-content { max-width:none; }
  .post-content > p:first-of-type { font-size:1.12rem; color:#43403a; line-height:1.85; }
  .post-content p { font-size:1.02rem; line-height:1.9; color:var(--muted); margin-bottom:1.3rem; }
  .post-content h2 { font-family:var(--serif); font-size:1.65rem; font-weight:700; color:var(--text); margin:2.6rem 0 1rem; letter-spacing:-0.01em; }
  .post-content h3 { font-size:1.22rem; font-weight:600; color:var(--text); margin:2rem 0 0.7rem; }
  .post-content img { max-width:100%; height:auto; border-radius:12px; margin:1.8rem 0; }
  .post-content ul, .post-content ol { margin:1.2rem 0 1.6rem; padding-left:1.3rem; }
  .post-content li { font-size:1.02rem; color:var(--muted); line-height:1.8; margin-bottom:8px; }
  .post-content a { color:var(--blue-lt); text-decoration:underline; text-underline-offset:3px; }
  .post-content blockquote { border-left:2px solid var(--blue); padding-left:1.4rem; margin:1.8rem 0; font-family:var(--serif); font-style:italic; font-size:1.2rem; color:var(--blue-lt); line-height:1.6; }
  .post-content code { background:var(--bg3); padding:2px 7px; border-radius:5px; font-size:0.9em; color:var(--blue-lt); }
  .post-content strong { color:var(--text); font-weight:600; }
  .post-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:2.5rem; padding-top:1.5rem; border-top:0.5px solid var(--border); }
  .post-tag { font-size:0.75rem; padding:5px 12px; background:var(--bg2); border:0.5px solid var(--border-md); border-radius:100px; color:var(--muted); text-decoration:none; }
  .post-tag:hover { border-color:var(--blue); color:var(--text); }
  .post-author-box { display:flex; gap:18px; align-items:flex-start; background:var(--bg2); border:0.5px solid var(--border); border-radius:var(--rl); padding:26px; margin-top:2.5rem; }
  .author-avatar { flex-shrink:0; width:52px; height:52px; border-radius:50%; background:linear-gradient(135deg,var(--blue),#8a2f12); display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-weight:700; color:#fff; font-size:1.05rem; }
  .author-info h2 { font-family:var(--serif); font-size:1.05rem; font-weight:700; color:var(--text); margin:0 0 6px; }
  .author-info p { font-size:0.85rem; color:var(--muted); line-height:1.7; margin-bottom:11px; }
  .author-links { display:flex; gap:15px; flex-wrap:wrap; }
  .author-links a { font-size:0.82rem; color:var(--blue); text-decoration:none; font-weight:500; }
  .author-links a:hover { color:var(--blue-lt); }
  .related-posts { margin-top:3.5rem; }
  .related-title { font-family:var(--serif); font-size:1.4rem; font-weight:700; color:var(--text); margin-bottom:1.4rem; }
  .related-posts .blog-card-body { padding:18px 20px; }

  @media (max-width:880px){ .blog-grid { grid-template-columns:1fr 1fr; } }
  @media (max-width:620px){ .blog-grid { grid-template-columns:1fr; } .post-author-box { flex-direction:column; gap:14px; } }


  /* ===== BLOG SIDEBAR + CTA CARD ===== */
  .post-sidebar { position:relative; }
  .cta-card-sticky { position:sticky; top:88px; }
  .cta-card { background:var(--bg2); border:0.5px solid var(--border-md); border-radius:var(--rl); padding:26px 24px; }
  .cta-card-eyebrow { display:block; font-size:0.68rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--blue); margin-bottom:10px; }
  .cta-card-text { font-size:0.88rem; color:var(--muted); line-height:1.7; margin-bottom:18px; }
  .cta-card-btn { display:block; text-align:center; width:100%; padding:12px 18px !important; font-size:0.85rem !important; }
  .cta-card-trust { display:block; font-size:0.72rem; color:var(--dim); margin-top:14px; text-align:center; letter-spacing:0.02em; }
  .cta-card-mobile { display:none; margin:2.5rem 0 0; }

  /* post responsive + author box heading reset */
  .post-author-box h2 { font-size:1.05rem !important; margin-top:0 !important; }
  @media (max-width:920px){
    .post-wrap { grid-template-columns:1fr; gap:0; max-width:740px; }
    .post-sidebar { display:none; }
    .cta-card-mobile { display:block; }
  }
  @media (max-width:620px){
    .post-head { padding:24px 1.2rem 22px; }
    .post-wrap { padding:1.2rem 1.2rem 64px; }
    .post-feature { padding:0 1.2rem; }
    .post-author-box { flex-direction:column; gap:14px; }
  }

  .skip-link { position:absolute; left:-9999px; top:0; background:var(--text); color:var(--bg); padding:10px 18px; border-radius:0 0 8px 0; z-index:200; font-size:0.85rem; text-decoration:none; }
  .skip-link:focus { left:0; }

  /* About photo placements */
  .about-hero-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:56px; align-items:center; }
  .about-photo-wrap { position:relative; max-width:340px; justify-self:end; }
  .about-photo { width:100%; height:auto; display:block; border-radius:14px; border:0.5px solid var(--border-md); box-shadow:0 18px 44px rgba(40,32,24,0.12); }
  .about-photo-wrap::after { content:''; position:absolute; top:14px; left:14px; right:-14px; bottom:-14px; border:1px solid rgba(194,77,40,0.3); border-radius:14px; z-index:-1; }
  .about-mini-wrap { margin-bottom:20px; }
  .about-mini-photo { width:96px; height:96px; object-fit:cover; border-radius:50%; border:2px solid var(--bg); box-shadow:0 0 0 1px var(--border-md), 0 8px 24px rgba(40,32,24,0.12); display:block; }
  @media (max-width: 860px) {
    .about-hero-grid { grid-template-columns:1fr; gap:32px; }
    .about-photo-wrap { justify-self:start; max-width:260px; }
  }

  /* Hero two-column with portrait */
  .hero-two-col { display:grid; grid-template-columns:1.6fr 1fr; gap:64px; align-items:center; }
  .hero-photo-wrap { position:relative; max-width:360px; justify-self:end; opacity:0; animation:up 0.6s ease 0.3s forwards; }
  .hero-photo { width:100%; height:auto; display:block; border-radius:16px; border:0.5px solid var(--border-md); box-shadow:0 22px 54px rgba(40,32,24,0.14); }
  .hero-photo-wrap::after { content:''; position:absolute; top:16px; left:16px; right:-16px; bottom:-16px; border:1px solid rgba(194,77,40,0.3); border-radius:16px; z-index:-1; }
  @media (max-width: 960px) {
    .hero-two-col { grid-template-columns:1fr; gap:0; }
    .hero-photo-wrap { display:none; }
  }
