/* Julio Ensina — Design editorial escuro, adaptado da referencia enviada pelo Diretor. */
:root{color-scheme:dark;--bg:#0b0f19;--bg-alt:#0f1422;--surface:#161b26;--surface-2:#1c2333;--stroke:#2c3345;--ink:#f3f4f6;--muted:#a9b2c4;--dim:#7f8aa2;--primary:#818cf8;--primary-strong:#6366f1;--primary-hover:#4f46e5;--success:#10b981;--round:18px;--shadow:0 18px 50px rgba(0,0,0,.22)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.64 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;overflow-x:hidden}
body::before{content:'';position:absolute;z-index:-1;top:56px;left:0;right:0;height:800px;background:radial-gradient(ellipse 48% 42% at 70% 24%,rgba(99,102,241,.13),transparent 75%),radial-gradient(ellipse 38% 38% at 10% 55%,rgba(30,75,123,.10),transparent 75%);pointer-events:none}
.container{max-width:1160px;width:min(100% - 48px,1160px);margin:0 auto}
a{color:#b5baff;text-underline-offset:4px}a:hover{color:#dde0ff}
:focus-visible{outline:3px solid #a5b4fc;outline-offset:4px}
.site-header{border-bottom:1px solid rgba(170,185,215,.12);background:rgba(11,15,25,.90)}
.header-inner{min-height:87px;display:flex;align-items:center;gap:26px;justify-content:space-between}
.logo-wrap{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none;color:var(--ink)}
.logo-mark{width:43px;height:43px;border:1px solid #666df0;border-radius:13px;display:grid;place-items:center;color:white;background:linear-gradient(145deg,#283c81,#6262dd);font-weight:900;letter-spacing:-.05em;font-size:1.06rem}
.logo-text{display:grid;line-height:1.2}.logo-text strong{font-size:1.24rem;letter-spacing:-.04em}.logo-text strong span{color:#999bff}.logo-text small{font-size:.66rem;color:var(--muted);letter-spacing:.035em;margin-top:4px}
.site-nav{display:flex;align-items:center;gap:clamp(13px,2vw,28px);flex-wrap:wrap;justify-content:flex-end}
.site-nav a{font-size:.91rem;text-decoration:none;color:#b7c0d2;font-weight:650;white-space:nowrap;transition:color .2s}
.site-nav a:hover,.site-nav a[aria-current=page]{color:#fff}
.site-nav .nav-button{border:1px solid #606b8e;padding:9px 15px;border-radius:10px;color:#ebedff}
.site-nav .nav-button:hover{border-color:var(--primary);background:rgba(129,140,248,.1)}
.hero{padding:clamp(60px,8vw,108px) 0 76px;display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(38px,5vw,75px);align-items:center}
.eyebrow{font-size:.77rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#a6a5ff}
.kicker{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(129,140,248,.32);background:rgba(129,140,248,.10);color:#b9bcff;padding:7px 13px;border-radius:99px;font-size:.79rem;font-weight:780;letter-spacing:.03em}
.kicker-dot{background:var(--success);border-radius:99px;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px rgba(16,185,129,.12)}
h1,h2,h3{letter-spacing:-.045em;line-height:1.16}
h1{font-size:clamp(2.55rem,5.5vw,4.35rem);margin:23px 0 23px;max-width:650px;font-weight:870}
h1 em,h2 em{font-style:normal;color:#9a9dff}
h2{font-size:clamp(1.65rem,2.8vw,2.34rem);margin:0 0 12px}
h3{font-size:1.21rem;margin:0 0 11px}
.lead{font-size:clamp(1.01rem,1.5vw,1.16rem);line-height:1.68;color:#b7bfd0;max-width:580px}
.hero-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;text-decoration:none;font:inherit;font-weight:760;padding:14px 22px;border-radius:12px;min-height:52px;cursor:pointer;transition:background .18s,border-color .18s,transform .18s;box-shadow:none;text-align:center}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--primary-strong);color:white;box-shadow:0 8px 32px rgba(99,102,241,.20)}
.button-primary:visited{color:white}.button-primary:hover{color:white;background:var(--primary-hover)}
.button-secondary{background:transparent;border-color:#46506a;color:#e1e5f2}.button-secondary:hover{border-color:#818cf8;background:#171e34;color:white}
.micro{font-size:.83rem;color:var(--muted)}
.hero-copy .micro{margin-top:22px}
.book-scene{position:relative;padding:15px 20px 25px 15px}
.book-scene::before{content:'';position:absolute;inset:7% 0 1% 8%;border-radius:40px;background:radial-gradient(circle at center,rgba(109,89,255,.23),transparent 64%);filter:blur(12px)}
.book-cover{position:relative;aspect-ratio:4/4.7;max-width:390px;width:100%;margin:auto;display:flex;flex-direction:column;justify-content:space-between;gap:25px;border:1px solid rgba(196,198,255,.30);border-radius:22px;padding:clamp(27px,4vw,43px);background:linear-gradient(147deg,#121f44 0%,#24266b 46%,#514ac2 100%);box-shadow:20px 24px 0 #161c30,23px 28px 60px rgba(0,0,0,.4);overflow:hidden}
.book-cover::before{content:'';position:absolute;width:280px;height:280px;border-radius:50%;right:-120px;bottom:-85px;border:1px solid rgba(255,255,255,.2);box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 95px rgba(255,255,255,.02)}
.book-cover::after{content:'';position:absolute;top:0;right:0;width:65%;height:50%;background:radial-gradient(ellipse at right top,rgba(156,169,255,.3),transparent 65%);pointer-events:none}
.book-cover>*{position:relative;z-index:1}
.book-cover small{font-size:.72rem;color:#c9d3ff;letter-spacing:.15em;text-transform:uppercase;font-weight:750}
.book-cover strong{font-size:clamp(2.3rem,5vw,3.8rem);font-weight:860;letter-spacing:-.055em;line-height:1.04}
.book-cover p{font-size:.96rem;line-height:1.55;color:#e0e2ff;max-width:250px;margin:0}
.book-sticker{position:absolute;right:-4px;bottom:8px;z-index:3;padding:12px 16px;background:#111a2b;border:1px solid #4b5270;border-radius:13px;box-shadow:var(--shadow);font-size:.84rem;color:#cad4e6;font-weight:650}
.section{padding:72px 0}
.section-alt{background:var(--bg-alt);border-block:1px solid rgba(171,188,225,.08)}
.section-heading{margin-bottom:29px;display:flex;align-items:end;justify-content:space-between;gap:20px}
.section-heading p{color:var(--muted);margin:7px 0 0;max-width:590px}
.section-heading .eyebrow{display:block;margin-bottom:11px}
.grid{display:grid;gap:19px}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--round);padding:28px;box-shadow:0 5px 18px rgba(0,0,0,.07);transition:border-color .2s,transform .2s}
.card:hover{border-color:#596183;transform:translateY(-3px)}
.card p{color:var(--muted);margin:0 0 8px}
.icon-block{height:48px;width:48px;border-radius:14px;display:grid;place-items:center;background:rgba(129,140,248,.12);border:1px solid rgba(129,140,248,.23);color:#bebfff;font-size:1.5rem;margin-bottom:22px}
.step-index{font-size:.77rem;letter-spacing:.09em;color:#a4a8ff;font-weight:800;margin-bottom:10px;display:block}
.action-section{padding:75px 0;background:radial-gradient(ellipse 50% 90% at 96% 45%,rgba(88,87,207,.15),transparent 90%),var(--bg)}
.action-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:start;gap:40px}
.prose-intro p{color:var(--muted);font-size:1.05rem}
.checklist{list-style:none;padding:0;margin:26px 0;display:grid;gap:13px}
.checklist li{padding-left:31px;position:relative;color:#c8d0df}
.checklist li::before{content:'✓';font-weight:900;color:#83f0b8;position:absolute;left:0;top:1px}
.form-panel{background:var(--surface);border:1px solid rgba(129,140,248,.48);border-radius:22px;padding:clamp(25px,4vw,38px);box-shadow:var(--shadow)}
.form-panel>h2{font-size:1.73rem}
.form-panel>p{color:var(--muted)}
.form-button{display:flex;flex-direction:column;gap:4px;margin:22px 0 0;width:100%;background:var(--primary-strong);color:white;text-decoration:none;border-radius:12px;padding:16px 20px;text-align:center;font-size:1.06rem;font-weight:800;transition:background .2s,transform .2s;box-shadow:0 10px 28px rgba(99,102,241,.2)}
.form-button:visited{color:white}.form-button:hover{background:var(--primary-hover);color:#fff;transform:translateY(-2px)}
.form-button[aria-disabled="true"]{background:#424965;cursor:not-allowed;box-shadow:none;pointer-events:none}
.countdown-launch{font-size:.8rem;font-weight:550;color:#d6dbff}
.countdown-meta{margin:12px 0 21px;color:var(--dim);font-size:.81rem}
.privacy-min{font-size:.9rem;color:var(--muted);border-top:1px solid var(--stroke);padding-top:17px;margin-top:21px}
.privacy-min strong{color:#e5e9f6}
.privacy-min p{margin:9px 0 0}
#aviso-integracao{margin:18px 0 0;color:#b5bfd4;font-size:.82rem}
.author-wrap{display:grid;grid-template-columns:1fr .95fr;gap:36px;align-items:center;border:1px solid var(--stroke);border-radius:24px;padding:clamp(27px,4vw,47px);background:linear-gradient(135deg,#151a28,#161c2b);overflow:hidden}
.author-wrap p{color:var(--muted)}
.author-visual{width:100%;max-height:330px;object-fit:cover;object-position:center;border-radius:15px;display:block}
.signature{margin-top:22px;font-size:.95rem;color:#e5e8f8;font-weight:700}
.section-cta{background:linear-gradient(112deg,#1b2350,#202257);border:1px solid #454c8e;border-radius:22px;padding:32px 40px;display:flex;gap:25px;align-items:center;justify-content:space-between}
.section-cta p{color:#cad1f1;margin:0}
.site-footer{margin-top:66px;border-top:1px solid #252c3a;background:#0a0d15}
.footer-inner{padding:31px 0 36px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:25px;align-items:center;color:#8f9ab1;font-size:.87rem}
.footer-links{display:flex;gap:16px 22px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{text-decoration:none;color:#b7bfd3}.footer-links a:hover{color:white}
.page-head{padding:74px 0 40px}.page-head h1{max-width:900px;margin:16px 0}.page-head p{max-width:780px;color:var(--muted);font-size:1.07rem}.principle{color:#c0c3ff!important;font-weight:650}
.library-section{padding:22px 0 64px}.library-section .section-heading{margin-bottom:25px}
.material-card{display:flex;flex-direction:column;overflow:hidden;padding:0}
.material-cover{min-height:185px;background:linear-gradient(137deg,#182546,#46419a);padding:22px 26px;position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:10px;overflow:hidden}
.material-cover::after{content:'';position:absolute;right:-50px;bottom:-90px;width:205px;height:205px;border:1px solid #d5d3ff30;border-radius:50%;box-shadow:0 0 0 28px #d5d3ff0a,0 0 0 56px #d5d3ff08}
.material-cover.teal{background:linear-gradient(137deg,#153b4c,#2a5481)}.material-cover.study-cover{background:linear-gradient(137deg,#292b44,#2d334d)}
.material-cover small{font-size:.71rem;letter-spacing:.15em;text-transform:uppercase;color:#dadcff;font-weight:750;position:relative;z-index:1}
.material-cover strong{font-size:1.72rem;line-height:1.13;letter-spacing:-.045em;max-width:260px;position:relative;z-index:1}
.material-body{padding:25px 27px 27px;display:flex;flex:1;flex-direction:column;gap:0}
.material-body p{flex:1}
.label{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;font-size:.76rem;font-weight:800;letter-spacing:.015em;padding:6px 11px;border:1px solid rgba(16,185,129,.3);border-radius:99px;background:rgba(16,185,129,.09);color:#8ce8bb;margin-bottom:17px}
.label.study{border-color:#636b92;background:#232942;color:#bfc4e1}
.material-status{font-size:.84rem;color:#c4cadd;margin-top:14px;padding-top:15px;border-top:1px solid var(--stroke)}
.transparency{border-left:3px solid var(--primary);border-radius:9px;padding:18px 22px;background:#151b2c;color:#c8d0e0;margin:0 0 66px}
.transparency strong{color:#e8eaff}.transparency p{margin:6px 0 0}
.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:30px;align-items:start;margin:0 auto 55px}
.legal-card{background:var(--surface);border:1px solid var(--stroke);border-radius:20px;padding:clamp(27px,4vw,46px)}
.legal-card h1{font-size:clamp(2.1rem,4vw,3rem);margin:0 0 12px}.legal-card h2{font-size:1.32rem;margin:33px 0 13px;scroll-margin-top:25px;color:#eef0ff}.legal-card h2:first-of-type{margin-top:22px}
.legal-card p,.legal-card li{color:#b9c2d4}.legal-card li{margin:12px 0}.legal-card a{word-break:break-word}.legal-card strong{color:#e7eaf5}
.legal-card .summary{background:#1f2740;border-left:3px solid var(--primary);padding:17px 20px;border-radius:10px;color:#d1d8ee}
.legal-aside{position:sticky;top:18px;border:1px solid var(--stroke);border-radius:16px;padding:23px;background:var(--surface)}
.legal-aside strong{font-size:.88rem;color:white}.legal-aside a{display:block;color:#c3c8e1;font-size:.85rem;margin-top:10px;text-decoration:none}.legal-aside a:hover{color:white}
.pref-layout{min-height:65vh;display:grid;place-items:center;padding:72px 0}
.pref-panel{max-width:690px;width:100%;background:var(--surface);border:1px solid #50578a;border-radius:23px;padding:clamp(28px,5vw,50px);box-shadow:var(--shadow)}
.pref-panel h1{font-size:clamp(1.85rem,4vw,2.7rem);margin:19px 0}.pref-panel p{color:var(--muted)}
.pref-panel .button{margin:8px 0 13px}
.status{display:none;background:#253048;border:1px solid #495678;padding:15px 17px;margin:20px 0 0;border-radius:12px;color:#ebedfa}
.status[data-show="yes"]{display:block}.status[data-state="ok"]{border-color:rgba(16,185,129,.4);background:rgba(16,185,129,.10);color:#acf1d0}.status[data-state="error"]{border-color:#c9696e;background:#50252a;color:#fff0f1}
.pref-links{border-top:1px solid var(--stroke);padding-top:20px;margin-top:28px;font-size:.9rem;color:#b5bed2}
.pref-links p{margin:8px 0}.pref-links a{word-break:break-word}
@media(max-width:930px){.hero{grid-template-columns:1fr .9fr;gap:30px}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-layout{grid-template-columns:1fr}.legal-aside{position:static;order:-1}.legal-aside .links{display:flex;gap:8px 20px;flex-wrap:wrap}.legal-aside a{margin-top:8px}}
@media(max-width:740px){.container{width:min(100% - 32px,1160px)}.header-inner{min-height:0;flex-direction:column;align-items:flex-start;padding:18px 0 15px;gap:17px}.site-nav{justify-content:flex-start;gap:13px 20px}.site-nav a{font-size:.87rem}.site-nav .nav-button{padding:7px 11px}.hero{padding:44px 0 54px;grid-template-columns:1fr}.book-scene{padding:12px 15px 28px}.book-cover{max-width:335px;min-height:365px}.book-sticker{right:5px}.grid.two,.grid.three,.action-grid,.author-wrap{grid-template-columns:1fr}.section{padding:52px 0}.section-heading{align-items:flex-start;flex-direction:column}.card{padding:23px}.author-visual{max-height:300px}.section-cta{flex-direction:column;align-items:stretch;padding:25px}.section-cta .button{width:100%}.site-footer{margin-top:44px}.footer-inner{flex-direction:column;align-items:flex-start}.footer-links{justify-content:flex-start}.page-head{padding:47px 0 29px}}
@media(max-width:430px){.button{width:100%;padding-inline:12px}.hero-links{flex-direction:column;align-items:stretch}.book-cover{max-width:300px;min-height:365px}.book-cover strong{font-size:2.75rem}.label{font-size:.72rem}.material-cover{min-height:165px}.material-cover strong{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}

.legal-page-title{font-size:clamp(2.45rem,5vw,4.1rem);line-height:1.14;letter-spacing:-.045em;font-weight:870;margin:18px 0 19px;color:var(--ink)}.legal-page-title em{font-style:normal;color:#9a9dff}

/* === Julio Ensina · home institucional / catálogo portável para WordPress === */
html{scroll-padding-top:24px}
.site-footer strong{color:#e8eaf5}
.text-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#b9c2ff;font-weight:750;white-space:nowrap}
.text-link:hover{color:#fff}
.je-hero{padding:clamp(54px,8vw,98px) 0 85px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.97fr);align-items:center;gap:clamp(24px,5vw,65px);min-height:575px}
.je-hero h1{font-size:clamp(3.45rem,6.3vw,5.5rem);letter-spacing:-.065em;line-height:1.01;margin:25px 0 24px}
.je-hero-copy{position:relative;z-index:2}.je-hero-copy .lead{max-width:510px}
.topic-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:33px}
.topic-tags span{font-size:.8rem;padding:6px 12px;color:#c5cce2;background:#171d2b;border:1px solid #394155;border-radius:99px}
.hero-art{min-height:380px;position:relative;isolation:isolate}
.hero-art::before{content:'';position:absolute;inset:5% 8%;background:radial-gradient(ellipse at center,rgba(106,96,236,.34),transparent 68%);filter:blur(20px)}
.hero-orbit{position:absolute;border:1px solid rgba(156,164,236,.14);border-radius:50%;inset:0 12%;transform:rotate(-23deg)}.orbit-two{inset:12% 0;transform:rotate(31deg)}
.hero-tile{position:absolute;background:linear-gradient(152deg,#202946,#141c30);border:1px solid #495578;border-radius:21px;padding:22px;box-shadow:0 22px 54px rgba(0,0,0,.36);display:flex;flex-direction:column;gap:7px;z-index:1}
.hero-tile strong{font-size:1.24rem;line-height:1.2;color:#f2f3ff;letter-spacing:-.04em}
.hero-tile small{font-size:.78rem;color:#b8c1d6}.tile-symbol{font-size:1.7rem;color:#c2c2ff;line-height:1.25}
.tile-top{width:235px;min-height:213px;top:2%;left:29%;transform:rotate(-5deg);background:linear-gradient(147deg,#38367a,#161e3b)}
.tile-left{width:205px;min-height:176px;left:0;bottom:8%;transform:rotate(7deg)}.tile-right{width:213px;min-height:175px;right:0;bottom:10%;transform:rotate(-4deg)}
.hero-art-sign{position:absolute;color:#858dff;font-weight:900;letter-spacing:-.1em;font-size:5rem;opacity:.13;top:31%;left:38%;z-index:0}.hero-art-sign span{color:#3bdca5}
.highlight-section{padding-top:80px;padding-bottom:87px}
.highlight-shell{background:linear-gradient(140deg,#191e31,#111827);border:1px solid #38405c;border-radius:27px;padding:clamp(18px,3vw,38px);box-shadow:0 28px 64px rgba(0,0,0,.20)}
.featured-layout{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,6vw,75px);min-height:385px}
.featured-visual{display:flex;align-items:center;justify-content:center;min-width:0}
.featured-copy h3{font-size:clamp(1.95rem,3.7vw,3.1rem);line-height:1.13;max-width:600px;letter-spacing:-.055em;margin:11px 0 17px}
.featured-copy p{color:var(--muted);max-width:460px;font-size:1.08rem;line-height:1.58}
.featured-copy .button{margin-top:22px}.featured-release{color:#bdc4d9;font-size:.87rem;margin:12px 0}
.carousel-controls{display:flex;align-items:center;gap:20px;padding-top:22px;border-top:1px solid #30384d;min-height:70px}
.carousel-counter{color:#a3aec4;font-weight:700;font-variant-numeric:tabular-nums;font-size:.84rem;white-space:nowrap}
.carousel-dots{display:flex;align-items:center;gap:8px;flex:1;justify-content:center}.dot{width:10px;height:10px;border-radius:99px;border:0;background:#55607e;cursor:pointer;padding:0}.dot.current{width:28px;background:#a7a8ff}.carousel-arrows{display:flex;gap:10px}
.icon-button{width:42px;height:42px;background:#232b40;border:1px solid #505b79;border-radius:50%;color:white;cursor:pointer;font-size:1.35rem}.icon-button:hover{background:#3c437e}
/* Livro leve em CSS, sem WebGL ou bibliotecas externas. */
.book-frame{--book-width:225px;position:relative;max-width:100%;min-height:310px;display:grid;align-content:center;justify-items:center;isolation:isolate;perspective:1200px;padding:10px 12px 49px;overflow:visible}
.book-frame::before{content:'';position:absolute;inset:12% 6% 14%;background:radial-gradient(ellipse,rgba(103,97,211,.23),transparent 74%);z-index:-1}
.book-3d{width:min(var(--book-width),100%);aspect-ratio:.72/1;position:relative;transform-style:preserve-3d;transform:rotateY(-17deg) rotateZ(-2deg);filter:drop-shadow(17px 21px 19px rgba(0,0,0,.42));transition:transform .35s ease,filter .35s ease;z-index:1}
.book-face{width:100%;height:100%;padding:22px 18px;display:flex;flex-direction:column;justify-content:space-between;position:relative;border:1px solid rgba(224,226,255,.25);border-radius:3px 12px 12px 3px;overflow:hidden;background:linear-gradient(146deg,#222d67 0%,#4c48a4 100%)}
.book-face::before{content:'';position:absolute;right:-54px;bottom:-42px;border:1px solid rgba(255,255,255,.23);box-shadow:0 0 0 24px rgba(255,255,255,.035),0 0 0 54px rgba(255,255,255,.02);width:185px;height:185px;border-radius:50%}
.book-face::after{content:'';position:absolute;inset:0 auto 0 0;width:7px;background:linear-gradient(90deg,#070e2e77,transparent);pointer-events:none}
.book-spine{position:absolute;z-index:-1;left:-15px;top:2px;height:calc(100% - 4px);width:17px;background:linear-gradient(90deg,#070d2c,#293378);transform:rotateY(-90deg);transform-origin:right;box-shadow:inset -3px 0 3px #ffffff12}
.book-series{z-index:1;font-size:.6rem;color:#e2e6ff;letter-spacing:.12em;line-height:1.5;font-weight:800}
.book-glyph{z-index:1;font-size:3.1rem;color:#f7f6ff;opacity:.83;text-shadow:0 0 30px #d0c9ff4a;align-self:flex-end;line-height:1}
.book-face strong{z-index:1;font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.1;letter-spacing:-.035em;color:white;max-width:100%;overflow-wrap:break-word}
.book-face small{z-index:1;font-size:.57rem;font-weight:750;letter-spacing:.08em;color:#e4e6ff}
.book-cyan .book-face{background:linear-gradient(152deg,#123748,#2d6a88)}.book-cyan .book-spine{background:#123848}
.book-amber .book-face{background:linear-gradient(148deg,#3a3154,#705342)}.book-amber .book-spine{background:#372940}
.book-slate .book-face{background:linear-gradient(150deg,#242b43,#46546d)}.book-slate .book-spine{background:#20263c}
.book-rose .book-face{background:linear-gradient(150deg,#412943,#784868)}.book-rose .book-spine{background:#35223a}
.book-zoom{font:inherit;font-size:.75rem;font-weight:700;line-height:1.2;margin-top:18px;position:relative;color:#d6dcfa;padding:8px 11px;border-radius:9px;background:#252c45;border:1px solid #4d567a;cursor:pointer;z-index:2}
.book-frame:not(.is-zoomed):hover .book-3d{transform:rotateY(-4deg) rotateZ(0deg) scale(1.055)}
.book-frame.is-zoomed{z-index:4}.book-frame.is-zoomed .book-3d{transform:rotateY(-3deg) scale(1.16);filter:drop-shadow(12px 25px 30px rgba(0,0,0,.6))}
.featured-book{--book-width:232px;min-height:345px}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.category-card{display:flex;gap:17px;align-items:center;border:1px solid #384059;border-radius:18px;background:linear-gradient(145deg,#191f30,#151b2a);padding:25px 22px;color:#ecf0ff;text-decoration:none;transition:border-color .2s,transform .2s}
.category-card:hover{border-color:#989bfa;color:white;transform:translateY(-3px)}.category-card>span:nth-child(2){display:grid;gap:5px;flex:1;min-width:0}
.category-card strong{font-size:1.02rem;line-height:1.22}.category-card small{color:#aab5cc;font-size:.8rem;line-height:1.35}.category-icon{width:48px;height:48px;flex-shrink:0;background:#33345b;border:1px solid #50578c;border-radius:13px;color:#cbcaff;display:grid;place-items:center;font-size:1.5rem}.category-arrow{color:#a9b0e5;font-size:1.25rem}
.simple-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.simple-steps>div{display:flex;align-items:center;gap:16px;background:#171e2e;border:1px solid #313a50;border-radius:15px;padding:20px}.simple-steps b{display:grid;place-items:center;width:50px;height:50px;flex-shrink:0;border:1px solid #545c8c;border-radius:13px;color:#c5c9ff;background:#2a2e53}.simple-steps span{display:grid;gap:3px}.simple-steps small{color:var(--muted);font-size:.78rem;line-height:1.4}
.about-grid{display:grid;grid-template-columns:1fr .9fr;gap:40px;align-items:center}.about-grid>div>p{color:var(--muted);max-width:560px}.about-grid .principle{max-width:440px;color:#d0ceff!important}.about-image-wrap{background:#171c2c;border:1px solid #39415d;border-radius:20px;padding:10px;overflow:hidden}.about-image-wrap img{display:block;width:100%;height:auto;border-radius:12px;object-fit:cover}
.compact-hero{padding:65px 0 36px}.compact-hero h1{max-width:850px;font-size:clamp(2.45rem,5vw,4.25rem)}.compact-hero p{max-width:725px}
.library-modern{padding:25px 0 80px}.library-modern .section-heading{align-items:center}.muted-note{font-size:.83rem;color:#afb7ca}
.filter-list{display:flex;gap:10px;margin:0 0 26px;flex-wrap:wrap}.category-filters{margin-top:-14px}.category-filters[hidden]{display:none}.filter-button{font:inherit;font-size:.9rem;font-weight:700;background:#181e2d;border:1px solid #3e4960;border-radius:99px;color:#b9c4d8;cursor:pointer;padding:9px 19px}.filter-button.active,.filter-button:hover{background:#34366b;border-color:#9298eb;color:#fff}
.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch}
.product-card{background:#171e2b;border:1px solid #31384c;border-radius:20px;display:flex;flex-direction:column;align-items:stretch;overflow:hidden;transition:border-color .2s,transform .2s}.product-card:hover{border-color:#676e9d;transform:translateY(-3px)}
.product-card .book-frame{background:radial-gradient(ellipse at 50% 44%,#3436553d,#111827 82%);min-height:305px;padding:18px 12px 8px;--book-width:157px;overflow:hidden}
.product-card .book-face{padding:16px 12px}.product-card .book-series{font-size:.47rem}.product-card .book-glyph{font-size:2.4rem}.product-card .book-face strong{font-size:1.13rem}.product-card .book-face small{font-size:.42rem}.product-card .book-zoom{margin-top:12px}
.product-card .book-frame.is-zoomed{overflow:visible}
.product-card-info{display:flex;flex-direction:column;flex:1;padding:19px 22px 23px}.product-card-info h3{margin:11px 0 9px;font-size:1.17rem;line-height:1.25}.product-card-info p{font-size:.9rem;color:#b4bfd1;line-height:1.5;margin:0 0 17px;flex:1}
.product-badge{display:inline-flex;align-self:flex-start;background:#103c31;border:1px solid #247456;color:#b7efce;border-radius:99px;padding:4px 10px;font-size:.72rem;font-weight:750;line-height:1.5}
.product-badge.is-study{background:#292b43;border-color:#5a6089;color:#d5d7f2}
.card-action{border-top:1px solid #353c52;padding-top:13px;color:#b6bdff;text-decoration:none;font-weight:760;font-size:.86rem;display:flex;justify-content:space-between;align-items:center}.card-action:hover{color:#fff}
.fine-print{font-size:.81rem;color:#aab3c8;line-height:1.5}.two-up-info{display:flex;align-items:center;justify-content:space-between;gap:30px}.two-up-info p{color:#aeb8ca;max-width:680px}
.topic-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.topic-info{background:#161d2a;border:1px solid #35405a;border-radius:20px;padding:30px 25px;scroll-margin-top:25px}.topic-symbol{font-size:2.1rem;color:#bcbdff}.topic-info h2{font-size:1.4rem;margin-top:20px}.topic-info p{color:#afbace}.coming-tag{display:inline-block;border:1px solid #484c73;color:#c4c7e5;border-radius:99px;padding:6px 10px;font-size:.76rem}
.product-detail-main{padding:38px 0 80px}.back-link{font-size:.91rem;text-decoration:none;color:#b7c1e8}.product-detail-grid{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:60px;align-items:center;margin-top:28px}.detail-book-area{border:1px solid #373e5a;background:#151b29;border-radius:22px;padding:32px 5px}.detail-book{--book-width:275px;min-height:425px}.detail-information h1{font-size:clamp(2.4rem,4.7vw,4.2rem);margin:13px 0 15px}.detail-information .lead{margin-top:24px}.detail-list{list-style:none;display:grid;gap:12px;margin:24px 0;padding:0;color:#d5dbec}.detail-list li::before{content:'✓';color:#72e2ac;margin-right:11px}.detail-information .release-line{margin:16px 0;color:#b9c2d3}.unavailable-note{background:#242a3d;border:1px solid #555d81;border-radius:12px;padding:16px 20px;color:#c7cce4;font-size:.9rem}.not-found{max-width:690px;padding:80px 0}
.gratitude-main{min-height:68vh;display:grid;place-items:center;padding:65px 0}.gratitude-panel{max-width:725px;border:1px solid #4c5978;background:linear-gradient(145deg,#192238,#141925);padding:clamp(25px,5vw,55px);border-radius:25px}.gratitude-panel h1{font-size:clamp(2.3rem,4.5vw,3.8rem)}.gratitude-icon{display:grid;place-items:center;width:58px;height:58px;background:#174535;border:1px solid #25724d;color:#b7f7d6;border-radius:18px;font-size:2rem;margin-bottom:20px}.gratitude-steps{display:grid;gap:10px;margin:28px 0}.gratitude-steps>div{display:flex;gap:13px;align-items:center;color:#dee4f3}.gratitude-steps span{width:29px;height:29px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;border:1px solid #595f91;background:#303258;color:#e0e3ff;font-weight:800;font-size:.83rem}
.loading-note{color:#b9c2d7;padding:22px 0}
@media (max-width:980px){.je-hero{grid-template-columns:1fr .9fr}.library-grid{grid-template-columns:repeat(2,1fr)}.category-grid,.topic-layout{grid-template-columns:repeat(2,1fr)}.simple-steps{grid-template-columns:1fr 1fr}.hero-tile{padding:15px}.tile-top{left:24%}.tile-right{right:-3%}.tile-left{left:-6%}}
@media (max-width:740px){.je-hero{grid-template-columns:1fr;padding:45px 0 46px;gap:10px}.je-hero h1{font-size:clamp(3rem,11vw,4.3rem)}.hero-art{min-height:310px;max-width:440px;width:100%;margin:auto}.tile-top{top:0;left:29%;width:192px;min-height:182px}.tile-left{left:1%;bottom:10%;width:170px;min-height:152px}.tile-right{right:0;bottom:9%;width:172px;min-height:152px}.hero-tile strong{font-size:1rem}.highlight-section{padding:52px 0}.featured-layout{grid-template-columns:1fr;gap:16px;min-height:0}.featured-book{min-height:290px;--book-width:195px}.featured-copy{padding:0 5px 22px}.featured-copy h3{font-size:2rem}.category-grid,.topic-layout,.simple-steps,.about-grid,.product-detail-grid{grid-template-columns:1fr}.about-grid{gap:25px}.product-detail-grid{gap:24px}.detail-book-area{padding:20px 6px}.detail-book{min-height:350px;--book-width:200px}.two-up-info{flex-direction:column;align-items:flex-start}.library-modern{padding-bottom:55px}}
@media (max-width:540px){.library-grid{grid-template-columns:1fr}.product-card{display:grid;grid-template-columns:128px minmax(0,1fr);min-height:190px;overflow:visible}.product-card .book-frame{padding:15px 4px 8px;--book-width:103px;min-height:207px}.product-card .book-face{padding:10px 8px}.product-card .book-series{font-size:.36rem}.product-card .book-glyph{font-size:1.55rem}.product-card .book-face strong{font-size:.85rem}.product-card .book-face small{font-size:.30rem}.product-card .book-zoom{font-size:.65rem;padding:6px;margin-top:8px}.product-card .book-zoom span{display:none}.product-card-info{padding:16px 13px 16px 7px}.product-card-info h3{font-size:1.04rem}.product-card-info p{font-size:.82rem;line-height:1.43}.filter-button{padding:8px 14px}.featured-layout .featured-book{min-height:295px}.carousel-controls{gap:12px}.category-card{padding:19px}.hero-art{min-height:285px}.tile-top{width:165px;min-height:172px}.tile-left,.tile-right{width:153px;min-height:144px}.hero-tile{padding:14px}}
@media(prefers-reduced-motion:reduce){.book-3d,.category-card,.product-card{transition:none!important}.book-frame:not(.is-zoomed):hover .book-3d{transform:rotateY(-17deg) rotateZ(-2deg)}}

/* Marca JE oficial: avatar gráfico sem foto pessoal */
.logo-je-asset { width: 46px; height: 46px; flex: 0 0 46px; display: block; object-fit: cover; border-radius: 12px; background: #070b20; border: 1px solid rgba(139,92,246,.4); }

/* Entrega dos materiais gratuitos — botões discretos e responsivos. */
.product-card-actions{display:grid;gap:10px;margin-top:auto}
.free-form-action{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 12px;border-radius:11px;text-decoration:none;font-size:.86rem;font-weight:750;color:#fff;background:#5255d4;border:1px solid #7275ff;transition:background .18s}
.free-form-action:hover{color:#fff;background:#6468f2}
.free-form-action:focus-visible{outline:3px solid #c4b5fd;outline-offset:3px}

/* Modelos JE 02 e 03: mockups gerados pelo HTML editável, sem modificar o catálogo de preços. */
.book-frame-image{width:100%;max-width:100%;overflow:visible}
.je-product-mockup{display:block;position:relative;width:min(95%,380px);height:290px;object-fit:contain;filter:drop-shadow(0 14px 13px rgba(0,0,0,.20));transition:transform .26s ease, filter .26s ease}
.book-frame-image:hover:not(.is-zoomed) .je-product-mockup{transform:scale(1.05)}
.book-frame-image.is-zoomed .je-product-mockup{transform:scale(1.16);filter:drop-shadow(0 21px 23px rgba(0,0,0,.34))}
.product-card .book-frame-image{min-height:320px;padding:15px 10px 6px}
.product-card .je-product-mockup{height:255px;max-width:100%}
.featured-book .je-product-mockup{height:335px}
.detail-book .je-product-mockup{height:425px}
@media(max-width:540px){.product-card .book-frame-image{min-height:207px;padding:15px 4px 5px}.product-card .je-product-mockup{height:142px}.detail-book .je-product-mockup{height:310px}}
@media(prefers-reduced-motion:reduce){.je-product-mockup{transition:none}.book-frame-image:hover:not(.is-zoomed) .je-product-mockup{transform:none}}
