/* UTC components v1. BEM, utc- prefix. Colours, type, space come from tokens.css only. */
:root{--fs-h1-hero:clamp(2.75rem,2rem + 3.6vw,5.5rem);--lh-h1-hero:.98;--red-fill:var(--raw-red-600);--red-fill-hover:var(--raw-red-700)}

/* layout */
.utc-wrap{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}
.utc-wrap--wide{max-width:var(--container-wide)}
.utc-section{padding-block:var(--section-y);background:var(--bg-light);color:var(--text)}
.utc-section--alt{background:var(--bg-secondary)}
.utc-section--tight{padding-block:var(--section-y-tight)}
.utc-signal{background:var(--bg-signal);color:var(--text-on-signal)}
.utc-signal a:not(.utc-btn){color:var(--text-on-signal)}
.utc-split{display:grid;gap:var(--space-6)}
.utc-split>*{min-width:0}
@media (min-width:960px){.utc-split--rev .utc-split__a{grid-column:1/span 4!important;grid-row:1}.utc-split--rev .utc-split__b{grid-column:5/span 8!important;grid-row:1}.utc-split{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);align-items:start}.utc-split__a{grid-column:span 7}.utc-split__b{grid-column:span 5}.utc-split--5-7 .utc-split__a{grid-column:span 5}.utc-split--5-7 .utc-split__b{grid-column:span 7}.utc-split--4-8 .utc-split__a{grid-column:span 4}.utc-split--4-8 .utc-split__b{grid-column:span 8}.utc-split--6 .utc-split__a,.utc-split--6 .utc-split__b{grid-column:span 6}}
.utc-sticky{position:sticky;top:6rem}
.utc-stack>*+*{margin-top:var(--stack-text)}

/* type */
.utc-h1{font-size:var(--fs-h1-hero);line-height:var(--lh-h1-hero);font-weight:800;letter-spacing:-.04em;margin-bottom:var(--space-5)}
.utc-h1 span{display:block}
.utc-h1__sub{font-size:var(--fs-h3);letter-spacing:-.02em;line-height:1.15;margin-top:var(--space-3)}
.utc-h2{font-size:var(--fs-h2);line-height:var(--lh-h2);font-weight:800;letter-spacing:var(--ls-h2);max-width:var(--measure-h2);text-wrap:balance;margin-bottom:var(--stack-heading)}
.utc-h3{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:700;letter-spacing:var(--ls-h3)}
.utc-h4{font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:700}
.utc-lead{font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);font-weight:700;max-width:var(--measure-lead)}
.utc-text{max-width:var(--measure-body)}
.utc-text>*+*{margin-top:var(--stack-text)}
.utc-small{font-size:var(--fs-small);line-height:var(--lh-small);color:var(--text-2)}
.utc-tech{font-family:var(--font-tech);font-size:var(--fs-tech);font-variant-numeric:tabular-nums}
.utc-muted{color:var(--text-muted)}
.utc-signal .utc-small,.utc-signal .utc-muted{color:var(--text-on-signal-2)}

/* buttons */
.utc-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:3rem;padding:.75rem 1.25rem;border:2px solid transparent;border-radius:var(--r-1);font-size:var(--fs-btn);font-weight:800;line-height:1.2;text-align:center;text-decoration:none!important;transition:background-color var(--dur-micro),color var(--dur-micro),border-color var(--dur-micro)}
.utc-btn--lg{min-height:3.5rem;padding:1rem 1.75rem;font-size:var(--fs-btn-lg)}
.utc-btn--primary{background:var(--red-fill);color:#fff!important}
.utc-btn--primary:hover{background:var(--red-fill-hover)}
.utc-btn--primary:active{background:var(--raw-red-800)}
.utc-btn--secondary{border-color:var(--border-strong);color:var(--text)!important;background:transparent}
.utc-btn--secondary:hover{background:var(--bg-secondary)}
.utc-btn--on-red{background:#fff;color:var(--raw-red-800)!important}
.utc-btn--on-red:hover{background:var(--raw-red-100)}
.utc-btn--on-red-line{border-color:#fff;color:#fff!important;background:transparent}
.utc-btn--on-red-line:hover{background:rgba(255,255,255,.14)}
:root[data-theme="dark"] .utc-btn--on-red{background:var(--red-fill);color:#fff!important}
:root[data-theme="dark"] .utc-btn--on-red:hover{background:var(--red-fill-hover)}
.utc-btn--block{width:100%}
.utc-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
@media (max-width:639px){.utc-actions .utc-btn{width:100%}}
.utc-link{font-weight:800}

/* sign tile: the one signature element */
.utc-sign{--sign-bg:var(--raw-paper-50);--sign-fg:var(--raw-red-600);--sign-rim:var(--raw-ink-900);position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-4);min-height:7.5rem;padding:var(--space-5);background:var(--sign-bg);color:var(--sign-fg)!important;border-radius:var(--r-sign-sm);box-shadow:var(--shadow-sign);font-weight:800;line-height:1.1;text-decoration:none!important;transition:transform var(--dur-std) var(--ease-out)}
.utc-sign::before{content:"";position:absolute;inset:.4rem;border:3px solid var(--sign-rim);border-radius:calc(var(--r-sign-sm) - 4px);pointer-events:none}
.utc-sign:hover{transform:translateY(var(--move-hover))}
.utc-sign .utc-ico{width:2.25rem;height:2.25rem;stroke-width:1.75}
.utc-sign__name{font-size:var(--fs-h4)}
.utc-sign--lg{border-radius:var(--r-sign);min-height:15rem}
.utc-sign--lg::before{border-radius:calc(var(--r-sign) - 6px);inset:.55rem}
.utc-sign--lg .utc-ico{width:6rem;height:6rem;align-self:center;margin-block:auto}
.utc-sign--lg .utc-sign__name{font-size:var(--fs-h3)}
:root[data-theme="dark"] .utc-sign{--sign-bg:var(--raw-red-600);--sign-fg:#fff;--sign-rim:#fff}

/* hero */
.utc-hero{padding-block:var(--section-y-tight) var(--space-6)}
.utc-hero__grid{display:grid;gap:var(--space-6);align-items:center}
.utc-hero__lead{margin-bottom:var(--space-3)}
.utc-hero__body{max-width:var(--measure-body);margin-bottom:var(--space-5)}
.utc-hero__actions{margin-block:var(--space-5) var(--space-3)}
.utc-hero__req{display:inline-block;font-weight:800;margin-bottom:var(--space-4)}
.utc-hero__signs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
.utc-hero__signs .utc-sign--lg{grid-column:1/-1}
.utc-hero__more{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--text-on-signal-2);font-weight:700;font-size:var(--fs-small)}
.utc-hero__more .utc-switch{margin-left:auto}
@media (min-width:960px){.utc-hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-8)}}

/* lights out switch */
.utc-switch{display:inline-flex;align-items:center;gap:var(--space-3);min-height:2.75rem;padding:.4rem .9rem .4rem .5rem;border:2px solid currentColor;border-radius:var(--r-1);background:transparent;font-weight:800;font-size:var(--fs-small)}
.utc-switch__track{position:relative;width:2.5rem;height:1.5rem;border:2px solid currentColor;border-radius:1rem}
.utc-switch__track::after{content:"";position:absolute;top:2px;left:2px;width:1rem;height:1rem;border-radius:50%;background:currentColor;transition:transform var(--dur-std) var(--ease-out)}
.utc-switch[aria-pressed="true"] .utc-switch__track::after{transform:translateX(1rem)}

/* header */
.utc-header{position:sticky;top:0;z-index:50;background:var(--bg-light);border-bottom:1px solid var(--border)}
.utc-header__bar{display:flex;align-items:center;gap:var(--space-4);min-height:4rem}
.utc-brand{display:flex;align-items:center;gap:var(--space-3);color:var(--text)!important;text-decoration:none!important;font-weight:800;line-height:1.1;font-size:1rem}
.utc-brand img,.utc-brand svg{width:2.5rem;height:2.5rem;object-fit:contain}
.utc-nav{display:none;margin-left:var(--space-4)}
.utc-nav a{display:block;padding:.75rem .5rem;color:var(--text);font-weight:700;font-size:var(--fs-nav);text-decoration:none}
.utc-nav a:hover{color:var(--brand);text-decoration:underline}
.utc-header__cta{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}
.utc-header__cta .utc-btn{min-height:2.75rem;padding:.5rem 1rem}
.utc-header__wa{display:none}
.utc-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:2px solid var(--border-strong);border-radius:var(--r-1);background:transparent}
.utc-menu-btn .utc-ico{width:1.5rem;height:1.5rem}
.utc-menu-btn .utc-ico--close,.utc-menu-open .utc-menu-btn .utc-ico--menu{display:none}
.utc-menu-open .utc-menu-btn .utc-ico--close{display:block}
.js .utc-nav{display:none}
.utc-menu-open .utc-nav{display:block;position:absolute;left:0;right:0;top:100%;background:var(--bg-elevated);border-bottom:1px solid var(--border-strong);box-shadow:var(--shadow-lift);padding:var(--space-3) var(--container-pad) var(--space-5);margin:0}
.utc-menu-open .utc-nav a{padding:1rem 0;font-size:var(--fs-body-lg);border-top:1px solid var(--border)}
@media (min-width:960px){.utc-menu-btn{display:none}.utc-nav,.js .utc-nav{display:flex;position:static}.utc-header__wa{display:inline-flex}.utc-menu-open .utc-nav{position:static;box-shadow:none;border:0;padding:0;background:none;margin-left:var(--space-4)}.utc-menu-open .utc-nav a{padding:.75rem .5rem;border:0;font-size:var(--fs-nav)}}

