/*
Theme Name: Abu Hayat
Theme URI: https://abuhayatpolash.com/
Author: Md Abu Hayat
Description: Lightweight custom theme for Md Abu Hayat — WordPress plugin developer. Built for Core Web Vitals, SEO and AI answer-engine visibility. Fraunces + Instrument Sans + JetBrains Mono; pine-teal identity.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: abuhayat
*/

:root{
  --bg:#F5F3ED; --surface:#FBFAF6; --surface-2:#EFEDE4;
  --ink:#191B19; --muted:#5C625C; --line:#E4E0D5;
  --brand:#0E7C6B; --brand-ink:#0A5A4E; --brand-tint:rgba(14,124,107,.09);
  --accent:#E4572E;
  --dark:#12150F; --dark-ink:#EDEEE7; --dark-muted:#9BA39A; --dark-line:#2A2E26;
  --maxw:1180px; --radius:14px;
  --shadow:0 1px 2px rgba(25,27,25,.04), 0 12px 34px rgba(25,27,25,.07);
}
:root:not([data-theme="light"]){ @media (prefers-color-scheme: dark){
  --bg:#0E110E; --surface:#161A15; --surface-2:#1C2019;
  --ink:#ECEDE7; --muted:#98A197; --line:#272C24;
  --brand:#3AD6B6; --brand-ink:#63e0c6; --brand-tint:rgba(58,214,182,.12);
  --accent:#FF875C; --shadow:0 1px 2px rgba(0,0,0,.3), 0 16px 40px rgba(0,0,0,.4);
}}
:root[data-theme="dark"]{
  --bg:#0E110E; --surface:#161A15; --surface-2:#1C2019;
  --ink:#ECEDE7; --muted:#98A197; --line:#272C24;
  --brand:#3AD6B6; --brand-ink:#63e0c6; --brand-tint:rgba(58,214,182,.12);
  --accent:#FF875C; --shadow:0 1px 2px rgba(0,0,0,.3), 0 16px 40px rgba(0,0,0,.4);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:"Fraunces","Iowan Old Style",Georgia,serif;font-weight:600;line-height:1.08;letter-spacing:-.01em;text-wrap:balance;color:var(--ink)}
a{color:var(--brand-ink);text-decoration:none}
:root[data-theme="dark"] a,:root:not([data-theme="light"]) a{color:var(--brand)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) a{color:var(--brand)}}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.mono{font-family:"JetBrains Mono",ui-monospace,monospace}
.eyebrow{font-family:"JetBrains Mono",monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink);font-weight:500}
:root[data-theme="dark"] .eyebrow,:root:not([data-theme="light"]) .eyebrow{color:var(--brand)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .eyebrow{color:var(--brand)}}
.center{text-align:center}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:8px;z-index:100}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:"Instrument Sans",sans-serif;font-weight:600;font-size:15.5px;padding:13px 22px;border-radius:10px;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.btn:hover{transform:translateY(-1px);text-decoration:none}
.btn--primary{background:var(--accent);color:#fff}
.btn--brand{background:var(--brand);color:#fff}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn--ghost:hover{border-color:var(--brand);color:var(--brand-ink)}
:root[data-theme="dark"] .btn--ghost:hover{color:var(--brand)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--brand);outline-offset:2px}

/* header */
header.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.site .row{display:flex;align-items:center;justify-content:space-between;height:70px;gap:24px}
.brand{display:flex;align-items:baseline;gap:10px;font-weight:600}
.brand .n{font-family:"Fraunces",serif;font-size:21px;font-weight:600;color:var(--ink)}
.brand .r{font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--muted);letter-spacing:.02em}
nav.main ul{display:flex;align-items:center;gap:26px;list-style:none}
nav.main a{font-size:15px;color:var(--muted);font-weight:500}
nav.main a:hover{color:var(--ink);text-decoration:none}
nav.main .current-menu-item>a,nav.main .current_page_item>a{color:var(--ink)}
.hdr-actions{display:flex;align-items:center;gap:14px}
.tgl{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer;font-size:15px}
.menu-btn{display:none;width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:18px}
@media(max-width:860px){
  nav.main{position:fixed;inset:70px 0 auto 0;background:var(--surface);border-bottom:1px solid var(--line);padding:14px 0;display:none}
  nav.main.open{display:block}
  nav.main ul{flex-direction:column;gap:2px;align-items:stretch}
  nav.main a{display:block;padding:12px 28px}
  .menu-btn{display:grid;place-items:center}
  .hdr-cta{display:none}
}

