/* rfe.css  — rebuilt shared stylesheet for Rapid Fire English */
/* Paste ALL of this into WordPress: Appearance -> Customize -> Additional CSS */

.rfe-page{--purple:#5F1665; --magenta:#BC397A; --red:#FF002B; --orange:#FF6600; --navy:#001933;
    --ink:#15161c; --muted:#6a7689; --line:#e7e0ec; --soft:#f7f4f9;
    --grad-cta:linear-gradient(135deg,var(--red),var(--orange));
    --grad-dark:radial-gradient(1200px 700px at 78% -15%, rgba(188,57,122,.55) 0%, rgba(0,25,51,0) 60%),
                radial-gradient(900px 600px at 0% 110%, rgba(255,102,0,.16) 0%, rgba(0,25,51,0) 55%),
                linear-gradient(160deg,#22082a 0%, #3a0f43 35%, #001933 100%);
    --maxw:1140px;}
.rfe-page *{margin:0;padding:0;box-sizing:border-box}
.rfe-page{scroll-behavior:smooth}
.rfe-page{font-family:"Poppins",system-ui,sans-serif;color:var(--ink);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.rfe-page img{max-width:100%;display:block}
.rfe-page a{text-decoration:none;color:inherit}
.rfe-page .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.rfe-page h1, .rfe-page h2, .rfe-page h3{letter-spacing:-.03em;line-height:1.04;font-weight:900}
.rfe-page section{padding:92px 0}
.rfe-page .annc{background:var(--navy);color:#fff;text-align:center;font-size:.9rem;font-weight:500;padding:11px 16px}
.rfe-page .annc a{color:#ffd9e7;font-weight:700}
.rfe-page .annc .new{background:var(--grad-cta);color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.08em;padding:3px 9px;border-radius:999px;margin-right:10px;text-transform:uppercase}
.rfe-page header.nav{position:sticky;top:0;z-index:40;background:rgba(15,8,22,.82);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.rfe-page .nav .row{display:flex;align-items:center;justify-content:space-between;height:74px}
.rfe-page .brand{font-weight:900;font-size:1.2rem;color:#fff;letter-spacing:-.02em}
.rfe-page .brand .t{color:#ff8fc4}
.rfe-page .brand .p{color:var(--red)}
.rfe-page .brand .r{color:#fff}
.rfe-page .menu{display:flex;gap:30px;list-style:none}
.rfe-page .menu a{color:rgba(255,255,255,.8);font-weight:500;font-size:.96rem}
.rfe-page .menu a:hover{color:#fff}
.rfe-page .btn{display:inline-flex;align-items:center;gap:8px;font-weight:800;border-radius:999px;cursor:pointer;border:0;transition:transform .15s, box-shadow .15s;font-family:inherit}
.rfe-page .btn:hover{transform:translateY(-2px)}
.rfe-page .btn-cta{background:var(--grad-cta);color:#fff;padding:13px 24px;font-size:.96rem;box-shadow:0 10px 26px rgba(255,0,43,.32)}
.rfe-page .btn-lg{padding:18px 34px;font-size:1.05rem}
.rfe-page .btn-light{background:#fff;color:var(--red)}
.rfe-page .btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.35);color:#fff;padding:12px 22px;font-weight:700}
.rfe-page .hero{background:var(--grad-dark);color:#fff;padding:74px 0 86px;overflow:hidden}
.rfe-page .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center}
.rfe-page .eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;color:#ff8fc4;margin-bottom:18px}
.rfe-page .hero h1{font-size:clamp(2.5rem,5.2vw,4.1rem);margin-bottom:22px}
.rfe-page .hero h1 .hl{color:#ff9ecb;background:linear-gradient(120deg,#ff9ecb,#ff6600);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.rfe-page .hero .sub{font-size:1.2rem;color:rgba(255,255,255,.84);max-width:36ch;margin-bottom:30px}
.rfe-page .capture{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:22px;max-width:480px;backdrop-filter:blur(6px)}
.rfe-page .capture .f{display:flex;gap:10px;flex-wrap:wrap}
.rfe-page .capture input{flex:1;min-width:140px;border:0;border-radius:10px;padding:14px 16px;font-family:inherit;font-size:1rem}
.rfe-page .capture .btn-cta{width:100%;justify-content:center;margin-top:10px}
.rfe-page .capture .micro{font-size:.82rem;color:rgba(255,255,255,.6);margin-top:12px;text-align:center}
.rfe-page .hero .byline{font-size:.92rem;color:rgba(255,255,255,.66);margin-top:22px;max-width:46ch;border-left:2px solid var(--magenta);padding-left:14px}
.rfe-page .portrait{aspect-ratio:4/5;border-radius:20px;background:
      radial-gradient(120% 80% at 50% 0%, rgba(255,143,196,.35), rgba(0,25,51,0) 60%),
      linear-gradient(160deg,#4a1350,#001933);
      border:1px solid rgba(255,255,255,.16);display:flex;align-items:flex-end;justify-content:center;position:relative;overflow:hidden}
.rfe-page .portrait .tag{position:absolute;top:18px;left:18px;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);border:1px dashed rgba(255,255,255,.3);padding:6px 10px;border-radius:8px}
.rfe-page .portrait .name{padding:20px;width:100%;background:linear-gradient(transparent,rgba(0,0,0,.5));color:#fff}
.rfe-page .portrait .name strong{display:block;font-size:1.1rem;font-weight:800}
.rfe-page .portrait .name span{font-size:.85rem;color:rgba(255,255,255,.75)}
.rfe-page .stats{background:var(--navy);color:#fff;padding:34px 0}
.rfe-page .stats .row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.rfe-page .stats .n{font-size:1.9rem;font-weight:900;color:#ff9ecb;background:linear-gradient(120deg,#ff9ecb,#ff6600);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.rfe-page .stats .l{font-size:.86rem;color:rgba(255,255,255,.7);margin-top:4px}
.rfe-page .shead{max-width:720px;margin:0 auto 50px;text-align:center}
.rfe-page .klabel{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:800;color:var(--magenta);margin-bottom:14px;display:block}
.rfe-page .shead h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:14px}
.rfe-page .shead p{color:var(--muted);font-size:1.12rem}
.rfe-page .lib{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.rfe-page .item{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .18s, box-shadow .18s}
.rfe-page .item:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(34,8,42,.13)}
.rfe-page .item .top{padding:30px 30px 0;position:relative}
.rfe-page .item .cover{height:150px;border-radius:14px;margin-top:22px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.5rem;letter-spacing:-.02em;text-align:center;padding:16px}
.rfe-page .cov-guide{background:linear-gradient(160deg,#2a0b2e,#5F1665 60%,#8e2566)}
.rfe-page .cov-method{background:linear-gradient(135deg,#5F1665,#BC397A)}
.rfe-page .cov-blog{background:linear-gradient(135deg,#001933,#0a2f5c)}
.rfe-page .cov-challenge{background:var(--grad-cta)}
.rfe-page .badge{position:absolute;top:0;right:30px;background:var(--magenta);color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:0 0 8px 8px}
.rfe-page .badge.live{background:var(--grad-cta)}
.rfe-page .item .body{padding:24px 30px 30px;display:flex;flex-direction:column;flex:1}
.rfe-page .item h3{font-size:1.35rem;font-weight:800;margin-bottom:8px;letter-spacing:-.02em}
.rfe-page .item p{color:var(--muted);font-size:.98rem;margin-bottom:20px;flex:1}
.rfe-page .item .go{font-weight:800;color:var(--red);font-size:.98rem}
.rfe-page .item .free{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--magenta);margin-bottom:10px}
.rfe-page .thesis{background:linear-gradient(135deg,var(--purple),var(--magenta));color:#fff;text-align:center}
.rfe-page .thesis blockquote{font-size:clamp(1.6rem,3.4vw,2.5rem);font-weight:800;line-height:1.2;max-width:18ch;margin:0 auto 18px;letter-spacing:-.02em}
.rfe-page .thesis p{color:rgba(255,255,255,.85);max-width:52ch;margin:0 auto;font-size:1.1rem}
.rfe-page .founder{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center}
.rfe-page .founder .portrait{aspect-ratio:1/1}
.rfe-page .founder h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-bottom:18px}
.rfe-page .founder p{color:#33405a;margin-bottom:14px}
.rfe-page .founder .big{font-size:1.18rem;color:var(--ink);font-weight:500}
.rfe-page .faq{max-width:820px;margin:0 auto}
.rfe-page details{border:1px solid var(--line);border-radius:14px;margin-bottom:14px;background:#fff}
.rfe-page summary{cursor:pointer;padding:22px 26px;font-weight:700;font-size:1.1rem;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.rfe-page summary::-webkit-details-marker{display:none}
.rfe-page summary::after{content:"+";color:var(--red);font-size:1.6rem;font-weight:400}
.rfe-page details[open] summary::after{content:"–"}
.rfe-page details .a{padding:0 26px 24px;color:var(--muted)}
.rfe-page .final{background:var(--grad-dark);color:#fff;text-align:center}
.rfe-page .final h2{font-size:clamp(2rem,4.4vw,3.2rem);margin-bottom:16px}
.rfe-page .final p{color:rgba(255,255,255,.82);max-width:50ch;margin:0 auto 30px;font-size:1.15rem}
.rfe-page .final .capture{margin:0 auto}
.rfe-page footer{background:#0b0710;color:rgba(255,255,255,.6);padding:64px 0 30px}
.rfe-page .fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;margin-bottom:40px}
.rfe-page footer h4{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}
.rfe-page footer ul{list-style:none}
.rfe-page footer li{margin-bottom:10px;font-size:.95rem}
.rfe-page footer a:hover{color:#fff}
.rfe-page .fbottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.82rem}
.rfe-page .fphrase{color:var(--magenta);font-style:italic}
@media(max-width:900px){
.rfe-page .hero-grid, .rfe-page .founder{grid-template-columns:1fr;gap:34px}
.rfe-page .lib{grid-template-columns:1fr}
.rfe-page .stats .row{grid-template-columns:1fr 1fr;gap:26px}
.rfe-page .fgrid{grid-template-columns:1fr 1fr}
.rfe-page .menu{display:none}
.rfe-page section{padding:64px 0}
}
.rfe-page .page-hero{background:var(--grad-dark);color:#fff;padding:96px 0 80px}
.rfe-page .page-hero h1{font-size:clamp(2.2rem,4.8vw,3.6rem);margin-bottom:20px;max-width:20ch}
.rfe-page .page-hero .eyebrow{margin-bottom:16px}
.rfe-page .lead{font-size:1.18rem;line-height:1.6;color:#33405a;max-width:62ch}
.rfe-page .page-hero .lead{color:rgba(255,255,255,.85)}
.rfe-page .narrow .lead, .rfe-page .section-head .lead{margin-left:auto;margin-right:auto}
.rfe-page .btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.rfe-page .section-head{max-width:760px;margin:0 auto 46px;text-align:center}
.rfe-page .section-head h2{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:14px}
.rfe-page .section-head p{color:var(--muted);font-size:1.12rem}
.rfe-page .section-soft{background:var(--soft)}
.rfe-page .section-dark{background:var(--grad-dark);color:#fff}
.rfe-page .section-dark h2, .rfe-page .section-dark h3{color:#fff}
.rfe-page .section-dark p{color:rgba(255,255,255,.8)}
.rfe-page .section-dark .section-head p{color:rgba(255,255,255,.8)}
.rfe-page .grid{display:grid;gap:24px}
.rfe-page .grid-2{grid-template-columns:repeat(2,1fr)}
.rfe-page .grid-3{grid-template-columns:repeat(3,1fr)}
.rfe-page .card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;transition:transform .18s,box-shadow .18s}
.rfe-page .card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(34,8,42,.10)}
.rfe-page .card h3{font-size:1.2rem;font-weight:800;margin-bottom:8px}
.rfe-page .card p{color:var(--muted);font-size:.98rem}
.rfe-page .ic{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin-bottom:16px;background:var(--soft)}
.rfe-page .ic.navy{background:linear-gradient(135deg,var(--navy),#0a2f5c)}
.rfe-page .ic.rapex{background:linear-gradient(135deg,var(--purple),var(--magenta))}
.rfe-page .split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.rfe-page .split.reverse .media{order:-1}
.rfe-page .media{width:100%}
.rfe-page .panel{border-radius:20px;padding:32px;color:#fff}
.rfe-page .panel.rapex{background:linear-gradient(150deg,var(--purple),var(--magenta))}
.rfe-page .panel.tai{background:linear-gradient(150deg,var(--navy),#0a3a6b)}
.rfe-page .panel h3{font-size:1.25rem;margin-bottom:16px;color:#fff}
.rfe-page .panel ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.rfe-page .panel li{padding-left:26px;position:relative;color:rgba(255,255,255,.92);font-size:.98rem}
.rfe-page .panel li::before{content:"\2713";position:absolute;left:0;color:#fff;font-weight:800}
.rfe-page .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:step}
.rfe-page .step .n{counter-increment:step;width:46px;height:46px;border-radius:50%;background:var(--grad-cta);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.rfe-page .step .n::before{content:counter(step)}
.rfe-page .step h3{color:#fff;font-size:1.1rem;margin-bottom:8px}
.rfe-page .step p{color:rgba(255,255,255,.78);font-size:.95rem}
.rfe-page .cta-band{background:linear-gradient(135deg,var(--purple),var(--magenta));color:#fff;border-radius:26px;padding:60px 40px;text-align:center}
.rfe-page .cta-band h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin-bottom:14px;color:#fff}
.rfe-page .cta-band p{color:rgba(255,255,255,.9);max-width:50ch;margin:0 auto 26px;font-size:1.1rem}
.rfe-page .prose{max-width:760px;margin:0 auto;padding:0 24px}
.rfe-page .prose p{margin-bottom:20px;font-size:1.08rem;color:#33405a}
.rfe-page .prose p.big{font-size:1.2rem;color:var(--ink);font-weight:500}
.rfe-page .prose h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin:42px 0 18px}
.rfe-page .hl{color:var(--magenta);font-weight:800}
.rfe-page .pull{font-size:clamp(1.4rem,2.8vw,2rem);font-weight:800;line-height:1.25;color:var(--ink);margin:34px 0;letter-spacing:-.02em}
.rfe-page blockquote.q{border-left:4px solid var(--magenta);background:var(--soft);padding:26px 30px;border-radius:0 16px 16px 0;margin:30px 0}
.rfe-page .q p{font-size:1.18rem;font-style:italic;color:var(--ink);margin-bottom:10px}
.rfe-page .q cite{font-style:normal;font-weight:700;color:var(--magenta)}
.rfe-page .timeline{max-width:820px;margin:0 auto}
.rfe-page .tl{position:relative;padding:0 0 34px 40px;border-left:2px solid var(--line)}
.rfe-page .tl:last-child{border-left-color:transparent}
.rfe-page .tl::before{content:"";position:absolute;left:-9px;top:2px;width:16px;height:16px;border-radius:50%;background:var(--grad-cta)}
.rfe-page .tl .yr{font-weight:800;color:var(--magenta);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.rfe-page .tl h3{font-size:1.2rem;margin-bottom:6px}
.rfe-page .tl p{color:var(--muted)}
.rfe-page .narrow{max-width:760px;margin:0 auto;padding:0 24px}
@media(max-width:900px){
.rfe-page .grid-2{grid-template-columns:1fr}
.rfe-page .grid-3{grid-template-columns:1fr}
.rfe-page .split{grid-template-columns:1fr;gap:30px}
.rfe-page .split.reverse .media{order:0}
.rfe-page .steps{grid-template-columns:1fr 1fr;gap:30px}
}
@media(max-width:560px){
.rfe-page .steps{grid-template-columns:1fr}
}
/* heading contrast fixes */
.rfe-page h1,.rfe-page h2,.rfe-page h3{color:var(--ink)}
.rfe-page .hero h1,.rfe-page .hero h2,.rfe-page .page-hero h1,.rfe-page .page-hero h2,.rfe-page .section-dark h1,.rfe-page .section-dark h2,.rfe-page .section-dark h3,.rfe-page .thesis h2,.rfe-page .thesis blockquote,.rfe-page .final h1,.rfe-page .final h2,.rfe-page .cta-band h2{color:#fff}

/* mobile nav (hamburger) */
.rfe-page .nav-toggle,.rfe-page .nav-toggle-cb{display:none}
.rfe-page .menu .menu-cta{display:none}
@media(max-width:900px){
.rfe-page header.nav .row{position:relative;flex-wrap:nowrap}
.rfe-page .nav-cta-desktop{display:none}
.rfe-page .nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;cursor:pointer}
.rfe-page .nav-toggle span{display:block;width:24px;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}
.rfe-page header.nav .menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:rgba(15,8,22,.98);backdrop-filter:blur(12px);padding:8px 24px 18px;border-bottom:1px solid rgba(255,255,255,.12)}
.rfe-page .nav-toggle-cb:checked ~ .menu{display:flex}
.rfe-page header.nav .menu li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.rfe-page header.nav .menu a{font-size:1.05rem;color:#fff}
.rfe-page .menu .menu-cta{display:block;border-bottom:0;padding-top:16px}
.rfe-page .nav-toggle-cb:checked ~ .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.rfe-page .nav-toggle-cb:checked ~ .nav-toggle span:nth-child(2){opacity:0}
.rfe-page .nav-toggle-cb:checked ~ .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}

/* tesis page */
.rfe-tesis{--bg:#f5f1ea;--paper:#fffdf9;--paper-2:#ffffff;--text:#1d2430;--muted:#596170;--line:rgba(29,36,48,.10);--line-strong:rgba(29,36,48,.16);--shadow:0 18px 40px rgba(21,28,38,.08);--shadow-soft:0 8px 24px rgba(21,28,38,.05);--purple:#6f3d90;--pink:#d93d7a;--orange:#ff6b1a;--max:1100px;}.rfe-tesis .highlight-block{background:linear-gradient( 180deg,rgba(111,61,144,0.06),rgba(217,61,122,0.04) );border:1px solid rgba(111,61,144,0.15);border-radius:18px;padding:18px 20px;margin:18px 0;box-shadow:0 6px 18px rgba(0,0,0,0.04);}.rfe-tesis .highlight-block strong{display:block;font-family:"Poppins",sans-serif;font-size:1.05rem;font-weight:800;color:#6f3d90;margin-bottom:6px;}.rfe-tesis .highlight-block p{margin:0;}.rfe-tesis *{box-sizing:border-box;}.rfe-tesis{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}.rfe-tesis{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(111,61,144,.06),transparent 24%),radial-gradient(circle at top right,rgba(255,107,26,.05),transparent 20%),linear-gradient(180deg,#f8f5f0 0%,#f3efe8 100%);font-family:"Poppins",system-ui,sans-serif;min-height:100vh;}.rfe-tesis img{max-width:100%;display:block;}.rfe-tesis a{color:var(--purple);text-decoration:underline;text-underline-offset:2px;}.rfe-tesis h1,.rfe-tesis h2,.rfe-tesis h3,.rfe-tesis p,.rfe-tesis ul,.rfe-tesis ol{margin:0;}.rfe-tesis ul,.rfe-tesis ol{padding:0;}.rfe-tesis .container{width:min(var(--max),calc(100% - 28px));margin:0 auto;}.rfe-tesis .topbar{display:none;}.rfe-tesis .nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;}.rfe-tesis .brand{display:flex;align-items:center;gap:12px;}.rfe-tesis .brand img{height:38px;width:auto;}.rfe-tesis .hero{padding:46px 0 18px;}.rfe-tesis .hero-card{max-width:920px;margin:0 auto;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.86));border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);padding:42px 34px;text-align:center;}.rfe-tesis .doc-label{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:rgba(111,61,144,.08);border:1px solid rgba(111,61,144,.10);color:var(--purple);font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;}.rfe-tesis h1{font-size:clamp(2.3rem,4.8vw,4.5rem);line-height:1.02;letter-spacing:-.05em;font-weight:900;color:#141922;margin-bottom:16px;}.rfe-tesis .hero-subtitle{max-width:760px;margin:0 auto;font-size:1.12rem;line-height:1.8;color:var(--muted);}.rfe-tesis .hero-meta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px;}.rfe-tesis .meta-item{padding:12px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--muted);font-size:.94rem;box-shadow:var(--shadow-soft);text-align:center;}.rfe-tesis .section{padding:18px 0;}.rfe-tesis .reading-card{max-width:920px;margin:0 auto;background:var(--paper);border:1px solid rgba(29,36,48,.08);border-radius:28px;box-shadow:var(--shadow);padding:38px 34px;overflow:hidden;}.rfe-tesis h2{font-size:clamp(1.85rem,3vw,2.5rem);line-height:1.14;letter-spacing:-.04em;font-weight:800;color:#171c25;margin:2px 0 22px;}.rfe-tesis h3{font-size:1.16rem;line-height:1.45;font-weight:750;color:#202734;margin:24px 0 10px;}.rfe-tesis p,.rfe-tesis li{font-family:"Source Serif 4",Georgia,serif;font-size:1.08rem;line-height:1.9;color:#2b3240;font-weight:400;overflow-wrap:anywhere;}.rfe-tesis p{margin:0 0 18px;}.rfe-tesis .reading-list{list-style:none;display:grid;gap:12px;margin:10px 0 18px;}.rfe-tesis .reading-list li{position:relative;padding:16px 18px 16px 48px;background:linear-gradient(180deg,rgba(111,61,144,.035),rgba(217,61,122,.025));border:1px solid rgba(111,61,144,.10);border-radius:18px;}.rfe-tesis .reading-list li::before{content:"•";position:absolute;left:20px;top:13px;font-size:1.4rem;line-height:1;color:var(--pink);font-weight:900;}.rfe-tesis .refs-list{padding-left:24px;display:grid;gap:14px;}.rfe-tesis .refs-list li{color:#384152;overflow-wrap:anywhere;}.rfe-tesis .footer{padding:28px 0 48px;text-align:center;color:#7a8393;font-size:.92rem;}.rfe-tesis .pull-quote{margin:22px 0;padding:18px 22px;border-left:4px solid var(--pink);background:linear-gradient(180deg,rgba(111,61,144,.045),rgba(217,61,122,.03));border-radius:16px;font-family:"Poppins",system-ui,sans-serif;font-size:1.02rem;line-height:1.7;font-weight:700;color:#202734;}.rfe-tesis .ref-link{color:var(--purple);text-decoration:none;font-family:"Poppins",system-ui,sans-serif;font-size:1.05em;font-weight:900;}.rfe-tesis .title-break{display:block;margin-top:18px;}@media(max-width:760px){.rfe-tesis .hero-card,.rfe-tesis .reading-card{padding:22px 16px;border-radius:20px;}.rfe-tesis h1{font-size:clamp(2rem,11vw,3.05rem);}.rfe-tesis h2{font-size:clamp(1.5rem,7vw,1.95rem);}.rfe-tesis p,.rfe-tesis li{font-size:1rem;line-height:1.72;}.rfe-tesis .meta-item{width:100%;}}
/* hide kadence chrome (use custom header/footer site-wide) */
#masthead,#colophon{display:none!important}

/* ===================== RFE Branded Blog (Kadence) ===================== */
body.blog, body.archive, body.single-post {
  font-family:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
/* ---------- Archive header ---------- */
body.blog .content-container::before{
  content:"RAPID FIRE ENGLISH \00B7 BLOG";
  display:block;text-align:center;color:#BC397A;font-weight:800;
  letter-spacing:.14em;font-size:.78rem;text-transform:uppercase;margin:6px 0 8px;
}
body.blog .site-main::before{
  content:"Deja de entender ingl\00E9s y empieza a hablarlo";
  display:block;text-align:center;max-width:20ch;margin:0 auto 36px;
  font-size:clamp(1.9rem,4vw,2.8rem);font-weight:800;line-height:1.12;
  letter-spacing:-.02em;color:#1d1230;
}
/* ---------- Archive grid + cards ---------- */
body.blog ul.kadence-posts-list{gap:28px;}
body.blog .loop-entry.content-bg{
  background:#fff;border:1px solid #ebe4f1;border-radius:18px;overflow:hidden;
  box-shadow:0 6px 24px rgba(34,8,42,.05);
  transition:transform .18s ease,box-shadow .18s ease;height:100%;
}
body.blog .loop-entry.content-bg:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(34,8,42,.12);}
body.blog .loop-entry .entry-content-wrap{padding:26px 26px 30px;}
body.blog .entry-taxonomies{margin-bottom:12px;}
body.blog .category-links a, body.single-post .category-links a{
  display:inline-block;background:#f7f3fa;color:#BC397A;font-weight:700;
  font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;
  padding:5px 12px;border-radius:999px;text-decoration:none;transition:background .15s,color .15s;
}
body.blog .category-links a:hover, body.single-post .category-links a:hover{background:#BC397A;color:#fff;}
body.blog .loop-entry .entry-title{font-size:1.22rem;line-height:1.3;font-weight:800;margin:0 0 10px;}
body.blog .loop-entry .entry-title a{color:#1d1230;text-decoration:none;}
body.blog .loop-entry .entry-title a:hover{color:#BC397A;}
body.blog .entry-meta{font-size:.82rem;color:#5f5873;}
body.blog .entry-meta a{color:#5f5873;text-decoration:none;}
body.blog .entry-meta .meta-label{display:none;}
body.blog .loop-entry .entry-summary, body.blog .loop-entry .entry-content{color:#5f5873;font-size:.96rem;line-height:1.6;}
body.blog .loop-entry .more-link, body.blog .loop-entry .post-readmore{
  display:inline-block;margin-top:14px;color:#BC397A;font-weight:700;text-decoration:none;
}
body.blog .loop-entry .more-link:hover{text-decoration:underline;}
/* ---------- Single post ---------- */
body.single-post .entry-header{text-align:center;margin-bottom:8px;}
body.single-post .entry-taxonomies{margin-bottom:16px;}
body.single-post h1.entry-title{
  font-size:clamp(2rem,4.4vw,3rem);font-weight:800;line-height:1.15;
  letter-spacing:-.02em;color:#1d1230;margin:0 auto 16px;max-width:24ch;
}
body.single-post .entry-meta{justify-content:center;color:#5f5873;font-size:.85rem;margin-bottom:6px;}
body.single-post .entry-meta .meta-label{display:none;}
body.single-post .entry-content{color:#2c2540;font-size:1.08rem;line-height:1.75;}
body.single-post .entry-content p{margin:0 0 1.25em;}
body.single-post .entry-content h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:#1d1230;margin:1.8em 0 .6em;letter-spacing:-.01em;}
body.single-post .entry-content h3{font-size:1.3rem;font-weight:700;color:#1d1230;margin:1.5em 0 .5em;}
body.single-post .entry-content a{color:#BC397A;text-decoration:underline;text-underline-offset:2px;}
body.single-post .entry-content a:hover{color:#5F1665;}
body.single-post .entry-content strong{color:#1d1230;}
body.single-post .entry-content blockquote{border-left:4px solid #BC397A;background:#f7f3fa;padding:18px 24px;border-radius:0 14px 14px 0;margin:1.6em 0;font-style:italic;color:#1d1230;}
body.single-post .entry-content ul, body.single-post .entry-content ol{margin:0 0 1.25em;padding-left:1.4em;}
body.single-post .entry-content li{margin-bottom:.5em;}
/* branded CTA box (injected by footer script) */
.rfe-post-cta{margin:40px 0 8px;background:linear-gradient(135deg,#5F1665,#BC397A);border-radius:20px;padding:34px 30px;text-align:center;color:#fff;}
.rfe-post-cta h3{color:#fff;font-size:1.4rem;font-weight:800;margin:0 0 8px;line-height:1.25;}
.rfe-post-cta p{color:rgba(255,255,255,.9);margin:0 0 20px;font-size:1rem;}
.rfe-post-cta a.rfe-cta-btn{display:inline-block;background:#fff;color:#5F1665;font-weight:800;padding:14px 30px;border-radius:999px;text-decoration:none;font-size:1rem;transition:transform .15s;}
.rfe-post-cta a.rfe-cta-btn:hover{transform:translateY(-2px);}

/* rfe-cta-fix: override entry-content specificity inside CTA box */
body.single-post .entry-content .rfe-post-cta h3{color:#fff;}
body.single-post .entry-content .rfe-post-cta p{color:rgba(255,255,255,.9);}
body.single-post .entry-content .rfe-post-cta a.rfe-cta-btn{color:#5F1665;text-decoration:none;}
body.single-post .entry-content .rfe-post-cta a.rfe-cta-btn:hover{color:#5F1665;text-decoration:none;}

/* footer social icons */
.rfe-page footer .fsocial{display:flex;gap:10px;margin-top:18px;}
.rfe-page footer .fsocial a{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);transition:background .15s,color .15s,transform .15s;}
.rfe-page footer .fsocial a:hover{background:linear-gradient(135deg,#5F1665,#BC397A);color:#fff;transform:translateY(-2px);}
.rfe-page footer .fsocial svg{width:18px;height:18px;display:block;}

/* footer microsoft for startups badge */
.rfe-page footer .fbadge{margin-top:20px;}
.rfe-page footer .fbadge img{width:180px;max-width:75%;height:auto;border-radius:10px;display:block;}
/* diagnostico verdict title contrast on dark panel */
.rfe-diag .verdict h2{color:#fff !important;}