/* rows (problem router, guides, FAQ list) */
.utc-rows{border-bottom:1px solid var(--border)}
.utc-row{display:grid;gap:var(--space-2) var(--space-5);padding-block:var(--space-5);border-top:1px solid var(--border)}
.utc-row__title{font-size:var(--fs-h4);font-weight:800;line-height:1.2}
.utc-row__body{max-width:var(--measure-body)}
.utc-row__body>*+*{margin-top:var(--space-2)}
.utc-row__go{font-weight:800}
.utc-row--safety{border:var(--bw-strong) solid var(--border-strong);border-radius:var(--r-1);padding:var(--space-5);margin-block:var(--space-3)}
.utc-row--safety ol{list-style:decimal;padding-left:1.25rem}
@media (min-width:960px){.utc-row{grid-template-columns:minmax(0,4fr) minmax(0,6fr) minmax(0,2fr);align-items:start}.utc-row--guide{grid-template-columns:minmax(0,5fr) minmax(0,5fr) minmax(0,2fr);align-items:baseline}}
.utc-row__date{font-family:var(--font-tech);font-size:var(--fs-small);color:var(--text-muted)}

/* panels, facts */
.utc-panel{background:var(--bg-elevated);border:1px solid var(--border-control);border-radius:var(--r-1);padding:var(--card-pad)}
.utc-panel--rule{border:var(--bw-strong) solid var(--border-strong)}
.utc-facts{display:grid;gap:0}
.utc-facts>div{display:grid;gap:var(--space-1);padding-block:var(--space-3);border-top:1px solid var(--border)}
.utc-facts>div:first-child{border-top:0}
.utc-facts dt{font-size:var(--fs-small);color:var(--text-muted);font-weight:700}
.utc-facts dd{font-weight:700}
@media (min-width:640px){.utc-facts>div{grid-template-columns:9rem 1fr;gap:var(--space-4)}}

/* photo placeholder (real photos only, else labelled) */
.utc-photo{display:flex;align-items:center;justify-content:center;text-align:center;min-height:11rem;padding:var(--space-4);background:var(--bg-secondary);border:1px dashed var(--border-control);color:var(--text-2);font-weight:700;font-size:var(--fs-small)}
.utc-photo--map{min-height:8rem}
.utc-section--alt .utc-photo{background:var(--bg-light)}

/* accordion (details) */
.utc-acc{border-top:1px solid var(--border)}
.utc-acc:last-of-type{border-bottom:1px solid var(--border)}
.utc-acc>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:3.5rem;padding-block:var(--space-4);font-size:var(--fs-h4);font-weight:800;line-height:1.25}
.utc-acc>summary::-webkit-details-marker{display:none}
.utc-acc>summary::after{content:"";flex:none;width:1.25rem;height:1.25rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat}
.utc-acc[open]>summary::after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E")}
.utc-acc__body{padding-bottom:var(--space-5);max-width:var(--measure-body)}
.utc-acc__body>*+*{margin-top:var(--stack-text)}
.utc-acc--sm>summary{font-size:var(--fs-body);min-height:3rem}

/* timeline */
.utc-timeline{border-left:var(--bw-strong) solid var(--border-strong);margin-left:.25rem}
.utc-timeline__item{position:relative;display:grid;gap:var(--space-2);padding:0 0 var(--space-6) var(--space-5)}
.utc-timeline__item::before{content:"";position:absolute;left:-.4rem;top:.4rem;width:.65rem;height:.65rem;background:var(--text);border-radius:50%}
.utc-timeline__date{font-family:var(--font-tech);font-weight:700;font-size:var(--fs-h4)}
.utc-timeline__what{max-width:var(--measure-body)}
@media (min-width:960px){.utc-timeline__item{grid-template-columns:11rem minmax(0,1fr);gap:var(--space-5)}}
.utc-src{font-size:var(--fs-small);color:var(--text-2)}
.utc-src a{color:var(--text-2)}

/* stats */
.utc-stats{display:grid;gap:var(--space-5)}
@media (min-width:640px){.utc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.utc-stat{border-top:var(--bw-strong) solid var(--border-strong);padding-top:var(--space-3)}
.utc-stat__n{font-family:var(--font-tech);font-weight:700;font-size:var(--fs-h1);line-height:1;letter-spacing:-.02em}
.utc-stat__l{margin-top:var(--space-2);font-weight:700}

/* tables */
.utc-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;border:1px solid var(--border-control);border-radius:var(--r-1)}
.utc-table{width:100%;border-collapse:collapse;font-size:var(--fs-small);min-width:30rem}
.utc-table th,.utc-table td{text-align:left;vertical-align:top;padding:.75rem 1rem;border-bottom:1px solid var(--border)}
.utc-table th{font-weight:800;background:var(--bg-secondary)}
.utc-table tr:last-child td{border-bottom:0}
.utc-table .utc-num{font-family:var(--font-tech);font-variant-numeric:tabular-nums;white-space:nowrap}
.utc-table tbody tr:hover{background:var(--bg-secondary)}

/* steps */
.utc-steps{counter-reset:s;display:grid;gap:0}
.utc-steps li{counter-increment:s;position:relative;padding:0 0 var(--space-5) 3.25rem;border-left:var(--bw-strong) solid var(--border-strong);margin-left:1rem}
.utc-steps li::before{content:counter(s);position:absolute;left:-1rem;top:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--text);color:var(--bg-light);font-family:var(--font-tech);font-weight:700;font-size:var(--fs-small)}
.utc-steps li:last-child{border-left-color:transparent;padding-bottom:0}

