:root{--color-bg:#f5ead8;--color-surface:#ebddc5;--color-text:#201e1d;--color-accent:#c67139;--color-accent-2:#7a8a5e;--color-divider:#201e1d29;--color-user-pin:var(--color-text);--color-neutral-100:#f9f4ed;--color-neutral-200:#eee7db;--color-neutral-300:#dcd3c4;--color-neutral-400:#c0b6a5;--color-neutral-500:#a19786;--color-neutral-600:#82796a;--color-neutral-700:#645c50;--color-neutral-800:#474238;--color-neutral-900:#2e2b25;--color-accent-100:#fff2eb;--color-accent-200:#ffe1d0;--color-accent-300:#ffc6a5;--color-accent-400:#f6a06b;--color-accent-500:#d67f48;--color-accent-600:#b2622d;--color-accent-700:#8c491a;--color-accent-800:#643312;--color-accent-900:#402310;--color-accent-2-100:#f0fae1;--color-accent-2-200:#e1eecc;--color-accent-2-300:#ccdbb2;--color-accent-2-400:#aebf92;--color-accent-2-500:#8fa073;--color-accent-2-600:#728157;--color-accent-2-700:#56633f;--color-accent-2-800:#3d472b;--color-accent-2-900:#272e1b;--font-family-display:Caprasimo, system-ui, sans-serif;--font-family-body:Figtree, system-ui, sans-serif;--text-display-size:clamp(38px, 4.9vw, 60px);--text-display-weight:400;--text-display-line-height:1.12;--text-display-letter-spacing:-.015em;--text-h1-size:42px;--text-h1-weight:400;--text-h1-line-height:1.12;--text-h1-letter-spacing:-.015em;--text-h2-size:32px;--text-h2-weight:400;--text-h2-line-height:1.12;--text-h2-letter-spacing:-.015em;--text-h3-size:25px;--text-h3-weight:400;--text-h3-line-height:1.12;--text-h3-letter-spacing:-.015em;--text-h4-size:20px;--text-h4-weight:400;--text-h4-line-height:1.12;--text-h4-letter-spacing:-.015em;--text-h5-size:16px;--text-h5-weight:400;--text-h5-line-height:1.12;--text-h5-letter-spacing:-.015em;--text-h6-size:13px;--text-h6-weight:400;--text-h6-line-height:1.12;--text-h6-letter-spacing:.08em;--text-card-title-size:17px;--text-card-title-weight:400;--text-card-title-line-height:1.2;--text-card-title-letter-spacing:-.015em;--text-lead-size:18px;--text-lead-weight:400;--text-lead-line-height:1.55;--text-lead-letter-spacing:0;--text-body-lg-size:17px;--text-body-lg-weight:400;--text-body-lg-line-height:1.55;--text-body-lg-letter-spacing:0;--text-body-size:15px;--text-body-weight:400;--text-body-line-height:1.55;--text-body-letter-spacing:0;--text-body-sm-size:13.5px;--text-body-sm-weight:400;--text-body-sm-line-height:1.45;--text-body-sm-letter-spacing:0;--text-caption-size:12.5px;--text-caption-weight:400;--text-caption-line-height:1.45;--text-caption-letter-spacing:0;--text-tag-size:11px;--text-tag-weight:400;--text-tag-line-height:1.4;--text-tag-letter-spacing:.02em;--text-kicker-size:10px;--text-kicker-weight:400;--text-kicker-line-height:1.4;--text-kicker-letter-spacing:.1em;--text-button-size:14px;--text-button-weight:400;--text-button-line-height:1.2;--text-button-letter-spacing:0;--text-button-lg-size:16px;--text-button-lg-weight:400;--text-button-lg-line-height:1.2;--text-button-lg-letter-spacing:0;--text-emphasis-weight:600;--radius-sm:8px;--radius-md:16px;--radius-lg:28px;--radius-card:32.2px;--radius-band:44.8px;--radius-pill:999px;--space-1:4.4px;--space-2:8.8px;--space-3:13.2px;--space-4:17.6px;--space-6:26.4px;--space-8:35.2px;--space-10:44px;--space-12:52.8px;--space-16:70.4px;--shadow-sm:0 1px 2px #2e2b2524;--shadow-md:0 3px 10px #2e2b2529;--shadow-lg:0 12px 32px #2e2b2538;--size-page-width:1160px;--size-content-narrow:640px;--grid-min-card:250px;--grid-min-hero:320px;--nav-height:56px;--control-height-sm:36px;--control-height-md:44px;--control-height-lg:46px;--size-brand-mark:28px;--size-brand-dot:9px;--icon-size-sm:17px;--icon-size-md:18px;--icon-size-lg:24px;--icon-stroke-width:2.75;--border-width-hairline:1px;--border-width-focus:2px;--focus-ring-offset:2px;--input-icon-inset:40px;--disabled-opacity:.45;--float-distance:8px;--float-duration:7.5s;--expand-duration:.24s;--expand-easing:cubic-bezier(.2, 0, 0, 1);--size-map-height:440px;--size-map-height-mobile:360px;--map-marker-stroke:2px;font-family:var(--font-family-body);font-size:var(--text-body-size);font-weight:var(--text-body-weight);line-height:var(--text-body-line-height);letter-spacing:var(--text-body-letter-spacing);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);min-height:100svh;margin:0}#root{isolation:isolate;flex-direction:column;width:100%;min-height:100svh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);color:var(--color-text);margin:0}h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);letter-spacing:var(--text-h1-letter-spacing)}h2{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}h3{font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);letter-spacing:var(--text-h3-letter-spacing)}h4{font-size:var(--text-h4-size);font-weight:var(--text-h4-weight);line-height:var(--text-h4-line-height);letter-spacing:var(--text-h4-letter-spacing)}h5{font-size:var(--text-h5-size);font-weight:var(--text-h5-weight);line-height:var(--text-h5-line-height);letter-spacing:var(--text-h5-letter-spacing)}h6{font-size:var(--text-h6-size);font-weight:var(--text-h6-weight);line-height:var(--text-h6-line-height);letter-spacing:var(--text-h6-letter-spacing);text-transform:uppercase}p{margin:0}::selection{background:var(--color-accent-200);color:var(--color-accent-900)}:focus-visible{outline:var(--border-width-focus) solid var(--color-accent);outline-offset:var(--focus-ring-offset)}.ambient{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient:before{content:"";background:radial-gradient(58% 44% at 80% 10%, var(--color-accent-200), transparent 72%), radial-gradient(52% 40% at 4% 34%, var(--color-accent-2-200), transparent 74%);position:absolute;inset:0}.ambient--low:before{opacity:var(--disabled-opacity)}.ambient__canvas{width:100%;height:100%;display:block;position:relative}@media (prefers-reduced-motion:reduce){.ambient__canvas{display:none}}.disclaimer{z-index:2;padding:var(--space-2) var(--space-6) 0;background:color-mix(in srgb, var(--color-bg) 88%, transparent);-webkit-backdrop-filter:blur(var(--space-3));backdrop-filter:blur(var(--space-3));position:sticky;top:0}.disclaimer__inner{align-items:center;gap:var(--space-2);width:100%;max-width:var(--size-page-width);padding:var(--space-2) var(--space-4);background:var(--color-accent-100);border-radius:var(--radius-pill);color:var(--color-accent-800);font-size:var(--text-body-sm-size);font-weight:var(--text-body-sm-weight);line-height:var(--text-body-sm-line-height);letter-spacing:var(--text-body-sm-letter-spacing);margin:0 auto;display:flex}.disclaimer__icon{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-accent-700);flex:none}@media (width<=768px){.disclaimer{padding-inline:var(--space-4)}.disclaimer__inner{border-radius:var(--radius-lg);align-items:flex-start}}.app-main{width:100%;max-width:var(--size-page-width);padding:0 var(--space-6) var(--space-6);flex-direction:column;flex:1;margin:0 auto;display:flex}@media (width<=768px){.app-main{padding-inline:var(--space-4)}}.nav{align-items:center;gap:var(--space-4);min-height:var(--nav-height);padding:var(--space-6) 0 0;flex-wrap:wrap;display:flex}.nav__brand{align-items:center;gap:var(--space-2);color:var(--color-text);font-family:var(--font-family-display);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight);line-height:var(--text-h4-line-height);letter-spacing:var(--text-h4-letter-spacing);margin-right:auto;text-decoration:none;display:flex}.nav__brand:focus-visible{border-radius:var(--radius-pill)}.nav__mark{width:var(--size-brand-mark);height:var(--size-brand-mark);border-radius:var(--radius-pill);background:var(--color-accent);place-items:center;display:grid}.nav__mark:after{content:"";width:var(--size-brand-dot);height:var(--size-brand-dot);border-radius:var(--radius-pill);background:var(--color-bg)}.nav__links{justify-content:center;align-items:center;gap:var(--space-6);flex:1;margin:0;padding:0;list-style:none;display:flex}.nav__link{color:var(--color-text);border-radius:var(--radius-pill);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);text-decoration:none}.nav__link:hover{color:var(--color-accent-700)}.nav{position:relative}.nav__menu{display:contents}.nav__toggle{width:var(--control-height-md);height:var(--control-height-md);border-radius:var(--radius-pill);color:var(--color-text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:none}.nav__toggle:hover{background:var(--color-neutral-200)}.nav__toggle-icon{width:var(--icon-size-lg);height:var(--icon-size-lg)}@media (width<=1024px){.nav__toggle{display:inline-flex}.nav__menu{display:none}.nav__menu--open{z-index:3;gap:var(--space-6);margin-top:var(--space-2);padding:var(--space-6);background:var(--color-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;top:100%;left:0;right:0}.nav__menu--open .nav__links{align-items:flex-start;gap:var(--space-4);flex-direction:column;flex:none}.nav__menu--open .nav__link{font-size:var(--text-body-lg-size);line-height:var(--text-body-lg-line-height)}.nav__menu--open .nav__actions{flex-direction:column;align-items:stretch}}.section,.inquiry{scroll-margin-top:var(--space-16)}.nav__actions{align-items:center;gap:var(--space-2);display:flex}.nav__email{text-overflow:ellipsis;white-space:nowrap;max-width:22ch;color:var(--color-neutral-700);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);overflow:hidden}.nav__error{color:var(--color-accent-800);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);flex-basis:100%}.button{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--control-height-md);padding:var(--space-2) calc(var(--space-3) * 1.2);border:var(--border-width-hairline) solid transparent;border-radius:var(--radius-pill);cursor:pointer;font-family:var(--font-family-display);font-size:var(--text-button-size);font-weight:var(--text-button-weight);line-height:var(--text-button-line-height);letter-spacing:var(--text-button-letter-spacing);text-decoration:none;display:inline-flex}.button--cta{min-height:var(--control-height-lg);padding:var(--space-3) var(--space-6);font-size:var(--text-button-lg-size);line-height:var(--text-button-lg-line-height)}.button--primary{background:var(--color-accent);color:var(--color-bg)}.button--primary:hover:not(:disabled){background:var(--color-accent-600)}.button--primary:active:not(:disabled){background:var(--color-accent-700)}.button--secondary{color:var(--color-text);border-color:var(--color-divider);background:0 0}.button--secondary:hover:not(:disabled){background:var(--color-neutral-200)}.button--secondary:active:not(:disabled){background:var(--color-neutral-300)}.button:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.button__icon{width:var(--icon-size-sm);height:var(--icon-size-sm)}.button__icon--spin{animation:1s linear infinite spin}.input{width:100%;min-height:var(--control-height-sm);padding:var(--space-1) var(--space-3);background:var(--color-surface);color:var(--color-text);caret-color:var(--color-accent);border:var(--border-width-hairline) solid var(--color-divider);border-radius:var(--radius-pill);font-family:var(--font-family-body);font-size:var(--text-body-size);font-weight:var(--text-body-weight);line-height:var(--text-body-line-height);letter-spacing:var(--text-body-letter-spacing)}.input::placeholder{color:var(--color-neutral-600)}.input:hover:not(:disabled){border-color:var(--color-neutral-500)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}.input:disabled{cursor:default}.tag{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:var(--border-width-hairline) solid transparent;border-radius:var(--radius-pill);font-size:var(--text-tag-size);font-weight:var(--text-tag-weight);line-height:var(--text-tag-line-height);letter-spacing:var(--text-tag-letter-spacing);display:inline-flex}.tag--accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag--accent-2{background:var(--color-accent-2-100);color:var(--color-accent-2-800)}.tag--neutral{background:var(--color-neutral-100);color:var(--color-neutral-800)}.tag--outline{border-color:var(--color-divider);color:var(--color-neutral-800)}.tag--accent-solid{background:var(--color-accent);color:var(--color-bg);font-size:var(--text-body-sm-size)}.notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--color-accent-100);border-radius:var(--radius-lg);color:var(--color-accent-800);font-size:var(--text-body-sm-size);font-weight:var(--text-body-sm-weight);line-height:var(--text-body-sm-line-height);letter-spacing:var(--text-body-sm-letter-spacing);display:flex}.notice__icon{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-accent-700);flex:none}.landing{flex-direction:column;flex:1;display:flex}.hero{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-hero), 1fr));gap:var(--space-12);padding:var(--space-16) 0 var(--space-12);align-items:center;display:grid}.hero__copy{animation:.7s both rise}.hero__headline{margin-top:var(--space-4);font-size:var(--text-display-size);font-weight:var(--text-display-weight);line-height:var(--text-display-line-height);letter-spacing:var(--text-display-letter-spacing)}.hero__description{max-width:30ch;margin-top:var(--space-4);color:var(--color-neutral-800);text-wrap:pretty;font-size:var(--text-lead-size);font-weight:var(--text-lead-weight);line-height:var(--text-lead-line-height);letter-spacing:var(--text-lead-letter-spacing)}.hero__actions,.hero__stats{gap:var(--space-2);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.hero__float{animation:float var(--float-duration) ease-in-out infinite}.preview{gap:var(--space-2);padding:var(--space-4);background:var(--color-neutral-100);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.preview__search{align-items:center;display:flex;position:relative}.preview__search-icon{left:var(--space-3);width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--color-accent);pointer-events:none;position:absolute}.preview__input{min-height:var(--control-height-lg);padding-left:var(--input-icon-inset);background:var(--color-bg)}.preview__body{padding:var(--space-2) var(--space-1) 0}.preview__head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.preview__form{color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height)}.preview__label{margin:var(--space-4) 0 var(--space-2);color:var(--color-neutral-600)}.preview__actives{gap:var(--space-2);flex-direction:column;display:flex}.preview__active{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);grid-template-columns:minmax(0,1fr) auto;display:grid}.preview__active-name{font-weight:var(--text-emphasis-weight)}.preview__active-role{margin-top:var(--space-1);color:var(--color-neutral-700);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.preview__effects{gap:var(--space-1);flex-wrap:wrap;display:flex}.preview__warning{margin-top:var(--space-4)}.section{padding-top:var(--space-16)}.section--last{padding-bottom:var(--space-16)}.section--split{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-hero), 1fr));gap:var(--space-12);align-items:center;display:grid}.section__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}.section__title--measured{max-width:22ch}.section__body{max-width:34ch;margin-top:var(--space-4);color:var(--color-neutral-800);text-wrap:pretty;font-size:var(--text-body-lg-size);line-height:var(--text-body-lg-line-height)}.section__grid{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-card), 1fr));gap:var(--space-4);margin-top:var(--space-8);display:grid}.section__grid--wide{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-hero), 1fr))}.card.card--raised{background:var(--color-neutral-100)}.card__kicker{color:var(--color-accent);text-transform:uppercase;font-size:var(--text-kicker-size);font-weight:var(--text-kicker-weight);line-height:var(--text-kicker-line-height);letter-spacing:var(--text-kicker-letter-spacing)}.card__body{color:var(--color-neutral-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);flex:1}.faq{gap:var(--space-4);margin-top:var(--space-8);flex-direction:column;display:flex}.faq__item{background:var(--color-surface);border-radius:var(--radius-card);color:var(--color-text)}.faq__question{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-6);border-radius:var(--radius-card);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:padding-bottom var(--expand-duration) var(--expand-easing);background:0 0;border:0;display:flex}.faq__item--open .faq__question{padding-bottom:var(--space-3)}.faq__question .card__title{font-weight:var(--text-body-weight)}.faq__icon{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-accent);transition:transform var(--expand-duration) var(--expand-easing);flex:none}.faq__item--open .faq__icon{transform:rotate(180deg)}.faq__panel{transition:grid-template-rows var(--expand-duration) var(--expand-easing);grid-template-rows:0fr;display:grid}.faq__item--open .faq__panel{grid-template-rows:1fr}.faq__panel-inner{opacity:0;min-height:0;transition:opacity var(--expand-duration) var(--expand-easing);overflow:hidden}.faq__item--open .faq__panel-inner{opacity:1}.faq__answer{padding:0 var(--space-6) var(--space-6)}@media (prefers-reduced-motion:reduce){.faq__question,.faq__icon,.faq__panel,.faq__panel-inner{transition:none}}.molecule__caption{align-self:flex-start}.table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.table th{padding:var(--space-2);text-align:left;text-transform:uppercase;color:var(--color-neutral-600);border-bottom:var(--border-width-hairline) solid var(--color-divider);font-family:var(--font-family-body);font-size:var(--text-tag-size);font-weight:var(--text-tag-weight);letter-spacing:var(--text-h6-letter-spacing)}.table td{padding:var(--space-2);border-bottom:var(--border-width-hairline) solid var(--color-neutral-300)}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--color-neutral-200)}.table__cell--strong{font-weight:var(--text-emphasis-weight)}.table__cell--muted{color:var(--color-neutral-700);font-size:var(--text-caption-size)}th.table__cell--end,td.table__cell--end{text-align:left}th.table__cell--end{padding-right:calc(var(--space-2) - var(--text-h6-letter-spacing))}.band{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-hero), 1fr));gap:var(--space-10);padding:var(--space-10);background:var(--color-accent-800);border-radius:var(--radius-band);box-shadow:var(--shadow-lg);color:var(--color-bg);align-items:center;display:grid}.band__eyebrow{color:var(--color-accent-300)}.band__title{margin-top:var(--space-3);color:var(--color-bg);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}.band__body{margin-top:var(--space-4);color:var(--color-accent-200);text-wrap:pretty;font-size:var(--text-body-size);line-height:var(--text-body-line-height)}.band__footnote{margin-top:var(--space-4);color:var(--color-accent-300);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.inquiry{background:var(--color-bg)}.inquiry__title{font-size:var(--text-h4-size);line-height:var(--text-h4-line-height)}.inquiry__error{margin-top:var(--space-2);color:var(--color-accent-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.inquiry__notice{margin-top:var(--space-2);color:var(--color-accent-2-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.field{gap:var(--space-1);margin-top:var(--space-2);flex-direction:column;display:flex}.field__label{color:var(--color-neutral-700);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height)}.inquiry__input{min-height:var(--control-height-md);background:var(--color-surface)}.inquiry__textarea{min-height:auto;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);resize:vertical}.button--block{width:100%;margin-top:var(--space-2);min-height:var(--control-height-md);font-size:var(--text-button-lg-size)}.field__hint{color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height)}.auth-page{flex-direction:column;flex:1;display:flex}.auth{width:100%;max-width:var(--size-content-narrow);margin:var(--space-12) auto 0;gap:var(--space-4);flex-direction:column;display:flex}.auth__card{gap:var(--space-3);padding:var(--space-8);box-shadow:var(--shadow-lg)}.auth__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}.auth__standfirst{color:var(--color-neutral-700);text-wrap:pretty;font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.auth__error{margin-top:var(--space-1)}.auth__form{gap:var(--space-3);flex-direction:column;display:flex}.auth__input{min-height:var(--control-height-md);background:var(--color-surface)}.auth__input--code{letter-spacing:var(--text-h6-letter-spacing);text-align:center;font-size:var(--text-body-lg-size)}.auth__notice{color:var(--color-accent-2-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.auth__divider{align-items:center;gap:var(--space-3);margin:var(--space-1) 0;color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);display:flex}.auth__divider:before,.auth__divider:after{content:"";height:var(--border-width-hairline);background:var(--color-divider);flex:1}.auth__footer{text-align:center;color:var(--color-neutral-700);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.auth__link{color:var(--color-accent-700);text-underline-offset:var(--focus-ring-offset);border-radius:var(--radius-pill)}.auth__link:hover{color:var(--color-accent-800)}.auth__link--button{cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.legal-footer{align-items:center;gap:var(--space-4);padding-top:var(--space-6);border-top:var(--border-width-hairline) solid var(--color-divider);flex-wrap:wrap;margin-top:auto;display:flex}.legal-footer__brand{align-items:center;gap:var(--space-2);display:flex}.legal-footer__wordmark{font-family:var(--font-family-display);font-size:var(--text-h5-size);line-height:var(--text-h5-line-height);letter-spacing:var(--text-h5-letter-spacing)}.legal-footer__links{align-items:center;gap:var(--space-4);display:flex}.legal-footer__copyright{text-align:center;color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);flex:1}.legal-footer__link{color:var(--color-accent-700);text-underline-offset:var(--focus-ring-offset);border-radius:var(--radius-pill);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);text-decoration:none}.legal-footer__link:hover,.legal-footer__link[aria-current=page]{color:var(--color-accent-800);text-decoration:underline}.legal-page{flex-direction:column;flex:1;display:flex}.legal{width:100%;margin:var(--space-12) 0 0;gap:var(--space-8);flex-direction:column;display:flex}.legal__head{gap:var(--space-3);flex-direction:column;display:flex}.legal__back{align-self:flex-start}.legal__title{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);letter-spacing:var(--text-h1-letter-spacing)}.legal__updated{color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height)}.legal__standfirst{color:var(--color-neutral-800);text-wrap:pretty;font-size:var(--text-body-lg-size);line-height:var(--text-body-lg-line-height)}.legal__section{gap:var(--space-2);flex-direction:column;display:flex}.legal__heading{font-size:var(--text-h4-size);font-weight:var(--text-h4-weight);line-height:var(--text-h4-line-height);letter-spacing:var(--text-h4-letter-spacing)}.legal__body{color:var(--color-neutral-800);text-align:justify;-webkit-hyphens:auto;hyphens:auto;font-size:var(--text-body-size);line-height:var(--text-body-line-height)}@media (width<=768px){.hero{padding-top:var(--space-10)}.legal{margin-top:var(--space-8)}}.search-page,.pharmacies-page,.hospitals-page{gap:var(--space-8);flex-direction:column;flex:1;display:flex}.search{width:100%;max-width:var(--size-content-narrow);margin:var(--space-12) auto 0;gap:var(--space-3);flex-direction:column;display:flex}.search__label{font-family:var(--font-family-display);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}.search__row{gap:var(--space-2);display:flex}.search__field{flex:1;align-items:center;min-width:0;display:flex;position:relative}.search__field-icon{left:var(--space-3);width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--color-accent);pointer-events:none;position:absolute}.search__input{min-height:var(--control-height-md);padding-left:var(--input-icon-inset);background:var(--color-neutral-100)}.search__submit{flex:none}.search__examples{align-items:center;gap:var(--space-2);padding-left:var(--space-3);flex-wrap:wrap;display:flex}.search__examples-label{color:var(--color-neutral-600);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.chip{min-height:var(--control-height-sm);padding:var(--space-1) var(--space-4);background:var(--color-neutral-100);color:var(--color-neutral-800);border:var(--border-width-hairline) solid var(--color-divider);border-radius:var(--radius-pill);cursor:pointer;font-family:var(--font-family-body);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.chip:hover:not(:disabled){background:var(--color-accent-100);border-color:var(--color-accent-200);color:var(--color-accent-800)}.chip:active:not(:disabled){background:var(--color-accent-200)}.chip:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}@media (width<=768px){.search__row{flex-direction:column}}.results{gap:var(--space-4);flex-direction:column;display:flex}.results__count{color:var(--color-neutral-600);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.results__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit, minmax(var(--grid-min-card), 1fr));margin:0;padding:0;list-style:none;display:grid}.card{gap:var(--space-2);height:100%;padding:var(--space-6);background:var(--color-surface);border-radius:var(--radius-card);color:var(--color-text);flex-direction:column;display:flex}.card:hover{box-shadow:var(--shadow-md)}.card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.card__title{font-family:var(--font-family-display);font-size:var(--text-card-title-size);font-weight:var(--text-card-title-weight);line-height:var(--text-card-title-line-height);letter-spacing:var(--text-card-title-letter-spacing)}.card__badge{white-space:nowrap;flex:none}.card__badge-icon{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-accent-700)}.card__fields{flex-direction:column;margin:0;display:flex}.card__key{margin-bottom:var(--space-1);color:var(--color-accent);font-size:var(--text-kicker-size);font-weight:var(--text-kicker-weight);line-height:var(--text-kicker-line-height);letter-spacing:var(--text-kicker-letter-spacing);text-transform:uppercase}.card__value{margin:0 0 var(--space-3);color:var(--color-neutral-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.card__value:last-child{margin-bottom:0}.state{width:100%;max-width:var(--size-content-narrow);align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);background:var(--color-surface);border-radius:var(--radius-card);text-align:center;flex-direction:column;margin:0 auto;display:flex}.state--error{background:var(--color-accent-100);color:var(--color-accent-800)}.state__icon{width:var(--icon-size-lg);height:var(--icon-size-lg);color:var(--color-neutral-600)}.state--error .state__icon{color:var(--color-accent-700)}.state__icon--spin{animation:1s linear infinite spin}.state__title{font-family:var(--font-family-display);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight);line-height:var(--text-h4-line-height);letter-spacing:var(--text-h4-letter-spacing)}.state__body{max-width:var(--size-content-narrow);color:var(--color-neutral-700);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.state--error .state__body{color:var(--color-accent-800)}.pharmacies{gap:var(--space-4);padding:var(--space-6);background:var(--color-neutral-100);border-radius:var(--radius-card);flex-direction:column;display:flex}.pharmacies__head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.pharmacies__heading{gap:var(--space-2);max-width:var(--size-content-narrow);flex-direction:column;display:flex}.pharmacies__title{font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);letter-spacing:var(--text-h3-letter-spacing)}.pharmacies--standalone{margin-top:var(--space-12)}.pharmacies--standalone .pharmacies__title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);letter-spacing:var(--text-h2-letter-spacing)}.pharmacies__intro{color:var(--color-neutral-700);text-wrap:pretty;font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.pharmacies__actions{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.link-button{border-radius:var(--radius-pill);cursor:pointer;color:var(--color-accent-700);text-underline-offset:var(--focus-ring-offset);font-family:var(--font-family-body);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);background:0 0;border:0;padding:0;text-decoration:underline}.link-button:hover:not(:disabled){color:var(--color-accent-800)}.link-button:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.pharmacies__manual{gap:var(--space-2);max-width:var(--size-content-narrow);flex-direction:column;display:flex}.pharmacies__manual-row{gap:var(--space-2);display:flex}.pharmacies__input{min-height:var(--control-height-md);background:var(--color-surface)}.pharmacies__error{color:var(--color-accent-800);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.pharmacies__choices{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pharmacies__results{gap:var(--space-3);flex-direction:column;display:flex}.pharmacies__toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pharmacies__meta,.pharmacies__source{color:var(--color-neutral-600);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height)}.pharmacies__toggle{gap:var(--space-2);display:none}.pharmacies__toggle .chip{align-items:center;gap:var(--space-1);display:inline-flex}.chip[aria-pressed=true]{background:var(--color-accent-100);border-color:var(--color-accent-200);color:var(--color-accent-800)}.pharmacies__body{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.pharmacies__list{gap:var(--space-3);max-height:var(--size-map-height);overscroll-behavior:contain;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pharmacies__map{height:var(--size-map-height);isolation:isolate;background:var(--color-surface);border-radius:var(--radius-lg);position:relative;overflow:hidden}.pharmacies__map .leaflet-container{background:var(--color-surface);width:100%;height:100%;font-family:var(--font-family-body);font-size:var(--text-caption-size)}.pharmacies__map .leaflet-tooltip{color:var(--color-text);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-family:var(--font-family-body);font-size:var(--text-caption-size)}.pharmacies__map-loading{place-items:center;height:100%;display:grid}.pharmacy-card{padding:var(--space-4)}.pharmacy-card--selected{box-shadow:var(--shadow-md);outline:var(--border-width-focus) solid var(--color-accent);outline-offset:calc(var(--border-width-focus) * -1)}.pharmacy-card__select{align-items:flex-start;gap:var(--space-2);border-radius:var(--radius-sm);color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.pharmacy-card__select:hover .card__title{color:var(--color-accent-700)}.pharmacy-card__pin{width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--color-accent);flex:none}.pharmacy-card__hours{align-items:center;gap:var(--space-1);color:var(--color-neutral-700);font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);display:flex}.pharmacy-card__hours-icon{width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--color-accent-2-600);flex:none}.pharmacy-card__actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.map-marker{fill-opacity:1;stroke:var(--color-bg);stroke-width:var(--map-marker-stroke)}.map-marker--pharmacy{fill:var(--color-accent)}.map-marker--selected{fill:var(--color-accent-700)}.map-marker--hospital{fill:var(--color-accent)}.map-marker--clinic{fill:var(--color-accent-2-600)}.facility-dot{width:var(--space-2);height:var(--space-2);border-radius:var(--radius-pill);flex:none}.facility-dot--hospital{background:var(--color-accent)}.facility-dot--clinic{background:var(--color-accent-2-600)}.facility-card__tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.pharmacies__filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.pharmacies__filters .chip{align-items:center;gap:var(--space-1);display:inline-flex}.user-pin svg{width:100%;height:100%;color:var(--color-bg);fill:var(--color-user-pin);filter:drop-shadow(var(--shadow-sm))}@media (width<=768px){.pharmacies{padding:var(--space-4)}.pharmacies__manual-row{flex-direction:column}.pharmacies__toggle{display:inline-flex}.pharmacies__body{grid-template-columns:minmax(0,1fr)}.pharmacies__list{max-height:none;overflow-y:visible}.pharmacies__map{height:var(--size-map-height-mobile)}.pharmacies__pane--inactive{display:none}}.scroll-top{right:var(--space-6);bottom:var(--space-6);z-index:3;width:var(--control-height-md);height:var(--control-height-md);background:var(--color-accent);color:var(--color-bg);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);cursor:pointer;border:0;place-items:center;padding:0;animation:.2s both rise;display:grid;position:fixed}.scroll-top:hover{background:var(--color-accent-600)}.scroll-top:active{background:var(--color-accent-700)}.scroll-top__icon{width:var(--icon-size-md);height:var(--icon-size-md)}@media (width<=768px){.scroll-top{right:var(--space-4);bottom:var(--space-4)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(calc(var(--float-distance) * -1))}}@keyframes rise{0%{opacity:0;transform:translateY(var(--space-3))}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.button__icon--spin,.state__icon--spin,.hero__float,.hero__copy,.scroll-top{animation:none}}
