:root{--ink:#1d302b;--paper:#fff;--soft:#f3f6f4;--line:#d8e0da;--muted:#56685f;--lime:#c9f36c;--serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);background:var(--paper);font:1rem/1.6 var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #467913;outline-offset:5px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.header{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);gap:24px}.wordmark{font-size:1.6rem;font-weight:750;letter-spacing:-1.3px;display:inline-flex;align-items:center;gap:10px}.brand-mark{background:var(--ink);color:var(--lime);width:32px;height:34px;display:inline-grid;place-content:center;font-size:1.7rem;line-height:1;border-radius:6px}.wordmark-dot{display:none}nav{display:flex;align-items:center;gap:30px;font-size:.875rem;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--ink);color:white;padding:15px 22px;border:1px solid var(--ink);border-radius:5px;font-size:.94rem;font-weight:650;cursor:pointer;transition:background .15s,transform .15s;min-height:48px}.button:hover{background:#314d40;transform:translateY(-1px)}.button-small{padding:10px 18px;font-size:.875rem}.full{width:100%}.hero{padding-top:76px;padding-bottom:76px;display:grid;grid-template-columns:1.15fr 1fr;gap:76px;align-items:center}.eyebrow{font-size:.75rem;letter-spacing:.11em;font-weight:750;margin:0 0 24px}h1{font-size:clamp(3.2rem,6.4vw,5.9rem);letter-spacing:-.066em;line-height:.98;font-weight:600;margin:0 0 28px}.serif{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.06em}.intro{font-size:1.13rem;line-height:1.65;max-width:450px}.hero-actions{display:flex;gap:22px;align-items:center;margin:30px 0 18px;flex-wrap:wrap}.text-link{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;font-weight:600}.small{font-size:.875rem}.muted{color:var(--muted)}.project-label{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;margin-bottom:16px;letter-spacing:.06em}.project-label>a{letter-spacing:0;text-decoration:underline;text-underline-offset:4px}.sample-card{display:block;background:var(--lime);padding:30px 32px;border:1px solid #b2d55d;border-radius:8px;box-shadow:8px 14px 0 var(--soft);transition:transform .18s}.sample-card:hover{transform:translateY(-3px)}.sample-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #9bbc51;padding-bottom:18px}.sample-nav strong{font-size:1.6rem;letter-spacing:-1px}.sample-nav strong span{font-size:1.2rem;margin-left:4px}.sample-nav>span{font-size:.65rem;letter-spacing:.1em;max-width:130px;text-align:right}.sample-kicker{font-size:.65rem;letter-spacing:.09em;margin-top:40px;font-weight:700}.sample-card h2{font-size:clamp(2.3rem,3.7vw,3.6rem);line-height:1.03;letter-spacing:-.05em;margin:15px 0 28px;font-weight:600}.sample-card em{font-family:var(--serif);font-weight:400}.sample-chart{padding:20px;background:#f7ffe6;border-radius:5px}.chart-top,.chart-legend{display:flex;justify-content:space-between;gap:6px;font-size:.75rem}.chart-top{font-weight:650}.chart-bar{display:flex;height:23px;gap:3px;margin:14px 0 10px}.chart-bar span:first-child{background:var(--ink);width:60%;border-radius:3px 0 0 3px}.chart-bar span:nth-child(2){background:#779949;width:15%}.chart-bar span:last-child{background:#dbeac8;width:25%;border-radius:0 3px 3px 0}.chart-legend{font-size:.65rem}.sample-bottom{display:flex;justify-content:space-between;font-size:.8rem;font-weight:650;margin-top:22px}.proof-note{display:flex;align-items:center;gap:16px;padding-top:25px;font-size:.875rem}.proof-note p{margin:0}.note-number{font-family:var(--serif);font-style:italic;font-size:2rem;color:#6c8074}.promise-strip{background:var(--soft);border-block:1px solid var(--line)}.strip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;font-size:.875rem;padding:10px 0}.section{padding-top:85px;padding-bottom:85px}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:start}h2{font-size:clamp(2rem,3.6vw,3.3rem);font-weight:550;line-height:1.12;letter-spacing:-.045em;margin:0 0 25px}.section-intro{font-size:1.125rem}.price-card{padding:32px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.price-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.price-top>span:first-child{font-size:.75rem;letter-spacing:.08em;font-weight:700}.price{font-size:3.1rem;line-height:1.1;letter-spacing:-.055em}.price-card>.small{margin:12px 0 22px}.included{list-style:none;padding:0;margin:0}.included li{border-top:1px solid var(--line);padding:12px 0 12px 24px;position:relative;font-size:.94rem}.included li:before{content:'✓';position:absolute;left:0;color:#476624;font-weight:700}.price-terms{font-size:.875rem;line-height:1.7;margin:25px 0}.process{border-top:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:40px}.step{font-size:.75rem;letter-spacing:.07em;color:var(--muted)}h3{font-size:1.25rem;letter-spacing:-.02em;margin:16px 0 10px;font-weight:600}.process-grid p{color:var(--muted);margin:0}.faq-section{background:var(--ink);color:white;padding:72px 0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-section .eyebrow{color:var(--lime)}details{border-top:1px solid #52655e;padding:20px 0}details:last-child{border-bottom:1px solid #52655e}summary{font-size:1rem;cursor:pointer;list-style:none;position:relative;padding-right:30px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;top:0;color:var(--lime);font-size:1.3rem}details[open] summary:after{content:'−'}details p{color:#d2ddd5;font-size:.94rem;max-width:620px}.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}form label{display:block;font-size:.875rem;font-weight:650;margin:0 0 7px}input,select,textarea{display:block;width:100%;padding:12px 14px;margin:0 0 20px;border:1px solid #b6c6bb;border-radius:4px;color:var(--ink);background:white;min-height:48px}textarea{resize:vertical}#brief-status{min-height:24px;margin-bottom:0}.footer{border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer p{font-size:.875rem}.footer .wordmark{font-size:1.3rem}.skip{position:absolute;top:-100px;left:15px;background:white;z-index:5;padding:10px}.skip:focus{top:10px}section[id]{scroll-margin-top:30px}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:40px}.scope-grid,.brief-grid{gap:50px}.faq-grid{gap:45px}.sample-card{padding:25px}.strip-grid{font-size:.8rem;gap:12px}.process-grid{gap:28px}.footer{flex-wrap:wrap}}@media(max-width:700px){.wrap{width:calc(100% - 36px)}.header{padding:20px 0;gap:16px}.wordmark{font-size:1.35rem}nav{gap:15px}nav>a:first-child,nav>a:nth-child(2){display:none}.button-small{font-size:.8rem;padding:8px 12px}.hero{grid-template-columns:1fr;padding-top:44px;padding-bottom:45px;gap:42px}h1{font-size:4.5rem}.hero .eyebrow{font-size:.65rem}.hero-actions{gap:18px}.sample-card h2{font-size:3.6rem}.proof-stack{max-width:520px;width:100%}.strip-grid{grid-template-columns:1fr;gap:0;padding:10px 0}.strip-grid p{margin:8px 0}.section{padding-top:55px;padding-bottom:55px}.scope-grid,.brief-grid,.faq-grid{grid-template-columns:1fr;gap:30px}.process-grid{grid-template-columns:1fr;gap:28px}.process-grid article{padding-top:16px;border-top:1px solid var(--line)}.price-card{padding:24px}.faq-section{padding:50px 0}.faq-grid h2{margin-bottom:0}.footer{display:block;padding:28px 0}.footer>*{margin-bottom:10px}.footer>span{display:block}.intro{font-size:1.05rem}}@media(max-width:360px){h1{font-size:3.6rem}.wordmark{font-size:1.15rem}.brand-mark{display:none}.sample-card{padding:20px}.sample-card h2{font-size:3rem}.price-top{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{nav,.hero-actions,.brief-grid{display:none}.wrap{width:100%}.section{padding:20px 0}.hero{padding:20px 0}.faq-section{background:white;color:var(--ink)}details{break-inside:avoid}.price-card{break-inside:avoid}}

/* Portfolio and template catalogue */
.gallery-section{border-top:1px solid var(--line)}.gallery-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:42px}.gallery-heading h2{margin-bottom:0}.gallery-heading>p{max-width:420px;margin:0 0 4px;color:var(--muted);font-size:1.06rem}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.gallery-preview{height:350px;border-radius:7px;overflow:hidden;display:flex;position:relative;transition:transform .2s;isolation:isolate}.gallery-preview:hover{transform:translateY(-4px)}.gallery-preview strong{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.04;letter-spacing:-.05em;font-weight:550;display:block}.gallery-preview em{font-family:Georgia,serif;font-weight:400}.preview-brand{font-size:1.65rem;font-weight:650;letter-spacing:-.07em}.preview-caption{font-size:.75rem;letter-spacing:.06em}.preview-hearth{background:#f4eee7;color:#58282d;display:grid;grid-template-columns:1fr 1fr}.preview-copy{padding:26px;display:flex;flex-direction:column;justify-content:space-between;z-index:1}.preview-hearth img{height:100%;width:100%;object-fit:cover}.preview-hearth strong{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.8rem);font-weight:400}.preview-assembly{background:#2548ed;color:#effb73;padding:28px;flex-direction:column;justify-content:space-between}.assembly-preview-top,.assembly-preview-bottom{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.04em;gap:12px}.assembly-preview-top>span:last-child{text-align:right}.preview-assembly strong{font-weight:750;font-size:clamp(2.3rem,4.2vw,4.2rem);line-height:.94}.preview-assembly em{font:inherit;color:white}.assembly-preview-bottom{border-top:1px solid #8a9dff;padding-top:12px}.preview-canopy{background:#163e2c;color:#f8f2d1}.preview-canopy>img{width:100%;height:100%;object-fit:cover}.canopy-preview-copy{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,39,24,.82),rgba(12,39,24,.08));padding:28px;display:flex;flex-direction:column;justify-content:space-between}.preview-canopy strong{font-size:clamp(2.3rem,3.8vw,3.7rem)}.preview-shift{background:var(--lime);padding:28px;flex-direction:column;justify-content:space-between}.preview-shift strong{font-size:clamp(2.2rem,3.4vw,3.2rem)}.preview-capacity{background:#f5ffe5;padding:14px;font-size:.75rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}.preview-capacity-bar{width:100%;display:flex;height:15px;gap:3px}.preview-capacity-bar i:first-child{width:60%;background:var(--ink)}.preview-capacity-bar i:nth-child(2){width:15%;background:#7b994b}.preview-capacity-bar i:last-child{width:25%;background:#c7dba5}.gallery-meta{padding-top:22px}.gallery-meta .eyebrow{font-size:.75rem;margin:0 0 6px;color:var(--muted)}.gallery-meta h3{margin:0 0 8px;font-size:1.35rem}.gallery-meta p:not(.eyebrow){color:var(--muted);margin:0 0 14px}.sample-open{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;font-weight:650;display:inline-block;padding:8px 0}.gallery-disclosure{font-size:.875rem;color:var(--muted);max-width:820px;margin:32px 0 0}.templates-section{background:var(--soft);border-block:1px solid var(--line)}.template-row{display:grid;grid-template-columns:50px 1fr auto;gap:24px;align-items:center;padding:28px 0;border-top:1px solid #c7d2c9}.template-row:last-child{border-bottom:1px solid #c7d2c9}.template-number{font:italic 1.8rem Georgia,serif;color:var(--muted);align-self:start}.template-row h3{font-size:1.35rem;margin:0 0 4px}.template-row p{margin:0 0 5px}.template-detail{font-size:.875rem;color:var(--muted)}.template-actions{display:flex;align-items:center;gap:22px}.template-actions>a:first-child{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;padding:10px 0}.template-actions .button{min-width:165px}.template-footnote{max-width:860px;margin-top:24px}#template-status:empty{display:none}#template-status{margin:-10px 0 20px}.header nav{gap:24px}
@media(max-width:900px){.gallery-preview{height:300px}.gallery-heading{gap:35px}.template-row{grid-template-columns:32px 1fr}.template-actions{grid-column:2}.header nav{gap:18px}.preview-copy{padding:20px}}
@media(max-width:700px){.header{flex-wrap:wrap}.header nav{width:100%;justify-content:space-between;gap:10px}.header nav>a:first-child,.header nav>a:nth-child(2){display:inline}.header nav>a{font-size:.875rem}.header nav .button{font-size:.8rem}.gallery-heading,.gallery-grid{grid-template-columns:1fr;gap:26px}.gallery-heading{margin-bottom:30px}.gallery-grid{gap:34px}.gallery-preview{height:320px}.gallery-preview strong{font-size:2.9rem}.preview-hearth strong{font-size:2.15rem}.preview-assembly strong{font-size:3.5rem}.gallery-meta{padding-top:18px}.template-row{gap:12px;padding:24px 0}.template-actions{gap:18px;flex-wrap:wrap}.template-actions .button{min-width:0}.gallery-disclosure{margin-top:22px}.preview-caption{font-size:.75rem}.template-footnote{font-size:.875rem}}
@media(max-width:370px){.gallery-preview{height:290px}.gallery-preview strong{font-size:2.4rem}.preview-hearth strong{font-size:1.8rem}.preview-copy{padding:16px}.preview-assembly strong{font-size:3rem}.preview-capacity>span{font-size:.75rem}.header nav{flex-wrap:wrap;justify-content:flex-start;gap:14px}.header nav .button{margin-left:auto}}

/* Expanded collection: each card links to a complete original page. */
.signal-feature{background:#e8f054;color:#172922;border:1px solid #d5dc44;display:block;padding:32px;box-shadow:10px 12px 0 #f0f2e8;border-radius:3px;transition:transform .2s}.signal-feature:hover{transform:translateY(-3px)}.signal-feature-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #a0aa47}.signal-feature-nav>strong{font-size:1.9rem;letter-spacing:-.075em}.signal-feature-nav>span{font-size:.59rem;letter-spacing:.07em;max-width:130px;text-align:right}.signal-feature h2{font-size:clamp(2.2rem,3.8vw,3.55rem);letter-spacing:-.055em;line-height:1.06;margin:36px 0 32px;font-weight:600}.signal-feature h2 em{font-family:Georgia,serif;font-weight:400}.signal-feature-list{display:flex;flex-direction:column;font-size:.84rem}.signal-feature-list>span{border-top:1px solid #a0aa47;padding:10px 0}.signal-feature-foot{display:flex;justify-content:space-between;align-items:center;font-size:.63rem;letter-spacing:.06em;margin-top:18px}.signal-feature-foot>span:last-child{font-size:1.3rem}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.catalogue-preview{height:235px;display:flex;flex-direction:column;background:var(--thumb-paper);color:var(--thumb-ink);overflow:hidden;position:relative;border-radius:4px;transition:transform .18s}.catalogue-preview:hover{transform:translateY(-3px)}.thumb-name{display:flex;justify-content:space-between;align-items:center;font-size:1.3rem;letter-spacing:-.05em;font-weight:650;padding:19px 22px}.thumb-name>span{font-size:1rem}.catalogue-preview.with-photo img{width:100%;height:calc(100% - 65px);object-fit:cover;flex:1;min-height:0}.catalogue-preview.with-type{padding:20px 23px;justify-content:space-between}.catalogue-preview.with-type .thumb-name{padding:0}.catalogue-preview.with-type strong{display:block;font-size:2rem;line-height:1.04;letter-spacing:-.055em;font-weight:550;max-width:100%}.thumb-foot{font-size:.57rem;letter-spacing:.07em;padding-top:8px}.thumb-signal{background:#e8f054}.thumb-assembly strong{font-weight:750!important}.thumb-northstar strong,.thumb-counsel strong{font-family:Georgia,serif;font-weight:400}.thumb-relay{background:#e3e2f3}.thumb-relay strong{font-weight:650!important}.thumb-frame .thumb-name,.thumb-pulse .thumb-name{text-transform:uppercase}.thumb-table .thumb-name,.thumb-vow .thumb-name,.thumb-lumina .thumb-name{font-family:Georgia,serif;font-style:italic}.featured-grid .catalogue-preview{height:265px}.featured-grid .with-type strong{font-size:2.15rem}.featured-copy{padding-top:22px}.featured-copy>.eyebrow{font-size:.65rem;margin:0 0 5px}.featured-copy h3{margin:0 0 10px;font-size:1.45rem}.featured-copy>p:not(.eyebrow){color:var(--muted);font-size:.92rem;line-height:1.65;min-height:62px;margin:0 0 5px}.catalogue-toolbar{display:grid;grid-template-columns:1.4fr 1fr auto;gap:22px;align-items:end}.catalogue-toolbar label{display:block;font-size:.8rem;font-weight:650;margin-bottom:8px}.catalogue-toolbar input,.catalogue-toolbar select{margin:0;font-size:.9rem}.catalogue-toolbar button{cursor:pointer;background:none;border:0;color:var(--ink);padding:12px 0;min-height:48px;font-size:.8rem;text-decoration:underline;text-underline-offset:4px}.catalogue-status{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.75rem;color:var(--muted);margin:21px 0}.catalogue-status p{margin:0}.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 22px}.catalogue-card{background:white;display:flex;flex-direction:column;border:1px solid #d7dfd7;border-radius:5px;overflow:hidden}.catalogue-card .catalogue-preview{border-radius:0}.catalogue-copy{padding:20px;display:flex;flex:1;flex-direction:column}.catalogue-category{margin:0;font-size:.62rem;letter-spacing:.035em;color:var(--muted);text-transform:uppercase}.catalogue-copy h3{font-size:1.5rem;display:flex;gap:10px;align-items:center;margin:7px 0 9px}.featured-badge{font-size:.6rem;background:#e8f054;color:#172922;padding:3px 7px;border-radius:2px;letter-spacing:0;font-weight:650}.catalogue-copy>p:not(.catalogue-category){color:var(--muted);font-size:.87rem;line-height:1.6;margin:0 0 20px;flex:1}.catalogue-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #dce4dc;padding-top:14px;font-size:.76rem;font-weight:650}.catalogue-actions a{padding:7px 0;text-decoration:underline;text-underline-offset:4px}.catalogue-actions a:last-child{text-decoration:none}.selection-note{margin-top:26px;max-width:960px;border-color:#cad5cb}.selection-note summary{font-size:.87rem}.selection-note summary:after{color:var(--ink)}.selection-note p{color:var(--muted);font-size:.84rem}.selection-note a{text-decoration:underline;text-underline-offset:3px}.selection-note[open]{border-bottom:1px solid #cad5cb}.templates-section .template-footnote{max-width:100%}#catalogue-empty{padding:55px 25px;background:white;border:1px solid #d7dfd7;text-align:center}#catalogue-empty h3{margin-top:0}[hidden]{display:none!important}
@media(max-width:1000px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-grid{gap:18px}.featured-grid .with-type strong{font-size:1.8rem}.featured-grid .catalogue-preview{height:245px}.catalogue-toolbar{gap:16px}.catalogue-preview.with-type strong{font-size:2rem}.signal-feature{padding:26px}.signal-feature h2{font-size:2.8rem}.featured-copy>.eyebrow{min-height:28px}}
@media(max-width:700px){.featured-grid{grid-template-columns:1fr;gap:32px}.featured-grid .catalogue-preview{height:300px}.featured-grid .with-type strong{font-size:2.8rem}.featured-copy>.eyebrow{min-height:0}.featured-copy>p:not(.eyebrow){min-height:0}.catalogue-toolbar{grid-template-columns:1fr;gap:16px}.catalogue-toolbar button{justify-self:start;padding:2px 0;min-height:36px}.catalogue-grid{grid-template-columns:1fr}.catalogue-preview{height:265px}.catalogue-preview.with-type strong{font-size:2.65rem}.catalogue-copy{padding:21px}.catalogue-category{font-size:.68rem}.catalogue-copy>p:not(.catalogue-category){font-size:.92rem}.catalogue-actions{font-size:.82rem}.signal-feature h2{font-size:clamp(2.25rem,7.5vw,3.5rem)}.signal-feature{padding:26px}.signal-feature-nav>span{font-size:.56rem}.signal-feature-list{font-size:.86rem}.gallery-disclosure{font-size:.8rem}.catalogue-status{font-size:.73rem}}
@media(max-width:370px){.signal-feature{padding:22px}.signal-feature h2{font-size:2.2rem}.signal-feature-nav{gap:14px}.signal-feature-nav>strong{font-size:1.65rem}.catalogue-preview.with-type strong{font-size:2.35rem}.featured-grid .with-type strong{font-size:2.4rem}.featured-grid .catalogue-preview{height:270px}.catalogue-copy{padding:18px}.catalogue-actions{font-size:.78rem;gap:8px}}
.thumb-frame.with-photo img{object-position:50% 15%}.thumb-object.with-photo img{object-position:50% 30%}
