/* Proud to Work — v7 additions: two-direction positioning, guides, experts marketplace.
   Uses the tokens from style.css (--paper, --ink, --red, --gold, --line …). */
.x-doors{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:820px){.x-doors{grid-template-columns:1fr 1fr}}
.x-door{display:flex;flex-direction:column;gap:12px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--card,var(--paper));text-decoration:none;color:var(--ink);position:relative}
.x-door:hover{border-color:var(--red-ink)}
.x-door .mono{font-family:var(--mono,'Roboto Mono',monospace);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--red-ink)}
.x-door h3{margin:0;font-family:var(--display,inherit);font-size:1.7rem;line-height:1.15}
.x-door p{margin:0;color:var(--ink-2)}
.x-door ul{margin:4px 0 0;padding-left:1.1em;color:var(--ink-2)}
.x-door li{margin:4px 0}
.x-door .x-go{margin-top:auto;font-weight:700;color:var(--red-ink)}
.x-steps{counter-reset:s;display:grid;gap:16px;grid-template-columns:1fr;margin:24px 0 0;padding:0;list-style:none}
@media(min-width:760px){.x-steps{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.x-steps.five{grid-template-columns:repeat(5,1fr)}}
.x-steps li{counter-increment:s;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--card,var(--paper))}
.x-steps li::before{content:counter(s);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--paper);font-weight:700;margin-bottom:10px}
.x-steps h3{margin:0 0 6px;font-size:1.05rem}
.x-steps p{margin:0 0 8px;color:var(--ink-2);font-size:.95rem}
.x-steps a{font-weight:700;color:var(--red-ink)}
.x-note{margin:20px 0;padding:14px 16px;border-left:4px solid var(--gold);background:var(--paper-2);border-radius:0 10px 10px 0;color:var(--ink-2);font-size:.95rem}
.x-cards{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:700px){.x-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1050px){.x-cards{grid-template-columns:repeat(3,1fr)}}
.x-card{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card,var(--paper));text-decoration:none;color:var(--ink)}
a.x-card:hover{border-color:var(--red-ink)}
.x-card h3{margin:0;font-size:1.05rem;line-height:1.25}
.x-card p{margin:0;color:var(--ink-2);font-size:.93rem}
.x-badge{display:inline-block;align-self:flex-start;padding:2px 9px;border-radius:999px;border:1px solid var(--line);font-size:.72rem;font-family:var(--mono,'Roboto Mono',monospace);text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
.x-meta{display:flex;flex-wrap:wrap;gap:6px}
.x-filter{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.x-filter button{font:inherit;font-size:.9rem;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer}
.x-filter button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.x-search{width:100%;max-width:420px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--paper);color:var(--ink)}
.x-count{color:var(--slate);font-size:.9rem;margin:8px 0 16px}
.x-form{display:grid;gap:12px;max-width:640px}
.x-form label{display:grid;gap:4px;font-weight:600}
.x-form input,.x-form select,.x-form textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink)}
.x-form button{justify-self:start}
/* guides */
.x-guide{display:grid;gap:32px;grid-template-columns:1fr;align-items:start}
@media(min-width:1000px){.x-guide{grid-template-columns:260px minmax(0,1fr)}}
.x-toc{font-size:.92rem;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--paper-2)}
@media(min-width:1000px){.x-toc{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto}}
.x-toc strong{display:block;margin-bottom:6px}
.x-toc ol,.x-toc ul{margin:0;padding-left:1.1em}
.x-toc li{margin:3px 0}
.x-toc a{color:var(--ink-2);text-decoration:none}
.x-toc a:hover{color:var(--red-ink)}
.x-prose{max-width:74ch;min-width:0}
.x-prose h2{margin-top:2.2em;font-size:1.6rem;line-height:1.2}
.x-prose h3{margin-top:1.6em;font-size:1.2rem}
.x-prose p,.x-prose li{line-height:1.65}
.x-prose a{color:var(--red-ink)}
.x-prose .x-tablewrap{overflow-x:auto;margin:1em 0;border:1px solid var(--line);border-radius:10px}
.x-prose table{border-collapse:collapse;width:100%;min-width:520px;font-size:.92rem}
.x-prose th,.x-prose td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.x-prose th{background:var(--paper-2)}
.x-prose input[type=checkbox]{margin-right:.5em}
.x-prose ul.task{list-style:none;padding-left:0}
.x-stamp{color:var(--slate);font-size:.9rem;margin:6px 0 18px}
.x-cta{margin:36px 0;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--paper-2)}
.x-cta h3{margin:0 0 8px}
.x-cta .hero-cta{margin-top:10px}
.x-home-lede{max-width:62ch}
.x-founder{max-width:70ch;color:var(--ink-2)}

