.site-header{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--rule);transition:box-shadow 160ms ease,background-color 160ms ease}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:1.3rem;transition:padding 180ms ease}.site-header.is-condensed .header-inner{padding-block:.6rem}.site-header.is-condensed{box-shadow:0 3px 12px rgba(20,39,39,.06)}.brand{display:inline-flex;align-items:center;min-height:44px;padding:.2rem .4rem .2rem 0;flex-shrink:0;text-decoration:none;transition:background-color 160ms ease,box-shadow 160ms ease}.brand img{height:3.2rem;width:auto}.brand:hover{background:var(--tint)}.brand:active{box-shadow:inset 0 -3px var(--accent)}.brand:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.header-context{font-family:var(--mono);font-size:.72rem;color:var(--muted);line-height:1.6;margin-right:auto;border-left:1px solid var(--rule);padding-left:1.5rem}.site-nav{display:flex;gap:1.4rem;align-items:center}.site-nav ul{display:flex;align-items:center;gap:1rem;padding:0;list-style:none}.site-nav li{max-width:none}.nav-link{display:inline-flex;min-height:44px;align-items:center;padding:.6rem .9rem;text-decoration:none;font-weight:600;color:var(--ink);border:1px solid transparent;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease}.nav-link:hover{background:var(--tint);color:var(--accent)}.nav-link:active{background:var(--accent);color:white}.nav-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.nav-link[aria-current=page]{border-bottom-color:var(--accent)}.nav-link--contact{border-color:var(--ink)}.nav-toggle{display:none;align-items:center;gap:.6rem;min-height:44px;padding:.65rem .8rem;background:var(--paper);border:1px solid var(--rule);transition:background-color 160ms ease,border-color 160ms ease}.nav-toggle[aria-expanded=true]{background:var(--tint);border-color:var(--accent)}.nav-toggle:hover{background:var(--accent);border-color:var(--accent);color:white}.nav-toggle:active{background:var(--ink);border-color:var(--ink);color:white}.nav-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.button,.button-secondary,.button-plain{display:inline-flex;justify-content:center;align-items:center;gap:.8rem;min-height:48px;max-width:100%;padding:.75rem 1.3rem;border:1px solid var(--accent);border-radius:0;background:var(--accent);color:var(--paper);text-decoration:none;font-weight:600;font-size:1rem;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease,box-shadow 160ms ease,transform 160ms ease}.button:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:white;box-shadow:0 3px 0 var(--tint)}.button:active{background:var(--ink);border-color:var(--ink);box-shadow:none;transform:translateY(1px)}.button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.button-secondary{background:var(--paper);color:var(--ink);border-color:var(--ink)}.button-secondary:hover{background:var(--tint);border-color:var(--accent);color:var(--accent)}.button-secondary:active{background:var(--accent);color:white;transform:translateY(1px)}.button-secondary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.button-plain{background:transparent;border-color:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:.2em}.button-plain:hover{background:var(--tint);border-color:var(--rule);color:var(--ink)}.button-plain:active{background:var(--accent);color:white}.button-plain:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.button:disabled,.button-secondary:disabled{background:var(--ground);color:var(--muted);border-color:var(--rule);box-shadow:none;cursor:not-allowed;transform:none}.text-link{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.5rem .3rem;font-weight:600;transition:background-color 160ms ease,color 160ms ease,box-shadow 160ms ease}.text-link:hover{background:var(--tint);color:var(--accent-dark)}.text-link:active{background:var(--accent);color:white}.text-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;min-width:44px;padding:.6rem;background:var(--paper);border:1px solid var(--rule);transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}.icon-button:hover{background:var(--tint);border-color:var(--accent)}.icon-button:active{background:var(--accent);color:white}.icon-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.service-directory{list-style:none;padding:0;border-top:1px solid var(--ink);counter-reset:service}.directory-row{max-width:none;border-bottom:1px solid var(--rule);position:relative}.directory-link{display:grid;grid-template-columns:4rem minmax(0,1fr) minmax(10rem,.75fr) 2rem;gap:1.75rem;align-items:start;min-height:100px;padding:1.6rem .5rem 1.6rem 0;color:var(--ink);text-decoration:none;transition:background-color 160ms ease,color 160ms ease,box-shadow 160ms ease}.directory-link>*{min-width:0}.directory-number{font-family:var(--mono);font-size:.85rem;color:var(--accent);padding:.2rem 0 .6rem;border-bottom:1px solid var(--accent);align-self:start}.directory-title{font-family:var(--display);font-size:clamp(1.45rem,2.5vw,2.65rem);font-weight:500;line-height:1.1;letter-spacing:-.035em;overflow-wrap:anywhere}.directory-description{font-size:1rem;line-height:1.45;color:var(--muted);padding-top:.2rem}.directory-arrow{justify-self:end;align-self:center;width:1.35rem;height:1.35rem;transition:transform 160ms ease}.directory-link:hover{background:var(--ground);color:var(--accent);box-shadow:inset 3px 0 var(--accent)}.directory-link:hover .directory-arrow{transform:translateX(3px)}.directory-link:active{background:var(--tint);color:var(--accent-dark)}.directory-link:focus-visible{outline:3px solid var(--accent);outline-offset:-3px;background:var(--tint)}.secondary-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--rule)}.secondary-directory a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:80px;padding:1.3rem;color:var(--ink);text-decoration:none;border-right:1px solid var(--rule);transition:background-color 160ms ease,color 160ms ease}.secondary-directory a:last-child{border-right:0}.secondary-directory a:hover{background:var(--tint);color:var(--accent)}.secondary-directory a:active{background:var(--accent);color:white}.secondary-directory a:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}