/* department ledger */
.utc-ledger{border-bottom:1px solid var(--border)}
.utc-dept{border-top:1px solid var(--border)}
.utc-dept>summary{list-style:none;display:flex;align-items:center;gap:var(--space-4);min-height:4.5rem;padding-block:var(--space-3);font-size:var(--fs-h4);font-weight:800;line-height:1.2}
.utc-dept>summary::-webkit-details-marker{display:none}
.utc-dept__ico{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;flex:none;border-radius:var(--r-sign-sm);background:var(--bg-elevated);border:2px solid var(--border-strong);color:var(--text)}
.utc-dept__ico .utc-ico{width:1.75rem;height:1.75rem}
.utc-dept[open] .utc-dept__ico{background:var(--red-fill);border-color:var(--red-fill);color:#fff}
.utc-dept>summary::after{content:"+";margin-left:auto;font-family:var(--font-tech);font-size:1.75rem;font-weight:500;line-height:1}
.utc-dept[open]>summary::after{content:"\2212"}
.utc-dept__body{padding:0 0 var(--space-6) calc(3rem + var(--space-4));max-width:calc(var(--measure-body) + 3rem + var(--space-4))}
.utc-dept__body>*+*{margin-top:var(--stack-text)}
@media (max-width:639px){.utc-dept__body{padding-left:0}}
.utc-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.utc-chip{display:inline-flex;align-items:center;min-height:2rem;padding:.2rem .7rem;border:1px solid var(--border-control);border-radius:var(--r-1);font-family:var(--font-tech);font-size:var(--fs-small);font-weight:500;background:var(--bg-elevated)}
.utc-help{background:var(--bg-elevated);border:var(--bw-strong) solid var(--border-strong);border-radius:var(--r-1);padding:var(--card-pad)}
.utc-help>*+*{margin-top:var(--space-4)}

/* selector (what to send) */
.utc-send{border-top:var(--bw-strong) solid var(--border-strong);margin-top:var(--space-7);padding-top:var(--space-6)}
.utc-pick{border-top:1px solid var(--border)}
.utc-pick:last-of-type{border-bottom:1px solid var(--border)}
.utc-pick>summary{list-style:none;display:flex;justify-content:space-between;gap:var(--space-4);min-height:3.5rem;padding-block:var(--space-3);align-items:center;font-weight:800}
.utc-pick>summary::-webkit-details-marker{display:none}
.utc-pick>summary::after{content:"+";font-family:var(--font-tech);font-size:1.5rem}
.utc-pick[open]>summary::after{content:"\2212"}
.utc-pick__body{padding-bottom:var(--space-5);display:grid;gap:var(--space-4);max-width:var(--measure-body)}

/* buildings tabs: CSS-only radios */
.utc-tabs{position:relative}
.utc-tabs>input{position:absolute;opacity:0;pointer-events:none}
.utc-tabs__list{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid var(--border-strong);scrollbar-width:thin}
.utc-tabs__tab{display:flex;align-items:center;gap:var(--space-3);flex:none;min-height:3.5rem;padding:.75rem 1.1rem;font-weight:700;border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap}
.utc-tabs__tab .utc-ico{width:1.5rem;height:1.5rem}
.utc-tabs__panel{display:none;padding-top:var(--space-6)}
.utc-tabs__panel .utc-split>*+*{margin-top:0}
.utc-tabs>input:focus-visible+*{outline:0}
.utc-tabs__panel .utc-actions{flex-direction:column;align-items:stretch}
#bt1:checked~.utc-tabs__list label[for=bt1]{border-bottom-color:var(--red-fill);color:var(--text);background:var(--bg-elevated)}#bt1:checked~.utc-tabs__panel--1{display:block}#bt1:focus-visible~.utc-tabs__list label[for=bt1]{outline:3px solid var(--focus);outline-offset:-3px}
#bt2:checked~.utc-tabs__list label[for=bt2]{border-bottom-color:var(--red-fill);color:var(--text);background:var(--bg-elevated)}#bt2:checked~.utc-tabs__panel--2{display:block}#bt2:focus-visible~.utc-tabs__list label[for=bt2]{outline:3px solid var(--focus);outline-offset:-3px}
#bt3:checked~.utc-tabs__list label[for=bt3]{border-bottom-color:var(--red-fill);color:var(--text);background:var(--bg-elevated)}#bt3:checked~.utc-tabs__panel--3{display:block}#bt3:focus-visible~.utc-tabs__list label[for=bt3]{outline:3px solid var(--focus);outline-offset:-3px}
#bt4:checked~.utc-tabs__list label[for=bt4]{border-bottom-color:var(--red-fill);color:var(--text);background:var(--bg-elevated)}#bt4:checked~.utc-tabs__panel--4{display:block}#bt4:focus-visible~.utc-tabs__list label[for=bt4]{outline:3px solid var(--focus);outline-offset:-3px}
#bt5:checked~.utc-tabs__list label[for=bt5]{border-bottom-color:var(--red-fill);color:var(--text);background:var(--bg-elevated)}#bt5:checked~.utc-tabs__panel--5{display:block}#bt5:focus-visible~.utc-tabs__list label[for=bt5]{outline:3px solid var(--focus);outline-offset:-3px}

/* areas */
.utc-zone-list{margin-top:var(--space-5)}

/* form */
.utc-form{display:grid;gap:var(--space-4)}
.utc-field label{display:block;font-weight:700;font-size:var(--fs-small);margin-bottom:var(--space-1)}
.utc-field input,.utc-field select,.utc-field textarea{width:100%;min-height:3rem;padding:.65rem .85rem;border:2px solid var(--border-control);border-radius:var(--r-1);background:var(--bg-elevated);color:var(--text);font:inherit;font-weight:500}
.utc-field textarea{min-height:6rem;resize:vertical}
.utc-form details>summary{font-weight:800;min-height:2.75rem;display:flex;align-items:center}
.utc-form details>div{display:grid;gap:var(--space-4);padding-top:var(--space-3)}
.utc-panel--form{color:var(--text);background:var(--bg-elevated)}
.utc-signal .utc-panel--form a{color:var(--brand)}
.utc-cta__grid{display:grid;gap:var(--space-7);align-items:start}
.utc-cta__h{font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:800;letter-spacing:var(--ls-h1);max-width:var(--measure-h1);text-wrap:balance;margin-bottom:var(--space-5)}
@media (min-width:960px){.utc-cta__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-8)}}

/* sources */
.utc-sources{display:grid;gap:var(--space-3) var(--space-8);counter-reset:src;list-style:none;font-size:var(--fs-small)}
.utc-sources li{counter-increment:src;padding-left:2rem;position:relative}
.utc-sources li::before{content:counter(src);position:absolute;left:0;font-family:var(--font-tech);font-weight:700;color:var(--text-muted)}
@media (min-width:960px){.utc-sources{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* footer: always dark */
.utc-footer{--text:var(--raw-paper-50);--text-2:var(--raw-ink-300);--text-muted:var(--raw-ink-250);--border:#2E3235;--brand:var(--raw-coral-400);--brand-hover:#FF8A80;--border-strong:var(--raw-paper-50);background:var(--raw-ink-950);color:var(--raw-paper-50);padding-block:var(--space-8) var(--space-6)}
.utc-footer__grid{display:grid;gap:var(--space-6)}
@media (min-width:640px){.utc-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:960px){.utc-footer__grid{grid-template-columns:2fr 1fr 1fr 1fr}}
.utc-footer h2{font-size:var(--fs-h4);font-weight:800;margin-bottom:var(--space-3)}
.utc-footer li+li{margin-top:var(--space-2)}
.utc-footer a{color:var(--raw-paper-50)}
.utc-footer__base{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;justify-content:space-between;margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--border);font-size:var(--fs-small);color:var(--text-2)}

/* mobile contact bar */
.utc-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;height:3.5rem;background:var(--bg-elevated);border-top:1px solid var(--border-control);box-shadow:var(--shadow-lift);transition:transform var(--dur-std) var(--ease-out)}
.utc-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--text)!important;font-weight:800;font-size:var(--fs-small);text-decoration:none!important}
.utc-bar a+a{border-left:1px solid var(--border)}
.utc-bar a.utc-bar__wa{background:var(--red-fill);color:#fff!important}

body.utc{padding-bottom:3.5rem}
@media (min-width:960px){.utc-bar{display:none}body.utc{padding-bottom:0}}

/* on this page rail */
.utc-rail{display:none}
@media (min-width:1600px){.utc-rail{display:block;position:fixed;right:1.5rem;top:7rem;width:10.5rem;font-size:var(--fs-small);line-height:1.5;border-left:2px solid var(--border)}.utc-rail p{padding-left:.75rem;margin-bottom:.4rem;font-weight:800}.utc-rail a{display:block;padding:.2rem .75rem;color:var(--text-2);text-decoration:none;border-left:2px solid transparent;margin-left:-2px}.utc-rail a.is-on{color:var(--text);font-weight:800;border-left-color:var(--red-fill)}}

/* admin-only dev note */
.utc-todo{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border:1px dashed var(--warning);color:var(--warning);font-size:var(--fs-small);background:var(--bg-light)}

@media (prefers-reduced-motion:no-preference){.utc-hero__signs>*{animation:utc-in var(--dur-reveal) var(--ease-out) both}.utc-hero__signs>*:nth-child(1){animation-delay:var(--stagger)}.utc-hero__signs>*:nth-child(2){animation-delay:calc(var(--stagger)*2)}.utc-hero__signs>*:nth-child(3){animation-delay:calc(var(--stagger)*3)}}
@keyframes utc-in{from{opacity:0;transform:translateY(var(--move-reveal))}to{opacity:1;transform:none}}

/* tap targets for standalone links */
.utc-hero__more a,.utc-hero__req{display:inline-flex;align-items:center;min-height:2.75rem}
.utc-footer li a,.utc-row__go a{display:inline-block;padding-block:.4rem}

/* headings inside summaries keep the summary look */
.utc-acc__t,.utc-dept__t{font:inherit;letter-spacing:inherit;margin:0;color:inherit}

/* ===== MOTION SYSTEM v1 (approved map). Transform, opacity, colour only. Tokens zero out under reduced motion. ===== */
/* M1 header state, M2 mobile hide */
.utc-header{transition:box-shadow var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out)}
.utc-header.is-stuck{box-shadow:var(--shadow-lift)}
@media (max-width:959px){.js .utc-header.is-away:not(:focus-within){transform:translateY(-100%)}}
/* M3 mobile menu opens with a short drop */
@media (max-width:959px){.utc-menu-open .utc-nav{animation:utc-drop var(--dur-std) var(--ease-out)}}
@keyframes utc-drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
/* M5 Lights out cross-fade, only while JS has the class on for 400 ms */
html.utc-theming :where(body,.utc *){transition:background-color var(--dur-reveal) var(--ease-out),color var(--dur-reveal) var(--ease-out),border-color var(--dur-reveal) var(--ease-out)!important}
/* M7 anchor target highlight, once */
.utc-section:target .utc-h2,.utc-dept:target>summary,.utc-acc:target>summary{animation:utc-flash var(--dur-major) var(--ease-out) both}
@keyframes utc-flash{from{background-color:color-mix(in srgb,var(--red-fill) 16%,transparent)}to{background-color:transparent}}
/* M8 accordions and ledger: height opens where the browser supports it, instant elsewhere */
@supports selector(::details-content){
  .utc-acc,.utc-dept,.utc-pick{interpolate-size:allow-keywords}
  .utc-acc::details-content,.utc-dept::details-content,.utc-pick::details-content{block-size:0;overflow:clip;transition:block-size var(--dur-std) var(--ease-out),content-visibility var(--dur-std) allow-discrete}
  .utc-acc[open]::details-content,.utc-dept[open]::details-content,.utc-pick[open]::details-content{block-size:auto}
}
.utc-dept__ico{transition:background-color var(--dur-micro),border-color var(--dur-micro),color var(--dur-micro)}
.utc-tabs__tab{transition:background-color var(--dur-micro),border-color var(--dur-micro)}
/* M10 tabs: panel fades in, no slide */
.utc-tabs__panel{animation:utc-fade var(--dur-std) var(--ease-out)}
@keyframes utc-fade{from{opacity:0}to{opacity:1}}
/* M11 steps and timeline: one-way ink to red when passed */
.utc-steps li::before,.utc-timeline__item::before{transition:background-color var(--dur-std) var(--ease-out),color var(--dur-std) var(--ease-out)}
.utc-steps li.is-past::before,.utc-timeline__item.is-past::before{background:var(--red-fill);color:#fff}
/* M13 contact bar: shown by script after the hero buttons leave view */
.js .utc-bar:not(.is-on){transform:translateY(100%);visibility:hidden;transition:transform var(--dur-std) var(--ease-out),visibility 0s linear var(--dur-std)}
.utc-sent{animation:utc-fade var(--dur-std) var(--ease-out)}
.utc-sent:focus{outline:0}
.utc-btn[disabled]{opacity:.7;cursor:progress}
/* Reduced motion: nothing moves, state changes still apply */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}}