/* generic section frame */
main{display:block}
.blk{padding:72px 0}
.blk--tint{background:var(--surface-2)}
.shead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:38px;flex-wrap:wrap}
.shead h2{font-size:clamp(28px,3.4vw,40px)}
.shead p{color:var(--muted);max-width:48ch;margin-top:8px}
.shead a.more{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--brand-ink);white-space:nowrap}
:root[data-theme="dark"] .shead a.more{color:var(--brand)}
.lede{font-size:19px;color:var(--muted);max-width:60ch}

/* hero */
.hero{padding:76px 0 30px}
.hero .grid{display:grid;grid-template-columns:1.35fr .95fr;gap:56px;align-items:center}
@media(max-width:920px){.hero .grid{grid-template-columns:1fr;gap:36px}}
.avail{display:inline-flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--muted);margin-bottom:22px}
.avail .dot{width:8px;height:8px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--brand-tint)}
.hero h1{font-size:clamp(40px,6vw,66px);margin-bottom:22px}
.hero h1 em{font-style:italic;color:var(--brand-ink)}
:root[data-theme="dark"] .hero h1 em{color:var(--brand)}
.hero p.lede{margin-bottom:28px}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero .note{margin-top:16px;font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--muted)}
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow)}
.pcard .ph{aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:radial-gradient(120% 120% at 20% 10%,var(--brand-tint),transparent 60%),linear-gradient(160deg,var(--surface-2),var(--bg));display:grid;place-items:center}
.pcard .ph img{width:100%;height:100%;object-fit:cover}
.pcard .ph .init{font-family:"Fraunces",serif;font-size:112px;font-weight:600;color:var(--brand);line-height:1}
.pcard .meta{display:flex;justify-content:space-between;align-items:center;padding:14px 10px 6px}
.pcard .meta b{font-family:"Fraunces",serif;font-size:18px}
.pcard .meta span{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--muted)}

/* stats */
.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:44px}
.stats .row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:26px 0}
@media(max-width:720px){.stats .row{grid-template-columns:1fr 1fr;gap:22px}}
.stat b{display:block;font-family:"Fraunces",serif;font-size:32px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.stat span{display:block;font-size:14px;color:var(--muted);margin-top:6px}
.stat b em{font-style:normal;color:var(--brand-ink);font-size:22px}
:root[data-theme="dark"] .stat b em{color:var(--brand)}

/* work / cards grid */
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:860px){.grid3{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.grid2{grid-template-columns:1fr}}
@media(max-width:560px){.grid3{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:border-color .15s,transform .15s,box-shadow .15s}
.card:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));transform:translateY(-2px);box-shadow:var(--shadow)}
.card .top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.card .ico{width:42px;height:42px;border-radius:10px;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;font-family:"Fraunces",serif;font-weight:600;font-size:20px;flex:none}
:root[data-theme="dark"] .card .ico{color:var(--brand)}
.card h3{font-size:20px;line-height:1.15}
.card .slug{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--muted);margin-top:2px}
.card p{font-size:15px;color:var(--muted);margin:2px 0 16px}
.card .foot{margin-top:auto;display:flex;align-items:center;gap:16px;font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.card .foot .k{color:var(--ink);font-weight:600}
.card .stars{color:var(--accent)}

/* capabilities */
.caps{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
@media(max-width:720px){.caps{grid-template-columns:1fr}}
.cap{background:var(--surface);padding:26px}
.cap .num{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--brand-ink)}
:root[data-theme="dark"] .cap .num{color:var(--brand)}
.cap h3{font-size:19px;margin:10px 0 8px}
.cap p{font-size:14.5px;color:var(--muted)}

/* process */
.proc{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:760px){.proc{grid-template-columns:1fr}}
.step{border-top:2px solid var(--brand);padding-top:18px}
.step .s{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted)}
.step h3{font-size:20px;margin:8px 0}
.step p{font-size:15px;color:var(--muted)}

