/* ==========================================================================
   VIRI.GE — SEO სააგენტო ვირი
   SEO agency. Deep-red / black brand, donkey mascot.
   ========================================================================== */

:root{
  --red:#c3202b;
  --red-vivid:#e23b46;
  --red-deep:#8f1616;
  --red-dark:#5c0d0d;
  --bg:#130607;
  --bg-2:#1c0a0c;
  --bg-3:#260e11;
  --ink:#f7ece9;
  --muted:#d3aeaa;
  --muted-2:#c09b98;
  --gold:#f6b60d;
  --gold-soft:#ffd15c;
  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.14);
  --card:rgba(255,255,255,.035);
  --card-2:rgba(255,255,255,.06);
  --shadow:0 24px 60px -20px rgba(0,0,0,.7);
  --shadow-red:0 20px 50px -18px rgba(195,32,43,.5);
  --radius:18px;
  --radius-lg:26px;
  --maxw:1180px;
  --gutter:clamp(18px,4vw,40px);
  --font:"Noto Sans Georgian","Space Grotesk",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --display:"Noto Sans Georgian","Space Grotesk",system-ui,sans-serif;
}

*{box-sizing:border-box}
*::selection{background:var(--red);color:#fff}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{
  margin:0;font-family:var(--font);color:var(--ink);
  background:var(--bg);
  background-image:
    radial-gradient(1200px 700px at 85% -10%,rgba(195,32,43,.28),transparent 60%),
    radial-gradient(900px 600px at -10% 10%,rgba(143,22,22,.22),transparent 55%);
  background-attachment:fixed;
  line-height:1.6;font-size:17px;font-weight:400;overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--display);line-height:1.08;margin:0;font-weight:900;letter-spacing:-.01em}
p{margin:0}
ul{margin:0;padding:0;list-style:none}

.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:clamp(56px,9vw,110px);position:relative}
.center{text-align:center}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-soft);margin-bottom:16px;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--gold)}
.section-title{font-size:clamp(1.9rem,4.6vw,3.1rem)}
.section-lead{color:var(--muted);max-width:60ch;margin-top:16px;font-size:1.05rem}
.section-head{margin-bottom:clamp(34px,5vw,56px)}
.section-head.center{margin-inline:auto}
.section-head.center .section-lead{margin-inline:auto}
.text-gold{color:var(--gold-soft)}
.text-red{color:var(--red-vivid)}

