:root{--bg:#faf7f3;--paper:#fff;--ink:#382e2a;--muted:#8e7b72;--border:#ebddd4;--pill:#f2ece8;--pink:#e29ba9;--pink-dark:#bd7182;--pink-pale:#fff0f2;--gold:#daba70;--gold-light:#efe0b0;--font-ui:'DM Sans',Arial,sans-serif;--font-display:'Playfair Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font-ui);font-size:14px}button,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #956b8a;outline-offset:3px}a{color:inherit} .hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-shell{width:min(100%,1120px);min-height:100vh;margin:auto;background:var(--bg);display:flex;flex-direction:column}.topbar{padding:27px clamp(20px,5.5vw,64px) 5px;display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{text-decoration:none;letter-spacing:.08em;font-size:14px;font-weight:700}.brand span{color:var(--pink);margin:0 7px}.top-link,.text-button{border:0;background:none;color:#85766e;text-decoration:none;font-size:12px;font-weight:600}.top-link:hover,.text-button:hover{text-decoration:underline}
.app{flex:1;padding:20px clamp(18px,5.5vw,65px) 50px}.welcome{text-align:center;padding-top:38px}.eyebrow{display:inline-flex;align-items:center;gap:7px;border-radius:30px;padding:10px 16px;background:var(--pill);color:var(--muted);font-size:11px}.eyebrow span{font-size:22px;color:var(--gold);line-height:12px}.welcome h1{font:500 clamp(31px,4.4vw,43px)/1.28 var(--font-display);letter-spacing:-.015em;margin:24px 0 20px}.intro{max-width:560px;margin:0 auto 42px;line-height:1.7;color:var(--muted);font-size:14px}
.pathway-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;max-width:740px;margin:0 auto}.pathway-card{background:var(--paper);border:1px solid var(--border);border-radius:15px;padding:24px 20px 20px;text-align:left;box-shadow:0 2px 1px #ad88730a;display:flex;flex-direction:column;min-height:270px}.icon-circle{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:var(--gold);font-size:25px;line-height:1;color:var(--ink)}.pathway-card:first-child .icon-circle{color:#fff;background:#dec483}.pathway-card h2{font:500 16px/1.48 var(--font-display);margin:17px 0 12px;min-height:43px}.pathway-card p{color:var(--muted);font-size:12px;line-height:1.55;margin:0 0 21px;flex:1}.btn{border:0;border-radius:99px;padding:12px 22px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:12px;font-weight:600;min-height:40px;transition:background .16s,transform .16s,border-color .16s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--pink);color:#fff}.btn-primary:hover{background:var(--pink-dark)}.btn-outline{border:1px solid var(--border);background:transparent;color:var(--ink)}.btn-outline:hover{background:var(--pill)}.btn-text{background:transparent;color:var(--muted)}.btn-text:hover{text-decoration:underline}.pathway-card .btn{width:100%}
.quiz-panel{max-width:700px;margin:44px auto 0;background:var(--paper);border:1px solid var(--border);border-radius:17px;padding:clamp(22px,4vw,34px) clamp(22px,4vw,36px) 34px;box-shadow:0 9px 14px #65493212}.panel-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;margin-bottom:30px}.question-group{margin-bottom:28px}.question-group h3{font:500 19px/1.5 var(--font-display);margin:0 0 15px}.options{display:flex;flex-wrap:wrap;gap:9px}.option{border:1px solid var(--border);background:var(--pill);border-radius:35px;color:var(--muted);padding:10px 16px;font-size:12px;line-height:1.2;min-height:37px}.option:hover{border-color:#deb0b9}.option[aria-pressed="true"]{background:var(--pink-pale);border-color:var(--pink-dark);color:#754050;box-shadow:inset 0 0 0 1px var(--pink-dark);font-weight:700}.form-error{color:#a73a47;border-radius:8px;background:#fff0f0;padding:10px 14px;margin-bottom:13px;font-size:12px}.btn-wide{width:100%}
.results{text-align:center;margin:26px auto 0;max-width:1000px}.results-badge{display:inline-block;background:var(--gold);padding:8px 16px;border-radius:25px;font-size:12px}.results h2{font:500 29px/1.35 var(--font-display);margin:15px 0 9px}.results-lede{max-width:650px;color:var(--muted);line-height:1.7;margin:0 auto 27px}.result-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;text-align:left}.result-card{border:1px solid var(--border);background:white;padding:16px;border-radius:15px;display:flex;flex-direction:column;min-width:0}.result-image-wrap{position:relative;background:#f4eeeb;border-radius:12px;aspect-ratio:1/1;overflow:hidden;display:grid;place-items:center}.result-image{width:100%;height:100%;object-fit:contain}.image-fallback{color:#a08b81;font-family:var(--font-display);font-size:19px;text-align:center;padding:20px}.coming-label{position:absolute;z-index:2;right:9px;top:9px;background:#fcf6e5;border-radius:35px;padding:6px 10px;font-size:10px;color:#836837;font-weight:700}.product-type{color:var(--muted);font-size:11px;margin:16px 0 6px;text-transform:capitalize}.result-card h3{font:500 17px/1.45 var(--font-display);margin:0 0 9px}.result-description{color:var(--muted);line-height:1.55;font-size:12px;margin:0 0 12px;flex:1}.reason-box{background:var(--pill);padding:13px 12px;border-radius:10px;color:#8b7770;font-size:12px;line-height:1.5;margin-bottom:15px}.reason-box strong{display:block;color:#564540;font-size:11px;margin-bottom:4px}.result-price{color:#d38496;margin:0 0 14px;font-weight:600}.result-card .btn{align-self:flex-start;padding-left:19px;padding-right:19px;background:#f9d2da;color:#503438}.result-card .btn:hover{background:#e9a5b4}.result-actions{padding-top:28px;text-align:left}.save-panel{border:1px solid var(--border);border-radius:15px;background:white;padding:21px}.save-panel h3{font:500 18px var(--font-display);margin:0 0 6px}.save-panel p{margin:0 0 17px;color:var(--muted);font-size:12px}.save-buttons{display:flex;gap:12px;flex-wrap:wrap}.save-panel .feedback{font-size:12px;margin:9px 0 0;color:#436d58;min-height:16px}.more-help{text-align:center;padding:26px 0}.more-help p{color:var(--muted);margin:0 0 12px}.more-help-actions,.support-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.support-panel{background:white;max-width:630px;border-radius:17px;border:1px solid var(--border);padding:36px 28px;text-align:center;margin:65px auto}.support-icon{background:var(--pink);color:white;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto 19px;font-size:26px}.support-panel h2{font:500 24px var(--font-display)}.support-panel p{color:var(--muted);line-height:1.65}.footer{margin:auto 0 0;padding:19px clamp(20px,5.5vw,65px);background:#fff;display:flex;gap:12px;justify-content:space-between;color:var(--muted);font-size:11px}.footer a{text-decoration:none;border-bottom:1px solid var(--border)}.modal{border:1px solid var(--border);border-radius:16px;box-shadow:0 15px 45px #0003;max-width:min(90vw,450px);padding:0}.modal::backdrop{background:#2f282c6b}.modal-inner{padding:25px}.modal h2{font:500 23px var(--font-display);margin:0 0 13px}.modal p{color:var(--muted);line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}
@media(max-width:700px){.topbar{padding-top:19px}.welcome{padding-top:25px}.welcome h1{font-size:34px}.pathway-cards{grid-template-columns:1fr;max-width:430px;gap:12px}.pathway-card{min-height:auto;padding:19px}.pathway-card h2{min-height:0;margin:13px 0 7px}.pathway-card p{margin-bottom:14px}.intro{margin-bottom:24px}.result-cards{grid-template-columns:1fr;max-width:420px;margin:auto}.results{margin-top:14px}.result-card{padding:15px}.result-image-wrap{aspect-ratio:1.4/1}.quiz-panel{margin-top:21px}.footer{flex-direction:column}.save-panel{text-align:center}.save-buttons{justify-content:center}}
@media(min-width:701px) and (max-width:850px){.result-cards{gap:10px}.result-card{padding:12px}.pathway-cards{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
