@import url("./banca-v4.css");

/* Carrossel: acabamento editorial final. Camada independente para facilitar manutenção. */
:root { --carrossel-blue:#163f66; --carrossel-ink:#172c43; }
html { scroll-padding-top:125px; }
body { font-size:16px; -webkit-font-smoothing:antialiased; }
h1,h2,h3 { text-wrap:balance; }
button,a { -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible,[role="button"]:focus-visible { outline:3px solid #daaa4b; outline-offset:3px; }
.shelf-section,.shelf-issue,.shelf-theme,.offer-card { min-width:0; }
.shelf-theme,.shelf-issue { overflow:hidden; background:white; border:1px solid #e3e0d7; border-radius:14px; box-shadow:0 4px 18px #24354b0d; }
.theme-cover-link { display:block; border:0; width:100%; padding:0; background:none; cursor:pointer; text-align:initial; }
.theme-cover-link .mag-cover { border-radius:10px 10px 0 0; box-shadow:none; }
.mag-cover { --mc:#204b72; --ma:#e8bd6c; isolation:isolate; color:#fff; background:linear-gradient(162deg,var(--mc) 6%,color-mix(in srgb,var(--mc) 82%,#020e1b) 76%); border:1px solid #ffffff30; box-shadow:4px 10px 24px #13233235; overflow:hidden; display:flex; position:relative; flex-direction:column; aspect-ratio:3/4; padding:13px 14px 12px 20px; width:100%; border-radius:5px 11px 11px 5px; font-family:Georgia,serif; }
.mag-cover::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 65% 45%,#ffffff16,transparent 55%),repeating-linear-gradient(0deg,#ffffff08 0px,#ffffff08 1px,transparent 1px,transparent 8px); }
.mag-cover-spine { position:absolute; width:9px; top:0; bottom:0; left:0; background:linear-gradient(90deg,#050d1b60,transparent); }
.mag-cover-top { display:flex; justify-content:space-between; align-items:flex-start; gap:6px; }
.mag-cover-brand { font-size:clamp(12px,1.35vw,19px); font-weight:900; letter-spacing:.018em; line-height:1.02; }
.mag-cover-no { font:bold 11px/1.25 Arial,sans-serif; border:1px solid #ffffff9c; padding:5px; border-radius:3px; white-space:nowrap; }
.mag-cover-series { font:700 9px/1.25 Arial,sans-serif; letter-spacing:.18em; border-top:2px solid var(--ma); margin-top:12px; padding-top:5px; color:var(--ma); }
.mag-cover-art { flex:1; min-height:40px; display:flex; align-items:center; justify-content:center; opacity:.9; margin:0 -8px; color:var(--ma); }
.mag-cover-art svg { width:min(85%,180px); height:auto; max-height:185px; filter:drop-shadow(6px 8px 0 #0000001b); }
.mag-cover-copy { margin-top:auto; display:flex; flex-direction:column; align-items:flex-start; gap:6px; z-index:1; }
.mag-cover-copy strong { color:#fff; font:bold clamp(21px,2.7vw,32px)/1.05 Georgia,serif; letter-spacing:-.035em; overflow-wrap:anywhere; }
.mag-cover-copy>span { font:500 11px/1.28 Arial,sans-serif; color:#f3f1e9e8; max-width:225px; }
.mag-cover-bottom { display:flex; justify-content:space-between; align-items:center; gap:4px; margin-top:12px; padding-top:7px; border-top:1px solid #ffffff5c; font:700 9px/1.2 Arial,sans-serif; letter-spacing:.07em; }
.mag-cover-bottom b { background:var(--ma); color:#16243b; padding:5px; border-radius:2px; }
.hero-magazine { transform:rotate(3deg); }
.hero-magazine .mag-cover { max-width:270px; padding:19px 19px 17px 24px; }
.hero-magazine .mag-cover-brand { font-size:24px; }
.hero-magazine .mag-cover-copy strong { font-size:34px; }
.hero-magazine .mag-cover-art svg { max-height:235px; }
.hero-cover-note { color:#faf2da; transform:rotate(-3deg); }
.theme-foot { display:flex; flex-direction:column; flex:1; padding:12px; }
.theme-foot h3 { font-size:17px; line-height:1.2; min-height:40px; }
.theme-foot p { font-size:13px; line-height:1.4; margin:5px 0 10px; color:#59626e; }
.shelf-theme { display:flex; flex-direction:column; }
.choose-theme { display:block; background:#f1f5f7; border:1px solid #bed0dd; color:#1b486c; border-radius:7px; padding:9px 10px; cursor:pointer; min-height:39px; font-size:13px; font-weight:700; text-align:center; }
.choose-theme.chosen { background:#e7f1e5; color:#276345; border-color:#85bc93; }
.theme-foot>.choose-theme { margin-top:auto; }
.theme-selection { display:flex; justify-content:space-between; align-items:center; gap:14px; background:#eaf0f4; border:1px solid #d9e2e9; border-radius:11px; padding:13px 16px; margin-top:8px; }
.theme-selection strong { font-size:16px; color:#1a4267; }
.theme-selection p { font-size:14px; color:#46576b; }
.shelf-issue { padding:13px; }
.shelf-issue .mag-cover { max-width:210px; margin:0 auto 10px; }
.shelf-issue .mag-cover-brand { font-size:15px; }
.shelf-issue .mag-cover-copy strong { font-size:22px; }
.shelf-issue .mag-cover-art svg { max-height:140px; }
.issue-info h3 { min-height:42px; }
.issue-info>strong { font-size:23px; }
.offer-card { min-height:260px; flex:0 0 clamp(215px,23vw,277px); padding:21px; }
.offer-card h3 { font:700 22px/1.13 Georgia,serif; }
.offer-card .offer-price { font:700 34px/1.25 Georgia,serif; }
.offer-card p { font-size:14px; line-height:1.45; }
.offer-open { display:block; width:100%; margin-top:auto; font-size:13px; }
.offer-pages { color:#656f79; font-size:12px !important; }
.benefits-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:0; gap:12px; margin:26px 0 0; padding:0; }
.benefit { display:flex; gap:10px; align-items:center; border-radius:12px; background:#e8edf1; padding:17px 14px; min-height:94px; }
.benefit-mark { display:flex; justify-content:center; align-items:center; flex:0 0 36px; width:36px; height:36px; background:#174569; color:#fff; font:bold 22px/1 Georgia,serif; border-radius:9px; }
.benefit>span:last-child { font-weight:700; font-size:14px; line-height:1.25; color:#183d5c; }
.benefit small { display:block; font-size:12px; line-height:1.4; margin-top:3px; color:#526678; font-weight:400; }
.lib-item .mag-cover { width:110px; flex:0 0 110px; padding:7px 8px 8px 12px; }
.lib-item .mag-cover-brand { font-size:10px; }
.lib-item .mag-cover-copy strong { font-size:13px; }
.lib-item .mag-cover-copy>span { font-size:8px; }
.lib-item .mag-cover-no { font-size:8px; }
.lib-item .mag-cover-art svg { max-height:55px; }
.lib-item .mag-cover-series { font-size:7px; }
.editorial-mag-cover { max-width:770px !important; display:flex; flex-direction:column; align-items:center; justify-content:center; background:#f6f1e6; min-height:0 !important; padding:22px !important; gap:11px; }
.editorial-mag-cover::before { display:none; }
.editorial-mag-cover .mag-cover { width:min(100%,520px); padding:30px 31px 26px 38px; box-shadow:8px 14px 25px #10213530; }
.editorial-mag-cover .mag-cover-brand { font-size:clamp(22px,3vw,37px); }
.editorial-mag-cover .mag-cover-series { font-size:14px; }
.editorial-mag-cover .mag-cover-copy strong { font-size:clamp(29px,4vw,49px); }
.editorial-mag-cover .mag-cover-copy>span { font-size:17px; }
.editorial-mag-cover .mag-cover-art svg { width:76%; max-height:300px; }
.editorial-mag-cover .mag-cover-no { font-size:15px; }
.cover-editorial-note { text-align:center; font:bold 11px/1.4 Arial,sans-serif; letter-spacing:.06em; }
.cover-editorial-promise { text-align:center; font:italic 15px/1.4 Georgia,serif; }
.reader-bar { z-index:20; }
.reader-help { display:flex; align-items:flex-start; gap:13px; margin:0 auto 13px; padding:12px 16px; border-left:4px solid #dcae56; border-radius:0 9px 9px 0; background:#e8eff4; max-width:1190px; color:#213b55; font-size:14px; line-height:1.45; }
.reader-help strong { flex:0 0 auto; font-size:13px; color:#0c406a; text-transform:uppercase; letter-spacing:.02em; }
.reader-help[hidden] { display:none; }
.stage .sheet.cw:not(.solved-view) { display:block !important; max-width:1160px; min-height:0 !important; }
.cw-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:23px; align-items:start; }
.stage .cw .cw-layout .cw-grid-wrap,.stage .cw .cw-layout .cw-clues { grid-row:auto !important; grid-column:auto !important; }
.cw-layout .cw-grid-wrap { margin:0; max-width:none !important; min-width:0; width:100%; }
.cw-clue-drawer { width:100%; min-width:0; }
.cw-clue-drawer>summary { display:none; cursor:pointer; font-size:14px; font-weight:bold; color:#14466e; }
.cw-clue-drawer .cw-clues { display:grid !important; grid-template-columns:1fr !important; gap:10px; overflow:auto; max-height:min(68vh,680px) !important; padding-right:7px; }
.cw-clue-drawer .cw-clues li button { font-size:15px !important; line-height:1.45; padding:9px; min-height:38px; }
.cw-clue-drawer .cw-clues h3 { font-size:19px; }
.cw-grid { max-width:100%; }
.cw .clue-bar { font-size:clamp(13px,1.5vw,16px); line-height:1.4; }
.cw-embedded .cw-grid { border-color:#315b7d; }
.cw-embedded .cell.black.embedded-tile { background:#dceaf3; border:1px solid #6588a1; display:flex; flex-direction:column; padding:1px; cursor:pointer; overflow:hidden; }
.embedded-clue-btn { display:flex; flex-direction:column; align-items:flex-start; text-align:left; justify-content:center; background:#e5f0f6; border:0; width:100%; min-height:0; height:100%; padding:2px; font-size:clamp(5.5px,.65vw,8px); line-height:1.12; color:#163955; overflow:hidden; cursor:pointer; }
.embedded-clue-btn b { font-size:clamp(8px,.8vw,11px); flex:0 0 auto; line-height:1; }
.embedded-clue-btn span { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; }
.embedded-clue-btn:hover,.embedded-clue-btn:focus-visible { background:#f8e3ae; }
.embed-explain { margin:6px 0 10px; font-size:13px; line-height:1.45; color:#31546e; }
.cr-legend { display:flex; gap:12px; align-items:center; border-radius:10px; background:#edf3f5; border:1px solid #d4e0e6; padding:12px; margin:12px 0; }
.cr-legend p { font-size:14px; line-height:1.5; }
.cipher-example { width:46px; height:55px; background:#fff; border:2px solid #425565; display:flex; align-items:center; flex-direction:column; justify-content:center; border-radius:8px; flex:0 0 46px; }
.cr-cell { min-height:58px; width:clamp(33px,7vw,48px); }
.cr-cell .c { display:flex; flex-direction:column; align-items:center; gap:0; }
.cipher-glyph { display:block; font-size:18px; line-height:1.15; color:#213e61; }
.cipher-no { display:block; font:700 9px/1 Arial,sans-serif; color:#667b8c; }
.cr-legend .cipher-glyph { font-size:23px; }
.cr-text { gap:7px 11px; }
.preview-end { padding:clamp(22px,4vw,48px) !important; background:#fffdf8; min-height:0 !important; width:min(100%,1050px); max-width:1050px !important; }
.preview-end .eyebrow { font-size:12px; }
.preview-end-symbol { border-radius:50%; width:54px; height:54px; background:#e6f3e9; color:#285c41; display:grid; place-items:center; font-size:32px; font-weight:800; margin:20px 0 8px; }
.preview-end h1 { font:700 clamp(28px,4vw,46px)/1.12 Georgia,serif; color:#153b61; margin:11px 0; }
.preview-question { font:700 22px/1.4 Georgia,serif; color:#9b6229; }
.preview-copy { font-size:17px; max-width:700px; line-height:1.6; margin:12px 0 22px; }
.preview-offer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.preview-offer-card { border:1px solid #dedad1; background:#f4f1e9; border-radius:9px; padding:15px; display:flex; flex-direction:column; gap:9px; }
.preview-offer-card span { font-size:12px; color:#666d74; }
.preview-offer-card h3 { font:700 18px/1.25 Georgia,serif; }
.preview-offer-card strong { font:700 22px/1.25 Georgia,serif; color:#173e66; }
.preview-offer-card button { margin-top:auto; }
.preview-disclaimer { color:#6f7780; font-size:12px; margin:14px 0; }
.preview-end .hero-actions a { color:#123c64; border:1px solid #7995a7; }
.preview-end .hero-actions a.primary { color:#fff; }
@media(min-width:850px) and (max-width:1130px) { .benefits-strip { grid-template-columns:repeat(2,minmax(0,1fr)); } .cw-layout { grid-template-columns:minmax(0,1fr) minmax(235px,.85fr); gap:14px; } }
@media(max-width:849px) {
 .benefits-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cw-layout { display:flex; flex-direction:column; gap:8px; }
 .cw-layout .cw-grid-wrap { width:min(100%,575px); margin:0 auto 8px; }
 .cw-clue-drawer>summary { display:block; background:#e7eef3; padding:12px 13px; border-radius:7px; list-style:revert; }
 .cw-clue-drawer:not([open])>.cw-clues { display:none !important; }
 .cw-clue-drawer[open]>.cw-clues { max-height:270px !important; margin-top:10px; padding:8px; border:1px solid #e0e5e8; border-radius:8px; }
 .stage .cw .clue-bar { top:110px; }
 .preview-offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .reader-help { padding:10px 13px; }
}
@media(max-width:560px) {
 html { scroll-padding-top:110px; }
 .carrossel-hero { grid-template-columns:minmax(0,1fr); padding:20px 17px; gap:15px; }
 .hero-magazine { display:flex; flex-direction:column; align-items:center; width:min(70%,215px); transform:none; }
 .hero-magazine .mag-cover { width:100%; }
 .hero-magazine .mag-cover-brand { font-size:16px; }
 .hero-magazine .mag-cover-copy strong { font-size:24px; }
 .mag-cover-brand { font-size:15px; }
 .mag-cover-copy strong { font-size:22px; }
 .mag-cover-art svg { max-height:140px; }
 .benefits-strip { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
 .benefit { min-height:95px; padding:10px; flex-direction:column; align-items:flex-start; gap:6px; }
 .benefit>span:last-child { font-size:12px; }
 .benefit small { font-size:11px; }
 .benefit-mark { width:29px; height:29px; flex-basis:29px; font-size:18px; }
 .theme-selection { align-items:stretch; gap:8px; flex-direction:column; }
 .theme-selection .btn { width:100%; }
 .offer-card { flex-basis:220px; min-height:245px; }
 .shelf-theme,.shelf-issue { flex:0 0 180px; }
 .reader-help { flex-direction:column; gap:4px; font-size:12px; line-height:1.4; margin:0 0 7px; padding:8px 10px; }
 .reader-help strong { font-size:11px; }
 .editorial-mag-cover { padding:13px !important; }
 .editorial-mag-cover .mag-cover { padding:15px 16px 14px 21px; max-width:380px; }
 .editorial-mag-cover .mag-cover-brand { font-size:20px; }
 .editorial-mag-cover .mag-cover-copy strong { font-size:28px; }
 .editorial-mag-cover .mag-cover-art svg { max-height:200px; }
 .editorial-mag-cover .mag-cover-copy>span { font-size:12px; }
 .cover-editorial-note { font-size:9px; }
 .cover-editorial-promise { font-size:12px; }
 .stage .cw .clue-bar { top:103px; }
 .cw-clue-drawer .cw-clues { grid-template-columns:1fr !important; }
 .embed-explain { font-size:12px; }
 .embedded-clue-btn { font-size:5px; padding:1px; }
 .embedded-clue-btn span { -webkit-line-clamp:2; }
 .embedded-clue-btn b { font-size:7px; }
 .preview-end { padding:19px !important; }
 .preview-offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .preview-offer-card { padding:10px; }
 .preview-offer-card h3 { font-size:16px; }
 .preview-offer-card strong { font-size:20px; }
 .preview-offer-card .btn { padding:8px; font-size:11px; }
 .preview-end h1 { font-size:30px; }
 .preview-question { font-size:19px; }
 .preview-copy { font-size:14px; }
 .cr-legend { padding:8px; }
 .cr-legend p { font-size:12px; }
 .cr-cell { width:clamp(30px,8vw,44px); }
}
@media(max-width:345px) {
 .benefits-strip { grid-template-columns:1fr; }
 .preview-offer-grid { grid-template-columns:1fr; }
 .mag-cover { padding:9px 9px 9px 14px; }
 .theme-foot h3 { font-size:16px; }
}