/* ---------- Buttons ---------- */
.btn{
  --bg:var(--red);
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--display);font-weight:800;font-size:1rem;
  padding:15px 26px;border-radius:100px;border:1px solid transparent;
  cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
  white-space:nowrap;line-height:1;
}
.btn:active{transform:translateY(1px)}
.btn-primary{background:linear-gradient(180deg,var(--red-vivid),var(--red));color:#fff;box-shadow:var(--shadow-red)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 26px 55px -16px rgba(226,59,70,.6)}
.btn-gold{background:linear-gradient(180deg,var(--gold-soft),var(--gold));color:#3a2400;box-shadow:0 18px 40px -16px rgba(246,182,13,.55)}
.btn-gold:hover{transform:translateY(-2px)}
.btn-ghost{background:var(--card-2);color:var(--ink);border-color:var(--line-2)}
.btn-ghost:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.btn-lg{padding:18px 34px;font-size:1.08rem}
.btn-block{display:flex;width:100%}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:50;transition:background .3s,border-color .3s,backdrop-filter .3s}
.site-header.scrolled{background:rgba(19,6,7,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:22px;height:76px}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:900;font-size:1.32rem;letter-spacing:-.02em}
.brand img{width:42px;height:42px;border-radius:50%;box-shadow:0 0 0 1px var(--line-2),0 8px 20px -8px rgba(0,0,0,.7)}
.brand small{display:block;font-size:.62rem;font-weight:700;letter-spacing:.22em;color:var(--gold-soft);text-transform:uppercase;margin-top:2px}
.nav-links{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav-links a{padding:9px 14px;border-radius:100px;font-weight:600;font-size:.97rem;color:var(--muted);transition:color .15s,background .15s}
.nav-links a:hover,.nav-links a.active{color:var(--ink);background:var(--card-2)}
.nav-actions{display:flex;align-items:center;gap:12px}
.lang-switch{display:flex;gap:2px;background:var(--card-2);border:1px solid var(--line);border-radius:100px;padding:3px}
.lang-switch a{padding:6px 11px;border-radius:100px;font-weight:800;font-size:.8rem;color:var(--muted-2)}
.lang-switch a.active{background:var(--red);color:#fff}
.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;border-radius:12px;position:relative}
.burger span{position:absolute;left:11px;right:11px;height:2.4px;background:var(--ink);border-radius:2px;transition:.25s}
.burger span:nth-child(1){top:15px}
.burger span:nth-child(2){top:21px}
.burger span:nth-child(3){top:27px}
body.menu-open .burger span:nth-child(1){top:21px;transform:rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){top:21px;transform:rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{padding-top:clamp(30px,5vw,60px);padding-bottom:clamp(40px,6vw,80px);position:relative}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,50px);align-items:center}
.hero-badge{display:inline-flex;align-items:center;gap:9px;background:var(--card-2);border:1px solid var(--line-2);
  padding:8px 15px 8px 9px;border-radius:100px;font-size:.85rem;font-weight:700;color:var(--muted);margin-bottom:24px}
.hero-badge b{background:var(--red);color:#fff;padding:3px 9px;border-radius:100px;font-size:.72rem;letter-spacing:.04em}
.hero h1{font-size:clamp(2.5rem,6.4vw,4.6rem);letter-spacing:-.025em}
.hero h1 .hl{color:var(--red-vivid)}
.hero-sub{color:var(--muted);font-size:clamp(1.05rem,2vw,1.22rem);margin-top:22px;max-width:52ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-trust{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px;color:var(--muted-2);font-size:.9rem;font-weight:600}
.hero-trust span{display:inline-flex;align-items:center;gap:7px}
.hero-trust b{color:var(--gold-soft)}
.hero-art{position:relative}
.hero-art img{width:100%;border-radius:var(--radius-lg);filter:drop-shadow(0 40px 60px rgba(0,0,0,.55));-webkit-mask-image:radial-gradient(125% 125% at 50% 42%,#000 68%,transparent 100%);mask-image:radial-gradient(125% 125% at 50% 42%,#000 68%,transparent 100%)}
.hero-art .glow{position:absolute;inset:8% 6%;background:radial-gradient(circle,rgba(195,32,43,.5),transparent 65%);filter:blur(40px);z-index:-1}
.hero-float{position:absolute;background:rgba(19,6,7,.85);backdrop-filter:blur(8px);border:1px solid var(--line-2);
  border-radius:14px;padding:11px 15px;font-weight:800;font-size:.86rem;box-shadow:var(--shadow);display:flex;align-items:center;gap:9px}
.hero-float .em{font-size:1.2rem}
.hero-float.f1{top:12%;left:-6%}
.hero-float.f2{bottom:16%;right:-4%}
.hero-float small{display:block;font-size:.72rem;color:var(--muted-2);font-weight:600}

/* ---------- Ticker ---------- */
.ticker{border-block:1px solid var(--line);background:rgba(0,0,0,.25);overflow:hidden;padding-block:14px}
.ticker-track{display:flex;gap:44px;white-space:nowrap;width:max-content;animation:scroll 32s linear infinite;font-weight:800;color:var(--muted);letter-spacing:.02em}
.ticker-track span{display:inline-flex;align-items:center;gap:12px}
.ticker-track span::after{content:"🫏";font-size:1rem}
@keyframes scroll{to{transform:translateX(-50%)}}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px;text-align:center}
.stat .num{font-family:var(--display);font-weight:900;font-size:clamp(2rem,4vw,2.9rem);color:var(--gold-soft);letter-spacing:-.02em}
.stat .lab{color:var(--muted);font-size:.92rem;margin-top:6px;font-weight:600}

/* ---------- Cards / Services ---------- */
.grid{display:grid;gap:20px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px;transition:transform .18s,border-color .18s,background .18s;position:relative;overflow:hidden}
.card:hover{transform:translateY(-4px);border-color:var(--line-2);background:var(--card-2)}
.card-icon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font-size:1.7rem;
  background:linear-gradient(160deg,rgba(226,59,70,.28),rgba(143,22,22,.18));border:1px solid var(--line-2);margin-bottom:18px}
.card h3{font-size:1.28rem;margin-bottom:10px}
.card p{color:var(--muted);font-size:.98rem}
.card .card-tag{position:absolute;top:18px;right:18px;font-size:.7rem;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;color:var(--gold-soft);background:rgba(246,182,13,.1);border:1px solid rgba(246,182,13,.28);padding:4px 9px;border-radius:100px}

/* ---------- Split feature ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,60px);align-items:center}
.split.rev .split-art{order:-1}
.split-art img{border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow)}
.feature-list{margin-top:26px;display:grid;gap:14px}
.feature-list li{display:flex;gap:13px;align-items:flex-start;color:var(--muted)}
.feature-list .ck{flex:none;width:26px;height:26px;border-radius:8px;background:rgba(246,182,13,.14);
  border:1px solid rgba(246,182,13,.3);color:var(--gold-soft);display:grid;place-items:center;font-weight:900;font-size:.9rem}
.feature-list b{color:var(--ink);font-weight:800}

/* ---------- Comparison ---------- */
.compare{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--card)}
.compare-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;align-items:center}
.compare-row+.compare-row{border-top:1px solid var(--line)}
.compare-row>div{padding:18px 22px}
.compare-row.head>div{font-family:var(--display);font-weight:900;font-size:1.02rem}
.compare-row.head{background:rgba(0,0,0,.28)}
.compare .us{background:rgba(195,32,43,.1);color:var(--ink);font-weight:700}
.compare .them{color:var(--muted-2)}
.compare .col-label{color:var(--muted);font-weight:600}
.compare .us b{color:var(--gold-soft)}
.compare-row.head .us{color:var(--red-vivid)}

/* ---------- Steps ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px;position:relative}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);font-family:var(--display);font-weight:900;
  font-size:2.4rem;color:rgba(226,59,70,.35);line-height:1}
.step h3{font-size:1.14rem;margin:12px 0 8px}
.step p{color:var(--muted);font-size:.93rem}

/* ---------- Pricing ---------- */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.price-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px;position:relative;display:flex;flex-direction:column}
.price-card>.btn{margin-top:auto}
.price-card.feat{border-color:rgba(246,182,13,.4);background:linear-gradient(180deg,rgba(246,182,13,.06),var(--card));box-shadow:var(--shadow-red)}
.price-card .tier{font-family:var(--display);font-weight:900;font-size:1.3rem}
.price-card .tier .em{margin-right:8px}
.price-card{container-type:inline-size}
.price-card .price{margin:16px 0 4px;font-family:var(--display);font-weight:900;font-size:clamp(1.75rem,13.5cqi,2.7rem);line-height:1.15;letter-spacing:-.02em;white-space:nowrap}
.price-card .price .from{margin-right:.3em}
.price-card .price small{font-size:1rem;color:var(--muted-2);font-weight:700}
.price-card .price-note{color:var(--muted-2);font-size:.86rem;margin-bottom:22px}
.price-card ul{display:grid;gap:12px;margin:22px 0 26px}
.price-card ul li{display:flex;gap:11px;color:var(--muted);font-size:.95rem}
.price-card ul li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;background:url(../images/logo.webp) center/contain no-repeat;opacity:.9}
.price-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(180deg,var(--gold-soft),var(--gold));
  color:#3a2400;font-weight:900;font-size:.76rem;letter-spacing:.06em;padding:6px 16px;border-radius:100px;text-transform:uppercase}

/* ---------- Cases ---------- */
.case-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;transition:transform .18s,border-color .18s}
.case-card:hover{transform:translateY(-4px);border-color:var(--line-2)}
.case-card .thumb{aspect-ratio:16/10;background:var(--bg-3);overflow:hidden}
.case-card .thumb img{width:100%;height:100%;object-fit:cover}
.case-body{padding:26px}
.case-body .kicker{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-soft)}
.case-body h3{font-size:1.24rem;margin:10px 0 14px}
.case-metrics{display:flex;gap:22px;flex-wrap:wrap;margin-top:16px;padding-top:18px;border-top:1px solid var(--line)}
.case-metrics .m .v{font-family:var(--display);font-weight:900;font-size:1.5rem;color:var(--red-vivid)}
.case-metrics .m .k{font-size:.8rem;color:var(--muted-2)}