/* ===== Internal pages (v0.3.0) ===== */
.utc-crumbs{font-size:var(--fs-small);margin-bottom:var(--space-3)}
.utc-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--space-2)}
.utc-crumbs li{display:flex;align-items:center;column-gap:var(--space-2)}
.utc-crumbs li+li::before{content:"/";opacity:.65}
.utc-crumbs a,.utc-crumbs span{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:700}
.utc-crumbs a{text-decoration:underline;text-underline-offset:.2em}
.utc-crumbs [aria-current]{font-weight:500}
.utc-crumbs--on-red a,.utc-crumbs--on-red span{color:var(--text-on-signal)}
.utc-glance .utc-facts dd{font-weight:600}
.utc-jump{border-left:var(--bw-strong) solid var(--border-strong);padding-left:var(--space-4)}
.utc-jump>p{font-weight:800;margin-bottom:var(--space-2)}
.utc-jump a{display:flex;align-items:center;min-height:2.75rem;font-weight:700}
@media (min-width:960px){.utc-jump{position:sticky;top:6rem}}
.utc-answer{margin-bottom:var(--space-6)}
.utc-incl{border-bottom:1px solid var(--border);margin-top:var(--space-5)}
.utc-incl__i{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:var(--space-4);padding-block:var(--space-4);border-top:1px solid var(--border)}
.utc-incl__t{font-size:var(--fs-h4);font-weight:800;line-height:1.2;margin-bottom:var(--space-1)}
@media (min-width:960px){.utc-incl{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--space-7)}}
.utc-check li{display:grid;grid-template-columns:1.75rem minmax(0,1fr);gap:var(--space-3);padding-block:var(--space-3);border-top:1px solid var(--border);font-weight:700}
.utc-check li:first-child{border-top:0;padding-top:0}
.utc-check .utc-ico{width:1.5rem;height:1.5rem;color:var(--brand);margin-top:.1rem}
.utc-table th:first-child:empty{width:1%}

/* ===== Mobile pass (v0.3.1) ===== */
:where(.utc) [id]{scroll-margin-top:4.5rem}
.utc-brand{min-height:2.75rem}
.utc-crumbs a{padding-inline:.4rem;margin-inline:-.4rem}
.utc-row__go a{display:inline-flex;align-items:center;min-height:2.75rem}
.utc-sources li{padding-block:.3rem}
@media (hover:none){.utc-sign:hover{transform:none}.utc-table tbody tr:hover{background:none}}
@media (max-width:959px){.utc-footer li a{padding-block:.7rem}}
@media (max-width:639px){
:root{--section-y:3rem;--section-y-tight:2rem}
.utc-tablewrap{overflow:visible;border:0;border-radius:0}
.utc-table{min-width:0;display:block}
.utc-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.utc-table tbody,.utc-table tr,.utc-table td{display:block}
.utc-table tr{border:1px solid var(--border-control);border-radius:var(--r-1);background:var(--bg-elevated);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4)}
.utc-table td{border:0;padding:.3rem 0}
.utc-table td:first-child{font-weight:800;font-size:var(--fs-body);padding-bottom:.4rem}
.utc-table td[data-label]{display:grid;grid-template-columns:minmax(0,7.5rem) minmax(0,1fr);gap:var(--space-3)}
.utc-table td[data-label]::before{content:attr(data-label);font-size:var(--fs-label);font-weight:700;color:var(--text-muted)}
.utc-table .utc-num{white-space:normal}
.utc-hero__signs .utc-sign--lg{flex-direction:row;align-items:center;justify-content:flex-start;min-height:4.5rem;padding:var(--space-3) var(--space-4)}
.utc-hero__signs .utc-sign--lg .utc-ico{width:2.5rem;height:2.5rem;margin:0}
.utc-hero__signs .utc-sign{min-height:5rem;padding:var(--space-3) var(--space-4);gap:var(--space-2)}
.utc-hero__signs{gap:var(--space-3)}
}
@media (max-height:500px) and (orientation:landscape){
.utc-header{position:static}
.utc-bar{height:2.75rem}
body.utc{padding-bottom:2.75rem}
.utc-hero{padding-block:var(--space-4)}
}

/* mobile pass 2 */
.utc-row>a.utc-link,.utc-facts dd a{display:inline-flex;align-items:center;min-height:2.75rem}
@media (max-width:639px){.utc-h1{margin-bottom:var(--space-4)}.utc-hero__actions{margin-block:var(--space-4) var(--space-2)}}
@media (max-height:500px) and (orientation:landscape){.utc-bar{height:2.9rem}body.utc{padding-bottom:2.9rem}}

/* sticky off on touch widths: sticky headings overlapped content */
@media (max-width:959px){.utc-sticky,.utc-jump{position:static!important}}

/* conversion pass: next-step strip */
.utc-next{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-6);padding:var(--space-4) var(--space-5);border:var(--bw-strong) solid var(--border-strong);border-radius:var(--r-1);background:var(--bg-elevated)}
.utc-next p{flex:1 1 16rem;font-weight:800;margin:0}
@media (max-width:639px){.utc-next .utc-btn{width:100%}}

/* a11y: focus ring must contrast with the red band; skip-link target takes no ring */
.utc-signal :focus-visible{outline-color:var(--text-on-signal)}
#main:focus{outline:0}

/* real shop photo and map */
.utc-shop{margin:0}
.utc-shop__img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;border:var(--bw-strong) solid var(--border-strong);border-radius:var(--r-1)}
.utc-map iframe{display:block;width:100%;height:16rem;border:1px solid var(--border-control);border-radius:var(--r-1)}

/* rhythm: ink band for the serious section, white band for prices, uneven padding */
.utc-section--white{background:var(--bg-elevated)}
.utc-section--ink{--bg-light:var(--raw-ink-950);--bg-secondary:var(--raw-ink-900);--bg-surface:var(--raw-ink-900);--bg-elevated:#272B2E;--text:var(--raw-paper-50);--text-2:var(--raw-ink-300);--text-muted:var(--raw-ink-250);--border:#2E3235;--border-control:#6F777A;--border-strong:var(--raw-paper-50);--brand:var(--raw-coral-400);--brand-hover:#FF8A80;--brand-active:#FFA8A0;--focus:var(--raw-paper-50);--success:#4CC27A;--warning:#F2B134;--error:#FF7A70}
#about,#rules{padding-block:calc(var(--section-y)*1.3)}
#buildings{padding-block:var(--section-y-tight)}
/* price filter (no JavaScript) */
.utc-pf__opts{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-4)}
.utc-pf__opts label{display:inline-flex;align-items:center;min-height:2.75rem;padding:.4rem 1rem;border:2px solid var(--border-control);border-radius:var(--r-1);font-weight:700;cursor:pointer}
#pf-all:checked~.utc-pf__opts label[for=pf-all],#pf-dcp:checked~.utc-pf__opts label[for=pf-dcp],#pf-co2:checked~.utc-pf__opts label[for=pf-co2],#pf-auto:checked~.utc-pf__opts label[for=pf-auto]{background:var(--text);color:var(--bg-light);border-color:var(--text)}
#pf-all:focus-visible~.utc-pf__opts label[for=pf-all],#pf-dcp:focus-visible~.utc-pf__opts label[for=pf-dcp],#pf-co2:focus-visible~.utc-pf__opts label[for=pf-co2],#pf-auto:focus-visible~.utc-pf__opts label[for=pf-auto]{outline:3px solid var(--focus);outline-offset:2px}
#pf-dcp:checked~.utc-tablewrap tbody tr:not([data-t=dcp]),#pf-co2:checked~.utc-tablewrap tbody tr:not([data-t=co2]),#pf-auto:checked~.utc-tablewrap tbody tr:not([data-t=auto]){display:none}
#prices .utc-small{margin-top:var(--space-4)}
#prices .utc-actions{margin-top:var(--space-5)}