.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .7rem;font-family:var(--mono);font-size:.75rem;margin-block:1.3rem}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;padding:.4rem;transition:background-color 160ms ease,color 160ms ease}.breadcrumbs a:hover{background:var(--tint)}.breadcrumbs a:active{background:var(--accent);color:white}.breadcrumbs a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.breadcrumbs span{color:var(--muted)}.section-label{display:flex;align-items:baseline;gap:1rem;padding-block:.75rem;border-top:1px solid var(--rule);font-family:var(--mono);font-size:.76rem;line-height:1.5;color:var(--muted)}.section-label__number{color:var(--accent);min-width:2rem}.status-label{display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .6rem;border:1px solid var(--rule);font-family:var(--mono);font-size:.72rem;line-height:1.5;color:var(--muted)}.status-label--active{border-color:var(--accent);background:var(--tint);color:var(--accent)}
.photo-plate{display:grid;grid-template-columns:minmax(0,3fr) minmax(15rem,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}.photo-plate__image{position:relative;min-width:0;overflow:hidden;background:var(--ground);isolation:isolate}.photo-plate__image img{width:100%;height:100%;object-fit:cover;min-height:20rem}.photo-plate__rail{padding:1.5rem;border-left:1px solid var(--rule);background:var(--paper);position:relative;display:flex;flex-direction:column;gap:1.5rem}.photo-plate__caption{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem 2rem;padding:.8rem 0;font-family:var(--mono);font-size:.72rem;color:var(--muted);border-top:1px solid var(--rule)}.annotation{position:relative;padding:1rem 0 0;border-top:1px solid var(--accent)}.annotation::before{content:'';position:absolute;top:-1px;right:100%;width:1.5rem;border-top:1px solid var(--accent)}.annotation__number{font-family:var(--mono);font-size:.7rem;color:var(--accent)}.annotation__title{display:block;font-family:var(--display);font-size:1.1rem;font-weight:500;line-height:1.3;margin:.35rem 0}.annotation__text{font-size:.95rem;color:var(--muted);line-height:1.45}.figure-caption{padding-block:.85rem;font-family:var(--mono);font-size:.75rem;line-height:1.5;color:var(--muted);border-bottom:1px solid var(--rule)}.editorial-figure img{width:100%;height:auto}.scope-note{padding:1.5rem;border-left:2px solid var(--accent);background:var(--tint);font-size:1.05rem}.scope-note strong{display:block;font-family:var(--display);font-weight:500;margin-bottom:.5rem}.scope-table{font-size:1rem}.puve6ca>table.scope-table,.puve6ca>table.legal-table,.puve6ca>table.cookie-table{min-width:42rem}.scope-table caption{padding:0 0 1rem;font-family:var(--mono);font-size:.8rem}.scope-table th,.scope-table td{padding:1.1rem 1rem 1.1rem 0;border-bottom:1px solid var(--rule);overflow-wrap:anywhere}.scope-table thead th{font-family:var(--mono);font-size:.72rem;color:var(--muted);border-top:1px solid var(--ink);text-transform:uppercase}.scope-table tbody th{width:28%;font-weight:600}.puve6ca{overflow:auto;max-width:100%;overscroll-behavior-inline:contain}.puve6ca:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.inquiry-form,.request-form{display:grid;gap:1.5rem;min-width:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem 1.5rem}.form-field{display:flex;flex-direction:column;gap:.45rem;min-width:0}.form-field--full{grid-column:1/-1}.form-label,.form-field>label{font-weight:600;font-size:1rem;line-height:1.4}.form-optional{font-weight:400;color:var(--muted);font-size:.9rem}.form-input,.form-select,.form-textarea,.form-field input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.form-field select,.form-field textarea{display:block;width:100%;min-width:0;max-width:100%;min-height:48px;padding:.75rem .85rem;border:1px solid var(--muted);border-radius:0;background:var(--paper);color:var(--ink);font-size:1.0625rem;line-height:1.4;box-shadow:none;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease}.form-textarea,.form-field textarea{min-height:10rem;resize:vertical}.form-input:hover,.form-select:hover,.form-textarea:hover,.form-field input:hover,.form-field select:hover,.form-field textarea:hover{background:var(--accent-pale);border-color:var(--accent)}.form-input:active,.form-select:active,.form-textarea:active,.form-field input:active,.form-field select:active,.form-field textarea:active{background:var(--tint);border-color:var(--ink)}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible,.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px;background:var(--paper);border-color:var(--accent)}.form-help{font-size:.9rem;line-height:1.4;color:var(--muted)}.form-field [aria-invalid=true]{border-color:var(--danger)!important;background:var(--danger-pale)}.field-error{color:var(--danger);font-size:.95rem;line-height:1.4;display:block}.field-error:empty{display:none}.form-error-summary{padding:1.25rem;border:2px solid var(--danger);background:var(--danger-pale);color:var(--ink)}.form-error-summary h2{font-family:var(--display);font-size:1.3rem;margin-bottom:.6rem}.form-error-summary ul{margin-top:.5rem}.form-error-summary a{display:inline-block;min-height:44px;padding:.5rem;color:var(--danger);transition:background-color 160ms ease,color 160ms ease}.form-error-summary a:hover{background:white}.form-error-summary a:active{background:var(--danger);color:white}.form-error-summary a:focus-visible{outline:3px solid var(--danger);outline-offset:2px}.form-success{padding:1.5rem;border:1px solid var(--accent);background:var(--tint)}.form-success h2{font-size:1.5rem;margin-bottom:.7rem}.form-success__ticket{font-family:var(--mono);font-size:.85rem;padding-top:1rem}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;padding-top:1rem;border-top:1px solid var(--rule)}.form-actions .form-help{max-width:35ch}.checkbox-field,.radio-field{display:flex;gap:.8rem;align-items:flex-start;min-height:44px;padding:.65rem .2rem;cursor:pointer;line-height:1.4;transition:background-color 160ms ease,box-shadow 160ms ease}.checkbox-field input,.radio-field input{appearance:auto;accent-color:var(--accent);width:1.2rem;height:1.2rem;flex:0 0 1.2rem;margin:.15rem 0 0;cursor:pointer}.checkbox-field:hover,.radio-field:hover{background:var(--ground)}.checkbox-field:active,.radio-field:active{background:var(--tint)}.checkbox-field:has(input:focus-visible),.radio-field:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.checkbox-field input:focus-visible,.radio-field input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.choice-group{display:grid;gap:.45rem}.choice-group legend{font-family:var(--display);font-size:1.2rem;margin-bottom:.75rem}.form-honeypots{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-readonly{white-space:pre-wrap;background:var(--ground);border:1px solid var(--rule);padding:1rem;font-family:var(--mono);font-size:.8rem;line-height:1.65;overflow-wrap:anywhere}.form-status{font-size:.95rem;color:var(--muted)}.form-status:empty{display:none}.inquiry-form[aria-busy=true] [type=submit]{cursor:progress;opacity:.75}.privacy-reminder{padding-top:1rem;font-size:.92rem;color:var(--muted);border-top:1px solid var(--rule)}
.task-lookup{padding:1.6rem 0;border-bottom:1px solid var(--ink)}.task-lookup__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem 1rem;align-items:end}.task-lookup__form .form-field{grid-column:1}.lookup-results{margin-top:1.25rem;border-top:1px solid var(--rule)}.lookup-results:empty{display:none}.lookup-results__heading{font-family:var(--mono);font-size:.75rem;padding-top:1rem;color:var(--muted)}.lookup-result{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem .5rem;min-height:48px;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none;transition:background-color 160ms ease,color 160ms ease}.lookup-result:hover{background:var(--tint);color:var(--accent)}.lookup-result:active{background:var(--accent);color:white}.lookup-result:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.lookup-fallback{font-size:.95rem;color:var(--muted);padding-top:1rem}.lookup-services{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin-top:.6rem}.lookup-services a{display:inline-flex;min-height:44px;align-items:center;padding:.45rem;transition:background-color 160ms ease,color 160ms ease}.lookup-services a:hover{background:var(--tint)}.lookup-services a:active{background:var(--accent);color:white}.lookup-services a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.workload-task{border-top:1px solid var(--rule);padding:1.3rem 0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem 2rem}.workload-task__inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.workload-task__label{font-family:var(--display);font-size:1.3rem;line-height:1.25}.workload-task__description{font-size:.95rem;color:var(--muted);margin-top:.5rem}.workload-task.is-enabled{border-top-color:var(--accent)}.workload-task.is-incomplete{border-top:2px solid var(--danger)}.workload-summary{padding:1.5rem;background:var(--tint);border-top:3px solid var(--accent)}.workload-total{font-family:var(--display);font-size:clamp(2.5rem,5vw,5rem);line-height:1.1;letter-spacing:-.045em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.workload-unit{font-family:var(--mono);font-size:.8rem;display:block;margin:.6rem 0 1rem}.workload-breakdown{margin:1.3rem 0;border-top:1px solid var(--rule)}.workload-breakdown__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.3rem 1rem;padding:.75rem 0;border-bottom:1px solid var(--rule);font-size:.95rem}.workload-breakdown__row span:last-child{font-family:var(--mono);font-size:.8rem}.workload-caveat{font-size:.95rem;line-height:1.5}.share-link-field{margin-top:1rem}.share-link-field input{font-family:var(--mono);font-size:.8rem}.tool-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}

