/* One route: product, cooperation, presentation, then the regional directory. */
.representatives-site{caret-color:var(--color-accent);scrollbar-color:var(--color-rule) var(--color-paper)}
.representatives-site ::selection{background:var(--color-accent);color:var(--color-accent-ink)}
.representatives-main{padding-top:32px}
.representatives-recruit{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "lead" "media" "actions";gap:14px;min-width:0}
.representatives-recruit__intro{display:contents}
.representatives-recruit__intro h1{grid-area:title;min-width:0;margin:0;font-family:var(--font-display);font-size:var(--type-display);line-height:1.05;letter-spacing:-.03em;text-wrap:balance}
.representatives-recruit__intro h1>span{display:block;margin-top:4px;font-size:.76em;line-height:1.16;letter-spacing:-.02em}
.representatives-recruit__intro>p{grid-area:lead;max-width:36ch;margin:0;color:var(--color-ink-2);font-size:16px;line-height:1.5}
.representatives-recruit__media{grid-area:media;min-width:0;aspect-ratio:16/9;margin:0;overflow:hidden;background:var(--color-ink)}
.representatives-recruit__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 46%}
.representatives-recruit__actions{grid-area:actions;display:flex;flex-direction:column;gap:0;min-width:0}
.representatives-recruit__primary,.representatives-form__submit{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:48px;padding:12px 18px;border:1px solid var(--color-accent);border-radius:0;background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--type-button);font-weight:600;line-height:1.35;text-align:left;cursor:pointer}
.representatives-recruit__secondary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding-block:10px;color:var(--color-ink);font-size:14px;line-height:1.4;text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:5px}
.representatives-recruit__actions svg,.representatives-form__submit>svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5}
.representatives-recruit__primary:hover,.representatives-form__submit:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}
.representatives-recruit__secondary:hover{color:var(--color-accent);text-decoration-color:currentColor}
.representatives-support{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:var(--section-space);padding-top:32px;border-top:1px solid var(--color-rule)}
.representatives-support h2{max-width:20ch;font-size:var(--type-h2);line-height:1.12;text-wrap:balance}
.representatives-support__columns{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
.representatives-support__column{min-width:0}
.representatives-support__column h3{margin-bottom:16px;font-size:24px;line-height:1.2;letter-spacing:-.02em}
.representatives-support__list{display:grid;min-width:0;margin:0}
.representatives-support__list>div{display:grid;gap:8px;min-width:0;padding-block:16px;border-top:1px solid var(--color-rule)}
.representatives-support__list dt{font-size:17px;font-weight:500;line-height:1.35}
.representatives-support__list dd{max-width:52ch;margin:0;color:var(--color-ink-2);font-size:16px;line-height:1.5}
.representatives-support__list a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:4px}
.representatives-support__list a:hover{color:var(--color-accent)}
.representatives-growth{padding-top:24px;border-top:1px solid var(--color-rule)}
.representatives-growth__copy{display:grid;gap:10px;min-width:0}
.representatives-growth h3{max-width:32ch;font-size:20px;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}
.representatives-growth p{max-width:72ch;color:var(--color-ink-2);font-size:14px;line-height:1.55}
.representatives-presentation{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-content:start;min-width:0;margin-top:var(--section-space-compact);padding:28px 24px;background:var(--color-banner);color:var(--color-banner-ink);scroll-margin-top:88px}
.representatives-presentation__intro{display:grid;align-content:start;gap:12px;min-width:0}
.representatives-presentation__intro h2{max-width:18ch;font-size:28px;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
.representatives-presentation__intro p{max-width:34ch;color:var(--color-banner-ink);font-size:16px;line-height:1.5}
.representatives-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;align-content:start}
.representatives-form__trap{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.representatives-form__email{display:grid;gap:8px;min-width:0;font-size:14px;font-weight:500}
.representatives-form__email input{width:100%;min-width:0;min-height:52px;padding:13px 14px;border:1px solid var(--color-ink);border-radius:0;background:var(--color-document);color:var(--color-ink);font-size:16px;line-height:1.4;box-shadow:none}
.representatives-form__email input::placeholder{color:var(--color-muted);opacity:1}
.representatives-form__email input:hover{border-color:var(--color-accent)}
.representatives-form__consent{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;min-height:44px;padding-block:6px;color:var(--color-banner-ink);font-size:14px;line-height:1.5;cursor:pointer}
.representatives-form__consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--color-accent);cursor:pointer}
.representatives-form__legal{display:flex;flex-wrap:wrap;gap:0 16px;font-size:14px;line-height:1.5}
.representatives-form__legal a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;text-decoration:underline;text-decoration-color:var(--color-on-dark-rule-strong);text-underline-offset:3px}
.representatives-form__legal a:hover{text-decoration-color:currentColor}
.representatives-form__submit:disabled{cursor:wait;background:var(--color-ink-2);border-color:var(--color-ink-2)}
.representatives-form__feedback{font-size:15px;line-height:1.5;color:var(--color-ink);padding:14px;background:var(--color-paper-2)}
.representatives-form__feedback.is-success{border:1px solid var(--color-rule)}
.representatives-directory{margin-top:var(--section-space);padding-bottom:var(--section-space-compact);scroll-margin-top:88px}
.representatives-heading{display:grid;gap:14px;max-width:760px;margin-bottom:28px}
.representatives-heading h2{font-size:var(--type-h2);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
.representatives-heading p{max-width:46ch;color:var(--color-ink-2);font-size:16px;line-height:1.5}
.representatives-directory__body{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"map" "list";gap:24px}
.representatives-directory__list{grid-area:list;display:grid;gap:20px;min-width:0;align-content:start}
.representatives-regions{display:grid;padding:0;margin:0;list-style:none;border-top:1px solid var(--color-rule)}
.representatives-regions li{min-width:0;border-bottom:1px solid var(--color-rule)}
.representatives-region{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:72px;padding:14px 0;border:0;border-radius:0;background:transparent;color:var(--color-ink);text-align:left;cursor:pointer}
.representatives-region__copy{display:grid;gap:4px;min-width:0}
.representatives-region strong{font-family:var(--font-display);font-size:18px;line-height:1.25;letter-spacing:-.01em}
.representatives-region__copy>span{color:var(--color-ink-2);font-size:14px;line-height:1.35}
.representatives-region__details{min-width:0;color:var(--color-ink-2);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.representatives-region__details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding-bottom:10px;list-style:none;color:var(--color-ink-2);cursor:pointer}
.representatives-region__details summary::-webkit-details-marker{display:none}
.representatives-region__details summary>svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5}
.representatives-region__details[open] summary>svg{transform:rotate(180deg)}
.representatives-region__details summary:hover{color:var(--color-accent)}
.representatives-region__details>p{margin-bottom:6px}
.representatives-region__details>p:last-child{margin-bottom:16px}
.representatives-region__company,.representatives-region__name{color:var(--color-ink)}
.representatives-region__inn{font-variant-numeric:tabular-nums}
.representatives-region>svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform var(--dur-short) var(--ease-out)}
.representatives-region:hover,.representatives-region[aria-pressed="true"]{color:var(--color-accent)}
.representatives-region[aria-pressed="true"]>svg{transform:translateX(3px)}
.representatives-contact{max-width:42ch;color:var(--color-ink-2);font-size:14px;line-height:1.55}
.representatives-contact a{display:flex;align-items:center;min-height:44px;width:fit-content;color:var(--color-ink);font-size:16px;font-weight:500;text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:4px}
.representatives-contact a:hover{color:var(--color-accent);text-decoration-color:currentColor}
.representatives-map{grid-area:map;display:grid;align-content:start;min-width:0;padding:18px;background:var(--color-paper-2)}
.representatives-map__legend{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.4;color:var(--color-ink-2)}
.representatives-map__legend>span{width:12px;height:12px;flex-shrink:0;background:var(--color-accent)}
.representatives-map__canvas{min-width:0;padding-block:16px}
.representatives-map__canvas>svg{display:block;width:100%;height:auto;overflow:visible}
.representatives-map [data-region]{fill:var(--color-paper-3);stroke:var(--color-paper-2);stroke-width:.8;transition:fill 220ms var(--ease-out),stroke 220ms var(--ease-out)}
.representatives-map [data-region].is-covered{fill:var(--color-accent)}
.representatives-map [data-region].is-selected{fill:var(--color-ink);stroke:var(--color-accent);stroke-width:2;vector-effect:non-scaling-stroke}
.representatives-map__caption{display:grid;gap:3px;min-height:54px;padding-top:14px;border-top:1px solid var(--color-rule)}
.representatives-map__caption strong{font-size:16px;font-weight:500;line-height:1.35}
.representatives-map__caption>span{font-size:14px;color:var(--color-ink-2);line-height:1.4}
.representatives-map__caption>span[hidden]{display:none}
.representatives-map__fallback,.representatives-noscript{font-size:14px;line-height:1.5;color:var(--color-ink-2)}
.representatives-noscript{margin-top:16px}
.representatives-site :is(a,button,input,summary):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
body:has(.representatives-site[data-presentation-visible="true"]) .woot-widget-bubble:not(.woot--close){display:none!important}
@media(min-width:680px){
.representatives-recruit__actions{flex-direction:row;flex-wrap:wrap;gap:16px}
.representatives-recruit__primary{width:auto}
.representatives-recruit__secondary{padding-inline:8px}
.representatives-form{grid-template-columns:minmax(0,1fr) auto}
.representatives-form__email{grid-column:1;grid-row:1}
.representatives-form__submit{grid-column:2;grid-row:1;align-self:end;width:auto}
.representatives-form__consent,.representatives-form__legal,.representatives-form__feedback{grid-column:1/-1}
.representatives-form__consent{grid-row:2}
.representatives-form__legal{grid-row:3}
.representatives-form__feedback{grid-row:4}
}
@media(min-width:900px){
.representatives-recruit{grid-template-areas:"content media";grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:center}
.representatives-recruit__intro{display:grid;grid-area:content;gap:24px;align-content:center;min-width:0;padding-right:20px}
.representatives-recruit__intro :is(h1,p,.representatives-recruit__actions){grid-area:auto}
.representatives-recruit__intro>p{font-size:18px}
.representatives-recruit__secondary{justify-content:flex-start;gap:20px}
.representatives-support{grid-template-columns:minmax(0,.25fr) minmax(0,.75fr);gap:32px 48px;padding-top:40px}
.representatives-support h2{max-width:14ch}
.representatives-support__columns{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.representatives-support__column h3{margin-bottom:20px;font-size:28px}
.representatives-growth{grid-column:2;padding-top:20px}
.representatives-growth__copy{grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:24px}
.representatives-growth h3{max-width:24ch}
.representatives-presentation{grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);align-items:center;gap:clamp(32px,4vw,56px);padding:40px}
.representatives-presentation__intro h2{font-size:clamp(28px,2.6vw,36px)}
.representatives-heading{margin-bottom:36px;gap:18px}
.representatives-directory__body{grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);grid-template-areas:"list map";gap:clamp(32px,5vw,72px);align-items:start}
.representatives-region{min-height:76px;padding-block:16px}
.representatives-region strong{font-size:19px}
.representatives-directory__list{gap:24px}
.representatives-map{padding:24px}
.representatives-map__canvas{padding-block:20px}
.representatives-map__caption{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:48px;gap:16px}
}
@media(min-width:900px) and (max-width:1120px){.representatives-recruit{gap:32px}.representatives-recruit__intro{padding-right:0}}
@media(max-width:360px){.representatives-region strong{font-size:16px}.representatives-map{padding:14px}.representatives-presentation{padding:24px 20px}.representatives-presentation__intro h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.representatives-site *,.representatives-site *::before,.representatives-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.representatives-region[aria-pressed="true"]>svg{transform:none}}
@media print{.representatives-site .site-menu,.representatives-form,.representatives-site .footer,.representatives-recruit__actions{display:none!important}.representatives-presentation{display:none}.representatives-region__details::details-content{content-visibility:visible!important}.representatives-directory__body{grid-template-columns:minmax(0,.34fr) minmax(0,.66fr);grid-template-areas:"list map";gap:24px}.representatives-map{break-inside:avoid}}