/* Extinguisher guide */
.utc-find__pick{border:0;margin:var(--space-5) 0 0;padding:0;min-width:0}
.utc-find__legend{font-weight:700;margin:0 0 var(--space-3);padding:0}
.utc-find__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.utc-find__opt{position:relative}
.utc-find__opt input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.utc-find__opt label{display:flex;align-items:center;gap:.6rem;min-height:3.75rem;padding:.6rem .8rem;border:2px solid var(--border-strong);border-radius:6px;background:var(--bg-light);font-weight:600;line-height:1.25;overflow-wrap:anywhere}
.utc-find__opt .utc-ico{flex:none;width:1.6rem;height:1.6rem;color:var(--brand,var(--red-fill))}
.utc-find__opt input:checked+label{border-color:var(--red-fill);background:var(--red-fill);color:#fff}
.utc-find__opt input:checked+label .utc-ico{color:#fff}
.utc-find__opt input:focus-visible+label{outline:3px solid var(--text);outline-offset:2px}
.utc-find__out{margin-top:var(--space-5)}
.utc-find__res{border-left:6px solid var(--red-fill);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-radius:6px;margin-bottom:var(--space-4)}
.utc-find__res:focus{outline:0}
.utc-find__res p{margin:.5rem 0}
.utc-find__pickline{font-size:var(--fs-body-lg)}
.utc-find__chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}
.utc-find__chip{position:relative}
.utc-find__chip input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.utc-find__chip label{display:inline-flex;align-items:center;min-height:2.75rem;padding:.4rem .9rem;border:2px solid var(--border-strong);border-radius:6px;font-weight:600}
.utc-find__chip input:checked+label{border-color:var(--red-fill);background:var(--red-fill);color:#fff}
.utc-find__chip input:focus-visible+label{outline:3px solid var(--text);outline-offset:2px}
.utc-find__note{border-left:6px solid var(--border-strong);padding:.4rem .8rem;margin:.5rem 0}
.utc-find__act{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-top:var(--space-4)}
.utc-find__act .utc-btn{flex:1 1 14rem}
.utc-find__reset{min-height:2.75rem;padding:.4rem 1rem;background:none;border:0;color:var(--text);text-decoration:underline;font:inherit;cursor:pointer}
.utc-find__foot{margin-top:var(--space-5);color:var(--text-2);font-size:var(--fs-small)}
html:not(.js) .utc-find__pick,html:not(.js) [data-find-more]{display:none}
.js .utc-find__res,.js [data-find-more],.js [data-find-act]{display:none}
.js .utc-find__res.is-on{display:block}
.js .utc-find.has-pick [data-find-more]{display:block}
.js .utc-find.has-pick [data-find-act]{display:flex}
.utc-find [hidden]{display:none!important}
@media (min-width:640px){.utc-find__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.utc-find__act .utc-btn{flex:0 1 auto}}

/* Recent projects strip */
.utc-proj{display:flex;gap:var(--space-3);overflow-x:auto;scroll-snap-type:x mandatory;list-style:none;margin:var(--space-5) 0 0;padding:0 0 .75rem;-webkit-overflow-scrolling:touch}
.utc-proj li{flex:0 0 62%;scroll-snap-align:start;margin:0;padding:0}
.utc-proj figure{margin:0}
.utc-proj img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:6px}
.utc-proj figcaption{font-weight:600;margin-top:.5rem;line-height:1.3}
.utc-proj:focus-visible{outline:3px solid var(--text);outline-offset:3px}
@media (min-width:640px){.utc-proj li{flex-basis:30%}}
@media (min-width:960px){.utc-proj{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible}}

/* Fire type grid */
.utc-fit-block{margin-top:var(--space-7)}
.utc-fit__warn{display:flex;gap:.75rem;align-items:center;margin:var(--space-4) 0;padding:.85rem 1rem;background:var(--raw-red-100);border-left:6px solid var(--raw-red-600);border-radius:6px;color:var(--raw-ink-900)}
.utc-fit__warn .utc-ico{flex:none;width:1.75rem;height:1.75rem;color:var(--raw-red-600)}
.utc-fit-table{width:100%;border-collapse:separate;border-spacing:0 .5rem;font-size:var(--fs-small)}
.utc-fit-table th,.utc-fit-table td{text-align:center;vertical-align:middle;padding:.75rem .5rem;background:var(--bg-secondary)}
.utc-fit-table thead th{background:none;font-weight:800;padding-block:.25rem}
.utc-fit-table thead th:first-child,.utc-fit-table tbody th{text-align:left}
.utc-fit-table tbody th{font-weight:800;font-size:var(--fs-body);padding-left:1rem;border-radius:6px 0 0 6px}
.utc-fit-table td:last-child{border-radius:0 6px 6px 0}
.utc-fit__ico{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin:0 auto .35rem;border-radius:50%;background:var(--raw-ink-900);color:#fff}
.utc-fit__ico .utc-ico{width:1.5rem;height:1.5rem}
.utc-fit{display:inline-flex;flex-direction:column;align-items:center;gap:.35rem;font-weight:700}
.utc-fit__chip{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;border:2px solid transparent}
.utc-fit__chip .utc-ico{width:1.25rem;height:1.25rem}
.utc-fit--yes .utc-fit__chip{background:var(--raw-ink-900);color:#fff}
.utc-fit--no .utc-fit__chip{background:var(--raw-red-100);color:var(--raw-red-600);border-color:var(--raw-red-600)}
.utc-fit--no .utc-fit__t{color:var(--raw-red-600)}
.utc-fit--part .utc-fit__chip{background:transparent;color:var(--raw-ink-900);border-color:var(--raw-ink-900)}
.utc-fit__t{font-size:var(--fs-label);line-height:1.25;max-width:8rem}
.utc-fit__note{margin-top:var(--space-4);color:var(--text-2);font-size:var(--fs-small)}
@media (max-width:800px){
.utc-fit-table,.utc-fit-table tbody,.utc-fit-table tr,.utc-fit-table th,.utc-fit-table td{display:block}
.utc-fit-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.utc-fit-table tr{margin-bottom:var(--space-3);border:1px solid var(--border-control);border-radius:6px;background:var(--bg-secondary);overflow:hidden}
.utc-fit-table tbody th{border-radius:0;background:var(--raw-ink-900);color:#fff;padding:.7rem 1rem}
.utc-fit-table td{display:grid;grid-template-columns:minmax(0,7rem) minmax(0,1fr);gap:var(--space-3);align-items:center;text-align:left;padding:.55rem 1rem;border-radius:0!important;border-top:1px solid var(--border)}
.utc-fit-table td::before{content:attr(data-label);font-weight:700;color:var(--text-muted);font-size:var(--fs-label)}
.utc-fit{flex-direction:row;gap:.6rem;text-align:left}
.utc-fit__chip{flex:none;width:2rem;height:2rem}
.utc-fit__t{max-width:none}
}

/* Service page: prose subsections and process infographic (v0.3.15) */
.utc-subs{display:grid;gap:var(--space-6);margin-top:var(--space-6)}
@media (min-width:960px){.utc-subs{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-7)}.utc-subs--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.utc-flow{margin:var(--space-6) 0 0;padding:0}
.utc-flow__list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.utc-flow__node{position:relative;padding:0 0 var(--space-5) 3.5rem;border-left:var(--bw-strong) solid var(--brand);margin-left:1.25rem}
.utc-flow__node:last-child{padding-bottom:0;border-left-color:transparent}
.utc-flow__n{position:absolute;left:-1.25rem;top:0;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-tech);font-weight:700}
.utc-flow__t{margin:0;font-family:var(--font-tech);font-weight:700;font-size:var(--fs-h4);line-height:var(--lh-h4);color:var(--text)}
.utc-flow__d{margin:.25rem 0 0;color:var(--text-2);font-size:var(--fs-body);line-height:var(--lh-body)}
.utc-flow__alt{margin:var(--space-5) 0 0;padding:var(--space-4);background:var(--bg-dark-2);color:var(--text-on-dark);border-left:6px solid var(--brand-on-dark);border-radius:6px;font-size:var(--fs-body)}
.utc-flow figcaption{margin-top:var(--space-3);color:var(--text-muted)}
@media (min-width:960px){
.utc-flow__list{grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--space-4)}
.utc-flow__node{padding:3.25rem var(--space-3) 0 0;border-left:0;margin-left:0;border-top:var(--bw-strong) solid var(--brand)}
.utc-flow__node:last-child{border-top-color:var(--brand)}
.utc-flow__n{left:0;top:-1.25rem}
.utc-flow__node:not(:last-child)::after{content:"";position:absolute;right:-.6rem;top:-.45rem;width:.85rem;height:.85rem;border-top:var(--bw-strong) solid var(--brand);border-right:var(--bw-strong) solid var(--brand);transform:rotate(45deg)}
}

/* Service page rhythm: stat band, callout, method box (v0.3.16) */
.utc-stats--4{margin-bottom:var(--space-7)}
@media (min-width:640px){.utc-stats--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:960px){.utc-stats--4{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--space-6)}}
.utc-stats--4 .utc-stat__n{font-size:clamp(2rem,1.5rem + 2vw,3.25rem);overflow-wrap:anywhere}
.utc-stats--4 .utc-stat__l{font-weight:500;color:var(--text-2);font-size:var(--fs-body)}
.utc-section--ink .utc-stat{border-top-color:var(--brand-on-dark)}
.utc-section--ink .utc-stat__n{color:var(--text-on-dark)}
.utc-callout{margin:var(--space-6) 0 0;padding:var(--space-5);background:var(--bg-elevated);border-left:6px solid var(--brand);border-radius:6px}
.utc-callout p+p{margin-top:var(--space-3)}
.utc-section--white .utc-callout{background:var(--bg-light)}
.utc-method h3{margin:0 0 var(--space-2);font-size:var(--fs-h4)}
.utc-method p+p{margin-top:var(--space-2)}
.utc-subs__i .utc-h3{font-size:var(--fs-h4);line-height:var(--lh-h4)}
@media (min-width:960px){.utc-subs--3 .utc-text{font-size:var(--fs-small)}}

/* Footer v0.3.17: inset dark panel, 20px sign radius, no wordmark */
.utc-footer{margin:12px;border-radius:var(--r-sign);overflow:hidden;padding-block:clamp(2rem,3vw + 1rem,4.5rem) 0}
.utc-f{display:grid;gap:var(--space-7) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}
.utc-f__brand,.utc-f__contact{grid-column:1/-1}
.utc-f__name{display:flex;align-items:center;gap:var(--space-3);font-weight:800;font-size:1.15rem;letter-spacing:-.02em;line-height:1.15}
.utc-f__tile{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:12px;background:var(--raw-red-600)}
.utc-f__tile img{width:auto;height:30px;filter:brightness(0) invert(1)}
.utc-f__tag{margin-top:var(--space-5);font-size:1.35rem;line-height:1.25;font-weight:800;letter-spacing:-.025em;max-width:16ch;color:var(--raw-paper-50)}
.utc-f__sub{margin-top:var(--space-3);color:var(--raw-ink-300);font-size:var(--fs-small);line-height:1.5;max-width:30ch}
.utc-f__col h2{font-size:.8125rem;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--raw-ink-250);margin-bottom:var(--space-4);font-weight:700}
.utc-f__col ul{list-style:none;padding:0;margin:0;font-size:var(--fs-small)}
.utc-f__col a{text-decoration:none}
.utc-f__col a:hover{color:var(--raw-coral-400)}
.utc-f__btns{display:grid;gap:var(--space-3);margin-bottom:var(--space-4)}
.utc-footer a.utc-f__btn{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:var(--r-1);font-weight:800;font-size:1rem;text-decoration:none}
.utc-footer a.utc-f__btn--call{background:var(--raw-red-600);color:#fff}
.utc-footer a.utc-f__btn--call:hover{background:var(--raw-red-700);color:#fff}
.utc-footer a.utc-f__btn--wa{background:var(--raw-paper-50);color:var(--raw-ink-950)}
.utc-footer a.utc-f__btn--wa:hover{background:var(--raw-paper-100);color:var(--raw-ink-950)}
.utc-f__contact address{font-style:normal;color:var(--raw-ink-300);font-size:var(--fs-small);line-height:1.55}
.utc-f__contact address p+p{margin-top:var(--space-2)}
.utc-f__contact address a{color:var(--raw-coral-400);font-weight:600}
.utc-f__soc{display:flex;gap:var(--space-3);margin-top:var(--space-5)}
.utc-f__soc a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--raw-ink-900)}
.utc-f__soc svg{width:20px;height:20px;fill:none;stroke:var(--raw-paper-50);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.utc-footer__base{margin-top:var(--space-7);padding-bottom:var(--space-6);padding-top:var(--space-5)}
@media (min-width:640px){.utc-f__btns{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.utc-f{grid-template-columns:1.35fr repeat(var(--utc-fc,3),minmax(0,1fr)) 1.25fr}.utc-f__brand,.utc-f__contact{grid-column:auto}.utc-f__btns{grid-template-columns:1fr}}
@media (max-width:520px){.utc-footer{margin:8px}}
.utc-f__map{margin-top:var(--space-5);border-radius:12px;overflow:hidden;aspect-ratio:4/3;max-width:420px;background:var(--raw-ink-900)}
.utc-f__map iframe{display:block;width:100%;height:100%;border:0}

/* Form note sits on a white panel, so it needs body-muted text, not the on-red tint */
.utc-panel--form .utc-small{color:var(--text-muted)}
.utc-panel--form .utc-small a{color:var(--brand)}

/* ===== Navbar v0.3.21 (approved 19 Oct 2026). Mega panels, search, mobile drawer. ===== */
.utc-header__bar{position:relative;gap:var(--space-4);min-height:3.75rem}
.utc-header a.utc-brand span{white-space:nowrap}
.utc-hnav{display:none}
.utc-hnav ul{display:flex;gap:var(--space-1);list-style:none;margin:0 0 0 var(--space-2);padding:0}
.utc-hnav li{list-style:none;margin:0;padding:0}
.utc-hn{display:flex;align-items:center;gap:6px;min-height:2.75rem;padding:0 .875rem;border:0;border-radius:10px;background:none;color:var(--text)!important;font:700 var(--fs-nav)/1 var(--font-sans);text-decoration:none!important;cursor:pointer;transition:background var(--dur-std) var(--ease-out),color var(--dur-std) var(--ease-out)}
.utc-hn:hover,.utc-hn[aria-expanded="true"]{background:var(--bg-secondary)}
.utc-hn[aria-expanded="true"]{color:var(--brand)!important}
.utc-chev{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none;transition:transform var(--dur-std) var(--ease-out)}
.utc-hn[aria-expanded="true"] .utc-chev,.utc-dacc.is-open>button .utc-chev{transform:rotate(180deg)}
.utc-ibtn{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border:2px solid var(--border-strong);border-radius:50%;background:none;color:var(--text);cursor:pointer;flex:none;transition:background var(--dur-std) var(--ease-out)}
.utc-ibtn:hover{background:var(--bg-secondary)}
.utc-ibtn .utc-ico{width:1.25rem;height:1.25rem}
.utc-header__cta{gap:var(--space-2)}
.utc-header .utc-menu-btn{display:inline-flex;border-radius:50%}
.utc-header__call,.utc-header__wa{display:none}

/* mega panels (desktop) */
.utc-mega{position:absolute;left:var(--container-pad);right:var(--container-pad);top:100%;padding-top:.5rem;z-index:5;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out),visibility 0s linear var(--dur-std)}
.utc-mega.is-on{opacity:1;visibility:visible;transform:none;transition:opacity var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out)}
.utc-mega__p{display:grid;grid-template-columns:1fr 1.75fr 1fr;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-sign);box-shadow:var(--shadow-lift);overflow:hidden}
.utc-mega__in{padding:2rem 2rem 2rem 2.125rem}
.utc-mega__h{margin:0;font-weight:800;font-size:1.5rem;line-height:1.15;letter-spacing:-.025em;max-width:15ch;color:var(--text)}
.utc-mega__t{margin:.75rem 0 0;color:var(--text-muted);font-size:.95rem;line-height:1.55;max-width:32ch}
.utc-mega a.utc-mega__btn{display:inline-flex;align-items:center;min-height:2.75rem;margin-top:1.375rem;padding:0 1.125rem;border-radius:var(--r-1);background:var(--text);color:var(--bg-light)!important;font-weight:800;text-decoration:none!important;transition:opacity var(--dur-std)}
.utc-mega a.utc-mega__btn:hover{opacity:.88}
.utc-mega__list{display:grid;grid-template-columns:1fr 1fr;gap:.25rem .625rem;align-content:start;padding:1.625rem 1.5rem;border-left:1px solid var(--border);border-right:1px solid var(--border)}
.utc-mega a.utc-mega__a,.utc-drawer a.utc-mega__a{display:flex;align-items:center;gap:.875rem;padding:.75rem;border-radius:12px;color:var(--text)!important;text-decoration:none!important;transition:background var(--dur-std) var(--ease-out)}
.utc-mega a.utc-mega__a:hover{background:var(--bg-surface)}
.utc-mega__a.is-top{grid-column:1/-1;background:var(--bg-light)}
.utc-mega__a b{display:block;font-weight:800;font-size:.98rem;line-height:1.2;letter-spacing:-.01em}
.utc-mega__a small{display:block;margin-top:3px;color:var(--text-muted);font-size:.84rem;line-height:1.35}
.utc-mega__ic{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:12px;background:var(--bg-light);color:var(--text);transition:background var(--dur-std),color var(--dur-std)}
.utc-mega__ic .utc-ico{width:1.375rem;height:1.375rem}
.utc-mega__a.is-top .utc-mega__ic{background:var(--raw-red-600);color:#fff}
.utc-mega a.utc-mega__a:hover .utc-mega__ic{background:var(--raw-red-600);color:#fff}
.utc-mega__card{display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem;padding:1.625rem}
.utc-mega__card--red{background:var(--raw-red-600);color:#fff}
.utc-mega__card--dark{background:var(--raw-ink-950);color:var(--raw-paper-50)}
.utc-mega__cico{width:1.875rem;height:1.875rem;margin-bottom:.875rem}
.utc-mega__card--dark .utc-mega__cico{color:var(--raw-coral-400)}
.utc-mega__ct{margin:0;font-weight:800;font-size:1.3rem;line-height:1.2;letter-spacing:-.02em}
.utc-mega__cp{margin:.625rem 0 0;font-size:.93rem;line-height:1.5;opacity:.92}
.utc-mega a.utc-mega__cbtn{align-self:flex-start;display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.125rem;border-radius:var(--r-1);background:#fff;color:var(--raw-ink-950)!important;font-weight:800;text-decoration:none!important}
.utc-mega a.utc-mega__cbtn:hover{background:var(--raw-paper-100)}
.utc-mega a.utc-mega__clink{color:var(--raw-coral-400)!important;font-weight:800;text-decoration:none!important}
.utc-mega a.utc-mega__clink:hover{text-decoration:underline!important}

/* scrim */
.utc-scrim{position:fixed;inset:0;z-index:40;background:rgba(18,20,22,.3);opacity:0;visibility:hidden;transition:opacity var(--dur-std) var(--ease-out),visibility 0s linear var(--dur-std)}
.utc-header{z-index:50}
body:has(.utc-mega-open) .utc-scrim,body:has(.utc-search-open) .utc-scrim{opacity:1;visibility:visible;transition:opacity var(--dur-std) var(--ease-out)}

/* search */
.utc-srch{position:absolute;inset:0 var(--container-pad);display:flex;align-items:center;gap:var(--space-2);background:var(--bg-light);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out),visibility 0s linear var(--dur-std)}
.utc-search-open .utc-srch{opacity:1;visibility:visible;transform:none;transition:opacity var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out)}
.utc-srch__f{flex:1;display:flex;align-items:center;gap:.75rem;min-height:3rem;padding:0 1rem;border:2px solid var(--border-strong);border-radius:var(--r-1);background:var(--bg-elevated);color:var(--text)}
.utc-srch input,.utc-drawer__s input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--text);font:600 1rem var(--font-sans)}
.utc-srch input::placeholder,.utc-drawer__s input::placeholder{color:var(--text-muted);font-weight:500}
.utc-srch__f:focus-within,.utc-drawer__s:focus-within{outline:3px solid var(--focus);outline-offset:2px}
.utc-srch input:focus-visible,.utc-drawer__s input:focus-visible{outline:0}

