/* Generated from v2-base.css and practical.css. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/inter.woff2') format('woff2')}
:root{--ink:#202a35;--muted:#6d7783;--blue:#3a617f;--line:#e1e6ec;--soft:#eef3f7;--paper:#fff;--bg:#f8f9fb;--success:#36745b;--warn:#876631;--danger:#a14242;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.55;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.7px}h1{font-size:clamp(34px,4.4vw,52px);line-height:1.13;margin-bottom:18px}h2{font-size:28px;line-height:1.25;margin-bottom:15px}h3{font-size:15px;line-height:1.6;font-weight:550}p{font-size:13px;line-height:1.8;color:var(--muted)}.site-header{max-width:1152px;padding:24px 28px;margin:auto;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.brand{font:500 30px Georgia,serif;letter-spacing:-1.3px;white-space:nowrap}.brand span{color:var(--blue)}nav{display:flex;gap:27px;font-size:12px;margin-left:auto}nav a:hover{color:var(--blue)}.preview-label{font-size:10px;padding:7px 9px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}main{min-height:68vh}.page{max-width:1096px;margin:42px auto 64px;padding:0 28px}.narrow{max-width:816px}.hero{padding:18px 0 12px;max-width:680px}.hero p{max-width:580px;font-size:15px}.eyebrow{font-size:11px;color:var(--blue);letter-spacing:.4px;margin-bottom:14px}.kicker{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted);margin-bottom:24px}.kicker i{display:inline-block;width:6px;height:6px;background:var(--success);border-radius:50%}.card{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:25px;margin-bottom:18px;min-width:0}.post-card{padding:28px}.field{display:block;font-size:12px;font-weight:500;margin:17px 0;color:var(--ink)}.field>input,.field>textarea,.field>select{width:100%;display:block;border:1px solid #d8dfe7;border-radius:5px;padding:11px 12px;margin-top:8px;background:white;color:var(--ink);font-size:13px;line-height:1.65;min-width:0}.field textarea{resize:vertical;min-height:105px}.field .description{min-height:166px;font-size:14px;line-height:1.9}.hint{display:block;font-size:11px;font-weight:400;line-height:1.75;color:var(--muted);margin-top:8px}.primary,.secondary,.quiet{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:5px;font-size:12px;line-height:1.65;font-weight:500;border:1px solid var(--blue)}.primary{background:var(--blue);color:white}.primary:hover{background:#294c67}.secondary{background:white;border-color:var(--line);color:var(--ink)}.secondary:hover,.quiet:hover{background:var(--soft)}.quiet{background:transparent;border-color:transparent;color:var(--blue);padding-left:0;padding-right:0}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.actions.between{justify-content:space-between}.examples{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.example{border:1px solid var(--line);border-radius:20px;padding:7px 11px;font-size:10px;color:var(--muted);background:white}.example:hover{border-color:var(--blue);color:var(--blue)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px;padding-top:25px;border-top:1px solid var(--line)}.steps span{font:italic 18px Georgia;color:var(--blue);display:block;margin-bottom:12px}.steps h3{margin-bottom:8px;font-size:12px}.steps p{font-size:11px}.progress{display:flex;gap:16px;margin:0 0 26px;font-size:11px;color:var(--muted)}.progress span{border-top:2px solid var(--line);flex:1;padding-top:10px}.progress .active{border-color:var(--blue);color:var(--blue)}.grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);gap:24px;align-items:start}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.two-col .field{margin:10px 0}.choices{border:0;padding:0;margin:20px 0;min-width:0}.choices legend{font-size:13px;font-weight:500;margin-bottom:12px;line-height:1.7}.choice-grid{display:flex;flex-wrap:wrap;gap:9px}.choice{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:white;padding:10px 13px;border-radius:5px;font-size:12px;line-height:1.6;cursor:pointer}.choice:has(input:checked){background:var(--soft);border-color:#8fa7ba}.choice input,.check input{accent-color:var(--blue);flex-shrink:0}.check{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.8;margin:18px 0}.check input{margin-top:4px}.day-options{gap:7px}.day-options .choice{padding:7px 9px;font-size:11px}.notice{font-size:12px;line-height:1.8;padding:14px 16px;background:var(--soft);border-radius:5px;margin:16px 0;color:var(--blue)}.notice.warning{background:#f8f1e6;color:var(--warn)}.notice.success{background:#edf6f1;color:var(--success)}.error{font-size:12px;line-height:1.7;color:var(--danger);padding:12px 0}.badge{display:inline-block;font-size:10px;line-height:1.5;padding:5px 8px;background:var(--soft);border-radius:4px;color:var(--blue)}.badge.success{color:var(--success);background:#edf6f1}.badge.warning{color:var(--warn);background:#f8f1e6}.meta{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0;color:var(--muted);font-size:11px}.requirements{white-space:pre-wrap;overflow-wrap:anywhere;color:#4e5a66;font-size:12px;line-height:1.85}.scope{border-top:1px solid var(--line);padding:16px 0 0;margin-top:16px}.scope h3{margin:0 0 7px;font-size:13px}.scope p{margin-bottom:10px}.scope small{font-size:10px;color:var(--muted)}details{margin:18px 0}summary{cursor:pointer;color:var(--blue);font-size:12px;line-height:1.7}details[open]>summary{margin-bottom:16px}.sources{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.sources a{font-size:10px;border:1px solid var(--line);padding:6px 8px;border-radius:4px;max-width:100%;overflow-wrap:anywhere}.terms{background:#f5f7f9;border:1px solid var(--line);padding:18px;border-radius:5px;font-size:12px;line-height:1.8}.terms p{font-size:12px}.top{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:26px}.top h1{font-size:36px}.top p{margin-bottom:0}.top .actions{margin-top:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:25px}.metric{border:1px solid var(--line);padding:18px;background:white;border-radius:6px}.metric strong{font:400 29px Georgia}.metric span{font-size:10px;color:var(--muted);display:block;margin-top:7px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow:auto}.tab{border:0;border-bottom:2px solid transparent;background:none;font-size:12px;color:var(--muted);padding:12px 0;white-space:nowrap}.tab.active{border-bottom-color:var(--blue);color:var(--blue)}.opportunity-title{font:400 24px/1.3 Georgia;letter-spacing:-.3px;margin:12px 0}.opportunity.highlight{border-color:var(--blue)}.opportunity .actions button{font-size:11px}.section-label{font-size:11px;color:var(--muted);margin:26px 0 14px}.small{font-size:11px;color:var(--muted);line-height:1.8}.empty{padding:35px 25px;text-align:center;border:1px dashed var(--line);border-radius:7px;background:white;font-size:13px;line-height:1.8;color:var(--muted)}.auth{max-width:480px;margin:65px auto;padding:32px}.auth h1{font-size:34px}.auth .primary{width:100%}.rows{padding:0;list-style:none}.rows li{display:flex;justify-content:space-between;align-items:start;gap:15px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.7}.rows li strong{white-space:nowrap;font-weight:500}.value{font:400 32px Georgia}.status-text{text-transform:capitalize}.slot{border:1px solid var(--line);padding:14px;border-radius:5px;margin:12px 0;background:white}.slot:has(input:checked){border-color:#93adbe;background:#f7fafc}.slot .check{margin:0 0 9px;font-size:12px;font-weight:500}.slot .field{margin:8px 0}.slot p{margin:5px 0;font-size:11px}.slot .primary{margin-top:8px}.slot-label{display:block;color:var(--blue);font-size:11px;line-height:1.8}.quote-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:14px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.quote-row .check{margin:5px 0}.quote-row .field{margin:0}.quote-row input[type=number]{padding:8px}.timeline{list-style:none;padding:0}.timeline li{border-left:2px solid var(--line);padding:0 0 19px 15px;font-size:11px;line-height:1.8}.timeline time{display:block;font-size:10px;color:var(--muted)}.email-preview{border:1px solid var(--line);background:white;padding:26px;border-radius:6px;max-width:600px}.email-brand{font:500 28px Georgia;margin-bottom:22px}.email-preview h2{font-size:25px}.email-preview p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.email-foot{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;font-size:10px!important}.mail-address{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.loading{padding:60px;text-align:center;color:var(--muted);font-size:13px}footer{max-width:1152px;padding:25px 28px;margin:auto;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}footer .brand{font-size:24px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90%;padding:13px 19px;border-radius:5px;background:var(--ink);color:white;font-size:12px;line-height:1.7;display:none;box-shadow:0 4px 20px #0002;z-index:10}#toast.visible{display:block}[hidden]{display:none!important}.spinner{display:inline-block;width:13px;height:13px;border:2px solid #ffffff50;border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:800px){.preview-label{display:none}.site-header{padding:21px 22px;gap:20px}nav{gap:18px}.grid{grid-template-columns:1fr}.page{padding:0 22px;margin-top:30px}.top{flex-direction:column;gap:16px}.top h1{font-size:32px}.hero{padding-top:10px}.hero p{font-size:13px}.steps{gap:18px}.post-card{padding:22px}.card{padding:21px}.metrics{gap:8px}.metric{padding:14px}.metric strong{font-size:25px}.metric span{font-size:9px}footer{padding:23px 22px}}
@media(max-width:500px){.brand{font-size:27px}nav{gap:15px;font-size:10px}nav a:first-child{display:none}.site-header{padding:20px}.page{padding:0 20px}.two-col{grid-template-columns:1fr;gap:0}.steps{grid-template-columns:1fr;gap:19px}.steps span{margin-bottom:5px}.steps p{margin-bottom:0}.progress{gap:9px;font-size:10px}.card{padding:18px}.post-card{padding:19px}.hero h1{font-size:37px}.hero .eyebrow{font-size:10px}.choice{font-size:11px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding:12px 9px}.metric strong{font-size:23px}.opportunity-title{font-size:23px}.quote-row{grid-template-columns:1fr;gap:5px}.auth{margin:35px 20px;padding:25px}.email-preview{padding:19px}footer span{display:none}.slot{padding:12px}.rows li{flex-wrap:wrap}.top .actions{gap:8px}}
.project-examples{margin:19px 0 22px}.examples-label{font-size:11px;line-height:1.6;margin:0 0 10px;color:var(--muted)}.project-examples .examples{margin-top:0;gap:8px}.project-examples .example{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:8px 12px;font-size:11px;color:#536575;line-height:1.6}.project-examples .example:hover{background:var(--soft);color:var(--blue)}.project-examples .example>span{color:var(--blue);font-size:14px}.example-library{margin:13px 0 0}.example-library>summary{padding:5px 0;min-height:32px;font-size:11px;list-style:none}.example-library>summary::-webkit-details-marker{display:none}.example-library>summary::before{content:'+';display:inline-block;width:17px;font-size:14px}.example-library[open]>summary::before{content:'−'}.example-library>summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}.example-count{font-size:10px;color:var(--muted);margin-left:7px}.example-library[open]>summary{margin-bottom:8px}.example-library>.hint{margin:0 0 20px;max-width:560px}.example-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px;padding-top:5px}.example-group h3{font-size:12px;margin:0 0 10px;color:var(--blue)}.example-request{width:100%;display:block;text-align:left;border:1px solid var(--line);border-radius:5px;padding:12px;margin:0 0 8px;background:#fbfcfd;color:var(--ink);line-height:1.7}.example-request:hover{background:var(--soft);border-color:#aabcc9}.example-request-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:11px;font-weight:500;margin-bottom:5px}.example-request-title>span{color:var(--blue);flex-shrink:0}.example-request-text{display:block;font-size:11px;font-weight:400;color:#64707d;line-height:1.75}
@media(max-width:500px){.project-examples .examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.project-examples .example{justify-content:space-between;text-align:left;min-height:54px;padding:9px 11px}.example-library>summary{min-height:44px;padding:12px 0}.example-groups{grid-template-columns:1fr;gap:20px}.example-request{padding:13px}.example-count{margin-left:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.spinner{animation:none}}

/* Public homepage navigation, adapted to the isolated marketplace preview. */
.skip-link{position:absolute;left:20px;top:-60px;background:var(--ink);color:white;padding:12px 18px;z-index:30;border-radius:4px}
.skip-link:focus{top:10px}
.site-header{max-width:1200px;padding:22px 32px;gap:30px}
.header-logo{display:inline-flex;align-items:center;gap:9px;font-size:20px;font-weight:600;letter-spacing:-.6px;flex-shrink:0}
.header-logo img{width:28px;height:28px;object-fit:contain}
.site-header .header-nav{gap:25px;align-items:center;margin-left:auto;font-size:12px}
.site-menu-trigger{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--line);border-radius:6px;padding:8px 13px;background:var(--paper);color:var(--ink);font-size:12px}
.site-menu-trigger:hover{background:var(--soft)}
.preview-bar{max-width:1136px;padding:11px 0;margin:auto;display:flex;align-items:center;gap:18px;color:var(--muted);font-size:10px}
.preview-bar a:first-of-type{margin-left:auto}
.preview-bar a:hover{text-decoration:underline}
.site-menu{width:calc(100% - 40px);max-width:1280px;max-height:calc(100dvh - 50px);padding:30px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);overscroll-behavior:contain}
.site-menu::backdrop{background:#1c2a3866;backdrop-filter:blur(3px)}
.menu-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.menu-top h2{margin:0;font-size:30px}
.menu-quick{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:25px;border-bottom:1px solid var(--line)}
.quick-link{border:1px solid var(--line);border-radius:5px;padding:8px 10px;font-size:11px;line-height:1.7}
.quick-link:hover{background:var(--soft)}
.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 26px;margin:28px 0}
.menu-column{margin:0;min-width:0}
.menu-column>summary{font-size:14px;color:var(--ink);font-weight:600;list-style:none;padding-bottom:12px;border-bottom:1px solid var(--line)}
.menu-column>summary::-webkit-details-marker{display:none}
.menu-column h3,.footer-column h3{font-family:Inter,Arial,sans-serif;font-size:10px;font-weight:500;letter-spacing:.3px;color:var(--muted);margin:20px 0 7px;line-height:1.6;text-transform:uppercase}
.menu-link,.footer-link{display:block;font-size:11px;line-height:1.7;padding:4px 0;overflow-wrap:anywhere}
.menu-link:hover,.footer-link:hover,.menu-bottom a:hover,.footer-bottom-links a:hover{text-decoration:underline;color:var(--blue)}
.menu-link.indent,.footer-link.indent{padding-left:10px;color:var(--muted)}
.menu-link.emphasis,.footer-link.emphasis{font-weight:500}
.menu-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-wrap:wrap;gap:15px;font-size:12px}
.home-discovery main{min-height:0}
.home-discovery .page{margin-top:25px;margin-bottom:28px}
.trust-strip{display:flex;flex-wrap:wrap;gap:8px 16px;padding:18px 0 0;margin:23px 0 10px;border-top:1px solid var(--line);list-style:none;color:#4d665c;font-size:10px;line-height:1.7}
.trust-strip li::before{content:'✓';margin-right:6px}
.marketplace-discovery{max-width:1136px;margin:0 auto;padding:0 20px}
.marketplace-discovery section{scroll-margin-top:24px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:26px}
.section-heading .eyebrow{font-size:10px;margin-bottom:12px}
.section-heading h2{font-size:34px;line-height:1.25;margin-bottom:10px;letter-spacing:-.6px}
.section-heading p{margin-bottom:0;max-width:590px;font-size:12px}
.section-heading.compact h2{font-size:25px;margin-bottom:0}
.text-link{font-size:11px;color:var(--blue);line-height:1.7;white-space:normal;flex-shrink:0}
.text-link:hover{text-decoration:underline}
.logo-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0 26px;margin-bottom:64px}
.more-providers{display:block;text-align:center;margin:18px auto 0;font-size:13px}
.logo-section>.section-note{margin:14px auto 0;text-align:center}
.project-examples{display:flex;align-items:center;gap:18px;padding:18px 0 24px;min-width:0}
.examples-label{color:var(--muted);font-size:10px;white-space:nowrap;border:1px solid var(--line);border-radius:4px;padding:4px 8px}
.project-examples p{margin:0;flex:1;font-size:13px;line-height:1.6;min-width:0}
.project-examples button{border:0;background:none;padding:8px;color:var(--muted);font-size:10px;min-height:44px}
.project-examples button[hidden]{display:none}
.project-example-enter{animation:project-example-enter .35s ease-out}
@keyframes project-example-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.project-example-enter{animation:none}}
@media(max-width:500px){.project-examples{flex-wrap:wrap;gap:9px 12px;padding-bottom:20px}.project-examples p{flex-basis:calc(100% - 70px);font-size:12px}.examples-label{order:-1;flex-basis:100%;border:0;padding:0}.project-examples>.text-link{flex-basis:100%}}
.provider-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 12px;padding:12px 0}
.provider-logos a{height:92px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .15s}
.provider-logos a:hover{background:#eef2f5}
.provider-logos img,.featured-logo img{object-fit:contain;max-width:75%;height:54px;width:180px;filter:grayscale(1) brightness(0);opacity:.75}
.provider-logos a:hover img{opacity:1}
.section-note{font-size:10px;line-height:1.8;margin:17px 0 0;max-width:700px;color:var(--muted)}
.ideas-section,.how-section,.featured-provider-section,.directory-section{margin-bottom:68px}
.project-idea-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.project-idea{display:flex;flex-direction:column;align-items:stretch;text-align:left;background:white;border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:24px;min-width:0;transition:background .15s,border-color .15s;}
.project-idea:hover{background:#f2f6f9;border-color:#9eb3c2}
.idea-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px}
.idea-category{color:var(--blue);font-size:10px;line-height:1.6}
.idea-number{font:italic 17px Georgia,serif;color:#9ba7b3}
.project-idea strong{font:400 24px/1.3 Georgia,serif;letter-spacing:-.3px;min-height:62px;display:block;margin-bottom:12px}
.idea-description{font-size:11px;line-height:1.85;color:var(--muted);display:block;margin-bottom:20px}
.idea-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;margin-bottom:22px}
.idea-tags>span{border:1px solid var(--line);padding:4px 7px;border-radius:4px;line-height:1.5;font-size:9px;color:#687784}
.idea-action{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;gap:14px;font-size:11px;color:var(--blue)}
.how-section{padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.how-section .steps{margin-top:0;padding-top:0;border-top:0;gap:42px}
.how-section .steps h3{font-size:14px}
.how-section .steps p{font-size:12px}
.featured-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.featured-provider{background:white;border:1px solid var(--line);border-radius:8px;padding:25px;display:flex;flex-direction:column;min-width:0}
.featured-logo{display:flex;align-items:center;justify-content:flex-start;height:80px;margin-bottom:20px}
.featured-logo img{max-width:180px;max-height:62px;object-position:left center}
.provider-specialty{font-size:10px;color:var(--blue);margin-bottom:10px}
.claimed-label{display:inline-block;color:var(--success);font-size:10px;margin-bottom:14px}
.featured-provider h3{font:400 25px/1.3 Georgia,serif;letter-spacing:-.3px;margin-bottom:12px}
.featured-provider>p:not(.provider-specialty){font-size:11px}
.featured-provider .provider-markets{font-size:10px;margin-bottom:20px}
.featured-provider>.text-link{margin-top:auto;padding-top:15px;border-top:1px solid var(--line)}
.directory-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.directory-card{padding:20px;border:1px solid var(--line);border-radius:6px;background:#f0f4f7;display:block;min-width:0}
.directory-card:hover{border-color:#9eb3c2;background:#e8eff4}
.directory-card strong{display:flex;align-items:baseline;justify-content:space-between;gap:12px;line-height:1.7;font-size:12px;font-weight:500;margin-bottom:7px}
.directory-card>span{display:block;font-size:11px;line-height:1.85;color:var(--muted)}
.closing-cta{background:#eaf0f5;border:1px solid #dde6ec;border-radius:8px;padding:42px;text-align:center;margin:0 0 64px}
.closing-cta h2{font-size:37px}
.closing-cta p:not(.eyebrow){max-width:480px;margin:0 auto 24px;font-size:12px}
.site-footer{display:block;max-width:none;background:#fff;border-top:1px solid var(--line);padding:45px max(28px,calc((100vw - 1136px)/2)) 25px;margin:45px auto 0;color:var(--ink)}
.footer-intro{display:flex;gap:24px;align-items:center;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:30px}
.footer-intro p{font-size:11px;margin:0}
.footer-intro>.text-link{margin-left:auto}
.footer-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:26px;align-items:start}
.footer-column{margin:0;min-width:0}
.footer-column>summary{color:var(--ink);font-size:12px;font-weight:600;line-height:1.8;list-style:none;cursor:pointer}
.footer-column>summary::-webkit-details-marker{display:none}
.footer-column[open]>summary{margin-bottom:14px}
.footer-column h3{font-size:9px;line-height:1.8;letter-spacing:.1px}
.footer-link{font-size:10px;padding:4px 0;line-height:1.85}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:35px}
.footer-bottom p{font-size:10px;margin-bottom:16px}
.footer-bottom-links{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:10px;color:var(--muted);line-height:1.8}
.additional-resources{padding-top:20px;border-top:1px solid var(--line)}
.additional-resources>div{display:flex;gap:16px;flex-wrap:wrap;font-size:11px}
.noscript-note{padding:24px;max-width:760px;margin:auto}
@media(max-width:1100px){.preview-bar{padding:11px 32px}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.project-idea{padding:21px}.idea-tags{gap:5px}}
@media(max-width:800px){.site-header{padding:19px 22px;gap:18px}.site-header .header-nav{gap:17px}.header-dashboard{display:none}.preview-bar{padding:10px 22px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.marketplace-discovery{padding:0 22px}.project-idea-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:flex-start;gap:20px}.section-heading h2{font-size:31px}.featured-provider-grid{grid-template-columns:1fr}.featured-provider{display:block}.featured-logo{height:55px;margin-bottom:15px}.featured-provider .provider-markets{margin-bottom:12px}.featured-provider>.text-link{display:block}.footer-intro{flex-wrap:wrap;gap:12px 20px}.footer-intro>.text-link{margin-left:0}.footer-grid{grid-template-columns:1fr;gap:0}.footer-column{border-bottom:1px solid var(--line);padding:0}.footer-column>summary{display:flex;justify-content:space-between;padding:16px 0;font-size:13px;min-height:52px}.footer-column>summary::after{content:'+';font-size:18px;font-weight:400;color:var(--blue)}.footer-column[open]>summary::after{content:'−'}.footer-column[open]>summary{margin-bottom:0}.footer-column>div{padding-bottom:18px}.footer-column h3{font-size:10px}.footer-link{font-size:12px;padding:7px 0}.footer-bottom-links{font-size:11px}.site-footer{padding:35px 22px 25px}.provider-logos{grid-template-columns:repeat(4,minmax(0,1fr))}.directory-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.how-section .steps{gap:24px}}
@media(max-width:500px){.site-header{padding:16px 20px}.site-header .header-nav{font-size:10px;gap:13px}.site-header .header-provider{display:inline-block}.site-menu-trigger{font-size:11px;padding:8px 11px}.preview-bar{font-size:9px;gap:12px;padding:10px 20px}.header-logo{font-size:19px;gap:7px}.site-menu{padding:22px 18px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.menu-grid{grid-template-columns:1fr}.menu-link{font-size:12px;padding:7px 0}.menu-top h2{font-size:27px}.marketplace-discovery{padding:0 20px}.home-discovery .page{margin-top:22px}.trust-strip{gap:9px;display:grid;grid-template-columns:1fr;font-size:10px;padding-top:16px}.section-heading{flex-direction:column;gap:10px}.section-heading h2{font-size:30px}.section-heading.compact h2{font-size:25px}.provider-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:8px 0}.provider-logos a{height:77px}.provider-logos img{max-width:85%;height:42px;width:140px}.logo-section{padding-top:26px;margin-bottom:44px}.project-idea-grid{grid-template-columns:1fr}.project-idea{padding:23px}.project-idea strong{min-height:0;max-width:280px}.idea-top{margin-bottom:18px}.idea-tags{margin-bottom:20px}.ideas-section,.how-section,.featured-provider-section,.directory-section{margin-bottom:44px}.how-section .steps{gap:23px}.directory-link-grid{grid-template-columns:1fr}.closing-cta{padding:30px 21px;margin-bottom:40px}.closing-cta h2{font-size:30px}.footer-intro{display:block}.footer-intro p{margin:15px 0}.footer-intro span{display:inline}.footer-column summary{font-size:12px}.site-footer{padding:30px 20px 25px;margin-top:30px}}

/* Isolated directory previews: original profile links, short intake, shared shell. */
.directory-page{max-width:1120px}.directory-page .hero{max-width:880px;margin:36px auto 42px}.directory-page .hero h1{font-size:clamp(2rem,4vw,3.4rem)}.directory-page .hero .actions{justify-content:center;margin-top:28px}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:.82rem;color:var(--muted);margin-top:20px}.directory-explainer{display:grid;grid-template-columns:1fr 1fr;gap:30px}.directory-explainer h2{margin-top:0}.directory-controls{display:flex;align-items:center;gap:24px;margin:32px 0 8px}.directory-controls .field{flex:1}.directory-provider-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.directory-provider-grid .card{margin:0;display:flex;flex-direction:column}.directory-provider-grid [hidden]{display:none}.directory-provider h2{font-size:1.18rem;line-height:1.45;overflow-wrap:anywhere;margin:0}.directory-provider h2 a{color:inherit;text-decoration:none}.provider-top{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.provider-top .check{white-space:nowrap;flex-shrink:0;margin:0;font-size:.8rem}.directory-provider>p{flex:1;overflow-wrap:anywhere;color:var(--muted);font-size:.9rem}.directory-provider .primary{font-size:.82rem;padding:12px 14px}.directory-pagination{justify-content:center;margin:26px 0}.directory-faq{margin-top:32px}.directory-selection{position:sticky;bottom:12px;z-index:20;margin:0 auto 22px;max-width:720px;background:#fff;border:1px solid #dce3e1;box-shadow:0 10px 36px #102e2c24;border-radius:16px;padding:16px;display:flex;align-items:center;gap:18px;justify-content:space-between}.directory-selection[hidden]{display:none}.directory-intake .hero{margin-top:25px}.directory-intake select{width:100%;min-width:0;font:inherit;padding:14px;border:1px solid #d9e1e7;border-radius:10px;background:#fff}.directory-previews{padding-top:24px}.directory-preview-links{display:flex;gap:12px;flex-wrap:wrap}.notice p:last-child{margin-bottom:0}
@media(max-width:650px){.directory-provider-grid,.directory-explainer{grid-template-columns:1fr}.directory-controls{align-items:flex-start;flex-direction:column;gap:0}.directory-controls .field{width:100%}.directory-controls p{margin:0 0 15px}.directory-selection{margin:0 12px 12px;gap:10px;flex-wrap:wrap;bottom:8px}.directory-selection .primary{font-size:.8rem}.directory-selection span{font-size:.85rem}.directory-intake .actions{flex-direction:column;align-items:stretch}.directory-page .hero .actions{flex-direction:column}.provider-top{gap:8px}.directory-page .hero{margin-top:24px}.directory-provider-grid .card{padding:22px}}
/* Public marketplace explanations and crawlable service navigation. */
.marketplace-story,.marketplace-services{max-width:1096px;margin:0 auto;padding:44px 28px;border-top:1px solid var(--line)}
.marketplace-story>p{max-width:850px}.story-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:28px 0}
.marketplace-story details{padding:18px 0;border-bottom:1px solid var(--line)}.marketplace-story details p{max-width:850px;margin:14px 0 0}
.service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.service-groups h3{font-size:17px}.service-groups ul{list-style:none;padding:0}.service-groups li{font-size:12px;line-height:1.7;margin:10px 0}.service-groups a:hover,.public-marketplace-page a:hover{text-decoration:underline}
.public-marketplace-page h2{font-size:25px;margin-top:34px}.public-marketplace-page p{font-size:14px}.public-breadcrumb{margin:0 0 36px;display:block;font-size:12px;line-height:1.8}
.marketplace-footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:12px;margin:20px 0}.marketplace-footer-links a:hover{text-decoration:underline}
@media(max-width:1000px){.header-dashboard,.header-how{display:none}.service-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.header-browse{display:none}.story-steps,.service-groups{grid-template-columns:1fr}.marketplace-story,.marketplace-services{padding:32px 20px}}
.compact-footer .footer-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.compact-footer .footer-intro{margin-bottom:24px}.compact-footer .footer-link{font-size:13px;line-height:1.8;padding:4px 0}.compact-footer .footer-bottom{margin-top:24px;padding-top:18px}.compact-footer .footer-bottom>div{display:flex;flex-wrap:wrap;gap:16px}@media(max-width:650px){.compact-footer .footer-columns{grid-template-columns:1fr;gap:0}.compact-footer .footer-bottom>div{gap:12px}}

/* White, readable theme for the new marketplace and public content shell.
   Run node scripts/local/build-marketplace-styles.cjs after editing this file. */
:root {
  --ink: #172b3a;
  --muted: #536373;
  --blue: #216b5c;
  --line: #cbd3de;
  --soft: #f2f7f5;
  --paper: #fff;
  --bg: #fff;
  --success: #176044;
  --warn: #7a490c;
  --danger: #a62727;
}
body { font-size: 16px; line-height: 1.6; background: var(--paper); }
h1, h2, h3 { font-family: Inter, Arial, sans-serif; font-weight: 650; letter-spacing: -.025em; }
h1 { font-size: clamp(34px, 3.5vw, 44px); line-height: 1.16; }
h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 700; }
h2 { font-size: 28px; line-height: 1.3; }
h3 { font-size: 18px; line-height: 1.45; }
p { font-size: 16px; line-height: 1.65; }
button, a, input, textarea, select { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 3px solid var(--blue); outline-offset: 3px;
}
.site-header { max-width: 1240px; padding: 20px 32px; border-bottom: 1px solid var(--line); }
.site-header .header-nav { font-size: 14px; gap: 22px; }
.header-nav > a { min-height: 44px; display: inline-flex; align-items: center; }
.header-logo { font: 700 28px/1.2 Georgia, 'Times New Roman', serif; letter-spacing: -.7px; }
.site-header .header-project { background: var(--blue); color: white; padding: 10px 16px; border-radius: 6px; font-weight: 600; }
.site-menu-trigger { font-size: 14px; min-height: 44px; border-color: #8795a8; }
.style-comparison {
  max-width: 1176px; margin: 16px auto 0; padding: 12px 18px;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  font-size: 14px; background: #fff; border: 1px solid var(--line); border-radius: 6px;
}
.style-comparison a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.style-comparison strong { font-weight: 650; }
.preview-bar { max-width: 1176px; padding: 10px 0; font-size: 13px; }
.preview-bar a { color: var(--blue); padding: 8px 0; }
.page { max-width: 1176px; }
.narrow { max-width: 860px; }
.hero { max-width: none; text-align: left; padding: 0; }
.hero p { max-width: 580px; font-size: 17px; line-height: 1.7; }
.hero .eyebrow, .eyebrow { font-size: 14px; font-weight: 600; letter-spacing: 0; }
.home-discovery .page.practical-start {
  display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.2fr);
  gap: 56px; margin-top: 30px; margin-bottom: 32px; padding: 0;
}
.practical-intro { padding: 28px 0; min-width: 0; }
.practical-intro .hero h1 { margin-bottom: 22px; }
.practical-intro .kicker { margin: 22px 0 28px; }
.kicker { font-size: 14px; color: var(--muted); line-height: 1.6; }
.practical-entry { min-width: 0; }
.practical-process { padding: 0; margin: 0 0 26px; list-style: none; counter-reset: process; }
.practical-process li { position: relative; padding: 16px 0 16px 42px; border-top: 1px solid var(--line); counter-increment: process; }
.practical-process li::before {
  content: counter(process); position: absolute; top: 16px; left: 0;
  width: 28px; height: 28px; border: 1px solid #99a8bd; border-radius: 5px;
  display: grid; place-items: center; font-size: 14px; font-weight: 650; color: var(--blue); background: white;
}
.practical-process strong { display: block; font-size: 16px; font-weight: 600; margin-bottom: 4px; }
.practical-process span { display: block; font-size: 15px; color: var(--muted); line-height: 1.55; }
.card { border-radius: 7px; padding: 28px; }
.post-card { border-color: #a9b5c5; padding: 26px; }
.field { font-size: 16px; font-weight: 600; margin: 16px 0; }
.post-card > .field:first-child { margin-top: 0; }
.field input, .field textarea, .field select, .directory-intake select {
  font-size: 16px; font-weight: 400; color: var(--ink); background: white; border: 1px solid #8190a5;
  border-radius: 5px; padding: 12px; min-height: 48px; margin-top: 8px;
}
.field .description { min-height: 150px; font-size: 16px; line-height: 1.65; }
input::placeholder, textarea::placeholder { color: #566579; opacity: 1; }
.field input:focus, .field textarea:focus, .field select:focus {
  outline: 3px solid #216b5c33; border-color: var(--blue);
}
.hint, .small, .section-note, .notice, .error, .requirements, .terms, .terms p, .scope small {
  font-size: 14px; line-height: 1.65;
}
.requirements { color: var(--muted); }
.notice { border: 1px solid #b9c9df; }
.notice.warning { border-color: #d9bd96; }
.notice.success { border-color: #a1c4b3; }
.primary, .secondary, .quiet {
  min-height: 48px; font-size: 15px; font-weight: 600; padding: 12px 18px; border-radius: 5px;
}
.primary { background: var(--blue); color: white; }
.primary:hover { background: #195447; }
.secondary { border-color: #8795a8; }
.secondary:hover { background: var(--soft); }
.quiet { padding-left: 0; padding-right: 0; }
.practical-entry .post-card .actions { display: grid; justify-content: stretch; gap: 12px; }
.practical-entry .post-card .actions .primary { width: 100%; }
.practical-entry .post-card .actions .hint { margin: 0; }
.practical-entry > .quiet { display: block; margin-top: 4px; }
.progress { font-size: 14px; gap: 12px; margin: 0 0 20px; }
.progress span { border-top-width: 3px; padding-top: 10px; }
.progress .active { font-weight: 650; }
.post-card .project-examples { display: block; padding: 16px 0 0; }
.post-card .project-examples .examples-label { display: block; margin-bottom: 12px; }
.project-examples .examples-label, .examples-label {
  font-size: 14px; font-weight: 600; color: var(--muted); border: 0; padding: 0;
}
.project-examples .example {
  min-height: 44px; font-size: 14px; line-height: 1.5; padding: 9px 12px;
  border: 1px solid #a9b5c5; border-radius: 5px; color: var(--ink); background: white;
}
.project-examples .example > span { font-size: 18px; }
.example-library > summary { font-size: 14px; min-height: 44px; padding: 10px 0; }
.example-count { font-size: 13px; color: var(--muted); }
.example-group h3 { font-size: 16px; }
.example-request-title { font-size: 15px; font-weight: 600; }
.example-request-text { font-size: 14px; color: var(--muted); line-height: 1.65; }
.example-request { background: white; border-color: #a9b5c5; }
.trust-strip { font-size: 13px; color: var(--success); gap: 8px 12px; margin-top: 20px; }
.trust-strip + .hint { font-size: 13px; }
.choices legend { font-size: 16px; font-weight: 600; }
.choice, .check { font-size: 15px; line-height: 1.6; }
.choice { min-height: 48px; border-color: #a9b5c5; }
.choice:has(input:checked) { border: 2px solid var(--blue); padding: 9px 12px; color: var(--ink); background: var(--soft); }
.day-options .choice { font-size: 14px; }
.scope h3 { font-size: 17px; }
summary, .saved-drafts summary { font-size: 15px; line-height: 1.6; }
.saved-drafts h2 { font-size: 20px; overflow-wrap: anywhere; }
.practical-entry .card.saved-drafts { padding: 16px 20px; }
.practical-entry .card.saved-drafts .eyebrow { font-size: 13px; margin-bottom: 6px; }
.practical-entry .card.saved-drafts h2 { font-size: 16px; line-height: 1.5; margin-bottom: 8px; }
.practical-entry .card.saved-drafts .secondary { min-height: 40px; font-size: 14px; padding: 8px 12px; }
.saved-project-list { display: grid; gap: 8px; list-style: none; margin: 12px 0 20px; padding: 0; }
.saved-project-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; width: 100%; border: 1px solid var(--line); border-radius: 6px; background: white; overflow: hidden; }
.saved-project-open { display: block; width: 100%; min-width: 0; min-height: 44px; padding: 12px 14px; border: 0; border-radius: 0; background: transparent; color: var(--ink); font-size: 14px; font-weight: 550; line-height: 1.5; text-align: left; }
.saved-project-title { display: block; overflow-wrap: anywhere; }
.saved-project-status { display: block; margin-top: 3px; font-size: 12px; font-weight: 400; color: var(--muted); }
.saved-project-delete { min-width: 68px; min-height: 44px; margin: 4px; padding: 8px 10px; border: 0; border-radius: 4px; background: transparent; color: var(--danger); font-size: 13px; font-weight: 550; }
.saved-project-open:hover, .saved-project-delete:hover { background: var(--soft); }
.saved-project-row:focus-within { outline: 2px solid var(--blue); outline-offset: 2px; }
.text-link { font-size: 15px; font-weight: 550; }
.marketplace-discovery { max-width: 1216px; }
.section-heading h2 { font-size: 30px; line-height: 1.3; }
.section-heading.compact h2 { font-size: 25px; }
.section-heading .eyebrow { font-size: 14px; }
.section-heading p { font-size: 16px; }
.logo-section { padding: 30px 0 24px; margin-bottom: 46px; }
.provider-logos { gap: 12px; }
.provider-logos a { background: white; border: 1px solid #d8dfe7; height: 92px; }
.provider-logos img, .featured-logo img { opacity: .9; }
.logo-section > .section-note { font-size: 14px; }
.more-providers { font-size: 15px; }
.project-news { display: flex; align-items: center; gap: 20px; max-width: 1176px; margin: 16px auto 0; padding: 8px 0; background: transparent; border: 0; border-radius: 0; min-width: 0; }
.project-news[hidden] { display: none; }
.project-news-label { flex-shrink: 0; color: var(--blue); font-size: 13px; font-weight: 650; }
.project-news-note { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; font-weight: 400; line-height: 1.2; }
.project-news-window { min-width: 0; overflow: hidden; border-radius: 3px; }
.project-news-window:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
.project-news-track { display: flex; width: max-content; animation: project-news-scroll var(--project-news-duration, 1000s) linear infinite; }
.project-news-group { display: flex; align-items: center; flex-shrink: 0; }
.project-news-item { display: inline-flex; align-items: center; flex-shrink: 0; white-space: nowrap; font-size: 14px; color: var(--ink); }
.project-news-item::after { content: ''; width: 4px; height: 4px; border-radius: 50%; background: #6e9688; margin: 0 28px; }
.project-news:hover .project-news-track, .project-news:focus-within .project-news-track, .project-news[data-paused="true"] .project-news-track { animation-play-state: paused; }
@keyframes project-news-scroll { to { transform: translateX(-50%); } }
@media (max-width: 1240px) { .project-news { margin-left: 24px; margin-right: 24px; } }
@media (max-width: 650px) { .project-news { margin: 12px 20px 0; padding: 6px 0; gap: 12px; } .project-news-label { font-size: 12px; } .project-news-item { font-size: 13px; } }
@media (prefers-reduced-motion: reduce) { .project-news-track { animation: none; } .project-news-group[aria-hidden="true"] { display: none; } .project-news-window { overflow-x: auto; } }
.ideas-section, .how-section, .featured-provider-section, .directory-section { margin-bottom: 46px; }
.project-idea { padding: 22px; border-radius: 6px; }
.project-idea strong { font: 650 21px/1.35 Inter, Arial, sans-serif; letter-spacing: -.02em; min-height: 0; }
.idea-top { margin-bottom: 18px; }
.idea-category { font-size: 14px; }
.idea-number { font: 500 14px Inter, Arial, sans-serif; color: var(--muted); }
.idea-description { font-size: 15px; color: var(--muted); line-height: 1.65; }
.idea-tags > span { font-size: 12px; color: var(--muted); padding: 4px 7px; }
.idea-action { font-size: 14px; font-weight: 600; }
.how-section .steps h3 { font-size: 18px; }
.how-section .steps p { font-size: 16px; }
.featured-provider h3 { font: 650 22px/1.35 Inter, Arial, sans-serif; letter-spacing: -.02em; }
.provider-specialty, .claimed-label, .featured-provider .provider-markets { font-size: 14px; }
.featured-provider > p:not(.provider-specialty) { font-size: 15px; }
.directory-card { background: white; border-radius: 6px; }
.directory-card strong { font-size: 16px; font-weight: 600; }
.directory-card > span { font-size: 15px; line-height: 1.65; }
.closing-cta { padding: 34px; text-align: left; margin-bottom: 46px; background: var(--paper); border-color: var(--line); }
.closing-cta h2 { font-size: 30px; }
.closing-cta p:not(.eyebrow) { max-width: 650px; margin: 0 0 20px; font-size: 16px; }
.footer-intro p, .compact-footer .footer-link, .footer-column > summary, .footer-bottom p,
.footer-bottom > div, .menu-link, .quick-link, .menu-bottom { font-size: 14px; }
.menu-column h3 { font-size: 13px; }
.menu-column > summary { font-size: 16px; }
.footer-link, .menu-link { padding: 8px 0; }
.footer-bottom > div a { padding: 8px 0; }

@media (max-width: 1240px) {
  .style-comparison { margin-left: 24px; margin-right: 24px; }
  .preview-bar { padding-left: 24px; padding-right: 24px; }
  .home-discovery .page.practical-start { padding: 0 24px; gap: 36px; }
}
@media (max-width: 1000px) {
  .home-discovery .page.practical-start { grid-template-columns: minmax(0, 1fr); max-width: 760px; gap: 16px; }
  .practical-intro { padding: 8px 0 16px; }
  .practical-process { display: none; }
  .practical-intro .kicker { margin: 16px 0 8px; }
  .site-header .header-nav { gap: 16px; }
  .site-header .header-how, .site-header .header-dashboard { display: none; }
  .practical-entry .post-card .actions { display: flex; }
}
@media (max-width: 650px) {
  .style-comparison { flex-wrap: wrap; margin: 12px 20px 0; padding: 12px; }
  .style-comparison span { line-height: 1.6; }
  .style-comparison a { padding: 6px 0; }
  .preview-bar { padding: 10px 20px; font-size: 12px; flex-wrap: wrap; gap: 4px 12px; }
  .site-header { padding: 16px 20px; }
  .site-header .header-nav { font-size: 13px; gap: 12px; }
  .site-header .header-provider, .site-header .header-browse { display: none; }
  .site-header .header-project { display: inline-flex; white-space: nowrap; font-size: 13px; padding: 10px 12px; }
  .site-menu-trigger { font-size: 0; gap: 0; padding: 10px; min-width: 40px; }
  .site-menu-trigger > span { font-size: 18px; }
  .site-header .header-nav { gap: 10px; }
  .header-logo { font-size: 26px; }
  .home-discovery .page.practical-start { padding: 0 20px; margin-top: 22px; }
  h1, .hero h1 { font-size: 34px; }
  .hero p { font-size: 16px; }
  .hero .eyebrow, .eyebrow { font-size: 13px; }
  .card, .post-card { padding: 20px; }
  .progress { font-size: 13px; gap: 10px; }
  .practical-entry .post-card .actions { display: grid; }
  .project-examples .examples { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-examples .example { font-size: 14px; min-height: 54px; text-align: left; }
  .example-groups { grid-template-columns: minmax(0, 1fr); }
  .trust-strip { display: grid; grid-template-columns: minmax(0, 1fr); font-size: 13px; }
  .provider-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .provider-logos img { max-width: 80%; }
  .project-idea-grid, .directory-link-grid { grid-template-columns: minmax(0, 1fr); }
  .section-heading h2, .closing-cta h2 { font-size: 27px; }
  .section-heading.compact h2 { font-size: 24px; }
  .closing-cta { padding: 24px; }
  .featured-provider, .project-idea { padding: 22px; }
  .compact-footer .footer-column > summary { font-size: 15px; }
  .compact-footer .footer-link { font-size: 14px; }

  .field input, .field textarea, .field select { width: 100%; }
}

/* Shared public pages and private marketplace states. */
.compact-footer .footer-columns { display: grid; }
.marketplace-story, .marketplace-services { padding-left: 0; padding-right: 0; }
.service-groups li { font-size: 15px; }
.service-groups h3 { font-size: 18px; }
.public-marketplace-page p { font-size: 16px; }
.public-marketplace-page h2 { font-size: 26px; }
.public-breadcrumb { font-size: 14px; }
.metric strong, .value { font: 650 30px/1.3 Inter, Arial, sans-serif; }
.metric span, .meta, .badge, .scope small, .sources a, .section-label, .timeline li, .timeline time, .slot-label,
.slot p, .slot .check, .mail-address, .email-foot { font-size: 14px; }
.opportunity-title { font: 650 24px/1.35 Inter, Arial, sans-serif; }
.opportunity .actions button, .tab, .rows li { font-size: 15px; }
.email-brand { font: 650 28px/1.3 Inter, Arial, sans-serif; }
.email-preview p { font-size: 15px; }
.client-times { margin: 28px 0; }
.client-time-entry { min-width: 0; border: 1px solid var(--line); border-radius: 7px; margin: 22px 0; padding: 20px; }
.client-time-entry > legend { font-size: 16px; font-weight: 650; padding: 0 7px; }
.client-call-confirm .slot.check { align-items: flex-start; padding: 16px; }
.client-call-confirm .slot.check input { margin-top: 5px; }
.client-call-confirm .slot.check span { min-width: 0; overflow-wrap: anywhere; }
.client-call-confirm .terms { margin: 22px 0; }
@media (max-width: 500px) { .client-time-entry { padding: 14px; } .client-time-entry .actions { flex-direction: column; align-items: stretch; } }
.email-foot { font-size: 14px !important; }
.empty, .loading { font-size: 16px; }
.scope p { font-size: 16px; }
.auth h1 { font-size: 34px; }
.practical-trust { margin: 30px 0; padding: 0; list-style: none; }
.practical-trust li { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 16px; margin: 24px 0; }
.practical-trust svg { width: 26px; height: 26px; fill: none; stroke: var(--blue); stroke-width: 2; margin-top: 2px; }
.practical-step-number { display: grid; place-items: center; width: 28px; height: 28px; margin-top: 2px; border-radius: 50%; background: var(--soft); color: var(--blue); font-size: 15px; font-weight: 650; }
.practical-trust strong { font-size: 17px; line-height: 1.55; font-weight: 650; display: block; }
.practical-trust p { font-size: 16px; line-height: 1.65; margin: 6px 0 0; }
.logo-gallery-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 12px; }
.logo-controls { display: flex; align-items: center; gap: 12px; }
.logo-controls button { min-height: 44px; border: 0; border-radius: 4px; background: transparent; color: var(--blue); font-size: 14px; padding: 8px; }
.logo-controls button:hover { background: var(--soft); }
.logo-controls button[hidden] { display: none; }
.provider-logo-enter { animation: provider-logo-enter .3s ease-out; }
@keyframes provider-logo-enter { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .provider-logo-enter { animation: none; } }
@media (max-width: 500px) { .logo-controls { gap: 4px; } .logo-controls button { font-size: 13px; padding: 8px 6px; } }
.recommendations{margin:28px 0}.recommendation-heading{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.recommendation-heading h2{margin:4px 0 8px}.recommendation-card{background:#fff;border:1px solid #ccd6d4;border-radius:12px;padding:24px;margin:14px 0;color:#172b3a}.recommendation-card.is-selected{border:2px solid #216b5c;padding:23px}.recommendation-top{display:flex;gap:12px;align-items:center;justify-content:space-between}.recommendation-top h3{margin:0;font-size:1.25rem}.recommendation-fit{line-height:1.65}.recommendation-scopes{padding-left:22px;line-height:1.7}.recommendation-gap{padding:12px 14px;background:#f4f6f6;border-left:3px solid #71867f;line-height:1.6}.recommendation-evidence{margin:18px 0}.recommendation-evidence blockquote{margin:16px 0;padding-left:16px;border-left:2px solid #ccd6d4;font-size:.95rem;line-height:1.6}.recommendation-status{display:flex;align-items:center;gap:12px;line-height:1.6}.request-next-steps{font-size:.9rem;line-height:1.8;color:#344b59;padding:12px 0}@media(max-width:640px){.recommendation-heading{display:block}.recommendation-card{padding:18px}.recommendation-card.is-selected{padding:17px}.recommendation-card .actions{display:flex;flex-wrap:wrap}.recommendation-card .actions button{flex:1 1 auto}.recommendation-top{align-items:flex-start}}
/* Distinct brief, provider-selection and send screens. */
.brief-facts{margin:22px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 24px}.brief-facts div{min-width:0}.brief-facts dt{font-size:13px;color:var(--muted);margin-bottom:4px}.brief-facts dd{margin:0;font-size:15px;line-height:1.6;color:var(--ink);overflow-wrap:anywhere}.brief-list{padding-left:22px;font-size:14px;line-height:1.8;color:var(--ink)}.scope h4{font-size:14px;margin:18px 0 6px}.selected-provider-summary{list-style:none;padding:0;margin:20px 0}.selected-provider-summary li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:14px 0;font-size:15px;line-height:1.6}.selected-provider-summary span{color:var(--muted);font-size:14px}.recommendation-reasons section{border-top:1px solid var(--line);padding:15px 0}.recommendation-reasons h4{margin:0 0 6px;font-size:15px}.recommendation-reasons blockquote{margin:10px 0;padding-left:13px;border-left:2px solid var(--line);font-size:14px;line-height:1.7}.recommendation-reasons p{margin-bottom:6px}.progress{gap:10px}.progress span{min-width:0;line-height:1.6}.recommendation-confirmations summary{font-weight:600}@media(max-width:500px){.brief-facts{grid-template-columns:1fr;gap:12px}.selected-provider-summary li{display:block}.selected-provider-summary span{display:block;margin-top:4px}.progress{gap:6px;font-size:11px}.progress span{font-size:11px}}

/* Inline choices stay with the provider the client selected. */
.inline-client-times{margin-top:18px;border-top:1px solid #e0e7e9;padding-top:18px}.inline-client-times .client-time-entry{margin:0;background:#fff}.reply-options{padding:16px 0;border-top:1px solid #e0e7e9}.reply-options h3{font-size:18px}.recommendation-contact-hint{line-height:1.65}

.client-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.client-time-grid .slot{margin:0;background:#fff;padding:14px}.client-time-grid .slot-label{overflow-wrap:anywhere}.client-time-grid .field{margin:10px 0}.client-time-grid input[type=datetime-local]{min-width:0;width:100%}@media(max-width:640px){.client-time-grid{grid-template-columns:minmax(0,1fr)}}

/* Keep private invitation access focused on the action from the email. */
.access-entry .header-nav,
.access-entry .site-menu-trigger,
.access-entry .preview-bar,
.access-entry .site-footer { display: none; }

/* Full established footer navigation, with the marketplace's readable styling. */
.full-footer .footer-marketplace-nav { display:flex; flex-wrap:wrap; gap:8px 28px; padding:0 0 28px; margin-bottom:30px; border-bottom:1px solid var(--line); }
.full-footer .footer-marketplace-nav .footer-link { color:var(--blue); font-size:14px; font-weight:600; }
.full-footer .footer-marketplace-nav a:first-child { display:block; }
.full-footer .footer-column > summary { font-size:15px; }
.full-footer .footer-column h3 { font-size:11px; font-weight:600; line-height:1.6; margin:24px 0 10px; }
.full-footer .footer-column h3:first-child { margin-top:0; }
.full-footer .footer-link { font-size:13px; line-height:1.7; padding:6px 0; }
.full-footer .footer-bottom-links { display:flex; flex-wrap:wrap; gap:4px 24px; }
.full-footer .footer-bottom a { font-size:13px; line-height:1.7; }
@media(max-width:800px) {
  .full-footer .footer-marketplace-nav { gap:4px 24px; padding-bottom:20px; margin-bottom:12px; }
  .full-footer .footer-link { font-size:14px; padding:10px 0; }
  .full-footer .footer-column h3 { font-size:12px; }
  .full-footer .footer-bottom-links { gap:4px 20px; }
}
.access-entry .site-header { max-width: 680px; padding: 22px 24px; }
.access-entry #app { min-height: 0; }
.access-entry .access-card { max-width: 580px; margin: 52px auto; padding: 32px; }
.access-entry .access-card h1 { font-size: 34px; line-height: 1.2; }
.access-entry .access-card > p { font-size: 16px; line-height: 1.65; }
.access-entry .access-card .primary { margin: 8px 0 20px; }
.access-entry .access-card .access-reassurance { font-size: 14px; }
.access-entry .access-help { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 18px; }
.access-entry .access-help summary { font-size: 14px; }
.access-entry .access-help p { font-size: 14px; }
.access-entry .access-card .hint { font-size: 13px; margin-top: 24px; margin-bottom: 0; }
@media(max-width: 640px) {
  .access-entry .access-card { margin: 28px 18px; padding: 25px 22px; }
  .access-entry .access-card h1 { font-size: 30px; }
}

/* One invitation: project context and the provider's next action together. */
.access-entry .invitation-details{max-width:740px;margin:28px auto;padding:30px}
.access-entry .invitation-details h1{font-family:inherit;font-size:27px;line-height:1.35}
.invitation-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:18px 0;margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.invitation-facts span{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}.invitation-facts strong{font-size:14px;line-height:1.5;font-weight:600}
.invitation-action{margin:24px 0}.invitation-action h2{font-size:21px}.invitation-action p{font-size:16px;line-height:1.65}
.project-outcome{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.project-outcome h3{font-size:18px}
.invitation-details .client-call-offer{margin-top:22px}.invitation-details .choices{padding:0}.invitation-details .client-call-confirm .primary{margin-bottom:10px}
@media(max-width:640px){.access-entry .invitation-details{margin:18px 12px;padding:24px 18px}.access-entry .invitation-details h1{font-size:24px}.invitation-facts{grid-template-columns:1fr;gap:12px}}
.project-fee-summary{padding:14px 0;margin:16px 0;border-top:1px solid var(--line)}.project-fee-summary>p{margin:0 0 10px;font-size:15px}.project-fee-summary>.hint{font-size:13px}.project-fee-summary .project-terms{margin:0;font-size:13px}.project-fee-summary .project-terms summary{font-size:13px}.project-fee-summary .project-terms p{font-size:13px}

/* Direct email responses: one short confirmation, with optional workspace help. */
.access-entry .direct-invitation{max-width:640px;padding:26px;margin:24px auto}
.direct-invitation h2.opportunity-title{font-size:19px;line-height:1.4;margin:12px 0 18px}
.access-entry .direct-invitation .hint{margin-top:8px;margin-bottom:8px}
.direct-invitation .project-fee-summary{margin:14px 0;padding:12px 0}
.direct-invitation .project-fee-summary p{line-height:1.55;margin:0 0 8px}
.access-entry .direct-invitation .access-help{margin-top:18px;padding-top:14px}
@media(max-width:640px){.access-entry .direct-invitation{margin:18px 12px;padding:22px 18px}}

/* Carry the email's quiet green details into its single response screen. */
.access-entry .direct-invitation,.access-entry .invitation-complete{border:1px solid #dfe8e2;border-radius:16px;box-shadow:0 8px 30px rgba(24,53,44,.035)}
.direct-invitation .eyebrow{font-size:12px;color:#497663;letter-spacing:.025em}
.direct-invitation .slot.check{background:#f2f7f3;border-color:#d5e4da;border-radius:10px}
.direct-invitation .field input,.direct-invitation .field textarea{border-color:#ccd9d2;border-radius:8px}
.access-entry .direct-invitation .primary{border-radius:9px}

/* Keep native iOS date/time controls inside narrow provider cards. */
.client-time-entry{min-inline-size:0;max-inline-size:100%;margin-inline:0;padding-inline:12px}.client-time-entry legend{max-inline-size:100%;overflow-wrap:anywhere}.client-time-grid>.slot,.client-time-grid .field{min-inline-size:0;max-inline-size:100%}.client-time-grid input[type=datetime-local]{display:block;min-inline-size:0;max-inline-size:100%;box-sizing:border-box}.client-time-grid input[type=datetime-local]::-webkit-date-and-time-value{min-inline-size:0;text-align:left}@media(max-width:640px){.client-time-entry{padding-inline:8px}.client-time-grid input[type=datetime-local]{font-size:16px;padding-inline:8px}}
