/* Firebird Bento — modular layout and motion, no framework required. */
:root{--ink:#252820;--muted:#687062;--line:#e0e3d9;--paper:#f3f3ed;--accent:#7054ce;--orange:#6643b3;--green:#6850b2;--lavender:#e9e2fc;--lime:#ddebab;--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:28px}body{background:var(--paper)}main{max-width:1480px;padding:0 44px}.topbar{max-width:1480px;padding:24px 44px;min-height:100px;gap:22px}.brand{font-size:28px;letter-spacing:-1.3px}.brandmark{background:#d8eaa4;color:#252820;border-radius:11px}.brand-caption{display:none}.topnav{gap:6px;border:1px solid #dfe2d8;border-radius:99px;padding:5px;background:#ffffff60}.topnav a{padding:10px 15px;font-size:12px;border-radius:99px}.topnav a:hover{background:#fff;color:#5c41a9}.demo-badge{display:none}.motion-toggle{display:flex;align-items:center;gap:7px;font-size:11px;min-height:40px;padding:8px 12px;border:1px solid #d8dccc;border-radius:99px;background:transparent;color:#5d6653;white-space:nowrap}.motion-toggle span{font-size:16px}.motion-toggle[aria-pressed=false]{background:#e6e7e0}.motion-toggle:disabled{opacity:.75;cursor:default}
.bento-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;isolation:isolate}.bento-tile{position:relative;border-radius:26px;overflow:hidden;min-width:0;border:1px solid #e0e3d9;transform:translate3d(0,0,0);transition:box-shadow .35s var(--ease),border-color .25s,transform .4s var(--ease)}.hero-story{grid-column:span 7;grid-row:span 2;background:#fff;min-height:496px;padding:38px 40px;display:flex;flex-direction:column;align-items:flex-start}.bento-label{font-size:10px;font-weight:650;letter-spacing:1.5px;line-height:1.5;margin:0;color:#69745a}.hero-story>.bento-label{display:flex;align-items:center;gap:8px;position:relative}.status-dot{width:6px;height:6px;border-radius:50%;background:#769446}.hero-story h1{position:relative;font-size:clamp(46px,4.8vw,70px);line-height:1.06;letter-spacing:-3.7px;font-weight:550;margin:29px 0 22px}.hero-story h1 em{display:inline-block;font-family:Georgia,'Times New Roman',serif;color:#7054ba;font-weight:400;letter-spacing:-4px;font-style:italic}.hero-spark{position:absolute;font-size:68px;line-height:1;color:#cbdca3;right:-77px;top:32px;transform:rotate(9deg)}.bento-lead{font-size:15px;line-height:1.8;color:#74796c;margin:0;position:relative}.hero-actions{display:flex;align-items:center;gap:20px;position:relative;margin:27px 0 35px}.bento-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:16px 20px;min-height:52px;border-radius:13px;background:#282d23;color:#fff;text-decoration:none;font-size:13px;font-weight:600;box-shadow:0 5px 0 #dde8c1;transition:transform .3s var(--ease),box-shadow .3s,background .3s}.bento-cta span{color:#ddebab;font-size:21px}.bento-cta:hover{background:#454d35;transform:translateY(-3px);box-shadow:0 8px 0 #dde8c1}.hero-actions>span{font-size:11px;line-height:1.6;color:#767d6c}.story-foot{display:flex;align-items:center;gap:12px;position:relative;margin-top:auto;width:100%;border-top:1px solid #e9ebe3;padding-top:23px}.story-foot>span{font-size:10px;color:#818674;line-height:1.8}.story-foot strong{font-size:10px;font-weight:500;color:#4f5d41}.story-foot .story-index{margin-left:auto;font-family:monospace;font-size:10px;white-space:nowrap}.avatar-stack{display:flex;padding-left:0}.avatar-stack svg{width:34px;height:34px;border-radius:50%;border:3px solid white;margin-left:-8px}.avatar-stack svg:first-child{margin-left:0}#bento-orbit{position:absolute;width:230px;height:230px;right:-52px;bottom:20px;opacity:.5;pointer-events:none}
.hero-people{grid-column:span 5;background:var(--lavender);padding:26px 28px}.tile-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.tile-heading .bento-label{font-size:9px;color:#786693;letter-spacing:1.3px}.tile-symbol{display:grid;place-items:center;width:25px;height:25px;background:#fff9;border-radius:50%;font-size:17px}.hero-people h2{font-size:25px;font-weight:550;letter-spacing:-.9px;margin:0}.tile-caption{font-size:11px;color:#7d6f8c;margin:6px 0 14px}.hero-team{display:grid;gap:7px}.hero-person{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:7px 10px;border:1px solid #ffffff9c;background:#ffffff70;border-radius:12px;text-align:left;color:var(--ink);transition:background .2s,transform .3s var(--ease)}.hero-person:hover{background:#fff;transform:translateX(4px)}.hero-person>svg{width:35px;height:35px;flex-shrink:0;border-radius:10px}.hero-person>span{font-size:12px;font-weight:600;min-width:0;overflow-wrap:anywhere}.hero-person small{font-size:10px;margin:2px 0 0;line-height:1.3;color:#80748d;font-weight:400}.hero-person>b{margin-left:auto;font-size:12px;font-weight:500;color:#75589e}.hero-empty{font-size:13px;line-height:1.8;margin:14px 0;color:#665778}
.hero-date{grid-column:span 3;background:#f9f6eb;padding:24px 25px;min-height:200px}.hero-date .bento-label{color:#8a805e;font-size:9px}.date-display{display:flex;align-items:center;gap:15px;margin:7px 0 18px}.date-display>strong{font-size:65px;letter-spacing:-4px;line-height:1.1;font-weight:450;font-variant-numeric:tabular-nums}.date-display>div{display:grid;gap:6px;font-size:12px;color:#625f4d}.date-display #hero-weekday{font-size:11px;color:#8d8977}.date-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}.date-controls>span{font-size:9px;color:#89816a;text-align:center;line-height:1.5}.date-controls button{width:34px;height:34px;min-height:34px;flex-shrink:0;border:1px solid #dedac9;border-radius:50%;background:#fff8;color:#6e6953;font-size:16px}.date-controls button:hover{background:#fff}.date-controls button:disabled{opacity:.3;cursor:default}.calendar-range{display:block;margin-top:10px;font-size:9px;color:#8d866f;text-align:center;letter-spacing:.5px}
.hero-stat{grid-column:span 2;background:var(--lime);padding:22px 24px;display:flex;flex-direction:column;justify-content:space-between;min-height:200px}.stat-flower{font-size:34px;line-height:1;position:absolute;right:18px;top:16px;color:#7c9350}.hero-stat strong{display:block;font-size:65px;line-height:1.1;font-weight:450;letter-spacing:-4px;margin-top:14px}.hero-stat p{font-size:11px;line-height:1.6;color:#6b7a4d;margin:8px 0 16px}.stat-bottom{font-size:10px;color:#596a3a;border-top:1px solid #bdd180;padding-top:12px}.stat-bottom b{font-weight:600}
.hero-scenarios{grid-column:1/-1;background:#292e25;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 30px;border-color:#292e25;border-radius:22px}.hero-scenarios .bento-label{font-size:9px;color:#aab896;margin-bottom:7px}.hero-scenarios h2{font-size:19px;font-weight:450;letter-spacing:-.5px}.scenario-chips{display:flex;gap:8px;flex-wrap:wrap}.scenario-chips button{border:1px solid #5c634d;border-radius:99px;background:#ffffff05;color:#e0e7d4;min-height:44px;padding:11px 16px;font-size:12px;display:flex;align-items:center;gap:10px;transition:background .25s,transform .25s var(--ease)}.scenario-chips span{color:#cce399;font-size:18px}.scenario-chips button:hover{background:#ddebab;color:#29341e;transform:translateY(-3px)}.scenario-chips button:hover span{color:#43562e}
.workspace-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:56px 0 26px}.workspace-intro .bento-label{font-size:9px;margin-bottom:12px}.workspace-intro h2{font-size:34px;font-weight:500;letter-spacing:-1.2px}.workspace-intro em{font-family:Georgia,serif;font-weight:400;color:#76628e}.step-pills{display:flex;gap:6px;flex-wrap:wrap}.step-pills span{display:flex;align-items:center;gap:8px;min-height:35px;font-size:10px;color:#7b816f;padding:7px 11px;border-radius:99px;border:1px solid #dce1d3}.step-pills b{font-weight:500;color:#6b53a5;font-size:9px}
.workspace{grid-template-columns:292px minmax(0,1fr);gap:20px}.brief-panel{border-radius:22px;border-color:#dfe3d5;padding:25px;background:#fff;box-shadow:none}.panel-heading{border-bottom:1px solid #eceee5;padding-bottom:19px;margin-bottom:20px}.step{background:#eee7fc;border-color:#e5dbf6;color:#7a61a8;border-radius:11px}.panel-caption{font-size:11px}input,select{border-radius:9px;background:#fafbf7;border-color:#e0e5d8}input:focus,select:focus{outline-color:#8770b6}.primary-button{background:#7560b3;border-radius:11px;min-height:49px;box-shadow:none}.primary-button:hover{background:#60489f;box-shadow:0 7px 20px #7660b42c}.primary-button>span{color:#e8dfef}.budget-presets button{border-radius:8px}.budget-presets button[aria-pressed=true]{background:#eee8fa;border-color:#d4c7eb;color:#6b5297}.optional-fields{border-color:#e7e9e0}.draft-row{padding-top:14px}.catalog-tabs{background:#e6e8df;border-color:#dde1d3;padding:5px;border-radius:14px;margin-bottom:20px}.catalog-tabs button{border-radius:10px;font-size:12px}.catalog-tabs button[aria-selected=true]{color:#695198}.catalog-tabs span{background:#f1ecfa;color:#745a9d}.demo-queries{border:1px dashed #d2d8c7;border-radius:12px;padding:13px 15px;background:transparent;margin-bottom:23px}.demo-queries summary{font-size:11px}.results-heading h2{font-size:24px;font-weight:500;letter-spacing:-.8px}.results-heading .eyebrow{font-size:9px;color:#8b7aa0}.count-badge{border-radius:99px;color:#735a9a;background:#eae3f7;padding:7px 11px}.selection-tools{background:#ebeee3;border-color:#dee4d1;border-radius:12px}.selection-tools p{font-size:11px}.shortlist-open{border-radius:8px;background:#fff;border-color:#d9e1cb;font-size:11px}
#results,#favorites-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}.contractor{margin:0;padding:23px;border-radius:22px;border-color:#dee3d5;box-shadow:none;display:flex;flex-direction:column;animation:none}.contractor.best{grid-column:1/-1;border:1px solid #c5cba9;background:linear-gradient(110deg,#fff 62%,#f0f2e3)}.card-kicker{margin-bottom:18px}.card-kicker>span:first-child{font-size:9px;letter-spacing:1.6px}.available{font-size:10px}.card-top{flex-wrap:wrap;align-items:center;gap:12px}.card-identity{flex:1;flex-basis:calc(100% - 80px);min-width:0}.contractor h3{font-size:22px;letter-spacing:-.6px}.avatar.portrait-avatar{width:56px;height:56px;border-radius:15px}.card-subtitle{font-size:11px;line-height:1.5}.price{flex-basis:100%;text-align:left;margin:8px 0 0;display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.price small:first-child{display:none}.price strong{font-size:25px;font-weight:500;letter-spacing:-1px}.price small{font-size:10px}.best .card-top{flex-wrap:nowrap}.best .card-identity{flex:1}.best .price{flex-basis:auto;margin:0;display:block;text-align:right}.best .price small:first-child{display:block}.rating-preview{font-size:11px;gap:7px;flex-wrap:wrap}.fit-reasons{font-size:11px;gap:7px 12px;margin-top:14px;color:#667d4c}.evidence-box{background:#f5f6f0;border-color:#e8ebdf;border-radius:11px;padding:16px;flex:1}.evidence-box h4{color:#6c7d54}.evidence-box h4 span{color:#8b74b1}.evidence-box blockquote{font-size:13px;line-height:1.8}.evidence-source{font-size:10px}.provenance{margin:13px 0}.source-tag,.data-warning{font-size:9px;padding:4px 6px}.card-bottom{margin-top:auto;gap:10px}.card-bottom .price-note{flex-basis:100%;font-size:10px;margin-bottom:2px}.card-bottom .save-button,.card-bottom .details-button{flex:1;justify-content:center;padding:9px 10px;gap:8px;font-size:11px}.best .card-bottom .price-note{flex:1 1 180px}.best .card-bottom .save-button,.best .card-bottom .details-button{flex:0 1 auto;min-width:120px}.details-button,.save-button{border-radius:9px}.save-button[aria-pressed=true]{background:#ede5fa;border-color:#ccbae7;color:#78579f}.empty-state{grid-column:1/-1;border-radius:22px}.method{background:#ffffff70;border:1px solid #e0e4d7;border-radius:13px;padding:15px 18px;margin:12px 0}.exclusion-note{font-size:11px;padding:0 4px}.favorites-heading h2{font-weight:500}.favorite-card{margin:0}.favorite-context{font-size:11px}.favorites-heading{margin-top:20px}.comparison-note{font-size:12px}.favorite-card .card-top{flex-wrap:wrap}.favorite-card .card-identity{flex-basis:calc(100% - 80px)}
dialog{border-radius:24px;box-shadow:0 28px 100px #29223536}dialog::backdrop{background:#29233780;backdrop-filter:blur(7px)}.review-card{border-color:#e5e7de}.write-review{border-radius:16px;background:#f7f6fa}.rating-summary strong{font-weight:500}.profile-portrait{border-radius:22px}.reviews-heading #reviews-title{font-weight:500}.ux-toast{background:#473860;border-radius:12px}.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:50;pointer-events:none}.reading-progress span{display:block;height:100%;background:#9771c6;transform-origin:left;transform:scaleX(0)}footer{margin-top:44px;padding:24px 0 14px}.footer-brand>span{color:#8c6cb7}
@media(hover:hover) and (pointer:fine){.bento-tile:hover{box-shadow:0 14px 34px #343b2610;border-color:#cdd5bd}.contractor:hover{border-color:#c9bcdf;box-shadow:0 10px 30px #302a3810;transform:translateY(-3px)}}
@media(min-width:1450px){.hero-story{padding:44px 46px}.hero-story h1{font-size:74px}}
@media(max-width:1150px){main{padding:0 28px}.topbar{padding:22px 28px;gap:14px}.bento-hero{gap:13px}.hero-story{padding:32px;grid-column:span 7;min-height:484px}.hero-story h1{font-size:54px;letter-spacing:-2.8px}.hero-spark{font-size:47px;right:-50px;top:22px}.hero-people{padding:23px}.hero-date{padding:22px 18px}.hero-stat{padding:22px 18px}.hero-stat strong{font-size:57px}.stat-flower{font-size:25px;right:13px}.date-display>strong{font-size:53px}.date-display{gap:9px}.date-display>div{font-size:10px}.hero-scenarios{padding:22px}.hero-scenarios h2{font-size:17px}.scenario-chips button{font-size:11px;padding:10px 12px}.workspace{grid-template-columns:270px minmax(0,1fr);gap:18px}#results,#favorites-list{grid-template-columns:1fr}.contractor.best{grid-column:auto}.contractor:not(.best) .card-top{flex-wrap:nowrap}.contractor:not(.best) .card-identity{flex:1}.contractor:not(.best) .price{flex-basis:auto;display:block;text-align:right}.contractor:not(.best) .price small:first-child{display:block}.card-bottom .price-note{flex:1 1 150px}.card-bottom .save-button,.card-bottom .details-button{flex:0 1 auto}.topnav a{font-size:11px;padding:9px 11px}.workspace-intro h2{font-size:30px}.step-pills span{font-size:9px;padding:6px 9px}.story-foot .story-index{display:none}}
@media(max-width:900px){.bento-hero{grid-template-columns:repeat(6,minmax(0,1fr))}.hero-story{grid-column:span 6;grid-row:auto;min-height:440px;padding:35px}.hero-story h1{font-size:65px}.hero-spark{right:-90px;font-size:75px}.hero-story .bento-lead{font-size:15px}.hero-people{grid-column:span 3;grid-row:span 2}.hero-date{grid-column:span 3;min-height:0}.hero-stat{grid-column:span 3;min-height:130px;flex-direction:row;align-items:center;padding:18px 23px}.hero-stat strong{font-size:46px;margin:0}.hero-stat p{font-size:10px;margin:5px 0}.stat-flower{right:20px;top:16px;font-size:26px}.stat-bottom{align-self:flex-end;font-size:10px;max-width:110px}.hero-people h2{font-size:24px}.hero-team{margin-top:24px;gap:12px}.hero-person{padding:12px;min-height:65px}.hero-person>svg{width:40px;height:40px}.hero-scenarios{grid-column:1/-1;align-items:flex-start;flex-direction:column}.hero-scenarios h2{font-size:19px}.workspace-intro{align-items:flex-start;flex-direction:column;gap:18px;margin-top:38px}.topnav a[href="#method"]{display:none}.topnav{margin-left:auto}.motion-toggle{font-size:10px}.hero-date .date-display{margin:5px 0 12px}.calendar-range{margin-top:5px}}
@media(max-width:700px){html{scroll-padding-top:16px}.topbar{padding:19px 18px;gap:10px;min-height:78px;flex-wrap:wrap}.brand{font-size:25px}.topnav{border:0;background:none;padding:0}.topnav a#favorites-nav{font-size:10px;padding:9px 0}.motion-toggle{padding:7px 9px;font-size:10px;min-height:36px}.motion-toggle .motion-label{display:none}main{padding:0 16px}.bento-hero{gap:12px}.bento-tile{border-radius:21px}.hero-story{min-height:442px;padding:27px 24px}.hero-story>.bento-label{font-size:8px;letter-spacing:1px}.hero-story h1{font-size:49px;letter-spacing:-2.5px;margin:29px 0 22px;line-height:1.09}.hero-story h1 em{letter-spacing:-2.7px}.hero-spark{right:-38px;top:53px;font-size:40px}.hero-story .bento-lead{font-size:13px;line-height:1.85}.desktop-break{display:none}.hero-actions{gap:13px;margin-top:25px;margin-bottom:29px}.bento-cta{font-size:12px;padding:14px 16px;gap:24px;border-radius:11px}.hero-actions>span{font-size:9px}.story-foot{padding-top:20px;gap:9px}.story-foot>span,.story-foot strong{font-size:9px}.avatar-stack svg{width:29px;height:29px}.hero-people{grid-column:span 6;grid-row:auto;padding:23px}.hero-people h2{font-size:27px}.hero-team{margin-top:14px;gap:7px}.hero-person{min-height:56px;padding:8px 12px}.hero-person>span{font-size:13px}.hero-person small{font-size:10px}.hero-date{grid-column:span 3;padding:20px 16px}.hero-stat{grid-column:span 3;flex-direction:column;align-items:flex-start;padding:22px 20px;justify-content:flex-end;min-height:200px}.hero-stat strong{font-size:62px;line-height:1.15}.hero-stat p{font-size:10px;margin:7px 0 14px}.stat-bottom{align-self:stretch;max-width:none;font-size:9px}.stat-flower{top:16px;right:16px;font-size:27px}.date-display{flex-direction:column;align-items:flex-start;gap:2px}.date-display>strong{font-size:57px}.date-display>div{font-size:11px;gap:4px}.date-display #hero-weekday{font-size:10px}.date-controls{gap:4px;margin-top:14px}.date-controls button{width:36px;height:36px}.date-controls>span{display:none}.calendar-range{font-size:8px;margin-top:10px}.hero-scenarios{padding:24px;gap:18px}.hero-scenarios h2{font-size:23px;line-height:1.3;max-width:290px}.scenario-chips{gap:8px}.scenario-chips button{font-size:11px;min-height:44px}.workspace-intro{margin:36px 0 22px;gap:18px}.workspace-intro h2{font-size:31px;line-height:1.15;max-width:320px}.workspace-intro .bento-label{font-size:8px;letter-spacing:1px}.workspace{grid-template-columns:1fr;gap:22px}.brief-panel{padding:24px;border-radius:22px;position:static}.brief-panel h2{font-size:20px}.panel-heading{margin-bottom:20px}.catalog-tabs{margin-bottom:20px}.catalog-tabs button{font-size:11px}.results-heading h2{font-size:24px}.contractor{padding:22px;gap:0}.contractor .card-top,.contractor.best .card-top,.contractor:not(.best) .card-top{flex-wrap:wrap;gap:12px}.contractor .card-identity,.contractor.best .card-identity,.contractor:not(.best) .card-identity{flex:1 1 calc(100% - 80px)}.contractor .price,.contractor.best .price,.contractor:not(.best) .price{display:flex;flex-basis:100%;gap:8px;margin:7px 0 0;text-align:left}.contractor .price small:first-child,.contractor.best .price small:first-child,.contractor:not(.best) .price small:first-child{display:none}.contractor h3{font-size:23px}.price strong{font-size:27px}.price small{font-size:10px}.card-kicker{gap:8px}.available{font-size:9px}.fit-reasons{font-size:11px}.rating-preview{font-size:12px}.evidence-box blockquote{font-size:14px}.evidence-source{font-size:10px}.source-tag,.data-warning{font-size:10px}.card-bottom .price-note,.best .card-bottom .price-note{flex-basis:100%;font-size:11px}.card-bottom .save-button,.card-bottom .details-button,.best .card-bottom .save-button,.best .card-bottom .details-button{flex:1;min-width:0;font-size:11px;min-height:46px}.selection-tools{padding:13px}.selection-tools p{font-size:11px}.count-badge{font-size:10px}.mobile-dock{background:#fffffff5;backdrop-filter:blur(12px);border-color:#dee4d3}.mobile-dock a,.mobile-dock button{color:#645476}.mobile-dock #mobile-count{background:#ebe4f5;color:#786097}.exclusion-note{font-size:12px}.method{font-size:12px}.method summary{font-size:12px}.hero-stat .stat-bottom b{font-size:11px}}
@media(max-width:360px){.hero-story{padding:24px 20px}.hero-story h1{font-size:43px}.hero-spark{font-size:32px;right:-25px}.bento-cta{gap:15px;padding:13px}.hero-actions>span{font-size:8px}.hero-date{padding:18px 12px}.hero-stat{padding:18px 15px}.catalog-tabs button{font-size:10px}.topbar{padding:17px 16px}.topnav a#favorites-nav{font-size:9px}.brand{font-size:23px}.contractor{padding:18px}.available{font-size:8px}}
.date-controls button{width:44px;height:44px;min-height:44px}
@media(max-width:360px){.topbar .topnav{order:3;flex-basis:100%;justify-content:center;margin:0}.topbar .motion-toggle{margin-left:auto}}
@media(max-width:700px){.hero-story h1{font-size:clamp(31px,9.25vw,44px);letter-spacing:-1.9px;line-height:1.14}.hero-story h1 em{letter-spacing:-2px}.hero-spark{font-size:29px;right:-22px;top:4px}.hero-story{min-height:445px}}
html.motion-off{scroll-behavior:auto}html.motion-off *,html.motion-off *::before,html.motion-off *::after{animation:none!important;transition:none!important}html.motion-off .bento-cta:hover,html.motion-off .hero-person:hover,html.motion-off .scenario-chips button:hover,html.motion-off .contractor:hover{transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.bento-cta:hover,.hero-person:hover,.scenario-chips button:hover,.contractor:hover{transform:none}}
