:root{--paper:#f6f3ed;--ink:#252d28;--muted:#68716a;--line:#d7d9cf;--accent:#536345}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #aa7f48;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:28px 5%;border-bottom:1px solid var(--line)}.logo{color:inherit;text-decoration:none;font-size:30px;letter-spacing:5px;line-height:1}.logo{display:inline-grid;flex-shrink:0}.logo .wordmark{display:block;margin-right:-5px}.logo .tagline{display:block;width:0;min-width:100%;font-size:12px;letter-spacing:0;word-spacing:normal;line-height:1.25;white-space:nowrap;text-align:left;margin-top:9px}.edition{font-size:12px;letter-spacing:1.6px}.edition span{margin:0 16px;color:#92978b}main{max-width:1280px;margin:auto;padding:42px 5% 30px;min-height:76vh}.layout{display:grid;grid-template-columns:230px 1fr;gap:70px}.side{border-right:1px solid var(--line);padding:10px 30px 0 0}.side h2{font:32px/1.15 Georgia,serif;margin:0 0 30px}.steps{list-style:none;padding:0}.steps li{margin:20px 0;color:var(--muted);font-size:14px}.steps b{display:inline-block;width:28px;font-weight:normal}.steps .active{color:var(--ink);font-weight:bold}.side p{font-size:13px;color:var(--muted);margin-top:45px}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}.progress{height:3px;background:#dfe1d7;margin:14px 0 32px}.progress div{height:3px;background:var(--accent);transition:width .3s}h1{font:clamp(30px,4vw,46px)/1.15 Georgia,serif;font-weight:normal;margin:18px 0}h1:focus{outline:none}.hint{color:var(--muted);margin:0 0 25px}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option{background:#fff9;border:1px solid var(--line);border-radius:3px;text-align:left;padding:21px 20px;min-height:75px;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:15px;transition:background .15s,border .15s}.option:hover{border-color:#7c896e;background:#fff}.option[aria-pressed=true]{border:1.5px solid var(--accent);background:#e8ecdf}.circle{width:22px;height:22px;border:1px solid #aeb4a3;border-radius:50%;flex-shrink:0;text-align:center;font-size:14px}.option[aria-pressed=true] .circle{background:var(--accent);color:white;border-color:var(--accent)}.option small{display:block;font-size:13px;line-height:1.4;color:var(--muted);margin-top:5px}.images{grid-template-columns:repeat(3,1fr)}.images .option{display:block;padding:0;overflow:hidden}.images img{width:100%;height:240px;object-fit:cover;display:block}.images .label{padding:15px;display:flex;gap:8px;justify-content:space-between}.nav{display:flex;align-items:center;justify-content:space-between;margin-top:35px;padding-top:22px;border-top:1px solid var(--line);gap:12px}.primary{background:var(--ink);color:#fff;border:0;padding:15px 24px;border-radius:3px}.primary:disabled{opacity:.35;cursor:not-allowed}.plain{border:0;background:none;color:var(--muted);padding:12px 0}.message{min-height:25px;font-size:14px;color:#7b481b;margin-top:10px}.result{max-width:1000px;margin:auto}.result-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.lead{max-width:660px;color:var(--muted)}.result-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;margin-top:32px}.block{border-top:1px solid var(--line);padding:22px 0}.block h2{font:27px Georgia,serif;margin:0 0 18px}.need{margin-bottom:18px}.need b{font-weight:600;display:block}.need p{margin:4px 0;color:var(--muted);font-size:14px}.mood img{width:100%;max-height:400px;object-fit:cover}.swatches{display:flex;height:42px;margin:12px 0}.swatches i{flex:1}.mood small{color:var(--muted)}.pill{display:inline-block;border:1px solid var(--line);padding:5px 10px;margin:4px 4px 4px 0;font-size:14px}.note{background:#e8ecdf;padding:20px;border-radius:3px;margin:20px 0}.note p{margin:8px 0;font-size:14px}.review{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review button{display:block;width:100%;text-align:left;background:transparent;border:1px solid var(--line);padding:15px;color:var(--ink)}.review small{display:block;color:var(--muted);margin-bottom:4px}.actions{display:flex;gap:20px;flex-wrap:wrap}.credit{font-size:12px;color:var(--muted);margin-top:10px}.credit a{color:inherit}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 5%;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}@media(max-width:800px){header{padding:22px 6%}.edition{font-size:10px;letter-spacing:.7px;max-width:145px;text-align:right}.edition span{margin:0 4px}.layout{display:block}.side{display:none}main{padding:25px 6%}.images img{height:190px}.images{grid-template-columns:1fr}.images .option{display:grid;grid-template-columns:120px 1fr}.images img{height:125px}.images .label{align-items:center}.result-grid{grid-template-columns:1fr}.result-top{display:block}.review{grid-template-columns:1fr}footer{flex-direction:column;gap:7px}.options:not(.images){gap:9px}.option{padding:15px 12px;font-size:15px}.primary{padding:14px 18px}h1{margin-top:12px}}@media print{header{padding:0 0 15px}footer,.actions,.review,.print-hide{display:none!important}body{background:white}main{padding:10px 0}.result-grid{display:block}.mood img{max-height:220px;width:auto}.block,.need{break-inside:avoid}.note{border:1px solid #ccc}.result-top{display:block}}
.advice{margin-top:32px}.advice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step-number{font:32px Georgia,serif;color:#748064}.advice h3,.analogs h3,.next-cards h3{font:22px/1.2 Georgia,serif;margin:14px 0 10px}.advice p,.analogs p,.next-cards p{font-size:16px;color:var(--muted)}.analogs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.analogs figure{margin:0}.analogs img{width:100%;aspect-ratio:1;object-fit:cover}.next-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.next-cards button{padding:26px;text-align:left;border:1px solid var(--line);background:#e8ecdf66;color:var(--ink)}.next-cards button:hover{background:#e8ecdf}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}label{display:block;font-size:14px;color:var(--muted)}input,textarea{display:block;width:100%;font:16px/1.5 Arial,sans-serif;padding:12px;margin-top:7px;border:1px solid var(--line);border-radius:3px;background:#fff9;color:var(--ink)}input:focus,textarea:focus{outline:2px solid var(--accent)}textarea{min-height:105px;resize:vertical}.table-scroll{overflow:auto;margin:20px 0 30px}.budget-table{border-collapse:collapse;width:100%;min-width:690px}.budget-table th,.budget-table td{padding:10px 8px;text-align:left;border-bottom:1px solid var(--line);font-weight:normal}.budget-table thead{font-size:14px;color:var(--muted)}.budget-table th{width:28%}.budget-table td:nth-child(2),.budget-table td:nth-child(3){width:18%}.budget-table input{margin:0}.budget-totals{background:#e8ecdf;display:grid;grid-template-columns:repeat(3,1fr);padding:22px;gap:15px}.budget-totals small{display:block}.budget-totals strong{display:block;font:28px Georgia,serif;margin-top:8px}.budget-totals p{grid-column:1/-1;margin:0;font-size:14px}.over{color:#8e362b}.module ul{padding-left:23px}.module li{margin:12px 0}@media(max-width:700px){.advice-grid,.analogs,.next-cards,.field-grid{grid-template-columns:1fr}.analogs img{max-height:360px}.budget-totals{grid-template-columns:1fr}.advice-grid{gap:12px}.next-cards button{padding:22px}}@media print{.advice-grid{display:block}.advice-grid>div,.analogs figure{break-inside:avoid}.analogs{grid-template-columns:repeat(3,1fr)}.analogs img{max-height:170px}.field-grid{display:block}.field-grid label{margin:12px 0}.table-scroll{overflow:visible}.budget-table{min-width:0;font-size:12px}.budget-table input{font-size:12px;padding:5px;width:100%}textarea{height:auto;min-height:100px}.next-cards{display:none}.budget-totals{print-color-adjust:exact}}
.print-value{display:none}@media print{.print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;color:#252d28;padding:7px 0;font-size:14px}.print-input{display:none!important}}

.module-offer-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-block:1px solid var(--line);padding:14px 0;margin:25px 0;font-size:14px}.module-offer-nav span{color:var(--muted)}.module-offer-nav a{color:var(--ink);text-underline-offset:4px}.paid-offer{border:1px solid #b4baa9;padding:30px;margin-top:36px;background:#eeeee5;scroll-margin-top:24px}.offer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.offer-heading .eyebrow{font-size:14px;letter-spacing:1.2px}.offer-status{font-size:14px;border:1px solid #b4baa9;border-radius:20px;padding:3px 12px;color:#505a49}.paid-offer h2{font:30px/1.2 Georgia,serif;margin:20px 0 12px}.offer-intro{max-width:650px;margin:0 0 18px}.offer-features{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px;padding-left:22px!important}.module .offer-features li{margin:0}.offer-details{border-top:1px solid #c9cebf;margin-top:24px;padding-top:18px}.offer-details summary{cursor:pointer;font-weight:600;min-height:34px}.offer-details summary:focus-visible{outline:3px solid #aa7f48;outline-offset:4px}.offer-details p{max-width:760px;color:#505a49}.offer-footer{display:flex;align-items:center;gap:22px;margin-top:22px}.offer-footer button{flex-shrink:0}.offer-footer .primary:disabled{background:#dadfd2;color:#505a49;opacity:1}.offer-footer p{font-size:14px;color:#505a49;max-width:430px;margin:0}@media(max-width:700px){.paid-offer{padding:22px}.paid-offer h2{font-size:26px}.offer-features{grid-template-columns:1fr}.offer-footer{align-items:flex-start;flex-direction:column;gap:12px}}

.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:26px}.language-switch{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px;letter-spacing:1px}.language-switch a{color:var(--muted);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:44px}.language-switch a[aria-current=true]{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:5px}.language-switch>span{color:var(--muted)}@media(max-width:800px){header{gap:14px}.header-tools{flex-direction:column;align-items:flex-end;gap:2px}.language-switch{font-size:12px}.header-tools .edition{font-size:9px;max-width:160px}}@media print{.language-switch{display:none}}
.service-card{display:block;text-align:left;width:100%;border:1px solid var(--line);background:#e9ece5;color:var(--ink);padding:24px;margin:18px 0;cursor:pointer;font:inherit}.service-card h3{font-size:1.35rem;margin:10px 0}.service-card p{margin:0 0 15px}.service-card b{font-weight:600}.service-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:25px 0}.service-checks>div{border:1px solid var(--line);padding:20px;display:flex;gap:8px;flex-direction:column}.service-checks span{color:var(--muted)}.service-checks button{border:0;background:none;text-align:left;padding:5px 0;color:var(--accent);cursor:pointer;text-decoration:underline;font:inherit}.service-page form>label{display:block;margin:18px 0}.service-page label{font-size:14px}.service-page input,.service-page textarea{display:block;width:100%;padding:12px;border:1px solid var(--line);background:#fff;font:inherit;color:var(--ink);margin-top:6px}.service-page input[type=file]{padding:14px}.service-page #service-error{color:#a12f29;min-height:1.5em}.service-page #uploaded-plans{list-style:disc;padding-left:24px}.service-page .primary:disabled{opacity:.55;cursor:not-allowed}@media(max-width:640px){.service-checks{grid-template-columns:1fr}}
.budget-return-top{margin-left:12px}.budget-return-next{margin:20px 0 28px;padding:22px;border:1px solid var(--line);background:#e9ece5}.budget-return-next p{margin:0 0 14px}.budget-return-next .primary{width:auto}@media(max-width:640px){.budget-return-top{display:block;margin:8px 0 20px}.budget-return-next .primary{width:100%}}
.survey-intro{max-width:65ch;margin:-10px 0 30px;padding:0 0 0 18px;border-left:2px solid var(--accent);color:var(--muted);font-size:16px;line-height:1.55}@media(max-width:800px){.survey-intro{font-size:15px;line-height:1.5;margin:-8px 0 24px;padding-left:14px}}
.quick-services{margin-top:32px;padding-top:22px;border-top:1px solid var(--line)}.quick-services .eyebrow{font-size:12px;letter-spacing:1.2px;margin-bottom:10px}.quick-services button,.quick-services-mobile button{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;padding:11px 0;font:inherit;font-size:14px;line-height:1.35}.quick-services button:hover,.quick-services-mobile button:hover{color:var(--accent)}.quick-services small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.quick-services-mobile{display:none}.survey-service-return{display:block;text-align:left;color:var(--accent);font-size:14px;margin:0 0 13px;padding:5px 0}.result-top .survey-service-return{align-self:flex-start;flex:0 0 100%}.result-top:has(.survey-service-return){flex-wrap:wrap}@media(max-width:800px){.quick-services-mobile{display:block;border:1px solid var(--line);padding:0 14px;margin:0 0 20px}.quick-services-mobile summary{cursor:pointer;padding:11px 0;font-size:14px;color:var(--ink)}.quick-services-mobile button:last-child{border-bottom:0}}
@media print{
  @page{size:A4;margin:16mm}
  body{background:#fff;color:var(--ink);-webkit-print-color-adjust:exact;print-color-adjust:exact}
  header{border-bottom:2px solid var(--accent);padding:0 0 12px;margin-bottom:18px}
  .logo{color:var(--ink);font-size:25px}
  .logo .tagline{font-size:10px}
  .edition{color:var(--accent)}
  main{max-width:none;padding:0;min-height:0}
  .result,.module{max-width:none}
  .module>.eyebrow,.result>.eyebrow{color:var(--accent);font-weight:700;letter-spacing:2px}
  .module h1,.result h1{color:var(--ink);font-size:32px;line-height:1.18;margin:10px 0 14px}
  .module .lead,.result .lead{color:var(--muted);font-size:14px;border-left:3px solid var(--accent);padding-left:14px}
  .module .block{border-top:1px solid var(--line);padding:18px 0}
  .module .block h2,.result .block h2{color:var(--accent);font-size:22px}
  .module .block h3,.module .need b,.module strong{color:var(--ink)}
  .module .note,.module .budget-totals{background:#e8ecdf!important;border:1px solid #c8d0bd;break-inside:avoid}
  .module .budget-totals small{color:var(--accent)}
  .module .budget-totals strong{color:var(--ink)}
  .budget-table{border:1px solid var(--line)}
  .budget-table thead th{background:#e8ecdf!important;color:var(--accent);font-weight:700}
  .budget-table tbody tr{break-inside:avoid}
  .budget-table tbody th{color:var(--ink);font-weight:600}
  .budget-table td,.budget-table th{border-bottom:1px solid var(--line)}
  .print-value{color:var(--ink);font-size:12px;line-height:1.4}
  .module .credit,.module small{color:var(--muted)}
}
