:root{--bg:#FFFFFF;--bg-2:#FAF8F5;--ink:#0F0D0B;--ink-2:#3B3631;--muted:#5E5751;--line:#ECE7E1;--line-2:#DAD3CB;--pri:#FF6A1A;--pri-d:#E85A0C;--pri-tint:#FFF1E8;--hl:#FFD43B;--lime:#D9F99D;--lime-ink:#1F3306;--yel:#FEF3C0;--yel-ink:#5A3A00;--pink:#FFE4F1;--pink-ink:#8A1550;
--r:16px;--r-lg:24px;--shadow:0 1px 2px rgba(15,13,11,.05),0 4px 14px -6px rgba(15,13,11,.10);--shadow-h:0 2px 4px rgba(15,13,11,.06),0 18px 38px -14px rgba(15,13,11,.22);
--disp:"Bricolage",ui-sans-serif,system-ui,sans-serif;--sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
@font-face{font-family:"Bricolage";src:url(fonts/bricolage.woff2) format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"Inter";src:url(fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(255,106,26,.18)}
::selection{background:var(--hl);color:var(--ink)}
a{color:var(--ink);text-decoration-color:var(--pri);text-decoration-thickness:2px;text-underline-offset:3px}a:visited{color:var(--ink)}a:hover{color:var(--pri-d)}
:focus{outline:none}:focus-visible{outline:3px solid var(--pri);outline-offset:3px;border-radius:10px}
input,button{font:inherit;color:inherit;accent-color:var(--pri);caret-color:var(--pri)}
svg{flex:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3,h4{font-family:var(--disp);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin:0}
/* header */
.top{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:24px;height:68px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:800 1.2rem/1 var(--disp);letter-spacing:-.03em;color:var(--ink)}
.logo:visited{color:var(--ink)}.logo:hover{color:var(--ink)}
.nav{display:flex;gap:4px;margin-left:auto;align-items:center}
.nav a{padding:8px 14px;border-radius:999px;text-decoration:none;font-weight:500;font-size:.95rem;color:var(--ink-2);white-space:nowrap}
.nav a:hover{background:var(--bg-2);color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);font-weight:650}
.nav .btn{margin-left:8px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:12px;border:1px solid var(--line-2);background:#fff;color:var(--ink);font-weight:650;font-size:.95rem;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s;white-space:nowrap}
.btn:visited{color:var(--ink)}.btn:hover{transform:translateY(-1px);border-color:var(--ink);color:var(--ink);box-shadow:0 6px 14px -8px rgba(15,13,11,.35)}
.btn.pri{background:var(--pri);border-color:var(--pri);color:var(--ink);box-shadow:0 1px 0 rgba(15,13,11,.25),0 8px 20px -8px rgba(255,106,26,.75)}
.btn.pri:hover{background:#FF7A30;box-shadow:0 1px 0 rgba(15,13,11,.25),0 14px 28px -10px rgba(255,106,26,.85);transform:translateY(-2px)}
.btn.dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn.dark:visited,.btn.dark:hover{color:#fff}
.btn.xl{min-height:58px;padding:0 30px;border-radius:16px;font-size:1.08rem;font-weight:750}
.btn:active{transform:translateY(0)}
/* hero */
.hero{padding:64px 0 56px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 8px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);font-size:.88rem;font-weight:550;color:var(--ink-2)}
.badge .e{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:var(--shadow);color:var(--pri-d)}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);margin:22px 0 20px;letter-spacing:-.045em;line-height:1}
.mark{position:relative;white-space:nowrap;z-index:0;padding:0 .08em}
.mark::before{content:"";position:absolute;left:-.06em;right:-.06em;top:.12em;bottom:.02em;background:var(--pri);border-radius:.14em;transform:rotate(-1.6deg);z-index:-1}
.sub{font-size:1.2rem;line-height:1.55;color:var(--ink-2);max-width:36ch;margin:0 0 26px}
.find{display:flex;flex-wrap:wrap;gap:10px;align-items:center;max-width:640px;padding:10px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-h);position:relative;z-index:6}
.find .search{flex:1 1 100%}.find .dd{flex:1 1 200px}.find .dd-btn{width:100%;height:50px;justify-content:space-between}.find .btn{flex:1 1 200px;min-height:50px;border-radius:14px}
.proof{display:flex;align-items:flex-start;gap:10px;margin-top:24px;font-size:.92rem;color:var(--muted);max-width:52ch}
.proof b{color:var(--ink)}.proof svg{color:var(--pri-d);margin-top:4px}
.show{position:relative}
.show .card{transform:rotate(1.6deg);box-shadow:0 30px 60px -24px rgba(15,13,11,.35),0 2px 6px rgba(15,13,11,.06);max-width:440px;margin-left:auto}
.show .card:hover{transform:rotate(0deg) translateY(-4px)}
.show::before{content:"";position:absolute;inset:-30px -40px -30px 10%;background:radial-gradient(closest-side,rgba(255,212,59,.55),rgba(255,212,59,0));z-index:-1}
.note-hand{position:absolute;left:-6px;bottom:-34px;display:flex;align-items:center;gap:6px;font:italic 600 1rem/1.2 var(--disp);color:var(--ink-2);transform:rotate(-3deg)}
.note-hand svg{color:var(--pri)}
/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-2);margin:0 0 64px}
.stats div{padding:22px 24px;border-left:1px solid var(--line)}.stats div:first-child{border-left:0}
.stats b{display:block;font:800 2.2rem/1 var(--disp);letter-spacing:-.04em}.stats span{font-size:.9rem;color:var(--muted)}
/* sections */
.sec{padding:24px 0 72px}
.kicker{display:inline-block;font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#B8430A;margin-bottom:12px}
.sec h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em}
.sec .lead{color:var(--ink-2);font-size:1.08rem;max-width:56ch;margin:14px 0 0}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
/* toolbar */
.toolbar{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:14px;display:grid;gap:12px;margin:28px 0 20px;position:relative;z-index:5}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.search{flex:1 1 320px;display:flex;align-items:center;gap:10px;height:50px;padding:0 16px;border-radius:14px;background:var(--bg-2);border:1.5px solid var(--line);color:var(--muted);transition:border-color .15s,background .15s}
.search:focus-within{border-color:var(--ink);background:#fff}
.search input{flex:1;border:0;background:transparent;outline:none;font-size:1rem;color:var(--ink);min-width:0}
.search input::placeholder{color:#6E665F}
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
.seg{display:inline-flex;gap:4px;padding:4px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line)}
.seg button{border:0;background:transparent;padding:0 14px;height:40px;border-radius:10px;font-weight:600;font-size:.92rem;color:var(--ink-2);cursor:pointer;white-space:nowrap}
.seg button:hover{background:#fff;color:var(--ink)}
.seg button[aria-pressed=true]{background:var(--ink);color:#fff;box-shadow:0 2px 6px -2px rgba(15,13,11,.4)}
.dd{position:relative}
.dd-btn{display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 14px 0 16px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font-weight:600;font-size:.92rem;cursor:pointer;white-space:nowrap}
.dd-btn .k{color:var(--muted);font-weight:500}.dd-btn:hover{border-color:var(--ink)}
.dd-btn.on{border-color:var(--ink);background:var(--pri-tint)}
.dd-btn[aria-expanded=true] svg{transform:rotate(180deg)}.dd-btn svg{transition:transform .15s}
.dd-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;max-height:320px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-h);padding:6px;margin:0;list-style:none;z-index:40;display:none}
.dd-menu.open{display:block}.dd-menu:focus-visible{outline:none;border-color:var(--ink)}
.dd-menu li{display:flex;justify-content:space-between;gap:16px;padding:9px 12px;border-radius:10px;cursor:pointer;font-size:.93rem}
.dd-menu li:hover,.dd-menu li.act{background:var(--bg-2)}.dd-menu li.act{box-shadow:inset 0 0 0 2px var(--ink)}
.dd-menu li[aria-selected=true]{background:var(--pri-tint);font-weight:650}
.dd-menu .n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}
[id]{scroll-margin-top:84px}
.spacer{flex:1}
.clear{border:0;background:none;font-weight:650;text-decoration:underline;text-decoration-color:var(--pri);text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer;padding:8px}
.list-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.count{font-size:.95rem;color:var(--muted)}.count b{color:var(--ink);font-weight:750}
.legend{display:flex;gap:8px;flex-wrap:wrap}
/* pills */
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:.8rem;font-weight:650;white-space:nowrap;line-height:1.2}
.pill.yes{background:var(--lime);color:var(--lime-ink)}.pill.cond{background:var(--yel);color:var(--yel-ink)}
.pill.biz{background:var(--ink);color:#fff}.pill.cust{background:var(--pink);color:var(--pink-ink)}
.pill.tagph{background:var(--ink);color:var(--hl);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s,border-color .18s}
.grid .card{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:14px;align-content:start}
.grid .card:hover{transform:translateY(-3px);box-shadow:var(--shadow-h);border-color:var(--line-2)}
.grid .card .dl,.grid .card .ev{align-self:start}.grid .card .actions{align-self:end}
.card-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.card-head{min-width:0}
.kind{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:650;color:var(--muted)}.kind svg{color:var(--pri-d)}
.card h3{font-size:1.32rem;letter-spacing:-.025em;line-height:1.15}
.where{color:var(--ink-2);font-size:.93rem;margin-top:6px}
.addr{color:var(--muted);font-size:.86rem;margin-top:2px}
.dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:.9rem;padding:12px 14px;background:var(--bg-2);border-radius:14px}
.dl dt{color:var(--muted);font-weight:500}.dl dd{margin:0;color:var(--ink)}.dl dd.na{color:var(--muted)}
.ev{display:grid;gap:8px;justify-items:start;border-top:1px dashed var(--line-2);padding-top:12px}
.quote{margin:0;padding:10px 14px;border-left:3px solid var(--pri);background:var(--pri-tint);border-radius:0 12px 12px 0;font-size:.92rem;color:var(--ink)}
.note{margin:0;font-size:.84rem;color:var(--ink-2)}
.src{margin:0;font-size:.82rem;color:var(--muted)}.src b{color:var(--ink-2);font-weight:650}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.actions .btn{min-height:42px;font-size:.9rem;padding:0 14px}
/* placeholders (preview build only) */
.ph{border:2px dashed var(--line-2);border-radius:var(--r-lg);padding:20px 22px;display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;background:repeating-linear-gradient(-45deg,#fff 0 12px,var(--bg-2) 12px 24px)}
.ph h3{font-size:1.1rem;letter-spacing:-.02em;margin-bottom:4px}.ph p{margin:0;color:var(--ink-2);font-size:.92rem;max-width:70ch}
.ph .body{flex:1 1 320px}
.ph-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%}
.ph-slot{border:1.5px dashed var(--line-2);border-radius:14px;padding:16px;text-align:center;font-size:.85rem;font-weight:600;color:var(--muted);background:#fff}
/* empty */
.empty{grid-column:1/-1;text-align:center;padding:56px 20px;border:2px dashed var(--line-2);border-radius:var(--r-lg);background:var(--bg-2)}
.empty .e{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:18px;background:#fff;box-shadow:var(--shadow);color:var(--pri-d)}
.empty h3{font-size:1.5rem;margin:14px 0 6px}.empty p{color:var(--ink-2);margin:0 auto 18px;max-width:52ch}
/* quotes (real posts) */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}
.post p{margin:0;font-size:1.02rem;line-height:1.5;font-weight:500}
.post .meta{margin-top:auto;font-size:.84rem;color:var(--muted);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.post .meta a{font-weight:600;display:inline-flex;align-items:center;gap:4px}
.dark-sec{background:var(--ink);color:#F5F1EC;border-radius:32px;padding:64px 48px;margin:0 0 72px}
.dark-sec .kicker{color:var(--hl)}.dark-sec .lead{color:#D8D1C9}
.dark-sec .post{background:#1E1A17;border-color:#332D28;box-shadow:none;color:#F5F1EC}
.threads{display:flex;flex-wrap:wrap;gap:8px 10px;justify-content:center;align-items:center;margin:28px 0 0;font-size:.9rem;color:#D8D1C9}.threads a{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:999px;border:1px solid #3A332D;text-decoration:none;font-weight:600}.threads a:hover{border-color:var(--hl)}
.dark-sec .post .meta{color:#BDB4AA}.dark-sec a,.dark-sec a:visited{color:#fff}.dark-sec a:hover{color:var(--hl)}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.step{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px}
.step .e{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#fff;box-shadow:var(--shadow);color:var(--pri-d);margin-bottom:18px}
.step .n{font-weight:700;font-size:.8rem;color:#B8430A;letter-spacing:.06em;text-transform:uppercase}
.step h3{font-size:1.35rem;margin:6px 0 8px}.step p{margin:0;color:var(--ink-2);font-size:.95rem}
/* faq */
.faq{max-width:780px;margin:36px auto 0;display:grid;gap:10px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:18px;transition:border-color .15s,box-shadow .15s}
.faq details[open]{border-color:var(--line-2);box-shadow:var(--shadow)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-weight:650;font-size:1.05rem;border-radius:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--bg-2);font-weight:700;transition:transform .2s,background .2s}
.faq details[open] .pm{transform:rotate(45deg);background:var(--pri)}
.faq .a{padding:0 22px 20px;color:var(--ink-2)}.faq .a p{margin:0}
/* final cta */
.final{background:var(--pri);border-radius:32px;padding:64px 32px;text-align:center;margin:0 0 72px;position:relative;overflow:hidden}
.final h2{font-size:clamp(2.1rem,5vw,3.6rem);letter-spacing:-.045em;max-width:18ch;margin:0 auto 14px}
.final p{font-size:1.12rem;margin:0 auto 28px;max-width:46ch;color:#2A1606}
.final .btn.dark{min-height:58px;padding:0 30px;border-radius:16px;font-size:1.08rem;box-shadow:0 14px 28px -12px rgba(15,13,11,.6)}
.final .btn.dark:hover{transform:translateY(-2px);background:#26211D}
/* page head */
.page-head{padding:64px 0 24px}
.page-head h1{font-size:clamp(2.3rem,5vw,3.8rem);letter-spacing:-.045em;max-width:20ch;margin:18px 0 16px}
.page-head p{font-size:1.15rem;color:var(--ink-2);max-width:56ch;margin:0}
.prose{max-width:760px;padding-bottom:64px}.prose h2{font-size:1.8rem;margin:40px 0 12px}
.prose ul{padding-left:0;list-style:none;display:grid;gap:10px}.prose li{position:relative;padding-left:30px}
.prose li::before{content:"✓";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--lime);color:var(--lime-ink);font-size:.72rem;font-weight:800;display:grid;place-items:center}
.prose ul.no li::before{content:"✕";background:var(--pink);color:var(--pink-ink)}
.kinds{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kinds .card .big{font:800 3.2rem/1 var(--disp);letter-spacing:-.05em}.kinds .card p{margin:0;color:var(--ink-2);font-size:.95rem}
/* footer */
footer{border-top:1px solid var(--line);background:var(--bg-2);padding:48px 0 32px;font-size:.92rem;color:var(--ink-2)}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
footer .fh{margin:0 0 12px;font-weight:700;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer a{text-decoration:none;color:var(--ink-2)}footer a:visited{color:var(--ink-2)}footer a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--pri)}
.fine{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;font-size:.84rem;color:var(--muted)}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:48px}.show .card{margin:0 auto}.posts,.steps{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stats div:nth-child(3){border-left:0}.stats div:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:720px){
 .wrap{padding:0 18px}.nav a:not(.btn){display:none}.top .wrap{height:60px}
 .hero{padding:36px 0 44px}.hero h1{font-size:2.55rem;margin:18px 0}.sub{font-size:1.06rem;margin-bottom:20px}
 .mark{white-space:normal}
 .find{padding:8px}.find .dd,.find .btn{flex:1 1 100%}
 .note-hand{display:none}.show{display:none}.nav .btn{min-height:40px;padding:0 14px;font-size:.88rem}
 .stats{margin-bottom:48px}.stats div{padding:16px 18px}.stats b{font-size:1.8rem}
 .steps{gap:12px}.step{padding:20px;display:grid;grid-template-columns:52px 1fr;column-gap:16px}.step .e{margin:0;grid-row:span 3}.step h3{margin:2px 0 4px}
 .toolbar{padding:12px}.row{gap:8px}.seg{width:100%}.seg button{flex:1;min-width:0;height:auto;min-height:40px;padding:4px 6px;white-space:normal;line-height:1.2}
 .dd{flex:1 1 0;min-width:0}.dd-btn{width:100%;justify-content:space-between}.dd-btn>span{overflow:hidden;text-overflow:ellipsis}
 .dd-menu{min-width:100%;width:max-content;max-width:calc(100vw - 40px)}.dd[data-key=spec] .dd-menu{left:auto;right:0}
 .grid{grid-template-columns:1fr}.card{padding:18px}
 .dark-sec,.final{border-radius:24px;padding:44px 20px}.ph-grid{grid-template-columns:1fr}
 .kinds{grid-template-columns:1fr}footer .wrap{grid-template-columns:1fr 1fr}footer .wrap>div:first-child{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.btn:hover,.card:hover{transform:none!important}}