/* ---------- Reviews ---------- */
.review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px}
.review .stars{color:var(--gold);letter-spacing:2px;margin-bottom:14px}
.review p{color:var(--ink);font-size:1.02rem}
.review .who{display:flex;align-items:center;gap:12px;margin-top:20px}
.review .av{width:44px;height:44px;border-radius:50%;background:linear-gradient(160deg,var(--red),var(--red-dark));display:grid;place-items:center;font-weight:900;color:#fff}
.review .who b{display:block}
.review .who small{color:var(--muted-2)}

/* ---------- FAQ ---------- */
.faq{max-width:820px;margin-inline:auto;display:grid;gap:12px}
.faq-item{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;
  background:none;border:0;color:var(--ink);font-family:var(--display);font-weight:800;font-size:1.06rem;padding:20px 24px;cursor:pointer}
.faq-q .ic{flex:none;width:28px;height:28px;border-radius:8px;background:var(--card-2);display:grid;place-items:center;transition:.2s;font-weight:900}
.faq-item.open .faq-q .ic{transform:rotate(45deg);background:var(--red);color:#fff}
.faq-a{overflow:hidden;transition:max-height .3s ease}
.js .faq-a{max-height:0}
.faq-a p{color:var(--muted);padding:0 24px 22px}

/* ---------- CTA band ---------- */
.cta-band{background:linear-gradient(120deg,var(--red-dark),var(--red-deep));border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius-lg);padding:clamp(34px,5vw,60px);text-align:center;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.cta-band::after{content:"";position:absolute;right:-24px;bottom:-42px;width:236px;height:236px;background:url(../images/logo.webp) center/contain no-repeat;opacity:.14;transform:rotate(-12deg)}
.cta-band h2{font-size:clamp(1.7rem,4vw,2.7rem);position:relative}
.cta-band p{color:rgba(255,255,255,.82);margin-top:14px;max-width:52ch;margin-inline:auto;position:relative}
.cta-band .hero-cta{justify-content:center;position:relative}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--line);background:rgba(0,0,0,.3);padding-block:60px 30px;margin-top:20px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}
.foot-brand p{color:var(--muted);margin-top:16px;max-width:34ch;font-size:.95rem}
.foot-brand .foot-tagline{margin-top:18px;margin-bottom:0;font-family:var(--display);font-weight:900;font-size:1.24rem;letter-spacing:-.01em;color:var(--gold-soft)}
.foot-brand .foot-tagline + p{margin-top:6px}
.foot-col h4{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:16px}
.foot-col a{display:flex;align-items:center;min-height:40px;color:var(--muted);padding:6px 0;font-size:.96rem;transition:color .15s}
.foot-col a:hover{color:var(--ink)}
.socials{display:flex;gap:10px;margin-top:18px}
.socials a{width:40px;height:40px;border-radius:11px;background:var(--card-2);border:1px solid var(--line);display:grid;place-items:center;transition:.15s}
.socials a:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}
.socials svg{width:19px;height:19px;fill:currentColor}
.foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;align-items:center;
  margin-top:44px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted-2);font-size:.86rem}
.foot-bottom .disc{max-width:70ch}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px;overflow-y:auto;overscroll-behavior:contain}
.modal.open{display:flex}
.modal-ov{position:fixed;inset:0;background:rgba(5,2,2,.72);backdrop-filter:blur(5px)}
.modal-box{position:relative;width:100%;max-width:520px;margin:auto;background:var(--bg-2);border:1px solid var(--line-2);
  border-radius:var(--radius-lg);padding:38px 34px;box-shadow:var(--shadow);animation:pop .25s ease}
@keyframes pop{from{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.modal-box .close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:10px;background:var(--card-2);
  border:1px solid var(--line);color:var(--ink);cursor:pointer;font-size:1.1rem}
.modal-box .m-mascot{width:82px;height:82px;border-radius:50%;margin:0 auto 16px;display:block;box-shadow:0 0 0 1px var(--line-2)}
.modal-box h3{font-size:1.5rem;text-align:center}
.modal-box .m-body{color:var(--muted);text-align:center;margin-top:12px}
.modal-box .m-result{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin:20px 0;font-size:.95rem}
.modal-box .m-result .row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line)}
.modal-box .m-result .row:last-child{border:0}
.modal-box .m-result .row b{color:var(--gold-soft);text-align:right}
.modal-box .m-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px}

/* ---------- Page hero (subpages) ---------- */
.page-hero{padding-block:clamp(50px,7vw,90px) clamp(30px,4vw,50px);text-align:center;position:relative}
.page-hero .eyebrow{justify-content:center}
.page-hero h1{font-size:clamp(2.3rem,5.5vw,3.8rem)}
.page-hero p{color:var(--muted);max-width:58ch;margin:18px auto 0;font-size:1.1rem}
.breadcrumb{color:var(--muted-2);font-size:.85rem;margin-bottom:18px}
.breadcrumb a:hover{color:var(--ink)}

/* ---------- Reveal animation (progressive enhancement: hidden only when JS is active) ---------- */
.reveal{transition:opacity .6s ease,transform .6s ease}
.js .reveal{opacity:0;transform:translateY(24px)}
.reveal.in{opacity:1;transform:none}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,50px);align-items:start}
#contactForm{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(22px,3vw,32px)}
.field{margin-bottom:18px}
.field label{display:block;font-weight:700;font-size:.9rem;margin-bottom:8px}
.field input,.field textarea,.field select{width:100%;background:var(--bg-3);border:1px solid var(--line-2);border-radius:12px;
  padding:14px 16px;color:var(--ink);font-family:var(--font);font-size:1rem;transition:border-color .15s}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--red-vivid)}
.field textarea{min-height:130px;resize:vertical}
.info-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px}
.info-row{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);align-items:flex-start}
.info-row:last-child{border:0}
.info-row .ic{flex:none;width:44px;height:44px;border-radius:12px;background:var(--card-2);display:grid;place-items:center;font-size:1.3rem}
.info-row b{display:block;font-size:.8rem;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em}
.info-row a,.info-row span{color:var(--ink);font-weight:700;font-size:1.05rem}

