.hero-reflection-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.34fr);gap:40px;align-items:start;padding:42px 0 28px}
.hero-reflection-layout .hero-copy{padding:0;min-width:0}
.reflection-card{border:1px solid var(--line);border-radius:24px;background:var(--off);padding:14px;box-shadow:0 12px 30px #1222400b;color:var(--navy);min-width:0}
.reflection-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.reflection-tab{min-width:0;border:2px solid transparent;border-radius:16px;background:#fff;padding:4px;color:var(--navy);cursor:pointer;font:inherit;font-size:.8rem;font-weight:750}
.reflection-tab[aria-selected=true]{border-color:var(--navy);box-shadow:0 3px 9px #172b5215}
.reflection-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:1672/941;background:#e1e5ec}
.reflection-thumb img{width:100%;height:100%;object-fit:cover}
.reflection-tab[aria-selected=false] img{filter:grayscale(1);opacity:.48}
.reflection-tab:hover{border-color:#8a9bb5}
.reflection-count{position:absolute;bottom:4px;left:4px;right:4px;display:block;border-radius:7px;padding:4px 2px;background:#172b52;color:#fff;font-size:.72rem;font-weight:750;line-height:1.2;white-space:nowrap}
.reflection-card h3{font-size:1rem;line-height:1.35;letter-spacing:-.015em;margin:0 0 5px}
.reflection-instruction{font-size:.8rem;color:#526176;margin:0 0 14px}
.reflection-panels{display:grid}
.reflection-pagination{display:flex;align-items:center;justify-content:center;gap:0;margin-top:8px}
.reflection-dot{position:relative;display:block;width:36px;height:36px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}
.reflection-dot::after{content:"";position:absolute;width:8px;height:8px;left:14px;top:14px;border-radius:50%;background:#c5cfdf}
.reflection-dot[aria-current=true]::after{background:var(--navy)}
.reflection-dot:hover{background:#e9eef5}
.reflection-dot:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.team-reflection-page{grid-area:1/1;min-width:0}
.team-reflection-page[aria-hidden=true]{visibility:hidden;pointer-events:none}
.reflection-checklist{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.reflection-pill{position:relative;display:flex;align-items:center;gap:9px;border:1px solid #d6deea;border-radius:30px;padding:10px;background:#fff;color:#1c2029;font-size:.86rem;font-weight:750;line-height:1.4;cursor:pointer;min-height:44px}
.reflection-pill input{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.reflection-tick{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border:1.5px solid #a8b4c7;border-radius:50%;background:#fff;color:transparent}
.reflection-tick svg{width:15px;height:15px}
.reflection-pill:has(input:checked){background:#eaf0f8;border-color:var(--navy)}
.reflection-pill input:checked+.reflection-tick{background:var(--navy);border-color:var(--navy);color:#fff}
.reflection-pill:hover{border-color:#7184a3;background:#f0f4fa}
.reflection-tab:focus-visible,.reflection-pill:has(input:focus-visible){outline:3px solid var(--green);outline-offset:3px}
@media(max-width:800px){.hero-reflection-layout{grid-template-columns:1fr;gap:28px;padding:32px 0 42px}.reflection-card{width:100%;max-width:480px}.reflection-count{font-size:.78rem}.reflection-pill{font-size:.93rem;padding:11px 12px}.reflection-thumb{aspect-ratio:1672/941}.reflection-card h3{font-size:1.05rem}}

@media(min-width:801px){.hero-reflection-layout .reflection-card{position:relative;z-index:2;margin-top:-117px}.hero:has(.hero-reflection-layout) .carousel-controls{width:calc(100% - 340px)}}
.bridge-reflection-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.34fr);gap:40px;align-items:start;padding-top:34px}
.bridge-reflection-layout .section-intro{padding:0;max-width:none;min-width:0}
.strategy-reflection-thumb{padding:4px;border:2px solid var(--navy);border-radius:16px;background:#fff;margin-bottom:14px;text-align:center}
@media(min-width:801px){.bridge-reflection-layout .reflection-card{position:relative;z-index:2;margin-top:-59px}}
@media(max-width:800px){.bridge-reflection-layout{grid-template-columns:1fr;gap:28px;padding-top:26px}}
.section.bridge:has(.bridge-reflection-layout){padding-bottom:38px}