/* mobile drawer */
.utc-drawer{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;background:var(--bg-light);transform:translateX(100%);visibility:hidden;transition:transform .28s var(--ease-out),visibility 0s linear .28s}
.utc-drawer.is-on{transform:none;visibility:visible;transition:transform .28s var(--ease-out)}
html.utc-noscroll{overflow:hidden}
.utc-drawer__top{flex:none;display:flex;align-items:center;justify-content:space-between;min-height:3.75rem;padding:0 var(--container-pad);border-bottom:1px solid var(--border)}
.utc-drawer__body{flex:1;overflow:auto;padding:.875rem var(--container-pad) .5rem}
.utc-drawer__s{display:flex;align-items:center;gap:.625rem;min-height:3rem;padding:0 .875rem;margin-bottom:.625rem;border:2px solid var(--border-strong);border-radius:var(--r-1);background:var(--bg-elevated);color:var(--text)}
.utc-dacc{border-bottom:1px solid var(--border)}
.utc-dacc>button,.utc-dacc a.utc-dacc__row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:3.25rem;padding:0;border:0;background:none;color:var(--text)!important;font:800 1.1rem/1.2 var(--font-sans);letter-spacing:-.015em;text-align:left;text-decoration:none!important;cursor:pointer}
.utc-dacc__in{display:none;padding:0 0 .75rem}
.utc-dacc.is-open .utc-dacc__in{display:grid;gap:2px}
.utc-drawer a.utc-mega__a{padding:.375rem .25rem}
.utc-drawer .utc-mega__ic{width:2.5rem;height:2.5rem;background:transparent}
.utc-drawer .utc-mega__a.is-top .utc-mega__ic{background:var(--raw-red-600)}
.utc-drawer__foot{flex:none;display:grid;gap:.625rem;padding:.75rem var(--container-pad) 1rem;border-top:1px solid var(--border);background:var(--bg-light)}
.utc-drawer__foot .utc-btn{min-height:3.125rem;justify-content:center}
.utc-drawer__foot p{margin:0;text-align:center;color:var(--text-muted);font-size:.85rem;line-height:1.4}