/* ---------- Blog / Article ---------- */
.article{max-width:800px;margin-inline:auto}
.post-meta{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;color:var(--muted-2);font-size:.9rem;font-weight:600;margin-top:18px}
.article h2{font-size:clamp(1.4rem,3vw,1.85rem);margin:46px 0 14px;line-height:1.2}
.article h3{font-size:1.15rem;margin:30px 0 10px}
.article p{color:var(--muted);margin:0 0 16px;font-size:1.04rem;line-height:1.75}
.article p b,.article li b{color:var(--ink)}
.article ul,.article ol{margin:0 0 18px;padding-left:24px;color:var(--muted);line-height:1.7}
.article ul{list-style:disc}
.article ol{list-style:decimal}
.article li{margin-bottom:10px}
.article a{color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}
.article a:hover{color:var(--gold)}
.article blockquote{border-left:3px solid var(--red);margin:26px 0;padding:14px 20px;background:var(--card);border-radius:0 14px 14px 0;color:var(--ink);font-weight:600}
.article .callout{background:var(--card);border:1px solid rgba(246,182,13,.3);border-radius:16px;padding:20px 22px;margin:28px 0;color:var(--muted)}
.blog-list a.card{display:block;color:inherit}
.blog-list .card .bmeta{color:var(--muted-2);font-size:.84rem;font-weight:600;margin-bottom:10px}
.blog-list .card h3{font-size:1.22rem}
.blog-list .card .bmore{margin-top:14px;color:var(--gold-soft);font-weight:800;font-size:.95rem}

/* ---------- Helpers ---------- */
.mt-0{margin-top:0}.mono{font-variant-numeric:tabular-nums}
.divider{height:1px;background:var(--line);border:0;margin:0}

/* ---------- Responsive ---------- */
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;text-align:center}
  .hero-art{max-width:360px;margin:8px auto 0;order:0}
  .hero-badge,.hero-cta,.hero-trust{justify-content:center}
  .hero-sub{margin-inline:auto}
  .hero-float{display:none}
  .grid-3,.pricing,.steps{grid-template-columns:1fr 1fr}
  .stats{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr}
  .split.rev .split-art{order:0}
  .foot-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
}
/* burger nav up to 1259px: the 7-item Georgian inline menu needs ~1160px */
@media(max-width:1259px){
  .nav-links{position:fixed;inset:76px 0 auto 0;flex-direction:column;background:rgba(19,6,7,.97);backdrop-filter:blur(16px);
    gap:2px;padding:18px var(--gutter) 26px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:transform .3s ease;margin:0;align-items:stretch}
  body.menu-open .nav-links{transform:none;visibility:visible;transition:transform .3s ease}
  .nav-links{visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s}
  .nav-links a{display:block;padding:14px 16px;font-size:1.06rem}
  .burger{display:block}
  .nav-links{margin-left:0}
  .nav-actions{margin-left:auto}
}
@media(min-width:1260px){
  .site-header .container{max-width:1280px}
  .nav{gap:14px}
  .nav-links a,.brand,.brand small{white-space:nowrap}
  .brand{flex:none}
  .nav-links{gap:0}
  .nav-links a{padding:9px 8px;font-size:.93rem}
  .nav-cta{padding-inline:18px}
  .lang-switch a{padding:6px 9px}
}
@media(max-width:760px){
  .nav-cta{display:none}
}
@media(max-width:560px){
  .grid-3,.grid-2,.pricing,.steps,.stats,.compare-row{grid-template-columns:1fr}
  .compare-row{grid-template-columns:1fr}
  .compare-row>div{border-top:1px solid var(--line)}
  .compare-row.head{display:none}
  .compare .them::before{content:"ისინი: ";color:var(--muted-2);font-weight:700}
  .compare .us::before{content:"ვირი: ";color:var(--red-vivid);font-weight:700}
  .foot-grid{grid-template-columns:1fr}
  .foot-bottom{flex-direction:column;align-items:flex-start}
  .cta-band::after{width:150px;height:150px;right:-28px;bottom:-28px;opacity:.1}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}html{scroll-behavior:auto}}

/* ---------- Agency comparison (/seo-saagentoebi/) ---------- */
/* Comparison table — editorial type on a framed card.
   >1000px: real 5-column table, four equal agency columns.
   <=1000px: the SAME table restacked per agency with CSS grid (thead/tbody/tr → display:contents,
   cells regrouped by column index via `order`); explicit ARIA roles in the markup keep table semantics.
   Equal styling: no rule targets a single agency column. */
.cmp-wrap{
  --cmp-label:rgba(255,209,92,.8);
  --cmp-rule:rgba(255,255,255,.075);
  --cmp-rule-head:rgba(246,182,13,.34);
  --cmp-surface:#1b0a0c;
  --cmp-lab-w:clamp(140px,13.5vw,188px);
  --cmp-px:clamp(12px,1.4vw,20px);
  --cmp-py:clamp(16px,1.8vw,22px);
  position:relative;isolation:isolate;
  background:var(--cmp-surface);border:1px solid var(--line-2);border-radius:var(--radius-lg);
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.05);
  padding:0 clamp(18px,2.6vw,34px) clamp(8px,1vw,14px);
}
.cmp-wrap::before{content:"";position:absolute;top:0;left:var(--radius-lg);right:var(--radius-lg);height:1px;pointer-events:none;
  background:linear-gradient(90deg,rgba(246,182,13,0),rgba(246,182,13,.55) 6%,rgba(246,182,13,.55) 94%,rgba(246,182,13,0))}
.cmp-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;
  margin:0 calc(-1 * clamp(18px,2.6vw,34px)) clamp(22px,2.6vw,30px);padding:13px clamp(18px,2.6vw,34px);
  border-bottom:1px solid var(--cmp-rule);border-radius:var(--radius-lg) var(--radius-lg) 0 0;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0));
  font-size:.8rem;font-weight:700;line-height:1.3;color:var(--muted-2)}
.cmp-bar span:first-child{display:inline-flex;align-items:center;gap:10px}
.cmp-bar span:first-child::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(246,182,13,.16)}
.cmp-bar time{font-variant-numeric:tabular-nums}
.cmp{position:relative;width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;
  font-family:var(--font);font-size:1.03rem;line-height:1.55;color:var(--ink);font-variant-numeric:tabular-nums lining-nums}
.cmp th,.cmp td{padding:var(--cmp-py) var(--cmp-px);text-align:left;vertical-align:top;border:0;background:none;font-weight:400}
.cmp thead th{vertical-align:bottom;padding-top:0;padding-bottom:20px;font-family:var(--display);font-size:1rem}
.cmp-wrap .cmp thead th{border-bottom:1px solid var(--cmp-rule-head)}
.cmp thead th:first-child{width:var(--cmp-lab-w);padding-left:0;font-family:var(--font);font-size:.8rem;font-weight:700;letter-spacing:.04em;color:var(--muted-2)}
.cmp thead th + th::before{content:"";display:block;width:28px;height:2px;border-radius:2px;background:var(--gold);margin-bottom:16px}
.cmp thead th a{display:inline-block;color:var(--ink);text-decoration:none;font-family:var(--display);font-weight:900;
  font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.1;letter-spacing:-.015em}
