@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-400.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-500.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-600.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:600}@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-700.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:700}@font-face{font-family:'Fraunces';src:url('fonts/fraunces-500.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:'Fraunces';src:url('fonts/fraunces-600.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:600}@font-face{font-family:'Fraunces';src:url('fonts/fraunces-700.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:700}
/*
 * Atlas de conversaciones: humanist editorial portal in ink blue, parchment paper and conversation ochre.
 * Each component should ask: does this reinforce or dilute the sense of a clear, human learning route?
 */
:root { --background:#f8f4ec; --foreground:#183448; --card:#fffdf9; --card-foreground:#183448; --primary:#183448; --primary-foreground:#fffdf9; --secondary:#e8eef0; --secondary-foreground:#183448; --muted:#eee8dc; --muted-foreground:#617481; --accent:#f19b57; --accent-foreground:#183448; --border:#d9d6ce; --input:#d9d6ce; --ring:#f19b57; --radius:0; }
* { border-color:var(--border); }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--background); color:var(--foreground); font-family:"DM Sans",sans-serif; overflow-x:hidden; }
button, input { font:inherit; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
img { display:block; max-width:100%; }
.site-container { width:min(1240px, calc(100% - 48px)); margin:0 auto; }
.eyebrow { margin:0 0 13px; color:#547083; font-size:11px; font-weight:700; letter-spacing:.13em; line-height:1.2; text-transform:uppercase; }
main { overflow:hidden; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { text-wrap:balance; }

/* Atlas refinement pass: visible route devices and editorial fichas on every major page. */
.brand-mark.brand-mark::after { border:1px dashed rgba(24,52,72,.58); border-radius:50%; content:""; height:25px; left:1px; position:absolute; top:1px; transform:rotate(18deg); width:25px; }
.page-intro.page-intro { overflow:hidden; position:relative; }
.page-intro.page-intro::after { border:1px dashed rgba(241,155,87,.7); border-left:0; border-radius:0 90px 90px 0; content:""; height:128px; position:absolute; right:-38px; top:30px; width:160px; }
.page-intro.page-intro::before { background:#f19b57; border-radius:50%; content:""; height:7px; position:absolute; right:74px; top:91px; width:7px; }
.page-intro-grid.page-intro-grid { position:relative; z-index:1; }
.home-hero.home-hero { position:relative; }
.home-hero.home-hero::after { border-top:1px dashed rgba(24,52,72,.36); content:""; height:96px; left:5%; position:absolute; top:26px; transform:rotate(-9deg); width:138px; }
.home-hero.home-hero::before { background:#f19b57; border-radius:50%; content:""; height:7px; left:15%; position:absolute; top:16px; width:7px; }
.home-hero .hero-grid { position:relative; z-index:1; }
.route-ochre.route-ochre { background:#f3e3d5; box-shadow:inset 7px 0 #f19b57; }
body .route-steps li span { color:#f19b57; opacity:1; }
.school-card.school-card { position:relative; }
.school-card.school-card::after { background:#183448; color:#fffdf9; content:"FICHA · CENTRO"; font-size:8px; font-weight:700; letter-spacing:.11em; padding:6px 7px; position:absolute; right:0; top:48px; transform:rotate(90deg) translateX(100%); transform-origin:top right; }
.exam-card.exam-card { position:relative; }
.exam-card.exam-card::after { background:#f19b57; color:#183448; content:"EXAMEN"; font-size:8px; font-weight:700; letter-spacing:.11em; padding:6px 7px; position:absolute; right:0; top:45px; transform:rotate(90deg) translateX(100%); transform-origin:top right; }
.article-body.article-body::before { color:#547083; content:"RUTA DE DECISIÓN  ·  META  ┄┄  FORMATO  ┄┄  PRUEBA  ┄┄  DECISIÓN"; display:block; font-size:9px; font-weight:700; letter-spacing:.1em; line-height:1.3; margin:0 0 15px; padding:10px 0; text-transform:uppercase; }
.profile-hero.profile-hero { overflow:hidden; position:relative; }
.profile-hero.profile-hero::after { border:1px dashed rgba(24,52,72,.4); border-radius:50%; content:""; height:150px; position:absolute; right:10%; top:-72px; width:150px; }
.sale-page-hero.sale-page-hero { overflow:hidden; position:relative; }
.sale-page-hero.sale-page-hero::after { border:1px dashed rgba(241,155,87,.65); border-radius:50%; content:""; height:230px; position:absolute; right:-85px; top:-76px; width:230px; }
.sale-page-hero .sale-page-grid { position:relative; z-index:1; }

/* Brand, sale strip, and navigation */
.sale-strip { background:#f19b57; color:#183448; font-size:12px; }
.sale-strip-inner { display:flex; align-items:center; justify-content:space-between; gap:22px; min-height:35px; }
.sale-strip p { display:flex; gap:10px; margin:0; line-height:1.3; }
.sale-strip p span { opacity:.8; }
.sale-link { align-items:center; display:inline-flex; font-weight:700; gap:4px; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.main-header { position:sticky; top:0; z-index:50; background:rgba(248,244,236,.94); border-bottom:1px solid rgba(24,52,72,.12); backdrop-filter:blur(15px); }
.header-inner { height:92px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { align-items:center; display:inline-flex; font-family:"Fraunces",serif; font-size:36px; font-weight:650; letter-spacing:-.055em; line-height:1; white-space:nowrap; }
.brand-dot { color:#f19b57; }
.brand-mark { flex:none; position:relative; width:28px; height:28px; display:inline-block; margin-right:28px; transform:scale(1.5); transform-origin:left center; }
.brand-mark span { position:absolute; width:9px; height:3px; background:#183448; transform-origin:0 50%; border-radius:3px; }
.brand-mark span:nth-child(1){left:5px;top:12px;transform:rotate(-45deg)} .brand-mark span:nth-child(2){left:14px;top:6px;transform:rotate(45deg)} .brand-mark span:nth-child(3){left:14px;top:20px;transform:rotate(-45deg)} .brand-mark span:nth-child(4){left:5px;top:15px;transform:rotate(45deg)}
.brand-mark i { position:absolute; width:6px; height:6px; border-radius:50%; background:#f19b57; left:11px; top:11px; }
.desktop-nav { display:flex; gap:22px; margin-left:auto; }
.desktop-nav a { color:#355669; font-size:13px; font-weight:600; transition:color .18s ease; }
.desktop-nav a:hover { color:#f19b57; }
.header-actions { display:flex; align-items:center; gap:11px; }
.search-button,.menu-button { display:grid; place-items:center; height:36px; width:36px; border:0; background:transparent; color:#183448; transition:background .18s ease; }
.search-button:hover,.menu-button:hover { background:#e8eef0; }
.route-cta,.primary-link { align-items:center; background:#183448; color:#fffdf9; display:inline-flex; font-size:13px; font-weight:700; gap:8px; padding:12px 15px; transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s ease; }
.route-cta:hover,.primary-link:hover { background:#254c63; transform:translateY(-2px); }.route-cta:active,.primary-link:active { transform:scale(.97); }
.menu-button { display:none; }
.mobile-nav { display:none; }

/* Universal page scaffolding */
.page-intro { padding:91px 0 70px; background:#f8f4ec; }
.page-intro-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:80px; align-items:end; }
.page-intro h1,.profile-hero h1,.sale-page-hero h1 { margin:0; max-width:740px; font-family:"Fraunces",serif; font-size:clamp(45px,5vw,72px); font-weight:600; letter-spacing:-.055em; line-height:.99; }
.page-intro-copy { padding-bottom:4px; }.page-intro-copy>p { color:#547083; font-size:18px; line-height:1.6; max-width:520px; }
.inline-link { align-items:center; border-bottom:1px solid #183448; display:inline-flex; font-size:13px; font-weight:700; gap:6px; padding-bottom:4px; }
.inline-link:hover { border-color:#f19b57; color:#f19b57; }
.metric-note { color:#547083; display:flex; flex-direction:column; font-size:13px; gap:4px; }.metric-note strong { color:#f19b57; font-family:"Fraunces",serif; font-size:36px; letter-spacing:-.05em; line-height:.9; }
.content-section { padding:92px 0; }
.section-title-row { display:flex; justify-content:space-between; align-items:end; gap:26px; margin-bottom:36px; }.section-title-row h2 { font-family:"Fraunces",serif; font-size:clamp(31px,3.5vw,48px); font-weight:600; letter-spacing:-.05em; line-height:1.02; margin:0; }.section-intro { color:#617481; max-width:610px; margin:14px 0 0; line-height:1.55; }
.chip { display:inline-flex; align-items:center; font-size:10px; font-weight:700; letter-spacing:.08em; padding:6px 8px; text-transform:uppercase; }.chip-blue { background:#dfeaec; color:#183448; }.chip-ochre { background:#f8d5b9; color:#8c4316; }.chip-green { background:#dce8da; color:#34543f; }.chip-cream { background:#eee8dc; color:#547083; }

/* Homepage */
.home-hero { padding:48px 0 82px; background:linear-gradient(90deg,#f8f4ec 0%,#f8f4ec 53%,#f2ece2 53%,#f2ece2 100%); }.hero-grid { display:grid; grid-template-columns:.92fr 1.08fr; align-items:stretch; min-height:560px; }.hero-copy { display:flex; flex-direction:column; justify-content:center; padding:40px 50px 40px 0; }.hero-eyebrow { display:flex; gap:8px; align-items:center; }.hero-eyebrow span { display:inline-block; width:21px; height:1px; background:#f19b57; }.hero-copy h1 { font-family:"Fraunces",serif; font-size:clamp(53px,5.8vw,84px); font-weight:600; letter-spacing:-.07em; line-height:.91; margin:0; max-width:650px; }.hero-copy h1 em,.objective-title em { color:#547083; font-style:normal; font-variation-settings:"SOFT" 70,"WONK" 1; }.hero-lead { color:#547083; font-size:18px; line-height:1.57; margin:27px 0; max-width:500px; }.hero-actions { display:flex; flex-wrap:wrap; gap:18px; align-items:center; }.secondary-link { align-items:center; display:inline-flex; font-size:13px; font-weight:700; gap:7px; }.secondary-link:hover { color:#f19b57; }.hero-notes { display:flex; gap:27px; margin-top:40px; color:#617481; font-size:12px; }.hero-notes b { color:#183448; font-family:"Fraunces",serif; font-size:24px; letter-spacing:-.04em; margin-right:4px; }.hero-media { position:relative; overflow:visible; min-height:560px; }.hero-media>img { width:100%; height:100%; min-height:560px; object-fit:cover; object-position:center; }.hero-card { background:#fffdf9; bottom:27px; box-shadow:0 14px 34px rgba(24,52,72,.15); left:-54px; max-width:260px; padding:21px; position:absolute; }.card-kicker { color:#f19b57; display:block; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.hero-card p { font-family:"Fraunces",serif; font-size:20px; letter-spacing:-.035em; line-height:1.1; margin:9px 0 17px; }.hero-card a { align-items:center; display:inline-flex; font-size:12px; font-weight:700; gap:5px; }.hero-curved-label { bottom:54px; color:#fffdf9; font-size:10px; font-weight:700; letter-spacing:.15em; position:absolute; right:-35px; text-transform:uppercase; transform:rotate(90deg); transform-origin:center; }
.home-pathways { background:#183448; color:#fffdf9; padding:88px 0; }.pathways-heading { display:grid; grid-template-columns:.65fr 1.25fr 1fr; gap:33px; align-items:baseline; padding-bottom:34px; }.pathways-heading .eyebrow { color:#f19b57; }.pathways-heading h2 { font-family:"Fraunces",serif; font-size:42px; font-weight:600; letter-spacing:-.05em; line-height:1; margin:0; }.pathways-heading>p:last-child { color:#c5d2d6; font-size:15px; line-height:1.55; margin:0; }.pathways-list { border-top:1px solid rgba(255,255,255,.2); }.pathway-row { display:grid; grid-template-columns:90px 1.15fr 1.12fr 25px; gap:20px; align-items:center; border-bottom:1px solid rgba(255,255,255,.2); padding:21px 0; transition:padding .18s ease,color .18s ease; }.pathway-row:hover { color:#f19b57; padding-left:9px; }.pathway-number { color:#f19b57; font-family:"Fraunces",serif; font-size:23px; }.pathway-row h3 { font-family:"Fraunces",serif; font-size:24px; font-weight:500; letter-spacing:-.035em; margin:0; }.pathway-row p { color:#b3c3ca; font-size:13px; line-height:1.45; margin:0; }.pathway-row>svg { justify-self:end; }
.home-curated { padding:105px 0; }.curated-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:2px; }.featured-story { background:#e8eef0; color:#183448; display:flex; flex-direction:column; justify-content:end; min-height:460px; padding:42px; position:relative; transition:background .2s ease,transform .2s ease; }.featured-story:hover { background:#d8e6e7; transform:translateY(-4px); }.featured-story::before { background:radial-gradient(circle at 50% 45%,transparent 0 72px,#183448 73px 75px,transparent 76px),radial-gradient(circle at 50% 45%,transparent 0 124px,rgba(24,52,72,.13) 125px 126px,transparent 127px); content:""; height:280px; opacity:.95; position:absolute; right:23px; top:14px; width:280px; }.featured-index { color:#547083; font-size:11px; font-weight:700; letter-spacing:.1em; position:relative; text-transform:uppercase; }.featured-story h3 { font-family:"Fraunces",serif; font-size:clamp(33px,3.2vw,47px); font-weight:600; letter-spacing:-.06em; line-height:1.01; margin:15px 0; max-width:700px; position:relative; }.featured-story p { color:#547083; line-height:1.54; max-width:510px; position:relative; }.story-link { align-items:center; display:flex; font-size:13px; font-weight:700; gap:7px; margin-top:8px; position:relative; }.mini-stories { display:grid; }.mini-story { border:1px solid #d9d6ce; border-left:0; display:flex; flex-direction:column; justify-content:space-between; min-height:153px; padding:22px 25px; position:relative; transition:background .18s ease; }.mini-story:hover { background:#fffdf9; }.mini-story>div { display:flex; align-items:center; justify-content:space-between; }.mini-story>div>span:last-child { color:#80929b; font-size:11px; }.mini-story h3 { font-family:"Fraunces",serif; font-size:22px; font-weight:500; letter-spacing:-.04em; line-height:1.05; margin:12px 25px 6px 0; }.mini-story>svg { position:absolute; bottom:23px; right:25px; }
.home-objective { background:#efe3d4; padding:92px 0; }.objective-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:96px; }.objective-title h2 { font-family:"Fraunces",serif; font-size:clamp(40px,4vw,58px); font-weight:600; letter-spacing:-.06em; line-height:.98; margin:0; }.objective-title>p:last-child { color:#617481; line-height:1.55; max-width:360px; margin:20px 0 0; }.objective-cards { display:grid; gap:1px; }.objective-cards>a { align-items:center; background:rgba(255,253,249,.72); display:grid; gap:16px; grid-template-columns:58px 1fr 18px; min-height:94px; padding:17px 20px; transition:background .18s ease,transform .18s ease; }.objective-cards>a:hover { background:#fffdf9; transform:translateX(5px); }.objective-cards strong { font-family:"Fraunces",serif; font-size:22px; font-weight:500; letter-spacing:-.035em; }.objective-cards p { color:#617481; font-size:12px; margin:3px 0 0; }.stamp { align-items:center; border-radius:50%; display:inline-flex; font-family:"Fraunces",serif; font-size:17px; height:46px; justify-content:center; width:46px; }.stamp-blue { background:#183448; color:#fffdf9; }.stamp-ochre { background:#f19b57; color:#183448; }.stamp-green { background:#6f8d76; color:#fffdf9; }
.home-directory { align-items:center; display:grid; grid-template-columns:1.05fr .95fr; gap:90px; padding:108px 0; }.directory-image { position:relative; }.directory-image img { aspect-ratio:4/3; height:100%; object-fit:cover; }.directory-image span { align-items:center; background:#183448; bottom:0; color:#fffdf9; display:flex; font-size:11px; font-weight:700; gap:6px; left:0; padding:12px 14px; position:absolute; }.directory-copy h2 { font-family:"Fraunces",serif; font-size:clamp(38px,4vw,57px); font-weight:600; letter-spacing:-.06em; line-height:.98; margin:0; }.directory-copy>p:not(.eyebrow) { color:#617481; font-size:16px; line-height:1.62; margin:22px 0; max-width:440px; }.directory-meta { border-top:1px solid #d9d6ce; display:flex; gap:15px; margin-top:35px; padding-top:15px; }.directory-meta span { color:#547083; font-size:11px; font-weight:700; text-transform:uppercase; }.directory-meta span+span:before { color:#f19b57; content:"•"; margin-right:15px; }
.home-certificate { background:#183448; color:#fffdf9; }.certificate-grid { display:grid; grid-template-columns:.94fr 1.06fr; align-items:center; gap:74px; min-height:426px; }.certificate-grid .eyebrow { color:#f19b57; }.certificate-grid h2 { font-family:"Fraunces",serif; font-size:clamp(39px,4vw,57px); font-weight:600; letter-spacing:-.06em; line-height:.98; margin:0; }.certificate-grid p:not(.eyebrow) { color:#c5d2d6; line-height:1.56; margin:20px 0 25px; max-width:440px; }.light-link { color:#fffdf9; }.certificate-image { align-self:stretch; position:relative; }.certificate-image img { height:100%; min-height:426px; object-fit:cover; width:100%; }.certificate-tag { align-items:center; background:#f19b57; bottom:23px; color:#183448; display:flex; font-size:11px; font-weight:700; gap:7px; left:-22px; padding:12px 15px; position:absolute; }
.home-community { display:grid; grid-template-columns:.8fr 1.2fr; gap:85px; padding:100px 0; }.home-community h2 { font-family:"Fraunces",serif; font-size:43px; font-weight:600; letter-spacing:-.055em; line-height:1; margin:0; }.community-links { border-top:1px solid #d9d6ce; }.community-links a { align-items:center; border-bottom:1px solid #d9d6ce; display:grid; grid-template-columns:32px 1fr 16px; gap:10px; padding:17px 0; transition:color .18s ease,padding .18s ease; }.community-links a:hover { color:#f19b57; padding-left:7px; }.community-links b { display:block; font-family:"Fraunces",serif; font-size:20px; font-weight:500; letter-spacing:-.035em; }.community-links small { color:#617481; font-size:11px; }

/* Routes */
.route-selector-wrap { background:#e8eef0; padding:38px 0; }.route-selector { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:center; }.route-selector h2 { font-family:"Fraunces",serif; font-size:34px; font-weight:600; letter-spacing:-.05em; line-height:1.02; margin:0; }.route-selector-options { display:grid; grid-template-columns:1fr 1fr; gap:1px; }.route-selector-options a { align-items:center; background:#f8f4ec; display:grid; gap:8px; grid-template-columns:28px 20px 1fr 15px; min-height:69px; padding:12px 14px; transition:background .18s ease; }.route-selector-options a:hover { background:#fffdf9; }.route-selector-options strong { font-family:"Fraunces",serif; font-size:17px; font-weight:500; letter-spacing:-.025em; }.route-code { color:#f19b57; font-size:10px; font-weight:700; }.route-stack { display:grid; gap:1px; }.route-block { display:grid; grid-template-columns:130px 1fr .95fr 48px; align-items:stretch; min-height:215px; padding:0 27px; }.route-ink { background:#183448; color:#fffdf9; }.route-ochre { background:#f19b57; color:#183448; }.route-green { background:#6f8d76; color:#fffdf9; }.route-cream { background:#e9e3d6; color:#183448; }.route-block-index { display:flex; flex-direction:column; font-size:10px; font-weight:700; letter-spacing:.1em; padding:25px 0; text-transform:uppercase; }.route-block-index svg { margin-top:auto; }.route-block-main { align-self:center; padding:26px 22px 26px 0; }.route-block-main h2 { font-family:"Fraunces",serif; font-size:clamp(29px,3vw,43px); font-weight:600; letter-spacing:-.055em; line-height:1.01; margin:12px 0; }.route-duration { align-items:center; display:flex; font-size:12px; gap:7px; margin:0; opacity:.76; }.route-steps { align-self:center; list-style:none; margin:0; padding:12px 0; }.route-steps li { border-bottom:1px solid currentColor; display:flex; font-size:12px; gap:11px; line-height:1.25; opacity:.9; padding:8px 0; }.route-steps li span { font-size:10px; font-weight:700; opacity:.7; }.route-arrow { align-items:center; border-left:1px solid currentColor; display:flex; justify-content:center; opacity:.85; transition:background .18s ease; }.route-arrow:hover { background:rgba(255,255,255,.13); }.path-visual-section { background:#efe3d4; margin-top:80px; padding:76px 0; }.path-visual-grid { display:grid; grid-template-columns:1fr .85fr; gap:93px; align-items:center; }.path-visual-grid img { aspect-ratio:16/9; object-fit:cover; }.path-visual-grid h2 { font-family:"Fraunces",serif; font-size:43px; font-weight:600; letter-spacing:-.055em; line-height:1; margin:0; }.path-visual-grid p:not(.eyebrow) { color:#617481; line-height:1.6; margin:18px 0 26px; }

/* Courses */
.comparison-table { border-top:2px solid #183448; }.comparison-head,.comparison-row { display:grid; grid-template-columns:1.1fr 1.1fr .95fr .9fr .85fr 35px; gap:20px; align-items:center; }.comparison-head { border-bottom:1px solid #d9d6ce; color:#617481; font-size:10px; font-weight:700; letter-spacing:.08em; padding:13px 0; text-transform:uppercase; }.comparison-row { border-bottom:1px solid #d9d6ce; min-height:108px; transition:background .18s ease,padding .18s ease; }.comparison-row:hover { background:#fffdf9; padding-left:12px; }.comparison-row h3 { font-family:"Fraunces",serif; font-size:22px; font-weight:500; letter-spacing:-.035em; line-height:1.05; margin:0; }.comparison-row p { color:#617481; font-size:12px; line-height:1.4; margin:0; }.comparison-row p:nth-of-type(3) { align-items:center; display:flex; gap:5px; }.comparison-row>a { display:grid; place-items:center; }.course-feature { background:#183448; color:#fffdf9; margin-top:20px; padding:88px 0; }.course-feature-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:100px; align-items:center; }.course-feature .eyebrow { color:#f19b57; }.course-feature h2 { font-family:"Fraunces",serif; font-size:clamp(37px,4vw,53px); font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; max-width:570px; }.check-list { margin:26px 0; }.check-list p { align-items:start; color:#dae5e8; display:flex; font-size:14px; gap:10px; line-height:1.42; margin:11px 0; }.check-list svg { color:#f19b57; flex:none; margin-top:1px; }.course-scorecard { background:#f19b57; color:#183448; min-height:270px; padding:29px; position:relative; }.scorecard-number { font-family:"Fraunces",serif; font-size:62px; font-weight:600; letter-spacing:-.08em; line-height:.85; opacity:.3; position:absolute; right:20px; top:17px; }.course-scorecard p { font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.course-scorecard h3 { font-family:"Fraunces",serif; font-size:30px; font-weight:600; letter-spacing:-.05em; line-height:1.05; margin:42px 0 17px; max-width:300px; position:relative; }.scorecard-line { background:#183448; display:block; height:1px; opacity:.35; }.course-scorecard .muted-copy { font-size:12px; font-weight:400; letter-spacing:0; line-height:1.5; opacity:.8; text-transform:none; }

/* School directory */
.directory-toolbar { background:#e8eef0; border-top:1px solid #c9d5d8; border-bottom:1px solid #c9d5d8; }.directory-toolbar-inner { display:flex; align-items:center; gap:16px; min-height:72px; }.directory-search { align-items:center; background:#fffdf9; color:#617481; display:flex; font-size:12px; gap:9px; min-width:276px; padding:11px 13px; }.directory-toolbar button { align-items:center; background:transparent; border:0; color:#183448; display:flex; font-size:12px; font-weight:700; gap:6px; padding:8px; }.city-pills { align-items:center; display:flex; gap:3px; margin-left:auto; }.city-pills>span { color:#617481; font-size:11px; }.city-pills button:hover { color:#f19b57; }.directory-heading { align-items:end; display:grid; grid-template-columns:1fr .65fr; gap:45px; margin-bottom:39px; }.directory-heading h2 { font-family:"Fraunces",serif; font-size:44px; font-weight:600; letter-spacing:-.055em; line-height:1; margin:0; }.directory-heading>p { color:#617481; font-size:14px; line-height:1.55; margin:0; }.directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#d9d6ce; }.school-card { background:#fffdf9; display:flex; flex-direction:column; min-height:289px; padding:25px; transition:transform .18s ease; }.school-card:hover { transform:translateY(-4px); z-index:1; }.school-card-top { align-items:center; display:flex; justify-content:space-between; }.school-number { color:#f19b57; font-family:"Fraunces",serif; font-size:24px; font-weight:600; letter-spacing:-.04em; }.school-card h3 { font-family:"Fraunces",serif; font-size:27px; font-weight:500; letter-spacing:-.05em; line-height:1.02; margin:30px 0 9px; }.school-location { align-items:center; color:#617481; display:flex; font-size:11px; gap:5px; margin:0; }.school-detail { color:#547083; font-size:13px; line-height:1.5; margin:18px 0; }.school-card-footer { align-items:center; border-top:1px solid #e6e1d8; color:#617481; display:flex; font-size:11px; justify-content:space-between; margin-top:auto; padding-top:14px; }.school-card-footer a { align-items:center; color:#183448; display:flex; font-size:12px; font-weight:700; gap:5px; }.school-spotlight { background:#efe3d4; padding:84px 0; }.school-spotlight-grid { align-items:center; display:grid; grid-template-columns:1.08fr .92fr; gap:95px; }.image-frame { position:relative; }.image-frame img { aspect-ratio:4/3; object-fit:cover; }.image-frame span { background:#fffdf9; bottom:-14px; font-size:11px; font-weight:700; left:25px; padding:9px 12px; position:absolute; }.school-spotlight h2 { font-family:"Fraunces",serif; font-size:46px; font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; }.school-spotlight p:not(.eyebrow) { color:#617481; line-height:1.57; margin:19px 0 25px; }

/* Certifications */
.cert-hero { background:#e8eef0; padding:58px 0; }.cert-hero-grid { align-items:stretch; display:grid; grid-template-columns:.85fr 1.15fr; gap:95px; }.cert-hero-grid>div { display:flex; flex-direction:column; justify-content:center; }.cert-hero h2 { font-family:"Fraunces",serif; font-size:46px; font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; }.cert-hero img { aspect-ratio:4/3; height:100%; object-fit:cover; }.question-list { display:grid; gap:1px; margin-top:30px; }.question-list span { background:#f8f4ec; display:flex; font-family:"Fraunces",serif; font-size:16px; gap:12px; padding:12px; }.question-list b { color:#f19b57; font-family:"DM Sans",sans-serif; font-size:10px; letter-spacing:.09em; }.exam-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#d9d6ce; }.exam-card { background:#fffdf9; display:flex; flex-direction:column; min-height:317px; padding:24px; }.exam-card>div { align-items:center; display:flex; justify-content:space-between; }.exam-index { color:#f19b57; font-family:"Fraunces",serif; font-size:25px; font-weight:600; letter-spacing:-.05em; }.exam-card h3 { font-family:"Fraunces",serif; font-size:25px; font-weight:500; letter-spacing:-.05em; line-height:1; margin:31px 0 8px; }.exam-level { color:#547083!important; font-size:11px!important; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }.exam-card p { color:#617481; font-size:12px; line-height:1.5; margin:0 0 15px; }.exam-card footer { align-items:center; border-top:1px solid #e5e1d8; display:flex; font-size:11px; justify-content:space-between; margin-top:auto; padding-top:13px; }.exam-card footer span,.exam-card footer a { align-items:center; display:flex; gap:5px; }.exam-card footer a { font-weight:700; }.level-ladder { align-items:center; background:#183448; color:#fffdf9; display:grid; grid-template-columns:.8fr 1.2fr; gap:85px; padding:53px; }.level-ladder .eyebrow { color:#f19b57; }.level-ladder h2 { font-family:"Fraunces",serif; font-size:40px; font-weight:600; letter-spacing:-.055em; line-height:1; margin:0; }.level-ladder p:not(.eyebrow) { color:#c5d2d6; line-height:1.5; margin:15px 0 0; }.ladder-rungs { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; align-items:end; }.ladder-rungs>div { background:rgba(255,255,255,.1); display:flex; flex-direction:column; justify-content:end; min-height:104px; padding:13px; }.ladder-rungs>div:nth-child(2){min-height:132px}.ladder-rungs>div:nth-child(3){min-height:159px}.ladder-rungs>div:nth-child(4){min-height:188px}.ladder-rungs>div:nth-child(5){min-height:216px}.ladder-rungs strong { color:#f19b57; font-family:"Fraunces",serif; font-size:26px; }.ladder-rungs span { color:#d5e0e2; font-size:10px; line-height:1.34; margin-top:7px; }

/* Resources and magazine */
.resource-library { background:#efe3d4; padding:90px 0; }.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#d8cdc0; }.resource-card { background:#f8f4ec; min-height:245px; padding:23px; position:relative; transition:background .18s ease,transform .18s ease; }.resource-card:hover { background:#fffdf9; transform:translateY(-4px); }.resource-card svg { color:#f19b57; margin:32px 0 13px; }.resource-count { color:#547083; font-family:"Fraunces",serif; font-size:20px; }.resource-card h3 { font-family:"Fraunces",serif; font-size:25px; font-weight:500; letter-spacing:-.04em; margin:0; }.resource-card p { color:#617481; font-size:12px; line-height:1.52; margin:8px 0 19px; }.resource-card footer { align-items:center; bottom:21px; color:#547083; display:flex; font-size:10px; font-weight:700; justify-content:space-between; left:23px; position:absolute; right:23px; text-transform:uppercase; }.practice-panel { align-items:center; background:#e8eef0; display:grid; grid-template-columns:1.15fr .85fr; gap:70px; padding:48px; }.practice-title h2 { font-family:"Fraunces",serif; font-size:43px; font-weight:600; letter-spacing:-.055em; line-height:1; margin:0; }.practice-title>p:not(.eyebrow) { color:#617481; line-height:1.55; margin:16px 0 0; max-width:600px; }.practice-actions { display:grid; gap:1px; }.practice-actions span { align-items:center; background:#fffdf9; display:flex; font-size:12px; font-weight:700; gap:9px; padding:15px; }.practice-actions svg { color:#f19b57; }.article-grid { display:grid; gap:1px; background:#d9d6ce; }.article-grid.three { grid-template-columns:repeat(3,1fr); }.article-tile { display:flex; flex-direction:column; min-height:293px; padding:24px; transition:transform .18s ease; }.article-tile:hover { transform:translateY(-4px); }.paper-blue { background:#dfeaec; }.paper-ochre { background:#f8d5b9; }.paper-green { background:#dce8da; }.article-tile-top { display:flex; color:#547083; font-size:10px; font-weight:700; justify-content:space-between; letter-spacing:.08em; text-transform:uppercase; }.article-tile h3 { font-family:"Fraunces",serif; font-size:28px; font-weight:500; letter-spacing:-.05em; line-height:1.02; margin:34px 0 10px; }.article-tile p { color:#547083; font-size:12px; line-height:1.48; margin:0; }.article-read { align-items:center; display:flex; font-size:12px; font-weight:700; gap:6px; margin-top:auto; padding-top:19px; }.magazine-lead { padding:0 0 92px; }.magazine-kicker { border-bottom:1px solid #d9d6ce; color:#547083; display:flex; font-size:10px; font-weight:700; justify-content:space-between; letter-spacing:.1em; padding:15px 0; text-transform:uppercase; }.magazine-lead-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:80px; padding:48px 0 0; }.magazine-lead-grid h2 { font-family:"Fraunces",serif; font-size:clamp(42px,4.5vw,64px); font-weight:600; letter-spacing:-.065em; line-height:.98; margin:0; }.magazine-lead-grid p { color:#617481; font-size:16px; line-height:1.58; margin:23px 0; max-width:650px; }.lead-stat { align-items:end; background:#f19b57; display:flex; flex-direction:column; justify-content:center; min-height:220px; padding:30px; }.lead-stat strong { font-family:"Fraunces",serif; font-size:92px; font-weight:600; letter-spacing:-.09em; line-height:.72; }.lead-stat span { font-family:"Fraunces",serif; font-size:22px; letter-spacing:-.04em; line-height:1.03; margin-top:20px; max-width:230px; }.magazine-news { background:#183448; color:#fffdf9; margin-top:20px; padding:83px 0; }.magazine-news-grid { align-items:center; display:grid; grid-template-columns:.85fr 1.15fr; gap:95px; }.magazine-news .eyebrow { color:#f19b57; }.magazine-news h2 { font-family:"Fraunces",serif; font-size:45px; font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; }.magazine-news p:not(.eyebrow) { color:#c5d2d6; line-height:1.55; margin:16px 0 0; }.agenda-list { display:grid; gap:1px; }.agenda-list span { align-items:center; background:rgba(255,255,255,.1); display:grid; grid-template-columns:28px 1fr; column-gap:8px; padding:13px; }.agenda-list svg { color:#f19b57; grid-row:span 2; }.agenda-list b { font-family:"Fraunces",serif; font-size:19px; font-weight:500; letter-spacing:-.03em; }.agenda-list small { color:#c5d2d6; font-size:11px; }

/* Article and profile */
.article-header { padding:92px 0 64px; max-width:980px; }.article-breadcrumb,.profile-breadcrumb { align-items:center; color:#617481; display:flex; font-size:11px; gap:7px; margin-bottom:40px; }.article-breadcrumb a:hover,.profile-breadcrumb a:hover { color:#f19b57; }.article-header h1 { font-family:"Fraunces",serif; font-size:clamp(49px,5.5vw,77px); font-weight:600; letter-spacing:-.07em; line-height:.97; margin:0; max-width:960px; }.article-dek { color:#547083; font-family:"Fraunces",serif; font-size:23px; letter-spacing:-.035em; line-height:1.28; margin:25px 0; max-width:730px; }.article-meta { border-top:1px solid #d9d6ce; display:flex; gap:16px; padding-top:13px; }.article-meta span { color:#617481; font-size:11px; }.article-meta span+span:before { color:#f19b57; content:"•"; margin-right:16px; }.article-layout { display:grid; grid-template-columns:190px 1fr; gap:70px; max-width:980px; padding-bottom:100px; }.article-aside { align-self:start; border-top:2px solid #183448; display:grid; gap:11px; padding-top:13px; position:sticky; top:104px; }.article-aside span { color:#547083; font-size:10px; font-weight:700; letter-spacing:.1em; margin-bottom:4px; text-transform:uppercase; }.article-aside a { color:#617481; font-size:11px; line-height:1.35; }.article-aside a:hover { color:#f19b57; }.article-body { max-width:660px; }.article-intro-card { background:#e8eef0; border-left:4px solid #f19b57; margin-bottom:47px; padding:21px 23px; }.article-intro-card span { color:#547083; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.article-intro-card p { font-family:"Fraunces",serif; font-size:24px; letter-spacing:-.04em; line-height:1.2; margin:10px 0 0; }.article-body h2 { font-family:"Fraunces",serif; font-size:36px; font-weight:600; letter-spacing:-.055em; line-height:1.05; margin:45px 0 15px; }.article-body>p { color:#456171; font-size:16px; line-height:1.73; }.article-body blockquote { border-left:1px solid #f19b57; font-family:"Fraunces",serif; font-size:29px; font-weight:500; letter-spacing:-.045em; line-height:1.13; margin:34px 0; padding:9px 0 9px 22px; }.decision-matrix { border-top:1px solid #d9d6ce; margin:25px 0; }.decision-matrix div { border-bottom:1px solid #d9d6ce; display:grid; grid-template-columns:100px 1fr; gap:12px; padding:11px 0; }.decision-matrix b { font-size:12px; }.decision-matrix span { color:#617481; font-size:12px; }.article-next { background:#183448; color:#fffdf9; margin-top:43px; padding:25px; }.article-next span { color:#f19b57; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.article-next h3 { font-family:"Fraunces",serif; font-size:29px; font-weight:500; letter-spacing:-.05em; line-height:1.03; margin:11px 0 18px; }.article-next a { align-items:center; display:flex; font-size:12px; font-weight:700; gap:6px; }.profile-hero { background:#e8eef0; padding:50px 0 71px; }.profile-hero h1 { font-size:68px; margin:14px 0; }.profile-hero>div>p:not(.eyebrow) { color:#547083; font-size:18px; line-height:1.55; max-width:660px; }.profile-meta { display:flex; flex-wrap:wrap; gap:17px; margin-top:25px; }.profile-meta span { align-items:center; color:#456171; display:flex; font-size:12px; gap:5px; }.profile-layout { display:grid; grid-template-columns:1fr 320px; gap:80px; padding:89px 0; }.profile-summary { border-left:4px solid #f19b57; padding:6px 0 6px 25px; }.profile-summary>span { color:#547083; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.profile-summary h2 { font-family:"Fraunces",serif; font-size:39px; font-weight:600; letter-spacing:-.055em; line-height:1.02; margin:10px 0; }.profile-summary p { color:#617481; line-height:1.57; max-width:680px; }.profile-section { border-top:1px solid #d9d6ce; margin-top:44px; padding-top:18px; }.profile-section h2 { font-family:"Fraunces",serif; font-size:30px; font-weight:600; letter-spacing:-.05em; }.profile-points { display:grid; gap:1px; }.profile-points p { align-items:center; background:#fffdf9; display:flex; font-size:13px; gap:9px; margin:0; padding:12px; }.profile-points svg { color:#f19b57; }.info-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; }.info-grid span { background:#e8eef0; font-family:"Fraunces",serif; font-size:18px; letter-spacing:-.025em; padding:14px; }.info-grid small { color:#547083; display:block; font-family:"DM Sans",sans-serif; font-size:10px; font-weight:700; letter-spacing:.08em; margin-bottom:7px; text-transform:uppercase; }.profile-contact { align-self:start; background:#183448; color:#fffdf9; padding:25px; position:sticky; top:104px; }.profile-contact .eyebrow { color:#f19b57; }.profile-contact h3 { font-family:"Fraunces",serif; font-size:27px; font-weight:500; letter-spacing:-.045em; line-height:1.05; }.profile-contact>p:not(.eyebrow) { color:#c5d2d6; font-size:13px; line-height:1.53; }.profile-contact button { align-items:center; background:#f19b57; border:0; color:#183448; display:flex; font-size:12px; font-weight:700; gap:7px; margin:20px 0 9px; padding:11px 12px; }.profile-contact small { color:#9fb0b6; font-size:10px; }.profile-related { padding:0 0 90px; }

/* Project sale page */
.sale-page-hero { background:#183448; color:#fffdf9; padding:103px 0; }.sale-page-grid { align-items:center; display:grid; grid-template-columns:1.2fr .8fr; gap:100px; }.sale-page-hero .eyebrow { color:#f19b57; }.sale-page-hero h1 { font-size:clamp(46px,5vw,71px); }.sale-page-hero p:not(.eyebrow) { color:#c5d2d6; font-size:17px; line-height:1.6; margin:25px 0; max-width:700px; }.sale-contact { background:#f19b57; color:#183448; }.sale-stat-stack { display:grid; gap:1px; }.sale-stat-stack span { background:rgba(255,255,255,.1); font-family:"Fraunces",serif; font-size:20px; letter-spacing:-.03em; padding:21px; }.sale-stat-stack strong { color:#f19b57; font-family:"DM Sans",sans-serif; font-size:10px; letter-spacing:.1em; margin-right:8px; }.sale-details { align-items:start; display:grid; grid-template-columns:1fr 1fr; gap:110px; padding:92px 0; }.sale-details h2 { font-family:"Fraunces",serif; font-size:45px; font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; }.sale-details>div>p:not(.eyebrow) { color:#617481; line-height:1.62; margin:18px 0 0; }.sale-checks { display:grid; gap:1px; }.sale-checks p { align-items:center; background:#fffdf9; color:#456171; display:flex; font-size:13px; gap:9px; line-height:1.4; margin:0; padding:14px; }.sale-checks svg { color:#f19b57; flex:none; }.sale-contact-panel { background:#f19b57; }.sale-contact-panel-inner { align-items:center; display:flex; justify-content:space-between; gap:30px; min-height:255px; }.sale-contact-panel h2 { font-family:"Fraunces",serif; font-size:45px; font-weight:600; letter-spacing:-.06em; line-height:1; margin:0; }.sale-contact-panel p:not(.eyebrow) { color:#456171; font-size:13px; margin:15px 0 0; }.sale-contact-panel a { align-items:center; border-bottom:2px solid #183448; display:flex; font-family:"Fraunces",serif; font-size:30px; font-weight:500; gap:9px; letter-spacing:-.05em; padding-bottom:7px; white-space:nowrap; }

/* Footer */
.site-footer { background:#183448; color:#fffdf9; }.footer-top { display:grid; grid-template-columns:1.15fr .6fr .6fr 1.05fr; gap:45px; padding:66px 0 54px; }.footer-logo { color:#fffdf9; }.footer-brand>p { color:#c5d2d6; font-size:13px; line-height:1.53; max-width:250px; margin:17px 0; }.footer-email { align-items:center; color:#f19b57; display:flex; font-size:12px; font-weight:700; gap:6px; }.footer-column { display:grid; align-content:start; gap:11px; }.footer-column h3,.footer-newsletter h3 { font-family:"Fraunces",serif; font-size:20px; font-weight:500; letter-spacing:-.04em; margin:0 0 6px; }.footer-column a { color:#c5d2d6; font-size:12px; }.footer-column a:hover { color:#f19b57; }.footer-newsletter .eyebrow { color:#f19b57; }.footer-newsletter>p:not(.eyebrow) { color:#c5d2d6; font-size:12px; line-height:1.45; }.footer-newsletter form { display:flex; margin-top:17px; }.footer-newsletter input { background:rgba(255,255,255,.1); border:0; color:#fffdf9; font-size:12px; min-width:0; outline:none; padding:12px; width:100%; }.footer-newsletter input::placeholder { color:#b3c3ca; }.footer-newsletter button { background:#f19b57; border:0; color:#183448; display:grid; place-items:center; width:41px; }.footer-bottom { border-top:1px solid rgba(255,255,255,.17); color:#aebfc5; display:flex; font-size:10px; justify-content:space-between; padding:17px 0; }

@media (prefers-reduced-motion:no-preference) { .home-hero .hero-copy>* { animation:rise .7s cubic-bezier(.23,1,.32,1) both; }.home-hero .hero-copy>p { animation-delay:.07s; }.home-hero .hero-copy .hero-actions { animation-delay:.14s; }.home-hero .hero-copy .hero-notes { animation-delay:.21s; }.hero-media { animation:reveal .9s cubic-bezier(.23,1,.32,1) .12s both; } @keyframes rise { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:none} } @keyframes reveal { from{opacity:0;clip-path:inset(0 0 0 28%)} to{opacity:1;clip-path:inset(0)} } }

@media (max-width:1040px) { .desktop-nav { gap:13px; }.route-cta { display:none; }.site-container { width:min(100% - 40px,1240px); }.hero-copy { padding-right:35px; }.comparison-head { display:none; }.comparison-row { grid-template-columns:1.1fr 1fr 1fr 1fr 28px; gap:12px; padding:18px 0; }.comparison-row p:first-of-type { display:none; }.directory-grid,.exam-grid { grid-template-columns:repeat(2,1fr); }.profile-layout { gap:40px; }.footer-top { grid-template-columns:1fr 1fr; }.footer-brand { grid-row:span 2; }.school-spotlight-grid,.path-visual-grid,.certificate-grid { gap:55px; }.sale-page-grid,.sale-details { gap:60px; } }
@media (max-width:760px) { .site-container { width:calc(100% - 32px); }.sale-strip-inner { align-items:flex-start; padding:8px 0; }.sale-strip p { display:block; font-size:10px; }.sale-strip p span { display:none; }.sale-link { font-size:10px; margin-top:1px; }.header-inner { height:78px; }.desktop-nav,.search-button { display:none; }.menu-button { display:grid; }.brand { font-size:33px; }.brand-mark { transform:scale(1.35); transform-origin:left center; margin-right:23px; }.mobile-nav { background:#f8f4ec; border-bottom:1px solid #d9d6ce; display:grid; padding:10px 16px 18px; }.mobile-nav a { align-items:center; border-bottom:1px solid #d9d6ce; display:flex; font-family:"Fraunces",serif; font-size:22px; font-weight:500; gap:13px; letter-spacing:-.035em; padding:12px 0; }.mobile-nav a span { color:#f19b57; font-family:"DM Sans",sans-serif; font-size:10px; font-weight:700; }.page-intro { padding:60px 0 50px; }.page-intro-grid,.hero-grid,.pathways-heading,.curated-grid,.objective-grid,.home-directory,.certificate-grid,.home-community,.route-selector,.path-visual-grid,.course-feature-grid,.school-spotlight-grid,.cert-hero-grid,.practice-panel,.magazine-lead-grid,.magazine-news-grid,.profile-layout,.sale-page-grid,.sale-details { grid-template-columns:1fr; gap:28px; }.page-intro h1,.profile-hero h1 { font-size:47px; }.page-intro-copy>p { font-size:16px; }.hero-grid { min-height:auto; }.home-hero { background:#f8f4ec; padding:25px 0 0; }.hero-copy { padding:35px 0; }.hero-copy h1 { font-size:54px; }.hero-lead { font-size:16px; }.hero-media,.hero-media>img { min-height:410px; }.hero-card { bottom:-22px; left:16px; max-width:240px; }.hero-curved-label { display:none; }.home-pathways { margin-top:46px; padding:57px 0; }.pathways-heading h2 { font-size:36px; }.pathway-row { grid-template-columns:36px 1fr 17px; gap:12px; padding:18px 0; }.pathway-row p { display:none; }.pathway-row h3 { font-size:20px; }.home-curated,.home-directory,.home-community { padding:68px 0; }.section-title-row { align-items:start; flex-direction:column; margin-bottom:24px; }.section-title-row h2 { font-size:35px; }.featured-story { min-height:410px; padding:26px; }.featured-story h3 { font-size:37px; }.mini-story { border-left:1px solid #d9d6ce; }.objective-grid { gap:38px; }.home-objective { padding:65px 0; }.objective-title h2 { font-size:43px; }.home-directory { gap:38px; }.directory-copy h2,.school-spotlight h2,.cert-hero h2 { font-size:41px; }.certificate-grid { padding:57px 0; }.certificate-image { min-height:285px; }.certificate-image img { min-height:285px; }.certificate-tag { left:0; }.home-community { gap:25px; }.route-selector-options { grid-template-columns:1fr; }.route-block { grid-template-columns:1fr 36px; min-height:auto; padding:0 17px; }.route-block-index { grid-column:1; padding:17px 0 0; }.route-block-index svg { display:none; }.route-block-main { grid-column:1; padding:16px 0; }.route-steps { grid-column:1; padding-bottom:22px; }.route-arrow { grid-column:2; grid-row:1 / span 3; }.path-visual-section { margin-top:50px; padding:55px 0; }.comparison-row { grid-template-columns:1fr 1fr 28px; gap:9px; padding:16px 0; }.comparison-row p { display:none!important; }.comparison-row p:nth-of-type(2) { display:block!important; }.comparison-row h3 { font-size:19px; }.course-feature { padding:61px 0; }.course-scorecard { min-height:230px; }.article-grid.three,.resource-grid,.directory-grid,.exam-grid { grid-template-columns:1fr; }.directory-toolbar-inner { align-items:stretch; flex-wrap:wrap; padding:10px 0; }.directory-search { min-width:0; width:100%; }.city-pills { margin-left:0; overflow:auto; width:100%; }.directory-heading { grid-template-columns:1fr; gap:15px; }.directory-heading h2 { font-size:37px; }.school-spotlight { padding:63px 0; }.cert-hero { padding:46px 0; }.exam-card { min-height:255px; }.level-ladder { grid-template-columns:1fr; gap:35px; padding:29px; }.ladder-rungs { grid-template-columns:1fr; }.ladder-rungs>div,.ladder-rungs>div:nth-child(n) { align-items:center; display:flex; flex-direction:row; gap:12px; justify-content:start; min-height:0; }.ladder-rungs span { margin:0; }.resource-library { padding:63px 0; }.practice-panel { padding:28px; }.practice-title h2 { font-size:36px; }.magazine-lead { padding-bottom:60px; }.magazine-lead-grid h2 { font-size:45px; }.lead-stat { min-height:175px; }.magazine-news { padding:60px 0; }.article-header { padding:61px 0 41px; }.article-header h1 { font-size:48px; }.article-dek { font-size:20px; }.article-meta { flex-wrap:wrap; }.article-layout { grid-template-columns:1fr; gap:30px; padding-bottom:70px; }.article-aside { display:none; }.article-body h2 { font-size:32px; }.article-body blockquote { font-size:26px; }.profile-hero { padding:40px 0 51px; }.profile-meta { display:grid; gap:9px; }.profile-layout { padding:62px 0; }.profile-summary h2 { font-size:34px; }.info-grid { grid-template-columns:1fr; }.profile-contact { position:static; }.sale-page-hero { padding:69px 0; }.sale-page-hero h1 { font-size:47px; }.sale-details { padding:66px 0; }.sale-details h2,.sale-contact-panel h2 { font-size:39px; }.sale-contact-panel-inner { align-items:start; flex-direction:column; justify-content:center; padding:45px 0; }.sale-contact-panel a { font-size:24px; }.footer-top { grid-template-columns:1fr; gap:30px; padding:52px 0 38px; }.footer-brand { grid-row:auto; }.footer-bottom { align-items:start; flex-direction:column; gap:6px; } }

/* Navegación estática sin runtime de aplicación */
svg{height:1em;width:1em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}[data-mobile-menu]{display:none}.hamburger{font-size:22px;line-height:1}@media (max-width:760px){[data-mobile-menu]{display:none}[data-mobile-menu].is-open{display:grid}.page-intro::after{right:-78px}}