:root{--content-width:1280px;--page-gutter:52px;--header-logo-size:242px;--header-logo-inset:16.8px}
.container{width:min(var(--content-width),calc(100% - var(--page-gutter) - var(--page-gutter)));margin-inline:auto}
.site-header{padding-inline:max(var(--page-gutter),calc((100% - var(--content-width))/2))}
.site-header .brand-lockup{width:calc(var(--header-logo-size) - var(--header-logo-inset));overflow:hidden;flex-shrink:0}
.site-header .brand-lockup img{width:var(--header-logo-size);max-width:none;margin-left:calc(0px - var(--header-logo-inset))}
.quick-start{padding-block:48px 56px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.quick-card{display:flex;flex-direction:column;align-items:flex-start;min-height:230px;padding:28px;color:#F4F3E8;text-decoration:none;background:linear-gradient(135deg,#214631,#123623);border:1px solid #e8b93940;box-shadow:0 12px 30px #06190d33,inset 0 1px #ffffff0b;border-radius:4px;transition:border-color .2s,transform .2s}.quick-card h3{font-size:24px;margin:15px 0 12px}.quick-card p{font-size:16px;line-height:1.5;color:#BDCEBF;margin:0 0 24px}.quick-link{margin-top:auto;color:#E8B939;font-weight:600}.quick-card:hover{border-color:#E8B939;transform:translateY(-3px)}.quick-card:focus-visible{outline:2px solid #E8B939;outline-offset:5px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.room-intro,.area-basis-help{font-size:14px;line-height:1.5;color:#BDCEBF}.room-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:18px 0}.room-table th,.room-table td{padding:10px 4px;border-bottom:1px solid #bdcebf26;text-align:left;vertical-align:middle}.room-table thead th{font-size:12px;font-weight:600;color:#BDCEBF}.room-table th:first-child{width:36%}.room-table th:nth-child(2){width:18%}.room-table th:nth-child(3){width:25%}.room-table th:nth-child(4){width:21%;text-align:right}.room-table tbody th{font-size:15px;font-weight:400;color:#F4F3E8}.room-table input{width:100%;min-width:0;min-height:44px;padding:8px;color:#F4F3E8;background:#0c291b;border:1px solid #bdcebf40;border-radius:3px;font:16px 'Source Sans 3',sans-serif}.room-table input:focus{outline:2px solid #E8B939;outline-offset:1px}.room-table td:last-child{text-align:right;font-size:15px;color:#E8B939}.room-total{display:flex;justify-content:space-between;gap:12px;margin-bottom:24px}.room-total strong{color:#E8B939;white-space:nowrap}.room-summary{padding:16px;background:#0c291b;border:1px solid #bdcebf26;margin-top:16px}.room-summary p{display:flex;justify-content:space-between;gap:16px;font-size:14px;margin:0 0 12px;color:#BDCEBF}.room-summary strong{color:#F4F3E8;white-space:nowrap}.room-summary #room-fit-message{display:block;margin:0;line-height:1.5}.room-summary #room-fit-message.warning{color:#E8B939}.estimate-intent{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px;margin-bottom:28px;background:#214631;border:1px solid #e8b93966}.estimate-intent[hidden]{display:none}.estimate-intent strong,.estimate-intent a{color:#E8B939}.estimate-intent p{margin:8px 0 0;color:#BDCEBF;line-height:1.5}.estimate-intent a{white-space:nowrap}#result-area-basis{max-width:58%;white-space:normal;text-align:right}
@media(min-width:1550px){:root{--content-width:1360px}}
@media(max-width:1150px){:root{--page-gutter:32px}.quick-card{padding:22px}.quick-card h3{font-size:20px}}
@media(max-width:1100px){.estimator-grid{grid-template-columns:1fr}.estimate-result{position:static}}
@media(max-width:900px){:root{--page-gutter:24px}.quick-grid{gap:14px}.quick-card{padding:18px}}
@media(max-width:650px){:root{--page-gutter:20px;--header-logo-size:208px;--header-logo-inset:14.5px}.quick-grid{grid-template-columns:1fr}.quick-card{min-height:190px;padding:24px}.quick-start{padding-block:36px 40px}.room-table th,.room-table td{padding:8px 3px}.room-table tbody th,.room-table td:last-child{font-size:14px}.room-table input{padding:7px 4px}.estimate-intent{align-items:flex-start;flex-direction:column;padding:20px}.room-summary p{gap:8px}}
@media(max-width:380px){:root{--page-gutter:16px}}
@media(prefers-reduced-motion:reduce){.quick-card{transition:none}.quick-card:hover{transform:none}}
@media print{.quick-start{display:none!important}}

/* SOL-HOUSE owner-approved slogan, six values and additional contact. */
.core-values{padding-block:64px;background:linear-gradient(135deg,#143b27,#0d2f1e);border-block:1px solid #e8b93926}
.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.value-card{padding:28px;background:linear-gradient(145deg,#1c442e,#103220);border:1px solid #e8b93933;border-radius:4px;box-shadow:inset 0 1px #ffffff0b,0 10px 24px #05190c26}
.value-index{display:block;color:#E8B939;font:600 14px/1.3 var(--heading);letter-spacing:.08em;margin-bottom:18px}
.value-card h3{font-size:22px;margin:0 0 12px}.value-card p{font-size:16px;line-height:1.5;color:#BDCEBF;margin:0}
.values-link{display:inline-block;margin-top:24px}.contact-secondary{background:#173B29;border:1px solid #E8B93988;color:#E8B939;border-radius:4px}.contact-secondary:hover{background:#214b33;border-color:#E8B939}
.contact-mark>small{display:block;max-width:320px;line-height:1.6}.site-footer>span.footer-motto{display:block;color:#E8B939}
@media(max-width:900px){.values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.value-card{padding:24px}}
@media(max-width:650px){.core-values{padding-block:44px}.values-grid{grid-template-columns:1fr;gap:14px}.value-card h3{font-size:20px}.site-footer>span.footer-motto{flex-basis:100%;order:2}.contact-secondary{width:100%;justify-content:center}}
@media print{.core-values{display:none!important}}

/* Architectural choices and owner-approved construction budgets. */
.architecture-picker{margin-top:40px;padding-top:32px;border-top:1px solid #e8b93933}
.architecture-picker-heading h3{font-size:24px;margin-bottom:10px}
.architecture-picker-heading p,.architecture-note{font-size:14px;line-height:1.6;color:#BDCEBF}
.architecture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}
.architecture-choice{display:flex;flex-direction:column;gap:10px;text-align:left;padding:22px;background:#123623;color:#F4F3E8;border:1px solid #bdcebf40;border-radius:4px;min-width:0;cursor:pointer}
.architecture-choice strong{font-size:17px;font-weight:600;line-height:1.4}
.architecture-choice span{font-size:15px;line-height:1.5;color:#BDCEBF}
.architecture-choice small{font-size:12px;line-height:1.5;color:#E8B939;margin-top:auto}
.architecture-choice[aria-pressed=true]{border-color:#E8B939;background:#214631;box-shadow:inset 0 0 0 1px #E8B939}
.architecture-choice:hover{border-color:#E8B939}
.architecture-choice:focus-visible{outline:2px solid #E8B939;outline-offset:4px}
.architecture-note strong{color:#E8B939}.architecture-picker>.text-link{margin-top:18px}
.result-style-note{font-size:14px;line-height:1.6;color:#E8B939;padding:14px;border:1px solid #e8b93966;background:#0c291b;margin:20px 0}
.result-style-note[hidden]{display:none}
.result-details dd{white-space:normal;text-align:right;max-width:58%;overflow-wrap:anywhere}
@media(max-width:900px){.architecture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.architecture-grid{grid-template-columns:1fr}.architecture-choice{padding:20px}.result-details>div{gap:12px}.result-details dd{max-width:55%}}
@media print{.architecture-picker{display:none!important}}