.cmp thead th a::after{content:"→";content:"→" / "";display:inline-block;margin-left:.4em;font-size:.58em;font-weight:700;vertical-align:.22em;color:var(--muted-2);opacity:.6}
.cmp thead th a:hover{color:var(--gold-soft)}
.cmp thead th a:hover::after{color:var(--gold-soft);opacity:1;transform:translateX(3px)}
.cmp thead th a:focus-visible{outline:2px solid var(--gold);outline-offset:5px;border-radius:4px}
.cmp thead th small{display:block;margin-top:7px;font-family:var(--font);font-size:.82rem;font-weight:600;line-height:1.3;letter-spacing:.02em;color:var(--gold-soft);opacity:.85;overflow-wrap:anywhere}
.cmp tbody th,.cmp tbody td{border-bottom:1px solid var(--cmp-rule)}
.cmp tbody tr:last-child > *{border-bottom:0}
.cmp tbody th{width:var(--cmp-lab-w);padding-left:0;padding-top:calc(var(--cmp-py) + 3px);
  font-family:var(--font);font-size:.82rem;font-weight:700;line-height:1.45;letter-spacing:.04em;color:var(--cmp-label)}
.cmp td{overflow-wrap:break-word;text-wrap:pretty}
.cmp-l{display:block}
.cmp-l + .cmp-l{margin-top:4px}
.cmp-q{font-size:.84em;color:var(--muted-2)}
.cmp-nb{white-space:nowrap}
.cmp-amt{font-family:var(--display);font-weight:800;font-size:1.1em;letter-spacing:-.01em;color:var(--ink)}
.cmp-sep{display:inline-block;width:0;height:0;overflow:hidden;clip-path:inset(50%);vertical-align:top}
.cmp-rate{display:block;font-family:var(--display);font-weight:800;font-size:clamp(1.45rem,2.1vw,1.85rem);line-height:1;letter-spacing:-.02em;color:var(--ink);white-space:nowrap}
.cmp-count{display:block;margin-top:7px;font-size:.8rem;font-weight:600;line-height:1.35;color:var(--muted-2)}
.cmp-r-langs .cmp-q{display:inline-block;white-space:nowrap}
.cmp-pill{display:inline-block;margin:2px 4px 2px 0;padding:3px 11px;border:1px solid var(--line-2);border-radius:999px;background:rgba(255,255,255,.035);font-size:.84rem;font-weight:600;line-height:1.5;color:var(--ink)}
.cmp-note{margin:20px auto 0;max-width:64ch;color:var(--muted-2);font-size:.86rem;line-height:1.55;text-align:center}
@media (hover:hover) and (min-width:1001px){
  .cmp tbody tr:hover > th{color:var(--gold-soft)}
  .cmp tbody tr:hover > *{background:rgba(255,255,255,.018)}
}
@media (prefers-reduced-motion:no-preference){
  .cmp thead th a,.cmp thead th a::after,.cmp tbody th,.cmp tbody td{transition:color .18s ease,background-color .18s ease,opacity .18s ease,transform .18s ease}
}
/* <=1000px: restack per agency; each agency becomes its own framed block */
@media (max-width:1000px){
  .cmp-wrap{background:none;border:0;box-shadow:none;padding:0}
  .cmp-wrap::before{display:none}
  .cmp-bar{margin:0 0 18px;border:1px solid var(--line-2);border-radius:14px}
  .cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(18,auto);
    grid-auto-flow:column;column-gap:clamp(16px,3vw,28px);font-size:1rem}
  .cmp thead,.cmp tbody,.cmp tr{display:contents}
  .cmp thead th:first-child,.cmp tbody th{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .cmp :is(th,td):nth-child(2){order:1}
  .cmp :is(th,td):nth-child(4){order:2}
  .cmp :is(th,td):nth-child(3){order:3}
  .cmp :is(th,td):nth-child(5){order:4}
  .cmp thead th:not(:first-child),.cmp td{background:var(--cmp-surface);border-left:1px solid var(--line-2);border-right:1px solid var(--line-2)}
  .cmp-wrap .cmp thead th:not(:first-child){display:block;padding:20px 18px 16px;vertical-align:initial;border-top:1px solid var(--line-2);
    border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:inset 0 1px 0 rgba(246,182,13,.45)}
  .cmp thead th:nth-child(4),.cmp thead th:nth-child(5){margin-top:22px}
  .cmp thead th + th::before{margin-bottom:12px}
  .cmp thead th a{font-size:1.45rem}
  .cmp td{display:flow-root;padding:12px 18px 12px calc(7.8rem + 18px)}
  .cmp td::before{content:attr(data-label);content:attr(data-label) / "";float:left;width:7.2rem;margin-left:-7.8rem;padding-top:3px;overflow-wrap:normal;
    font-size:.76rem;font-weight:700;line-height:1.4;letter-spacing:.03em;color:var(--cmp-label)}
  .cmp tbody tr:last-child td{border-bottom:1px solid var(--line-2);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding-bottom:18px}
  .cmp-rate{display:inline;font-size:1.4rem}
  .cmp-count{display:inline;margin:0 0 0 8px}
}
@media (max-width:760px){
  .cmp{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-flow:row}
  .cmp :is(th,td):nth-child(3){order:2}
  .cmp :is(th,td):nth-child(4){order:3}
  .cmp thead th:nth-child(n+3){margin-top:18px}
}
/* phones: label above value, so neither labels nor values break mid-word */
@media (max-width:480px){
  .cmp td{padding:12px 18px}
  .cmp td::before{float:none;display:block;width:auto;margin:0 0 3px;padding-top:0}
  .cmp-bar{flex-direction:column;align-items:flex-start}
  .cmp-bar span:last-child{padding-left:16px}
}
@media (max-width:360px){
  .cmp td,.cmp-wrap .cmp thead th:not(:first-child){padding-inline:14px}
}
.agency-cards a.card{display:block;color:inherit}
.agency-cards .card .dom{color:var(--muted-2);font-size:.88rem;font-weight:600;margin:-4px 0 10px}
.agency-cards .card .bmore{margin-top:14px;color:var(--gold-soft);font-weight:800;font-size:.95rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- Agency profile pages (/seo-saagentoebi/<agency>.html), "dossier" layout ----------
   Generated by scripts/build_compare.py (build_agency). Every rule is scoped to main.profile and no rule
   targets a single agency: all four profiles share one structure and one style.
   >=1024px: sticky "მოკლედ" facts card + CTA on the left, numbered sections on the right.
   <1024px: facts card directly under the header band; the CTA band at the bottom replaces the sidebar CTA. */
main.profile{
  --pf-surface:#1a0a0c;
  --pf-surface-2:#211012;
  --pf-rule:rgba(255,255,255,.075);
  --pf-rule-2:rgba(255,255,255,.14);
  --pf-label:#e6c47a;
  --pf-r:14px;
  --pf-top:92px;
  overflow-wrap:break-word;word-break:normal;hyphens:manual;
}
main.profile .pf-ic{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
main.profile :is(a,button):focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px;border-radius:4px}
main.profile .btn:focus-visible{border-radius:100px}
main.profile .pf-nw{white-space:nowrap}
main.profile .pf-nb{white-space:nowrap;font-variant-numeric:tabular-nums}
main.profile .pf-q{font-size:.86em;font-weight:600;color:var(--muted-2)}
main.profile .pf-sep{display:inline-block;width:0;height:0;overflow:hidden;clip-path:inset(50%);vertical-align:top}

/* header band */
main.profile .pf-head{padding-block:clamp(34px,5.5vw,68px) clamp(26px,3.6vw,40px);border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,0) 75%)}
main.profile .pf-head .breadcrumb{margin-bottom:22px}
main.profile .pf-head .breadcrumb a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.25);text-underline-offset:3px}
main.profile .pf-head .eyebrow{margin-bottom:14px}
main.profile .pf-head h1{margin:0;line-height:1.04}
main.profile .pf-name{display:block;font-size:clamp(2.25rem,5.6vw,4.1rem);letter-spacing:-.025em;color:var(--ink)}
main.profile .pf-title{display:block;max-width:40ch;margin-top:.5em;font-size:clamp(1.12rem,2.1vw,1.5rem);font-weight:700;letter-spacing:0;line-height:1.3;color:var(--muted)}
main.profile .pf-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
main.profile .pf-tags li{display:inline-flex;align-items:center;gap:7px;padding:6px 13px 6px 11px;border:1px solid var(--pf-rule-2);border-radius:999px;
  background:rgba(255,255,255,.04);font-size:.86rem;font-weight:700;line-height:1.3;color:var(--ink)}