.faq-list{border-top:1px solid var(--ink)}.faq-item{border-bottom:1px solid var(--rule)}.faq-item:not([open])>:not(summary){display:none}.faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:64px;padding:1.25rem .5rem;font-family:var(--display);font-size:clamp(1.1rem,1.7vw,1.4rem);font-weight:500;line-height:1.35;transition:background-color 160ms ease,color 160ms ease}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";font-family:var(--mono);font-weight:400;font-size:1.4rem;flex:0 0 1.2rem;color:var(--accent)}.faq-item[open] summary::after{content:"−"}.faq-item summary:hover{background:var(--ground);color:var(--accent)}.faq-item summary:active{background:var(--tint)}.faq-item summary:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.faq-answer{padding:.25rem 3rem 1.5rem .5rem;font-size:1rem;max-width:65ch}.tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--rule);gap:.4rem}.tab{min-height:44px;padding:.8rem 1rem;background:var(--paper);border:1px solid var(--rule);border-bottom:3px solid transparent;transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}.tab[aria-selected=true]{border-bottom-color:var(--accent);background:var(--tint)}.tab:hover{background:var(--ground)}.tab:active{background:var(--accent);color:white}.tab:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.tab-panel{padding-block:1.5rem}
.site-footer{background:var(--ink);color:var(--paper);margin-top:clamp(3rem,6vw,7rem);padding:3rem 0 max(2rem,env(safe-area-inset-bottom));position:relative}.footer-main{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:2rem;padding-bottom:2.5rem;border-bottom:1px solid var(--muted)}.footer-brand img{height:4rem;width:auto}.footer-brand{display:inline-flex;min-height:44px;padding:.4rem;transition:background-color 160ms ease,box-shadow 160ms ease}.footer-brand:hover{background:var(--accent)}.footer-brand:active{box-shadow:inset 0 -3px var(--tint)}.footer-brand:focus-visible{outline:3px solid var(--tint);outline-offset:3px}.footer-description{color:var(--tint);font-size:1rem;max-width:28ch;margin-top:1.2rem}.footer-heading{font-family:var(--mono);font-size:.72rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--tint);margin-bottom:.8rem}.footer-contact address{font-size:1rem;line-height:1.6;margin-top:.8rem}.footer-links{display:flex;flex-direction:column;align-items:flex-start}.site-footer a:not(.footer-brand),.footer-button{display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding:.45rem .3rem;color:var(--paper);background:transparent;border:0;border-radius:0;font:inherit;line-height:1.4;text-decoration:underline;text-underline-offset:.22em;text-align:left;overflow-wrap:anywhere;transition:background-color 160ms ease,color 160ms ease,box-shadow 160ms ease}.site-footer a:not(.footer-brand):hover,.footer-button:hover{background:var(--accent);color:white}.site-footer a:not(.footer-brand):active,.footer-button:active{background:var(--tint);color:var(--ink)}.site-footer a:not(.footer-brand):focus-visible,.footer-button:focus-visible{outline:3px solid var(--tint);outline-offset:3px}.footer-legal{display:flex;flex-wrap:wrap;column-gap:1.2rem;row-gap:.1rem;padding:1.25rem 0}.footer-legal a,.footer-legal button{font-size:.9rem!important}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;font-family:var(--mono);font-size:.72rem;line-height:1.5;color:var(--tint);padding-top:1rem;border-top:1px solid var(--muted)}.footer-storage:not([open])>:not(summary){display:none}.footer-bottom p{max-width:65ch}.footer-support{margin-top:.8rem}.footer-support[hidden]{display:none}.js .footer-support{display:inline-flex}
.cookie-banner{position:fixed;z-index:90;inset:auto 0 0;background:var(--paper);color:var(--ink);border-top:2px solid var(--accent);box-shadow:0 -4px 20px rgba(20,39,39,.09);padding:.7rem var(--gutter) max(.7rem,env(safe-area-inset-bottom));max-height:20dvh;overflow:auto;overscroll-behavior:contain}.cookie-inner{width:min(100%,var(--shell));margin-inline:auto;display:flex;gap:.6rem 2rem;align-items:center;justify-content:space-between}.cookie-copy{font-size:.95rem;line-height:1.35;max-width:60ch}.cookie-copy a{display:inline-block;min-height:44px;padding:.6rem .25rem;transition:background-color 160ms ease,color 160ms ease}.cookie-copy a:hover{background:var(--tint)}.cookie-copy a:active{background:var(--accent);color:white}.cookie-copy a:focus-visible{outline:3px solid var(--accent);outline-offset:1px}.cookie-actions{display:flex;gap:.6rem;flex:0 0 auto}.cookie-actions button{font-size:.9rem;min-height:44px;padding:.6rem 1rem}.cookie-status{font-size:.85rem;color:var(--muted)}.cookie-banner[hidden]{display:none}body:has(.cookie-banner:not([hidden])){padding-bottom:var(--consent-height,110px)}body:has(.cookie-banner:not([hidden])) .chat-launcher{visibility:hidden;pointer-events:none}
.chat-launcher{position:fixed;z-index:60;right:var(--gutter);bottom:1rem;display:flex;align-items:center;gap:.65rem;min-height:48px;max-width:calc(100vw - 2rem);padding:.75rem 1.1rem;background:var(--ink);border:1px solid var(--paper);border-radius:0;color:white;box-shadow:0 3px 12px rgba(20,39,39,.18);font-size:1rem;line-height:1.3;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease}.chat-launcher:hover{background:var(--accent);border-color:var(--accent);box-shadow:0 5px 16px rgba(20,39,39,.25);transform:translateY(-2px)}.chat-launcher:active{background:var(--accent-dark);border-color:var(--tint);box-shadow:none;transform:translateY(1px)}.chat-launcher:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.chat-unread{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;padding:.2rem .4rem;font-family:var(--mono);font-size:.72rem;background:var(--tint);color:var(--ink)}.chat-panel{position:fixed;z-index:100;right:var(--gutter);bottom:1rem;width:min(26rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--ink);box-shadow:0 15px 60px rgba(20,39,39,.22);isolation:isolate}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:var(--ink);color:white;flex-shrink:0}.chat-title{font-family:var(--display);font-size:1.2rem;line-height:1.2;letter-spacing:-.02em}.chat-header .icon-button{background:var(--ink);border-color:var(--muted);color:white}.chat-header .icon-button:hover{background:var(--accent);border-color:var(--tint)}.chat-header .icon-button:active{background:var(--tint);color:var(--ink)}.chat-header .icon-button:focus-visible{outline-color:var(--tint)}.chat-body{padding:1rem;overflow:auto;overscroll-behavior:contain;min-height:0}.chat-greeting{font-size:1rem;line-height:1.45;padding-bottom:1rem;border-bottom:1px solid var(--rule)}.chat-contact{display:grid;gap:1rem;margin-top:1rem}.chat-contact .form-field{gap:.3rem}.chat-contact .checkbox-field{font-size:.9rem}.chat-privacy{font-size:.85rem;color:var(--muted);line-height:1.45}.chat-transcript{display:flex;flex-direction:column;gap:.8rem;min-height:4rem;max-height:40dvh;overflow:auto;overscroll-behavior:contain;padding:1rem 0;list-style:none}.chat-message{max-width:95%;padding:.8rem 1rem;background:var(--ground);border-left:2px solid var(--rule);font-size:1rem;line-height:1.4;overflow-wrap:anywhere}.chat-message--visitor{align-self:flex-end;background:var(--tint);border-left:0;border-right:2px solid var(--accent)}.chat-message--pending{border-right-style:dashed}.chat-message--failed{border-color:var(--danger);background:var(--danger-pale)}.chat-message__meta{display:block;margin-bottom:.35rem;font-family:var(--mono);font-size:.65rem;color:var(--muted)}.chat-message__body{white-space:pre-wrap}.chat-composer{display:grid;gap:.65rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--rule)}.chat-composer textarea{min-height:5rem}.chat-composer .button{justify-self:end}.chat-status{font-size:.85rem;color:var(--muted);padding-top:.5rem}.chat-status:empty{display:none}.chat-error{color:var(--danger);font-size:.9rem}.chat-retry{display:inline-flex;min-height:44px;align-items:center;padding:.5rem .75rem;margin-top:.5rem;border:1px solid var(--danger);color:var(--danger);background:white;transition:background-color 160ms ease,color 160ms ease}.chat-retry:hover{background:var(--danger-pale)}.chat-retry:active{background:var(--danger);color:white}.chat-retry:focus-visible{outline:3px solid var(--danger);outline-offset:3px}.chat-panel a{display:inline-block;min-height:44px;padding:.5rem .2rem;transition:background-color 160ms ease,color 160ms ease}.chat-panel a:hover{background:var(--tint)}.chat-panel a:active{background:var(--accent);color:white}.chat-panel a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.site-footer{padding-bottom:5rem}.site-footer .footer-support{gap:.6rem}.chat-panel[hidden],.chat-launcher[hidden]{display:none}

