*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    :root {
      --blue:#0D5C63; --blue-mid:#0A8B97; --blue-light:#E1F4F5;
      --orange:#D4A017; --orange-lt:#FEF9E7;
      --white:#FFFFFF; --offwhite:#F0F4F5;
      --text:#1A2235; --body:#4A5568; --muted:#8A97A8;
      --border:rgba(13,92,99,0.12);
    }
    html { scroll-behavior: smooth; }
    body { font-family:'Sora',sans-serif; color:var(--text); background:var(--white); font-size:16px; line-height:1.6; }

    /* NAV */
    nav { position:fixed; top:0; left:0; right:0; z-index:200; height:70px; display:flex; align-items:center; justify-content:space-between; padding:0 2.5%; background:rgba(255,255,255,0.97); backdrop-filter:blur(10px); border-bottom:1px solid var(--border); }
    .nav-brand { display:flex; align-items:center; gap:0.6rem; text-decoration:none; cursor:pointer; }
    /* compass logo handled inline as SVG */
    .brand-name { font-weight:800; font-size:1rem; color:var(--blue); line-height:1.1; letter-spacing:-0.01em; }
    .brand-sub { font-size:0.65rem; font-weight:400; color:var(--muted); letter-spacing:0.04em; }
    .nav-links { display:flex; align-items:center; gap:1.5rem; list-style:none; }
    .nav-links a { font-size:0.74rem; font-weight:600; color:var(--body); text-decoration:none; transition:color 0.2s; cursor:pointer; padding:0.3rem 0.45rem; border-radius:5px; white-space:nowrap; display:inline-flex; align-items:center; gap:3px; }
    .nav-links a:hover { color:var(--blue); background:var(--blue-light); }
    .nav-links > li { position:relative; }
    .nav-links li:hover > .nav-dropdown { display:block; }
    .nav-dropdown { display:none; position:absolute; top:calc(100% + 4px); left:0; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:0 8px 32px rgba(0,0,0,0.1); min-width:200px; padding:0.4rem; z-index:300; }
    .nav-dropdown.dd-right { left:auto; right:0; }
    .nav-dropdown a { font-size:0.78rem; font-weight:500; color:var(--body); padding:0.45rem 0.85rem; border-radius:6px; display:block; white-space:nowrap; }
    .nav-dropdown a:hover { color:var(--blue); background:var(--blue-light); }
    .dd-label { font-size:0.65rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); padding:0.5rem 0.85rem 0.2rem; display:block; }
    .dd-hr { border:none; border-top:1px solid var(--border); margin:0.3rem 0; }
    .nav-cta { background:var(--orange)!important; color:var(--white)!important; padding:0.5rem 1.1rem; border-radius:6px; box-shadow:0 2px 8px rgba(212,160,23,0.35); }
    .nav-cta:hover { background:#B8880F!important; }

    /* PAGES */
    .page { display:none; }
    .page.active { display:block; }

    /* HERO */
    .hero { min-height:100vh; padding-top:70px; background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 60%,#0AABB8 100%); display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:3rem; padding-left:6%; padding-right:6%; position:relative; overflow:hidden; }
    .hero::before { content:''; position:absolute; width:500px; height:500px; background:#D4A017; opacity:0.08; border-radius:50%; top:-120px; right:-80px; pointer-events:none; }
    .hero-text { position:relative; z-index:2; padding:4rem 0; }
    .hero-eyebrow { display:inline-flex; align-items:center; gap:0.5rem; background:rgba(212,160,23,0.15); border:1px solid rgba(212,160,23,0.3); border-radius:999px; padding:0.35rem 1rem; font-size:0.72rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:#F5C842; margin-bottom:1.5rem; }
    .hero-eyebrow::before { content:''; width:6px; height:6px; background:#D4A017; border-radius:50%; }
    h1 { font-family:'Lora',serif; font-size:clamp(2.2rem,4vw,3.4rem); font-weight:600; line-height:1.15; color:var(--white); letter-spacing:-0.02em; margin-bottom:1.25rem; }
    h1 .accent { color:var(--orange); font-style:italic; }
    .hero-desc { font-size:1.05rem; font-weight:300; color:rgba(255,255,255,0.78); max-width:480px; line-height:1.8; margin-bottom:2.5rem; }
    .hero-btns { display:flex; gap:1rem; flex-wrap:wrap; }
    .btn-orange { display:inline-block; background:var(--orange); color:var(--white); padding:0.9rem 2rem; border-radius:6px; font-size:0.9rem; font-weight:600; text-decoration:none; transition:background 0.2s,transform 0.15s; box-shadow:0 4px 16px rgba(212,160,23,0.4); cursor:pointer; border:none; font-family:'Sora',sans-serif; }
    .btn-orange:hover { background:#B8880F; transform:translateY(-1px); }
    .btn-ghost { display:inline-block; background:transparent; color:var(--white); padding:0.9rem 2rem; border-radius:6px; font-size:0.9rem; font-weight:600; text-decoration:none; border:1.5px solid rgba(255,255,255,0.35); transition:background 0.2s,border-color 0.2s; cursor:pointer; font-family:'Sora',sans-serif; }
    .btn-ghost:hover { background:rgba(255,255,255,0.1); }
    .hero-right { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding:4rem 0; }
    .mini-card { background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.12); border-radius:10px; padding:1.25rem; transition:background 0.2s; }
    .mini-card:hover { background:rgba(255,255,255,0.12); }
    .mini-card-icon { font-size:1.5rem; margin-bottom:0.5rem; }
    .mini-card-title { font-size:0.82rem; font-weight:600; color:var(--white); margin-bottom:0.25rem; }
    .mini-card-desc { font-size:0.72rem; font-weight:300; color:rgba(255,255,255,0.55); line-height:1.5; }
    .mini-card.featured { grid-column:span 2; background:var(--orange); border-color:var(--orange); display:flex; align-items:center; gap:1rem; }
    .mini-card.featured .mini-card-icon { font-size:2rem; flex-shrink:0; }
    .mini-card.featured .mini-card-desc { color:rgba(255,255,255,0.75); }

    /* TAGLINE */
    .tagline-band { background:var(--offwhite); padding:2.25rem 6%; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:center; text-align:center; }
    .tagline-band p { font-family:'Lora',serif; font-style:italic; font-size:1.15rem; color:var(--blue); max-width:640px; line-height:1.65; }
    .tagline-band span { color:var(--orange); font-style:normal; font-weight:600; }

    /* SECTIONS */
    .section-label { font-size:0.72rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--orange); margin-bottom:0.6rem; }
    h2 { font-family:'Lora',serif; font-size:clamp(1.6rem,3vw,2.25rem); font-weight:600; color:var(--blue); line-height:1.25; letter-spacing:-0.015em; margin-bottom:0.6rem; }
    .section-intro { font-size:1rem; font-weight:300; color:var(--body); max-width:560px; line-height:1.75; margin-bottom:3rem; }

    /* SERVICES */
    .services-section { padding:5.5rem 6%; background:var(--white); }
    .services-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1.25rem; }
    .svc-card { border:1.5px solid var(--border); border-radius:10px; padding:1.75rem; transition:border-color 0.2s,box-shadow 0.2s,transform 0.2s; }
    .svc-card:hover { border-color:var(--orange); box-shadow:0 6px 28px rgba(0,51,102,0.08); transform:translateY(-2px); }
    .svc-icon { width:46px; height:46px; background:var(--orange-lt); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:1.35rem; margin-bottom:1.1rem; }
    .svc-card h3 { font-size:1rem; font-weight:700; color:var(--blue); margin-bottom:0.5rem; }
    .svc-card p { font-size:0.875rem; color:var(--body); line-height:1.65; font-weight:300; margin-bottom:1rem; }
    .svc-enroll-btn { display:inline-block; background:var(--blue); color:var(--white); padding:0.5rem 1.1rem; border-radius:5px; font-size:0.78rem; font-weight:600; text-decoration:none; border:none; cursor:pointer; font-family:'Sora',sans-serif; transition:background 0.2s; }
    .svc-enroll-btn:hover { background:var(--orange); }

    /* WHY */
    .why-section { background:var(--blue); padding:5rem 6%; position:relative; overflow:hidden; }
    .why-section::before { content:''; position:absolute; width:400px; height:400px; background:var(--orange); opacity:0.05; border-radius:50%; bottom:-100px; right:-80px; pointer-events:none; }
    .why-section h2 { color:var(--white); }
    .why-section .section-label { color:#FFB74D; }
    .why-section .section-intro { color:rgba(255,255,255,0.7); max-width:500px; }
    .why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:3rem; }
    .why-card { background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); border-radius:10px; padding:1.75rem; }
    .why-num { font-family:'Lora',serif; font-size:2rem; font-weight:600; color:var(--orange); margin-bottom:0.5rem; }
    .why-card h3 { font-size:0.95rem; font-weight:600; color:var(--white); margin-bottom:0.4rem; }
    .why-card p { font-size:0.85rem; font-weight:300; color:rgba(255,255,255,0.6); line-height:1.65; }

    /* TESTIMONIALS */
    .testimonials-section { padding:5.5rem 6%; background:var(--offwhite); }
    .testi-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:1.5rem; margin-top:1rem; }
    .testi-card { background:var(--white); border-radius:12px; padding:2rem; border:1px solid var(--border); position:relative; }
    .testi-quote { font-size:2.5rem; color:var(--orange); line-height:1; margin-bottom:0.5rem; font-family:'Lora',serif; }
    .testi-text { font-size:0.925rem; color:var(--body); line-height:1.75; font-weight:300; font-style:italic; margin-bottom:1.25rem; }
    .testi-author { display:flex; align-items:center; gap:0.75rem; }
    .testi-avatar { width:40px; height:40px; border-radius:50%; background:var(--blue); display:flex; align-items:center; justify-content:center; font-weight:700; color:var(--white); font-size:0.9rem; flex-shrink:0; }
    .testi-name { font-size:0.85rem; font-weight:700; color:var(--blue); }
    .testi-role { font-size:0.75rem; color:var(--muted); }

    /* BLOG */
    .blog-section { padding:5.5rem 6%; background:var(--white); }
    .blog-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:1.5rem; }
    .blog-card { border:1px solid var(--border); border-radius:12px; overflow:hidden; transition:box-shadow 0.2s,transform 0.2s; cursor:pointer; }
    .blog-card:hover { box-shadow:0 8px 32px rgba(0,51,102,0.1); transform:translateY(-3px); }
    .blog-card-img { height:160px; display:flex; align-items:center; justify-content:center; font-size:3rem; }
    .blog-card-body { padding:1.5rem; }
    .blog-tag { display:inline-block; background:var(--orange-lt); color:var(--orange); font-size:0.7rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; padding:0.2rem 0.6rem; border-radius:4px; margin-bottom:0.6rem; }
    .blog-card h3 { font-size:1rem; font-weight:700; color:var(--blue); margin-bottom:0.5rem; line-height:1.4; }
    .blog-card p { font-size:0.85rem; color:var(--body); line-height:1.65; font-weight:300; margin-bottom:1rem; }
    .blog-meta { font-size:0.75rem; color:var(--muted); }
    .blog-read-more { font-size:0.82rem; font-weight:700; color:var(--orange); text-decoration:none; cursor:pointer; background:none; border:none; font-family:'Sora',sans-serif; }

    /* ARTICLE VIEW */
    .article-hero { background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 100%); padding:calc(70px + 3rem) 6% 3rem; }
    .article-hero .blog-tag { background:rgba(212,160,23,0.2); color:#FFB74D; }
    .article-hero h1 { font-size:clamp(1.8rem,4vw,2.8rem); color:var(--white); margin-top:0.75rem; margin-bottom:0.75rem; }
    .article-hero-meta { font-size:0.85rem; color:rgba(255,255,255,0.6); }
    .article-body { max-width:760px; margin:0 auto; padding:3rem 6%; }
    .article-body p { font-size:1rem; color:var(--body); line-height:1.85; margin-bottom:1.5rem; font-weight:300; }
    .article-body h2 { font-size:1.4rem; color:var(--blue); margin-bottom:0.75rem; margin-top:2rem; }
    .article-body ul { margin:0.5rem 0 1.5rem 1.5rem; }
    .article-body li { font-size:0.95rem; color:var(--body); line-height:1.75; margin-bottom:0.4rem; }
    .back-btn { display:inline-flex; align-items:center; gap:0.4rem; font-size:0.85rem; font-weight:600; color:var(--orange); background:none; border:none; cursor:pointer; font-family:'Sora',sans-serif; margin-bottom:1.5rem; }

    /* CAREERS */
    .careers-hero { background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 100%); padding:calc(70px + 4rem) 6% 4rem; text-align:center; }
    .careers-hero h1 { color:var(--white); margin-bottom:0.75rem; }
    .careers-hero p { color:rgba(255,255,255,0.7); font-size:1.05rem; font-weight:300; max-width:560px; margin:0 auto; }
    .careers-body { padding:5rem 6%; background:var(--offwhite); }
    .careers-body h2 { margin-bottom:0.5rem; }
    .careers-intro { font-size:1rem; color:var(--body); font-weight:300; line-height:1.75; max-width:600px; margin-bottom:3rem; }
    .open-roles { background:var(--white); border-radius:12px; border:1px solid var(--border); padding:2.5rem; margin-bottom:3rem; text-align:center; }
    .open-roles-icon { font-size:3rem; margin-bottom:1rem; }
    .open-roles h3 { font-size:1.2rem; font-weight:700; color:var(--blue); margin-bottom:0.5rem; }
    .open-roles p { font-size:0.95rem; color:var(--body); font-weight:300; margin-bottom:1.5rem; }
    .cv-form { background:var(--white); border-radius:12px; padding:2.5rem; border:1px solid var(--border); box-shadow:0 4px 20px rgba(0,51,102,0.06); }
    .cv-form h3 { font-family:'Lora',serif; font-size:1.4rem; color:var(--blue); margin-bottom:0.4rem; }
    .cv-form-sub { font-size:0.875rem; color:var(--muted); margin-bottom:1.75rem; font-weight:300; }

    /* ENROLL PAGE */
    .enroll-hero { background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 100%); padding:calc(70px + 4rem) 6% 3rem; text-align:center; }
    .enroll-hero h1 { color:var(--white); margin-bottom:0.75rem; }
    .enroll-hero p { color:rgba(255,255,255,0.7); font-size:1.05rem; font-weight:300; }
    .enroll-body { padding:4rem 6%; background:var(--offwhite); display:grid; grid-template-columns:1fr 1.3fr; gap:4rem; align-items:start; }
    .enroll-info h2 { margin-bottom:0.5rem; }
    .enroll-info p { font-size:0.95rem; color:var(--body); font-weight:300; line-height:1.75; margin-bottom:2rem; }
    .paystack-box { background:var(--white); border:2px solid var(--orange); border-radius:12px; padding:2rem; text-align:center; margin-bottom:1.5rem; }
    .paystack-box .ps-icon { font-size:2.5rem; margin-bottom:0.75rem; }
    .paystack-box h3 { font-size:1.1rem; font-weight:700; color:var(--blue); margin-bottom:0.4rem; }
    .paystack-box p { font-size:0.875rem; color:var(--muted); margin-bottom:1.25rem; font-weight:300; }
    .paystack-btn { display:inline-block; background:var(--orange); color:var(--white); padding:0.85rem 2rem; border-radius:6px; font-size:0.9rem; font-weight:700; text-decoration:none; border:none; cursor:pointer; font-family:'Sora',sans-serif; transition:background 0.2s; width:100%; }
    .paystack-btn:hover { background:#E06500; }
    .paystack-note { font-size:0.75rem; color:var(--muted); margin-top:0.75rem; }
    .enroll-form-wrap { background:var(--white); border-radius:12px; padding:2.5rem; box-shadow:0 4px 30px rgba(0,51,102,0.08); border:1px solid var(--border); }

    /* SHARED FORM STYLES */
    .field { margin-bottom:1.1rem; }
    label { display:block; font-size:0.72rem; font-weight:700; letter-spacing:0.07em; text-transform:uppercase; color:var(--blue); margin-bottom:0.4rem; }
    input,textarea,select { width:100%; padding:0.75rem 1rem; border:1.5px solid var(--border); border-radius:7px; font-family:'Sora',sans-serif; font-size:0.9rem; color:var(--text); background:var(--offwhite); outline:none; transition:border-color 0.2s,background 0.2s; }
    input:focus,textarea:focus,select:focus { border-color:var(--blue); background:var(--white); }
    textarea { resize:vertical; min-height:110px; }
    .field-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
    .form-submit { width:100%; background:var(--orange); color:var(--white); border:none; padding:1rem; border-radius:7px; font-family:'Sora',sans-serif; font-size:0.9rem; font-weight:600; cursor:pointer; transition:background 0.2s; margin-top:0.5rem; box-shadow:0 4px 14px rgba(212,160,23,0.35); }
    .form-submit:hover { background:#E06500; }
    .success-box { display:none; text-align:center; padding:2.5rem 1rem; }
    .success-icon { font-size:2.5rem; margin-bottom:1rem; }
    .success-box strong { display:block; font-family:'Lora',serif; font-size:1.4rem; color:var(--blue); margin-bottom:0.5rem; }
    .success-box p { font-size:0.9rem; color:var(--body); }
    .form-heading { font-family:'Lora',serif; font-size:1.4rem; font-weight:600; color:var(--blue); margin-bottom:0.4rem; }
    .form-sub { font-size:0.875rem; color:var(--muted); margin-bottom:1.75rem; font-weight:300; }

    /* CONTACT PAGE */
    .contact-hero { background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 100%); padding:calc(70px + 4rem) 6% 4rem; text-align:center; }
    .contact-hero h1 { color:var(--white); margin-bottom:0.75rem; }
    .contact-hero p { color:rgba(255,255,255,0.7); font-size:1.05rem; font-weight:300; }
    .contact-body { padding:4rem 6%; background:var(--offwhite); display:grid; grid-template-columns:1fr 1.4fr; gap:4rem; align-items:start; }
    .contact-info h2 { color:var(--blue); margin-bottom:0.5rem; font-size:1.5rem; }
    .contact-info p { font-size:0.95rem; color:var(--body); font-weight:300; line-height:1.75; margin-bottom:2rem; }
    .info-list { display:flex; flex-direction:column; gap:1rem; margin-bottom:2rem; }
    .info-item { display:flex; align-items:flex-start; gap:0.85rem; }
    .info-icon { width:36px; height:36px; background:var(--blue); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:0.9rem; flex-shrink:0; margin-top:1px; }
    .info-label { font-size:0.72rem; font-weight:700; letter-spacing:0.07em; text-transform:uppercase; color:var(--muted); margin-bottom:2px; }
    .info-val { font-size:0.9rem; color:var(--text); }
    .social-row { display:flex; gap:0.6rem; flex-wrap:wrap; }
    .social-btn { display:inline-flex; align-items:center; gap:0.4rem; background:var(--white); border:1.5px solid var(--border); padding:0.45rem 0.85rem; border-radius:6px; font-size:0.78rem; font-weight:600; color:var(--blue); text-decoration:none; transition:border-color 0.2s,background 0.2s; }
    .social-btn:hover { border-color:var(--orange); background:var(--orange-lt); }
    .contact-form-wrap { background:var(--white); border-radius:12px; padding:2.5rem; box-shadow:0 4px 30px rgba(0,51,102,0.08); border:1px solid var(--border); }

    /* WHATSAPP FLOAT */
    .wa-float { position:fixed; bottom:28px; right:28px; z-index:999; width:58px; height:58px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(37,211,102,0.5); text-decoration:none; transition:transform 0.2s,box-shadow 0.2s; }
    .wa-float:hover { transform:scale(1.1); box-shadow:0 6px 28px rgba(37,211,102,0.6); }
    .wa-float svg { width:30px; height:30px; fill:white; }
    .wa-tooltip { position:absolute; right:68px; background:var(--blue); color:var(--white); font-size:0.75rem; font-weight:600; padding:0.35rem 0.75rem; border-radius:6px; white-space:nowrap; opacity:0; transition:opacity 0.2s; pointer-events:none; }
    .wa-float:hover .wa-tooltip { opacity:1; }

    /* FOOTER */
    footer { background:#001F3F; padding:2.5rem 6%; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
    .footer-brand { font-family:'Lora',serif; font-size:0.95rem; font-style:italic; color:rgba(255,255,255,0.5); }
    .footer-brand strong { color:rgba(255,255,255,0.85); font-style:normal; font-family:'Sora',sans-serif; font-weight:700; }
    .footer-rc { font-size:0.72rem; color:rgba(255,255,255,0.3); letter-spacing:0.05em; }

    /* ANALYSIS GUIDE PAGE */
    .guide-hero { background:linear-gradient(135deg,var(--blue) 0%,#0A8B97 100%); padding:calc(70px + 4rem) 6% 3.5rem; }
    .guide-hero h1 { color:var(--white); margin-bottom:0.75rem; }
    .guide-hero p { color:rgba(255,255,255,0.7); font-size:1.05rem; font-weight:300; max-width:600px; }
    .guide-body { padding:3.5rem 6%; background:var(--offwhite); }
    .guide-wrap { max-width:780px; margin:0 auto; }
    .guide-progress { display:flex; gap:8px; align-items:center; margin-bottom:2rem; }
    .guide-dot { width:8px; height:8px; border-radius:50%; background:rgba(0,51,102,0.2); transition:background 0.2s,width 0.2s; }
    .guide-dot.gdone { background:var(--orange); }
    .guide-dot.gactive { background:var(--blue); width:22px; border-radius:4px; }
    .guide-phase { display:none; }
    .guide-phase.gactive { display:block; }
    .guide-step-label { font-size:0.72rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--orange); margin-bottom:0.5rem; }
    .guide-q { font-family:'Lora',serif; font-size:1.5rem; font-weight:600; color:var(--blue); margin-bottom:1.5rem; line-height:1.3; }
    .guide-opts { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1rem; margin-bottom:2rem; }
    .guide-opt { border:1.5px solid var(--border); border-radius:10px; padding:1.25rem; cursor:pointer; background:var(--white); transition:border-color 0.2s,box-shadow 0.2s,transform 0.15s; }
    .guide-opt:hover { border-color:var(--orange); transform:translateY(-2px); box-shadow:0 4px 16px rgba(0,51,102,0.08); }
    .guide-opt.gsel { border-color:var(--blue); background:var(--blue-light); box-shadow:0 2px 12px rgba(0,51,102,0.12); }
    .guide-opt-icon { font-size:1.5rem; margin-bottom:0.5rem; }
    .guide-opt-title { font-size:0.9rem; font-weight:700; color:var(--blue); margin-bottom:0.25rem; }
    .guide-opt-desc { font-size:0.78rem; color:var(--body); line-height:1.5; font-weight:300; }
    .guide-nav { display:flex; gap:0.75rem; align-items:center; }
    .guide-btn-next { background:var(--orange); color:var(--white); border:none; padding:0.75rem 1.75rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; font-weight:600; cursor:pointer; transition:background 0.2s; box-shadow:0 3px 12px rgba(212,160,23,0.3); }
    .guide-btn-next:hover { background:#E06500; }
    .guide-btn-next:disabled { opacity:0.4; cursor:default; box-shadow:none; }
    .guide-btn-back { background:none; border:1.5px solid var(--border); padding:0.75rem 1.25rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; color:var(--body); cursor:pointer; transition:border-color 0.2s; }
    .guide-btn-back:hover { border-color:var(--blue); color:var(--blue); }
    .guide-restart { font-size:0.82rem; color:var(--muted); cursor:pointer; background:none; border:none; font-family:'Sora',sans-serif; text-decoration:underline; margin-left:auto; }
    .guide-restart:hover { color:var(--orange); }
    .rec-card { background:var(--white); border:1.5px solid var(--border); border-radius:10px; padding:1.5rem; margin-bottom:1rem; transition:border-color 0.2s; }
    .rec-card:hover { border-color:var(--orange); }
    .rec-top { display:flex; align-items:center; gap:0.6rem; margin-bottom:0.6rem; flex-wrap:wrap; }
    .rec-tag { background:var(--orange-lt); color:var(--orange); font-size:0.68rem; font-weight:700; letter-spacing:0.07em; text-transform:uppercase; padding:0.2rem 0.65rem; border-radius:4px; }
    .rec-lvl { font-size:0.68rem; font-weight:700; padding:0.2rem 0.65rem; border-radius:4px; }
    .rec-lvl.beginner { background:#E8F5E9; color:#2E7D32; }
    .rec-lvl.intermediate { background:#FFF8E1; color:#E65100; }
    .rec-lvl.advanced { background:var(--blue-light); color:var(--blue); }
    .rec-name { font-size:1rem; font-weight:700; color:var(--blue); margin-bottom:0.4rem; }
    .rec-desc { font-size:0.875rem; color:var(--body); line-height:1.65; font-weight:300; margin-bottom:0.85rem; }
    .rec-tools { display:flex; flex-wrap:wrap; gap:6px; }
    .rec-tool { font-size:0.72rem; padding:0.25rem 0.65rem; border-radius:20px; border:1px solid var(--border); color:var(--body); background:var(--offwhite); font-weight:600; }
    .guide-chat-wrap { background:var(--white); border:1.5px solid var(--border); border-radius:12px; overflow:hidden; margin-top:1.5rem; }
    .guide-chat-head { background:var(--blue); padding:0.9rem 1.25rem; display:flex; align-items:center; gap:0.6rem; }
    .guide-chat-head span { font-size:0.85rem; font-weight:600; color:var(--white); }
    .guide-chat-dot { width:8px; height:8px; border-radius:50%; background:#4CAF50; flex-shrink:0; }
    .guide-msgs { padding:1rem 1.25rem; min-height:180px; max-height:360px; overflow-y:auto; display:flex; flex-direction:column; gap:10px; }
    .gmsg { max-width:88%; }
    .gmsg.guser { align-self:flex-end; }
    .gmsg.guser .gbubble { background:var(--blue); color:var(--white); border-radius:14px 14px 2px 14px; padding:9px 14px; font-size:0.875rem; line-height:1.55; }
    .gmsg.gai .gbubble { background:var(--offwhite); color:var(--text); border:1px solid var(--border); border-radius:2px 14px 14px 14px; padding:9px 14px; font-size:0.875rem; line-height:1.55; }
    .gmsg .gname { font-size:0.7rem; color:var(--muted); margin-bottom:3px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; }
    .guide-quick-btns { display:flex; flex-wrap:wrap; gap:6px; padding:8px 12px; border-top:1px solid var(--border); background:var(--offwhite); }
    .guide-qbtn { font-size:0.75rem; padding:0.35rem 0.85rem; border-radius:20px; border:1.5px solid var(--border); color:var(--blue); background:var(--white); cursor:pointer; font-family:'Sora',sans-serif; font-weight:600; transition:border-color 0.2s,background 0.2s; }
    .guide-qbtn:hover { border-color:var(--orange); background:var(--orange-lt); color:var(--orange); }
    .guide-input-row { display:flex; gap:8px; padding:10px 12px; border-top:1px solid var(--border); }
    .guide-input-row input { flex:1; padding:0.65rem 1rem; border:1.5px solid var(--border); border-radius:6px; font-family:'Sora',sans-serif; font-size:0.875rem; color:var(--text); background:var(--offwhite); outline:none; transition:border-color 0.2s; }
    .guide-input-row input:focus { border-color:var(--blue); background:var(--white); }
    .guide-send { background:var(--orange); color:var(--white); border:none; border-radius:6px; padding:0.65rem 1.1rem; font-family:'Sora',sans-serif; font-size:0.875rem; font-weight:600; cursor:pointer; transition:background 0.2s; }
    .guide-send:hover { background:#E06500; }
    .guide-send:disabled { opacity:0.4; cursor:default; }
    .gtyping { display:flex; gap:4px; align-items:center; padding:10px 14px; }
    .gtyping span { width:6px; height:6px; border-radius:50%; background:var(--muted); animation:gblink 1.2s infinite; }
    .gtyping span:nth-child(2){animation-delay:0.2s;} .gtyping span:nth-child(3){animation-delay:0.4s;}
    @keyframes gblink{0%,80%,100%{opacity:0.3}40%{opacity:1}}
    .guide-results-header { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:1.5rem; }
    .guide-divider { border:none; border-top:1px solid var(--border); margin:2rem 0; }
    .guide-chat-label { font-size:0.85rem; font-weight:700; color:var(--blue); margin-bottom:0.75rem; display:flex; align-items:center; gap:0.4rem; }

    /* RESEARCH GUIDE PAGE */
    .rg-hero { background:linear-gradient(135deg,#0D5C63 0%,#0A8B97 55%,#0AABB8 100%); padding:calc(70px + 4rem) 6% 3.5rem; position:relative; overflow:hidden; }
    .rg-hero::before { content:''; position:absolute; width:400px; height:400px; border-radius:50%; background:rgba(255,255,255,0.04); top:-100px; right:-80px; }
    .rg-hero h1 { color:var(--white); margin-bottom:0.75rem; }
    .rg-hero p { color:rgba(255,255,255,0.7); font-size:1.05rem; font-weight:300; max-width:600px; }
    .rg-label { display:inline-block; font-size:0.72rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#5EC4CC; margin-bottom:0.75rem; }
    .rg-body { padding:3.5rem 6%; background:var(--offwhite); }
    .rg-wrap { max-width:780px; margin:0 auto; }
    .rg-progress { display:flex; gap:8px; align-items:center; margin-bottom:2rem; }
    .rg-dot { width:8px; height:8px; border-radius:50%; background:rgba(13,92,99,0.2); transition:background 0.2s,width 0.2s; }
    .rg-dot.rdone { background:#0A8B97; }
    .rg-dot.ractive { background:#0D5C63; width:22px; border-radius:4px; }
    .rg-phase { display:none; }
    .rg-phase.rgactive { display:block; }
    .rg-step-label { font-size:0.72rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#0A8B97; margin-bottom:0.5rem; }
    .rg-q { font-family:'Lora',serif; font-size:1.5rem; font-weight:600; color:#0D5C63; margin-bottom:0.5rem; line-height:1.3; }
    .rg-hint { font-size:0.82rem; color:var(--muted); margin-bottom:1.25rem; font-weight:300; }
    .rg-opts { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1rem; margin-bottom:2rem; }
    .rg-opt { border:1.5px solid var(--border); border-radius:10px; padding:1.25rem; cursor:pointer; background:var(--white); transition:border-color 0.2s,box-shadow 0.2s,transform 0.15s; }
    .rg-opt:hover { border-color:#0A8B97; transform:translateY(-2px); box-shadow:0 4px 16px rgba(13,92,99,0.1); }
    .rg-opt.rgsel { border-color:#0A8B97; background:#E1F4F5; box-shadow:0 2px 12px rgba(13,92,99,0.12); }
    .rg-opt-icon { font-size:1.5rem; margin-bottom:0.5rem; }
    .rg-opt-title { font-size:0.9rem; font-weight:700; color:#0D5C63; margin-bottom:0.25rem; }
    .rg-opt-desc { font-size:0.78rem; color:var(--body); line-height:1.5; font-weight:300; }
    .rg-text-wrap { margin-bottom:1.5rem; }
    .rg-textarea { width:100%; border:1.5px solid var(--border); border-radius:10px; padding:1rem; font-family:'Sora',sans-serif; font-size:0.875rem; color:var(--text); background:var(--white); resize:vertical; min-height:90px; outline:none; transition:border-color 0.2s; line-height:1.6; }
    .rg-textarea:focus { border-color:#0A8B97; }
    .rg-nav { display:flex; gap:0.75rem; align-items:center; }
    .rg-btn-next { background:#0A8B97; color:var(--white); border:none; padding:0.75rem 1.75rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; font-weight:600; cursor:pointer; transition:background 0.2s; box-shadow:0 3px 12px rgba(13,92,99,0.3); }
    .rg-btn-next:hover { background:#0D5C63; }
    .rg-btn-next:disabled { opacity:0.4; cursor:default; box-shadow:none; }
    .rg-btn-back { background:none; border:1.5px solid var(--border); padding:0.75rem 1.25rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; color:var(--body); cursor:pointer; transition:border-color 0.2s; }
    .rg-btn-back:hover { border-color:#0A8B97; color:#0D5C63; }
    .rg-restart { font-size:0.82rem; color:var(--muted); cursor:pointer; background:none; border:none; font-family:'Sora',sans-serif; text-decoration:underline; margin-left:auto; }
    .rg-restart:hover { color:#0A8B97; }
    .rg-rec-card { background:var(--white); border:1.5px solid var(--border); border-radius:10px; padding:1.5rem; margin-bottom:1rem; transition:border-color 0.2s; }
    .rg-rec-card:hover { border-color:#0A8B97; }
    .rg-rec-top { display:flex; align-items:center; gap:0.6rem; margin-bottom:0.6rem; flex-wrap:wrap; }
    .rg-rec-tag { background:#E1F4F5; color:#0A8B97; font-size:0.68rem; font-weight:700; letter-spacing:0.07em; text-transform:uppercase; padding:0.2rem 0.65rem; border-radius:4px; }
    .rg-rec-lvl { font-size:0.68rem; font-weight:700; padding:0.2rem 0.65rem; border-radius:4px; }
    .rg-rec-lvl.undergraduate { background:#E8F5E9; color:#2E7D32; }
    .rg-rec-lvl.postgraduate { background:#FFF8E1; color:#E65100; }
    .rg-rec-lvl.researcher { background:#E1F4F5; color:#0D5C63; }
    .rg-rec-name { font-size:1rem; font-weight:700; color:#0D5C63; margin-bottom:0.4rem; }
    .rg-rec-desc { font-size:0.875rem; color:var(--body); line-height:1.65; font-weight:300; margin-bottom:0.85rem; }
    .rg-rec-features { display:flex; flex-wrap:wrap; gap:6px; }
    .rg-rec-feat { font-size:0.72rem; padding:0.25rem 0.65rem; border-radius:20px; border:1px solid rgba(13,92,99,0.25); color:#0A8B97; background:#E1F4F5; font-weight:600; }
    .rg-chat-wrap { background:var(--white); border:1.5px solid var(--border); border-radius:12px; overflow:hidden; margin-top:1.5rem; }
    .rg-chat-head { background:#0D5C63; padding:0.9rem 1.25rem; display:flex; align-items:center; gap:0.6rem; }
    .rg-chat-head span { font-size:0.85rem; font-weight:600; color:var(--white); }
    .rg-chat-dot { width:8px; height:8px; border-radius:50%; background:#5EC4CC; flex-shrink:0; }
    .rg-msgs { padding:1rem 1.25rem; min-height:180px; max-height:360px; overflow-y:auto; display:flex; flex-direction:column; gap:10px; }
    .rmsg { max-width:88%; }
    .rmsg.ruser { align-self:flex-end; }
    .rmsg.ruser .rbubble { background:#0A8B97; color:var(--white); border-radius:14px 14px 2px 14px; padding:9px 14px; font-size:0.875rem; line-height:1.55; }
    .rmsg.rai .rbubble { background:var(--offwhite); color:var(--text); border:1px solid var(--border); border-radius:2px 14px 14px 14px; padding:9px 14px; font-size:0.875rem; line-height:1.55; }
    .rmsg .rname { font-size:0.7rem; color:var(--muted); margin-bottom:3px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; }
    .rg-quick-btns { display:flex; flex-wrap:wrap; gap:6px; padding:8px 12px; border-top:1px solid var(--border); background:var(--offwhite); }
    .rg-qbtn { font-size:0.75rem; padding:0.35rem 0.85rem; border-radius:20px; border:1.5px solid rgba(13,92,99,0.3); color:#0A8B97; background:var(--white); cursor:pointer; font-family:'Sora',sans-serif; font-weight:600; transition:border-color 0.2s,background 0.2s; }
    .rg-qbtn:hover { border-color:#0A8B97; background:#E1F4F5; }
    .rg-input-row { display:flex; gap:8px; padding:10px 12px; border-top:1px solid var(--border); }
    .rg-input-row input { flex:1; padding:0.65rem 1rem; border:1.5px solid var(--border); border-radius:6px; font-family:'Sora',sans-serif; font-size:0.875rem; color:var(--text); background:var(--offwhite); outline:none; transition:border-color 0.2s; }
    .rg-input-row input:focus { border-color:#0A8B97; background:var(--white); }
    .rg-send { background:#0A8B97; color:var(--white); border:none; border-radius:6px; padding:0.65rem 1.1rem; font-family:'Sora',sans-serif; font-size:0.875rem; font-weight:600; cursor:pointer; transition:background 0.2s; }
    .rg-send:hover { background:#0D5C63; }
    .rg-send:disabled { opacity:0.4; cursor:default; }
    .rtyping { display:flex; gap:4px; align-items:center; padding:10px 14px; }
    .rtyping span { width:6px; height:6px; border-radius:50%; background:var(--muted); animation:gblink 1.2s infinite; }
    .rtyping span:nth-child(2){animation-delay:0.2s;} .rtyping span:nth-child(3){animation-delay:0.4s;}
    .rg-results-header { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:1.5rem; }
    .rg-divider { border:none; border-top:1px solid var(--border); margin:2rem 0; }
    .rg-chat-label { font-size:0.85rem; font-weight:700; color:#0D5C63; margin-bottom:0.75rem; display:flex; align-items:center; gap:0.4rem; }
    .rg-context-box { background:#E1F4F5; border:1px solid rgba(13,92,99,0.2); border-radius:10px; padding:1rem 1.25rem; margin-bottom:1.5rem; font-size:0.82rem; color:#0D5C63; line-height:1.6; }
    .rg-context-box strong { font-weight:700; }

    /* DESIGN GUIDE */
    .dg-progress { display:flex; gap:8px; align-items:center; margin-bottom:2rem; }
    .dg-dot { width:8px; height:8px; border-radius:50%; background:rgba(107,53,199,0.2); transition:background 0.2s,width 0.2s; border:none; padding:0; cursor:pointer; }
    .dg-dot.ddone { background:#6B35C7; }
    .dg-dot.dactive { background:#2D1B69; width:22px; border-radius:4px; }
    .dg-phase { display:none; }
    .dg-phase.dgactive { display:block; }
    .dg-step-label { font-size:0.72rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#6B35C7; margin-bottom:0.5rem; }
    .dg-q { font-family:'Lora',serif; font-size:1.5rem; font-weight:600; color:#2D1B69; margin-bottom:1.5rem; line-height:1.3; }
    .dg-opts { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1rem; margin-bottom:2rem; }
    .dg-opt { border:1.5px solid var(--border); border-radius:10px; padding:1.25rem; cursor:pointer; background:var(--white); transition:border-color 0.2s,box-shadow 0.2s,transform 0.15s; }
    .dg-opt:hover { border-color:#6B35C7; transform:translateY(-2px); box-shadow:0 4px 16px rgba(107,53,199,0.1); }
    .dg-opt.dgsel { border-color:#6B35C7; background:#F5F0FF; box-shadow:0 2px 12px rgba(107,53,199,0.12); }
    .dg-opt-icon { font-size:1.5rem; margin-bottom:0.5rem; }
    .dg-opt-title { font-size:0.9rem; font-weight:700; color:#2D1B69; margin-bottom:0.25rem; }
    .dg-opt-desc { font-size:0.78rem; color:var(--body); line-height:1.5; font-weight:300; }
    .dg-nav { display:flex; gap:0.75rem; align-items:center; }
    .dg-btn-next { background:#6B35C7; color:var(--white); border:none; padding:0.75rem 1.75rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; font-weight:600; cursor:pointer; transition:background 0.2s; box-shadow:0 3px 12px rgba(107,53,199,0.3); }
    .dg-btn-next:hover { background:#2D1B69; }
    .dg-btn-next:disabled { opacity:0.4; cursor:default; box-shadow:none; }
    .dg-btn-back { background:none; border:1.5px solid var(--border); padding:0.75rem 1.25rem; border-radius:6px; font-family:'Sora',sans-serif; font-size:0.9rem; color:var(--body); cursor:pointer; }
    .dg-btn-back:hover { border-color:#6B35C7; color:#2D1B69; }
    .dg-restart { font-size:0.82rem; color:var(--muted); cursor:pointer; background:none; border:none; font-family:'Sora',sans-serif; text-decoration:underline; margin-left:auto; }
    .dg-rec-card { background:var(--white); border:1.5px solid var(--border); border-radius:10px; padding:1.5rem; margin-bottom:1rem; }
    .dg-rec-card:hover { border-color:#6B35C7; }
    .dg-rec-tag { background:#F5F0FF; color:#6B35C7; font-size:0.68rem; font-weight:700; letter-spacing:0.07em; text-transform:uppercase; padding:0.2rem 0.65rem; border-radius:4px; display:inline-block; margin-bottom:0.5rem; }
    .dg-rec-name { font-size:1rem; font-weight:700; color:#2D1B69; margin-bottom:0.4rem; }
    .dg-rec-desc { font-size:0.875rem; color:var(--body); line-height:1.65; font-weight:300; margin-bottom:0.85rem; }
    .dg-rec-tools { display:flex; flex-wrap:wrap; gap:6px; }
    .dg-rec-tool { font-size:0.72rem; padding:0.25rem 0.65rem; border-radius:20px; border:1px solid rgba(107,53,199,0.25); color:#6B35C7; background:#F5F0FF; font-weight:600; }
    /* Program showcase ticker */
    .prog-showcase { grid-column:span 2; background:rgba(0,0,0,0.2); border:1px solid rgba(255,255,255,0.1); border-radius:12px; overflow:hidden; display:flex; flex-direction:column; }
    .prog-slides-wrap { position:relative; flex:1; min-height:88px; }
    .prog-slide { position:absolute; inset:0; padding:1rem 1.25rem; display:flex; align-items:center; gap:1rem; opacity:0; transform:translateY(10px); transition:opacity 0.45s,transform 0.45s; pointer-events:none; }
    .prog-slide.active { opacity:1; transform:translateY(0); pointer-events:auto; }
    .prog-slide-icon { font-size:2rem; flex-shrink:0; }
    .prog-slide-title { font-size:0.92rem; font-weight:700; color:#fff; margin-bottom:2px; }
    .prog-slide-tools { font-size:0.7rem; color:rgba(255,255,255,0.55); margin-bottom:6px; line-height:1.5; }
    .prog-slide-cta { font-size:0.72rem; font-weight:600; color:#F5C842; background:none; border:none; font-family:'Sora',sans-serif; padding:0; cursor:pointer; }
    .prog-slide-cta:hover { text-decoration:underline; }
    .prog-footer { display:flex; align-items:center; justify-content:center; padding:0.55rem 1.25rem 0.75rem; border-top:1px solid rgba(255,255,255,0.07); gap:6px; }
    .prog-dot { width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,0.2); border:none; cursor:pointer; padding:0; transition:background 0.25s,width 0.25s; }
    .prog-dot.on { background:#D4A017; width:16px; border-radius:3px; }

    /* TEAM PHOTOS */
    .team-card-img {
      width:100%; height:240px; object-fit:cover;
      object-position:center 20%; display:block;
      background:#f8f8f8;
    }

    /* RESPONSIVE */
    /* ── HAMBURGER BUTTON ── */
    .nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:6px; z-index:310; }
    .nav-hamburger span { display:block; width:24px; height:2.5px; background:var(--blue); border-radius:2px; transition:all 0.3s; }
    .nav-hamburger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
    .nav-hamburger.open span:nth-child(2) { opacity:0; }
    .nav-hamburger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

    /* ── MOBILE SIDE DRAWER ── */
    .mobile-drawer { position:fixed; top:0; right:-100%; width:82%; max-width:320px; height:100vh; background:#fff; z-index:400; box-shadow:-4px 0 24px rgba(0,0,0,0.15); transition:right 0.32s cubic-bezier(0.4,0,0.2,1); overflow-y:auto; display:flex; flex-direction:column; }
    .mobile-drawer.open { right:0; }
    .mobile-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.45); z-index:390; display:none; }
    .mobile-overlay.open { display:block; }
    .drawer-head { background:var(--blue); padding:1.25rem 1.25rem 1rem; display:flex; align-items:center; justify-content:space-between; }
    .drawer-brand { color:#fff; font-size:0.95rem; font-weight:700; }
    .drawer-brand span { display:block; font-size:0.7rem; font-weight:300; color:rgba(255,255,255,0.65); margin-top:2px; }
    .drawer-close { background:none; border:none; color:#fff; font-size:1.4rem; cursor:pointer; padding:4px 8px; line-height:1; }
    .drawer-nav { flex:1; padding:0.75rem 0; }
    .drawer-nav a { display:flex; align-items:center; justify-content:space-between; padding:0.8rem 1.25rem; font-size:0.9rem; font-weight:600; color:var(--body); text-decoration:none; cursor:pointer; border-bottom:1px solid rgba(0,0,0,0.04); transition:background 0.15s,color 0.15s; }
    .drawer-nav a:hover { background:var(--blue-light); color:var(--blue); }
    .drawer-nav a.drawer-cta { background:var(--orange); color:#fff; margin:0.85rem 1.25rem; border-radius:7px; justify-content:center; border-bottom:none; }
    .drawer-nav a.drawer-cta:hover { background:#B8880F; }
    .drawer-section { font-size:0.65rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); padding:0.85rem 1.25rem 0.2rem; }
    .drawer-sub a { padding-left:2rem; font-size:0.85rem; font-weight:400; background:var(--offwhite); }
    .drawer-group { border-bottom:1px solid var(--border); }
    .drawer-toggle { display:flex; align-items:center; justify-content:space-between; padding:0.8rem 1.25rem; font-size:0.9rem; font-weight:600; color:var(--body); cursor:pointer; }
    .drawer-toggle .arrow { font-size:0.7rem; transition:transform 0.2s; }
    .drawer-toggle.active .arrow { transform:rotate(180deg); }
    .drawer-sub { display:none; }
    .drawer-sub.open { display:block; }
    .drawer-footer { padding:1.25rem; border-top:1px solid var(--border); }
    .drawer-footer p { font-size:0.75rem; color:var(--muted); margin-bottom:0.5rem; }
    .drawer-footer .wa-link { display:inline-flex; align-items:center; gap:6px; background:#25D366; color:#fff; padding:0.55rem 1rem; border-radius:6px; font-size:0.82rem; font-weight:600; text-decoration:none; }

    /* ── TABLET (900px) ── */
    @media(max-width:900px) {
      .hero { grid-template-columns:1fr; padding-top:90px; }
      .hero-right { display:none; }
      .why-grid { grid-template-columns:1fr 1fr; }
      .contact-body,.enroll-body { grid-template-columns:1fr; gap:2rem; }
      .field-row { grid-template-columns:1fr; }
      .about-story { grid-template-columns:1fr; }
      .about-stats { grid-template-columns:repeat(2,1fr); }
      .pricing-tiers { grid-template-columns:1fr; gap:1rem; }
      .rs-form-wrap { grid-template-columns:1fr; }
      #rs-form { grid-template-columns:1fr; }
    }

    /* ── MOBILE (640px) ── */
    @media(max-width:640px) {
      nav { padding:0 4%; }
      .nav-links { display:none; }
      .nav-hamburger { display:flex; }
      .services-grid { grid-template-columns:1fr; }
      .blog-grid { grid-template-columns:1fr; }
      .testi-grid { grid-template-columns:1fr; }
      .why-grid { grid-template-columns:1fr; }
      .about-mv { grid-template-columns:1fr; }
      .about-stats { grid-template-columns:repeat(2,1fr); }
      .team-grid { grid-template-columns:1fr 1fr; }
      .pricing-tiers { grid-template-columns:1fr; }
      .includes-grid { grid-template-columns:1fr 1fr; }
      .rs-cards { grid-template-columns:1fr; }
      .rs-who { grid-template-columns:repeat(3,1fr); }
      .dg-opts { grid-template-columns:1fr 1fr; }
      .res-grid { grid-template-columns:1fr; }
      .hero h1 { font-size:2.2rem; }
      .prog-showcase { grid-column:span 1; }
      section[style*="grid-template-columns:2fr 1fr"] { display:block !important; }
      div[style*="grid-template-columns:2fr 1fr"] { display:block !important; }
      div[style*="position:sticky"] { position:relative !important; top:auto !important; margin-top:2rem; }
      div[style*="grid-template-columns:repeat(3,1fr)"] { display:block !important; }
      div[style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns:repeat(2,1fr) !important; }
      .pricing-cta { flex-direction:column; }
      footer { padding:2rem 4% 1.5rem; }
      .footer-links { flex-wrap:wrap; gap:0.75rem; }
    }

    /* ── SMALL MOBILE (380px) ── */
    @media(max-width:380px) {
      .team-grid { grid-template-columns:1fr; }
      .rs-who { grid-template-columns:repeat(2,1fr); }
      .dg-opts { grid-template-columns:1fr; }
    }
