@font-face{font-family:Archivo;src:url('/assets/archivo-variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--ink:#521e2d;--paper:#fcfcf8;--blue:#cedbf0;--line:#cbbfc2;--soft:#f1ecee}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Archivo,Arial,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit;color:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}::selection{background:var(--blue);color:var(--ink)}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.mast{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;border-bottom:1px solid var(--line)}.brand{font-size:40px;font-weight:850;letter-spacing:-.04em;text-decoration:none}.mast nav{display:flex;gap:28px;font-size:15px;font-weight:650}.mast nav a{padding:10px 0}.skip{position:absolute;left:20px;top:-80px;background:var(--paper);padding:10px;z-index:2}.skip:focus{top:10px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(40px,5.2vw,68px);font-weight:780;max-width:19ch}h2{font-size:32px;font-weight:750}h3{font-size:22px;font-weight:720}p{max-width:68ch}p+p{margin-top:16px}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;padding:65px 0 50px}.intro h1 span{background:var(--blue);box-decoration-break:clone;-webkit-box-decoration-break:clone}.lead{font-size:23px;line-height:1.45}.intro .lead{font-weight:650}.open-note{font-size:15px;font-weight:650}.featured{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;padding:38px;background:var(--blue);margin-bottom:62px}.featured h2{max-width:23ch;margin:10px 0 18px}.pack-label{font-size:16px;font-weight:650}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ink);color:var(--paper);padding:14px 20px;margin-top:24px;font-size:16px;font-weight:650;text-decoration:none;min-height:48px}.button:hover{background:#71364a}.mini-flow{margin:0;padding-left:28px;align-self:center}.mini-flow li{font-size:21px;font-weight:650;padding:15px 0;border-bottom:1px solid #9aadc8}.browse-head{display:flex;justify-content:space-between;gap:45px;align-items:start}.browse-head p{font-size:16px;max-width:43ch}.filters{display:grid;grid-template-columns:1.5fr 1fr auto;gap:20px;align-items:end;margin-top:28px}.filters[hidden],[hidden]{display:none!important}label{display:block;font-size:14px;font-weight:650;margin-bottom:7px}input,select{width:100%;min-height:48px;border:1px solid var(--ink);background:var(--paper);border-radius:0;padding:10px 12px}input::placeholder{color:#79525f;opacity:1}button{background:transparent;border:1px solid var(--line);min-height:48px;padding:10px 16px;cursor:pointer}button:hover{background:var(--soft)}.count{font-size:14px;margin:20px 0 12px}.recipe{display:grid;grid-template-columns:160px 1fr 155px;gap:30px;padding:32px 0;border-top:1px solid var(--line)}.recipe-kind{font-size:14px;display:flex;flex-direction:column;gap:9px}.recipe-kind span:first-child{font-weight:700}.recipe h2{font-size:29px;margin-bottom:13px}.recipe h2 a{text-decoration:none}.recipe h2 a:hover{text-decoration:underline}.recipe p{font-size:17px}.result{font-size:15px!important}.read{font-size:15px;font-weight:650;align-self:start;white-space:nowrap}.help{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:65px;margin:65px 0;padding:38px;background:var(--soft)}.help h2{max-width:24ch}.help p{margin-top:18px}.help .button{justify-self:end;margin:0}footer{display:flex;align-items:center;gap:28px;border-top:1px solid var(--line);padding:24px 0 40px}footer p{font-size:14px;max-width:50ch}footer>a:last-child{margin-left:auto;font-size:14px}.back{display:inline-block;margin-top:28px;font-size:15px}.detail-intro{padding:30px 0 45px;max-width:850px}.detail-intro .lead{margin:25px 0 18px}.outcome{background:var(--blue);padding:30px 36px}.outcome>p{font-size:22px;margin-top:18px}.outcome dl{margin-bottom:0;display:grid;grid-template-columns:180px 1fr;gap:8px 25px;font-size:16px}dt{font-weight:650}dd{margin:0}.steps{margin-top:55px}.steps>p{margin-top:16px}.steps ol{list-style:none;padding:0;counter-reset:step;margin:28px 0 0}.steps li{counter-increment:step;display:grid;grid-template-columns:35px 230px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.steps li:before{content:counter(step);font-weight:750;font-size:22px}.step-title p{font-size:14px;margin-top:8px}.done{font-size:16px}.detail-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;margin:55px 0}.detail-grid h2{font-size:28px;margin-bottom:18px}.detail-grid h2:not(:first-child){margin-top:35px}.detail-grid li{margin:12px 0}.detail-grid ul{padding-left:22px}.detail-grid aside{background:var(--soft);padding:28px;align-self:start}.small{font-size:14px}.sample{font-size:16px}.sample dt{margin-top:16px}.sample dd{overflow-wrap:anywhere}.first-run{padding:30px 0;border-top:1px solid var(--line)}.first-run p{margin-top:18px}.first-run h3{margin-top:25px}.download-section{margin-top:25px;background:var(--blue);padding:35px}.download-section>p{margin-top:18px}.download-section .small{margin-top:14px}details{margin-top:25px;border-top:1px solid #9aadc8;padding-top:18px}summary{cursor:pointer;font-weight:650;min-height:44px}details li{padding:5px 0}@media(max-width:850px){.intro{gap:35px}.featured{gap:30px}.recipe{grid-template-columns:120px 1fr}.read{grid-column:2}.help{gap:25px}.detail-grid{gap:30px}.steps li{grid-template-columns:30px 180px 1fr}}@media(max-width:600px){body{font-size:17px}.wrap{width:calc(100% - 36px)}.mast{gap:12px;flex-wrap:wrap;padding:14px 0}.brand{font-size:34px}.mast nav{gap:17px;font-size:13px}.mast nav a{min-height:44px;display:inline-flex;align-items:center}.intro{grid-template-columns:1fr;gap:25px;padding:35px 0}.lead{font-size:20px}h2{font-size:28px}.featured{grid-template-columns:1fr;gap:25px;padding:24px;margin-bottom:40px}.featured h2{font-size:29px}.mini-flow li{font-size:18px;padding:10px 0}.browse-head{display:block}.browse-head p{margin-top:14px}.filters{grid-template-columns:1fr;gap:14px}.filters button{justify-self:start}.recipe{display:block;padding:25px 0}.recipe-kind{flex-direction:row;justify-content:space-between;margin-bottom:14px;font-size:13px}.recipe h2{font-size:27px}.read{display:inline-block;margin-top:16px;padding:8px 0}.help{grid-template-columns:1fr;padding:24px;margin:40px 0;gap:24px}.help .button{justify-self:start}.button{font-size:15px}.help h2{font-size:29px}footer{flex-wrap:wrap;gap:14px}footer p{order:3;flex-basis:100%}.detail-intro{padding-top:25px}.detail-intro h1{font-size:39px}.outcome{padding:24px}.outcome>p{font-size:20px}.outcome dl{grid-template-columns:1fr;gap:5px}.outcome dt:not(:first-child){margin-top:10px}.steps{margin-top:35px}.steps li{grid-template-columns:25px 1fr;gap:12px}.steps li>div:last-child{grid-column:2}.detail-grid{grid-template-columns:1fr;gap:30px;margin:35px 0}.download-section{padding:24px}.download-section h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.ai-fit{padding:32px 0 0;max-width:75ch}.ai-fit h2{font-size:28px;margin-bottom:18px}.implementation{margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}.implementation summary{font-size:20px}.implementation .detail-grid{margin-top:25px}.intro+.browse-head{margin-top:10px}

/* Browse catalog: compact summaries stay readable without JavaScript. */
.jump{display:inline-block;font-size:16px;font-weight:650;margin-top:20px;padding:8px 0}.featured-section{padding:0 0 54px}.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.featured-idea{background:var(--blue);padding:24px;display:flex;flex-direction:column;align-items:start}.eyebrow{font-size:13px;font-weight:650;margin-bottom:12px}.featured-idea h3{font-size:23px;margin-bottom:20px}.featured-idea h3 a{text-decoration:none}.featured-idea h3 a:hover{text-decoration:underline}.featured-idea .read{margin-top:auto;white-space:normal;padding-top:8px}#catalog{border-top:1px solid var(--line);padding-top:42px;scroll-margin-top:24px}.catalog-group{margin-top:34px}.catalog-group>h3{display:flex;align-items:baseline;gap:14px;font-size:25px;margin-bottom:15px}.group-count{font-size:14px;font-weight:450;letter-spacing:0;white-space:nowrap}.idea-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.catalog-idea{border:1px solid var(--line);scroll-margin-top:24px}.catalog-idea summary{padding:20px 48px 20px 22px;position:relative;cursor:pointer;list-style:none}.catalog-idea summary::-webkit-details-marker{display:none}.catalog-idea summary::after{content:'+';position:absolute;right:20px;top:18px;font-size:25px;font-weight:450}.catalog-idea[open] summary::after{content:'−'}.catalog-idea summary:hover{background:var(--soft)}.catalog-idea[open]{background:var(--soft)}.idea-heading{display:block;font-size:20px;line-height:1.25;font-weight:700;letter-spacing:-.02em}.idea-problem{display:block;font-size:15px;line-height:1.5;margin-top:9px;font-weight:400}.idea-body{padding:0 22px 22px}.idea-body h4{font-size:14px;margin:16px 0 7px;font-weight:700}.idea-body h4:first-child{border-top:1px solid var(--line);padding-top:16px;margin-top:0}.idea-body p{font-size:16px;line-height:1.55}.idea-body .read{display:inline-block;margin-top:16px;white-space:normal}#empty{padding:30px 0}
@media(max-width:900px){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-idea{padding:20px}}
@media(max-width:600px){.featured-section{padding-bottom:32px}.featured-grid{gap:10px}.featured-idea{padding:16px}.featured-idea h3{font-size:19px}.featured-idea .read{font-size:13px}.eyebrow{font-size:12px}.idea-grid{grid-template-columns:1fr}.catalog-group>h3{font-size:23px;flex-wrap:wrap;gap:8px}.catalog-group{margin-top:26px}.catalog-idea summary{padding:18px 42px 18px 18px}.idea-body{padding:0 18px 18px}.idea-heading{font-size:19px}.idea-problem{font-size:15px}#catalog{padding-top:30px}}
@media(max-width:360px){.featured-grid{grid-template-columns:1fr}}

/* Keep every destination reachable at narrow viewport widths. */
.mast nav{flex-wrap:wrap;align-items:center}.mast nav a{white-space:nowrap}
@media(max-width:700px){.mast nav{gap:4px 16px;width:100%;justify-content:space-between}}
