/* ToolZeroo Resume — marketing and content pages (landing, gallery, template pages, guides, examples, pro, legal). */
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}

html,body{overflow-x:clip}
/* header */
.site-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--canvas) 80%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.nav{display:flex;align-items:center;gap:24px;min-height:64px}
.brand{display:inline-flex;align-items:baseline;gap:8px;color:var(--ink);text-decoration:none;font-weight:800;font-size:1.25rem;letter-spacing:-.03em}
.brand:hover{text-decoration:none}
.brand .star{color:var(--accent)}
.brand .sub{font-weight:500;font-size:.85rem;color:var(--muted);letter-spacing:0}
.nav-links{display:flex;gap:4px;margin-left:auto;list-style:none;padding:0}
.nav-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:999px;color:var(--ink-2);font-weight:500;font-size:var(--fs-14)}
.nav-links a:hover,.nav-links a[aria-current="page"]{background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:var(--shadow-1)}
.nav-cta{margin-left:8px}
.nav-toggle{display:none;margin-left:auto}
@media (max-width:820px){
  .nav-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;background:var(--surface);border-bottom:1px solid var(--line);padding:8px var(--gutter) 16px;gap:2px;box-shadow:var(--shadow-2)}
  .nav-links.open{display:flex}
  .nav-links a{min-height:44px}
  .nav-toggle{display:inline-grid}
  .nav-cta{margin-left:0}
}

/* hero */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,80px);align-items:center;padding-block:clamp(40px,8vw,96px) clamp(32px,6vw,72px)}
.hero::before{content:"";position:absolute;inset:-64px -30vw auto -30vw;height:100%;background:radial-gradient(42% 60% at 50% 0%,var(--accent-glow),transparent 72%);pointer-events:none;z-index:-1;opacity:.8}
.hero .hero-title{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.02;max-width:12ch}
.hero .lead{margin-top:22px}
.cta-row{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap;align-items:center}
.privacy-line{margin-top:16px;font-size:var(--fs-13);color:var(--muted);display:flex;gap:8px;align-items:center}
.privacy-line::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 18%,transparent)}
.trust{display:flex;gap:10px 22px;margin-top:34px;font-size:var(--fs-13);color:var(--ink-2);flex-wrap:wrap}
.trust span{display:inline-flex;gap:7px;align-items:center}
.trust svg{width:16px;height:16px;stroke:var(--success);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.hero-stage{position:relative;perspective:1600px}
.hero-stage .sheet-frame{padding:clamp(16px,3vw,36px);background:linear-gradient(160deg,var(--desk),var(--canvas-2))}
.hero-stage .thumb{max-width:400px;margin:0 auto;transform:rotateY(-7deg) rotateX(2deg);transform-origin:70% 50%;transition:transform .8s var(--ease)}
.hero-stage:hover .thumb{transform:none}
.hero-stage .tag{position:absolute;left:22px;bottom:22px;display:flex;gap:8px;align-items:center}
.hero-stage .tag .badge{height:26px;padding:0 11px}
@media (max-width:900px){.hero{grid-template-columns:1fr}.hero-stage .thumb{transform:none;max-width:360px}}


/* sections */
.section{padding-block:clamp(40px,7vw,88px)}
.section.tight{padding-block:clamp(24px,4vw,48px)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:clamp(20px,3vw,36px);flex-wrap:wrap}
.section-head h2{font-size:clamp(1.75rem,3.5vw,2.5rem);margin-top:8px}
.section-head p{color:var(--ink-2);max-width:56ch;margin-top:10px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.step{padding:24px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);display:grid;gap:10px;align-content:start;transition:transform var(--t-med) var(--ease),box-shadow var(--t-med)}
.step:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.step .n{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;font-weight:700;font-size:var(--fs-13);font-family:var(--font-display)}
.step h3{font-size:var(--fs-18)}
.step p{font-size:var(--fs-14);color:var(--ink-2)}
@media (max-width:820px){.steps{grid-template-columns:1fr}}

/* template cards */
.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.tpl-card{position:relative;display:grid;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease),box-shadow var(--t-med),border-color var(--t-med);color:inherit;text-decoration:none}
.tpl-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2);border-color:var(--line-2);text-decoration:none}
.tpl-card .thumb{box-shadow:0 1px 2px rgb(20 23 27 / .08),0 10px 24px -12px rgb(20 23 27 / .35)}
.tpl-card .meta{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tpl-card .meta b{font-size:var(--fs-16);font-weight:600}
.tpl-card .desc{font-size:var(--fs-13);color:var(--muted);line-height:1.45;min-height:2.9em}
.tpl-card .acts{display:flex;gap:8px}
.tpl-card .acts .btn{flex:1;min-height:40px;padding:0 10px;font-size:var(--fs-13)}
.tpl-card .facts{display:flex;gap:6px;flex-wrap:wrap}
.tpl-card .facts span{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}
.tpl-card .pro-note{font-size:var(--fs-12);color:var(--muted)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}

/* honest pricing */
.honest{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.honest .col{padding:28px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);display:grid;gap:12px;align-content:start;box-shadow:var(--shadow-1)}
.honest .col.pro{border-color:color-mix(in srgb,var(--gold) 55%,var(--line));background:linear-gradient(180deg,var(--gold-soft),var(--surface) 40%)}
.honest h3{font-size:var(--fs-24);display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;font-family:var(--font-display);font-weight:600}
.honest .price{font-size:var(--fs-14);font-weight:600;color:var(--ink-2)}
.honest ul{margin:0;padding:0;list-style:none;display:grid;gap:9px;font-size:var(--fs-14);color:var(--ink-2)}
.honest li{display:flex;gap:10px;align-items:flex-start}
.honest li::before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--success-soft) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23177A4B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>") center/11px no-repeat}
@media (max-width:820px){.honest{grid-template-columns:1fr}}

