/* Named, composable panels: inherit the homepage tokens and typography. */
/* Alternating Feature Rows: editorial copy paired with replaceable diagrams. */
.alternating-features{display:grid;gap:clamp(64px,8vw,112px)}
.alternating-feature-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8%;align-items:center}
.alternating-feature-copy{max-width:39rem}
.alternating-features .alternating-feature-copy h2{font-size:clamp(32px,3.2vw,46px)}
.alternating-feature-copy p{margin:26px 0 0}
.alternating-feature-copy .control-link{margin-top:28px}
.alternating-feature-copy .control-link span{color:var(--accent);margin-left:8px}
.alternating-feature-row:nth-child(even) .alternating-feature-copy{grid-column:2;grid-row:1}
.alternating-feature-row:nth-child(even) .alternating-feature-visual{grid-column:1;grid-row:1}
.alternating-feature-visual{margin:0;min-width:0;min-height:360px;aspect-ratio:1.45;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,3vw,44px);background:#f5f6f7;border-radius:var(--tl-radius,12px)}
.alternating-feature-visual>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;border-radius:var(--tl-radius,12px)}
.alternating-feature-visual figcaption{font-size:11px;line-height:1.5;color:var(--muted);text-align:center;margin-top:22px}
.afr-diagram{width:100%;font-family:var(--sans)}
.afr-boundary{background:var(--white);padding:24px;border-radius:var(--tl-radius,12px);box-shadow:0 8px 28px #11111108}
.afr-diagram-label{font-size:17px;font-weight:500;display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;align-items:center}
.afr-diagram-label>span{font-size:11px;font-weight:400;color:var(--muted)}
.afr-resources{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.afr-resources>div{font-size:13px;background:var(--tl-blue-50);padding:18px 12px;border-radius:var(--tl-radius,12px)}
.afr-mark{font-size:11px;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}
.afr-resources .afr-mark{display:block;margin-bottom:14px}
.afr-infrastructure{text-align:center;border-top:1px dashed var(--line);margin-top:22px;padding-top:20px;font-size:12px;color:var(--muted)}
.afr-flow-step{display:flex;gap:16px;align-items:center;background:var(--white);padding:15px 18px;border-radius:var(--tl-radius,12px);box-shadow:0 6px 18px #11111105}
.afr-flow-step strong{display:block;font-size:14px;font-weight:500}.afr-flow-step div>span{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:4px}
.afr-flow-step--accent{background:var(--tl-blue-100)}
.afr-flow-connector{text-align:center;color:var(--accent);font-size:18px;line-height:1.4}
@media(max-width:800px){.alternating-feature-row{grid-template-columns:minmax(0,1fr);gap:32px}.alternating-feature-row:nth-child(even) :is(.alternating-feature-copy,.alternating-feature-visual){grid-column:auto;grid-row:auto}.alternating-feature-visual{min-height:0;aspect-ratio:auto;padding:24px 18px}.afr-boundary{padding:20px 16px}.afr-diagram-label{font-size:16px}.afr-resources{gap:8px}.afr-resources>div{font-size:12px;padding:14px 10px}}
/* Blue is editorial emphasis and state, not an additional panel background.
   Inline spans intentionally wrap naturally; keep this treatment on large type. */
main :is(h1,h2) .text-accent{color:var(--accent)}
main .control-dark :is(h1,h2) .text-accent{color:color-mix(in srgb,var(--accent) 70%,white)}
.benefit-columns svg{color:var(--accent)}
.quote-carousel .quote-segments [aria-pressed=true] span{background:var(--accent)}
.switch-row button[aria-expanded=true]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:8px;text-decoration-thickness:2px}
.faq-list details[open] summary>span{color:var(--accent)}
.illustrated-trio{--control-action-deep:#172b4d;--control-action-deep-hover:#223e68}
.trio-heading{display:flex;align-items:center;justify-content:space-between;gap:48px;margin-bottom:72px}
.trio-heading h2{max-width:16ch;font-size:clamp(40px,4.5vw,66px)}
.trio-cta{background:var(--control-action-deep);color:var(--white);padding:18px 26px;border-radius:6px;text-decoration:none;white-space:nowrap;font-weight:500}
.trio-cta:hover{background:var(--control-action-deep-hover)}
.trio-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.trio-visual{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--tl-neutral-175);border-radius:14px;padding:28px;overflow:hidden;color:var(--control-action-deep)}
.illustrated-trio .trio-visual--image{padding:6%;display:grid;place-items:center}
.trio-visual--image img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
/* Compensate for the transparent canvas around this supplied illustration. */
.trio-visual--image img[src$="security-data-retention-v2.png"]{transform:translate(-3%,-5%) scale(1.4)}
.illustrated-trio .trio-columns h3{margin:26px 0 0;font-size:clamp(20px,2vw,26px);line-height:1.4}
.trio-documents{display:flex;align-items:center;width:100%;gap:8px}
.trio-sheet{background:var(--white);border-radius:6px;flex:1;min-width:0;padding:18px 10px;box-shadow:0 10px 24px #172b4d08}
.trio-sheet:nth-child(2){transform:translateY(-16px)}
.trio-sheet span{font-size:11px;font-weight:600}.trio-sheet i,.trio-answer>i{display:block;height:5px;border-radius:3px;background:var(--tl-blue-100);margin-top:13px}.trio-sheet i:last-child{width:65%;background:var(--tl-blue-500)}
.trio-answer,.trio-project{width:100%;background:var(--white);padding:24px 20px;border-radius:8px;box-shadow:0 10px 24px #172b4d08}
.trio-answer-title{font-size:15px;font-weight:600;display:block;margin-bottom:20px}
.trio-highlight{background:var(--tl-blue-100);padding:9px;font-size:12px;margin-top:18px;border-radius:4px}
.trio-source{font-size:11px;margin-top:20px;display:flex;gap:8px;align-items:center}.trio-source>span{background:var(--control-action-deep);color:white;padding:4px 6px;border-radius:3px}
.trio-project>div{padding:12px 0;font-size:12px;display:flex;align-items:center;gap:10px}.trio-dot{width:7px;height:7px;border-radius:50%;background:var(--tl-blue-500)}
.illustrated-trio .trio-note{font-size:13px;margin-top:32px}
@media(max-width:1000px){.trio-columns{gap:22px}.trio-visual{padding:18px}.trio-sheet{padding:14px 6px}.trio-sheet span{font-size:9px}}
@media(max-width:800px){.trio-heading{display:block;margin-bottom:44px}.trio-cta{display:inline-block;margin-top:28px}.trio-columns{grid-template-columns:1fr;gap:44px}.trio-visual{padding:30px}.trio-sheet span{font-size:11px}}
.control-library .library-hero-heading{margin:0;font-family:var(--serif);font-size:clamp(66px,6.4vw,92px);font-weight:400;line-height:1.03;letter-spacing:-.07em}
.control-library .library-hero-heading .hero-accent{color:var(--accent)}
@media(max-width:800px){.control-library .library-hero-heading{font-size:clamp(51px,14vw,68px)}}
.control-wrap{max-width:var(--max);margin-inline:auto;padding:clamp(72px,9vw,136px) var(--gutter, clamp(24px,5vw,76px))}
.control-wrap h2{font-family:var(--serif);font-size:clamp(36px,4vw,58px);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0}
.control-wrap h3{font-size:clamp(20px,2vw,27px);font-weight:500;line-height:1.3;margin:0 0 18px}
.control-wrap p{font-size:18px;line-height:1.65;color:var(--muted)}
.control-wrap .control-intro{font-size:clamp(20px,2vw,26px);line-height:1.55;margin:0}
.control-dark{background:var(--stone);color:#fff}
.control-dark p{color:#d1d3d1}.control-dark h2,.control-dark h3{color:#fff}
.control-link{display:inline-block;color:inherit;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:7px;margin-top:24px}
.feature-switcher{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px 8%}
.feature-switcher>h2{grid-column:2}.switch-list{grid-column:1}.switch-visual{grid-column:2;grid-row:2}
.switch-row{border-top:1px solid #60635f;padding:24px 0}.switch-row h3{margin:0}
.switch-row button{font:inherit;color:#b8bcb8;background:none;border:0;padding:4px 0;text-align:left;width:100%;cursor:pointer}
.switch-row button[aria-expanded=true]{color:#fff}.switch-detail p{margin:20px 0 0;max-width:36ch}.switch-detail .control-link{margin-bottom:12px}
.control-media{margin:0;background:var(--stone) url('/assets/texture-stone-subtle.svg');border-radius:12px;overflow:hidden;padding:38px 0 0 38px;aspect-ratio:1.16;box-shadow:0 18px 42px #1111110d}
.control-dark .control-media{background-color:#242724}
.control-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left;border-radius:8px 0 0 0}
.control-media-pending{background:var(--paper);color:var(--muted);height:100%;display:grid;place-items:center;padding:32px;text-align:center;border-radius:8px 0 0 0;font-size:18px}
.quote-carousel{background:#eeefed}.quote-slide{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,1fr);gap:8%}
.quote-attribution p:first-child{color:var(--ink);font-weight:500;margin-top:0}.quote-attribution p+p{margin-top:36px}
.quote-slide blockquote{font-family:var(--serif);font-size:clamp(32px,4.5vw,64px);line-height:1.14;letter-spacing:-.025em;margin:0;min-height:4.6em}
.quote-controls{display:flex;gap:24px;align-items:center;margin-top:80px}.quote-controls button{border:0;background:none;cursor:pointer;color:var(--ink);font-size:26px;min-height:44px;min-width:44px}
.quote-segments{display:flex;gap:20px;flex:1}.quote-segments button{flex:1;padding:15px 0}.quote-segments span{display:block;height:3px;background:#c9cbc7}.quote-segments [aria-pressed=true] span{background:var(--ink)}
.feature-pane{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px 9%}
.feature-pane .control-register{align-self:end}.control-register article{border-top:1px solid var(--line);padding:28px 0}.control-register article:last-child{padding-bottom:0}.control-register p{margin:0}
.feature-pane--reverse .control-media{grid-column:2;grid-row:2}.feature-pane--reverse .control-register{grid-column:1;grid-row:2}
.benefit-statement{padding-block:clamp(24px,3vw,48px)}.benefit-statement h2{max-width:24ch;font-family:var(--sans);font-size:clamp(34px,4vw,58px);line-height:1.3;font-weight:500}.benefit-statement span{color:var(--muted)}
.benefit-statement--compact{padding-block:clamp(24px,3vw,48px)}
.diligence-panel,.faq-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:10%}
.diligence-panel .control-intro,.faq-panel .control-intro{margin-top:32px}.diligence-panel .diligence-note{font-size:15px;margin-top:28px}
.diligence-register a{display:flex;justify-content:space-between;gap:24px;padding:30px 0;border-bottom:1px solid #60635f;text-decoration:none;color:#fff;font-size:clamp(20px,2vw,28px)}.diligence-register a:first-child{padding-top:0}.diligence-detail{font-size:15px;align-self:center;color:#d1d3d1;white-space:nowrap}.diligence-register a:hover .diligence-detail{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}
.benefit-columns>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7%;margin-top:72px}.benefit-columns svg{width:32px;height:32px;margin-bottom:36px;fill:none;stroke:currentColor;stroke-width:1.5}.benefit-columns p{margin:0}
.faq-surface{background:#eeefed}.faq-list details{border-bottom:1px solid var(--line);padding:25px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{display:flex;justify-content:space-between;gap:28px;cursor:pointer;font-size:clamp(19px,2vw,25px);font-weight:500;list-style:none;line-height:1.45}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:24px 0 0}
[data-control] [hidden]{display:none!important}.control-wrap :is(button,a,summary):focus-visible{outline:2px solid var(--accent);outline-offset:6px}
.control-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.control-library-intro h1{font:400 clamp(48px,6vw,84px)/1.1 var(--serif);letter-spacing:-.04em}.control-library-nav{display:flex;gap:18px 30px;flex-wrap:wrap;margin-top:36px}.control-library-nav a{color:var(--ink);text-underline-offset:5px}.control-library-label{padding:28px max(24px,5vw);background:var(--white);scroll-margin-top:120px}.control-library-label h2{font:500 18px/1.4 var(--sans);margin:0}
@media(max-width:800px){.feature-switcher,.feature-pane,.diligence-panel,.faq-panel,.quote-slide{grid-template-columns:minmax(0,1fr);gap:40px}.feature-switcher>h2,.switch-list,.switch-visual,.feature-pane--reverse .control-media,.feature-pane--reverse .control-register{grid-column:auto;grid-row:auto}.control-media{padding:24px 0 0 24px;aspect-ratio:1.2}.quote-slide blockquote{min-height:0}.quote-controls{margin-top:48px;gap:8px}.quote-segments{gap:12px}.benefit-columns>div{grid-template-columns:1fr;gap:44px;margin-top:48px}.benefit-columns svg{margin-bottom:20px}.quote-attribution p+p{margin-top:12px}.diligence-register a{gap:12px}.diligence-detail{white-space:normal;text-align:right}.feature-pane .control-intro{grid-row:2}.control-wrap p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.control-wrap *{scroll-behavior:auto;transition:none;animation:none}}