main.profile .pf-tags .pf-ic{width:15px;height:15px;color:var(--gold-soft)}
main.profile .pf-lede{margin-top:22px;max-width:68ch;color:var(--muted);font-size:clamp(1rem,1.5vw,1.08rem);line-height:1.75;text-wrap:pretty}
main.profile .pf-meta{justify-content:flex-start;gap:6px 20px;margin-top:16px;font-size:.84rem}
main.profile .pf-meta > span{display:inline}
main.profile .pf-meta > span::before{content:"";display:inline-block;vertical-align:.18em;width:5px;height:5px;border-radius:50%;background:var(--gold);opacity:.75;margin-right:8px}
main.profile .pf-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
main.profile .pf-stats li{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:2px 9px;max-width:100%;padding:9px 15px;border:1px solid var(--pf-rule-2);
  border-radius:10px;background:var(--pf-surface)}
main.profile .pf-stat-k{font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--muted-2)}
main.profile .pf-stat-v{min-width:0;font-size:.98rem;font-weight:800;line-height:1.4;color:var(--ink);font-variant-numeric:tabular-nums}
main.profile .pf-stat-v.pf-na{font-weight:600;color:var(--muted)}

/* layout + cards */
main.profile .pf-body{padding-block:clamp(30px,4.5vw,52px) clamp(56px,8vw,96px)}
main.profile .pf-side{margin-bottom:clamp(36px,6vw,52px)}
main.profile .pf-card{background:var(--pf-surface);border:1px solid var(--pf-rule-2);border-radius:16px;padding:18px 20px 6px;position:relative;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
main.profile .pf-card::before{content:"";position:absolute;top:-1px;left:16px;right:16px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,rgba(246,182,13,0),rgba(246,182,13,.55) 12%,rgba(246,182,13,.55) 88%,rgba(246,182,13,0))}
main.profile .pf-card > h2{font-size:.84rem;font-weight:800;letter-spacing:.1em;color:var(--gold-soft);line-height:1.3;
  padding-bottom:12px;border-bottom:1px solid var(--line)}

/* facts card */
main.profile .pf-facts{margin:0}
main.profile .pf-fact{padding:11px 0;border-bottom:1px solid var(--pf-rule)}
main.profile .pf-fact:last-child{border-bottom:0}
main.profile .pf-fact dt{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;letter-spacing:.03em;line-height:1.35;color:var(--pf-label)}
main.profile .pf-fact dt .pf-ic{width:15px;height:15px;opacity:.9}
main.profile .pf-fact dd{margin:4px 0 0 23px;font-size:.93rem;line-height:1.5;color:var(--ink);min-width:0}
main.profile .pf-v{font-weight:700}
main.profile .pf-n{display:block;margin-top:3px;font-size:.82rem;line-height:1.5;color:var(--muted-2)}
main.profile .pf-fact a,main.profile .pf-main p a,main.profile .pf-method a,main.profile .pf-src a{color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
main.profile .pf-fact a:hover,main.profile .pf-main p a:hover,main.profile .pf-method a:hover,main.profile .pf-src a:hover{color:var(--gold)}

/* sidebar CTA (>=1024px) and bottom CTA band (<1024px) */
main.profile .pf-side-cta{display:none;padding:18px 20px 20px;background:linear-gradient(160deg,rgba(143,22,22,.5),rgba(92,13,13,.42));border-color:rgba(255,255,255,.13)}
main.profile .pf-side-cta::before{display:none}
main.profile .pf-side-cta h2{font-size:1.06rem;line-height:1.3;letter-spacing:-.005em;color:var(--ink)}
main.profile .pf-side-cta p{margin-top:6px;font-size:.88rem;line-height:1.5;color:rgba(255,255,255,.84)}
main.profile .pf-cta-btns{display:grid;gap:8px;margin-top:14px}
main.profile .pf-cta-btns .btn{padding:12px 16px;font-size:.93rem}

/* main column: numbered sections */
main.profile .pf-main{counter-reset:pfsec;min-width:0}
main.profile .pf-sec{margin-top:clamp(40px,5vw,56px)}
main.profile .pf-sec:first-child{margin-top:0}
main.profile .pf-sec > h2{counter-increment:pfsec;font-size:clamp(1.3rem,2.4vw,1.62rem);line-height:1.25;
  padding-bottom:12px;margin-bottom:18px;border-bottom:1px solid var(--line);text-wrap:balance}
main.profile .pf-sec > h2::before{content:counter(pfsec,decimal-leading-zero);display:inline-block;margin-right:12px;vertical-align:.18em;font-family:"Space Grotesk",var(--font);font-size:.8rem;
  font-weight:700;letter-spacing:.06em;color:var(--gold)}
main.profile .pf-main p{margin:0 0 14px;max-width:72ch;color:var(--muted);font-size:1.02rem;line-height:1.75;text-wrap:pretty}
main.profile .pf-main p b{color:var(--ink)}
main.profile .pf-main p.pf-foot{font-size:.88rem;line-height:1.6;color:var(--muted-2);margin-top:10px}

/* services */
main.profile .pf-services{display:grid;grid-template-columns:1fr;column-gap:28px}
main.profile .pf-services li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid var(--pf-rule);
  color:var(--ink);font-size:.98rem;line-height:1.55}