/* post cards */
.post-card{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .15s}
.post-card:hover{border-color:color-mix(in srgb,var(--brand) 40%,var(--line))}
.post-card .cat{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--brand-ink)}
:root[data-theme="dark"] .post-card .cat{color:var(--brand)}
.post-card h3{font-size:19px;line-height:1.25}
.post-card h3 a{color:var(--ink)}
.post-card p{font-size:14.5px;color:var(--muted)}
.post-card time{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted);margin-top:auto}
.post-card .thumb{aspect-ratio:16/9;border-radius:10px;overflow:hidden;border:1px solid var(--line);margin:-4px 0 6px}
.post-card .thumb img{width:100%;height:100%;object-fit:cover}

/* quote */
.quote{background:var(--dark);color:var(--dark-ink);border-radius:22px;padding:56px 48px}
.quote p{font-family:"Fraunces",serif;font-size:clamp(22px,3vw,30px);line-height:1.3;max-width:26ch;margin:0 auto 24px;text-align:center;color:var(--dark-ink)}
.quote .who{text-align:center;font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--dark-muted)}
.quote .flag{display:block;text-align:center;color:var(--brand);font-family:"JetBrains Mono",monospace;font-size:12px;margin-bottom:18px}

/* cta band */
.cta{text-align:center;padding:8px 0}
.cta h2{font-size:clamp(30px,4.4vw,50px);margin-bottom:16px}
.cta p{color:var(--muted);max-width:46ch;margin:0 auto 26px;font-size:18px}
.cta .ctas{justify-content:center}

/* ---------- article / single ---------- */
.article-head{padding:56px 0 8px}
.article-head .kicker{display:flex;gap:14px;align-items:center;font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--muted);margin-bottom:18px;flex-wrap:wrap}
.article-head .kicker a{color:var(--brand-ink)}
:root[data-theme="dark"] .article-head .kicker a{color:var(--brand)}
.article-head h1{font-size:clamp(32px,4.6vw,52px);margin-bottom:16px}
.article-head .meta{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:14.5px}
.article-hero{margin:34px auto;border-radius:16px;overflow:hidden;border:1px solid var(--line);max-width:var(--maxw)}
.prose{max-width:720px;margin:0 auto;font-size:18px;line-height:1.75}
.prose>*{margin-bottom:1.1em}
.prose h2{font-size:29px;margin:1.5em 0 .5em}
.prose h3{font-size:23px;margin:1.4em 0 .4em}
.prose a{text-decoration:underline}
.prose img{border-radius:12px;margin:1.4em auto}
.prose blockquote{border-left:3px solid var(--brand);padding:4px 0 4px 22px;color:var(--muted);font-style:italic}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin-bottom:.4em}
.prose pre{background:var(--dark);color:var(--dark-ink);border-radius:12px;padding:18px 20px;overflow-x:auto;font-family:"JetBrains Mono",monospace;font-size:14px}
.prose code{font-family:"JetBrains Mono",monospace;font-size:.9em;background:var(--surface-2);padding:2px 6px;border-radius:5px}
.prose pre code{background:none;padding:0}
.prose table{width:100%;border-collapse:collapse}
.prose th,.prose td{border:1px solid var(--line);padding:8px 12px;text-align:left}
.author-box{max-width:720px;margin:44px auto 0;display:flex;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.author-box .av{width:60px;height:60px;border-radius:50%;flex:none;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;font-family:"Fraunces",serif;font-weight:600;font-size:24px;overflow:hidden}
:root[data-theme="dark"] .author-box .av{color:var(--brand)}
.author-box .av img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.author-box b{font-family:"Fraunces",serif;font-size:18px}
.author-box p{font-size:14.5px;color:var(--muted);margin-top:3px}
.tags-row{max-width:720px;margin:24px auto 0;display:flex;flex-wrap:wrap;gap:8px}
.tags-row a{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:5px 12px}
.tags-row a:hover{color:var(--brand-ink);border-color:var(--brand);text-decoration:none}

/* breadcrumbs */
.crumbs{font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--muted)}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--ink)}
.crumbs .sep{opacity:.5;margin:0 6px}

