.agreement-hero{background:linear-gradient(125deg,#0b362a 0%,#124b3a 63%,#826331 150%)}
.agreement-shell{grid-template-columns:270px minmax(0,780px)}
.toc-help{display:grid;gap:5px;margin-top:20px;padding:14px;border-radius:10px;background:var(--cream);font-size:11px;line-height:1.45;color:#59645f}
.toc-help strong{color:var(--green);font-size:12px}
.agreement-notice{background:linear-gradient(130deg,#f6f2e9,#edf5f1);border-color:#d9dfd7}
.booking-summary{scroll-margin-top:96px;margin:22px 0 10px;border:1px solid #d8d1e4;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(28,40,34,.07)}
.summary-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;background:linear-gradient(130deg,#f5f0fa,#f8f5fb)}
.summary-heading h2{font:700 32px/1.1 var(--serif);color:var(--green);margin:3px 0 0}
.summary-kicker{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:850;color:#6f577e}
.status-pill{flex:0 0 auto;border:1px solid #cdbdd8;border-radius:999px;padding:7px 11px;background:#fff;color:#624d70;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.summary-intro{margin:0;padding:18px 24px;border-bottom:1px solid #ece6f1;color:#5c6862;font-size:13px}
.summary-intro code{background:#f2eaf6;color:#654672;padding:2px 5px;border-radius:4px}
.summary-grid{display:grid;grid-template-columns:1fr 1fr;margin:0}
.summary-grid>div{min-width:0;padding:15px 24px;border-bottom:1px solid #ece6f1}
.summary-grid>div:nth-child(odd){border-right:1px solid #ece6f1}
.summary-grid dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#6b766f;margin-bottom:3px}
.summary-grid dd{margin:0;color:#6f477d;font:700 14px/1.4 var(--sans);overflow-wrap:anywhere}
.summary-grid .summary-total{grid-column:1/-1;border:0;background:#f8f4fa;display:flex;justify-content:space-between;align-items:center;gap:18px}
.summary-total dt{color:var(--green);font-size:12px}.summary-total dd{font-size:18px}
.fee-card{margin-top:22px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.fee-card h4{margin:0;padding:16px 20px;background:var(--mint);display:flex;justify-content:space-between;gap:15px;font-size:12px}
.fee-card h4 span{font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0}
.fee-card dl{margin:0}.fee-card dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:12px 20px;border-top:1px solid var(--line)}
.fee-card dt{font-weight:650}.fee-card dt small{display:block;color:var(--muted);font-weight:500}.fee-card dd{margin:0;color:#6f477d;font-weight:800}.fee-card .fee-total{background:#f8f4fa;font-size:16px}.fee-card .fee-deposit{background:var(--cream)}
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 22px}
.tier-grid article{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}
.tier-grid span{display:block;color:var(--green);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.tier-grid strong{display:block;font:700 25px var(--serif);margin:5px 0}.tier-grid p{font-size:12px;color:var(--muted);line-height:1.4;margin:0}
.checklist-list li:before{width:14px;height:14px;border-radius:3px;background:var(--mint);border:1px solid #9ebcaf;top:.4em}
.checklist-list li:after{content:"✓";position:absolute;left:4px;top:.04em;color:var(--green);font-size:11px;font-weight:900}
.liability-order{list-style:none;padding:0;margin:16px 0 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;counter-reset:order}
.liability-order li{padding:18px;border-radius:12px;background:var(--cream);border:1px solid #e7dac4}
.liability-order span{display:inline;color:#8c6b37;text-transform:uppercase;letter-spacing:.09em;font-size:9px;font-weight:850}.liability-order strong{font:700 18px var(--serif);color:var(--green);margin:4px 0}.liability-order p{font-size:12px;line-height:1.55;margin:0;color:#59645f}
@media(max-width:900px){.agreement-shell{grid-template-columns:215px minmax(0,1fr)}}
@media(max-width:700px){.summary-heading{align-items:flex-start;flex-direction:column}.summary-grid{grid-template-columns:1fr}.summary-grid>div:nth-child(odd){border-right:0}.summary-grid .summary-total{display:grid}.tier-grid,.liability-order{grid-template-columns:1fr}.fee-card h4{display:grid}}
@media print{.agreement-shell{display:block}.booking-summary{box-shadow:none}.status-pill{border-color:#777}.summary-grid dd,.fee-card dd{color:#000}.tier-grid,.liability-order{break-inside:avoid}.agreement-notice{background:#fff}}
