/* Estilos exclusivos da página do projeto Proxy. */
.proxy-case { --case-ink:#302637; --case-muted:#6e626f; background:#fff; color:var(--case-ink); text-align:left; }
.proxy-case * { box-sizing:border-box; }
.proxy-case img { display:block; max-width:100%; height:auto; }
.proxy-case #fh5co-logo img { display:inline-block; }
.proxy-case .case-container { width:min(1120px,calc(100% - 48px)); margin-inline:auto; }
.proxy-case h1,.proxy-case h2,.proxy-case h3 { color:var(--case-ink); font-family:'Roboto Slab',Georgia,serif; font-weight:400; text-align:left; text-wrap:balance; }
.proxy-case h1 { font-size:clamp(42px,6.4vw,78px); line-height:1.08; letter-spacing:-.045em; margin:22px 0; }
.proxy-case h1 span { color:#a9287d; }
.proxy-case h2 { font-size:clamp(32px,4vw,49px); line-height:1.16; margin:0 0 26px; letter-spacing:-.025em; }
.proxy-case h3 { font-size:clamp(25px,3vw,33px); line-height:1.25; margin:0 0 20px; }
.proxy-case p { color:var(--case-muted); font-size:17px; line-height:1.8; font-weight:400; }
.proxy-case a { color:#9c2374; }
.proxy-case a:hover { color:#66124b !important; }
.proxy-case a:focus-visible { outline:3px solid #9c2374; outline-offset:5px; }
.proxy-case .case-eyebrow { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.18em; color:#982574; margin:0 0 20px; }
.proxy-case .case-intro { padding:50px 0 54px; }
.proxy-case .case-back { display:inline-block; font-size:13px; margin-bottom:42px; }
.proxy-case .case-deck { max-width:710px; font-size:clamp(19px,2vw,23px); line-height:1.6; }
.proxy-case .case-facts { display:grid; grid-template-columns:1fr 1.4fr 1fr; gap:28px; padding-top:25px; margin:35px 0 0; border-top:1px solid #eadfe8; }
.proxy-case .case-facts dt { font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:var(--case-muted); margin-bottom:8px; }
.proxy-case .case-facts dd { font-size:14px; margin:0; }
.proxy-case figure { margin:0; min-width:0; }
.proxy-case .case-hero { background:#f2d129; display:grid; place-items:center; }
.proxy-case .case-hero img { width:min(100%,640px); }
.proxy-case .case-index { display:flex; flex-wrap:wrap; gap:18px 28px; padding:25px 0; border-bottom:1px solid #eadfe8; font-size:13px; }
.proxy-case .case-index span { color:var(--case-muted); margin-right:auto; }
.proxy-case .case-section { padding-block:95px; scroll-margin-top:25px; }
.proxy-case .case-soft { background:#fdf7fb; }
.proxy-case .case-copy { max-width:720px; }
.proxy-case .case-split { display:grid; grid-template-columns:1fr 1fr; gap:55px; align-items:center; }
.proxy-case .case-pair { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:36px; align-items:center; }
.proxy-case figcaption,.proxy-case .case-caption { font-size:13px; line-height:1.6; color:var(--case-muted); margin:12px 0 0; }
.proxy-case .case-reading { margin:65px auto 0; }
.proxy-case .case-concepts { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; margin:40px 0; }
.proxy-case .case-concepts>div { border-top:1px solid #dfc8d8; padding-top:20px; }
.proxy-case .case-concepts span { display:block; font-size:12px; color:#982574; margin-bottom:18px; }
.proxy-case .case-concepts p { font-size:15px; }
.proxy-case .case-signatures img { width:100%; height:330px; object-fit:contain; background:#f2d129; }
.proxy-case .case-signatures figure:first-child img { background:#fff; }
.proxy-case .case-colors { display:grid; grid-template-columns:1fr 1fr; margin-top:26px; }
.proxy-case .case-colors>div { min-height:210px; display:flex; flex-direction:column; justify-content:flex-end; padding:28px; color:#302637; }
.proxy-case .case-color-pink { background:#ff3bbf; }
.proxy-case .case-color-white { background:#fff; border:1px solid #eadfe8; }
.proxy-case .case-colors span { font-size:14px; }
.proxy-case .case-subsection { margin-top:70px; }
.proxy-case .case-wide { margin:40px 0; }
.proxy-case .case-closing { background:#3d2859; display:grid; place-items:center; }
.proxy-case .case-closing img { width:min(100%,470px); }
.proxy-case .case-manual { display:flex; align-items:center; justify-content:space-between; gap:50px; }
.proxy-case .case-manual .case-copy { max-width:620px; }
.proxy-case .case-button { display:inline-flex; align-items:center; flex-shrink:0; padding:17px 24px; border-radius:30px; background:#3d2859; color:#fff; font-size:15px; font-weight:700; }
.proxy-case .case-button:hover { color:#fff !important; background:#582d72; }
.proxy-case .case-end { display:flex; justify-content:space-between; gap:24px; padding:26px 0 50px; border-top:1px solid #eadfe8; font-size:14px; }
.proxy-case .case-skip { position:fixed; top:8px; left:8px; z-index:100; padding:12px; background:white; transform:translateY(-160%); }
.proxy-case .case-skip:focus { transform:none; }
@media(max-width:760px) {
 .proxy-case .case-container { width:calc(100% - 36px); }
 .proxy-case .case-intro { padding-top:25px; }
 .proxy-case .case-facts { grid-template-columns:1fr; gap:18px; }
 .proxy-case .case-section { padding-block:58px; }
 .proxy-case .case-split,.proxy-case .case-pair,.proxy-case .case-concepts { grid-template-columns:1fr; gap:30px; }
 .proxy-case .case-reading,.proxy-case .case-subsection { margin-top:42px; }
 .proxy-case .case-manual { flex-direction:column; align-items:flex-start; gap:25px; }
 .proxy-case .case-colors>div { min-height:170px; padding:20px; }
 .proxy-case .case-signatures img { height:auto; max-height:430px; }
 .proxy-case .case-end { flex-wrap:wrap; }
 .proxy-case .case-index { gap:16px 22px; }
 .proxy-case .case-index span { flex-basis:100%; }
}