@media (min-width:1100px){
  .utc-header__bar{min-height:4.5rem;gap:var(--space-5)}
  .utc-hnav{display:block}
  .utc-header .utc-menu-btn,.utc-drawer{display:none}
  .utc-header__call{display:inline-flex}
  .utc-header__wa{display:inline-flex}
}
@media (max-width:1099px){
  .utc-mega{display:none}
  .utc-scrim{display:none}
  .utc-srch{display:none}
}
@media (prefers-reduced-motion:reduce){.utc-drawer,.utc-mega,.utc-srch{transition:none}}
@media (max-width:1099px){.utc-header .utc-brand{flex:1 1 auto;min-width:0}.utc-header a.utc-brand span{white-space:normal;font-size:.95rem;line-height:1.1}.utc-header__cta{flex:none}}

/* ===== Search suggestions v0.3.23 ===== */
.utc-srch__f label,.utc-drawer__sl{display:inline-flex;align-items:center}
.utc-sug{list-style:none;margin:0;padding:.5rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-sign);box-shadow:var(--shadow-lift);max-height:min(70vh,26rem);overflow:auto;z-index:6}
.utc-sug[hidden]{display:none}
.utc-srch .utc-sug{position:absolute;left:0;right:0;top:calc(100% + .5rem)}
.utc-sug li{margin:0;padding:0;list-style:none}
.utc-sug__h{padding:.5rem .875rem .25rem;font:700 .85rem/1.2 var(--font-sans);color:var(--text-muted)}
.utc-sug a{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:2.75rem;padding:.5rem .875rem;border-radius:12px;color:var(--text)!important;font-weight:700;font-size:1rem;line-height:1.25;text-decoration:none!important;transition:background var(--dur-micro) var(--ease-out)}
.utc-sug li.is-active a{background:var(--bg-surface);box-shadow:inset 3px 0 0 var(--brand)}
.utc-sug mark{background:none;color:var(--brand);font-weight:800}
.utc-sug__t{flex:none;color:var(--text-muted);font-size:.84rem;font-weight:600}
.utc-sug li:not(.utc-sug__x)+.utc-sug__x{margin-top:.375rem;padding-top:.375rem;border-top:1px solid var(--border)}
.utc-sug__x a{justify-content:flex-start;gap:.75rem;color:var(--brand)!important;font-weight:800}
.utc-sug__x .utc-ico{width:1.25rem;height:1.25rem;flex:none}
.utc-sug__none{padding:.875rem;color:var(--text-muted);font-size:.95rem}
.utc-drawer .utc-sug{position:static;box-shadow:none;margin:0 0 .75rem;max-height:50vh;border-radius:12px}
@media (forced-colors:active){.utc-sug li.is-active a{outline:2px solid Highlight;outline-offset:-2px}}
/* UI cards v0.3.25 */
.utc-subs__i{position:relative;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:var(--space-6) var(--space-5) var(--space-5);box-shadow:0 1px 0 rgba(0,0,0,.03);transition:transform var(--dur-std) var(--ease-out),box-shadow var(--dur-std) var(--ease-out),border-color var(--dur-std) var(--ease-out)}
.utc-subs__i::before{content:"";position:absolute;left:var(--space-5);right:var(--space-5);top:0;height:3px;border-radius:0 0 3px 3px;background:var(--brand);transform-origin:left;transform:scaleX(.22);transition:transform var(--dur-reveal) var(--ease-out)}
.utc-subs__i:hover,.utc-subs__i:focus-within{transform:translateY(var(--move-hover));box-shadow:var(--shadow-lift);border-color:var(--border-strong)}
.utc-subs__i:hover::before,.utc-subs__i:focus-within::before,.utc-subs__i.is-in::before{transform:scaleX(1)}
.utc-subs__ic{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--r-1);background:var(--bg-signal);color:var(--brand)}
.utc-subs__ic svg{width:1.5rem;height:1.5rem;fill:currentColor}
.utc-section--alt .utc-subs__i{background:var(--bg-elevated,var(--bg-surface))}
.utc-section--ink .utc-subs__i{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16)}
.utc-section--ink .utc-subs__ic{background:rgba(255,255,255,.1);color:var(--raw-coral-400)}
.utc-stat{background:var(--bg-surface);border:1px solid var(--border);border-top:3px solid var(--brand);border-radius:var(--r-sign-sm);padding:var(--space-4) var(--space-5)}
.utc-section--ink .utc-stat{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16);border-top-color:var(--raw-coral-400)}
.utc-row{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:var(--space-5);margin-bottom:var(--space-3);transition:transform var(--dur-std) var(--ease-out),box-shadow var(--dur-std) var(--ease-out)}
.utc-rows{border-bottom:0}
.utc-row:hover{transform:translateY(var(--move-hover));box-shadow:var(--shadow-lift)}
.utc-jump{background:var(--bg-surface);border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:var(--r-sign-sm);padding:var(--space-5)}
.utc-jump a{border-bottom:1px solid var(--border)}
.utc-jump a:last-child{border-bottom:0}
.utc-callout{border-radius:var(--r-sign-sm)}
.utc-rv{opacity:0;transform:translateY(var(--move-reveal));transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out);transition-delay:calc(var(--i,0)*var(--stagger))}
.utc-rv.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.utc-rv{opacity:1;transform:none;transition:none}}
/* UI cards fix v0.3.26: stroke icons, not filled squares */
.utc-subs__ic{width:3rem;height:3rem;border-radius:50%;background:var(--bg-light);color:var(--brand);border:1.5px solid var(--brand);box-shadow:0 0 0 5px var(--bg-secondary,transparent);transition:background var(--dur-std) var(--ease-out),color var(--dur-std) var(--ease-out),transform var(--dur-std) var(--ease-out)}
.utc-subs__ic svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-width:1.9}
.utc-subs__i:hover .utc-subs__ic,.utc-subs__i:focus-within .utc-subs__ic{background:var(--brand);color:#fff;transform:rotate(-6deg) scale(1.06)}
.utc-subs__i{background:linear-gradient(180deg,var(--bg-secondary,var(--bg-surface)) 0,var(--bg-surface) 7rem)}
.utc-section--ink .utc-subs__ic{background:transparent;border-color:var(--raw-coral-400);color:var(--raw-coral-400);box-shadow:none}
.utc-section--ink .utc-subs__i{background:rgba(255,255,255,.05)}
/* UI pass 2 v0.3.27: tables, body text, callout, sources */
@media (min-width:720px){
.utc-tablewrap{border:1px solid var(--border-control);border-radius:var(--r-sign-sm);overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.03)}
.utc-table thead th{background:var(--raw-ink-950);color:#fff;padding:.9rem 1rem;font-size:var(--fs-small)}
.utc-table tbody tr:nth-child(even) td{background:var(--bg-secondary)}
.utc-table tbody td:first-child{font-weight:800;border-left:3px solid transparent;transition:border-color var(--dur-std) var(--ease-out)}
.utc-table tbody tr:hover td{background:var(--bg-signal-soft,var(--bg-secondary))}
.utc-table tbody tr:hover td:first-child{border-left-color:var(--brand)}
}
.utc-section>.utc-wrap>.utc-text:not(.utc-callout){background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:var(--space-5) var(--space-6);box-shadow:0 1px 0 rgba(0,0,0,.03)}
.utc-section--ink>.utc-wrap>.utc-text:not(.utc-callout){background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16)}
.utc-callout{position:relative;padding-left:calc(var(--space-5) + 3.25rem);border-left-width:0;border:1px solid var(--border);box-shadow:inset 6px 0 0 var(--brand)}
.utc-callout::before{content:"!";position:absolute;left:var(--space-5);top:var(--space-5);width:2.25rem;height:2.25rem;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.utc-sources{gap:var(--space-3) var(--space-5)}
.utc-sources li{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-1);padding:var(--space-3) var(--space-4) var(--space-3) 2.75rem}
.utc-sources li::before{left:var(--space-4);top:var(--space-3);color:var(--brand)}
/* UI pass 3 v0.3.28: accordions as cards */
.utc-acc,.utc-pick{background:var(--bg-surface);border:1px solid var(--border)!important;border-radius:var(--r-sign-sm);padding-inline:var(--space-5);margin-bottom:var(--space-3);transition:box-shadow var(--dur-std) var(--ease-out),border-color var(--dur-std) var(--ease-out)}
.utc-acc:hover,.utc-pick:hover{box-shadow:var(--shadow-lift)}
.utc-acc[open],.utc-pick[open]{border-color:var(--brand)!important;box-shadow:inset 4px 0 0 var(--brand)}
.utc-pick:last-of-type{border-bottom:1px solid var(--border)}
/* Audit fixes v0.3.29: 14px labels, Order links as buttons, source tap size */
.utc-pcard__cat,.utc-cat__lab,.utc-fit__t{font-size:1rem}
.utc-cat__q::placeholder{font-size:.875rem}
.utc-table td a[href*="wa.me"],.utc-table td a[href*="whatsapp"]{display:inline-flex;align-items:center;min-height:2.5rem;padding:0 var(--space-4);background:var(--brand);color:#fff;border-radius:var(--r-1);font-weight:800;text-decoration:none;transition:background var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out)}
.utc-table td a[href*="wa.me"]:hover,.utc-table td a[href*="whatsapp"]:hover{background:var(--brand-hover);transform:translateY(var(--move-hover))}
.utc-sources a{display:inline-block;padding-block:.35rem}
/* Mobile collapse v0.3.30 (content stays in the page) */
.utc-subs__i.is-acc>.utc-h3{margin:0}
.utc-subs__btn{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:2.75rem;cursor:pointer;font:inherit;font-weight:800;line-height:1.25}
.utc-subs__btn:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:var(--r-1)}
.utc-subs__btn::after{content:"";flex:none;width:.6rem;height:.6rem;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(45deg);transition:transform var(--dur-std) var(--ease-out)}
.utc-subs__i.is-open .utc-subs__btn::after{transform:rotate(225deg)}
.utc-subs__i.is-acc:not(.is-open)>.utc-text{display:none}
.utc-subs__i.is-acc{gap:var(--space-3)}
.utc-srcs{border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:0 var(--space-4);background:var(--bg-surface)}
.utc-srcs>summary{min-height:2.75rem;display:flex;align-items:center;font-weight:800;cursor:pointer}
.utc-srcs[open]{padding-bottom:var(--space-3)}
/* v0.3.31 */
.utc-split--6>.utc-subs__i{min-width:0}