/* feature strip */
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.feature{display:grid;gap:8px;padding:20px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line)}
.feature h3{font-size:var(--fs-16)}
.feature p{font-size:var(--fs-14);color:var(--ink-2)}
.feature svg{width:22px;height:22px;stroke:var(--accent-text);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:900px){.features{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.features{grid-template-columns:1fr}}

/* faq */
.faq{display:grid;gap:10px;max-width:760px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:0 18px}
.faq summary{cursor:pointer;list-style:none;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--muted);font-weight:400;transition:transform var(--t-fast)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:16px;color:var(--ink-2);font-size:var(--fs-14)}

/* CTA band */
.band{border-radius:var(--r-xl);padding:clamp(28px,5vw,56px);background:var(--ink);color:var(--canvas);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;position:relative;overflow:hidden}
.band::after{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 70%);pointer-events:none}
.band h2{font-size:clamp(1.6rem,3vw,2.4rem);font-family:var(--font-display);font-weight:500;letter-spacing:-.02em}
.band p{color:color-mix(in srgb,var(--canvas) 70%,transparent);margin-top:8px}
.band .btn-primary{position:relative}
@media (max-width:720px){.band{grid-template-columns:1fr}}

/* content pages (guides, examples, legal, template pages) */
.page-head{padding-block:clamp(32px,6vw,64px) clamp(20px,3vw,32px);display:grid;gap:12px;max-width:820px}
.page-head>h1{font-size:clamp(2rem,4.5vw,3.25rem)}
.page-head p{color:var(--ink-2);font-size:var(--fs-18)}
.crumbs{font-size:var(--fs-13);color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:var(--muted)}
.article{max-width:720px;display:grid;gap:18px;font-size:var(--fs-16);color:var(--ink-2);padding-bottom:clamp(40px,6vw,72px)}
.article h2{font-size:var(--fs-24);color:var(--ink);margin-top:14px}
.article h3{font-size:var(--fs-18);color:var(--ink)}
.article ul{margin:0;padding-left:20px;display:grid;gap:8px}
.article p strong{color:var(--ink)}
.article .tip{font-size:var(--fs-14)}
.article .warn{display:flex;gap:12px;padding:14px 16px;border-radius:var(--r-sm);background:var(--warning-soft);color:var(--ink);font-size:var(--fs-14)}
.article .warn b{color:var(--warning)}
.chip-grid{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:var(--fs-13);color:var(--ink-2)}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding-bottom:clamp(40px,6vw,72px)}
.link-card{display:grid;gap:8px;padding:22px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none;box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease),box-shadow var(--t-med)}
.link-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);text-decoration:none}
.link-card h3{font-size:var(--fs-18)}
.link-card p{font-size:var(--fs-14);color:var(--ink-2)}
.link-card .more{font-size:var(--fs-13);font-weight:600;color:var(--accent-text);margin-top:4px}
.ad-slot{margin:24px 0;min-height:90px;display:grid;place-items:center;color:var(--faint);font-size:var(--fs-12)}
.related{display:grid;gap:10px;padding:20px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line)}
.related h3{font-size:var(--fs-14);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.related ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:var(--fs-14)}

