@import "https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap";
:root{--ink:#080808;--ink-80:#2e2e2e;--ink-60:#5a5a5a;--ink-40:#8a8a8a;--ink-20:#c8c8c8;--ink-10:#e8e8e8;--ink-05:#f4f4f4;--paper:#fff;--accent:#0b7473;--accent-dark:#095e5d;--accent-light:#7ebec5;--accent-pale:#e8f5f5;--black:var(--ink);--near-black:var(--ink);--gray-950:#0e0e0e;--gray-900:var(--ink);--gray-800:var(--ink-80);--gray-700:var(--ink-60);--gray-600:var(--ink-60);--gray-500:var(--ink-40);--gray-400:var(--ink-20);--gray-300:var(--ink-20);--gray-200:var(--ink-10);--gray-150:var(--ink-05);--gray-100:var(--ink-05);--gray-55:#fafafa;--gray-50:#fafafa;--white:var(--paper);--color-bg:var(--paper);--color-bg-alt:#fafafa;--color-bg-card:var(--paper);--color-text:var(--ink);--color-text-sub:var(--ink-60);--color-text-muted:var(--ink-40);--color-border:var(--ink-10);--color-border-strong:var(--ink-20);--color-navy:var(--ink);--color-navy-dark:var(--ink);--color-navy-light:var(--ink-60);--color-teal:var(--accent);--color-teal-dark:var(--accent-dark);--color-teal-light:var(--accent-light);--color-teal-pale:var(--accent-pale);--color-white:var(--paper);--color-off-white:#fafafa;--color-gray-100:var(--ink-05);--color-gray-200:var(--ink-10);--color-gray-300:var(--ink-20);--color-gray-400:var(--ink-40);--color-gray-500:var(--ink-40);--color-gray-600:var(--ink-60);--color-gray-700:var(--ink-60);--color-gray-800:var(--ink-80);--color-gray-900:var(--ink);--color-primary:var(--ink);--color-accent:var(--accent);--color-success:#177040;--color-warning:#8a6200;--color-error:#c41d10;--font-display:"Poppins", system-ui, -apple-system, sans-serif;--font-primary:"Poppins", system-ui, -apple-system, sans-serif;--font-secondary:"Poppins", system-ui, -apple-system, sans-serif;--text-xs:.9rem;--text-sm:.95rem;--text-base:1rem;--text-lg:1.1875rem;--text-xl:1.4375rem;--text-2xl:1.875rem;--text-3xl:2.5rem;--text-4xl:3.5rem;--text-5xl:5rem;--text-6xl:7rem;--text-hero:clamp(3.5rem, 8vw, 6.5rem);--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:500;--font-bold:500;--font-extrabold:500;--font-black:500;--leading-tight:.95;--leading-snug:1.15;--leading-normal:1.5;--leading-relaxed:1.7;--leading-loose:2;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-sm:0;--radius:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--radius-2xl:0;--radius-full:9999px;--shadow-sm:none;--shadow:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;--shadow-2xl:none;--shadow-accent:none;--transition-fast:.15s ease;--transition:.26s ease;--transition-slow:.42s ease;--container-max:1680px;--container-wide:1600px;--header-height:110px;--z-base:1;--z-dropdown:10;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-light);line-height:var(--leading-normal);color:var(--ink);background-color:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;font-weight:300;line-height:1.1}h1{font-size:var(--text-hero);letter-spacing:-.04em;font-weight:300;line-height:1.05}h2{font-size:clamp(2.5rem,5vw,4rem);font-weight:300}h3{letter-spacing:-.02em;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:300}h4{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:400}h5{font-size:var(--text-xl);font-weight:500}h6{font-size:var(--text-lg);font-weight:500}p{font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-light);line-height:var(--leading-relaxed);color:var(--ink-60)}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}strong{font-weight:var(--font-medium)}em{font-style:normal}.container{width:100%;max-width:var(--container-max);padding:0 var(--space-12);margin:0 auto}.container--wide{max-width:var(--container-wide)}.container--narrow{max-width:760px}.section{padding:var(--space-32) 0}.section--sm{padding:var(--space-20) 0}.section--lg{padding:calc(var(--space-32) * 1.5) 0}.section--dark{background-color:var(--ink);color:var(--paper)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--paper)}.section--dark p{color:#ffffff8c}.section--gray{background-color:#f8f8f8}.section--teal{background-color:var(--accent-pale)}.section-header{margin-bottom:var(--space-16);max-width:680px}.section-header p{margin-top:var(--space-5);font-size:var(--text-lg);color:var(--ink-40);max-width:540px;line-height:var(--leading-relaxed)}.section-label{font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-5);display:inline-block}.section-label:before{content:"— ";color:var(--accent-light);letter-spacing:0}.section--dark .section-label{color:#fff6}.section--dark .section-label:before{color:#fff3}.btn{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-8);font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;border:1px solid #0000;border-radius:0;line-height:1;text-decoration:none;display:inline-flex}.btn--primary{background-color:var(--ink);color:var(--paper);border-color:var(--ink)}.btn--primary:hover{background-color:var(--ink-80);border-color:var(--ink-80);color:var(--paper)}.btn--accent{color:var(--paper);background:linear-gradient(105deg,#118c8bf2 0%,#0b7473e6 100%);border-color:#0000;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff26,0 6px 16px -4px #0b747340}.btn--accent:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff26 0%,#fff0 60%);position:absolute;inset:0}.btn--accent:hover{color:var(--paper);background:linear-gradient(105deg,#14a09ef2 0%,#0d8280e6 100%);border-color:#0000;box-shadow:inset 0 1px #ffffff40,0 8px 20px -4px #0b747359}.btn--secondary{color:var(--accent);border-color:var(--accent);background-color:#0000}.btn--secondary:hover{background-color:var(--accent);color:var(--paper)}.btn--outline{color:var(--accent);border-color:var(--accent);background-color:#0000}.btn--outline:hover{background-color:var(--accent);color:var(--paper)}.btn--outline-white{color:var(--paper);background-color:#0000;border-color:#ffffff59}.btn--outline-white:hover{background-color:var(--paper);color:var(--ink);border-color:var(--paper)}.btn--ghost{color:var(--ink-60);letter-spacing:.03em;font-size:var(--text-sm);text-transform:none;font-weight:var(--font-normal);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--ink-20);text-decoration-color:var(--ink-20);background-color:#0000;border-color:#0000;padding-left:0;padding-right:0}.btn--ghost:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink-60);text-decoration-color:var(--ink-60)}.btn--lg{padding:var(--space-5) var(--space-10);font-size:var(--text-xs)}.btn--sm{padding:var(--space-2) var(--space-5);font-size:.625rem}.card{background:var(--paper);border:1px solid var(--ink-10);transition:border-color var(--transition);overflow:hidden}.card:hover{border-color:var(--ink-20)}.card__body{padding:var(--space-8)}.card__header{padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--ink-10)}.grid{gap:var(--space-6);display:grid}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid--4,.grid--3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}.bento-grid{background:var(--ink-10);border:1px solid var(--ink-10);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.bento-grid--2{grid-template-columns:repeat(2,1fr)}.bento-item{background:var(--paper);padding:var(--space-12) var(--space-8);color:inherit;transition:background-color var(--transition);flex-direction:column;min-height:320px;text-decoration:none;display:flex;position:relative;overflow:hidden}.bento-item:hover{background:var(--ink-05);color:inherit}.bento-num{font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--ink-20);margin-bottom:var(--space-16);letter-spacing:.1em}.bento-title{margin-bottom:var(--space-4);transition:color var(--transition-fast)}.bento-desc{font-family:var(--font-primary);font-size:var(--text-sm);color:var(--ink-40);line-height:var(--leading-relaxed);max-width:90%;margin-bottom:var(--space-8);font-weight:300}.bento-link{font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);align-items:center;gap:var(--space-2);transition:gap var(--transition);margin-top:auto;display:flex}.bento-item:hover .bento-link{gap:var(--space-4)}.bento-span-2{grid-column:span 2}@media (max-width:1024px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-span-2{grid-column:span 2}}@media (max-width:768px){.bento-grid,.bento-grid--2{grid-template-columns:1fr}.bento-span-2{grid-column:span 1!important}}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-4) 0;font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-light);color:var(--ink);border:none;border-bottom:1px solid var(--ink-10);transition:border-color var(--transition-fast);appearance:none;background-color:#0000;border-radius:0}.form-input:focus,.form-select:focus,.form-textarea:focus{border-bottom-color:var(--accent);outline:none}.form-input::placeholder,.form-textarea::placeholder{color:var(--ink-20);font-weight:var(--font-light)}.form-textarea{resize:none;min-height:96px;padding-top:var(--space-4)}.form-range{appearance:none;background:var(--ink-10);cursor:pointer;border-radius:0;outline:none;width:100%;height:1px}.form-range::-webkit-slider-thumb{appearance:none;background:var(--ink);cursor:pointer;border-radius:0;width:14px;height:14px}.form-checkbox{align-items:flex-start;gap:var(--space-3);cursor:pointer;display:flex}.form-checkbox input[type=checkbox]{width:15px;min-width:15px;height:15px;accent-color:var(--ink);cursor:pointer;border-radius:0;margin-top:3px}.form-checkbox-label{font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--font-light);color:var(--ink-40);line-height:var(--leading-relaxed)}.badge{padding:2px var(--space-3);font-family:var(--font-primary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:0;align-items:center;display:inline-flex}.badge--teal,.badge--accent{color:var(--accent);border-color:var(--accent);background-color:#0000}.badge--dark,.badge--navy{background-color:var(--ink);color:var(--paper);border-color:var(--ink)}.badge--light{color:var(--ink-40);border-color:var(--ink-20);background-color:#0000}.disclaimer{padding:var(--space-4) var(--space-6);border:1px solid var(--ink-10);border-left:2px solid var(--ink-40);font-family:var(--font-primary);font-size:var(--text-sm);color:var(--ink-60);line-height:var(--leading-relaxed);font-weight:var(--font-light);background-color:#0000}.disclaimer strong{color:var(--ink)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-navy{color:var(--ink)}.text-teal{color:var(--accent)}.text-white{color:var(--paper)}.text-muted{color:var(--ink-40)}.text-accent{color:var(--accent)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium,.font-semibold,.font-bold{font-weight:var(--font-medium)}.mt-auto{margin-top:auto}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.w-full{width:100%}.max-w-prose{max-width:65ch}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:.7s forwards fadeIn}.animate-fade-in-delay{animation:.7s .3s both fadeIn}.animate-slide-up{animation:.5s forwards slideUp}.spinner{border:1px solid var(--ink-10);border-top-color:var(--ink);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.breadcrumb{align-items:center;gap:var(--space-2);font-family:var(--font-primary);font-size:var(--text-xs);color:var(--ink-40);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;display:flex}.breadcrumb a{color:var(--ink-40)}.breadcrumb a:hover{color:var(--ink)}.breadcrumb-separator{color:var(--ink-20)}.skip-nav{z-index:var(--z-toast);padding:var(--space-3) var(--space-6);background:var(--ink);color:var(--paper);font-family:var(--font-primary);font-weight:var(--font-medium);position:absolute;top:-999px;left:0}.skip-nav:focus{top:0}:focus-visible{outline:1.5px solid var(--ink);outline-offset:3px}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ink-10)}::-webkit-scrollbar-thumb:hover{background:var(--ink-20)}@media (max-width:768px){.section{padding:var(--space-20) 0}.section--lg{padding:var(--space-24) 0}.container{padding:0 var(--space-5)}h1{font-size:clamp(3rem,14vw,5rem)}h2{font-size:clamp(2.25rem,9vw,3.5rem)}h3{font-size:clamp(1.5rem,6vw,2.25rem)}}@media print{header,footer,.btn{display:none!important}body{font-size:12pt}}