/* v0.3.32 homepage and split blocks as cards */
.utc-split__a.utc-stack:has(>h3.utc-h3):not(.utc-subs__i){position:relative;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:var(--space-6) var(--space-5) var(--space-5);box-shadow:0 1px 0 rgba(0,0,0,.03)}
.utc-split__a.utc-stack:has(>h3.utc-h3):not(.utc-subs__i)::before{content:"";position:absolute;left:var(--space-5);right:var(--space-5);top:0;height:3px;border-radius:0 0 3px 3px;background:var(--brand)}
.utc-split__b:has(>ol.utc-steps){background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sign-sm);padding:var(--space-5)}
.utc-section--ink .utc-split__a.utc-stack:has(>h3.utc-h3):not(.utc-subs__i),.utc-section--ink .utc-split__b:has(>ol.utc-steps){background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16)}
.utc-pcard .utc-pcard__cat,.utc-cat .utc-cat__lab,.utc-fit .utc-fit__t{font-size:.9375rem}

/* v0.3.39 balanced boxes: no empty half rows */
@media (min-width:960px){
.utc-section>.utc-wrap>.utc-text:not(.utc-callout):not(.utc-x):not(.utc-y){grid-column:1/-1;max-width:none}
}
@media (min-width:1100px){
.utc-section>.utc-wrap>.utc-text:not(.utc-callout):not(.utc-x):not(.utc-y){column-count:2;column-gap:var(--space-7)}
.utc-section>.utc-wrap>.utc-text:not(.utc-callout)>*{break-inside:avoid;margin-top:0;margin-bottom:var(--space-4)}
.utc-section>.utc-wrap>.utc-text:not(.utc-callout)>:last-child{margin-bottom:0}
}
@media (min-width:720px){
.utc-subs>.utc-subs__i:last-child:nth-child(odd){grid-column:1/-1}
.utc-subs--3>.utc-subs__i:last-child:nth-child(3n+1){grid-column:1/-1}
.utc-subs--3>.utc-subs__i:last-child:nth-child(3n+2){grid-column:span 2}
}
@media (min-width:960px){
.utc-split--6>.utc-subs__i:last-child:nth-child(odd){grid-column:1/-1}
}
@media (min-width:1100px){.utc-subs>.utc-subs__i:last-child:nth-child(odd)>.utc-text,.utc-split--6>.utc-subs__i:last-child:nth-child(odd)>.utc-text{max-width:none;column-count:2;column-gap:var(--space-7)}.utc-subs>.utc-subs__i:last-child:nth-child(odd)>.utc-text>*{break-inside:avoid;margin-top:0;margin-bottom:var(--space-3)}}

@media (min-width:1100px){.utc-subs>.utc-subs__i:last-child:nth-child(odd)>.utc-text>*{break-inside:auto}}

/* 24 Oct 2026: one-block text must not sit in a half-empty two-column box */
.utc-section>.utc-wrap>.utc-text:not(.utc-callout):not(.utc-x):not(.utc-y):not(:has(>:nth-child(2))){column-count:1}
.utc-subs>.utc-subs__i:last-child:nth-child(odd)>.utc-text:not(:has(>:nth-child(2))),.utc-split--6>.utc-subs__i:last-child:nth-child(odd)>.utc-text:not(:has(>:nth-child(2))){column-count:1}
