:root{--bg-canvas:#eef7f2;--bg-surface:#fff;--bg-surface-hover:#f4faf5;--text-primary:#1f2937;--text-muted:#506354;--accent-primary:#14532d;--accent-secondary:#d8edbc;--border-subtle:#bbd1c0;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 0 0 transparent;--glow-accent:0 0 0 transparent;--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:17px/1.7 system-ui,"Segoe UI",Roboto,sans-serif;overflow-wrap:anywhere;hyphens:auto}button,input,textarea,select{font:inherit}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}:focus-visible{outline:3px solid var(--accent-primary);outline-offset:5px}[hidden]{display:none!important}.site-frame{max-width:1440px;margin:28px auto;border:1px solid var(--accent-primary);background:var(--bg-canvas)}.container{width:calc(100% - 80px);max-width:1200px;margin-inline:auto}.skip-link{position:absolute;top:8px;left:12px;z-index:20;transform:translateY(-150%);background:white;padding:8px 16px}.skip-link:focus{transform:translateY(0)}.site-header{position:relative;border-bottom:1px solid var(--border-subtle);padding:24px 0 0}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:19px;font-weight:800;letter-spacing:-.7px}.brand-mark{width:31px;height:31px;border:2px solid var(--accent-primary);border-radius:4px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;padding:5px;flex-shrink:0}.brand-mark i{background:var(--accent-primary);border-radius:1px}.brand-mark i:last-child{background:var(--accent-secondary)}.header-note{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.site-nav{display:flex;justify-content:center;gap:34px;padding:20px 0 17px}.site-nav a{font-size:14px;text-decoration:none;font-weight:700;padding:4px 0;border-bottom:2px solid transparent}.site-nav a[aria-current=page],.site-nav a:hover{border-bottom-color:var(--accent-primary)}.menu-toggle{display:none;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:4px;width:44px;height:44px;font-size:28px;color:var(--accent-primary);line-height:1}.hero{padding:75px 0 65px;position:relative}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase;color:var(--accent-primary);margin:0 0 18px}.hero h1{font-size:clamp(42px,6.7vw,88px);line-height:1.02;letter-spacing:-.065em;max-width:1000px;font-weight:800;margin:0 0 27px}.hero .intro{font-size:clamp(19px,2vw,23px);max-width:65ch;line-height:1.6}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.button,button.action{display:inline-block;background:var(--accent-primary);color:white;border:1px solid var(--accent-primary);border-radius:4px;text-decoration:none;font-weight:750;font-size:15px;line-height:1.5;padding:13px 21px;box-shadow:4px 4px 0 #94b39b;transition:transform .25s var(--ease-kinetic),box-shadow .25s var(--ease-kinetic),background .25s}.button:hover,button.action:hover{transform:translate(4px,4px);box-shadow:0 0 0 #94b39b;background:#1b6339}.button.secondary{background:white;color:var(--accent-primary)}.hero-footnote{font-size:13px;color:var(--text-muted);margin-top:30px}.board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;padding-bottom:60px}.tile{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:4px;padding:30px;min-width:0;transition:transform .3s var(--ease-kinetic),background .3s,border-color .3s;box-shadow:none}.tile:hover{border-color:#719b7b;background:var(--bg-surface-hover)}.wide{grid-column:span 8}.narrow{grid-column:span 4}.half{grid-column:span 6}.full{grid-column:1/-1}.tile-number{font:800 12px/1.4 system-ui;letter-spacing:.12em;color:var(--text-muted);display:block;margin-bottom:15px}h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}h2{font-size:clamp(25px,3vw,35px);line-height:1.17;letter-spacing:-.04em;margin:0 0 18px;font-weight:800}h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;margin:24px 0 10px;font-weight:800}p{margin:0 0 18px}p:last-child{margin-bottom:0}li+li{margin-top:9px}ul,ol{padding-left:23px}.muted,figcaption,.caption{color:var(--text-muted);font-size:14px}.tag{display:inline-block;padding:3px 9px;border:1px solid var(--border-subtle);border-radius:4px;font-size:12px;font-weight:750;background:var(--bg-canvas)}.constraint-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.mini-panel{border:1px solid var(--border-subtle);border-radius:4px;padding:20px;background:var(--bg-canvas)}.mini-panel h3{margin-top:0}.conflict-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:25px}.conflict-node{background:var(--bg-canvas);border:1px solid var(--border-subtle);padding:18px;border-radius:4px}.conflict-node strong{display:block;color:var(--accent-primary);margin-bottom:8px}.conflict-result{grid-column:1/-1;border-left:4px solid var(--accent-primary);padding:15px 20px;background:#e5f1df}.media{margin:0}.media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:4px;border:1px solid var(--border-subtle)}.media.banner img{aspect-ratio:16/9}.media.thumbnail img{aspect-ratio:1/1}.media figcaption{padding-top:10px;font-size:12px}.split-card{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center}.image-overlay{position:relative;isolation:isolate;min-height:340px;display:flex;align-items:flex-end;padding:0;overflow:clip}.image-overlay img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.overlay-copy{background:rgba(255,255,255,.94);margin:20px;padding:24px;border:1px solid var(--border-subtle);border-radius:4px;backdrop-filter:var(--glass-backdrop)}.comparison-row{display:grid;grid-template-columns:100px 1fr 1fr;gap:15px;border-top:1px solid var(--border-subtle);padding:16px 0;font-size:15px}.comparison-row strong{color:var(--accent-primary)}.steps{counter-reset:step;list-style:none;padding:0}.steps li{counter-increment:step;position:relative;border-left:1px solid var(--border-subtle);padding:0 0 22px 45px;margin:0}.steps li:before{content:counter(step);position:absolute;left:-15px;top:0;background:var(--accent-primary);color:white;border-radius:4px;width:30px;height:30px;display:grid;place-items:center;font-weight:800;font-size:13px}.steps li:last-child{padding-bottom:0}.reading{max-width:70ch;margin:0 auto}.reading h2{margin-top:38px;font-size:29px}.reading h2:first-child{margin-top:0}.reading p{margin-bottom:22px}.topic-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px;align-items:start;padding-bottom:60px}.topic-main{padding:36px}.topic-aside{display:grid;gap:20px}.topic-aside h2{font-size:23px}.table-wrap{max-width:100%;margin:22px 0}table{border-collapse:collapse;width:100%;min-width:530px;font-size:14px}th,td{text-align:left;vertical-align:top;padding:12px;border:1px solid var(--border-subtle)}th{background:var(--bg-canvas);font-weight:800}caption{text-align:left;font-size:13px;color:var(--text-muted);margin-bottom:9px}.callout{padding:22px;border:1px solid var(--border-subtle);border-left:4px solid var(--accent-primary);border-radius:4px;background:var(--bg-canvas);margin:24px 0}.route-link{display:inline-block;font-weight:750;margin-top:16px}.faq-list{max-width:850px;margin:0 auto 60px}.faq-list details{background:white;border:1px solid var(--border-subtle);border-radius:4px;padding:20px 24px;margin-bottom:12px}.faq-list summary{cursor:pointer;font-weight:800;line-height:1.5;color:var(--accent-primary)}.faq-list details p{margin-top:16px}.legal-layout{padding-bottom:60px}.legal-layout .tile{max-width:900px;margin-inline:auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}label{display:block;font-weight:750;font-size:14px;margin-bottom:7px}input,textarea,select{display:block;width:100%;background:white;color:var(--text-primary);border:1px solid #8fac96;border-radius:4px;padding:12px;min-width:0}textarea{min-height:165px;resize:vertical}.field-full{grid-column:1/-1}.field-hint{font-size:13px;color:var(--text-muted);margin-top:5px}.report-preview{font:14px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;min-height:310px;background:var(--bg-canvas)}.tool-actions{display:flex;flex-wrap:wrap;gap:18px;margin:20px 0}.status{min-height:1.7em;color:var(--accent-primary);font-size:14px}.site-footer{border-top:1px solid var(--accent-primary);padding:35px 0 24px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.5fr;border:1px solid var(--border-subtle);border-radius:4px;background:white}.footer-cell{padding:23px;border-right:1px solid var(--border-subtle);font-size:13px}.footer-cell:last-child{border:0}.footer-cell h2{font-size:14px;letter-spacing:0;margin-bottom:13px}.footer-cell a{display:block;margin:7px 0}.footer-cell address{font-style:normal}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--text-muted);margin-top:20px}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal.reveal-visible{opacity:1;transform:translateY(0)}.preference-box{padding:20px;border:1px solid var(--border-subtle);border-radius:4px;margin:24px 0}.preference-box label{display:flex;gap:12px;align-items:center}.preference-box input{width:20px;height:20px}.compact-list{font-size:14px}
@media(min-width:1025px){.site-frame{width:calc(100% - 64px)}}
@media(min-width:769px) and (max-width:1024px){.site-frame{margin:20px;width:calc(100% - 40px)}.container{width:calc(100% - 48px)}.tile{padding:24px}.topic-layout{grid-template-columns:minmax(0,1fr) 250px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-cell:nth-child(2){border-right:0}.footer-cell:nth-child(-n+2){border-bottom:1px solid var(--border-subtle)}}
@media(max-width:768px){.site-frame{margin:12px}.container{width:calc(100% - 36px)}.site-header{padding:18px 0}.header-note{display:none}.brand{font-size:17px;gap:9px}.menu-toggle{display:block;flex-shrink:0}.site-nav{display:flex;flex-wrap:wrap;gap:12px 24px;padding:18px 0 0;justify-content:flex-start}.js .site-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px;background:var(--bg-surface);border-bottom:1px solid var(--accent-primary);z-index:10;box-shadow:none}.js .site-nav.is-open{display:grid;animation:menuDown .25s var(--ease-kinetic)}.hero{padding:45px 0}.hero h1{font-size:clamp(42px,8.5vw,64px)}.board{gap:16px}.wide,.narrow,.half{grid-column:1/-1}.tile{padding:24px}.topic-layout{grid-template-columns:1fr}.topic-main{padding:25px}.topic-aside{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-cell:nth-child(2){border-right:0}.footer-cell:nth-child(-n+2){border-bottom:1px solid var(--border-subtle)}.split-card{gap:20px}.footer-bottom{flex-direction:column;gap:5px}}
@media(min-width:481px) and (max-width:768px){.conflict-map{gap:9px}.conflict-node{padding:12px}}
@media(max-width:480px){.site-frame{margin:8px}.container{width:calc(100% - 28px)}.brand{font-size:14px;letter-spacing:-.4px}.brand-mark{width:27px;height:27px}.hero h1{font-size:43px}.hero .intro{font-size:18px}.tile{padding:20px}.conflict-map,.split-card,.form-grid{grid-template-columns:1fr}.conflict-result,.field-full{grid-column:1}.comparison-row{grid-template-columns:1fr;gap:8px}.footer-grid{grid-template-columns:1fr}.footer-cell{border-right:0;border-bottom:1px solid var(--border-subtle)}.footer-cell:last-child{border-bottom:0}.hero-actions{align-items:flex-start;flex-direction:column}.topic-main{padding:21px}.image-overlay{min-height:390px}}
@keyframes menuDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.button:hover,button.action:hover{transform:none}}