:root{--bg:#f6f5f1;--ink:#252b28;--muted:#666e67;--line:#daddd3;--accent:#d4e0c6;--dark:#222827}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--bg);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #7a946d;outline-offset:5px}a{color:inherit;text-decoration:none}p{line-height:1.65}button{color:inherit} .preview{background:#dfe5d8;padding:10px 5%;font-size:10px;letter-spacing:1.5px;display:flex;justify-content:space-between}.preview span{letter-spacing:.2px}header{padding:14px 5%;background:var(--dark);color:#eee;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #414743;gap:24px}.logo{width:160px;height:66px;overflow:hidden;display:block}.logo img{width:220px;max-width:none;transform:translate(-27px,-18px)}nav{display:flex;gap:32px;font-size:13px}nav a:hover{color:#c5d3bb}.small{background:transparent;border:1px solid #616a63;border-radius:4px;padding:12px 18px;font-size:12px}.small span{margin-left:24px}.hero{background:var(--dark);color:#efefe9;display:grid;grid-template-columns:1fr 1fr;padding:68px 5% 40px;gap:34px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.dot{display:inline-block;background:#c5d3b7;width:6px;height:6px;border-radius:50%;margin-right:8px}h1{font-size:clamp(52px,6.6vw,100px);letter-spacing:-5px;line-height:1.02;margin:30px 0}h1 em{font-family:Georgia,serif;font-weight:400;color:#c5d0bb} .hero-copy>p{font-size:15px;max-width:460px;color:#bbc1bb}.actions{display:flex;align-items:center;gap:23px;margin-top:30px;flex-wrap:wrap}.primary{border:0;background:var(--accent);color:#253023;padding:17px 22px;font-size:13px;border-radius:3px}.primary span{margin-left:35px}.primary:hover{background:#bfceb0}.text{border:0;background:none;padding:10px 0;font-size:12px}.text span{margin-left:8px}.hero-foot{display:flex;gap:30px;border-top:1px solid #414743;margin-top:48px;padding-top:21px;font-size:10px;color:#acb4ad}.drawing{min-width:0;align-self:stretch;border-left:1px solid #414743;padding-left:24px;display:flex;flex-direction:column;justify-content:space-between}.drawing-label,.drawing-bottom{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1px;color:#aab4a8}.drawing-label span{color:#d9dfd4}.drawing svg{width:100%;max-height:440px}.drawing-bottom{border-top:1px solid #414743;padding-top:16px;font-size:8px}.section{padding:85px 5%}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px}.section-head>p{font-size:13px;color:var(--muted);margin:0 0 5px}h2{font-size:clamp(32px,3.7vw,54px);font-weight:400;letter-spacing:-2px;line-height:1.1;margin:17px 0 0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{text-align:left;border:1px solid var(--line);background:transparent;padding:27px;display:flex;flex-direction:column;min-height:340px;transition:transform .2s,background .2s}.service:hover{transform:translateY(-4px);background:#e9ece3}.featured{background:#e5e9dd;border-color:#cbd3c1}.number{font-size:11px;color:#66715f;display:flex;justify-content:space-between}.number b{font-size:8px;letter-spacing:1px;border:1px solid #acb79f;padding:4px 8px;font-weight:400}.symbol{font-size:42px;font-weight:200;margin-top:20px;color:#65745e;height:58px}h3{font-size:23px;font-weight:400;letter-spacing:-.7px;margin:15px 0 4px}.service p{font-size:13px;max-width:300px;color:var(--muted);margin-bottom:24px}.service-foot{border-top:1px solid #cbd1c3;padding-top:18px;margin-top:auto;display:flex;justify-content:space-between;font-size:11px}.service-foot i{font-size:17px;font-style:normal}.more-services{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.more-services button{background:transparent;border:0;border-right:1px solid var(--line);text-align:left;font-size:12px;padding:24px 17px}.more-services button:first-child{padding-left:0}.more-services button:last-child{border:0}.more-services span{float:right}.more-services button:hover{color:#6b7d5b}.process{background:#eeeee7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps article>span{font-size:11px;display:block;border-top:1px solid #bcc4b3;padding-top:20px;color:#6f7e62}.steps h3{font-size:19px;margin-top:29px}.steps p{font-size:13px;color:var(--muted)}.team{display:grid;grid-template-columns:1fr 1fr;gap:10%}.team p{font-size:14px;max-width:470px;margin-top:25px}.team .muted{font-size:12px;color:var(--muted)}.team .primary{margin-top:14px}.disciplines{padding-top:10px}.disciplines>div{border-bottom:1px solid var(--line);padding:23px 0;font-size:16px}.disciplines span{font-size:10px;color:#7d8877;margin-right:25px}.disciplines .active{background:#e4e9dc;padding-left:16px}.disciplines b{float:right;font-size:9px;font-weight:400;padding:4px 15px}.closing{text-align:center;background:#dce3d4;padding:65px 20px 75px}.closing h2{font-size:55px;margin-bottom:30px}.closing .primary{background:var(--dark);color:white}footer{background:var(--dark);color:#b8c0b8;display:flex;justify-content:space-between;align-items:center;padding:40px 5%;gap:30px;font-size:11px}footer strong{color:#fff;font-size:35px;letter-spacing:-2px}footer strong span{color:#bbc2c2}footer .text{color:#b8c0b8;margin-left:20px;font-size:11px}footer p{font-size:11px}dialog{border:0;border-radius:8px;background:var(--bg);color:var(--ink);padding:30px;width:min(740px,94vw);max-height:90vh;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#121915bb;backdrop-filter:blur(5px)}.modal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.close{background:none;border:0;font-size:30px;line-height:1;padding:4px 8px}.progress{display:flex;gap:8px;margin:20px 0 28px}.progress span{height:3px;background:#d9ded3;flex:1}.progress .done{background:#758667}.modal-title{font-size:31px;letter-spacing:-1px;margin:10px 0}.sub{font-size:13px;color:var(--muted);line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.field{display:flex;flex-direction:column;gap:8px;font-size:12px}.field.wide{grid-column:1/-1}input,select,textarea{width:100%;padding:13px;border:1px solid #cbd1c3;background:white;border-radius:3px;color:#253023}textarea{min-height:90px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #839774;outline-offset:1px}.modal-actions{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:22px}.secondary{background:transparent;border:1px solid #bcc6b3;padding:12px 18px;border-radius:3px;font-size:12px}.note{background:#e9ede3;padding:15px;font-size:12px;line-height:1.6;border-left:3px solid #8c9f7c}.summary{margin:24px 0}.summary div{display:grid;grid-template-columns:42% 58%;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;gap:8px}.summary dt{color:var(--muted)}.summary dd{margin:0;overflow-wrap:anywhere}.checklist{font-size:14px;line-height:1.9;padding-left:20px}.error{color:#982f22;font-size:13px}.hidden{display:none}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.choice{padding:20px;background:#e6eadd;border:1px solid #c4cdbb;text-align:left}.choice strong{display:block;font-size:19px;font-weight:400;margin-bottom:10px}.choice span{font-size:12px;line-height:1.5}.selected{outline:2px solid #687d55}.toast{font-size:12px;color:#526644;margin:15px 0}@media(max-width:900px){header nav{gap:15px}.hero{gap:18px}.hero-foot{gap:15px;flex-wrap:wrap}h1{letter-spacing:-3px}.hero .actions{gap:12px}.section{padding:60px 5%}.services{gap:12px}.service{padding:22px}.steps{gap:20px}.more-services{grid-template-columns:repeat(2,1fr)}.more-services button:first-child{padding-left:17px}.team{gap:6%}}@media(max-width:650px){.preview{font-size:9px}.preview span{max-width:180px;font-size:8px;line-height:1.4}header{padding:8px 5%;gap:15px}header nav{display:none}.logo{width:135px}.small{font-size:11px;padding:10px}.small span{margin-left:8px}.hero{grid-template-columns:1fr;padding-top:42px}.hero h1{font-size:65px;letter-spacing:-3px}.hero-copy>p{font-size:14px}.hero-foot{margin-top:30px}.drawing{border-left:0;padding-left:0;margin-top:30px}.drawing svg{max-height:320px}.drawing-label{font-size:7px}.section-head{display:block}.section-head>p{margin-top:18px}.services{grid-template-columns:1fr}.service{min-height:270px}.symbol{margin-top:10px;height:45px}.more-services button{font-size:11px}.steps{grid-template-columns:1fr 1fr;gap:25px}.steps h3{font-size:18px}.team{grid-template-columns:1fr;gap:35px}.closing h2{font-size:42px}footer{flex-wrap:wrap;align-items:flex-start}footer>p{max-width:150px}footer .text{margin-left:0;margin-right:20px}dialog{padding:20px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.modal-title{font-size:27px}.summary div{font-size:12px;grid-template-columns:40% 57%}.choice-grid{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.primary{padding:15px 18px}.primary span{margin-left:20px}}@media print{body>*{display:none!important}dialog[open]{display:block!important;position:static;width:100%;max-height:none;box-shadow:none}dialog button,.modal-top,.progress{display:none!important}}
.additions{grid-template-columns:repeat(3,1fr);margin-top:0;border-top:0}#planbar-launch{position:fixed;bottom:22px;right:24px;display:flex;align-items:center;gap:7px;padding:10px 18px 10px 7px;background:#fff;border:1px solid #ccd2cb;border-radius:50px;box-shadow:0 8px 30px #10251b25;z-index:20;text-align:left}#planbar-launch img{height:70px;width:65px;object-fit:contain;margin-top:-25px}#planbar-launch strong{display:block;font-size:12px}#planbar-launch small{display:block;font-size:10px;color:#6d746d;margin-top:5px}#planbar-launch:hover{transform:translateY(-3px)}#planbar-dialog{width:min(440px,94vw);margin:auto 24px 25px auto;padding:23px}.planbar-intro{display:flex;align-items:center;gap:10px;margin-bottom:18px}.planbar-intro img{height:120px;width:100px;object-fit:contain}.planbar-intro h2{font-size:26px;letter-spacing:-1px;margin:0}.planbar-intro p{font-size:12px;line-height:1.5;color:#687167;margin-bottom:0}#planbar-answer{background:#e7ebe2;padding:17px;border-radius:4px;font-size:13px;line-height:1.65;max-height:220px;overflow:auto}#planbar-options{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}#planbar-options button{font-size:11px;padding:9px 10px;background:white;border:1px solid #cbd3c4;border-radius:4px}#planbar-options button:hover{background:#e4e9de}#planbar-options .pb-go{width:100%;background:#26312a;color:white;border-color:#26312a;text-align:left;padding:12px}#planbar-form label{font-size:11px}.planbar-input{display:flex;gap:7px;margin-top:7px}.planbar-input input{min-width:0;font-size:12px}.planbar-input button{padding:12px 16px}.planbar-disclosure{font-size:10px;color:#737a71;line-height:1.5;margin-bottom:0}@media(max-width:650px){#planbar-launch{right:14px;bottom:14px;padding-right:14px}#planbar-launch img{height:59px;width:48px}#planbar-launch strong{font-size:11px}#planbar-dialog{margin:auto;width:94vw}.additions{grid-template-columns:1fr}.additions button{border-right:0;border-bottom:1px solid var(--line)}footer{padding-bottom:115px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#planbar-launch:hover,.service:hover{transform:none}}
#planbar-options{max-height:200px;overflow-y:auto;padding:2px}#planbar-options button{flex-shrink:0}
.norm-fields{border:1px solid #cbd3c4;border-radius:4px;padding:18px;margin:24px 0}.norm-fields legend{font-size:13px;padding:0 8px}.norm-fields .form-grid{margin-bottom:0}.more-services button{overflow-wrap:anywhere}
header{flex-wrap:wrap}header nav{order:3;width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #414743;padding:17px 0 4px;overflow-x:auto;scrollbar-width:thin}header nav a,.discipline-tab{white-space:nowrap;font-size:12px}.discipline-tab{padding:0;background:none;border:0;color:inherit}.discipline-tab:hover{color:#c5d3bb}@media(max-width:650px){header nav{display:flex;gap:23px;padding:14px 0 8px;justify-content:flex-start}header nav a,.discipline-tab{font-size:12px}}

.architecture-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.architecture-tabs button{padding:14px 20px;border:1px solid #637068;border-radius:3px;background:transparent;color:inherit;font:inherit;cursor:pointer}.architecture-tabs button[aria-selected="true"]{background:#c0ccb6;color:#172019;border-color:#c0ccb6}.architecture-tabs button:focus-visible{outline:2px solid #a1b8d3;outline-offset:4px}[role="tabpanel"][hidden]{display:none}

#finance-tab{background:none;border:0;color:inherit;font:inherit;cursor:pointer;white-space:nowrap}.finance-services{display:grid;gap:12px;margin:24px 0}.finance-service{text-align:left;background:#f0f2ed;color:#172019;border:1px solid #c6ccc2;padding:20px;cursor:pointer;font:inherit}.finance-service strong,.finance-service span{display:block}.finance-service span{margin-top:7px;font-size:14px}.finance-service:hover{background:#dfe7d9}

.consult-channels{border:0;padding:0;margin:24px 0;display:grid;gap:12px}.consult-channels legend{font-weight:600;margin-bottom:12px}.consult-channels label{display:block;border:1px solid #abb5a5;padding:16px;cursor:pointer}.consult-channels label:has(input:checked){background:#e6eddf;border-color:#596f4d}.consult-channels span{display:block;margin:8px 0 0 25px;font-size:14px}.consult-channels input{accent-color:#465a3c}

header [data-membership]{background:none;border:0;color:inherit;font:inherit;cursor:pointer;white-space:nowrap}.membership-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.membership-benefits article{border:1px solid #b4bdad;padding:18px}.membership-benefits article>span{font-size:11px;letter-spacing:.12em}.membership-benefits h3{font-size:20px;margin:12px 0}.membership-benefits p{font-size:14px;line-height:1.5}.membership-teaser{padding:64px max(24px,6vw);border-top:1px solid #515b51}.membership-teaser h2{font-size:clamp(28px,4vw,46px)}.membership-teaser p{max-width:750px;line-height:1.6}.newsletter-option{display:block;line-height:1.6;margin:20px 0}.newsletter-option input{width:auto;margin-right:8px}@media(max-width:600px){.membership-benefits{grid-template-columns:1fr}}

#planbar-dialog{width:min(760px,94vw)}.pb-ai textarea{width:100%;min-height:85px;box-sizing:border-box}.pb-ai details{margin:16px 0}.pb-ai details summary,.pb-guide summary{cursor:pointer;font-weight:600}.pb-ai button:disabled{opacity:.5;cursor:not-allowed}#pb-chat{max-height:360px;overflow:auto;margin:18px 0}.pb-message{padding:14px;margin:10px 0;background:#edf1e8;border-radius:8px}.pb-message.user{background:#e1e5e7}.pb-message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin-bottom:0}.pb-tools{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.pb-tools button{padding:10px;border:1px solid #a8b3a0;background:transparent;cursor:pointer}.pb-guide{border-top:1px solid #abb5a5;padding-top:16px}#pb-contact a{display:block;margin:10px 0}#pb-ai-status{font-size:14px}

.portal-project{display:block;text-align:left;width:100%;padding:18px;margin:14px 0;border:1px solid #b0baa9;background:#edf2e8;cursor:pointer}.portal-project strong,.portal-project span,.portal-project small{display:block;margin:5px 0}.portal-file{display:block;padding:14px;border-bottom:1px solid #b0baa9;overflow-wrap:anywhere}#portal-upload{margin-top:28px}

.more-services button{flex-wrap:wrap;text-align:left;align-content:flex-start}.service-explanation{display:block;flex-basis:100%;width:100%;font-size:13px;font-weight:400;line-height:1.55;opacity:.85;margin-top:10px}.finance-service span{line-height:1.55}

.permit-entry{padding:26px;margin:0 0 26px;border:1px solid #87957e;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:#e5ebde;color:#172019}.permit-entry h3{font-size:26px;margin:12px 0}.permit-entry p{line-height:1.55;max-width:780px}.permit-entry button{max-width:300px;text-align:left}@media(max-width:760px){.permit-entry{grid-template-columns:1fr}.permit-entry button{max-width:none}}

.experience{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:32px max(24px,6vw);background:#e5ebde;color:#172019}.experience strong,.experience span{display:block}.experience strong{font-size:clamp(24px,3vw,40px);font-weight:500}.experience span{font-size:13px;margin-top:8px}@media(max-width:650px){.experience{grid-template-columns:repeat(2,1fr)}}

.reference-gallery{position:relative;min-width:0;background:#18201b;align-self:stretch;display:flex;flex-direction:column;overflow:hidden}.reference-topline{display:flex;justify-content:space-between;gap:15px;padding:22px 24px;font-size:11px;letter-spacing:.14em;color:#dce2d6}.reference-stage{position:relative;aspect-ratio:16/10;flex:1;min-height:340px;overflow:hidden}.reference-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1s ease}.reference-image.is-active{opacity:1}.reference-caption{padding:24px;color:#f0f2ed}.reference-caption>span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#bdcbb5}.reference-caption h2{font-size:clamp(20px,2.3vw,32px);font-weight:400;margin:12px 0 0}.reference-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px 22px}.reference-controls[hidden]{display:none}.reference-controls button{border:1px solid #74836b;background:transparent;color:#fff;padding:10px 14px;cursor:pointer}.reference-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}@media(max-width:800px){.reference-stage{min-height:0;flex:none;aspect-ratio:16/9}.reference-caption{padding:20px}}@media(prefers-reduced-motion:reduce){.reference-image{transition:none}}

.reference-image.reference-plan{object-fit:contain;background:#fff}.reference-caption>span:empty{display:none}

.founder-section{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);gap:clamp(30px,6vw,100px);align-items:center;background:#e9eddf}.founder-section figure{margin:0}.founder-section img{width:100%;max-height:590px;object-fit:cover;object-position:center top;display:block;border-radius:3px}.founder-section figcaption{font-size:15px;line-height:1.6;padding-top:18px}.founder-section figcaption span{font-size:12px;color:#62715f}.founder-section p{line-height:1.75}.founder-section h2{font-size:clamp(30px,3.5vw,52px)}@media(max-width:750px){.founder-section{grid-template-columns:1fr}.founder-section figure{max-width:420px}.founder-section img{max-height:460px}}

/* Keep legal links clear of the fixed planbar launcher, including narrow screens. */
#legal-footer{padding-bottom:130px;flex-wrap:wrap}
#legal-footer .legal-links{display:flex;flex-wrap:wrap;gap:12px;line-height:1.6;max-width:100%}
#legal-footer a{text-decoration:underline;text-underline-offset:3px}