main.profile .pf-services li::before{content:"";position:absolute;left:3px;top:calc(12px + .62em);width:7px;height:7px;border:1.5px solid var(--gold-soft);transform:rotate(45deg);border-radius:1px}

/* tiles (reviews, contact) */
main.profile .pf-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:10px;margin:0}
main.profile .pf-tile{padding:15px 18px 16px;border:1px solid var(--pf-rule-2);border-radius:var(--pf-r);background:var(--pf-surface);min-width:0}
main.profile .pf-tile dt{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;letter-spacing:.03em;color:var(--pf-label)}
main.profile .pf-tile dt .pf-ic{width:15px;height:15px}
main.profile .pf-tile dd{margin:7px 0 0;font-size:1rem;font-weight:700;line-height:1.45;color:var(--ink)}
main.profile .pf-tile dd.pf-na{font-weight:600;color:var(--muted)}
main.profile .pf-tiles-2{grid-template-columns:repeat(2,minmax(0,1fr))}
main.profile .pf-tiles-2 dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
main.profile .pf-big{font-family:"Space Grotesk",var(--font);font-size:1.75rem;font-weight:700;line-height:1.1;letter-spacing:-.01em}
main.profile .pf-cnt{font-size:.88rem;font-weight:600;color:var(--muted-2)}
main.profile .pf-more{flex-basis:100%;display:block;margin-top:2px;font-size:.84rem;font-weight:600;line-height:1.5;color:var(--muted-2)}

/* links to the other profiles */
main.profile .pf-peers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;margin-top:18px}
main.profile .pf-peers li{position:relative;padding:15px 42px 16px 18px;border:1px solid var(--pf-rule-2);border-radius:var(--pf-r);background:var(--pf-surface);
  font-weight:800;line-height:1.35;color:var(--ink)}
