:root{--font-heading: "Archivo", system-ui, sans-serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 16px;--sp-4: 24px;--sp-5: 32px;--sp-6: 48px;--sp-7: 64px;--sp-8: 96px;--radius: 10px;--radius-lg: 16px;--maxw: 1200px}:root,[data-theme=arc]{--color-primary: #FF6A00;--color-primary-600: #E25E00;--color-secondary: #FFC43D;--color-bg: #0E1116;--color-bg-2: #11151C;--color-surface: #1A1F27;--color-surface-2: #222833;--color-text: #F2F4F7;--color-text-muted: #9AA4B2;--color-border: rgba(255, 255, 255, .09);--color-border-strong: rgba(255, 255, 255, .16);--color-success: #3FB950;--color-danger: #FF5C5C;--on-accent: #1a1208;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--shadow-glow: 0 0 0 1px rgba(255, 106, 0, .5), 0 12px 32px rgba(255, 106, 0, .18);--hero-scrim: linear-gradient(90deg, rgba(14,17,22,.96) 0%, rgba(14,17,22,.78) 45%, rgba(14,17,22,.45) 100%), linear-gradient(0deg, rgba(14,17,22,.95) 0%, transparent 40%);--card-fade: linear-gradient(180deg, transparent 40%, rgba(14,17,22,.85) 100%);--cta-grad: linear-gradient(120deg, #1c1206 0%, #11151C 60%);--cta-border: rgba(255, 106, 0, .3);--nav-bg: rgba(14, 17, 22, .85);--overlay: rgba(5, 7, 10, .7);--badge-bg: rgba(255, 106, 0, .12);--badge-border: rgba(255, 106, 0, .3);--badge-text: #FFC43D;--accent-soft: rgba(255, 106, 0, .1);--blueprint-line: rgba(255, 255, 255, .025)}[data-theme=workshop]{--color-primary: #C2410C;--color-primary-600: #9A3412;--color-secondary: #CA8A04;--color-bg: #F5F1EA;--color-bg-2: #EDE7DC;--color-surface: #FFFFFF;--color-surface-2: #F2ECE1;--color-text: #2A2723;--color-text-muted: #6B6258;--color-border: rgba(42, 39, 35, .12);--color-border-strong: rgba(42, 39, 35, .2);--color-success: #2E7D32;--color-danger: #C0392B;--on-accent: #FFFFFF;--shadow: 0 10px 30px rgba(60, 50, 40, .12);--shadow-glow: 0 0 0 1px rgba(194, 65, 12, .4), 0 12px 28px rgba(194, 65, 12, .12);--hero-scrim: linear-gradient(90deg, rgba(245,241,234,.97) 0%, rgba(245,241,234,.85) 45%, rgba(245,241,234,.4) 100%), linear-gradient(0deg, rgba(245,241,234,.92) 0%, transparent 45%);--card-fade: linear-gradient(180deg, transparent 60%, rgba(0,0,0,.12) 100%);--cta-grad: linear-gradient(120deg, #FBEEE3 0%, #EDE7DC 60%);--cta-border: rgba(194, 65, 12, .25);--nav-bg: rgba(245, 241, 234, .85);--overlay: rgba(40, 35, 30, .45);--badge-bg: rgba(194, 65, 12, .12);--badge-border: rgba(194, 65, 12, .3);--badge-text: #9A3412;--accent-soft: rgba(194, 65, 12, .08);--blueprint-line: rgba(42, 39, 35, .045)}[data-theme=blueprint]{--color-primary: #2C5F8A;--color-primary-600: #224A6D;--color-secondary: #4A87B5;--color-bg: #EAEFF4;--color-bg-2: #DFE7EF;--color-surface: #FFFFFF;--color-surface-2: #EDF2F7;--color-text: #1B2A3A;--color-text-muted: #5A6B7D;--color-border: rgba(27, 42, 58, .12);--color-border-strong: rgba(27, 42, 58, .2);--color-success: #2E7D32;--color-danger: #C0392B;--on-accent: #FFFFFF;--shadow: 0 10px 30px rgba(27, 42, 58, .12);--shadow-glow: 0 0 0 1px rgba(44, 95, 138, .4), 0 12px 28px rgba(44, 95, 138, .14);--hero-scrim: linear-gradient(90deg, rgba(234,239,244,.97) 0%, rgba(234,239,244,.85) 45%, rgba(234,239,244,.4) 100%), linear-gradient(0deg, rgba(234,239,244,.92) 0%, transparent 45%);--card-fade: linear-gradient(180deg, transparent 60%, rgba(27,42,58,.12) 100%);--cta-grad: linear-gradient(120deg, #DCE8F2 0%, #DFE7EF 60%);--cta-border: rgba(44, 95, 138, .25);--nav-bg: rgba(234, 239, 244, .85);--overlay: rgba(20, 35, 50, .45);--badge-bg: rgba(44, 95, 138, .12);--badge-border: rgba(44, 95, 138, .3);--badge-text: #224A6D;--accent-soft: rgba(44, 95, 138, .08);--blueprint-line: rgba(44, 95, 138, .07)}[data-theme=forge]{--color-primary: #C9743D;--color-primary-600: #A65C2C;--color-secondary: #E0A04A;--color-bg: #1B1E22;--color-bg-2: #20242A;--color-surface: #262B32;--color-surface-2: #2F353D;--color-text: #ECE8E2;--color-text-muted: #A39B90;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .14);--color-success: #5BB370;--color-danger: #E5736B;--on-accent: #1c130a;--shadow: 0 10px 30px rgba(0, 0, 0, .4);--shadow-glow: 0 0 0 1px rgba(201, 116, 61, .45), 0 12px 30px rgba(201, 116, 61, .15);--hero-scrim: linear-gradient(90deg, rgba(27,30,34,.96) 0%, rgba(27,30,34,.78) 45%, rgba(27,30,34,.45) 100%), linear-gradient(0deg, rgba(27,30,34,.95) 0%, transparent 40%);--card-fade: linear-gradient(180deg, transparent 40%, rgba(27,30,34,.85) 100%);--cta-grad: linear-gradient(120deg, #2a1d12 0%, #20242A 60%);--cta-border: rgba(201, 116, 61, .3);--nav-bg: rgba(27, 30, 34, .85);--overlay: rgba(10, 8, 6, .65);--badge-bg: rgba(201, 116, 61, .14);--badge-border: rgba(201, 116, 61, .3);--badge-text: #E0A04A;--accent-soft: rgba(201, 116, 61, .12);--blueprint-line: rgba(255, 255, 255, .025)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{width:100%;min-height:100%;font-family:var(--font-body);font-weight:400;font-size:16px;line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease}h1,h2,h3,h4,h5{font-family:var(--font-heading);font-weight:800;line-height:1.05;letter-spacing:-.01em;color:var(--color-text)}h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:900;text-transform:uppercase}h2{font-size:clamp(2rem,4vw,3rem);text-transform:uppercase}h3{font-size:clamp(1.3rem,2.4vw,1.7rem)}h4{font-size:1.1rem}p{color:var(--color-text-muted)}a{color:inherit;text-decoration:none}.mono{font-family:var(--font-mono);letter-spacing:.02em}.eyebrow{font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--color-primary);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:28px;height:2px;background:var(--color-primary);display:inline-block}.text-muted{color:var(--color-text-muted)}.accent{color:var(--color-primary)}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--sp-4)}.section{padding:var(--sp-8) 0}.section-sm{padding:var(--sp-6) 0}.app-shell{display:flex;flex-direction:column;min-height:100vh}main{flex:1 0 auto}.lead-narrow{max-width:60ch}.stack>*+*{margin-top:var(--sp-3)}.grid{display:grid;gap:var(--sp-4)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-heading);font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;padding:14px 26px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:transform .15s ease,background .2s ease,box-shadow .2s ease,color .2s ease;text-align:center}.btn:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}.btn-primary{background:var(--color-primary);color:var(--on-accent)}.btn-primary:hover{background:var(--color-secondary);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-outline{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.btn-ghost{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-ghost:hover{background:var(--color-surface-2);border-color:var(--color-primary)}.btn-lg{padding:17px 34px;font-size:1.05rem}.btn-block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card-pad{padding:var(--sp-4)}.card-hover:hover{transform:translateY(-4px);border-color:#ff6a0080;box-shadow:var(--shadow-glow)}.badge{display:inline-block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);border:1px solid var(--badge-border)}.program-card{display:flex;flex-direction:column;color:var(--color-text)}.program-card-img{position:relative;aspect-ratio:16 / 10;overflow:hidden}.program-card-img img{transition:transform .4s ease;filter:saturate(1.05) contrast(1.05)}.program-card:hover .program-card-img img{transform:scale(1.06)}.program-card-img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--card-fade)}.program-card-badge{position:absolute;top:12px;left:12px;z-index:2}.program-card-tagline{margin-top:8px;font-size:.95rem}.program-card-meta{display:flex;gap:10px;align-items:center;margin-top:var(--sp-3);font-size:.8rem;color:var(--color-text-muted)}.program-card-link{display:inline-block;margin-top:var(--sp-3);font-family:var(--font-heading);font-weight:700;text-transform:uppercase;font-size:.85rem;letter-spacing:.04em;color:var(--color-primary)}.surface-band{background:var(--color-bg-2);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.diagonal-top{clip-path:polygon(0 3vw,100% 0,100% 100%,0 100%)}.blueprint{background-image:linear-gradient(var(--blueprint-line) 1px,transparent 1px),linear-gradient(90deg,var(--blueprint-line) 1px,transparent 1px);background-size:48px 48px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:1rem;color:var(--color-text);background:var(--color-bg-2);border:1px solid var(--color-border-strong);border-radius:var(--radius);padding:12px 14px;width:100%;transition:border-color .18s ease,box-shadow .18s ease}.field input::placeholder,.field textarea::placeholder{color:#5d6675}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ff6a002e}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--color-danger)}.field .error-text{color:var(--color-danger);font-size:.82rem;font-family:var(--font-mono)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}@media(max-width:560px){.field-row{grid-template-columns:1fr}}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%239AA4B2' d='M1 1l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.hero{position:relative;min-height:86vh;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-size:cover;background-position:center}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--hero-scrim)}.hero-inner{position:relative;z-index:2;padding:var(--sp-8) 0}.hero h1{max-width:16ch}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5)}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4)}@media(max-width:760px){.stat-strip{grid-template-columns:repeat(2,1fr)}}.stat .num{font-family:var(--font-heading);font-weight:900;font-size:clamp(2.2rem,4vw,3.2rem);color:var(--color-primary);line-height:1}.stat .label{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-top:8px}.nav{position:sticky;top:0;z-index:50;background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:70px}.brand{display:flex;align-items:center;gap:12px;font-family:var(--font-heading);font-weight:900;text-transform:uppercase;letter-spacing:.02em;font-size:1.15rem}.brand-mark{width:38px;height:38px;border-radius:8px;background:var(--color-primary);color:var(--on-accent);display:grid;place-items:center;font-family:var(--font-heading);font-weight:900;font-size:1.1rem}.brand small{display:block;font-family:var(--font-mono);font-weight:400;font-size:.6rem;letter-spacing:.18em;color:var(--color-text-muted);text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:var(--sp-4)}.nav-links a{font-weight:500;font-size:.95rem;color:var(--color-text);transition:color .15s ease}.nav-links a:hover,.nav-links a.active{color:var(--color-primary)}.nav-cta{display:flex;align-items:center;gap:var(--sp-3)}.nav-toggle{display:none;background:none;border:1px solid var(--color-border-strong);border-radius:8px;color:var(--color-text);width:44px;height:40px;cursor:pointer;font-size:1.2rem}.btn-mobile-only{display:none}@media(max-width:980px){.nav-links,.nav-cta .btn-desktop{display:none}.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3);position:absolute;top:70px;left:0;right:0;background:var(--color-bg-2);border-bottom:1px solid var(--color-border);padding:var(--sp-4)}.nav-links.open .btn-mobile-only{display:inline-flex}}.theme-wrap{position:relative}.theme-btn{width:42px;height:42px;border-radius:9px;background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;transition:border-color .15s ease,transform .15s ease,color .15s ease}.theme-btn:hover{border-color:var(--color-primary);color:var(--color-primary);transform:rotate(30deg)}.theme-btn:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}.theme-pop{position:absolute;top:52px;right:0;z-index:70;width:264px;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--sp-3)}.theme-pop h4{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);padding:4px 8px 10px}.theme-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:10px;cursor:pointer;color:var(--color-text);transition:background .15s ease,border-color .15s ease}.theme-option:hover{background:var(--color-surface-2)}.theme-option.active{border-color:var(--color-primary);background:var(--accent-soft)}.theme-option:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}.theme-swatch{display:inline-flex;flex-shrink:0;border-radius:6px;overflow:hidden;border:1px solid var(--color-border)}.theme-swatch span{width:16px;height:30px;display:block}.theme-option .t-name{font-family:var(--font-heading);font-weight:700;font-size:.95rem;line-height:1.1}.theme-option .t-desc{font-size:.78rem;color:var(--color-text-muted)}.theme-option .t-check{margin-left:auto;color:var(--color-primary);font-weight:900;opacity:0}.theme-option.active .t-check{opacity:1}@media(max-width:980px){.theme-pop{right:0}}.footer{background:var(--color-bg-2);border-top:1px solid var(--color-border);padding:var(--sp-7) 0 var(--sp-5);margin-top:var(--sp-8)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--sp-5)}@media(max-width:820px){.footer-grid{grid-template-columns:1fr 1fr}}.footer h5{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--sp-3);font-weight:500}.footer a{display:block;color:var(--color-text);padding:4px 0;font-size:.95rem}.footer a:hover{color:var(--color-primary)}.footer-bottom{border-top:1px solid var(--color-border);margin-top:var(--sp-5);padding-top:var(--sp-4);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-3);color:var(--color-text-muted);font-size:.85rem}.detail-hero{position:relative;min-height:42vh;display:flex;align-items:flex-end;overflow:hidden}.detail-meta{display:flex;flex-wrap:wrap;gap:var(--sp-4);margin:var(--sp-4) 0}.detail-meta .item .k{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.detail-meta .item .v{font-family:var(--font-heading);font-weight:700;font-size:1.15rem}.detail-grid{display:grid;grid-template-columns:1.6fr 1fr;align-items:start;gap:var(--sp-6)}@media(max-width:860px){.detail-grid{grid-template-columns:1fr}.detail-grid .calc-result{position:static}}.check-list{list-style:none;margin-top:var(--sp-3);display:grid;gap:10px}.check-list li{position:relative;padding-left:30px;color:var(--color-text)}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--color-primary);font-weight:900;font-family:var(--font-heading)}.campus-list{list-style:none;margin-top:8px;display:grid;gap:6px}.campus-list li{font-size:.92rem;color:var(--color-text-muted);padding-left:18px;position:relative}.campus-list li:before{content:"▸";position:absolute;left:0;color:var(--color-primary)}.quiz-progress-head{display:flex;justify-content:space-between;margin-bottom:10px;font-size:.8rem;color:var(--color-text-muted)}.progress-bar{height:6px;background:var(--color-surface-2);border-radius:999px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));transition:width .4s cubic-bezier(.22,1,.36,1)}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-3)}@media(max-width:560px){.option-grid{grid-template-columns:1fr}}.option{text-align:left;cursor:pointer;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);padding:var(--sp-4);color:var(--color-text);font-family:var(--font-body);font-size:1rem;transition:all .15s ease;display:flex;align-items:center;gap:14px}.option:hover{border-color:var(--color-primary);transform:translateY(-2px)}.option.selected{border-color:var(--color-primary);background:var(--accent-soft);box-shadow:var(--shadow-glow)}.option .opt-icon{font-size:1.6rem}.option:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}.calc-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:start;gap:var(--sp-5)}@media(max-width:760px){.calc-grid{grid-template-columns:1fr}.calc-result{position:static!important}}.calc-result{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-5);position:sticky;top:90px}.calc-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px dashed var(--color-border)}.calc-line:last-of-type{border-bottom:none}.calc-line .amt{font-family:var(--font-mono);font-weight:500}.calc-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:2px solid var(--color-primary)}.calc-total .amt{font-family:var(--font-heading);font-weight:900;font-size:2rem;color:var(--color-primary)}.chat-launcher{position:fixed;bottom:24px;right:24px;z-index:60;display:inline-flex;align-items:center;gap:10px;background:var(--color-primary);color:var(--on-accent);border:none;border-radius:999px;padding:14px 22px;font-family:var(--font-heading);font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:var(--shadow);transition:transform .15s ease,background .2s ease}.chat-launcher:hover{transform:translateY(-2px);background:var(--color-secondary)}.chat-launcher:focus-visible{outline:3px solid var(--color-secondary);outline-offset:3px}.chat-panel{position:fixed;bottom:90px;right:24px;z-index:60;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 130px));background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}.chat-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--color-bg-2);border-bottom:1px solid var(--color-border)}.chat-head .title{font-family:var(--font-heading);font-weight:800;text-transform:uppercase;font-size:.95rem}.chat-body{flex:1;overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:12px}.chat-msg{padding:10px 14px;border-radius:14px;max-width:85%;font-size:.92rem;line-height:1.45}.chat-msg.bot{background:var(--color-surface-2);align-self:flex-start;border-bottom-left-radius:4px}.chat-msg.user{background:var(--color-primary);color:var(--on-accent);align-self:flex-end;border-bottom-right-radius:4px}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--color-border);background:var(--color-bg-2)}.chat-input input{flex:1;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:8px;padding:10px 12px;color:var(--color-text)}.chat-input input:focus{outline:none;border-color:var(--color-primary)}.cta-banner{position:relative;overflow:hidden;background:var(--cta-grad);border:1px solid var(--cta-border);border-radius:var(--radius-lg);padding:var(--sp-6);text-align:center}.cta-banner h2{margin-bottom:var(--sp-3)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:flex-end;margin-bottom:var(--sp-5)}.filter-bar .field{flex:1;min-width:180px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--font-mono);font-size:.78rem;padding:6px 14px;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text);cursor:pointer;transition:all .15s ease}.chip:hover{border-color:var(--color-primary)}.chip.active{background:var(--color-primary);color:#1a1208;border-color:var(--color-primary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--sp-4)}.modal{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:min(560px,100%);max-height:90vh;overflow-y:auto;box-shadow:var(--shadow)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--sp-4) var(--sp-4) 0}.modal-close{background:none;border:none;color:var(--color-text-muted);font-size:1.8rem;line-height:1;cursor:pointer;padding:0 4px}.modal-close:hover{color:var(--color-primary)}.form-page{display:grid;grid-template-columns:1.3fr .9fr;gap:var(--sp-6);align-items:start}@media(max-width:860px){.form-page{grid-template-columns:1fr}}.form-aside h3{margin-bottom:var(--sp-3)}.step-list{list-style:none;counter-reset:step;display:grid;gap:var(--sp-3);margin-top:var(--sp-3)}.step-list li{position:relative;padding-left:44px;color:var(--color-text-muted)}.step-list li strong{color:var(--color-text)}.step-list li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:-2px;width:30px;height:30px;border-radius:8px;background:var(--color-primary);color:var(--on-accent);font-family:var(--font-heading);font-weight:900;display:grid;place-items:center}.thankyou-mark{width:84px;height:84px;margin:0 auto var(--sp-4);border-radius:50%;background:#3fb9501f;border:2px solid var(--color-success);color:var(--color-success);display:grid;place-items:center;font-size:2.6rem;font-weight:900}.img-cover{width:100%;height:100%;object-fit:cover;display:block}.consent{font-size:.78rem;color:var(--color-text-muted);line-height:1.5}.consent a{color:var(--color-secondary);text-decoration:underline}.notice{background:var(--accent-soft);border:1px solid var(--cta-border);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);font-size:.9rem}.center{text-align:center}.section-head{max-width:60ch;margin-bottom:var(--sp-5)}.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--color-primary);color:#1a1208;padding:10px 16px;border-radius:0 0 8px;font-weight:700}.skip-link:focus{left:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-in{animation:fadeInUp .6s ease-out both}.d1{animation-delay:.08s}.d2{animation-delay:.18s}.d3{animation-delay:.28s}.d4{animation-delay:.38s}.fade-in{animation:fadeIn .4s ease-out both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
