@font-face{font-family:WeddingSans;src:url(../fonts/NotoSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}:root{font-family:WeddingSans,system-ui,sans-serif;color:#3b3036;background:#faf6f1;font-synthesis:none;line-height:1.6;--wine: #703947;--pink: #f1dfdc;--muted: #72676b;--border: #ddcfc8}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,.button{min-height:48px;border:1px solid transparent;border-radius:12px;padding:13px 20px;cursor:pointer;background:var(--wine);color:#fff;font-weight:600;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover{filter:brightness(.94)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #945d23;outline-offset:4px}button.secondary{background:transparent;border-color:var(--border);color:var(--wine)}button.subtle{background:transparent;color:var(--wine);text-decoration:underline;padding:10px 4px}button.danger{background:#963f3f}.skip{position:absolute;top:-100px;left:16px;z-index:50;background:#fff;padding:12px}.skip:focus{top:8px}.shell{max-width:1120px;margin:auto;padding:0 28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:90px;border-bottom:1px solid var(--border);font-size:13px}.brand{color:var(--wine);font-family:Georgia,serif;font-size:23px;letter-spacing:.02em}.brand span{font-size:18px;margin:0 5px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:700;color:var(--wine);margin:0 0 18px}.hero{padding:65px 0 72px;display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:center}h1,h2,h3{line-height:1.17;font-weight:400}h1,h2{font-family:Georgia,Times New Roman,serif;color:#532d38}h1{font-size:clamp(34px,5vw,57px);margin:0 0 22px;letter-spacing:-.035em}h2{font-size:clamp(27px,4vw,38px);margin:0 0 20px}h3{font-size:20px;margin:0 0 10px}.lede{font-size:18px;color:#605056}.copy p{margin:16px 0}.copy{max-width:620px}.copy strong{font-weight:700}.hero-visual{background:#eededa;border-radius:160px 160px 18px 18px;min-height:485px;padding:50px 34px 30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative}.hero-visual:before{content:"✧";font-size:38px;position:absolute;top:35px;right:40px;color:#8b594e}.monogram{font-family:Georgia,serif;font-size:72px;line-height:1.1;color:var(--wine);margin:15px 0 18px}.monogram i{display:block;font-size:35px;color:#b67d70;font-weight:400;margin:6px}.visual-caption{font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:26px}.journey{width:100%;text-align:left;border-top:1px solid #cfb4ad;padding-top:20px}.journey div{display:flex;gap:13px;padding:6px 0;font-size:13px}.journey span{font-family:Georgia,serif;color:#8b594e}.small{font-size:13px;color:var(--muted)}.fine{font-size:12px;color:var(--muted)}.footer{padding:25px 0;border-top:1px solid var(--border);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:16px}.stack{display:grid;gap:12px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.game{max-width:740px;margin:32px auto 70px}.steps{display:flex;gap:7px;margin-bottom:20px}.step{height:4px;border-radius:5px;background:#e6d9d3;flex:1}.step.done{background:var(--wine)}.game-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:15px 0;font-size:13px;color:var(--muted)}.badge{background:var(--pink);color:var(--wine);border-radius:24px;padding:7px 15px;font-size:13px}.card{background:#fffdf9;border:1px solid var(--border);border-radius:20px;padding:34px;box-shadow:0 8px 30px #5b303605}.question-title{font-size:clamp(24px,3vw,32px);line-height:1.35;letter-spacing:-.02em;overflow-wrap:anywhere}.options{display:grid;gap:11px;margin-top:25px}.option{justify-content:flex-start;text-align:left;background:#fffdf9;color:#493e42;border:1px solid var(--border);font-size:14px;font-weight:400;line-height:1.5;padding:15px 17px}.option[aria-pressed=true]{background:#f3e4df;border:2px solid var(--wine);padding:14px 16px;color:#532d38}.option[aria-pressed=true]:after{content:"✓";margin-left:auto;font-weight:700}.nav-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:27px}.handoff{text-align:center;padding:50px 30px}.handoff .big{font-size:60px;margin-bottom:20px}.handoff p{max-width:420px;margin:15px auto}.handoff button{margin-top:25px}.feedback-card{text-align:center}.metric{font-family:Georgia,serif;color:var(--wine);font-size:66px;line-height:1.2;margin:12px 0}.metric small{font:13px WeddingSans,system-ui;display:block;text-transform:uppercase;letter-spacing:.12em;margin:10px 0 28px}.feedback-piece{border-top:1px solid var(--border);padding:24px 0 8px}.feedback-piece:first-of-type{border:0}.note{background:#f3e9e0;padding:20px;border-radius:12px;font-size:13px;text-align:left;margin-top:25px}.note p{margin:0}.note p+p{margin-top:10px}.full{width:100%}.review-item{padding:18px 0;border-bottom:1px solid var(--border)}.review-item p{margin:7px 0;font-size:14px}.review-item button{margin-top:7px}.review-item strong{font-size:14px}textarea,input[type=text]{display:block;width:100%;border:1px solid var(--border);border-radius:10px;padding:13px;background:#fff;color:#3b3036;min-height:48px}textarea{min-height:140px;resize:vertical}label{display:block;font-size:14px;margin:12px 0}input[type=checkbox]{accent-color:var(--wine);width:20px;height:20px;vertical-align:middle;margin-right:9px}label.check{min-height:48px;display:flex;gap:8px;align-items:center}label.check input{flex-shrink:0}details{margin:24px 0;border-top:1px solid var(--border);padding-top:16px}summary{cursor:pointer;min-height:44px;align-content:center;color:var(--wine);font-size:14px}input[type=file]{max-width:100%;font-size:13px;margin:10px 0}.notice{border-left:3px solid #b57a47;padding:12px 18px;background:#f5eade;border-radius:4px;font-size:14px}.status{padding:10px 0;font-size:13px;color:#435d4d;min-height:24px}.status.error{color:#9a2b2b}.save-alert{color:#9a2b2b;background:#fff1dd;padding:12px;font-size:14px}dialog{border:1px solid var(--border);border-radius:20px;max-width:480px;width:calc(100% - 32px);padding:30px;color:#3b3036;background:#fffdf9}dialog::backdrop{background:#37232bbb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog h2{font-size:28px}.laura{max-width:1000px;margin:40px auto 70px}.laura .card{margin-bottom:25px}.section-head{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:20px}.report-options{display:flex;gap:25px;flex-wrap:wrap}.report-row{border-top:1px solid var(--border);padding:20px 0;break-inside:avoid}.report-answers{display:grid;grid-template-columns:1fr 1fr;gap:24px;font-size:14px;margin-top:15px}.report-answers p{white-space:pre-wrap;overflow-wrap:anywhere}.report-answers strong{display:block;color:var(--wine);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.report-row h3{font-size:17px;line-height:1.4}.private{background:#f5e8e4;border:1px dashed #b97979;border-radius:12px;padding:18px;margin:15px 0}.pill{font-size:11px;border:1px solid var(--border);border-radius:20px;padding:4px 10px;display:inline-block}.preview{background:#fff}.preview .cover{padding:35px 0;border-bottom:1px solid var(--border)}.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;max-height:330px;overflow:auto;border:1px solid var(--border);padding:12px;border-radius:10px}.filter-grid label{font-size:12px}.filter-grid input{flex-shrink:0}#pdf-status{min-height:24px}.hidden{display:none!important}.nosave{color:#943d32}.lock-hint{font-size:12px;color:var(--muted);max-width:400px;margin-top:20px}body:has(dialog[open]){overflow:hidden}@media(max-width:740px){.shell{padding:0 20px}.topbar{min-height:75px}.topbar .small{max-width:125px;text-align:right;font-size:11px}.hero{grid-template-columns:minmax(0,1fr);gap:35px;padding:38px 0 42px}.hero>*{min-width:0}.hero-visual{min-height:0;border-radius:110px 110px 18px 18px;padding:38px 28px 25px}.monogram{font-size:clamp(32px,9vw,48px);display:flex;gap:12px;align-items:center}.monogram i{font-size:26px}.visual-caption{margin-bottom:15px}.journey{display:none}.hero-visual:before{top:15px;font-size:25px}.hero .actions{display:grid}.hero .actions button{width:100%}.game{margin-top:23px}.card{padding:24px 20px;border-radius:16px}.handoff{padding:40px 22px}.feedback-card .actions{display:grid}.feedback-card .actions button{width:100%}.metric{font-size:55px}.question-title{font-size:25px}.footer{display:block}.footer span{display:block;margin-bottom:8px}.report-answers{gap:15px}.filter-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.laura{margin-top:28px}.nav-actions button{font-size:13px;padding:12px 15px}.game-meta{font-size:12px}.badge{padding:7px 12px}.topbar button{font-size:12px;padding:10px 13px}.laura .actions button{width:100%}}@media(prefers-reduced-motion:no-preference){.card{animation:arrive .25s ease-out}@keyframes arrive{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}}