/* ---- v8: experts v2, planner, lanes, chart ---- */
.x-chip{font:inherit;font-size:.86rem;padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;display:inline-flex;gap:6px;align-items:center;text-align:left}
.x-chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.x-chipn{font-family:var(--mono,monospace);font-size:.72rem;opacity:.7}
.x-expwrap{display:grid;gap:24px;grid-template-columns:1fr;padding-bottom:24px;align-items:start}
@media(min-width:1000px){.x-expwrap{grid-template-columns:340px minmax(0,1fr)}}
.x-fdrawer{border:1px solid var(--line);border-radius:14px;background:var(--paper-2);padding:0}
.x-fdrawer>summary{cursor:pointer;font-weight:700;padding:12px 16px;list-style:none}
.x-fdrawer>summary::-webkit-details-marker{display:none}
.x-fdrawer>summary::after{content:"▾";float:right}
#x-filters{padding:0 16px 16px}
@media(min-width:1000px){.x-fdrawer{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow:auto}}
.x-ftitle{font-size:.78rem;font-family:var(--mono,monospace);text-transform:uppercase;letter-spacing:.06em;color:var(--slate);margin:16px 0 6px;font-weight:700}
.x-fblock .x-filter{margin:6px 0}
.x-select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--paper);color:var(--ink)}
.x-help{font-size:.8rem;color:var(--slate);margin:6px 0}
.x-check{display:flex;gap:8px;align-items:flex-start;font-size:.88rem;margin-top:6px}
.x-tilemap{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(4,38px);gap:4px;max-width:320px}
.x-tile{font:inherit;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--green) calc(var(--h,0)*60%),var(--paper));color:var(--ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;padding:0}
.x-tile b{font-size:.78rem}
.x-tile i{font-style:normal;font-size:.66rem;opacity:.75}
.x-tile[aria-pressed="true"]{outline:2px solid var(--red-ink);background:var(--ink);color:var(--paper)}
.x-link{background:none;border:0;padding:0;font:inherit;color:var(--red-ink);cursor:pointer;text-decoration:underline;margin-right:10px}
.x-results{min-width:0}
.x-group{margin:0 0 28px}
.x-gtitle{font-size:1.25rem;margin:8px 0 12px;display:flex;gap:10px;align-items:baseline}
.x-gtitle span{font-family:var(--mono,monospace);font-size:.8rem;color:var(--slate)}
.x-results .x-cards{grid-template-columns:1fr}
@media(min-width:760px){.x-results .x-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1350px){.x-results .x-cards{grid-template-columns:repeat(3,1fr)}}
.x-priv{background:var(--green-tint);color:var(--green-ink);border-color:transparent}
.x-pub{background:var(--paper-2)}
.x-org{border-color:var(--ink-2);color:var(--ink)}
.x-where{font-size:.82rem;color:var(--slate)}
.x-themes{display:flex;flex-wrap:wrap;gap:4px;margin:0}
.x-themes span{font-size:.72rem;padding:1px 7px;border-radius:6px;background:var(--paper-2);color:var(--ink-2)}
.x-exp p{margin:0}
/* planner */
.x-journey{border:1px solid var(--line);border-radius:18px;padding:clamp(16px,3vw,32px);background:var(--card,var(--paper))}
.x-journey h2{margin-top:0}
.x-goals{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:700px){.x-goals{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1050px){.x-goals{grid-template-columns:repeat(4,1fr)}}
.x-goal{font:inherit;text-align:left;display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);cursor:pointer}
.x-goal:hover,.x-goal:focus-visible{border-color:var(--red-ink)}
.x-goal b{font-size:1.02rem;line-height:1.25}
.x-goal span{font-size:.88rem;color:var(--ink-2)}
.x-jhead{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.x-jhead h2{margin:0}
.x-jctx{display:grid;gap:12px;grid-template-columns:1fr;margin:0 0 20px}
@media(min-width:700px){.x-jctx{grid-template-columns:1fr 1fr}}
.x-jctx label{display:grid;gap:4px;font-weight:600;font-size:.9rem}
.x-jctx select{padding:9px 10px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--paper);color:var(--ink)}
.x-jgrid{display:grid;gap:28px;grid-template-columns:1fr}
@media(min-width:1000px){.x-jgrid{grid-template-columns:1.1fr .9fr}}
.x-plansteps{list-style:none;padding:0;margin:0;display:grid;gap:10px;counter-reset:p}
.x-plansteps li{counter-increment:p;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--paper)}
.x-plansteps label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.x-plansteps input{margin-top:4px;width:18px;height:18px;flex:none}
.x-plansteps a{font-weight:700;color:var(--red-ink);white-space:nowrap}
.x-plansteps input:checked+span{opacity:.6;text-decoration:line-through}
.x-progress{font-family:var(--mono,monospace);font-size:.82rem;color:var(--slate)}
.x-countrybox{padding:10px 14px;border-left:4px solid var(--red-ink);background:var(--red-tint);border-radius:0 10px 10px 0}
.x-minilist{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}
.x-minilist li{border-bottom:1px solid var(--line);padding-bottom:8px}
.x-minilist small{color:var(--ink-2)}
.x-planexp h4{margin:14px 0 6px;font-size:.78rem;font-family:var(--mono,monospace);text-transform:uppercase;letter-spacing:.06em;color:var(--slate)}
.x-jactions{display:flex;flex-wrap:wrap;gap:8px}
/* lanes */
.x-lanes{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:760px){.x-lanes{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.x-lanes{grid-template-columns:repeat(4,1fr)}}
.x-lane{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--card,var(--paper));position:relative}
.x-lane h3{margin:0 0 10px;font-size:1rem}
.x-lane ol{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.x-lane li a,.x-lane li .x-soon{display:block;padding:8px 10px;border-radius:8px;background:var(--paper-2);text-decoration:none;color:var(--ink);font-size:.92rem}
.x-lane li a::after{content:" →";color:var(--red-ink)}
.x-lane li a:hover{background:var(--red-tint)}
.x-soon{color:var(--slate)}
.x-soon-card{opacity:.7}
.x-prose .x-soon{color:var(--slate);border-bottom:1px dotted var(--slate)}
/* chart */
.x-chart{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--card,var(--paper))}
.x-chart svg{width:100%;height:auto;max-width:760px;display:block}
.x-chart figcaption{font-size:.82rem;color:var(--slate);margin-top:8px;max-width:78ch}
.tc-l{font-size:13px;fill:var(--ink)}
.tc-v{font-size:12px;fill:var(--ink-2);font-family:var(--mono,monospace)}
.tc-b{fill:var(--green)}
.tc-us{fill:var(--slate)}
.x-chart a:hover .tc-b{fill:var(--red-ink)}
.x-chart a text{text-decoration:underline}
.x-gexp{margin:12px 0 28px}
.x-toc-cta{margin:10px 0 0}
.x-toc-cta a{font-weight:700;color:var(--red-ink)}
.x-prose li.task{list-style:none;margin-left:-1.2em}
@media print{.nav-primary,.nav-mobile-primary,header,footer,.x-journey .x-goals,.x-jactions,.x-jctx,.x-link{display:none!important}.x-jgrid{grid-template-columns:1fr}}