/* archive header */
.arch-head{padding:56px 0 8px;border-bottom:1px solid var(--line);margin-bottom:44px}
.arch-head h1{font-size:clamp(30px,4vw,46px);margin:10px 0 8px}

/* pagination */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:48px;flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--ink);font-family:"JetBrains Mono",monospace;font-size:14px}
.pagination .current{background:var(--brand);color:#fff;border-color:var(--brand)}
.pagination a.page-numbers:hover{border-color:var(--brand);text-decoration:none}

/* contact page */
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr;gap:32px}}
.contact-info li{list-style:none;margin-bottom:18px}
.contact-info .lbl{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.contact-info .val{font-size:18px;margin-top:2px}
.form-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:30px}
.form-wrap .wpcf7 input:not([type=submit]),.form-wrap .wpcf7 textarea,.form-wrap input[type=text],.form-wrap input[type=email],.form-wrap textarea{width:100%;font:inherit;font-size:15px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);margin-top:6px}
.form-wrap label{display:block;font-weight:600;font-size:14px;margin-top:16px}
.form-wrap .wpcf7-submit{margin-top:20px;background:var(--brand);color:#fff;border:0;padding:13px 26px;border-radius:10px;font-weight:600;cursor:pointer}

/* about */
.about-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center;padding:56px 0}
@media(max-width:820px){.about-hero{grid-template-columns:1fr;gap:32px}}
.about-hero .photo{border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:4/5;background:var(--surface-2)}
.about-hero .photo img{width:100%;height:100%;object-fit:cover}
.skills{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.skills span{font-family:"JetBrains Mono",monospace;font-size:13px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 14px;color:var(--ink)}
.timeline{border-left:2px solid var(--line);padding-left:26px;display:flex;flex-direction:column;gap:26px}
.timeline .t-item{position:relative}
.timeline .t-item::before{content:"";position:absolute;left:-33px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--brand);border:3px solid var(--bg)}
.timeline .yr{font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--brand-ink)}
:root[data-theme="dark"] .timeline .yr{color:var(--brand)}
.timeline h3{font-size:19px;margin:4px 0}
.timeline p{font-size:15px;color:var(--muted)}

/* footer */
footer.site{border-top:1px solid var(--line);margin-top:72px;padding:44px 0}
footer.site .top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;padding-bottom:34px;border-bottom:1px solid var(--line)}
@media(max-width:760px){footer.site .top{grid-template-columns:1fr}}
footer.site h4{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:500;margin-bottom:14px}
footer.site ul{list-style:none;display:flex;flex-direction:column;gap:9px}
footer.site a{color:var(--muted);font-size:15px}
footer.site a:hover{color:var(--ink)}
footer.site .foot-bio{color:var(--muted);font-size:15px;max-width:34ch;margin-top:10px}
footer.site .bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted)}

/* 404 / search empty */
.big404{padding:90px 0;text-align:center}
.big404 .code{font-family:"Fraunces",serif;font-size:clamp(80px,16vw,160px);color:var(--brand);line-height:1}
.big404 h1{font-size:clamp(26px,3vw,36px);margin:10px 0 14px}
.big404 p{color:var(--muted);max-width:44ch;margin:0 auto 24px}