main.profile .pf-peers li::after{content:"";position:absolute;top:18px;right:16px;width:14px;height:14px;opacity:.8;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffd15c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
main.profile .pf-peers a{color:var(--ink)}
main.profile .pf-peers a::after{content:"";position:absolute;inset:0;border-radius:var(--pf-r)}
main.profile .pf-peers a:focus-visible{outline:none}
main.profile .pf-peers a:focus-visible::after{outline:2px solid var(--gold-soft);outline-offset:2px}
main.profile .pf-peer-p{display:block;margin-top:5px;font-size:.9rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
main.profile .pf-peers li:hover{border-color:rgba(246,182,13,.42);background:var(--pf-surface-2)}
main.profile .pf-peers li:hover a{color:var(--gold-soft)}

/* FAQ (site component, fitted to the column) */
main.profile .faq{max-width:none;margin:0;gap:10px}
main.profile .faq-item{background:var(--pf-surface);border-color:var(--pf-rule-2);border-radius:var(--pf-r)}
main.profile .faq-q{font-size:1rem;line-height:1.4;padding:17px 20px}
main.profile .faq-q:focus-visible{outline-offset:-3px;border-radius:var(--pf-r)}
main.profile .pf-qt{min-width:0}
main.profile .faq-a p{margin:0;max-width:none;padding:0 20px 18px;font-size:.98rem;line-height:1.7}

/* sources + method note */
main.profile .pf-src{counter-reset:pfsrc;list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:.9rem;line-height:1.55;color:var(--muted)}
main.profile .pf-src li{counter-increment:pfsrc;position:relative;padding-left:36px}
main.profile .pf-src li::before{content:counter(pfsrc);position:absolute;left:0;top:-1px;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;
  border:1px solid var(--pf-rule-2);font-family:"Space Grotesk",var(--font);font-size:.74rem;font-weight:700;color:var(--gold-soft);font-variant-numeric:tabular-nums}
main.profile .pf-src a{overflow-wrap:anywhere}
main.profile .pf-method{margin-top:24px;padding:18px 20px 18px 22px;border:1px solid rgba(246,182,13,.3);border-left-width:3px;border-radius:var(--pf-r);
  background:var(--pf-surface);color:var(--muted);font-size:.92rem;line-height:1.7}

@media (prefers-reduced-motion:no-preference){
  main.profile .pf-peers li,main.profile .pf-peers a{transition:border-color .18s ease,background-color .18s ease,color .18s ease}
}
@media (min-width:640px) and (max-width:1023.98px){
  main.profile .pf-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
  main.profile .pf-fact:nth-last-child(2){border-bottom:0}
}
@media (min-width:720px){
  main.profile .pf-services{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  main.profile .pf-layout{display:grid;grid-template-columns:minmax(290px,340px) minmax(0,1fr);gap:clamp(40px,4.5vw,64px);align-items:start}
  main.profile .pf-side-cta{display:block}
  main.profile .pf-bottom-cta{display:none}
  /* sticky facts column: taller than most windows, so it pins by its bottom edge (scrolls with the page
     until the CTA is in view, then stays put); on very tall windows it pins to the top */
  main.profile .pf-side{position:sticky;bottom:16px;align-self:end;display:grid;gap:12px;margin-bottom:0}
}
@media (min-width:1024px) and (min-height:1240px){
  main.profile .pf-side{top:var(--pf-top);bottom:auto;align-self:start}
}
@media (max-width:640px){
  main.profile .pf-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  main.profile .pf-stats li{flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px}
  main.profile .pf-stats li:first-child{grid-column:1/-1}
}
@media (max-width:420px){
  main.profile .pf-card{padding-inline:16px}
}

/* pricing cards: one column on phones; on tablets the third card spans the row instead of sitting alone */
@media(max-width:640px){.pricing{grid-template-columns:1fr}}
@media(min-width:641px) and (max-width:960px){.pricing>.price-card:last-child{grid-column:1/-1}}
.nowrap{white-space:nowrap}
@media(max-width:360px){.page-hero h1{font-size:2rem}}
/* audit modal: compact on short/narrow screens; close icon uses SVG, not a font glyph */
.modal-box .close{display:grid;place-items:center;font-family:var(--font);line-height:1}
@media(max-width:560px),(max-height:700px){.modal-box{padding:30px 22px}.modal-box .m-mascot{width:56px;height:56px;margin-bottom:10px}}
/* header language switch: 44px tap targets where the burger nav is used */
@media(max-width:1259px){.lang-switch a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px}}
html[lang^="en"] .price-card .price{font-size:clamp(1.4rem,10.5cqi,2.7rem)}

/* ---------- Blog post design ---------- */
.post-hero-img{margin:0 auto clamp(26px,4vw,40px);max-width:980px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line-2);box-shadow:var(--shadow);aspect-ratio:16/9;background:var(--bg-3)}
.post-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.post-summary{background:var(--card);border:1px solid rgba(246,182,13,.28);border-radius:18px;padding:22px 26px;margin:0 0 34px}
.post-summary .eyebrow{margin-bottom:10px}
.article .post-summary ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.article .post-summary li{position:relative;padding-left:30px;margin:0;color:var(--ink);line-height:1.6}
.article .post-summary li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:16px;border-radius:50%;
  background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.5L12 5.4' fill='none' stroke='%23130607' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.article > p:first-of-type{font-size:1.14rem;color:var(--ink);line-height:1.7}
.article h2{position:relative;padding-top:22px}
.article h2::before{content:"";position:absolute;top:0;left:0;width:34px;height:3px;border-radius:3px;background:var(--gold)}
.article ul{list-style:none;padding-left:4px}
.article ul > li{position:relative;padding-left:22px}
.article ul > li::before{content:"";position:absolute;left:2px;top:.72em;width:7px;height:7px;border-radius:50%;background:var(--red-vivid)}
.article ol{counter-reset:ol;list-style:none;padding-left:4px}
.article ol > li{counter-increment:ol;position:relative;padding-left:44px;margin-bottom:16px}
.article ol > li::before{content:counter(ol);position:absolute;left:0;top:.05em;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:var(--card-2);border:1px solid var(--line-2);color:var(--gold-soft);font-family:var(--display);font-weight:800;font-size:.9rem}
.article blockquote{border-left:0;position:relative;padding:22px 24px 22px 62px;border:1px solid var(--line-2);border-radius:16px;font-size:1.08rem}
.article blockquote::before{content:"“";position:absolute;left:20px;top:6px;font-family:Georgia,serif;font-size:3.4rem;line-height:1;color:var(--gold)}
.article .callout{position:relative;padding-left:58px}
.article .callout::before{content:"🫏";position:absolute;left:20px;top:18px;font-size:1.3rem}
.post-related{margin-top:10px}
.post-related h2{text-align:center;font-size:clamp(1.4rem,3vw,1.85rem);margin-bottom:26px}
.blog-list .card .thumb,.post-related .card .thumb{margin:-30px -30px 20px;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid var(--line)}
.blog-list .card .thumb img,.post-related .card .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.blog-list a.card:hover .thumb img,.post-related a.card:hover .thumb img{transform:scale(1.03)}
.post-related a.card{display:block;color:inherit}
.post-related .card h3{font-size:1.08rem}
.post-related .card .bmore{margin-top:12px;color:var(--gold-soft);font-weight:800;font-size:.92rem}
@media(max-width:760px){.post-related .grid-3{grid-template-columns:1fr}}
.blog-list .card h2{font-size:1.22rem;line-height:1.3;margin-bottom:10px}

.price-vat{margin-top:18px;text-align:center;color:var(--muted-2);font-size:.9rem}

/* comparison profiles: published price ledger (same structure for every agency) */
main.profile .pf-ledger-wrap{overflow-x:auto;margin:6px 0 18px;border:1px solid var(--line-2);border-radius:16px;background:var(--card)}
main.profile .pf-ledger{width:100%;border-collapse:collapse;font-size:.95rem}
main.profile .pf-ledger caption{text-align:left;padding:12px 16px 4px;color:var(--muted-2);font-size:.82rem;font-weight:700;letter-spacing:.03em}
main.profile .pf-ledger th,main.profile .pf-ledger td{padding:10px 16px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
main.profile .pf-ledger th{color:var(--ink);font-weight:700}
main.profile .pf-ledger td{color:var(--ink)}
main.profile .pf-ledger .pf-ledger-note{color:var(--muted-2);font-size:.86rem}
main.profile .pf-amt{display:inline-block;margin:2px 6px 2px 0;padding:2px 10px;border:1px solid var(--line-2);border-radius:999px;
  background:rgba(255,255,255,.035);font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:560px){main.profile .pf-ledger th,main.profile .pf-ledger td{display:block;border-top:0;padding:4px 16px}
  main.profile .pf-ledger tr{display:block;border-top:1px solid var(--line);padding:8px 0}}
/* mobile menu: the audit CTA lives inside the drawer where the header CTA is hidden */
.nav-links .nav-menu-cta{display:none}
@media(max-width:760px){.nav-links .nav-menu-cta{display:block;margin-top:8px}
  .nav-links .nav-menu-cta a{background:linear-gradient(180deg,#ffd15c,#f6b60d);color:#3a2400;font-weight:800;text-align:center}}
/* breadcrumb: comfortable tap targets */
.breadcrumb a{display:inline-block;padding:4px 2px}

/* forms: honeypot, status note, audit form inside the modal */
.hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form-note{display:none;margin-top:16px;color:var(--gold-soft);font-weight:700}
.form-note.is-ok{color:#7fd99a}
.modal-box .m-form{margin-top:18px;text-align:left}
.modal-box .m-form .field{margin-bottom:12px}
.modal-box .m-form .m-body{margin:6px 0 14px}
.modal-box .m-form .form-note{text-align:center;margin-top:12px}
.modal-box .m-direct{text-align:center;color:var(--muted-2);font-size:.88rem;margin-top:12px}
.modal-box .m-direct a{color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}