/* template detail */
.tpl-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px);align-items:start;padding-bottom:clamp(40px,6vw,72px)}
.tpl-detail .sheet-frame{position:sticky;top:84px}
.tpl-detail .thumb{max-width:560px;margin:0 auto}
.tpl-detail .spec{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;font-size:var(--fs-14);color:var(--ink-2)}
.tpl-detail .spec dt{color:var(--muted)}
.tpl-detail .spec dd{margin:0;color:var(--ink)}
@media (max-width:900px){.tpl-detail{grid-template-columns:1fr}.tpl-detail .sheet-frame{position:static}}

/* pro page */
.pro-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:start;padding-block:clamp(32px,6vw,72px)}
.price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.price b{font-size:clamp(2.6rem,6vw,4rem);font-weight:600;letter-spacing:-.03em;font-family:var(--font-display);font-variant-numeric:tabular-nums}
.price span{color:var(--ink-2);font-weight:500;max-width:30ch}
.compare{display:grid;grid-template-columns:1fr auto auto;font-size:var(--fs-14);border-top:1px solid var(--line)}
.compare>div{padding:11px 0;border-bottom:1px solid var(--line)}
.compare .h{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.compare .c{text-align:center;padding-inline:16px;font-variant-numeric:tabular-nums}
.compare .y{color:var(--success);font-weight:700}
.compare .n{color:var(--faint)}
.pro-card{padding:28px;display:grid;gap:18px;border-radius:var(--r-xl);background:var(--surface);border:1px solid color-mix(in srgb,var(--gold) 50%,var(--line));box-shadow:var(--shadow-2);position:relative;overflow:hidden}
.pro-card::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--gold),var(--pro-ink),var(--gold))}
.pro-card>h2{font-size:var(--fs-30);font-family:var(--font-display);font-weight:500;letter-spacing:-.02em}
.unlock-card{padding:24px;display:grid;gap:14px}
.unlock-card h3{font-size:var(--fs-18)}
@media (max-width:900px){.pro-hero{grid-template-columns:1fr}}

/* footer */
.site-footer{border-top:1px solid var(--line);margin-top:clamp(40px,6vw,80px);background:var(--canvas-2)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding-block:44px 28px}
.foot-grid h4{font-size:var(--fs-12);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.foot-grid a{display:block;color:var(--ink-2);font-size:var(--fs-14);padding:4px 0}
.foot-grid p{font-size:var(--fs-14);color:var(--ink-2);max-width:34ch;margin-top:10px}
.foot-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:18px 28px;border-top:1px solid var(--line);font-size:var(--fs-13);color:var(--muted)}
.foot-bottom .network a{color:var(--muted);margin-right:14px}
@media (max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.foot-grid{grid-template-columns:1fr}}

/* theme toggle */
.theme-btn{color:var(--ink-2)}
.theme-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