@media(min-width:1500px){.directory-link{grid-template-columns:5rem minmax(0,1fr) minmax(10rem,.65fr) 3rem}.photo-plate__rail{padding:2rem}.annotation::before{width:2rem}}
@media(max-width:1023px){.header-context{display:none}.photo-plate{grid-template-columns:minmax(0,2fr) minmax(13rem,1fr)}.photo-plate__rail{padding:1rem}.annotation::before{width:1rem}.directory-link{grid-template-columns:3rem minmax(0,1fr) minmax(9rem,.8fr) 1.5rem;gap:1.1rem}.footer-main{grid-template-columns:1fr 1.5fr}.footer-navigation{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:1rem 2rem}.footer-navigation .footer-links{flex-direction:row;flex-wrap:wrap;gap:1rem}.footer-navigation .footer-heading{align-self:center;margin:0}.cookie-inner{gap:.5rem 1rem}.cookie-copy{font-size:.88rem}.cookie-actions button{padding:.65rem .7rem;font-size:.85rem}}
@media(max-width:767px){.header-inner{padding-block:.7rem;gap:.8rem;flex-wrap:wrap}.brand img{height:2.8rem}.js .nav-toggle{display:inline-flex}.site-nav{width:100%;border-top:1px solid var(--rule);padding-top:.5rem}.site-nav ul{width:100%;justify-content:space-between;gap:.5rem}.site-nav .nav-link{padding:.7rem .6rem;font-size:.95rem}.js [data-a3144b]:not(.is-open):not([data-open=true]){display:none}.js .site-header:has([data-55379c][aria-expanded=true]) [data-a3144b]{display:flex}.site-nav[hidden]{display:none!important}.directory-link{grid-template-columns:2rem minmax(0,1fr) 1.25rem;gap:.5rem 1rem;padding-block:1.25rem;min-height:100px}.directory-number{grid-column:1;grid-row:1/3}.directory-title{grid-column:2;grid-row:1;font-size:clamp(1.35rem,4.5vw,2rem)}.directory-description{grid-column:2;grid-row:2;font-size:.95rem}.directory-arrow{grid-column:3;grid-row:1/3}.secondary-directory{grid-template-columns:1fr}.secondary-directory a{border-right:0;border-bottom:1px solid var(--rule);min-height:64px;padding:1rem .5rem}.secondary-directory a:last-child{border-bottom:0}.photo-plate{grid-template-columns:1fr}.photo-plate__image img{min-height:0;height:auto}.photo-plate__rail{border-left:0;border-top:1px solid var(--rule);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1.25rem;padding:1.5rem 0}.annotation::before{display:none}.photo-plate__caption{font-size:.68rem}.form-grid{gap:1.3rem;grid-template-columns:1fr}.form-field--full{grid-column:auto}.form-actions{align-items:stretch;flex-direction:column}.form-actions .button{width:100%}.form-actions .form-help{max-width:none}.workload-task{grid-template-columns:1fr;gap:.8rem}.workload-summary{padding:1.25rem}.task-lookup__form{grid-template-columns:1fr}.task-lookup__form .button{justify-self:start}.footer-main{grid-template-columns:1fr;gap:2rem}.footer-contact{border-top:1px solid var(--muted);padding-top:1.5rem}.footer-navigation{grid-column:auto;display:block}.footer-navigation .footer-links{gap:.3rem 1rem}.footer-navigation .footer-heading{margin-bottom:.8rem}.footer-legal{gap:0 .7rem}.footer-bottom{display:block}.footer-bottom p+p{margin-top:.75rem}.site-footer{padding-top:2rem}.cookie-banner{padding:.35rem .75rem max(.35rem,env(safe-area-inset-bottom))}.cookie-inner{display:grid;gap:0}.cookie-copy{font-size:.8rem;line-height:1.25;max-width:none;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.cookie-copy a{padding:.45rem .2rem;min-height:44px}.cookie-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:.4rem}.cookie-actions button{font-size:.8rem;padding:.55rem .45rem;min-height:44px}.chat-launcher{right:1rem;bottom:max(.75rem,env(safe-area-inset-bottom));font-size:.95rem;min-height:44px;padding:.65rem .85rem}.chat-panel{right:1rem;bottom:1rem;width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem)}body:has(.cookie-banner:not([hidden])) .chat-panel{bottom:calc(var(--consent-height,110px) + .5rem);max-height:calc(100dvh - var(--consent-height,110px) - 1rem)}.chat-body{padding:.85rem}.chat-header{padding:.75rem}.chat-transcript{max-height:32dvh}.scope-table th,.scope-table td{padding:.85rem .6rem .85rem 0}.scope-table{font-size:.9rem}.faq-answer{padding-right:1rem}}
@media(max-width:380px){.photo-plate__rail{grid-template-columns:1fr;gap:1rem}.directory-link{gap:.5rem .65rem;grid-template-columns:1.6rem minmax(0,1fr) 1rem}.directory-number{font-size:.72rem}.directory-arrow{width:1rem;height:1rem}.brand img{height:2.6rem}.nav-toggle{font-size:.9rem;padding:.6rem}.cookie-copy{font-size:.73rem;gap:.15rem}.cookie-actions button{font-size:.73rem;padding:.5rem .35rem}.chat-title{font-size:1.05rem}.chat-header .icon-button{font-size:.85rem}.workload-task__inputs{gap:.7rem}.form-input,.form-select,.form-textarea{padding:.7rem}.footer-legal{column-gap:.5rem}.footer-legal a,.footer-legal button{font-size:.85rem!important}}
@media(prefers-reduced-motion:reduce){.directory-link:hover .directory-arrow,.chat-launcher:hover,.chat-launcher:active,.button:active,.button-secondary:active{transform:none}}
@media(forced-colors:active){.button,.chat-launcher,.cookie-banner,.chat-panel,.workload-summary,.form-success,.status-label{border:1px solid ButtonText}.directory-number,.annotation{border-color:CanvasText}.checkbox-field input,.radio-field input{appearance:auto}.field-error{color:LinkText}.site-footer a:focus-visible,.footer-button:focus-visible{outline-color:Highlight}}
