:root{color-scheme:light;--ink:#252924;--muted:#69716b;--paper:#f3f0e9;--surface:#fffdf9;--line:#d8d2c8;--forest:#263832;--accent:#c86f4a;--accent-dark:#9d4f32;--sage:#718176;--hold:#a06d20;font:16px/1.68 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper);color:var(--ink)}
body{margin:0}
a{color:inherit}
.book{width:min(1180px,100%);margin:auto;padding:24px 24px 64px}
.hero{min-height:620px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:var(--forest);color:#fff}
.hero-copy{padding:clamp(42px,6vw,82px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.eyebrow{margin:0 0 32px;color:#d9b49e;font-size:.78rem;font-weight:700;letter-spacing:.16em}
.project-name{margin:0;color:#b9c6c0}
.hero h1{max-width:10ch;margin:.16em 0 .35em;font:500 clamp(3rem,6vw,5.6rem)/1.02 Georgia,"Songti SC",serif}
.hero-summary{max-width:39rem;margin:0;color:#dce3df;font-size:1.05rem}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border:1px solid transparent;text-decoration:none;font-weight:700}
.button.primary{background:var(--accent);color:#fff}
.button.primary:hover,.button.primary:focus-visible{background:var(--accent-dark)}
.button.secondary{border-color:#708079;color:#fff}
.button.secondary:hover,.button.secondary:focus-visible{background:#ffffff12}
.hero-status{display:flex;align-items:center;gap:9px;margin:30px 0 0;color:#c7d3cd;font-size:.9rem}
.hero-status span{width:8px;height:8px;border-radius:50%;background:#deb268}
.hero-media{position:relative;margin:0;min-height:520px;background:#d8d2c7}
.hero-media img{width:100%;height:100%;display:block;object-fit:cover}
.hero-media figcaption{position:absolute;inset:auto 18px 18px;padding:10px 13px;background:#18221fdb;color:#e9eeeb;font-size:.78rem;max-width:34rem}
.readiness{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:1px;background:var(--line)}
.readiness article{display:flex;align-items:center;gap:14px;padding:22px;background:var(--surface)}
.readiness small,.readiness strong{display:block}
.readiness small{color:var(--muted)}
.step{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-weight:700}
.step.ready{background:#dfe9e2;color:#386a50}
.step.hold{background:#f3e7ce;color:var(--hold)}
.section{padding-top:92px}
.section-kicker{margin-bottom:16px;color:var(--accent-dark);font-size:.78rem;font-weight:800;letter-spacing:.14em}
.section-heading{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);gap:44px;align-items:start;margin-bottom:34px}
.section h2{max-width:15ch;margin:0;font:500 clamp(2.25rem,4.5vw,4rem)/1.08 Georgia,"Songti SC",serif}
.section-heading p{margin:8px 0 0;color:var(--muted);font-size:1.02rem}
.home-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}
.home-metrics article{padding:24px 16px;border-right:1px solid var(--line)}
.home-metrics article:last-child{border:0}
.home-metrics strong,.home-metrics span{display:block}
.home-metrics strong{font:500 2rem Georgia,serif}
.home-metrics span{color:var(--muted)}
.strategy-grid,.material-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}
.strategy,.material{padding:24px;background:var(--surface);border-top:3px solid #9cac9f}
.strategy h3,.material h3{margin:0 0 10px;font-size:1.12rem}
.strategy p,.material p{margin:0;color:var(--muted)}
.strategy small{display:block;margin-top:16px;color:#7c6551}
.renders{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.render{position:relative;margin:0;overflow:hidden;background:#202723}
.render.featured{grid-column:1/-1}
.render img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover}
.render.featured img{aspect-ratio:16/8}
.render figcaption{position:absolute;inset:auto 0 0;padding:18px 22px;background:#17201ddd;color:#fff}
.render strong,.render span{display:block}
.render span{max-width:44rem;margin-top:4px;color:#d8e0dc;font-size:.82rem}
.drawing-shell{background:#232b27;color:#fff}
.drawing-tabs{display:flex;gap:4px;padding:12px 12px 0}
.drawing-tabs button,.drawing-toolbar button,.drawing-toolbar a{min-height:44px;border:1px solid #4d5954;background:#303a35;color:#fff;padding:9px 14px;font:inherit;cursor:pointer;text-decoration:none}
.drawing-tabs button[aria-selected="true"]{background:#f4efe6;color:#252924;border-color:#f4efe6}
.drawing-toolbar{display:flex;align-items:center;gap:6px;padding:10px 12px}
.drawing-toolbar output{width:58px;text-align:center;color:#d7dfda}
.drawing-toolbar a{margin-left:auto}
.drawing-viewport{height:min(72vh,760px);overflow:auto;background:#d4d0c8;cursor:grab;overscroll-behavior:contain}
.drawing-viewport:focus-visible{outline:3px solid #e6a17f;outline-offset:-3px}
.drawing-viewport[data-dragging="true"]{cursor:grabbing}
.drawing-surface{min-width:100%;min-height:100%;display:grid;place-items:start center;padding:18px}
.drawing-panel{width:100%;justify-self:center}
.drawing-panel[hidden]{display:none}
.drawing-panel img{display:block;width:100%;height:auto;background:#fffdf8;box-shadow:0 10px 30px #0002;user-select:none;pointer-events:none}
.drawing-viewport[data-zoom="80"] .drawing-panel{width:80%}
.drawing-viewport[data-zoom="100"] .drawing-panel{width:100%}
.drawing-viewport[data-zoom="125"] .drawing-panel{width:125%}
.drawing-viewport[data-zoom="150"] .drawing-panel{width:150%}
.drawing-viewport[data-zoom="200"] .drawing-panel{width:200%}
.drawing-note{margin:0;padding:10px 14px;color:#c4cec9;font-size:.82rem}
.tour-callout{display:flex;align-items:end;justify-content:space-between;gap:32px;padding:48px;margin-top:92px;background:#dfe6df}
.tour-callout h2{max-width:18ch}
.tour-callout p{max-width:42rem;color:#59645e}
.material small{color:var(--accent-dark);font-weight:700}
.material-check{margin-top:14px!important;padding-top:14px;border-top:1px solid var(--line);font-size:.88rem}
.budget-section{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.budget-section>.section-kicker,.budget-section>.section-heading{grid-column:1/-1}
.budget-total{display:flex;min-height:220px;flex-direction:column;justify-content:flex-end;padding:28px;background:var(--forest);color:#fff}
.budget-total small{color:#bdc9c3}
.budget-total strong{font:500 clamp(2rem,4vw,3.5rem)/1.1 Georgia,serif}
.budget-list{border-top:1px solid var(--line)}
.budget-list article{display:flex;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}
.budget-list strong,.budget-list span{display:block}
.budget-list span{color:var(--muted);font-size:.84rem}
.budget-list b{white-space:nowrap}
.agreement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.agreement-grid article{padding:20px;background:var(--surface);border:1px solid var(--line)}
.agreement-grid span{display:inline-flex;margin-bottom:14px;padding:5px 9px;background:#dfe9e3;color:#355344;font-size:.76rem;font-weight:700}
.agreement-grid h3{margin:0 0 10px;font-size:1rem;line-height:1.55}
.agreement-grid p{margin:0;color:var(--muted);font-size:.86rem}
.decision-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.decision-columns article{padding:28px;background:var(--surface)}
.decision-columns h3{margin:0 0 18px}
.decision-columns ol{margin:0;padding-left:1.35rem}
.decision-columns li{padding:10px 0;border-bottom:1px solid var(--line)}
.decision-columns li:last-child{border:0}
.decision-columns strong,.decision-columns span{display:block}
.decision-columns span{margin-top:4px;color:var(--muted);font-size:.84rem}
.boundary{padding:18px 20px;margin:18px 0 0;border-left:4px solid #d0a453;background:#fff8e8}
.share-note{background:var(--ink);color:#fff}
.share-note .section-kicker,.share-note .section-heading p{color:#c8d1cd}
.share-points{display:flex;flex-wrap:wrap;gap:10px}
.share-points span{padding:11px 14px;border:1px solid #51615b;background:#27332f;font-size:.9rem}
footer{margin-top:84px;padding-top:26px;border-top:1px solid var(--line);color:var(--muted);font-size:.84rem}
.empty{padding:32px;background:var(--surface);color:var(--muted)}
button:focus-visible,a:focus-visible{outline:3px solid #e4a17f;outline-offset:3px}
@media(max-width:780px){.book{padding:12px 12px 48px}
.hero{grid-template-columns:1fr}
.hero-copy{padding:40px 24px}
.hero-media{min-height:340px}
.readiness,.home-metrics,.strategy-grid,.material-grid,.agreement-grid,.decision-columns,.budget-section{grid-template-columns:1fr}
.readiness{gap:0}
.section{padding-top:66px}
.section-heading{grid-template-columns:1fr;gap:12px}
.home-metrics article{border-right:0;border-bottom:1px solid var(--line)}
.renders{grid-template-columns:1fr}
.render.featured{grid-column:auto}
.render.featured img,.render img{aspect-ratio:4/3}
.drawing-tabs{overflow-x:auto}
.drawing-tabs button{white-space:nowrap}
.drawing-toolbar{flex-wrap:wrap}
.drawing-toolbar a{margin-left:0}
.drawing-viewport{height:62vh}
.drawing-surface{min-width:760px}
.tour-callout{align-items:flex-start;flex-direction:column;margin-top:66px;padding:30px 22px}
.budget-section>.section-kicker,.budget-section>.section-heading{grid-column:auto}
.budget-total{min-height:180px}
}
@media print{body{background:#fff}
.book{width:100%;padding:0}
.hero{break-after:page}
.hero-actions,.drawing-toolbar,.tour-callout .button,.share-note{display:none}
.section{break-inside:avoid}
.drawing-viewport{height:auto;overflow:visible}
.drawing-surface{min-width:0;padding:0}
}
