@layer theme{:root,:host{--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Liberation Sans", Arial, sans-serif;--color-white:#fff;--text-base:17px;--color-navy:#16304f;--color-teal:#01b0c4;--color-amber:#f2b544;--color-grey:#9aa7b4;--color-bg:#f4f7fa;--color-text:#1b2430;--color-line:#d9e1ea;--color-muted:#5a6b7d;--color-body:#3b4756;--color-teal-ink:#05616d;--color-teal-tint:#e5f7f9;--color-on-navy:#d6e0ea;--color-field:#7c8b9a;--color-error:#a4262c;--radius-btn:8px;--radius-card:12px;--radius-panel:14px;--shadow-card:0 10px 30px #16304f14;--text-h1:46px;--text-h1-sm:34px;--text-h2:30px}}@layer base{*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);margin:0;padding:0;line-height:1.5}a{color:var(--color-navy)}h1{font-size:var(--text-h1);color:var(--color-navy);letter-spacing:-.5px;margin:0 0 16px;line-height:1.1}h2{font-size:var(--text-h2);color:var(--color-navy);letter-spacing:-.3px;margin:0 0 8px;line-height:1.2}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-amber);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}}@layer components{.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:20;background:var(--color-navy);color:var(--color-white);border-radius:var(--radius-btn);padding:10px 16px;position:absolute;top:-60px;left:8px}.skip:focus{top:8px}.site-header{background:var(--color-white);border-bottom:1px solid var(--color-line);z-index:5;position:sticky;top:0}.nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding-top:8px;padding-bottom:8px;display:flex}.logo{align-items:center;text-decoration:none;display:flex}.logo img,.footer-logo img{max-width:100%;height:auto;display:block}.nav ul{flex-wrap:wrap;gap:22px;margin:0;padding:0;list-style:none;display:flex}.nav ul a{border-bottom:2px solid #0000;padding:4px 0;font-weight:500;text-decoration:none;display:inline-block}.nav ul a:hover,.nav ul a[aria-current=page]{border-bottom-color:var(--color-teal)}.nav ul a[aria-current=page]{font-weight:700}.btn{border-radius:var(--radius-btn);border:2px solid var(--color-navy);font:inherit;cursor:pointer;padding:11px 20px;font-weight:600;text-decoration:none;display:inline-block}.btn.primary{background:var(--color-navy);color:var(--color-white)}.btn.ghost{color:var(--color-navy);background:0 0}.btn.light{background:var(--color-white);color:var(--color-navy);border-color:var(--color-white)}.btn.primary:hover{background:#0f2238;border-color:#0f2238}.btn.ghost:hover,.btn.light:hover{background:var(--color-teal-tint)}.btn[disabled]{opacity:.6;cursor:progress}.more{margin-top:24px;font-weight:600;display:inline-block}.more:after{content:" →"}.hero{background:linear-gradient(180deg, var(--color-white) 0%, var(--color-bg) 100%);padding:72px 0 56px}.hero .grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:40px;display:grid}.tag{background:var(--color-teal-tint);color:var(--color-teal-ink);border:1px solid var(--color-teal);border-radius:14px;margin-bottom:16px;padding:4px 12px;font-size:14px;font-weight:600;display:inline-block}.lead{color:var(--color-body);max-width:560px;margin:0 0 28px;font-size:20px}.cta{flex-wrap:wrap;gap:12px;display:flex}.note{color:var(--color-muted);font-size:14px}.hero-card{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-panel);box-shadow:var(--shadow-card);padding:20px}.hero-card h2{color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;font-size:15px}.hero-card ol{margin:0;padding:0;list-style:none}.hero-card li{border-top:1px solid var(--color-line);align-items:center;gap:12px;padding:10px 0;font-size:16px;display:flex}.hero-card li:first-child{border-top:0}.ck{background:var(--color-teal);border-radius:50%;flex:none;width:22px;height:22px;position:relative}.ck:after{content:"";border:solid var(--color-navy);border-width:0 2.5px 2.5px 0;width:6px;height:10px;position:absolute;top:4px;left:7px;transform:rotate(45deg)}.shot{min-width:0;margin:0}.shot-frame{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.shot-bar{background:var(--color-bg);border-bottom:1px solid var(--color-line);gap:6px;padding:9px 12px;display:flex}.shot-bar span{background:var(--color-grey);opacity:.6;border-radius:50%;width:9px;height:9px}.shot-frame a{cursor:zoom-in;display:block}.shot-frame a:focus-visible{outline-offset:-3px}.shot img{width:100%;height:auto;display:block}.shot figcaption{color:var(--color-body);margin-top:12px;font-size:15px}.shot figcaption b{color:var(--color-navy);margin-bottom:2px;font-size:17px;display:block}.hero-shot{margin-top:48px}.shots{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px 24px;display:grid}.links{flex-wrap:wrap;gap:0 28px;margin:0;display:flex}.area.wide{grid-column:1/-1}.area-shots{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px 16px;margin-top:16px;display:grid}.area-shots.multi{grid-template-columns:repeat(2,minmax(0,1fr))}.area-shots .shot-frame{box-shadow:none}.area-shots figcaption{margin-top:8px;font-size:14px}.page-hero{background:linear-gradient(180deg, var(--color-white) 0%, var(--color-bg) 100%);padding:48px 0 40px}.page-hero .lead{max-width:760px;margin-bottom:0}.crumbs{color:var(--color-muted);margin:0 0 16px;font-size:14px}.crumbs ol{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--color-grey);margin-right:8px}section.band{padding:56px 0}section.white{background:var(--color-white);border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.sub{color:var(--color-muted);max-width:720px;margin:0 0 28px}.cards{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.card{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:20px}.card .n{background:var(--color-navy);width:30px;height:30px;color:var(--color-white);border-radius:8px;justify-content:center;align-items:center;margin-bottom:10px;font-weight:700;display:inline-flex}.card h3{margin:0 0 6px;font-size:18px}.card p{color:var(--color-body);margin:0;font-size:15px}.group{margin:0 0 36px;scroll-margin-top:84px}.group:last-child{margin-bottom:0}.group>h2,.group>h3{color:var(--color-navy);border-left:4px solid var(--color-teal);letter-spacing:0;margin:0 0 4px;padding-left:12px;font-size:22px}.group .gsub{color:var(--color-muted);margin:0 0 16px;padding-left:16px;font-size:15px}.areas{grid-template-columns:1fr 1fr;gap:14px;display:grid}.areas.three{grid-template-columns:repeat(3,1fr)}.area{background:var(--color-bg);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:20px;scroll-margin-top:84px}.area h3,.area h4{color:var(--color-navy);margin:0 0 6px;font-size:18px}.area p{color:var(--color-body);margin:0 0 10px;font-size:15px}.area ul{color:var(--color-body);margin:0;padding-left:20px;font-size:15px}.area li{margin:3px 0}.area li::marker{color:var(--color-teal-ink)}a.area{color:inherit;text-decoration:none;display:block}a.area p{margin:0}a.area:hover{border-color:var(--color-teal)}.with-toc{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:40px;display:grid}.toc{max-height:calc(100vh - 104px);font-size:14.5px;position:sticky;top:88px;overflow:auto}.toc h2{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin:0 0 10px;font-size:13px}.toc ul{margin:0;padding:0;list-style:none}.toc>ul>li{margin-bottom:12px}.toc>ul>li>a{font-weight:700}.toc ul ul{border-left:2px solid var(--color-line);margin-top:4px;padding-left:12px}.toc a{padding:3px 0;text-decoration:none;display:inline-block}.toc a:hover{text-decoration:underline}.demo{background:var(--color-navy);color:var(--color-white);border-radius:var(--radius-panel);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:36px;padding:28px;display:flex}.demo h2,.demo h3{color:var(--color-white);letter-spacing:0;margin:0 0 6px;font-size:24px}.demo p{color:var(--color-on-navy);max-width:620px;margin:0;font-size:15px}.demo .btn:focus-visible{outline-color:var(--color-amber)}.two{grid-template-columns:1fr 1fr;gap:18px;display:grid}.who{background:var(--color-navy);color:var(--color-white);border-radius:var(--radius-panel);padding:26px}.who h3{margin:0 0 10px;font-size:22px}.who ul{margin:0;padding-left:20px;font-size:15px;line-height:1.6}.who.alt{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-line)}.steps{grid-template-columns:repeat(4,1fr);gap:14px;margin:0;padding:0;list-style:none;display:grid}.step{background:var(--color-bg);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:18px}.step b{color:var(--color-teal-ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:13px;display:block}.step h3{margin:0 0 6px;font-size:18px}.step p{color:var(--color-body);margin:0;font-size:15px}.part{margin:0 0 44px}.part:last-of-type{margin-bottom:0}.part>h2{border-left:4px solid var(--color-teal);margin-bottom:16px;padding-left:12px;font-size:24px}.situation{flex-direction:column;margin:0;display:flex}.situation dt{color:var(--color-teal-ink);letter-spacing:.08em;text-transform:uppercase;margin:14px 0 4px;font-size:13px;font-weight:700}.situation dt:first-child{margin-top:0}.situation dd{color:var(--color-body);margin:0;font-size:15px}.situation dd.s{color:var(--color-navy);font-size:18px;font-weight:700;line-height:1.3}.situation dd.r{color:var(--color-text);font-weight:600}.why{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.why .card{padding:28px}.why .card h2{margin-bottom:8px;font-size:24px}.why .card>p{max-width:760px;font-size:17px}.example{background:var(--color-bg);border:1px solid var(--color-line);border-left:4px solid var(--color-teal);border-radius:var(--radius-btn);max-width:760px;margin:16px 0 0;padding:14px 16px}.example b{color:var(--color-teal-ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:13px;display:block}.example p{color:var(--color-body);margin:0;font-size:15px}.diagram{margin:24px 0 0}.diagram svg{width:100%;max-width:760px;height:auto;display:block}.diagram .narrow{max-width:380px;display:none}.diagram figcaption{color:var(--color-muted);max-width:760px;margin-top:12px;font-size:14px}.table-wrap{max-width:760px;margin-top:24px;overflow-x:auto}.table{border-collapse:collapse;background:var(--color-white);width:100%;font-size:15px}.table th,.table td{text-align:left;border:1px solid var(--color-line);vertical-align:top;padding:10px 14px}.table thead th{background:var(--color-navy);color:var(--color-white);border-color:var(--color-navy)}.table tbody th{background:var(--color-bg);color:var(--color-navy)}.contact-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.form{background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-panel);grid-template-columns:1fr 1fr;gap:14px;padding:28px;display:grid}.form .field{flex-direction:column;gap:6px;min-width:0;font-size:14px;display:flex}.form label{font-weight:600}.form input[type=text],.form input[type=email],.form input[type=tel],.form textarea{font:inherit;border:1px solid var(--color-field);border-radius:var(--radius-btn);background:var(--color-white);color:var(--color-text);width:100%;padding:10px 12px}.form [aria-invalid=true]{border-color:var(--color-error);border-width:2px}.form .full{grid-column:1/3}.form .consent{flex-direction:row;align-items:flex-start;gap:10px;display:flex}.form .consent label{font-weight:400}.form .consent input{flex:none;width:18px;height:18px;margin-top:4px}.form .err{color:var(--color-error);margin:0;font-size:14px;font-weight:600}.form .actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-done{background:var(--color-white);border:1px solid var(--color-line);border-left:4px solid var(--color-teal);border-radius:var(--radius-panel);color:var(--color-navy);margin:0;padding:28px;font-size:20px;font-weight:600}.aside-card h2{margin-bottom:12px;font-size:22px}.aside-card dl{margin:0}.aside-card dt{color:var(--color-muted);margin-top:10px;font-size:14px}.aside-card dd{overflow-wrap:anywhere;margin:0;font-weight:600}.legal{max-width:760px}.legal h2{margin:28px 0 8px;font-size:22px}.legal ul{margin:0;padding-left:20px}.legal li::marker{color:var(--color-teal-ink)}.legal p{margin:0 0 8px}.todo{border:1px dashed var(--color-amber);color:var(--color-text);background:#fdf3dc;border-radius:6px;padding:2px 8px;display:inline-block}.site-footer{border-top:1px solid var(--color-line);color:var(--color-muted);background:var(--color-white);padding:28px 0;font-size:14px}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.site-footer p{margin:0}.footer-logo{flex:0 0 100%}.site-footer strong{color:var(--color-navy)}.cookie-bar{z-index:30;background:var(--color-white);border:1px solid var(--color-line);border-radius:var(--radius-panel);max-width:760px;box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:16px;margin:0 auto;padding:16px 20px;font-size:15px;display:flex;position:fixed;bottom:16px;left:16px;right:16px}.cookie-bar p{flex:280px;margin:0}.cookie-bar .cta .btn{padding:8px 14px}.notfound{text-align:center;padding:96px 0}.notfound p{font-size:20px}@media (max-width:900px){.hero .grid,.two,.form,.areas,.with-toc,.contact-grid{grid-template-columns:1fr}.cards,.steps,.areas.three{grid-template-columns:1fr 1fr}.form .full,.area.wide{grid-column:auto}h1{font-size:var(--text-h1-sm)}.nav .btn{display:none}.nav ul{order:3;gap:4px 12px;width:100%;font-size:14.5px}.toc{max-height:none;position:static}.toc ul ul{flex-wrap:wrap;gap:0 14px;display:flex}.group,.area{scroll-margin-top:124px}}@media (max-width:640px){.shots,.area-shots.multi{grid-template-columns:minmax(0,1fr)}.hero-shot{margin-top:32px}.logo img{width:122px}.diagram .wide{display:none}.diagram .narrow{display:block}}@media (max-width:480px){.cards,.steps,.areas.three{grid-template-columns:1fr}.hero{padding:40px 0 32px}.page-hero{padding:32px 0 28px}section.band{padding:40px 0}.area{padding:18px}.lead{font-size:18px}.form,.why .card{padding:20px}.table{font-size:14px}.table th,.table td{overflow-wrap:anywhere;padding:8px}}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.grid{display:grid}.table{display:table}}