.x-cav{font-size:.8rem;color:var(--slate);font-style:italic}
.x-draft{margin:0 0 18px;padding:12px 16px;border:1px solid var(--gold-deep);background:color-mix(in srgb,var(--gold) 14%,var(--paper));border-radius:10px;font-size:.92rem}

/* Contact page */
.contact-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:2rem;align-items:start}
.contact-form fieldset{border:0;padding:0;margin:0 0 1rem}
.why-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.7rem}
.why-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:.2rem .7rem;align-items:start;padding:.85rem .95rem;border:1.5px solid var(--line,#d9d4c7);border-radius:12px;background:var(--card,#fff);cursor:pointer;transition:border-color .15s,box-shadow .15s}
.why-card:hover{border-color:#b5121b}
.why-card input{position:absolute;opacity:0;inset:0;cursor:pointer}
.why-card.on,.why-card:has(input:checked){border-color:#b5121b;box-shadow:0 0 0 3px rgba(181,18,27,.14)}
.why-card:has(input:focus-visible){outline:3px solid #1b4fd6;outline-offset:2px}
.why-ico{grid-row:span 2;width:2rem;height:2rem;border-radius:50%;background:#f5ecd2;display:grid;place-items:center;font-size:1rem}
.why-t{font-weight:700;line-height:1.25}
.why-h{font-size:.85rem;opacity:.75;line-height:1.35}
.why-detail{margin-top:1.2rem;padding:1.2rem;border:1px solid var(--line,#d9d4c7);border-radius:12px;background:var(--card,#fff)}
.why-hint{margin:0 0 1rem;font-weight:600}
.why-fields{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:.8rem}
.why-fields[hidden]{display:none}
.contact-form label{display:grid;gap:.3rem;font-size:.9rem}
.contact-form .full{margin:.8rem 0}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:.8rem 0}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;font:inherit;padding:.6rem .7rem;border:1px solid #bdb7a6;border-radius:8px;background:#fff;color:inherit;box-sizing:border-box}
.contact-form .note{font-size:.8rem;opacity:.7;margin-top:.8rem}
.contact-aside{position:sticky;top:5rem}
.contact-fast{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.contact-fast a{display:block;padding:.6rem .8rem;border:1px solid var(--line,#d9d4c7);border-radius:8px;text-decoration:none}
@media (max-width:860px){.contact-wrap{grid-template-columns:minmax(0,1fr)}.contact-aside{position:static}.why-fields,.contact-form .row{grid-template-columns:1fr}}
.nav-primary a.nav-contact{border:1.5px solid currentColor;border-radius:999px;padding:.15rem .7rem}
.contact-form{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.contact-form fieldset.why{background:transparent!important;width:100%}
.contact-form legend{display:block;float:left;width:100%;padding:0;margin:0 0 .8rem}
.contact-form legend+.why-grid{clear:both}
.why-fields{align-items:start}
.why-fields select,.contact-form select{height:auto;min-height:2.6rem}
.why-fields label.full{grid-column:1/-1;margin:0}
.seg.where{margin:.6rem 0;flex-wrap:wrap;display:flex;gap:.4rem}
.seg.where button{padding:.35rem .8rem;border-radius:999px}
.dir-more{text-align:center;margin:1.5rem 0}