/* search form */
.searchform{display:flex;gap:10px;max-width:520px}
.searchform input[type=search]{flex:1;font:inherit;font-size:15px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.searchform button{background:var(--brand);color:#fff;border:0;border-radius:10px;padding:0 20px;font-weight:600;cursor:pointer}

@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}

/* hide third-party reCAPTCHA badge (matches static mockup) */
.grecaptcha-badge{visibility:hidden!important;opacity:0!important;pointer-events:none}

/* ---------- contact page (redesigned) ---------- */
.contact-head{padding:48px 0 8px}
.contact-head h1{font-size:clamp(34px,5vw,54px);margin:8px 0 14px}
.contact-body{padding:34px 0 0}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:start}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr;gap:28px}}
.c-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.c-card h2{font-size:22px;margin-bottom:20px}
.c-methods{list-style:none;display:flex;flex-direction:column;gap:18px}
.c-methods li{display:flex;gap:14px;align-items:flex-start}
.c-ico{flex:none;width:38px;height:38px;border-radius:10px;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;font-family:"JetBrains Mono",monospace;font-size:14px;font-weight:500}
:root[data-theme="dark"] .c-ico{color:var(--brand)}
.c-lbl{display:block;font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:2px}
.c-val{display:block;font-size:16px;color:var(--ink);word-break:break-word}
a.c-val:hover{color:var(--brand-ink)}
:root[data-theme="dark"] a.c-val:hover{color:var(--brand)}
.c-avail{display:inline-flex;align-items:center;gap:9px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--muted)}
.c-avail .dot{width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--brand-tint)}
.c-steps{margin-top:24px;padding:0 4px}
.c-steps ol{list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:14px;margin-top:14px}
.c-steps li{counter-increment:s;position:relative;padding-left:38px;font-size:15px;color:var(--muted);line-height:1.5}
.c-steps li b{color:var(--ink);font-weight:600}
.c-steps li::before{content:counter(s);position:absolute;left:0;top:-1px;width:26px;height:26px;border-radius:8px;background:var(--surface);border:1px solid var(--line);color:var(--brand-ink);font-family:"JetBrains Mono",monospace;font-size:12px;font-weight:600;display:grid;place-items:center}
:root[data-theme="dark"] .c-steps li::before{color:var(--brand)}
/* form card */
.form-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}
.form-title{font-size:24px;margin-bottom:6px}
.form-sub{color:var(--muted);font-size:14px;margin-bottom:22px}
.form-wrap .wpcf7 p{margin:0}
.form-wrap label{display:block;font-weight:600;font-size:14px;margin-top:18px;color:var(--ink)}
.form-wrap .wpcf7 input:not([type=submit]),.form-wrap .wpcf7 textarea,.form-wrap input[type=text],.form-wrap input[type=email],.form-wrap input[type=tel],.form-wrap textarea{width:100%;font:inherit;font-size:15.5px;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);margin-top:7px;transition:border-color .15s,box-shadow .15s}
.form-wrap .wpcf7 input:focus,.form-wrap .wpcf7 textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}
.form-wrap textarea{min-height:150px;resize:vertical}
.form-wrap .wpcf7-submit{margin-top:24px;background:var(--brand);color:#fff;border:0;padding:14px 30px;border-radius:10px;font-weight:600;font-size:15.5px;cursor:pointer;transition:background .15s,transform .15s}
.form-wrap .wpcf7-submit:hover{background:var(--brand-ink);transform:translateY(-1px)}
.form-wrap .wpcf7-not-valid-tip{color:var(--accent);font-size:13px;margin-top:5px}
.form-wrap .wpcf7-response-output{margin:18px 0 0!important;border-radius:10px;padding:12px 16px!important;font-size:14px;border-width:1px}
.form-wrap .wpcf7-spinner{margin-left:12px}
