/* Distinct Model Schools — public website. One small file, no frameworks. */
:root{--navy:#0b1f4d;--blue:#2563eb;--gold:#f5a524;--ink:#0f172a;--muted:#475569;--line:#e2e8f0;--soft:#f8fafc;--radius:20px;
  font-family:'Poppins',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;line-height:1.65;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);transition:color 0.2s}
h1,h2,h3{line-height:1.2;margin:0 0 .5em;color:var(--navy);font-family:'Lexend',ui-sans-serif,system-ui,sans-serif}
h1{font-size:clamp(30px,5vw,52px);letter-spacing:-.02em}
h2{font-size:clamp(24px,3.2vw,36px);letter-spacing:-.01em}
h3{font-size:20px}
.container{width:min(1160px,100% - 32px);margin-inline:auto}
.section{padding:72px 0}
.section.soft{background:var(--soft)}
.eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:10px}
.lead{font-size:18px;color:var(--muted);max-width:640px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px;z-index:99}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy)}
.logo span{display:flex;flex-direction:column;line-height:1.1}.logo small{color:var(--muted);font-size:12.5px}
.nav{display:flex;align-items:center;gap:4px}
.nav a{padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--ink);font-weight:500;font-size:15px}
.nav a:hover,.nav a.on{color:var(--blue);background:var(--soft)}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-btn span{display:block;height:2px;background:var(--navy);margin:5px 0;border-radius:2px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff!important;padding:13px 22px;border-radius:12px;text-decoration:none;font-weight:600;border:0;cursor:pointer;font:inherit;font-weight:600}
.btn:hover{filter:brightness(1.08)}
.btn.gold{background:var(--gold);color:var(--navy)!important}
.btn.ghost{background:transparent;border:1.5px solid currentColor;color:#fff!important}
.btn-sm{padding:9px 16px!important;font-size:14.5px}
.nav .btn{color:#fff}

/* hero */
.hero{position:relative;background:linear-gradient(120deg,var(--navy) 0%,#13328a 60%,#1d4ed8 100%);color:#fff;overflow:hidden}
.hero::after{content:"";position:absolute;right:-120px;top:-120px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(245,165,36,.35),transparent 65%)}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding:84px 0;position:relative;z-index:1}
.hero h1{color:#fff}.hero .lead{color:rgba(255,255,255,.82)}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.hero-img{border-radius:24px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.3);aspect-ratio:4/3;background:rgba(255,255,255,.08);display:grid;place-items:center}
.hero-img img{width:100%;height:100%;object-fit:cover}
.badges{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px;font-size:14px;color:rgba(255,255,255,.85)}
.badges b{display:block;font-size:26px;color:var(--gold)}

/* cards */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(11,31,77,.08)}
.card .ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:26px;background:var(--soft);margin-bottom:14px}
.card p{color:var(--muted);margin:0}
.post{padding:0;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.post .thumb{aspect-ratio:16/10;background:var(--soft);overflow:hidden}.post .thumb img{width:100%;height:100%;object-fit:cover}
.post .body{padding:20px}
.post small{color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.gallery figure{margin:0;border-radius:14px;overflow:hidden;aspect-ratio:1;background:var(--soft);position:relative}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gallery figure:hover img{transform:scale(1.05)}
.gallery figcaption{position:absolute;inset:auto 0 0;padding:10px 12px;background:linear-gradient(transparent,rgba(0,0,0,.6));color:#fff;font-size:13.5px}
.cta{background:linear-gradient(120deg,var(--gold),#ffd27a);border-radius:24px;padding:44px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cta h2{margin:0}

/* content pages */
.page-hero{background:var(--soft);padding:56px 0 40px;border-bottom:1px solid var(--line)}
.prose{max-width:760px}
.prose img{border-radius:14px;margin:18px 0}
.prose h2{margin-top:1.4em}

/* forms */
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
.form label{display:block;font-weight:600;font-size:14.5px;margin-bottom:6px}
.form input,.form select,.form textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid rgba(29,78,216,.3);border-color:var(--blue)}
.form textarea{min-height:120px}
.hp{position:absolute;left:-5000px}
.note{padding:14px 18px;border-radius:12px;margin:18px 0;font-weight:500}.note.ok{background:#dcfce7;color:#166534}.note.bad{background:#fee2e2;color:#991b1b}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:14px}
.steps li{counter-increment:s;display:flex;gap:14px;align-items:flex-start}
.steps li::before{content:counter(s);flex:none;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:700}

/* footer */
.ftr{background:var(--navy);color:rgba(255,255,255,.75);padding:56px 0 0;margin-top:40px}
.ftr .logo{color:#fff}.ftr .logo small{color:rgba(255,255,255,.6)}
.ftr a{color:rgba(255,255,255,.85);text-decoration:none}.ftr a:hover{color:var(--gold)}
.ftr h4{color:#fff;margin:0 0 12px}
.ftr p{margin:0 0 8px;font-size:15px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.copy{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding:18px 0;font-size:14px}
.wa{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;font-size:26px;text-decoration:none;box-shadow:0 10px 24px rgba(0,0,0,.2);z-index:60}

@media (max-width:960px){
  .hero-in{grid-template-columns:1fr;padding:56px 0}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  .ftr-grid{grid-template-columns:1fr 1fr}
  .menu-btn{display:block}
  .nav{position:fixed;inset:72px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 16px 20px;border-bottom:1px solid var(--line);display:none;box-shadow:0 20px 40px rgba(0,0,0,.08)}
  .nav-open .nav{display:flex}
  .nav a{padding:12px}
}
@media (max-width:620px){
  .section{padding:52px 0}
  .g2,.g3,.g4,.form,.ftr-grid{grid-template-columns:1fr}
  .cta{padding:28px}
}

/* ====== NEW ADVANCED HOMEPAGE STYLES ====== */

/* Reveal Animations */
@keyframes reveal-up { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
.reveal { opacity: 0; animation: reveal-up 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards; animation-delay: var(--d, 0s); }

/* Hero2 Styles */
.hero2 { position: relative; background: #fff; overflow: hidden; color: var(--navy); padding: 80px 0 120px; }
.hero2-in { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; position: relative; z-index: 2; }
@media (max-width: 960px) { .hero2-in { grid-template-columns: 1fr; } }
.blob { position: absolute; border-radius: 50%; filter: blur(80px); opacity: 0.6; z-index: 0; animation: float 10s infinite ease-in-out alternate; }
.blob.b1 { background: rgba(37,99,235,0.2); width: 400px; height: 400px; top: -100px; left: -100px; }
.blob.b2 { background: rgba(245,165,36,0.2); width: 300px; height: 300px; bottom: 0; right: 20%; animation-delay: -3s; }
.blob.b3 { background: rgba(219,39,119,0.15); width: 500px; height: 500px; top: 20%; right: -150px; animation-delay: -6s; }
@keyframes float { 0% { transform: translate(0, 0) scale(1); } 100% { transform: translate(30px, -50px) scale(1.1); } }
.grid-bg { position: absolute; inset: 0; background-image: radial-gradient(var(--line) 1px, transparent 1px); background-size: 40px 40px; opacity: 0.5; z-index: 1; }
.hero2-copy { position: relative; z-index: 2; }
.hero2-copy h1 { font-size: clamp(36px, 6vw, 64px); line-height: 1.1; margin-bottom: 24px; font-weight: 800; }
.grad { background: linear-gradient(135deg, var(--blue), var(--gold)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 16px; border-radius: 999px; background: rgba(37,99,235,0.1); color: var(--blue); font-weight: 600; font-size: 14px; text-decoration: none; margin-bottom: 24px; }
.pill .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--blue); animation: pulse 2s infinite; }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(37,99,235,0.4); } 70% { box-shadow: 0 0 0 6px rgba(37,99,235,0); } 100% { box-shadow: 0 0 0 0 rgba(37,99,235,0); } }
.pill:hover .arrow { transform: translateX(4px); }
.pill .arrow { transition: transform 0.2s; }
.hero-cta { display: flex; gap: 16px; margin-top: 32px; flex-wrap: wrap; }
.btn.glass { background: rgba(255,255,255,0.5); backdrop-filter: blur(10px); border: 1px solid var(--line); color: var(--navy) !important; }
.btn.glass:hover { background: rgba(255,255,255,0.8); }
.trust { list-style: none; padding: 0; display: flex; gap: 20px; margin-top: 40px; font-size: 14px; color: var(--muted); }
.trust li { display: flex; align-items: center; gap: 8px; }
.trust li::before { content: "✓"; color: #10b981; font-weight: bold; background: rgba(16,185,129,0.1); width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; }
.hero2-art { position: relative; display: grid; place-items: center; z-index: 2; }
.hero2-art .frame { position: relative; z-index: 1; border-radius: 32px; overflow: hidden; box-shadow: 0 40px 80px rgba(11,31,77,0.15); border: 8px solid #fff; }
.hero2-art img { width: 100%; height: auto; display: block; }
.float { position: absolute; background: rgba(255,255,255,0.9); backdrop-filter: blur(10px); padding: 16px; border-radius: 20px; box-shadow: 0 20px 40px rgba(0,0,0,0.1); border: 1px solid rgba(255,255,255,0.5); display: flex; align-items: center; gap: 12px; z-index: 2; animation: float-slow 6s infinite ease-in-out alternate; }
.float .ic { font-size: 24px; }
.float b { display: block; font-size: 14px; color: var(--navy); line-height: 1.2; }
.float small { display: block; font-size: 12px; color: var(--muted); }
.float.f1 { top: 10%; left: -10%; animation-delay: 0s; }
.float.f2 { bottom: 20%; right: -15%; animation-delay: -2s; }
.float.f3 { bottom: -5%; left: 5%; animation-delay: -4s; }
@keyframes float-slow { 0% { transform: translateY(0); } 100% { transform: translateY(-15px); } }
.wave { position: absolute; bottom: 0; left: 0; width: 100%; color: var(--soft); z-index: 1; margin-bottom: -1px; }

/* Marquee */
.marquee { background: var(--navy); color: #fff; padding: 16px 0; overflow: hidden; white-space: nowrap; font-family: 'Lexend', sans-serif; font-weight: 600; font-size: 14px; letter-spacing: 0.05em; text-transform: uppercase; }
.marquee .track { display: inline-flex; align-items: center; gap: 30px; animation: scroll-left 40s linear infinite; }
.marquee i { color: var(--gold); font-style: normal; font-size: 10px; }
@keyframes scroll-left { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* Stats */
.stats { background: var(--soft); padding: 60px 0; border-bottom: 1px solid var(--line); }
.stats-in { display: flex; justify-content: space-around; flex-wrap: wrap; gap: 30px; text-align: center; }
.stat b { display: block; font-size: clamp(40px, 5vw, 56px); font-family: 'Lexend', sans-serif; color: var(--blue); line-height: 1; margin-bottom: 8px; }
.stat span { display: block; font-size: 15px; color: var(--muted); font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; }

/* Headings Container */
.head-c { text-align: center; max-width: 700px; margin: 0 auto 56px; }

/* Section Cards */
.sec-card { background: #fff; border: 1px solid var(--line); border-radius: 24px; padding: 40px; text-align: center; transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 10px 30px rgba(0,0,0,0.02); }
.sec-card:hover { transform: translateY(-8px); box-shadow: 0 30px 60px rgba(0,0,0,0.08); border-color: transparent; }
.sec-emoji { font-size: 48px; display: inline-block; margin-bottom: 20px; background: var(--soft); width: 80px; height: 80px; line-height: 80px; border-radius: 20px; }
.sec-card h3 { font-size: 24px; margin-bottom: 12px; }
.sec-card.t-early-years:hover { box-shadow: 0 30px 60px rgba(244,63,94,0.15); }
.sec-card.t-primary:hover { box-shadow: 0 30px 60px rgba(16,185,129,0.15); }
.sec-card.t-secondary:hover { box-shadow: 0 30px 60px rgba(37,99,235,0.15); }
.chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 24px 0; }
.chips span { background: var(--soft); color: var(--muted); padding: 4px 12px; border-radius: 99px; font-size: 13px; font-weight: 500; }
.more { display: inline-block; font-weight: 600; color: var(--blue); text-decoration: none; margin-top: 16px; transition: gap 0.2s; }
.more:hover { gap: 12px; }

/* Bento Grid */
.bento { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; grid-auto-rows: minmax(200px, auto); }
.bento .bx { background: #fff; border-radius: 32px; padding: 40px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); border: 1px solid rgba(0,0,0,0.05); transition: transform 0.3s; }
.bento .bx:hover { transform: scale(1.02); }
.bento .big { grid-column: span 2; grid-row: span 2; background: linear-gradient(135deg, var(--navy), var(--blue)); color: #fff; border: none; }
.bento .big h3 { color: #fff; font-size: 32px; }
.bento .big p { color: rgba(255,255,255,0.8); font-size: 18px; }
.bento .wide { grid-column: span 2; background: var(--soft); }
.bento .bi { font-size: 40px; margin-bottom: 20px; display: block; }
@media (max-width: 960px) { .bento { grid-template-columns: 1fr; } .bento .big, .bento .wide { grid-column: span 1; grid-row: auto; } }

/* App Section */
.app-sec { background: var(--navy); color: #fff; overflow: hidden; }
.app-sec h2 { color: #fff; }
.app-sec .lead { color: rgba(255,255,255,0.7); }
.app-sec .eyebrow { color: var(--gold); }
.app-in { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.ticks { list-style: none; padding: 0; margin: 32px 0; }
.ticks li { position: relative; padding-left: 32px; margin-bottom: 16px; color: rgba(255,255,255,0.8); }
.ticks li::before { content: "✓"; position: absolute; left: 0; top: 2px; width: 20px; height: 20px; background: rgba(245,165,36,0.2); color: var(--gold); border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: bold; }
.phone { background: #000; padding: 12px; border-radius: 40px; border: 4px solid #333; position: relative; max-width: 320px; margin: 0 auto; box-shadow: 0 40px 80px rgba(0,0,0,0.5); transform: rotate(5deg); transition: transform 0.5s; }
.phone:hover { transform: rotate(0deg); }
.notch { position: absolute; top: 12px; left: 50%; transform: translateX(-50%); width: 120px; height: 30px; background: #000; border-radius: 0 0 16px 16px; z-index: 10; }
.scr { background: #f8fafc; border-radius: 28px; overflow: hidden; height: 600px; padding: 60px 20px 20px; position: relative; }
.ph-head { margin-bottom: 24px; color: #000; }
.ph-head small { display: block; color: var(--muted); }
.ph-head b { font-size: 24px; font-family: 'Lexend', sans-serif; }
.ph-stat { background: #fff; padding: 20px; border-radius: 20px; box-shadow: 0 10px 20px rgba(0,0,0,0.05); margin-bottom: 24px; }
.ph-stat span { display: block; font-size: 13px; color: var(--muted); }
.ph-stat b { display: block; font-size: 32px; color: #000; line-height: 1.2; font-family: 'Lexend', sans-serif; }
.ph-stat em { display: inline-block; background: #dcfce7; color: #166534; padding: 4px 12px; border-radius: 99px; font-size: 12px; font-style: normal; margin-top: 8px; font-weight: 600; }
.ph-row { display: flex; gap: 12px; align-items: center; background: #fff; padding: 16px; border-radius: 16px; margin-bottom: 12px; box-shadow: 0 4px 10px rgba(0,0,0,0.02); }
.ph-row i { width: 40px; height: 40px; border-radius: 12px; flex: none; opacity: 0.1; }
.ph-row div { flex: 1; }
.ph-row b { display: block; font-size: 14px; color: #000; margin-bottom: 2px; }
.ph-row small { display: block; font-size: 12px; color: var(--muted); }
.ph-tabs { position: absolute; bottom: 20px; left: 20px; right: 20px; background: #fff; padding: 16px; border-radius: 24px; display: flex; justify-content: space-around; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.ph-tabs span { width: 24px; height: 24px; border-radius: 50%; background: #e2e8f0; }
.ph-tabs span.on { background: var(--blue); }
@media (max-width: 960px) { .app-in { grid-template-columns: 1fr; } .phone { margin-top: 40px; } }

/* Masonry */
.masonry { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); grid-auto-rows: 10px; gap: 20px; margin-bottom: 40px; }
.masonry figure { margin: 0; position: relative; border-radius: 24px; overflow: hidden; background: #fff; grid-row-end: span 25; }
.masonry figure:nth-child(2n) { grid-row-end: span 30; }
.masonry figure:nth-child(3n) { grid-row-end: span 20; }
.masonry img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.masonry figure:hover img { transform: scale(1.05); }
.masonry figcaption { position: absolute; inset: auto 0 0; padding: 20px; background: linear-gradient(transparent, rgba(0,0,0,0.8)); color: #fff; font-weight: 500; font-family: 'Lexend', sans-serif; opacity: 0; transition: opacity 0.3s; }
.masonry figure:hover figcaption { opacity: 1; }

/* Quotes */
.quote { background: #fff; padding: 32px; border-radius: 24px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); border: 1px solid var(--line); margin: 0; display: flex; flex-direction: column; height: 100%; }
.stars { color: var(--gold); font-size: 20px; margin-bottom: 16px; letter-spacing: 2px; }
.quote .q { font-size: 16px; color: var(--ink); font-style: italic; flex: 1; margin-bottom: 24px; }
.quote footer { display: flex; align-items: center; gap: 16px; }
.quote img, .quote span { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background: var(--soft); display: grid; place-items: center; font-weight: bold; color: var(--blue); }
.quote b { display: block; font-size: 15px; color: var(--navy); }
.quote small { color: var(--muted); font-size: 13px; }

/* Timeline */
.timeline { list-style: none; padding: 0; max-width: 800px; margin: 0 auto 40px; display: grid; gap: 24px; }
.timeline li { display: flex; gap: 24px; background: #fff; padding: 32px; border-radius: 24px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); border: 1px solid var(--line); align-items: center; }
.timeline b { flex: none; width: 64px; height: 64px; border-radius: 20px; background: var(--soft); color: var(--blue); font-size: 24px; display: grid; place-items: center; font-family: 'Lexend', sans-serif; }
.timeline h3 { margin: 0 0 8px; font-size: 20px; }
.timeline p { margin: 0; color: var(--muted); }
@media (max-width: 620px) { .timeline li { flex-direction: column; align-items: flex-start; text-align: left; } }

/* Head Row */
.head-row { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 40px; flex-wrap: wrap; gap: 20px; }
.head-row h2 { margin: 0; }

/* FAQ */
.faq-in { max-width: 800px; margin: 0 auto; text-align: center; }
.faq { margin-top: 40px; text-align: left; }
.faq details { background: #fff; border-radius: 20px; margin-bottom: 16px; box-shadow: 0 4px 10px rgba(0,0,0,0.02); border: 1px solid var(--line); overflow: hidden; }
.faq summary { padding: 24px; font-weight: 600; font-size: 18px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; font-family: 'Lexend', sans-serif; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--blue); font-size: 24px; transition: transform 0.3s; }
.faq details[open] summary::after { transform: rotate(45deg); }
.faq p { padding: 0 24px 24px; margin: 0; color: var(--muted); border-top: 1px solid var(--line); padding-top: 20px; }

/* CTA2 */
.cta2 { position: relative; background: var(--navy); color: #fff; padding: 80px 60px; border-radius: 40px; text-align: center; overflow: hidden; }
.cta2 h2 { color: #fff; font-size: clamp(32px, 4vw, 48px); margin-bottom: 16px; }
.cta2 p { font-size: 18px; color: rgba(255,255,255,0.8); margin-bottom: 40px; max-width: 600px; margin-inline: auto; }
.cta2 .blob.b1 { background: rgba(245,165,36,0.3); top: -200px; left: -100px; }
.cta2 .blob.b2 { background: rgba(37,99,235,0.4); bottom: -200px; right: -100px; }
.cta-btns { display: flex; justify-content: center; gap: 16px; position: relative; z-index: 2; flex-wrap: wrap; }
@media (max-width: 620px) { .cta2 { padding: 40px 20px; border-radius: 24px; } }

/* Center Utility */
.center { text-align: center; }
