/* NMTR survey v0.3.0, 2026-11-02. Adds mobile topic illustrations/navigation.
   Purpose: responsive accessible guest and management UI. See MVP docs. */
:root{--paper:#f5f1e7;--ink:#233d32;--muted:#617066;--line:#dedfd2;--gold:#a8753d;--white:#fffefa;--light:#e9ede1;--red:#9c3928;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;line-height:1.08}h1{font-size:clamp(2.7rem,5.7vw,5.2rem);margin-bottom:26px}h2{font-size:2.15rem;margin-bottom:20px}h3{font-size:1.05rem}p{margin-bottom:20px}.preview{text-align:center;font-size:11px;letter-spacing:.08em;padding:8px 16px;color:#564329;background:#e7ddc5}.site-header{max-width:1280px;margin:auto;padding:32px 48px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:13px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.13em;text-decoration:none;line-height:1.4}.brand-mark{font-family:Georgia,serif;border:1px solid var(--ink);border-radius:50%;height:43px;width:43px;display:grid;place-items:center;font-size:25px;font-weight:400}.brand-sub{display:block;font-size:10px;letter-spacing:.25em}.header-note{font-size:12px;color:var(--muted)}.layout{max-width:1184px;margin:36px auto 70px;display:grid;grid-template-columns:1fr 1fr;gap:76px;padding:0 20px;align-items:center}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--gold);margin-bottom:22px}.lead{font-size:18px;max-width:370px;color:var(--muted)}.intro-panel{padding:20px 0}.card{border:1px solid var(--line);border-radius:10px;background:var(--white);padding:40px;box-shadow:0 12px 44px #263e3205}.welcome p{font-size:14px;line-height:1.75}.welcome h2{font-size:2.6rem}.pill{display:inline-block;background:var(--light);border-radius:99px;font-size:10px;font-weight:700;letter-spacing:.08em;padding:7px 12px;margin-bottom:26px}.privacy-note{border-left:2px solid #a1ad8a;background:#f3f4ec;padding:16px 18px;margin:25px 0;font-size:13px;line-height:1.6}.privacy-note p{margin-bottom:10px}.privacy-note p:last-child{margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:49px;padding:12px 22px;border:1px solid transparent;border-radius:5px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.5}.primary{background:var(--ink);color:white}.primary:hover{background:#355847}.outline{border-color:var(--line);background:transparent}.outline:hover{background:var(--light)}.quiet{background:transparent;color:var(--ink)}.quiet:hover{background:var(--light)}.full{width:100%;margin-top:10px}.small{font-size:12px}.muted{color:var(--muted)}.welcome>.small{margin:20px 0 0}.landscape{height:180px;max-width:470px;background:#e7e7d2;position:relative;overflow:hidden;border-radius:140px 140px 8px 8px;margin-top:40px}.sun{position:absolute;background:#dac29a;width:50px;height:50px;border-radius:50%;left:65%;top:25px}.ridge{position:absolute;width:130%;height:130px;left:-10%;border-radius:50% 70% 0 0;transform:rotate(-8deg)}.ridge-back{top:70px;background:#b6c1a5}.ridge-mid{top:110px;left:-20%;transform:rotate(12deg);background:#728d75}.ridge-front{top:135px;background:#355847}.landscape-caption{position:absolute;bottom:15px;left:25px;color:#f5f1e7;letter-spacing:.2em;font-size:9px}.aside-copy{font-family:Georgia,serif;font-style:italic;font-size:18px;margin:16px 0 0;color:var(--muted)}.site-footer{max-width:1184px;margin:0 auto;padding:25px 20px 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.trap{position:absolute;left:-9999px}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{display:block;padding:16px}.question-layout{grid-template-columns:.72fr 1.28fr;align-items:start;margin-top:55px}.question-aside{padding:20px 10px}.question-aside h2{font-size:2.7rem}.question-aside>p{max-width:270px;color:var(--muted)}.trail-line{height:70px;width:150px;border-bottom:1px dashed #a4b08f;transform:rotate(-10deg);border-radius:50%;margin-bottom:55px}.question-title{font-size:clamp(1.9rem,3.3vw,2.8rem);line-height:1.16}.question-card{padding:38px}.choices{border:0;margin:25px 0;padding:0;display:grid;gap:10px}.choice{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:5px;min-height:52px;padding:12px 15px;cursor:pointer;font-size:14px}.choice:has(input:checked){border-color:var(--ink);background:var(--light)}input[type=radio],input[type=checkbox]{accent-color:var(--ink);width:18px;height:18px;flex:none}textarea,input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select{width:100%;border:1px solid #c4cabb;border-radius:5px;background:var(--white);padding:12px;min-height:48px;color:var(--ink)}textarea{resize:vertical;margin-top:12px}.actions{display:flex;gap:15px;margin-top:25px}.back-form{margin-top:22px}.text-button{border:0;background:none;padding:8px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-align:left;font-size:13px;min-height:42px}.question-footer{border-top:1px solid var(--line);padding-top:18px;margin:22px 0 0}.contact-fields{border:1px solid var(--line);padding:18px;border-radius:5px}.contact-fields legend{font-family:Georgia,serif;font-size:20px}.contact-fields[hidden]{display:none}label{display:block;margin-bottom:12px;font-size:14px}label input:not([type=checkbox]):not([type=radio]),label select{margin-top:5px}.check{display:flex;gap:12px;align-items:start;margin:20px 0;font-size:12px}.check input{margin-top:3px}.error{background:#fbebe5;border-left:3px solid var(--red);color:var(--red);padding:14px;font-size:14px}.single-layout{display:block;max-width:720px}.thanks-card{text-align:center;padding:50px}.thank-mark{display:inline-grid;place-items:center;height:53px;width:53px;border-radius:50%;background:var(--light);margin-bottom:30px;font-size:23px}.thanks-card h1{font-size:3.5rem}.closing-options{text-align:left;border-top:1px solid var(--line);margin-top:30px;padding-top:30px}.closing-options h2{font-size:2rem}.option-note{font-size:13px;padding:15px 0;border-bottom:1px solid var(--line)}.management-layout{display:block}.report-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.report-heading h1{font-size:3rem}.filters{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.filters label{flex:1;min-width:160px}.filters button{margin-bottom:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0}.stats>div{padding:24px;border:1px solid var(--line);background:var(--white);border-radius:6px}.stats strong{display:block;font-family:Georgia,serif;font-size:2.5rem;font-weight:400}.stats span{font-size:12px;color:var(--muted)}.report-card{margin:25px 0;padding:28px}.report-card h2{font-size:1.8rem}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap;text-align:left}th,td{padding:14px 10px;border-bottom:1px solid var(--line)}th{font-size:11px;letter-spacing:.03em}.answer-block{padding:20px 0;border-top:1px solid var(--line)}.answer-block h3{margin-bottom:5px}.answer-block p{margin-bottom:10px}.guest-text{white-space:pre-wrap;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere}summary{cursor:pointer;min-height:44px;padding:10px 0}
@media(max-width:850px){.site-header{padding:24px}.header-note{display:none}.layout{gap:35px;margin-top:20px}.card{padding:28px}.question-layout{grid-template-columns:1fr;max-width:680px}.question-aside{display:none}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.layout{display:block;padding:0 18px;margin-bottom:35px}.intro-panel{padding:0 4px 25px}.intro-panel h1{font-size:3.5rem;margin-bottom:18px}.lead{font-size:16px}.landscape{height:110px;max-width:none;margin-top:22px;border-radius:65px 65px 5px 5px}.ridge{height:90px}.ridge-back{top:40px}.ridge-mid{top:65px}.ridge-front{top:90px}.sun{width:35px;height:35px;top:15px}.landscape-caption{font-size:8px;bottom:9px}.aside-copy{display:none}.welcome h2{font-size:2.3rem}.card{padding:25px}.site-footer{margin:0 18px;padding-left:0;padding-right:0;gap:20px;font-size:10px}.question-card{padding:26px 22px}.question-title{font-size:2rem}.thanks-card h1{font-size:2.8rem}.report-heading{display:block}.report-heading h1{font-size:2.5rem}.stats{gap:10px}.stats>div{padding:16px}.filters{display:block}.report-card{padding:20px}.pill{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.topic-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-width:0;min-height:180px;padding:20px 14px;margin:0;background:#f7f5ed}.topic-tile:nth-child(2n){background:#eff2e8}.topic-tile input{position:absolute;top:12px;right:10px}.topic-art{display:block;width:72px;height:65px;color:#546c51}.topic-art svg{width:100%;height:100%}.topic-tile strong{font-family:Georgia,serif;font-size:20px;font-weight:400;line-height:1.15}.topic-hint{font-size:11px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}.topic-tile:has(input:checked){background:#e0e8d6;border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.topic-navigation{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}.topic-navigation form{margin:0}.resume-note{padding:18px;background:#edf0e4;border:1px solid #b2bea0;border-radius:6px;margin-top:20px;font-size:13px}.resume-note p{margin:8px 0}.learning-note{border-left:3px solid #afbb9f;margin:24px 0;padding:0 0 0 20px}.learning-note h3{margin-top:18px;margin-bottom:8px}
@media(max-width:380px){.topic-tile{padding:26px 9px 16px;min-height:170px}.topic-tile strong{font-size:18px}.topic-hint{font-size:10px}.topic-art{width:60px;height:58px}.question-card .actions{gap:6px}.question-card .actions .button{padding:12px 14px}}
