.prep-section{max-width:1180px;margin:100px auto;padding:0 28px;color:var(--ink,#25211e)}
.prep-sheet{display:grid;grid-template-columns:1.12fr 1fr;position:relative;background:#faf4e9;border:1px solid #d7c8b9;box-shadow:0 16px 0 -12px #e3d3bd,0 27px 40px -30px #60412d55;isolation:isolate}
.prep-sheet::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,#fff8 0%,transparent 28%,#b8977020 100%);z-index:-1}
.prep-page{min-width:0;padding:44px 42px}
.prep-page-questions{border-left:1px dashed #b99f7f;background:linear-gradient(90deg,#9c79531a,transparent 18px,#fff3)}
.prep-kicker{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--brick,#a13228);margin:0 0 13px}
.prep-title{font-size:clamp(30px,3.6vw,46px);line-height:1.07;letter-spacing:-.045em;margin:0 0 30px}
.prep-checklist{border:0;min-width:0;padding:0;margin:0 0 24px}
.prep-legend{font-size:12px;letter-spacing:.035em;color:#65584c;padding:0 0 9px}
.prep-item{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:13px;padding:17px 0;border-bottom:1px solid #d7c8b9;cursor:pointer}
.prep-item input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--brick,#a13228);cursor:pointer;flex:none}
.prep-item strong{display:block;font-size:16px;line-height:1.45;color:var(--ink,#25211e);transition:color .2s}
.prep-description{display:block;font-size:13px;line-height:1.6;color:#62574d;margin-top:5px}
.prep-item:has(input:checked) strong{color:var(--brick,#a13228)}
.prep-notes-label{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;margin-bottom:10px}
.prep-notes-label span{font-size:12px;font-weight:400;color:#65584c}
.prep-notes{display:block;box-sizing:border-box;width:100%;min-height:97px;border:1px solid #cbb99f;border-radius:3px;background:#fff9ef;resize:vertical;padding:12px 13px;color:var(--ink,#25211e);font:inherit;font-size:16px;line-height:1.5}
.prep-notes::placeholder{font-size:13px;color:#766859;opacity:1}
.prep-ready-row{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:98px;padding:13px 0}
.prep-progress{max-width:260px;font-size:12px;line-height:1.55;color:#62574d;margin:0}
.prep-stamp{display:block;flex:none;border:3px double #a13228;border-radius:3px;padding:6px 14px;color:#a13228;font-size:16px;line-height:1.1;font-weight:700;letter-spacing:.035em;text-transform:uppercase;text-align:center;opacity:0;visibility:hidden;transform:rotate(-11deg) scale(1.12);transition:opacity .24s,transform .38s cubic-bezier(.18,.8,.3,1),visibility .24s}
.prep-sheet[data-prep-complete="true"] .prep-stamp{opacity:.9;visibility:visible;transform:rotate(-7deg) scale(1)}
.prep-transfer{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;min-height:54px;padding:15px 18px;border:1px solid var(--brick,#a13228);border-radius:7px;background:var(--brick,#a13228);color:#fff8eb;font:inherit;font-size:14px;font-weight:700;text-align:left;cursor:pointer;transition:background .2s,transform .2s}
.prep-transfer span{font-size:23px;line-height:1}
.prep-transfer:active{transform:translateY(1px)}
.prep-faq-title{font-size:clamp(25px,2.7vw,34px);line-height:1.15;letter-spacing:-.035em;margin:0 0 29px}
.prep-faq{border-top:1px solid #cdbba2}
.prep-faq:last-of-type{border-bottom:1px solid #cdbba2}
.prep-faq summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:69px;padding:17px 0;list-style:none;cursor:pointer;font-size:15px;font-weight:700;line-height:1.5}
.prep-faq summary::-webkit-details-marker{display:none}
.prep-faq summary span{font-size:23px;line-height:1;color:var(--brick,#a13228);font-weight:400;transition:transform .2s}
.prep-faq[open] summary span{transform:rotate(45deg)}
.prep-faq p{font-size:14px;line-height:1.75;color:#62574d;margin:0;padding:0 20px 21px 0}
.prep-footnote{font-size:13px;line-height:1.65;color:#74614f;margin:35px 0 0;padding-top:18px;border-top:3px double #cfbda3}
.prep-section :is(input,textarea,button,summary):focus-visible{outline:3px solid #ab7328;outline-offset:5px}
@media(hover:hover){.prep-transfer:hover{background:#81251e;transform:translateY(-2px)}.prep-faq summary:hover,.prep-item:hover strong{color:var(--brick,#a13228)}}
@media(max-width:900px){.prep-section{max-width:720px;margin:72px auto;padding:0 22px}.prep-sheet{grid-template-columns:1fr}.prep-page{padding:35px 32px}.prep-page-questions{border-left:0;border-top:1px dashed #b99f7f;background:linear-gradient(#9c795318,transparent 18px,#fff3)}.prep-title{font-size:40px}.prep-faq-title{font-size:30px}.prep-faq summary{min-height:62px}}
@media(max-width:480px){.prep-section{margin:55px auto;padding:0 15px}.prep-page{padding:28px 22px}.prep-title{font-size:34px}.prep-item{gap:11px}.prep-item strong{font-size:15px}.prep-faq-title{font-size:28px}.prep-ready-row{gap:10px}.prep-stamp{font-size:13px;padding:6px 10px}.prep-transfer{font-size:13px;padding:14px}.prep-faq summary{font-size:14px}.prep-notes-label{font-size:13px}}
@media(prefers-reduced-motion:reduce){.prep-section *,.prep-section *::before,.prep-section *::after{transition:none!important;animation:none!important}.prep-transfer:hover,.prep-transfer:active{transform:none}.prep-stamp,.prep-sheet[data-prep-complete="true"] .prep-stamp{transform:rotate(-7deg)}}
html.motion-off .prep-section *,html.motion-off .prep-section *::before,html.motion-off .prep-section *::after{transition:none!important;animation:none!important}
html.motion-off .prep-transfer:hover,html.motion-off .prep-transfer:active{transform:none}
html.motion-off .prep-stamp,html.motion-off .prep-sheet[data-prep-complete="true"] .prep-stamp{transform:rotate(-7deg)}
/* The same notebook accompanies the local visit draft, without replacing notes. */
.planner-preparation{margin:22px 0 0;padding:15px 17px;border:1px solid #cdb899;background:#f2e6d3;box-shadow:3px 3px 0 #e4d0b5;color:#6e4d37;overflow-wrap:anywhere}
.planner-preparation-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px}.planner-preparation-heading button{padding:7px 0;min-height:36px;background:transparent;color:var(--brick);font-size:11px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.planner-preparation p{font-size:12px;line-height:1.55;margin:7px 0 0;white-space:pre-wrap}.planner-preparation p+p{padding-top:9px;border-top:1px dashed #bea27f}
.prep-page-questions{display:flex;flex-direction:column}.prep-page-questions .prep-footnote{margin-top:auto;padding-top:30px;border:0;font-family:Georgia,serif;font-size:19px;font-style:italic;max-width:24ch;color:#957051;transform:rotate(-3deg)}
.prep-sheet::after{content:'';position:absolute;left:calc(52.8% - 14px);top:-9px;width:28px;height:49px;border:2px solid #a8896a;border-radius:16px;box-shadow:inset 2px 0 0 #fff7e9,2px 1px 2px #5f45202b;transform:rotate(-6deg);pointer-events:none}
@media(max-width:900px){.prep-sheet::after{left:auto;right:27px;top:-10px}.prep-page-questions .prep-footnote{margin-top:25px}.planner-preparation-heading button{min-height:44px}.planner-preparation-heading{gap:8px}}
