/*
 * SEO CV-template landing pages (/cv-templates/{slug}).
 *
 * Extracted verbatim from the supplied static pages — all 2,000 carried the
 * same three <style> blocks, concatenated here in their original cascade
 * order so the dynamic page renders pixel-identically. Do not reorder: later
 * blocks deliberately override earlier ones (e.g. .wrap / :root tokens).
 */

/* ---- block 1 of 3 ---- */
:root{--brand:#16a34a;--brand-d:#128a3e;--violet:#16a34a;--grad:linear-gradient(135deg,#1aa64d,#0f8a3c);--soft:#f2f6fb;--soft2:#e7f7ec}.hero{background:radial-gradient(900px 360px at 88% -10%,#e3f6e9,transparent),linear-gradient(180deg,#f2f6fb,#fff)}
  .cvdoc:not(.compact){background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px 32px;font-size:.9rem;max-width:720px;line-height:1.55;color:#333}
  .cvdoc .cvhead{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid var(--brand);padding-bottom:10px;margin-bottom:12px}
  .cvdoc .cvname{font-family:'Space Grotesk';font-weight:800;font-size:1.35em;color:var(--ink)}
  .cvdoc .cvrole{color:var(--brand-d);font-weight:600}.cvdoc .cvcontact{text-align:right;color:var(--ink-soft);font-size:.85em}
  .cvdoc .cvsec{margin-bottom:11px}.cvdoc .cvsec h4{font-family:'Space Grotesk';font-size:.95em;color:var(--ink);margin:0 0 5px;text-transform:uppercase;letter-spacing:.03em}
  .cvdoc .cvsec p{margin:0;color:#3a3a4c}.cvdoc .cvsec ul{margin:4px 0 0;padding-left:1.1em}.cvdoc .cvsec li{margin-bottom:3px}
  .cvdoc .cvchips{display:flex;flex-wrap:wrap;gap:5px}.cvdoc .cvchips span{background:#e7f7ec;color:var(--brand-d);border-radius:6px;padding:2px 8px;font-size:.9em;font-weight:600}
  .cvdoc .cvjob{margin-bottom:8px}.cvdoc .cvdate{color:var(--ink-soft);font-weight:500;float:right;font-size:.9em}
  .content h3{font-size:1.06rem;margin:16px 0 4px;font-family:'Space Grotesk'}
  .lvlgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
  .lvlcard{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
  .lvltag{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--violet);margin-bottom:6px}
  .lvlcard p{margin:0;color:var(--ink);font-size:.95rem}
  .twocol{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .skillbox{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:16px 20px}.skillbox h4{margin:0 0 8px;font-family:'Space Grotesk';color:var(--ink)}
  .respgrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.respgrid span{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:7px 13px;font-size:.9rem;font-weight:500}
  .note{font-size:.88rem;color:var(--ink-soft);background:var(--soft);border-left:3px solid var(--brand);padding:10px 14px;border-radius:8px;margin-top:12px}
  @media(max-width:820px){.lvlgrid,.twocol{grid-template-columns:1fr}.cvdoc .cvcontact{text-align:left}}

/* ===== full CV template previews ===== */
.tgal{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:12px 0 6px}
.tcard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(22,23,29,.06);transition:transform .15s,box-shadow .15s;text-decoration:none;display:block}
.tcard:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(22,23,29,.14);text-decoration:none}
.tprev{position:relative;background:#e9edf3;padding:16px 16px 0;display:flex;justify-content:center;max-height:430px;overflow:hidden}
.tprev::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(180deg,rgba(233,237,243,0),#e9edf3)}
.badge{position:absolute;top:12px;left:12px;font-size:.6rem;font-weight:800;letter-spacing:.05em;padding:3px 9px;border-radius:999px;z-index:3}
.badge.new{background:#ece7fb;color:#6d28d9}.badge.pop{background:#ffe6cc;color:#c2410c}
.tmeta2{padding:14px 16px 16px}
.tm-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.tm-name{font-family:'Space Grotesk';font-weight:700;font-size:1.05rem;color:var(--ink)}
.tm-ats{font-family:'Space Grotesk';font-weight:700;font-size:.82rem;color:var(--brand)}
.tm-tag{color:var(--ink-soft);font-size:.8rem;margin:1px 0 6px}.tm-desc{color:var(--ink-soft);font-size:.86rem;line-height:1.5}
/* full A4 CV sheet */
.cvfull{width:100%;max-width:340px;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.10);font-family:'Inter',sans-serif;font-size:6.6px;line-height:1.5;color:#454553;border-radius:2px}
.cvfull .nm{font-family:'Space Grotesk';font-weight:800;font-size:14px;color:#1b1a2e;letter-spacing:.2px}
.cvfull .rl{font-size:6.6px;letter-spacing:.9px;text-transform:uppercase;font-weight:700}
.cvfull .ct{font-size:5.6px;color:#9a9aa8}.cvfull .ct2{font-size:5.8px;color:#6b6b78}
.cvfull .bd{padding:10px 14px 16px}
.cvfull .sh{font-family:'Space Grotesk';font-weight:800;font-size:6.6px;letter-spacing:.7px;text-transform:uppercase;margin:8px 0 3px;color:#1b1a2e}
.cvfull p{margin:0 0 4px}.cvfull ul{margin:2px 0 5px;padding-left:9px}.cvfull li{margin-bottom:1.5px}
.cvfull .chps{display:flex;flex-wrap:wrap;gap:3px}.cvfull .chps span{padding:1.5px 5px;border-radius:3px;font-size:5.6px;font-weight:600}
.cvfull .job{margin-bottom:5px}.cvfull .jr{display:flex;justify-content:space-between;gap:6px}
.cvfull .jt{font-weight:800;color:#1b1a2e;font-size:6.6px}.cvfull .jd{color:#9a9aa8;font-size:5.6px;white-space:nowrap}
.cvfull .ph{width:30px;height:30px;border-radius:50%;background:#e0e4ee;flex-shrink:0}
/* Atlas */
.t-atlas .hd{text-align:center;padding:14px 14px 4px}.t-atlas .ph{margin:0 auto 5px}
.t-atlas .rl{color:#5b4bf5}.t-atlas .sh{color:#5b4bf5;border-bottom:1px solid #ece9fd;padding-bottom:2px}.t-atlas .chps span{background:#eceafe;color:#4a3ce0}
.t-atlas .mile{display:flex;justify-content:space-between;padding:6px 14px;position:relative}
.t-atlas .mile div{flex:1;text-align:center;position:relative}.t-atlas .mile b{color:#5b4bf5;font-size:6.6px;display:block}
.t-atlas .mile i{display:block;width:5px;height:5px;border-radius:50%;background:#5b4bf5;margin:2px auto}.t-atlas .mile span{font-size:5px;color:#9a9aa8}
.t-atlas .mile::before{content:"";position:absolute;left:24px;right:24px;top:23px;height:1px;background:#d9d5fb;z-index:0}
/* Horizon */
.t-horizon .hd{display:flex;justify-content:space-between;padding:14px 14px 8px;border-bottom:2px solid #16233f}
.t-horizon .rl{color:#16233f}.t-horizon .sh{background:#16233f;color:#fff;padding:2px 6px;border-radius:2px;display:inline-block}
.t-horizon .chps span{background:#eef1f6;color:#16233f}
/* Vertex */
.t-vertex .band{background:linear-gradient(120deg,#0f766e,#14b8a6);color:#fff;padding:12px 14px;display:flex;justify-content:space-between;align-items:center}
.t-vertex .band .nm{color:#fff;font-size:12.5px}.t-vertex .band .rl{color:#c7f5ec}.t-vertex .band .ph{background:rgba(255,255,255,.3)}
.t-vertex .cols{display:flex}.t-vertex .side{width:37%;background:#f0faf8;padding:9px 8px}.t-vertex .main{width:63%;padding:9px 10px}
.t-vertex .sh{color:#0f766e}.t-vertex .chps span{background:#dff3ef;color:#0f766e}
/* Quantum */
.t-quantum .hd{padding:13px 14px 6px;border-left:4px solid #2563eb}
.t-quantum .rl{color:#2563eb}.t-quantum .sh{color:#2563eb;border-bottom:1px solid #e3ecfd;padding-bottom:2px}
.t-quantum .chps span{background:#eff4ff;color:#1d4ed8}
/* Fusion */
.t-fusion .hd{padding:13px 14px 6px;background:#fdf2f8;border-bottom:2px solid #db2777}
.t-fusion .nm{color:#be185d}.t-fusion .rl{color:#db2777}.t-fusion .sh{color:#db2777}
.t-fusion .chps span{background:#fce7f1;color:#be185d}
/* Nexus */
.t-nexus .hd{padding:13px 14px 6px;border-bottom:2px solid #ece7fb}.t-nexus .rl{color:#7c3aed}
.t-nexus .sh{color:#7c3aed;border-left:3px solid #7c3aed;padding-left:5px}.t-nexus .chps span{background:#f0eafe;color:#6d28d9}
/* Orbit */
.t-orbit .hd{text-align:center;padding:14px 14px 4px}.t-orbit .ph{margin:0 auto 5px;border:2px solid #f59e0b}
.t-orbit .rl{color:#d97706}.t-orbit .sh{color:#d97706;text-align:center}.t-orbit .chps{justify-content:center}.t-orbit .chps span{background:#fef3e2;color:#b45309}
/* Titanium */
.t-titanium .hd{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 14px 8px;border-bottom:1px solid #e6e6ea}
.t-titanium .rl{color:#6b6b78}.t-titanium .sh{color:#1b1a2e;border-bottom:1px solid #ececf0;padding-bottom:2px}.t-titanium .chps span{background:#f2f2f5;color:#454553}
@media(max-width:820px){.tgal{grid-template-columns:1fr}}


  /* ===== clean full-screen layout (aligned, no overflow) ===== */
  html,body{overflow-x:visible}
  .wrap{max-width:1200px;padding:0 32px}
  main>.wrap.rd{max-width:1200px;padding:0 32px;margin:0 auto}
  .content{overflow:visible}
  .content>p{max-width:900px;margin:0 0 14px}
  .main{padding:0 0 8px}
  .content>section.sec{padding:52px 0;margin:0;position:relative}
  /* alternate full-width background bands, drawn with box-shadow so nothing shifts */
  .content>section.sec:nth-of-type(even){background:#f4f7fb;box-shadow:0 0 0 100vmax #f4f7fb;clip-path:inset(0 -100vmax)}
  .content>section.sec>h2{font-size:1.9rem;margin:0 0 12px}
  .content>section.sec>p,.content>section.sec>ol,.content>section.sec>ul.skills,.content>section.sec>h3,.content>section.sec>.exbox{max-width:900px}
  /* hero: clean left-aligned */
  .hero{padding:54px 0 46px}
  .hero .wrap{text-align:left}
  .hero h1{font-size:2.9rem;max-width:22ch;margin:0 0 14px}
  .hero .lead{font-size:1.16rem;max-width:64ch;margin:0}
  .hero-actions{justify-content:flex-start}.chips{justify-content:flex-start}
  /* template gallery: 3 full CVs wide */
  .tgal{grid-template-columns:repeat(3,1fr);gap:22px}
  .cvfull{width:100%;max-width:340px;margin:0 auto}
  .tprev{max-height:520px}
  .lvlgrid{grid-template-columns:repeat(3,1fr)}
  @media(max-width:1040px){.tgal,.lvlgrid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:680px){.tgal,.lvlgrid{grid-template-columns:1fr}.content>section.sec{padding:38px 0}}

  /* ===== responsive fix: Talentmate bottom bar ===== */
  @media(max-width:1024px){
    .tmfloat{position:fixed;left:0;right:0;bottom:0;top:auto;transform:none;width:auto;border-radius:0;padding:8px 14px;box-shadow:0 -6px 22px rgba(17,32,63,.28)}
    .tmfloat-inner{display:flex;align-items:center;gap:12px;width:100%;max-width:1024px;margin:0 auto;flex-wrap:nowrap}
    .tmfloat-eye{display:none}
    .tmfloat-txt{flex:1;min-width:0}
    .tmfloat-h{font-size:.9rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .tmfloat-s{font-size:.75rem;margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
    .tmfloat-btn{flex-shrink:0;white-space:nowrap;padding:9px 16px;font-size:.82rem;width:auto}
    .tmfloat-x{position:static;order:5;flex-shrink:0;margin-left:2px;font-size:18px;padding:2px 4px}
    body{padding-bottom:66px}
  }
  @media(max-width:420px){
    .tmfloat-s{display:none}            /* very small: keep just the hook + button */
    .tmfloat-h{font-size:.85rem}
    .tmfloat-btn{padding:8px 14px;font-size:.8rem}
  }

  /* mobile: no sticky footer bar; use an in-content ad banner instead */
  @media(max-width:1024px){
    .tmfloat{display:none !important}
    body{padding-bottom:0 !important}
  }
  .tmad-m{display:none}
  @media(max-width:1024px){.tmad-m{display:block}}
.byline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:14px 0 4px;font-size:.86rem;color:var(--ink-soft)}.byline .av{width:26px;height:26px;border-radius:50%;background:var(--grad);flex-shrink:0}.byline b{color:var(--ink);font-weight:700}.byline .dot{color:#c3ccd6}.authorbox{display:flex;gap:16px;align-items:flex-start;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:18px 20px}.authorbox .av{width:46px;height:46px;border-radius:50%;background:var(--grad);flex-shrink:0}.authorbox h4{margin:0 0 4px;font-family:'Space Grotesk';font-size:1rem}.authorbox p{margin:0;color:var(--ink-soft);font-size:.9rem}.trustlist{list-style:none;padding:0;margin:8px 0 0}.trustlist li{display:flex;gap:9px;align-items:flex-start;font-size:.94rem;margin-bottom:6px}.trustlist li::before{content:"\2713";color:var(--brand);font-weight:800;flex-shrink:0}.toc{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:14px 0 20px;font-size:.86rem}.toc span{font-weight:700;color:var(--ink)}.toc a{color:var(--brand-d);font-weight:600}.qanswer{background:linear-gradient(120deg,#eefaf0,#e7f7ec);border:1px solid #cdeed6;border-left:4px solid var(--brand);border-radius:14px;padding:18px 22px;margin:0 0 18px}.qanswer .qa-lbl{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--brand-d);margin-bottom:6px}.qanswer p{margin:0;font-size:1.02rem;color:var(--ink)}

/* ---- block 2 of 3 ---- */
:root{--brand:#16a34a;--brand-d:#128a3e;--ink:#16171d;--ink-soft:#5b6470;--line:#e6ebf1;--soft:#f2f6fb;--soft2:#e7f7ec;--ok:#16a34a;--grad:linear-gradient(135deg,#1aa64d,#0f8a3c)}
*{box-sizing:border-box}html,body{margin:0;max-width:100%;overflow-x:hidden}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.eyebrow{font-family:'Space Grotesk',sans-serif;color:var(--ink);line-height:1.2}
a{color:var(--brand-d);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}.rd{max-width:100%}

:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:6px}







.btn{font-family:'Inter',sans-serif;font-weight:700;font-size:.92rem;padding:11px 20px;border-radius:11px;cursor:pointer;border:0;display:inline-flex;align-items:center;gap:8px;white-space:normal;text-align:center;line-height:1.3}
.btn-grad{background:var(--grad);color:#fff}.btn-grad:hover{filter:brightness(1.06);text-decoration:none}
.btn-o{background:#fff;color:var(--brand-d);border:1.5px solid var(--brand)}.btn-o:hover{background:var(--soft2);text-decoration:none}


.hero{background:radial-gradient(900px 360px at 88% -10%,#e3f6e9,transparent),linear-gradient(180deg,#f2f6fb,#fff);border-bottom:1px solid var(--line);padding:40px 0 34px}
.crumb{font-size:.83rem;color:var(--ink-soft);margin-bottom:14px}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--brand-d);background:var(--soft2);border:1px solid #cdeed6;padding:5px 12px;border-radius:999px;margin-bottom:14px}
.hero h1{font-size:2.55rem;font-weight:700;margin:0 0 14px;letter-spacing:-.01em;max-width:20ch;line-height:1.14}
.hero .lead{font-size:1.13rem;color:var(--ink-soft);margin:0;max-width:62ch}
.hero-actions{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}.hero-actions .btn{padding:13px 26px;font-size:.98rem}
.chips{display:flex;gap:18px;margin-top:20px;flex-wrap:wrap;color:var(--ink-soft);font-size:.9rem;font-weight:500}.chips span{display:flex;align-items:center;gap:7px}
.main{padding:32px 0 8px}
.eyebrow-s{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin-bottom:5px;font-family:'Space Grotesk'}
.content h2{font-size:1.5rem;margin:0 0 10px;letter-spacing:-.01em;line-height:1.28}
.content h3{font-size:1.06rem;margin:16px 0 4px;font-family:'Space Grotesk'}
.sec{margin-bottom:32px}.content p{margin:0 0 14px}
.content ul.skills{margin:8px 0 6px;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px}
.content ul.skills li{display:flex;gap:11px;align-items:flex-start;font-size:.97rem}
.content ul.skills li::before{content:"";width:20px;height:20px;flex-shrink:0;margin-top:2px;border-radius:6px;background:var(--soft2) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%2316a34a" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg>') center/13px no-repeat}
.content ol{padding-left:1.1rem;margin:6px 0}.content ol li{margin-bottom:9px;padding-left:4px}
.exbox{background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:12px;padding:16px 20px;margin:6px 0 14px}
.exbox .lbl{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--brand);margin-bottom:6px}.exbox p{margin:0;color:var(--ink)}
.kw{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}.kw span{background:var(--soft2);color:var(--brand-d);border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:600}
.strip{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--grad);border-radius:16px;padding:22px 26px;margin:26px 0;color:#fff;flex-wrap:wrap}
.strip .st{font-family:'Space Grotesk';font-weight:700;font-size:1.12rem;color:#fff}.strip .ss{font-size:.9rem;color:#dbf3e2;margin-top:2px}
.strip .btn-w{background:#fff;color:var(--brand-d);font-weight:700;padding:12px 22px;border-radius:10px;white-space:nowrap}.strip .btn-w:hover{text-decoration:none;background:#eafaef}
.buildcard{display:flex;align-items:center;gap:20px;background:linear-gradient(120deg,#eefaf0,#e7f7ec);border:1px solid #cdeed6;border-radius:16px;padding:24px;margin:26px 0}
.buildcard .ic{font-size:2rem;flex-shrink:0}.buildcard .bt{font-family:'Space Grotesk';font-weight:700;color:var(--ink);font-size:1.15rem;margin-bottom:3px}.buildcard .bs{font-size:.94rem;color:var(--ink-soft)}.buildcard .btn{margin-left:auto;flex-shrink:0}
.faq{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;overflow:hidden;background:#fff}.faq[open]{border-color:var(--brand)}
.faq summary{cursor:pointer;padding:16px 20px;font-weight:700;color:var(--ink);font-family:'Space Grotesk';list-style:none;display:flex;justify-content:space-between;gap:14px;font-size:1.01rem}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--brand);font-size:1.5rem;line-height:1}.faq[open] summary::after{content:"\2212"}.faq .fa{padding:0 20px 18px;color:var(--ink-soft)}
.closing{background:var(--grad);border-radius:22px;padding:40px;margin:8px 0 0;color:#fff;text-align:center}
.closing h2{color:#fff;font-size:1.7rem;margin:0 0 8px}.closing p{color:rgba(255,255,255,.92);margin:0 auto 22px;max-width:52ch}
.closing .cb{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.closing .b1{background:#fff;color:var(--brand-d);font-weight:700;padding:13px 26px;border-radius:11px}.closing .b2{background:rgba(255,255,255,.15);color:#fff;font-weight:700;padding:13px 26px;border-radius:11px;border:1.5px solid rgba(255,255,255,.6)}
.closing .b1:hover,.closing .b2:hover{text-decoration:none;opacity:.94}
.related{padding:28px 0 6px}.related h2{font-size:1.15rem;margin:0 0 14px}
.rel{display:flex;flex-wrap:wrap;gap:9px}.rel a{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-size:.86rem;color:var(--ink);font-weight:500}.rel a:hover{background:var(--soft2);text-decoration:none}






.tmad{margin:30px 0}.tmad-in{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(120deg,#16233f,#1180c4);border-radius:18px;padding:24px 30px;color:#fff;flex-wrap:wrap}
.tmad-eye{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#bfe0f5;margin-bottom:7px}
.tmad-h{font-family:'Space Grotesk';font-weight:700;font-size:1.28rem;color:#fff;margin-bottom:5px;line-height:1.25}
.tmad-s{font-size:.94rem;color:#dbe8f5;max-width:54ch;margin:0}
.tmad-btn{background:#fff;color:#16233f;font-weight:700;padding:13px 24px;border-radius:11px;white-space:nowrap;flex-shrink:0;font-size:.95rem}.tmad-btn:hover{background:#eaf3fb;text-decoration:none}
.tmfloat{position:fixed;right:16px;top:50%;transform:translateY(-50%);width:220px;background:linear-gradient(145deg,#16233f,#1180c4);color:#fff;border-radius:16px;padding:18px 16px 16px;box-shadow:0 14px 34px rgba(17,32,63,.30);z-index:60}
.tmfloat-x{position:absolute;top:7px;right:10px;background:none;border:0;color:#cfe2f2;font-size:19px;cursor:pointer;line-height:1;padding:2px}.tmfloat-x:hover{color:#fff}
.tmfloat-eye{font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#bfe0f5;margin-bottom:8px}
.tmfloat-h{font-family:'Space Grotesk';font-weight:700;font-size:1.12rem;margin-bottom:5px;line-height:1.2}
.tmfloat-s{font-size:.82rem;color:#dbe8f5;margin-bottom:12px;line-height:1.4}.tmfloat-s b{color:#fff;font-weight:800}
.tmfloat-btn{display:block;text-align:center;background:#fff;color:#16233f;font-weight:700;padding:10px;border-radius:9px;font-size:.86rem;white-space:nowrap;flex-shrink:0}.tmfloat-btn:hover{background:#eaf3fb;text-decoration:none}
.tgal{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:10px 0 6px}
.tcard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(22,23,29,.06);transition:transform .15s,box-shadow .15s}.tcard:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(22,23,29,.12)}
.tprev{height:300px;overflow:hidden;background:#eef2f7;padding:12px;display:flex;justify-content:center}
.tmeta{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-top:1px solid var(--line)}
.tname{font-family:'Space Grotesk';font-weight:700;font-size:.95rem}.tuse{font-size:.8rem;font-weight:700;color:var(--brand-d)}.tuse:hover{text-decoration:underline}
.cvdoc:not(.compact){background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px 32px;font-size:.9rem;max-width:720px;line-height:1.55;color:#333}
.cvdoc .cvhead{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid var(--brand);padding-bottom:10px;margin-bottom:12px}
.cvdoc .cvname{font-family:'Space Grotesk';font-weight:700;font-size:1.35em;color:var(--ink)}
.cvdoc .cvrole{color:var(--brand-d);font-weight:600}.cvdoc .cvcontact{text-align:right;color:var(--ink-soft);font-size:.85em}
.cvdoc .cvsec{margin-bottom:11px}.cvdoc .cvsec h4{font-family:'Space Grotesk';font-size:.95em;color:var(--ink);margin:0 0 5px;text-transform:uppercase;letter-spacing:.03em}
.cvdoc .cvsec p{margin:0;color:#3a3a4c}.cvdoc .cvsec ul{margin:4px 0 0;padding-left:1.1em}.cvdoc .cvsec li{margin-bottom:3px}
.cvdoc .cvchips{display:flex;flex-wrap:wrap;gap:5px}.cvdoc .cvchips span{background:var(--soft2);color:var(--brand-d);border-radius:6px;padding:2px 8px;font-size:.9em;font-weight:600}
.cvdoc .cvjob{margin-bottom:8px}.cvdoc .cvdate{color:var(--ink-soft);font-weight:500;float:right;font-size:.9em}
.lvlgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}.lvlcard{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.lvltag{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin-bottom:6px}.lvlcard p{margin:0;color:var(--ink);font-size:.95rem}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:20px}.skillbox{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:16px 20px}.skillbox h4{margin:0 0 8px;font-family:'Space Grotesk';color:var(--ink)}
.respgrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.respgrid span{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:7px 13px;font-size:.9rem;font-weight:500}
.note{font-size:.88rem;color:var(--ink-soft);background:var(--soft);border-left:3px solid var(--brand);padding:10px 14px;border-radius:8px;margin-top:12px}
@media(max-width:900px){.tmfloat{position:fixed;left:0;right:0;bottom:0;top:auto;transform:none;width:auto;border-radius:0;padding:9px 16px;box-shadow:0 -6px 22px rgba(17,32,63,.28)}body{padding-bottom:70px}.tmfloat-inner{display:flex;align-items:center;gap:12px;width:100%;max-width:1080px;margin:0 auto}.tmfloat-eye{display:none}.tmfloat-h{font-size:.92rem;margin:0}.tmfloat-s{font-size:.76rem;margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tmfloat-btn{display:inline-block;margin-left:auto;padding:9px 18px}.tmfloat-x{position:static;order:5;margin-left:2px}}
@media(max-width:820px){.tgal,.lvlgrid,.twocol{grid-template-columns:1fr}.cvdoc .cvcontact{text-align:left}}
@media(max-width:640px){.hero h1{font-size:1.85rem}.content ul.skills{grid-template-columns:1fr}.hero-actions .btn{width:100%;justify-content:center}.strip{flex-direction:column;align-items:stretch}.strip .btn-w{width:100%;text-align:center}.buildcard{flex-direction:column;text-align:center}.buildcard .btn{margin-left:0;width:100%;justify-content:center}.closing{padding:28px 20px}.closing .cb{flex-direction:column}.closing .b1,.closing .b2{width:100%}}

/* shared mini-CV canvas: A4-ish, scaled down */
.cv{width:250px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.08);font-size:6.5px;line-height:1.5;color:#333;flex-shrink:0}
.cv h1,.cv h2,.cv h3,.cv h4{margin:0}
.cv .nm{font-weight:800;font-size:14px;letter-spacing:.2px}
.cv .rl{font-size:8px;letter-spacing:.5px}
.cv .ct{font-size:6px;color:#888}
.cv .lbl{font-weight:700;font-size:7px;text-transform:uppercase;letter-spacing:.6px;margin:7px 0 3px}
.cv p{margin:0 0 4px}.cv ul{margin:2px 0 0;padding-left:9px}.cv li{margin-bottom:1.5px}
.cv .body{padding:14px 15px}
.chip{display:inline-block;padding:1.5px 5px;border-radius:4px;font-size:6px;margin:0 3px 3px 0}

/* 1 Aurora - classic centered */
.t1 .top{text-align:center;padding:16px 15px 10px;border-bottom:2px solid #5b4bf5}
.t1 .nm{color:#1b1a2e}.t1 .rl{color:#5b4bf5;font-weight:600}.t1 .lbl{color:#5b4bf5;border-bottom:1px solid #eee;padding-bottom:2px}
.t1 .chip{background:#efeafe;color:#4a3ce0}

/* 2 Meridian - left sidebar */
.t2{display:flex}.t2 .side{width:38%;background:#16233f;color:#dbe3f0;padding:14px 11px}
.t2 .side .nm{color:#fff;font-size:11px}.t2 .side .rl{color:#8fb4d8}.t2 .side .lbl{color:#fff;border-bottom:1px solid #33425c;padding-bottom:2px}
.t2 .side .ct{color:#a9bdd6}.t2 .main{width:62%;padding:14px 12px}.t2 .main .lbl{color:#16233f;border-bottom:1px solid #e2e6ee;padding-bottom:2px}
.t2 .chip{background:#26364f;color:#cfe0f2}

/* 3 Slate - header band */
.t3 .band{background:linear-gradient(120deg,#0f766e,#14b8a6);color:#fff;padding:16px 15px}
.t3 .band .nm{font-size:13px}.t3 .band .rl{color:#c7f5ec}.t3 .band .ct{color:#d6f7f1}
.t3 .lbl{color:#0f766e}.t3 .chip{background:#e4f4f0;color:#0f766e}

/* 4 Minimal - clean serif name */
.t4 .top{padding:18px 16px 8px}.t4 .nm{font-family:'Merriweather',serif;font-size:13px}
.t4 .rl{color:#666;letter-spacing:2px;text-transform:uppercase;font-size:6.5px}
.t4 .lbl{color:#111;letter-spacing:1.5px;font-size:6.5px}.t4 hr{border:0;border-top:1px solid #e4e4e4;margin:6px 0}
.t4 .chip{background:#f2f2f2;color:#333}

/* 5 Vertex - timeline */
.t5 .top{padding:15px 15px 8px;border-left:4px solid #db2777}
.t5 .nm{color:#1b1a2e}.t5 .rl{color:#db2777}
.t5 .lbl{color:#db2777}.t5 .tl{border-left:2px solid #f3cfe3;padding-left:9px;margin-left:2px}
.t5 .tl .dot{position:relative}.t5 .tl .dot::before{content:"";position:absolute;left:-13px;top:2px;width:6px;height:6px;border-radius:50%;background:#db2777}
.t5 .chip{background:#fbe6f1;color:#be185d}

/* 6 Coral - accent header + skill bars */
.t6 .band{background:#d97706;color:#fff;padding:15px}.t6 .band .nm{font-size:13px}.t6 .band .rl{color:#ffe6c2}.t6 .band .ct{color:#ffedd6}
.t6 .lbl{color:#d97706}.t6 .bar{height:4px;background:#f0e6d8;border-radius:3px;margin:2px 0 5px;overflow:hidden}
.t6 .bar i{display:block;height:100%;background:#d97706;border-radius:3px}
.t6 .chip{background:#fdf0dd;color:#b45309}

/* 7 Nova - two-tone modern grotesk */
.t7 .top{padding:15px}.t7 .nm{font-family:'Space Grotesk';font-size:13px;color:#2563eb}
.t7 .rl{color:#111}.t7 .lbl{color:#2563eb;font-family:'Space Grotesk'}
.t7 .rule{height:3px;width:34px;background:#2563eb;border-radius:3px;margin:8px 0}
.t7 .chip{background:#e7eefc;color:#1d4ed8}

/* 8 Compact - dense two column */
.t8 .top{background:#1b1a2e;color:#fff;padding:12px 14px}.t8 .top .nm{font-size:12px}.t8 .top .rl{color:#b9b6d6}.t8 .top .ct{color:#a7a4c9}
.t8 .cols{display:flex;gap:10px;padding:12px 14px}.t8 .c1{width:58%}.t8 .c2{width:42%}
.t8 .lbl{color:#5b4bf5}.t8 .chip{background:#efeafe;color:#4a3ce0;display:block;margin-bottom:2px}

/* ---- block 3 of 3 ---- */
:root{--brand:#16a34a;--brand-d:#128a3e;--violet:#16a34a;--pink:#16a34a;--ink:#1b1a2e;--ink-soft:#5c5b73;--line:#ebe9f6;--soft:#f2f6fb;--soft2:#e7f7ec;--ok:#12a150;--grad:linear-gradient(135deg,#1aa64d,#0f8a3c)}
*{box-sizing:border-box}html,body{margin:0;max-width:100%;overflow-x:hidden}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,.eyebrow{font-family:'Space Grotesk',sans-serif;color:var(--ink);line-height:1.22}
a{color:var(--brand-d);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}.rd{max-width:730px}

:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:6px}






.btn{font-family:inherit;font-weight:700;font-size:.92rem;padding:11px 20px;border-radius:10px;cursor:pointer;border:0;display:inline-flex;align-items:center;gap:8px;white-space:normal;text-align:center;line-height:1.3}
.btn-grad{background:var(--grad);color:#fff}.btn-grad:hover{filter:brightness(1.05);text-decoration:none}
.btn-o{background:#fff;color:var(--brand-d);border:1.5px solid var(--brand);}.btn-o:hover{background:var(--soft);text-decoration:none}


.hero{background:radial-gradient(900px 360px at 88% -10%,#f0e9ff,transparent),linear-gradient(180deg,var(--soft),#fff);border-bottom:1px solid var(--line);padding:40px 0 34px}
.crumb{font-size:.83rem;color:var(--ink-soft);margin-bottom:14px}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--brand-d);background:#fff;border:1px solid var(--soft2);padding:5px 12px;border-radius:999px;margin-bottom:14px}
.hero h1{font-size:2.55rem;font-weight:800;margin:0 0 14px;letter-spacing:-.01em;max-width:20ch;line-height:1.15}
.hero.lead{font-size:1.13rem;color:var(--ink-soft);margin:0;max-width:62ch}
.hero-actions{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.hero-actions.btn{padding:13px 26px;font-size:.98rem}
.chips{display:flex;gap:18px;margin-top:20px;flex-wrap:wrap;color:var(--ink-soft);font-size:.9rem;font-weight:500}
.chips span{display:flex;align-items:center;gap:7px}
.main{padding:32px 0 8px}
.eyebrow-s{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--violet);margin-bottom:5px;font-family:'Space Grotesk'}
.content h2{font-size:1.5rem;margin:0 0 10px;letter-spacing:-.01em;line-height:1.28}
.sec{margin-bottom:32px}.content p{margin:0 0 14px}
.content ul.skills{margin:8px 0 6px;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px}
.content ul.skills li{display:flex;gap:11px;align-items:flex-start;font-size:.97rem}
.content ul.skills li::before{content:"";width:20px;height:20px;flex-shrink:0;margin-top:2px;border-radius:6px;background:var(--soft2) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%235b4bf5" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l4 4 10-10"/></svg>') center/13px no-repeat}
.content ol{padding-left:1.1rem;margin:6px 0 6px}.content ol li{margin-bottom:9px;padding-left:4px}
.exbox{background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:12px;padding:16px 20px;margin:6px 0 14px}
.exbox.lbl{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--violet);margin-bottom:6px}
.exbox p{margin:0;color:var(--ink)}
.kw{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.kw span{background:var(--soft2);color:var(--brand-d);border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:600}
.strip{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--ink);border-radius:16px;padding:22px 26px;margin:26px 0;color:#fff;flex-wrap:wrap}
.strip.st{font-family:'Space Grotesk';font-weight:700;font-size:1.12rem;color:#fff}
.strip.ss{font-size:.9rem;color:#c7c5e0;margin-top:2px}
.strip.btn-w{background:#fff;color:var(--ink);font-weight:700;padding:12px 22px;border-radius:10px;white-space:nowrap}
.strip.btn-w:hover{text-decoration:none;background:#f0eefb}
.buildcard{display:flex;align-items:center;gap:20px;background:linear-gradient(120deg,#eefaf0,#e7f7ec);border:1px solid var(--soft2);border-radius:16px;padding:24px;margin:26px 0}
.buildcard.ic{font-size:2rem;flex-shrink:0}
.buildcard.bt{font-family:'Space Grotesk';font-weight:800;color:var(--ink);font-size:1.15rem;margin-bottom:3px}
.buildcard.bs{font-size:.94rem;color:var(--ink-soft)}
.buildcard.btn{margin-left:auto;flex-shrink:0}
.faq{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;overflow:hidden;background:#fff}
.faq[open]{border-color:var(--brand)}
.faq summary{cursor:pointer;padding:16px 20px;font-weight:700;color:var(--ink);font-family:'Space Grotesk';list-style:none;display:flex;justify-content:space-between;gap:14px;font-size:1.01rem}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--brand);font-size:1.5rem;line-height:1}
.faq[open] summary::after{content:"\2212"}.faq.fa{padding:0 20px 18px;color:var(--ink-soft)}
.closing{background:var(--grad);border-radius:22px;padding:40px;margin:8px 0 0;color:#fff;text-align:center}
.closing h2{color:#fff;font-size:1.7rem;margin:0 0 8px}.closing p{color:rgba(255,255,255,.92);margin:0 auto 22px;max-width:52ch}
.closing.cb{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.closing.b1{background:#fff;color:var(--brand-d);font-weight:700;padding:13px 26px;border-radius:11px}
.closing.b2{background:rgba(255,255,255,.15);color:#fff;font-weight:700;padding:13px 26px;border-radius:11px;border:1.5px solid rgba(255,255,255,.6)}
.closing.b1:hover,.closing.b2:hover{text-decoration:none;opacity:.94}
.related{padding:28px 0 6px}.related h2{font-size:1.15rem;margin:0 0 14px}
.rel{display:flex;flex-wrap:wrap;gap:9px}
.rel a{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-size:.86rem;color:var(--ink);font-weight:500}
.rel a:hover{background:var(--soft2);text-decoration:none}







@media(max-width:640px){.hero h1{font-size:1.85rem}.content ul.skills{grid-template-columns:1fr}.hero-actions.btn{width:100%;justify-content:center}
.strip{flex-direction:column;align-items:stretch}.strip.btn-w{width:100%;text-align:center}
.buildcard{flex-direction:column;text-align:center}.buildcard.btn{margin-left:0;width:100%;justify-content:center}
.closing{padding:28px 20px}.closing.cb{flex-direction:column}.closing.b1,.closing.b2{width:100%}}

/* ---- site header compatibility ---- */
/* overflow-x:hidden on both html and body makes body a scroll container,
   which stops the site's sticky header (partials.nav) from sticking. clip
   hides horizontal overflow exactly the same way without that side effect. */
body{overflow-x:clip}
