:root{--bg-canvas:#f3e9d8;--bg-surface:rgba(255,249,239,.86);--bg-surface-hover:#fff9ef;--text-primary:#262626;--text-muted:#62564a;--accent-primary:#9a3412;--accent-secondary:#78350f;--border-subtle:#c8af94;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(62,31,12,.16);--glow-accent:0 0 24px -10px #9a341250;--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:16px/1.7 system-ui,sans-serif;overflow-wrap:anywhere;hyphens:auto}body:before{content:"";position:fixed;inset:12px;border:1px solid var(--accent-primary);pointer-events:none;z-index:10}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{color:var(--accent-secondary)}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px}header{position:relative;margin:30px auto 0;padding:15px 23px;max-width:1200px;width:calc(100% - 88px);border:1px solid var(--border-subtle);border-radius:60px;background:var(--bg-surface);display:flex;align-items:center;justify-content:space-between;gap:18px;z-index:5;backdrop-filter:var(--glass-backdrop)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text-primary);font-weight:750;letter-spacing:-.04em;flex-shrink:0}.brand-mark{display:inline-grid;place-items:center;width:31px;height:31px;border:1px solid var(--accent-primary);border-radius:50%;font:700 17px ui-monospace,Consolas,monospace;color:var(--accent-primary)}nav{display:flex;gap:19px;align-items:center}nav a{font-size:.83rem;text-decoration:none;color:var(--text-primary);white-space:nowrap}nav a[aria-current=page]{text-decoration:underline;color:var(--accent-primary)}.menu-toggle{display:none;border:0;background:transparent;font-size:27px;line-height:1;color:var(--accent-primary);padding:7px 12px;min-width:44px;min-height:44px}main{max-width:1200px;margin:auto;padding:0 22px 60px;width:calc(100% - 44px)}.hero{padding:48px 0 34px;max-width:970px;position:relative}.eyebrow,.step-label,.small-title,th,label,.number,.button,button{font-family:ui-monospace,Consolas,monospace}.eyebrow{font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-primary);margin:0 0 12px}h1,h2,h3{line-height:1.14;letter-spacing:-.045em;margin:0 0 19px}h1{font-size:clamp(2.2rem,5vw,4.5rem);font-weight:620;max-width:20ch}h2{font-size:clamp(1.65rem,3vw,2.45rem);font-weight:620}h3{font-size:1.25rem;letter-spacing:-.025em}.hero p:not(.eyebrow){max-width:65ch;color:var(--text-muted)}p{margin:0 0 18px}.pathway{position:relative;padding-left:61px}.pathway:before{content:"";position:absolute;left:20px;top:24px;bottom:30px;width:1px;background:var(--accent-primary);opacity:.55}.step{position:relative;margin:0 0 38px;padding:30px;background:var(--bg-surface);border:1px solid var(--border-subtle);backdrop-filter:var(--glass-backdrop)}.step:before{content:attr(data-step);position:absolute;left:-62px;top:23px;width:40px;height:40px;background:var(--bg-canvas);border:1px solid var(--accent-primary);border-radius:50%;display:grid;place-items:center;font:14px ui-monospace,Consolas,monospace;color:var(--accent-primary)}.step-label{font-size:.72rem;letter-spacing:.12em;color:var(--accent-primary);text-transform:uppercase;margin:0 0 13px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:start}.panel,.result,.note{padding:22px;border:1px solid var(--border-subtle);background:rgba(243,233,216,.58)}.result{margin-top:20px;border-left:3px solid var(--accent-primary);background:#ede0cb}.result p:last-child,.note p:last-child{margin-bottom:0}.result strong{font-family:ui-monospace,Consolas,monospace;font-size:1.25rem;color:var(--accent-secondary)}.assumptions,.caption,.muted{font-size:.86rem;color:var(--text-muted)}.assumptions{margin:12px 0 0}.button,button{display:inline-block;padding:12px 17px;border:1px solid var(--accent-primary);background:transparent;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;cursor:pointer;text-decoration:none;transition:transform .3s var(--ease-kinetic),box-shadow .3s,background .3s}.button:hover,button:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);background:var(--bg-surface-hover)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}label{display:block;font-size:.75rem;letter-spacing:.01em;margin-bottom:13px}input,select,textarea{display:block;width:100%;padding:10px 11px;margin-top:6px;border:1px solid #ad9379;border-radius:0;background:#fff9ef;color:var(--text-primary);min-width:0}textarea{min-height:150px;resize:vertical}input[type=checkbox]{display:inline;width:auto}input[type=number]{font-family:ui-monospace,Consolas,monospace}table{width:100%;border-collapse:collapse;font-size:.88rem}th,td{text-align:left;padding:11px 9px;border-bottom:1px solid var(--border-subtle);vertical-align:top}th{font-size:.72rem;color:var(--accent-secondary)}td input{min-width:90px;margin:0}td input[type=text]{min-width:130px}.table-scroll{overflow-x:auto}.budget-row button,.tracker-row button{padding:8px}.photo{margin:0}.photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;filter:contrast(1.1) saturate(.65)}.photo.banner img{aspect-ratio:16/9}.photo.thumbnail img{aspect-ratio:1/1}.photo figcaption{font-size:.75rem;color:var(--text-muted);padding-top:8px}.feature{position:relative;border:1px solid var(--border-subtle);background:#e5d2b8}.feature .feature-copy{padding:24px;background:var(--bg-surface);backdrop-filter:var(--glass-backdrop);margin:-38px 18px 18px;position:relative}.card{padding:24px;border:1px solid var(--border-subtle);background:var(--bg-surface);transition:transform .35s var(--ease-kinetic),box-shadow .35s}.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.prose{max-width:70ch;margin:0 auto}.prose h2{margin-top:36px;font-size:1.65rem}.prose h3{margin-top:28px}.prose ul,.prose ol{padding-left:23px}.wide-copy{max-width:72ch}.notice{border-left:2px solid var(--accent-primary);padding:10px 0 10px 18px;color:var(--text-muted);font-size:.9rem;margin:22px 0}.faq-list details{border-top:1px solid var(--border-subtle);padding:21px 0}.faq-list summary{font-weight:650;cursor:pointer;line-height:1.45}.faq-list details p{padding-top:15px;margin:0}.site-footer{max-width:1200px;margin:0 auto;padding:30px 22px 45px;width:calc(100% - 44px);border-top:1px solid var(--accent-primary);display:flex;justify-content:space-between;gap:25px;font-size:.78rem}.footer-links{display:flex;flex-wrap:wrap;gap:14px;align-content:start}.site-footer p{margin:0 0 8px}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal-visible{opacity:1;transform:translateY(0)}.ambient{background:linear-gradient(120deg,#fff9efb8,#e6ccb0b8,#f3e9d8b8);background-size:200% 200%;animation:gradientShift 12s ease infinite}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.skip{position:absolute;left:26px;top:-90px;background:var(--bg-surface);padding:10px;z-index:20}.skip:focus{top:18px}[hidden]{display:none!important}.print-only{display:none}
@media(min-width:1025px){.step{padding:34px}.hero{padding-top:52px}.home-baseline{min-height:365px}}
@media(min-width:769px) and (max-width:1024px){header{padding:13px 19px}nav{gap:12px}.brand{font-size:.86rem}.split{gap:22px}.step{padding:24px}}
@media(max-width:768px){header{width:calc(100% - 54px);margin-top:27px;padding:11px 17px}.brand{font-size:.92rem}.menu-toggle{display:block}nav{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;padding:18px;background:#fff9ef;border:1px solid var(--accent-primary);box-shadow:var(--shadow-elevation);flex-direction:column;align-items:stretch;gap:0}nav.is-open{display:flex}nav a{padding:10px}.hero{padding-top:35px}main{width:calc(100% - 30px);padding-inline:17px}.split{grid-template-columns:1fr}.pathway{padding-left:43px}.pathway:before{left:15px}.step:before{left:-44px;width:31px;height:31px;font-size:11px}.step{padding:23px 19px}.site-footer{width:calc(100% - 54px);padding-inline:0;flex-direction:column}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}}
@media(max-width:480px){h1{font-size:2.35rem}.brand{font-size:.79rem;gap:7px}.brand-mark{width:25px;height:25px}.hero{padding-bottom:23px}.step{padding:21px 14px}.fields{grid-template-columns:1fr}.panel,.result{padding:17px}.pathway{padding-left:36px}.pathway:before{left:10px}.step:before{left:-37px;width:25px;height:25px;top:23px}.button,button{font-size:.68rem}.site-footer{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
@media print{body{background:#fff;color:#000}body:before,header,.site-footer,.skip,.actions,button,.hero .button,.no-print{display:none!important}main{width:100%;max-width:none;padding:0}.hero{padding-top:0}h1{font-size:28pt}.pathway{padding-left:0}.pathway:before,.step:before{display:none}.step{break-inside:avoid;background:#fff;border:1px solid #999;padding:16px}.js .reveal{opacity:1;transform:none}.split,.grid{display:block}.photo{display:none}.print-only{display:block}.result{background:#fff}.table-scroll{overflow:visible}input,textarea{background:#fff;border:1px solid #999}.prose{max-width:none}a{color:#000}}