/* Talvemo public site v5.3. Isolated from the editor and document renderer.
   Colors inherit the approved v5.1 high-contrast text tokens. */
:root { --site-accent:#24645e; --site-accent-dark:#194d46; --site-sage:#edf3ef; --site-line:#dce5de; --site-cream:#f7f7f0; --site-radius:12px; font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif; font-synthesis:none; -webkit-font-smoothing:antialiased; color:var(--ui-text); background:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:108px; }
body { margin:0; font-size:16px; line-height:1.6; }
[hidden] { display:none!important; }
a { color:inherit; }
button { font:inherit; cursor:pointer; }
button,a,summary { -webkit-tap-highlight-color:transparent; }
button { transition:background .18s, border-color .18s, color .18s; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid var(--ui-focus); outline-offset:4px; }
img { max-width:100%; height:auto; display:block; }
svg { vertical-align:middle; flex-shrink:0; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { line-height:1.18; font-weight:730; letter-spacing:-.035em; color:var(--ui-text); }
p { color:var(--ui-secondary); }
.site-container { width:min(1216px,calc(100% - 96px)); margin-inline:auto; }
.site-section { padding-block:84px; }
.site-eyebrow { display:block; color:var(--ui-secondary); font-weight:700; font-size:11px; letter-spacing:1.8px; line-height:1.65; }
.site-button { min-height:52px; display:inline-flex; justify-content:center; align-items:center; gap:15px; border:1px solid transparent; border-radius:7px; padding:13px 23px; font-size:15px; font-weight:650; line-height:1.45; text-decoration:none; transition:background .18s, border-color .18s, box-shadow .18s; }
.site-button-primary { background:var(--site-accent); color:#fff; box-shadow:0 3px 6px #193b3310; }
.site-button-primary:hover { background:var(--site-accent-dark); box-shadow:0 4px 12px #193b3324; }
.site-button-outline { background:#fff; color:var(--ui-text); border-color:#a2b1a7; }
.site-button-outline:hover { background:#f0f5f1; border-color:var(--site-accent); }
.site-button-small { min-height:43px; font-size:13px; padding:10px 16px; gap:10px; }
.site-text-link { display:inline-flex; align-items:center; gap:9px; background:none; border:0; padding:0; font-size:14px; font-weight:650; color:var(--ui-link); text-decoration:none; line-height:1.5; }
.site-text-link:hover { color:#143f37; text-decoration:underline; text-underline-offset:4px; }
.site-icon-button { display:inline-flex; align-items:center; justify-content:center; background:#fff; color:var(--ui-text); border:1px solid var(--site-line); border-radius:50%; width:40px; height:40px; }
.site-icon-button:hover { background:var(--site-sage); }
.site-skip { position:fixed; top:10px; left:15px; transform:translateY(-150%); z-index:100; background:var(--site-accent-dark); color:#fff; border-radius:4px; padding:12px 18px; }
.site-skip:focus { transform:none; }
#main:focus { outline:none; }
.site-header { height:82px; background:#fffffffa; border-bottom:1px solid #e5ebe6; position:sticky; top:0; z-index:30; }
.site-header-inner { height:100%; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.site-brand { display:inline-flex; align-items:center; gap:10px; text-decoration:none; white-space:nowrap; flex-shrink:0; }
.site-wordmark { font-size:30px; font-weight:760; line-height:1; letter-spacing:-1.4px; }
.site-wordmark > span { color:var(--site-accent); }
.site-brand-mark { display:grid; grid-template-columns:9px 9px; grid-template-rows:9px 9px 9px; gap:3px; }
.site-brand-mark i { display:block; background:var(--site-accent); border-radius:2px; }
.site-brand-mark i:first-child { grid-column:1/3; }
.site-brand-mark i:nth-child(2) { grid-column:1/3; width:17px; }
.site-brand-mark i:nth-child(3) { grid-column:1; width:8px; }
.site-brand-label { font-size:9px; line-height:1.4; letter-spacing:1px; font-weight:650; color:var(--ui-muted); margin-left:1px; padding-left:10px; border-left:1px solid var(--site-line); }
.site-menu { display:flex; align-items:center; flex:1; justify-content:space-between; gap:22px; }
.site-nav { display:flex; align-items:center; gap:27px; margin-inline:auto; }
.site-nav a { color:var(--ui-secondary); font-size:13px; font-weight:550; text-decoration:none; position:relative; }
.site-nav a:hover,.site-nav a[aria-current="page"] { color:var(--site-accent-dark); }
.site-nav a[aria-current="page"]::after { content:""; position:absolute; height:2px; left:0; right:0; bottom:-8px; background:var(--site-accent); }
.site-header-actions { display:flex; align-items:center; gap:23px; flex-shrink:0; }
.site-resumes-link { display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; text-decoration:none; color:var(--ui-secondary); }
.site-resumes-link:hover { color:var(--site-accent); text-decoration:underline; text-underline-offset:4px; }
.site-menu-toggle { display:none; align-items:center; justify-content:center; height:44px; width:44px; border:1px solid var(--site-line); background:#fff; border-radius:7px; color:var(--ui-text); }
.site-hero { background:linear-gradient(115deg,#fff 24%,#f7faf7 100%); overflow:hidden; }
.site-hero-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; padding-block:55px 48px; min-height:622px; }
.site-hero-copy { padding-bottom:7px; z-index:1; }
.site-hero-eyebrow { display:flex; align-items:center; gap:9px; font-size:10.5px; letter-spacing:1.6px; margin-bottom:23px; }
.site-hero-eyebrow > span { display:block; width:6px; height:6px; background:var(--site-accent); border-radius:50%; }
.site-hero h1 { font-size:clamp(48px,4.7vw,67px); line-height:1.075; letter-spacing:-.052em; }
.site-hero h1 > span,.site-catalog-header h1 > span { color:var(--site-accent); }
.site-hero-description { margin-top:23px; font-size:18px; max-width:475px; line-height:1.7; }
.site-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:31px; }
.site-hero-checks { display:flex; gap:18px; flex-wrap:wrap; margin-top:18px; }
.site-hero-checks > span { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; color:var(--ui-secondary); }
.site-hero-checks svg { color:var(--site-accent); }
.site-return-slot { min-height:34px; padding-top:12px; }
.site-return-link { display:inline-flex; align-items:center; gap:8px; color:var(--ui-link); font-size:12px; font-weight:600; text-decoration:none; }
.site-return-link:hover { text-decoration:underline; text-underline-offset:3px; }
.site-hero-visual { min-width:0; position:relative; height:510px; }
.site-hero-orbit { position:absolute; background:#e8f0e9; border-radius:46% 45% 42% 46%; width:96%; height:85%; left:2%; top:7%; transform:rotate(-9deg); }
.site-hero-orbit::after { content:""; position:absolute; width:106%; height:108%; border:1px solid #dae6dc; border-radius:48%; top:-3%; left:-3%; transform:rotate(22deg); }
.site-hero-dot-grid { position:absolute; right:-7px; top:18px; width:77px; height:63px; background-image:radial-gradient(#b7cbbf 1.3px,transparent 1.3px); background-size:11px 11px; }
.site-hero-paper { position:absolute; border:1px solid #dbe2dd; background:#fff; border-radius:2px; box-shadow:0 12px 34px #1b3a3521; overflow:hidden; }
.site-hero-paper-back { width:49%; top:59px; left:3%; transform:rotate(-10deg); box-shadow:0 9px 28px #1b3a351c; }
.site-hero-paper-front { width:60%; max-width:351px; top:4px; right:4%; transform:rotate(5deg); transition:transform .25s; text-decoration:none; }
.site-hero-paper-front:hover { transform:rotate(3deg) translateY(-3px); }
.site-hero-paper-caption { display:flex; justify-content:space-between; align-items:center; padding:10px 13px; background:#fff; border-top:1px solid var(--site-line); font-size:9px; font-weight:750; letter-spacing:1.3px; color:var(--ui-text); }
.site-hero-paper-caption > span { display:flex; align-items:center; gap:7px; font-size:9px; font-weight:450; letter-spacing:0; color:var(--ui-secondary); }
.site-hero-note { position:absolute; bottom:69px; left:0; display:flex; gap:11px; align-items:center; padding:15px 19px; background:#fff; border:1px solid #dce5de; border-radius:9px; box-shadow:0 10px 28px #29443712; }
.site-note-icon { display:flex; align-items:center; justify-content:center; width:37px; height:37px; border-radius:50%; background:#e8f1eb; color:var(--ui-link); }
.site-hero-note strong { display:block; color:var(--ui-text); font-size:13px; font-weight:700; }
.site-hero-note div > span { display:block; color:var(--ui-secondary); font-size:10.5px; margin-top:1px; }
.site-hero-caption { position:absolute; inset:auto 0 3px; text-align:center; color:var(--ui-muted); font-size:10px; }
.site-value-strip { background:#f6f8f5; border-block:1px solid #e3e9e2; }
.site-values { display:grid; grid-template-columns:repeat(4,1fr); padding-block:27px; }
.site-values > div { display:flex; align-items:center; justify-content:center; gap:17px; padding-inline:23px; border-left:1px solid #d9e2d8; }
.site-values > div:first-child { border:0; padding-left:0; justify-content:flex-start; }
.site-values > div:last-child { padding-right:0; }
.site-values strong { font-size:30px; line-height:1.2; font-weight:600; letter-spacing:-1px; }
.site-values .site-value-format { font-size:17px; white-space:nowrap; letter-spacing:-.5px; }
.site-values > div > span:not(.site-value-icon) { font-size:11.5px; color:var(--ui-secondary); line-height:1.6; }
.site-value-icon { display:flex; width:36px; height:36px; align-items:center; justify-content:center; border:1px solid #9fb8a9; border-radius:50%; color:var(--ui-link); flex-shrink:0; }
.site-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:35px; margin-bottom:32px; }
.site-section-heading h2,.site-centered-heading h2,.site-why h2,.site-formats h2,.site-faq h2 { font-size:36px; margin-top:13px; letter-spacing:-1.3px; }
.site-section-heading p,.site-centered-heading p { margin-top:14px; font-size:15px; }
.site-section-heading > .site-text-link { flex-shrink:0; margin-bottom:4px; }
.site-template-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.site-template-card { min-width:0; }
.site-template-preview { display:block; position:relative; border-radius:9px; padding:23px 23px 17px; background:#f0f3ef; border:1px solid #e5e9e3; aspect-ratio:.74; overflow:hidden; text-decoration:none; }
.site-template-preview img { width:100%; box-shadow:0 4px 12px #223c3219; transition:transform .22s, box-shadow .22s; }
.site-template-preview:hover img { transform:translateY(-4px); box-shadow:0 8px 19px #223c3226; }
.site-template-hudson { background:#ecf1ee; }
.site-template-evergreen { background:#e5eee7; }
.site-template-nova { background:#f2f2e8; }
.site-template-bloom { background:#f1edf5; }
.site-preview-affordance { position:absolute; right:11px; bottom:10px; display:flex; align-items:center; gap:5px; padding:5px 8px; border:1px solid #d8e1d9; border-radius:4px; background:#fff; font-size:10px; font-weight:600; color:var(--ui-secondary); box-shadow:0 2px 5px #10251908; }
.site-template-meta { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; margin-top:17px; }
.site-template-meta h3 { font-size:19px; line-height:1.25; letter-spacing:-.5px; }
.site-template-meta p { font-size:12px; margin-top:4px; }
.site-column-label { display:flex; align-items:center; gap:4px; font-size:10px; color:var(--ui-muted); white-space:nowrap; margin-top:5px; }
.site-template-use { display:flex; justify-content:space-between; width:100%; background:#fff; border-color:#b5c5b8; color:var(--ui-link); margin-top:16px; font-size:12px; min-height:42px; padding:10px 14px; }
.site-template-use:hover { background:var(--site-sage); border-color:var(--site-accent); }
.site-collection-note { display:flex; align-items:flex-start; justify-content:center; gap:7px; font-size:11px; color:var(--ui-muted); margin-top:25px; }
.site-collection-note svg { margin-top:1px; }
.site-how { background:#f6f8f4; border-block:1px solid #e5ebe3; }
.site-centered-heading { text-align:center; }
.site-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px; margin-top:39px; }
.site-process-top { display:flex; align-items:center; gap:16px; margin-bottom:23px; }
.site-process-top > span:first-child { font-size:27px; line-height:1.2; color:var(--site-accent); font-weight:450; letter-spacing:-1px; }
.site-process-rule { background:#d7e2d9; height:1px; flex:1; }
.site-process-card h3 { font-size:23px; letter-spacing:-.6px; }
.site-process-card > p { font-size:14px; line-height:1.75; margin-top:12px; min-height:74px; }
.site-mini-form,.site-mini-style,.site-mini-files { height:144px; margin-top:23px; padding:20px; background:#fff; border:1px solid #dce5dd; border-radius:8px; box-shadow:0 5px 15px #243c3005; }
.site-mini-form > span:first-child,.site-mini-style > span { display:block; font-size:8.5px; letter-spacing:1px; color:var(--ui-muted); font-weight:650; }
.site-mini-form > div { display:flex; gap:10px; margin-top:9px; }
.site-mini-form > div > div { flex:1; min-width:0; }
.site-mini-form small { display:block; font-size:9px; color:var(--ui-secondary); }
.site-mini-form strong { display:block; border:1px solid #bccbbe; border-radius:4px; padding:5px 9px; margin-top:3px; color:var(--ui-text); font-size:11px; font-weight:500; background:#f8faf7; }
.site-mini-saved { display:flex; align-items:center; gap:4px; font-size:8px; color:var(--ui-link); margin-top:8px; }
.site-mini-style-row { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:13px; padding-bottom:10px; border-bottom:1px solid var(--site-line); }
.site-mini-style-row strong { font-size:15px; font-weight:600; }
.site-mini-style-row > span { display:flex; align-items:center; gap:8px; font-size:9px; color:var(--ui-secondary); }
.site-mini-swatches { display:flex; align-items:center; gap:6px; margin-top:12px; }
.site-mini-swatches i { width:15px; height:15px; border-radius:50%; background:#24645e; flex-shrink:0; }
.site-mini-swatches i:first-child { outline:1px solid #24645e; outline-offset:2px; margin-right:2px; }
.site-mini-swatches i:nth-child(2) { background:#2b4b73; }
.site-mini-swatches i:nth-child(3) { background:#a2785c; }
.site-mini-swatches i:nth-child(4) { background:#222e27; }
.site-mini-swatches span { color:var(--ui-muted); font-size:8px; margin-left:auto; }
.site-mini-files { display:flex; flex-direction:column; gap:12px; justify-content:center; }
.site-mini-files > div { display:flex; align-items:center; gap:9px; }
.site-mini-files > div > span:nth-child(2) { flex:1; }
.site-mini-files strong { display:block; font-size:11px; font-weight:600; }
.site-mini-files small { display:block; font-size:9px; color:var(--ui-muted); }
.site-mini-files > div > svg { color:var(--ui-secondary); }
.site-file-icon { width:33px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:4px; }
.site-pdf-icon { background:#f7ede5; color:#82492f; }
.site-word-icon { background:#e8eef8; color:#355780; }
.site-centered-action { display:flex; align-items:center; flex-direction:column; gap:11px; margin-top:35px; }
.site-centered-action > span { font-size:11px; color:var(--ui-muted); }
.site-why { display:grid; grid-template-columns:1fr 1fr; gap:94px; align-items:center; }
.site-why h2 { font-size:40px; }
.site-section-intro { font-size:15px; line-height:1.75; margin-top:19px; }
.site-benefits { display:flex; flex-direction:column; gap:25px; margin-block:32px; }
.site-benefits > div { display:flex; align-items:flex-start; gap:14px; }
.site-benefits > div > span { display:flex; align-items:center; justify-content:center; width:40px; height:40px; flex-shrink:0; border:1px solid #dce6dd; border-radius:9px; background:#f4f8f3; color:var(--ui-link); }
.site-benefits h3 { font-size:16px; letter-spacing:-.3px; line-height:1.4; }
.site-benefits p { font-size:13px; line-height:1.75; margin-top:5px; max-width:370px; }
.site-layout-demo { padding:27px 32px 19px; border:1px solid #dce6dc; border-radius:13px; background:#edf3ec; }
.site-layout-demo-top { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.site-layout-demo-top .site-eyebrow { font-size:8.5px; letter-spacing:1.3px; }
.site-demo-interactive { display:inline-flex; align-items:center; gap:4px; color:var(--ui-link); font-size:10px; font-weight:650; white-space:nowrap; }
.site-style-switcher { display:flex; border:1px solid #b8cabc; padding:4px; border-radius:6px; margin-top:16px; gap:4px; background:#f7faf6; }
.site-style-switcher button { flex:1; min-width:0; color:var(--ui-secondary); border:0; border-radius:4px; background:transparent; padding:8px 5px; font-size:12px; font-weight:600; }
.site-style-switcher button:hover { background:#e3ece3; }
.site-style-switcher button[aria-pressed="true"] { background:var(--site-accent); color:#fff; box-shadow:0 2px 4px #1f45391a; }
.site-demo-paper { position:relative; display:block; width:72%; margin:23px auto 20px; box-shadow:0 7px 20px #213b331c; border:1px solid #d5e0d5; background:#fff; }
.site-demo-paper img { width:100%; }
.site-demo-paper > span { position:absolute; bottom:8px; right:8px; display:flex; align-items:center; justify-content:center; border:1px solid #dbe3da; border-radius:3px; width:28px; height:28px; background:#fff; color:var(--ui-link); }
.site-demo-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.site-demo-bottom p { font-size:10px; }
.site-demo-bottom p strong { color:var(--ui-text); }
.site-demo-bottom .site-text-link { font-size:11px; }
.site-demo-disclaimer { font-size:9px; margin-top:8px; color:var(--ui-muted); text-align:center; }
.site-formats { background:#f8f7f0; border-block:1px solid #e8e8dc; padding-block:48px; }
.site-formats-grid { display:grid; grid-template-columns:1fr 1.5fr; gap:80px; align-items:center; }
.site-formats h2 { font-size:31px; }
.site-formats-grid > div:first-child > p { margin-top:15px; font-size:14px; max-width:330px; line-height:1.7; }
.site-format-options { display:grid; grid-template-columns:repeat(2,1fr); gap:21px; }
.site-format-options article { background:#fff; border:1px solid #e3e3d5; border-radius:9px; padding:23px; }
.site-format-badge { display:inline-flex; align-items:center; justify-content:center; padding:5px 9px; font-size:10px; font-weight:750; letter-spacing:.5px; border-radius:4px; }
.site-format-options h3 { font-size:16px; margin-top:14px; line-height:1.3; letter-spacing:-.3px; }
.site-format-options p { font-size:12px; margin-top:8px; line-height:1.7; }
.site-format-note { display:flex; align-items:flex-start; gap:6px; color:var(--ui-muted); font-size:10px; margin-top:13px; }
.site-format-note svg { margin-top:1px; }
.site-faq { display:grid; grid-template-columns:.85fr 1.3fr; gap:85px; }
.site-faq h2 { font-size:33px; }
.site-faq-heading > p { font-size:14px; margin-top:19px; }
.site-faq-heading > .site-text-link { margin-top:23px; font-size:12px; }
.site-faq-item { border-bottom:1px solid var(--site-line); }
.site-faq-item:first-child { border-top:1px solid var(--site-line); }
.site-faq-item summary { display:flex; justify-content:space-between; align-items:center; gap:25px; cursor:pointer; padding:20px 0; font-size:14px; font-weight:600; color:var(--ui-text); list-style:none; }
.site-faq-item summary::-webkit-details-marker { display:none; }
.site-faq-item summary > span { display:flex; align-items:center; justify-content:center; flex-shrink:0; width:24px; height:24px; border:1px solid #c9d6cb; border-radius:50%; color:var(--ui-link); }
.site-faq-item summary:hover { color:var(--site-accent); }
.site-faq-item[open] summary > span { transform:rotate(45deg); }
.site-faq-item > p { font-size:13px; line-height:1.8; padding:0 38px 22px 0; }
.site-final-wrap { padding-bottom:70px; }
.site-final { display:flex; align-items:center; justify-content:space-between; gap:35px; background:#1b493f; color:#fff; border:1px solid #173e35; border-radius:13px; padding:48px 55px; position:relative; overflow:hidden; }
.site-final::after { content:""; pointer-events:none; position:absolute; width:420px; height:420px; border:1px solid #ffffff12; border-radius:50%; right:-65px; top:-180px; }
.site-final .site-eyebrow { color:#e1ebe4; font-size:9px; letter-spacing:1.6px; }
.site-final h2 { color:#fff; font-size:37px; line-height:1.2; letter-spacing:-1px; margin-top:13px; }
.site-final p { color:#e1ebe4; font-size:13px; margin-top:15px; }
.site-final-actions { display:flex; flex-direction:column; align-items:center; gap:14px; min-width:208px; position:relative; z-index:1; }
.site-final-actions .site-button { background:#fff; color:#194c3e; box-shadow:none; width:100%; }
.site-final-actions .site-button:hover { background:#e9f1e7; }
.site-final-secondary { display:inline-flex; align-items:center; gap:8px; text-decoration:none; font-size:12px; color:#fff; font-weight:550; }
.site-final-secondary:hover { text-decoration:underline; text-underline-offset:4px; }
.site-final a:focus-visible { outline-color:#fff; }
.site-footer { background:#f8faf7; border-top:1px solid #e4eae1; }
.site-footer-main { display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:50px; padding-block:45px 39px; }
.site-footer-brand p { font-size:12px; line-height:1.8; margin-top:17px; }
.site-footer nav h2 { font-size:12px; font-weight:700; line-height:1.5; letter-spacing:0; margin:2px 0 13px; }
.site-footer nav a { display:block; text-decoration:none; color:var(--ui-secondary); font-size:12px; line-height:1.6; margin-top:9px; }
.site-footer nav a:hover { color:var(--site-accent); text-decoration:underline; text-underline-offset:3px; }
.site-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:19px; border-top:1px solid #dfe7dc; }
.site-footer-bottom p,.site-footer-bottom > span,.site-footer-bottom button { font-size:10px; color:var(--ui-muted); }
.site-footer-bottom button { font-weight:500; }
.site-catalog-header { background:#f3f7f1; padding-block:32px 48px; border-bottom:1px solid #e1e8dc; }
.site-back-link { display:flex; align-items:center; gap:7px; width:fit-content; color:var(--ui-secondary); font-size:11px; text-decoration:none; margin-bottom:28px; }
.site-back-link:hover { text-decoration:underline; }
.site-catalog-header h1 { font-size:52px; line-height:1.1; letter-spacing:-2px; margin-top:14px; }
.site-catalog-header p { font-size:15px; margin-top:21px; line-height:1.8; }
.site-catalog { padding-top:38px; }
.site-catalog-tools { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:31px; }
.site-catalog-tools > p { font-size:12px; color:var(--ui-muted); }
.site-catalog-filters { display:flex; gap:8px; flex-wrap:wrap; }
.site-catalog-filters a { display:block; border:1px solid #b8c9bc; border-radius:5px; background:#fff; color:var(--ui-secondary); padding:9px 16px; font-weight:600; text-decoration:none; font-size:12px; }
.site-catalog-filters a:hover { background:var(--site-sage); }
.site-catalog-filters a[aria-current="true"] { color:#fff; background:var(--site-accent); border-color:var(--site-accent); }
.site-catalog .site-template-grid { row-gap:38px; }
.site-dialog { border:1px solid #c8d6cd; width:min(945px,calc(100% - 48px)); max-height:90vh; max-height:90dvh; padding:0; border-radius:13px; color:var(--ui-text); background:#fff; box-shadow:0 20px 80px #162c3a30; overscroll-behavior:contain; }
.site-dialog::backdrop { background:#182c26a3; }
.site-dialog-open { overflow:hidden; }
.site-dialog-top { display:flex; align-items:center; justify-content:space-between; padding:15px 22px; gap:20px; border-bottom:1px solid var(--site-line); position:sticky; top:0; background:#fff; z-index:2; }
.site-dialog-top .site-eyebrow { font-size:10px; }
.site-dialog-preview { display:grid; grid-template-columns:1.2fr 1fr; }
.site-dialog-image { padding:29px; background:#eef3eb; }
.site-dialog-image img { width:100%; box-shadow:0 7px 23px #24392e21; }
.site-dialog-copy { padding:37px 31px; align-self:center; }
.site-dialog-copy .site-eyebrow { font-size:10px; letter-spacing:1px; }
.site-dialog-copy h2 { font-size:37px; margin:9px 0 19px; }
.site-dialog-copy > p { font-size:14px; line-height:1.8; margin-top:14px; }
.site-dialog-tags { display:flex; gap:8px; flex-wrap:wrap; margin-top:20px; }
.site-dialog-tags span { display:block; border-radius:4px; padding:5px 8px; font-size:10px; font-weight:550; color:var(--ui-secondary); background:#eef3ec; }
.site-dialog-copy .site-dialog-fit { font-size:12px; }
.site-dialog-copy .site-dialog-fit strong { display:block; color:var(--ui-text); margin-bottom:4px; font-weight:650; }
.site-dialog-copy .site-button { margin-top:26px; width:100%; font-size:14px; }
.site-dialog-copy .site-dialog-note { color:var(--ui-muted); font-size:10px; line-height:1.7; }
.site-dialog-info { padding:35px; }
.site-dialog-info h2 { font-size:30px; }
.site-dialog-info p { margin-top:19px; font-size:15px; max-width:700px; }
.site-dialog-info p strong { color:var(--ui-text); }
@media (min-width:1600px) {
  .site-hero-grid { padding-block:60px; }
}
@media (max-width:1200px) {
  .site-container { width:calc(100% - 64px); }
  .site-header-inner { gap:25px; }
  .site-nav { gap:20px; }
  .site-header-actions { gap:17px; }
  .site-header .site-brand-label { display:none; }
  .site-hero-grid { gap:32px; min-height:565px; padding-block:43px; }
  .site-hero-visual { height:459px; }
  .site-hero-description { font-size:17px; }
  .site-hero-note { bottom:61px; padding:12px; }
  .site-hero-note strong { font-size:11px; }
  .site-hero-note div > span { font-size:9px; }
  .site-hero-caption { bottom:11px; }
  .site-values > div { padding-inline:17px; gap:11px; }
  .site-values .site-value-format { font-size:14px; }
  .site-values > div > span:not(.site-value-icon) { font-size:10px; }
  .site-template-grid { gap:17px; }
  .site-template-preview { padding:18px 18px 14px; }
  .site-template-meta { flex-wrap:wrap; }
  .site-column-label { margin-top:0; }
  .site-why { gap:57px; }
  .site-why h2 { font-size:36px; }
  .site-layout-demo { padding:25px; }
  .site-steps { gap:31px; }
  .site-process-card > p { min-height:96px; }
  .site-mini-form,.site-mini-style,.site-mini-files { padding:17px; }
  .site-formats-grid { gap:48px; }
  .site-faq { gap:55px; }
}
@media (max-width:960px) {
  .site-header { height:72px; }
  .site-header-inner { flex-wrap:wrap; justify-content:space-between; gap:0; position:relative; }
  .site-header .site-brand-label { display:block; }
  .js .site-menu-toggle { display:inline-flex; }
  .site-menu { flex:0 0 100%; align-items:stretch; flex-direction:column; background:#fff; padding:20px; gap:22px; border:1px solid var(--site-line); border-radius:0 0 9px 9px; box-shadow:0 10px 15px #25453412; z-index:1; }
  .js .site-menu { position:absolute; top:71px; left:0; right:0; }
  .js .site-menu:not(.is-open) { display:none; }
  html:not(.js) .site-header { height:auto; min-height:72px; position:relative; padding-top:20px; }
  html:not(.js) .site-menu { margin-top:20px; }
  .site-nav { margin:0; flex-direction:column; align-items:flex-start; gap:20px; }
  .site-nav a { font-size:15px; }
  .site-header-actions { border-top:1px solid var(--site-line); padding-top:17px; justify-content:space-between; }
  .site-header-actions .site-button { font-size:14px; min-height:46px; }
  .site-header-actions .site-resumes-link { font-size:14px; }
  .site-hero-grid { grid-template-columns:1fr 1fr; gap:20px; min-height:510px; }
  .site-hero h1 { font-size:45px; }
  .site-hero-eyebrow { font-size:8.5px; letter-spacing:1px; }
  .site-hero-description { font-size:15px; margin-top:19px; }
  .site-hero-actions { gap:9px; margin-top:24px; }
  .site-hero-actions .site-button { padding:11px 13px; font-size:12px; gap:8px; min-height:47px; }
  .site-hero-checks { gap:7px; flex-direction:column; }
  .site-hero-visual { height:399px; }
  .site-hero-note { bottom:44px; left:-8px; }
  .site-hero-note div > span { font-size:9px; }
  .site-hero-note strong { font-size:10px; }
  .site-note-icon { width:29px; height:29px; }
  .site-hero-paper-front { top:21px; width:63%; right:1%; }
  .site-hero-paper-back { top:60px; width:52%; left:0; }
  .site-hero-paper-caption { padding:8px; font-size:8px; letter-spacing:.7px; }
  .site-hero-paper-caption > span { font-size:7px; gap:4px; }
  .site-hero-orbit { top:10%; height:80%; }
  .site-hero-caption { font-size:8px; bottom:2px; }
  .site-hero-dot-grid { right:-10px; top:13px; }
  .site-values { padding-block:23px; }
  .site-values > div { padding-inline:11px; gap:9px; }
  .site-values strong { font-size:26px; }
  .site-values .site-value-format { font-size:12px; }
  .site-values > div > span:not(.site-value-icon) { font-size:9px; }
  .site-value-icon { width:28px; height:28px; }
  .site-value-icon svg { width:19px; }
  .site-section { padding-block:63px; }
  .site-section-heading h2,.site-centered-heading h2 { font-size:29px; }
  .site-section-heading { align-items:flex-start; flex-direction:column; gap:15px; }
  .site-section-heading p,.site-centered-heading p { font-size:14px; }
  .site-template-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 23px; }
  .site-template-preview { padding:25px; aspect-ratio:.83; }
  .site-template-meta { flex-wrap:nowrap; }
  .site-column-label { font-size:10px; margin-top:4px; }
  .site-template-use { font-size:13px; }
  .site-steps { gap:21px; }
  .site-process-card h3 { font-size:21px; }
  .site-process-card > p { font-size:13px; min-height:114px; }
  .site-mini-form,.site-mini-style,.site-mini-files { padding:14px; }
  .site-mini-style-row { align-items:flex-start; }
  .site-mini-style-row > span { font-size:8px; gap:3px; }
  .site-mini-style-row strong { font-size:13px; }
  .site-mini-swatches span { display:none; }
  .site-why { gap:34px; }
  .site-why h2 { font-size:30px; }
  .site-why .site-eyebrow { font-size:9px; letter-spacing:1px; }
  .site-section-intro { font-size:13px; }
  .site-benefits { gap:21px; margin-block:25px; }
  .site-benefits > div { gap:10px; }
  .site-benefits > div > span { width:32px; height:32px; border-radius:6px; }
  .site-benefits > div > span svg { width:17px; }
  .site-benefits h3 { font-size:14px; }
  .site-benefits p { font-size:12px; }
  .site-layout-demo { padding:23px 18px 15px; }
  .site-layout-demo-top { gap:7px; }
  .site-layout-demo-top .site-eyebrow { font-size:8px; letter-spacing:.5px; }
  .site-demo-interactive { font-size:9px; }
  .site-demo-paper { width:88%; }
  .site-demo-bottom { flex-wrap:wrap; }
  .site-demo-disclaimer { font-size:8px; }
  .site-formats-grid { gap:35px; grid-template-columns:1fr 1.5fr; }
  .site-formats h2 { font-size:28px; }
  .site-format-options { gap:12px; }
  .site-format-options article { padding:17px; }
  .site-format-options h3 { font-size:14px; }
  .site-format-options p { font-size:11px; }
  .site-faq { gap:35px; grid-template-columns:.85fr 1.25fr; }
  .site-faq h2 { font-size:28px; }
  .site-faq-item summary { font-size:13px; gap:12px; }
  .site-faq-heading > .site-text-link { align-items:flex-start; }
  .site-final { padding:35px; }
  .site-final h2 { font-size:29px; }
  .site-final-actions { min-width:181px; }
  .site-final p { font-size:12px; }
  .site-final-actions .site-button { font-size:13px; padding-inline:17px; }
  .site-footer-main { gap:25px; }
  .site-footer-main .site-brand-label { display:none; }
}
@media (max-width:640px) {
  html { scroll-padding-top:90px; }
  .site-container { width:calc(100% - 40px); }
  .site-header { height:70px; }
  .site-wordmark { font-size:28px; }
  .site-brand-label { font-size:8px; }
  .site-brand-mark { transform:scale(.9); transform-origin:left center; margin-right:-2px; }
  .js .site-menu { top:69px; }
  .site-hero-grid { display:flex; flex-direction:column; gap:10px; padding-top:37px; padding-bottom:25px; }
  .site-hero-copy { width:100%; padding:0; }
  .site-hero-eyebrow { font-size:9px; letter-spacing:1.25px; margin-bottom:17px; }
  .site-hero h1 { font-size:clamp(39px,10.5vw,58px); line-height:1.1; letter-spacing:-1.9px; }
  .site-hero-description { font-size:15px; line-height:1.75; max-width:100%; margin-top:18px; }
  .site-hero-actions { flex-wrap:nowrap; gap:10px; margin-top:24px; }
  .site-hero-actions .site-button { flex:1; font-size:12px; min-height:49px; padding:12px 9px; gap:7px; }
  .site-hero-actions .site-button svg { width:16px; }
  .site-hero-checks { flex-direction:row; gap:11px; margin-top:14px; }
  .site-hero-checks > span { font-size:9px; gap:4px; }
  .site-hero-checks svg { width:12px; height:12px; }
  .site-return-slot { min-height:23px; padding-top:11px; }
  .site-return-link { font-size:11px; gap:5px; }
  .site-return-link > svg:last-child { width:14px; }
  .site-hero-visual { width:min(100%,440px); height:auto; aspect-ratio:1.03; align-self:center; margin-top:9px; }
  .site-hero-orbit { top:3%; height:88%; width:96%; }
  .site-hero-paper-front { top:1%; right:5%; width:57%; }
  .site-hero-paper-back { width:49%; top:10%; left:5%; }
  .site-hero-dot-grid { right:0; top:0; width:56px; height:44px; }
  .site-hero-note { bottom:14%; left:1%; padding:10px; gap:7px; }
  .site-hero-note strong { font-size:10px; }
  .site-hero-note div > span { font-size:8px; }
  .site-hero-caption { inset:auto 0 1%; font-size:8px; }
  .site-hero-paper-caption { padding:7px 9px; font-size:7px; }
  .site-hero-paper-caption > span { font-size:7px; }
  .site-hero-paper-caption > span svg { width:10px; }
  .site-values { grid-template-columns:repeat(2,1fr); padding-block:17px; row-gap:23px; }
  .site-values > div { justify-content:flex-start; padding-left:17px; gap:12px; }
  .site-values > div:first-child,.site-values > div:nth-child(3) { border-left:0; padding-left:0; }
  .site-values strong { min-width:33px; font-size:27px; }
  .site-values .site-value-format { min-width:auto; font-size:12px; }
  .site-values > div > span:not(.site-value-icon) { font-size:9px; }
  .site-values > div:nth-child(3) { flex-wrap:wrap; column-gap:8px; }
  .site-section { padding-block:48px; }
  .site-eyebrow { font-size:9px; letter-spacing:1.3px; }
  .site-section-heading { margin-bottom:25px; gap:15px; }
  .site-section-heading h2,.site-centered-heading h2 { font-size:29px; margin-top:10px; letter-spacing:-1px; }
  .site-section-heading p { font-size:13px; line-height:1.75; margin-top:12px; }
  .site-section-heading .site-text-link { font-size:12px; }
  .site-template-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:27px 13px; }
  .site-template-preview { padding:12px 10px 13px; border-radius:7px; aspect-ratio:.75; }
  .site-preview-affordance { right:6px; bottom:7px; font-size:8px; padding:3px 5px; gap:3px; }
  .site-preview-affordance svg { width:10px; height:10px; }
  .site-template-meta { flex-direction:column; gap:5px; margin-top:12px; }
  .site-template-meta h3 { font-size:18px; }
  .site-template-meta p { font-size:10px; margin-top:2px; }
  .site-column-label { font-size:9px; margin-top:0; }
  .site-column-label svg { width:11px; }
  .site-template-use { min-height:40px; margin-top:10px; padding:9px 8px; font-size:10px; gap:5px; border-radius:5px; }
  .site-template-use svg { width:14px; }
  .site-collection-note { margin-top:23px; font-size:10px; justify-content:flex-start; gap:6px; }
  .site-centered-heading { text-align:left; }
  .site-centered-heading p { font-size:13px; line-height:1.75; }
  .site-steps { grid-template-columns:1fr; gap:29px; margin-top:29px; }
  .site-process-top { margin-bottom:12px; gap:14px; }
  .site-process-top > span:first-child { font-size:24px; }
  .site-process-card h3 { font-size:23px; }
  .site-process-card > p { font-size:14px; min-height:0; margin-top:9px; line-height:1.75; }
  .site-mini-form,.site-mini-style,.site-mini-files { height:144px; max-width:100%; margin-top:17px; padding:19px 23px; }
  .site-mini-form > span:first-child,.site-mini-style > span { font-size:9px; }
  .site-mini-form small { font-size:10px; }
  .site-mini-form strong { font-size:12px; }
  .site-mini-saved { font-size:9px; }
  .site-mini-style-row strong { font-size:15px; }
  .site-mini-style-row > span { font-size:10px; }
  .site-mini-swatches span { display:block; font-size:9px; }
  .site-mini-files strong { font-size:12px; }
  .site-mini-files small { font-size:10px; }
  .site-centered-action { margin-top:27px; }
  .site-centered-action > .site-button { width:100%; }
  .site-why { grid-template-columns:1fr; gap:32px; }
  .site-why h2 { font-size:31px; }
  .site-section-intro { font-size:14px; margin-top:15px; }
  .site-benefits { margin-block:26px; gap:23px; }
  .site-benefits h3 { font-size:15px; }
  .site-benefits p { font-size:13px; }
  .site-benefits > div { gap:12px; }
  .site-benefits > div > span { width:36px; height:36px; }
  .site-why-copy > .site-text-link { font-size:13px; }
  .site-layout-demo { padding:22px 20px 17px; }
  .site-layout-demo-top .site-eyebrow { font-size:8.5px; letter-spacing:.6px; }
  .site-demo-interactive { font-size:10px; }
  .site-demo-paper { width:77%; margin-block:22px 18px; }
  .site-demo-bottom p { font-size:10px; }
  .site-demo-bottom .site-text-link { font-size:10px; }
  .site-demo-disclaimer { font-size:8px; }
  .site-formats { padding-block:36px; }
  .site-formats-grid { grid-template-columns:1fr; gap:25px; }
  .site-formats h2 { font-size:31px; }
  .site-formats-grid > div:first-child > p { max-width:100%; font-size:14px; }
  .site-format-options { gap:13px; }
  .site-format-options article { padding:18px 15px; }
  .site-format-options h3 { font-size:14px; line-height:1.4; }
  .site-format-options p { font-size:12px; }
  .site-format-note { font-size:10px; }
  .site-faq { grid-template-columns:1fr; gap:25px; }
  .site-faq h2 { font-size:31px; }
  .site-faq-heading > p { font-size:14px; margin-top:14px; }
  .site-faq-heading > .site-text-link { margin-top:15px; font-size:12px; }
  .site-faq-item summary { font-size:13px; line-height:1.6; padding-block:18px; }
  .site-faq-item > p { font-size:13px; padding-right:12px; }
  .site-final-wrap { padding-bottom:40px; }
  .site-final { flex-direction:column; align-items:stretch; padding:30px 24px; gap:24px; border-radius:10px; }
  .site-final .site-eyebrow { font-size:8px; letter-spacing:1.2px; }
  .site-final h2 { font-size:29px; letter-spacing:-.8px; }
  .site-final p { font-size:13px; line-height:1.75; }
  .site-final-actions { width:100%; }
  .site-final-actions .site-button { font-size:14px; }
  .site-final-secondary { font-size:12px; }
  .site-footer-main { grid-template-columns:repeat(2,1fr); gap:30px 17px; padding-block:32px; }
  .site-footer-brand { grid-column:1/-1; }
  .site-footer-main .site-brand-label { display:block; }
  .site-footer-brand p { margin-top:12px; font-size:12px; }
  .site-footer nav h2 { font-size:11px; }
  .site-footer nav a { font-size:11px; }
  .site-footer-bottom { flex-wrap:wrap; justify-content:flex-start; gap:12px 20px; padding-block:19px; }
  .site-footer-bottom > span { display:none; }
  .site-footer-bottom > button { margin-left:auto; font-size:9px; gap:5px; }
  .site-footer-bottom > button svg { width:13px; }
  .site-catalog-header { padding-block:22px 31px; }
  .site-catalog-header h1 { font-size:42px; }
  .site-catalog-header p { font-size:13px; }
  .site-catalog-header p br { display:none; }
  .site-catalog-tools { align-items:flex-start; flex-direction:column; gap:12px; margin-bottom:22px; }
  .site-catalog-filters { gap:6px; }
  .site-catalog-filters a { font-size:10px; padding:8px 11px; }
  .site-catalog-tools > p { font-size:11px; }
  .site-catalog { padding-top:26px; }
  .site-catalog .site-template-grid { row-gap:27px; }
  .site-dialog { width:calc(100% - 24px); max-height:93vh; max-height:93dvh; border-radius:9px; }
  .site-dialog-top { padding:9px 13px; }
  .site-dialog-top .site-eyebrow { font-size:8px; }
  .site-dialog-preview { grid-template-columns:1fr; }
  .site-dialog-image { padding:22px; }
  .site-dialog-image img { max-width:340px; margin:auto; }
  .site-dialog-copy { padding:25px; }
  .site-dialog-copy h2 { font-size:31px; }
  .site-dialog-copy > p { font-size:13px; }
  .site-dialog-copy .site-button { margin-top:20px; }
  .site-dialog-info { padding:24px; }
  .site-dialog-info h2 { font-size:25px; }
  .site-dialog-info p { font-size:13px; }
}
@media (max-width:360px) {
  .site-container { width:calc(100% - 32px); }
  .site-hero h1 { font-size:37px; }
  .site-hero-actions { gap:7px; }
  .site-hero-actions .site-button { font-size:11px; padding-inline:7px; gap:5px; }
  .site-hero-checks { gap:6px; flex-direction:column; }
  .site-hero-checks > span { font-size:10px; }
  .site-hero-paper-caption > span { font-size:6px; }
  .site-hero-note strong { font-size:9px; }
  .site-hero-note div > span { font-size:7px; }
  .site-values { column-gap:8px; }
  .site-values > div { padding-inline:11px 0; gap:8px; }
  .site-values > div > span:not(.site-value-icon) { font-size:8px; }
  .site-template-use { font-size:9px; }
  .site-template-use svg { width:12px; }
  .site-layout-demo-top .site-eyebrow { font-size:7.5px; }
  .site-demo-bottom { gap:8px; }
  .site-demo-bottom .site-text-link { font-size:9px; }
  .site-format-options { grid-template-columns:1fr; }
  .site-format-options article { padding:20px; }
  .site-footer-bottom { flex-direction:column; align-items:flex-start; }
  .site-footer-bottom > button { margin-left:0; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; animation:none!important; }
}

/* v5.5 — a deliberate two-line callout at every supported viewport. The
   type scales with its own text column, not the viewport or button column. */
.site-final-copy { flex:1; min-width:0; container-type:inline-size; }
.site-final #final-title { font-size:clamp(19px,7.7cqw,37px); line-height:1.22; letter-spacing:-.03em; }
.site-final-line { display:block; white-space:nowrap; }
