/* Editorial structure; existing native vector and brand rules remain authoritative. */
html:has(.af-case){scroll-behavior:auto;scroll-padding-top:0}
.af-case .af-story-compare{scroll-margin-top:90px}
.af-story-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}
.af-case .af-story-toolbar p{font-size:14px;color:#53647a}
.af-story-toggle{display:flex;align-items:center;gap:10px;font-size:13px;min-height:44px;cursor:pointer;flex-shrink:0}
.af-story-toggle input{width:18px;height:18px;accent-color:#001e4e}
.af-story-flag-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.af-story-flag-pair figure{margin:0;min-width:0}
.af-story-flag-pair [data-story-flag]{aspect-ratio:630/400;background:#f5f7fa;overflow:hidden}
.af-story-flag-pair svg,.af-story-flag-pair img{display:block;width:100%;height:100%;object-fit:contain}
.af-story-flag-pair figcaption{padding-top:16px;font-size:13px}
.af-story-findings{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #d8e0e8;margin-top:32px;padding-top:24px}
.af-case .af-story-findings p{font-size:15px;line-height:1.8;max-width:530px;color:#53647a}
.af-story-findings strong{display:block;color:#001e4e;font-weight:500;margin-bottom:5px}
.af-story-diagnostic,.af-story-language{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.7fr);gap:clamp(30px,5vw,80px);align-items:center;margin-top:100px}
.af-case .af-story-diagnostic h3,.af-case .af-story-language h3{font-size:clamp(28px,3.2vw,48px);line-height:1.15;margin:18px 0 22px}
.af-case .af-story-diagnostic p,.af-case .af-story-language p{font-size:14px;line-height:1.8;color:#53647a;margin-top:14px}
.af-story-diag-note{padding-top:24px;margin-top:28px;border-top:1px solid #d8e0e8}
.af-story-diag-note span{font-size:11px;color:#53647a}
.af-case .af-story-diag-note h4{font-weight:500;font-size:21px;margin:12px 0}
.af-story-diag-canvas{min-width:0;background:white}
.af-story-diag-canvas>svg,.af-story-diag-canvas>img{display:block;width:100%;height:auto;aspect-ratio:1375/775}
.af-story-diag-canvas [data-diagnostic]{cursor:pointer;outline:none}
.af-story-diag-canvas [data-diagnostic] *{pointer-events:none}
.af-story-diag-canvas [data-diagnostic]>.af-diag-ring{pointer-events:all}
.af-story-diag-canvas [data-diagnostic]:focus-visible .af-diag-ring,.af-story-diag-canvas [aria-pressed=true] .af-diag-ring{stroke:#ee7623;stroke-width:2;vector-effect:non-scaling-stroke}
.af-story-diag-canvas .af-diag-ring:focus-visible{outline:none;stroke:#ee7623;stroke-width:3;vector-effect:non-scaling-stroke}
.af-story-diag-canvas .af-diag-ring{outline:none}
.af-story-language{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.af-story-language figure{margin:0;min-width:0}
.af-story-language img{display:block;width:100%;height:auto}
.af-story-language figcaption{font-size:11px;color:#53647a;margin-top:18px}
.af-story-language .af-logo-dot-en{margin-left:18px}
.af-story-family{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#001489;color:white;margin-top:90px;padding:20px 24px 32px;gap:18px}
.af-story-family figure{min-width:0;margin:0}.af-story-family img{display:block;width:100%;height:auto}
.af-story-family figcaption{font-size:12px;opacity:.8;padding:0 15px}
.af-story-disclosure{border-top:1px solid #b8c4d0;border-bottom:1px solid #b8c4d0;margin-top:36px}
.af-story-disclosure>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px;min-height:84px;padding:20px 0;font-size:19px}
.af-story-disclosure>summary::-webkit-details-marker{display:none}
.af-story-disclosure>summary:after{content:'+';font-size:28px;margin-left:auto;font-weight:400;flex:none}
.af-story-disclosure[open]>summary:after{content:'−'}
.af-story-disclosure>summary>span{font-size:12px;color:#53647a}
.af-story-disclosure>summary:focus-visible{outline:3px solid #ee7623;outline-offset:4px}
.af-story-disclosure>figure{margin:0 0 24px}
.af-story-disclosure .af-logo-lab{border:0;background:#f0f3f7}
.af-story-disclosure .af-logo-tabs{display:none}
.af-story-disclosure .af-logo-notes{padding-top:30px}
.af-story-disclosure .af-version-control{margin:0}
.af-story-selects{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.af-story-selects label{font-size:11px;color:#53647a;display:block;min-width:0}
.af-story-selects select{display:block;font:inherit;font-size:13px;width:100%;min-height:44px;color:#001e4e;border:1px solid #a7b7c9;background:white;margin-top:8px;padding:8px}
.af-story-disclosure .af-version-control .af-logo-options{margin-top:8px}
.af-story-disclosure .af-version-detail>summary{font-size:12px;cursor:pointer;min-height:44px;padding-top:12px}
.af-story-disclosure .af-logo-hint{display:none}
.af-story-disclosure .af-logo-status{padding:4px 20px 14px}
.af-story-anchor{display:block;scroll-margin-top:90px}
.af-case .af-story-composition.af-lab{background:transparent;color:#001e4e;padding:0}
.af-case .af-story-composition .af-lab-frame-stage{height:auto;aspect-ratio:16/9;padding:0;margin:0;background:#001e4e;border:0}
.af-case .af-story-composition .af-story-toolbar p{color:#53647a}
.af-story-composition-readout{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:24px 0}
.af-case .af-story-composition-readout h3{font-size:25px;line-height:1.2;font-weight:500}
.af-case .af-story-composition-readout p{font-size:14px;color:#53647a;max-width:570px}
.af-story-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid #d8e0e8;padding-top:24px}
.af-case .af-story-principles p{font-size:13px;line-height:1.8;color:#53647a}
.af-story-principles strong{display:block;font-size:16px;font-weight:500;margin-bottom:8px;color:#001e4e}
.af-story-subhead{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin:90px 0 32px}
.af-case .af-story-subhead h3{font-size:clamp(28px,3.6vw,48px);line-height:1.12;font-weight:500}
.af-case .af-story-subhead p{font-size:14px;color:#53647a;max-width:530px}
.af-story-applications{display:grid;grid-template-columns:1fr 1fr 1.55fr;gap:24px;align-items:center}
.af-story-applications figure{margin:0;min-width:0}.af-story-applications img{display:block;width:100%;height:auto}
.af-story-applications figcaption{font-size:12px;padding-top:15px;color:#53647a}
.af-story-technical{margin-top:48px}.af-story-technical>.af-lab{margin-bottom:24px}
.af-case .af-story-composition-section .af-frame-related{margin-top:80px}
.af-case-nav{position:static;background:#fffffff2;backdrop-filter:blur(12px);padding-block:10px;gap:8px 32px}
.af-case-nav a{position:relative;font-size:13px;color:#53647a;min-height:36px;display:flex;align-items:center}
.af-case-nav a[aria-current=location]{color:#001e4e}
.af-case-nav a[aria-current=location]:after{content:'';position:absolute;height:2px;background:#001e4e;bottom:0;left:0;right:0}
.af-case .af-section{scroll-margin-top:65px}
.af-story-main-palette{display:grid;grid-template-columns:2.4fr 1.3fr 1fr 1.3fr;gap:0}
.af-story-main-palette>div{min-width:0}
.af-story-main-palette>div>span{display:block;height:clamp(120px,15vw,220px);border:1px solid #001e4e0d}
.af-case .af-story-main-palette p{font-size:16px;margin-top:18px}
.af-story-main-palette small{display:block;font-size:11px;color:#53647a;margin-top:7px}
.af-story-palette-row{display:grid;grid-template-columns:1fr 1.6fr;gap:50px;padding:28px 0;border-top:1px solid #b8c4d0;align-items:center}
.af-case .af-story-palette-row h3{font-size:26px;font-weight:500;margin:0 0 10px}
.af-case .af-story-palette-row p{font-size:13px;color:#53647a;line-height:1.8;max-width:410px}
.af-story-palette-strip{display:grid;grid-template-columns:repeat(4,1fr);height:100px}
.af-story-palette-strip>span{min-width:0}
.af-story-colour-details .af-study{padding:0;margin:0}
.af-case .af-airport{background:transparent;border:0;padding:0}
.af-airport-layout{grid-template-columns:minmax(0,2.6fr) minmax(210px,.8fr);align-items:start}
.af-airport-detail-image{height:300px}
.af-airport[aria-busy=true] .af-airport-detail{opacity:.6}
.af-story-airport-list{border-top:1px solid #d8e0e8;margin-top:28px}
.af-story-airport-list>summary{font-size:13px;cursor:pointer;min-height:52px;padding:18px 0}
.af-story-airport-list .af-airport-controls{border:0;margin:0;padding:0 0 22px}
.af-airport-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:700px){
 .af-story-toolbar{align-items:flex-start;flex-direction:column;gap:5px;margin-bottom:16px}
 .af-story-flag-pair{grid-template-columns:minmax(0,1fr);gap:20px}.af-story-flag-pair figcaption{font-size:14px;line-height:21px;padding-top:10px}
 .af-story-flag-pair .fm-mobile-image-zoom{top:auto;bottom:41px}
 .af-story-findings{grid-template-columns:1fr;gap:20px;margin-top:24px}
 .af-story-diagnostic,.af-story-language{grid-template-columns:1fr;gap:24px;margin-top:64px}
 .af-story-diagnostic>div:first-child{display:contents}.af-story-diagnostic>div:first-child>h3{margin:0}.af-story-diagnostic>div:first-child>p{margin:0}
 .af-story-diag-note{grid-row:5;margin:0;padding-top:18px}.af-story-diag-canvas{grid-row:4}
 .af-story-language>div{grid-row:1}.af-story-language figure{grid-row:2}
 .af-story-family{grid-template-columns:1fr;margin-top:56px;padding:4px 15px 24px;gap:0}
 .af-story-family figure{border-bottom:1px solid #ffffff25;padding-bottom:20px}.af-story-family figure:last-child{border:0}
 .af-story-family img{max-height:190px;object-fit:contain}
 .af-story-disclosure>summary{font-size:17px;flex-wrap:wrap;gap:5px 14px}.af-story-disclosure>summary>span{flex-basis:75%;order:2}
 .af-story-disclosure>summary:after{margin-left:auto}
 .af-story-disclosure .af-logo-visual{padding:14px 14px 0}
 .af-story-disclosure .af-logo-notes{padding:14px}
 .af-story-disclosure .af-logo-panel{gap:0}
 .af-story-disclosure .af-version-control button{padding:8px 10px}
 .af-story-disclosure .af-version-detail{margin-top:12px;padding-top:0}
 .af-story-composition-readout,.af-story-subhead{grid-template-columns:1fr;gap:14px}
 .af-story-principles{grid-template-columns:1fr;gap:20px}
 .af-story-subhead{margin-top:60px}.af-story-applications{grid-template-columns:1fr 1fr;gap:22px 14px;align-items:start}
 .af-story-applications figure:last-child{grid-column:1/-1}
 .af-story-technical .af-lab-stage{height:min(24svh,200px);position:relative;top:auto;background:#0c2a55}
 .af-story-technical button{scroll-margin-top:70px}
 .af-story-technical .af-lab-layout{position:relative}
 .af-case-nav{gap:8px;justify-content:space-between;padding-block:6px;flex-wrap:nowrap}
 .af-case-nav a{font-size:11px;min-height:36px;white-space:nowrap}
 .af-story-main-palette{grid-template-columns:1.5fr 1fr;gap:24px 0}
 .af-story-main-palette>div>span{height:110px}.af-case .af-story-main-palette p{font-size:14px;margin-top:12px}
 .af-story-palette-row{grid-template-columns:1fr;gap:18px;padding:24px 0}
 .af-story-palette-strip{height:74px}
 .af-airport-layout{grid-template-columns:1fr;gap:20px}
 .af-airport-detail{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;padding:18px 0;border-top:1px solid #d8e0e8}
 .af-airport-detail-image{height:190px;margin:0;padding:8px}
 .af-case .af-airport-detail h3{font-size:23px;margin:8px 0 12px}
 .af-case .af-airport-detail p{font-size:12px;line-height:1.7}
 .af-airport-zoom-button{font-size:11px;margin-bottom:12px}
 .af-airport-hotspot{min-width:24px;min-height:24px}
 .af-airport-hotspot>span{width:24px;height:24px;line-height:22px;font-size:10px}
 .af-story-airport-list{margin-top:10px}
}

/* Make optional depth and construction discoverable without adding actions. */
.af-case .af-section-head{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:7%;align-items:end}
.af-case .af-section-head p{padding-top:0;max-width:520px}
.af-story-disclosure{border:1px solid #bdcbd9;border-radius:12px;background:#fff;box-shadow:0 4px 18px #001e4e05}
.af-story-disclosure>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:22px;padding:24px 28px;min-height:112px;background:#edf3f8;border-radius:11px}
.af-story-disclosure>summary>.af-disclosure-copy{display:flex;flex-direction:column;gap:8px;min-width:0;color:#001e4e;order:0}
.af-disclosure-copy>strong{font-size:clamp(21px,2.1vw,28px);line-height:1.25;font-weight:500;letter-spacing:-.035em}
.af-disclosure-copy>span{font-size:13px;line-height:1.5;color:#53647a}
.af-story-disclosure>summary>.af-disclosure-action{font-size:13px;color:#001e4e;order:0}
.af-disclosure-action:before{content:'Открыть'}
.af-story-disclosure[open] .af-disclosure-action:before{content:'Свернуть'}
.af-story-disclosure>summary:after{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#001e4e;color:#fff;font-size:28px;line-height:1;margin:0;order:1}
.af-story-disclosure>summary:hover{background:#e3ecf5}
.af-story-disclosure[open]>summary{border-radius:11px 11px 0 0;border-bottom:1px solid #bdcbd9}
.af-disclosure-body{min-width:0;padding:28px}
.af-case .af-disclosure-body>figure,.af-disclosure-body>.af-lab{margin:0}
.af-disclosure-body>.af-lab+.af-lab{margin-top:24px}
.af-story-toggle{display:inline-flex;gap:14px;min-height:64px;padding:14px 20px;border:1px solid #001e4e;border-radius:9px;color:white;background:#001e4e;font-size:16px;line-height:1.3;box-shadow:0 3px 9px #001e4e10}
.af-story-toggle:hover{background:#123967}
.af-story-toggle:focus-within{outline:3px solid #ee7623;outline-offset:4px}
.af-story-toggle input{appearance:none;position:relative;display:block;flex:none;width:46px;height:26px;margin:0;border:1px solid #fff9;border-radius:20px;background:#ffffff30;cursor:pointer}
.af-story-toggle input:before{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff}
.af-story-toggle input:checked{background:#ee7623;border-color:#ee7623}
.af-story-toggle input:checked:before{left:23px}
.af-airport-screen-controls[hidden]{display:none}
.af-airport-screen-controls{display:grid;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid #d8e0e8}
.af-airport-screen-controls>label{display:block;font-size:12px;line-height:1.4;color:#53647a}
.af-airport-screen-controls select{display:block;width:100%;min-width:0;min-height:44px;margin-top:8px;padding:9px 7px;font:inherit;font-size:13px;color:#001e4e;background:white;border:1px solid #9eb1c7;border-radius:5px}
.af-airport-screen-controls .af-airport-cobrand{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;color:#001e4e;cursor:pointer}
.af-airport-cobrand input{width:20px;height:20px;accent-color:#001e4e;margin:0}
.af-airport.is-screen .af-airport-detail-image{height:auto;aspect-ratio:16/9;padding:0;background:#10349e}
.af-airport-screen-hit>span{font-size:14px}
@media(max-width:700px){
 .af-case .af-section-head{grid-template-columns:1fr;gap:22px}
 .af-story-disclosure>summary{grid-template-columns:minmax(0,1fr) 44px;padding:20px;gap:16px;min-height:116px}
 .af-story-disclosure>summary>.af-disclosure-action{display:none}
 .af-disclosure-copy>strong{font-size:22px}.af-disclosure-copy>span{font-size:12px}
 .af-disclosure-body{padding:20px 16px}
 .af-story-colour-details .af-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}
 .af-story-colour-details .af-swatch{padding:14px;min-height:210px}
 .af-story-toggle{width:100%;justify-content:space-between;min-height:64px;margin-top:10px;font-size:15px}
 .af-story-toggle input{order:2}
 .af-airport.is-screen .af-airport-detail{display:block}
 .af-airport.is-screen .af-airport-detail-image{margin-bottom:18px;height:auto}
 .af-airport-screen-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}
 .af-airport-screen-controls .af-airport-cobrand{font-size:13px}
}

/* Two matched diagnostic cards; each keeps its own source and explanations. */
.af-flag-details{min-width:0;margin-top:100px}
.af-flag-details-track{position:relative;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#96a9bd transparent;border-radius:12px}
.af-flag-details-track:focus-visible{outline:3px solid #ee7623;outline-offset:5px}
.af-flag-details .af-flag-detail-card{flex:0 0 100%;min-width:0;margin:0;padding:32px;border:1px solid #d2dce7;border-radius:12px;background:#f7f9fb;scroll-snap-align:start;scroll-snap-stop:always;grid-template-columns:minmax(0,.9fr) minmax(0,1.7fr);gap:clamp(26px,4vw,64px);align-items:center}
.af-flag-detail-card .af-story-diag-canvas{border-radius:8px;overflow:hidden;min-width:0}
.af-case .af-flag-detail-card h3{font-size:clamp(28px,3.05vw,44px);margin:16px 0 20px;line-height:1.12}
.af-flag-detail-card .af-story-diag-note{min-height:230px}
.af-flag-details-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px}
.af-case .af-flag-details-controls p{font-size:14px;color:#53647a;line-height:1.5}
.af-flag-details-controls>div{display:flex;gap:10px;flex:none}
.af-flag-details-controls button{width:48px;height:48px;padding:0;border:1px solid #b4c4d5;border-radius:50%;background:white;color:#001e4e;font:22px Arial,sans-serif;cursor:pointer}
.af-flag-details-controls button:not(:disabled):hover{background:#001e4e;color:#fff;border-color:#001e4e}
.af-flag-details-controls button:disabled{opacity:.3;cursor:default}
.af-flag-details-controls button:focus-visible{outline:3px solid #ee7623;outline-offset:4px}
@media(max-width:900px){
 .af-flag-details{margin-top:64px}
 .af-flag-details .af-flag-detail-card{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px}
 .af-flag-detail-card>div:first-child{display:contents}
 .af-case .af-flag-detail-card>div:first-child>h3,.af-case .af-flag-detail-card>div:first-child>p{margin:0}
 .af-flag-detail-card .af-story-diag-canvas{grid-row:4}
 .af-flag-detail-card .af-story-diag-note{grid-row:5;min-height:210px;margin:0;padding-top:18px}
}
@media(max-width:700px){
 .af-flag-details-track{gap:16px}
 .af-flag-details .af-flag-detail-card{padding:20px 16px}
 .af-case .af-flag-detail-card h3{font-size:32px}
 .af-flag-details-controls{gap:12px}.af-case .af-flag-details-controls p{font-size:13px}
}

.af-hint-mobile { display: none; }
@media (max-width: 760px) { .af-hint-desktop { display: none; } .af-hint-mobile { display: inline; } }

/* Align captions with the visible left edge inside the shared SVG frame. */
.af-story-family figcaption { padding-left:7.8%; padding-right:0; }
@media (max-width:760px) { .af-story-family img { width:min(100%,299px); height:auto; max-height:none; margin:0; } .af-story-family figcaption { padding-left:min(7.8%,23.3px); } }

.af-story-family figure:nth-child(n+2) figcaption { padding-left:15.8%; }
@media (max-width:760px) { .af-story-family figure:nth-child(n+2) figcaption { padding-left:min(15.8%,47.2px); } }

/* Keep the three visible logo starts on the same evenly spaced grid. */
.af-story-family figure:nth-child(n+2) img { transform:translateX(-8%); }
.af-story-family figure:nth-child(n+2) figcaption { padding-left:7.8%; }
@media (max-width:760px) { .af-story-family figure:nth-child(n+2) img { transform:translateX(-8%); } .af-story-family figure:nth-child(n+2) figcaption { padding-left:min(7.8%,23.3px); } }
