/*
Theme Name: RSGM Moestopo Modern
Theme URI: https://example.com/
Author: Masanang
Description: Modern, lightweight and responsive WordPress theme for RSGM Moestopo. Includes a 5-slide homepage hero managed from the WordPress Customizer.
Version: 3.1.0
Requires at least: 6.2
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: rsgm-moestopo
*/
:root{--purple:#6d28d9;--purple2:#5b21b6;--ink:#151127;--muted:#68708a;--soft:#f8f6ff;--line:#e9e3f5;--white:#fff;--radius:24px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(calc(100% - 40px),var(--container));margin:auto}
.site-header{background:#fff;border-bottom:1px solid #eeeaf5;position:sticky;top:0;z-index:50}.header-inner{min-height:78px;display:flex;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:13px;min-width:230px}.brand img,.brand .custom-logo{width:54px!important;height:54px!important;object-fit:contain}.brand-text strong{display:block;font-size:20px;line-height:1.15}.brand-text span{display:block;color:#74758a;font-size:14px;margin-top:4px}
.primary-nav{margin-left:auto}.primary-menu{display:flex;align-items:center;gap:5px;list-style:none;margin:0;padding:0}.primary-menu>li>a{display:block;padding:10px 11px;font-weight:700;font-size:14px;border-radius:10px}.primary-menu>li>a:hover{background:#f5f0ff;color:var(--purple)}.menu-toggle{display:none;border:0;background:#f3edff;color:var(--purple);border-radius:12px;padding:11px 13px;font-size:20px}
.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;background:var(--purple);color:#fff;font-weight:800;padding:13px 19px;cursor:pointer;box-shadow:0 10px 25px rgba(109,40,217,.18)}.header-cta{margin-left:8px;font-size:14px}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn:hover{transform:translateY(-1px)}
.hero{background:linear-gradient(135deg,#fcfaff 0%,#f4efff 100%);padding:58px 0 70px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.eyebrow{display:inline-block;color:var(--purple);background:#eee7ff;padding:7px 12px;border-radius:999px;font-weight:800;font-size:13px}.hero h1{font-size:clamp(42px,5.2vw,72px);line-height:1.04;letter-spacing:-.045em;margin:15px 0 20px}.hero p{font-size:19px;color:#59627c;max-width:680px;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-slider{position:relative}.slider-viewport{overflow:hidden;border-radius:30px}.slider-track{display:flex;transition:transform .65s cubic-bezier(.2,.8,.2,1);will-change:transform}.slide{min-width:100%;position:relative;aspect-ratio:1.14/1;background:#ddd}.slide img{width:100%;height:100%;object-fit:cover}.slide-overlay{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-radius:18px;padding:15px 17px;box-shadow:0 14px 35px rgba(30,20,60,.15)}.slide-overlay strong{display:block;font-size:16px}.slide-overlay span{color:#65708b;font-size:14px}.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid #eee;background:#fff;box-shadow:0 8px 20px rgba(30,20,60,.12);font-size:22px;cursor:pointer;z-index:3}.slider-prev{left:12px}.slider-next{right:12px}.slider-dots{display:flex;gap:7px;justify-content:center;margin-top:13px}.slider-dot{width:8px;height:8px;border:0;border-radius:50%;background:#cfc6e5;padding:0;cursor:pointer}.slider-dot.active{width:24px;border-radius:8px;background:var(--purple)}
.stats{margin-top:-34px;position:relative;z-index:2}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 12px 30px rgba(45,25,80,.06)}.stat strong{font-size:30px;color:var(--purple);display:block}.stat span{color:#68708a}
.section{padding:78px 0}.section.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section h2{font-size:36px;line-height:1.15;margin:0;letter-spacing:-.03em}.section-head p{max-width:620px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}.card-body{padding:20px}.card h3{margin:0 0 8px;font-size:20px}.card p{margin:0;color:var(--muted)}.card-img{aspect-ratio:16/10;object-fit:cover;width:100%}.pill{display:inline-block;background:#f0eaff;color:var(--purple);font-size:12px;font-weight:800;border-radius:999px;padding:5px 9px;margin-bottom:9px}
.contact{background:#24133d;color:#fff;border-radius:28px;padding:42px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.contact p{color:#d8d0ea}.contact-item{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-item:last-child{border-bottom:0}
.site-footer{background:#170c29;color:#e9e2f4;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr .9fr;gap:35px}.footer-logo{display:flex;align-items:center;gap:12px}.footer-logo img{width:48px!important;height:48px!important;object-fit:contain}.site-footer h3{color:#fff;font-size:16px;margin:0 0 14px}.site-footer p,.site-footer li,.site-footer a{color:#c8bddc}.footer-social-intro{margin:0 0 15px;max-width:260px}.social-list{display:grid;gap:9px}.social-link{display:flex;align-items:center;gap:10px;width:max-content;min-width:145px;padding:8px 11px;border:1px solid rgba(255,255,255,.1);border-radius:12px;transition:background .2s ease,transform .2s ease,color .2s ease}.social-link:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateY(-1px)}.social-link svg{width:22px;height:22px;flex:0 0 22px}.social-link span{font-size:14px;font-weight:700;color:inherit}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:18px;font-size:13px;color:#a99dbd}
.page-wrap{padding:60px 0}.page-wrap h1{font-size:44px;margin-top:0}.content{max-width:820px}.notice{padding:18px;border-radius:15px;background:#f6f2ff;border:1px solid var(--line)}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-slider{max-width:760px}.primary-nav{display:none;position:absolute;left:20px;right:20px;top:78px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 20px 50px rgba(30,20,60,.15)}.primary-nav.open{display:block}.primary-menu{display:block}.primary-menu>li>a{padding:12px}.menu-toggle{display:block;margin-left:auto}.header-cta{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:min(calc(100% - 28px),var(--container))}.header-inner{min-height:70px}.brand{min-width:0}.brand img,.brand .custom-logo{width:46px!important;height:46px!important}.brand-text strong{font-size:17px}.brand-text span{font-size:12px}.hero{padding:38px 0 52px}.hero h1{font-size:42px}.hero p{font-size:17px}.stats{margin-top:-22px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat{padding:16px}.stat strong{font-size:25px}.section{padding:55px 0}.section h2{font-size:30px}.cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.contact{padding:28px}.contact-grid{grid-template-columns:1fr}}

.text-link{display:inline-block;margin-top:12px;color:var(--purple);font-weight:800}.lead{font-size:18px;color:var(--muted);max-width:760px;margin:0 0 30px}.featured-image{display:block;width:100%;max-width:900px;max-height:560px;object-fit:cover;border-radius:24px;margin:25px 0 30px}.career-hero{padding:34px;border-radius:24px;background:linear-gradient(135deg,#f5efff,#fff);border:1px solid var(--line);margin:25px 0}.career-hero h2{margin:0 0 10px;font-size:30px}.career-content{font-size:17px;line-height:1.8}.career-note{margin-top:30px;padding:28px;border-radius:20px;background:#f7f3ff;border:1px solid var(--line)}.career-note ul{padding-left:20px}.nav-links{margin-top:30px}.nav-links a{display:inline-block;margin:4px;padding:8px 12px;border:1px solid var(--line);border-radius:10px}

.doctor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.doctor-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 30px rgba(45,25,80,.05)}.doctor-photo-link{display:block;background:#f1ecff}.doctor-photo{width:100%;aspect-ratio:4/3;object-fit:cover}.doctor-body{padding:20px}.doctor-body h2{font-size:21px;line-height:1.25;margin:3px 0 13px}.doctor-body h2 a:hover{color:var(--purple)}.doctor-schedule{display:flex;flex-direction:column;gap:4px;padding:13px 14px;border-radius:15px;background:#f8f5ff;border:1px solid #eee7fb;margin-bottom:8px}.doctor-schedule strong{font-size:13px;color:var(--purple)}.doctor-schedule span{font-size:14px;color:var(--muted);line-height:1.55}.doctor-detail-box{display:flex;flex-direction:column;gap:5px;padding:18px;border-radius:18px;background:#f8f5ff;border:1px solid var(--line);margin:20px 0;font-size:16px}.doctor-detail-box strong{color:var(--purple)}.doctor-detail-photo{max-width:620px;max-height:620px}.entry-content{font-size:17px;line-height:1.8}.entry-content img{border-radius:18px}.latest-articles{background:#fff}.article-card .card-body{min-height:190px}.article-card h3{line-height:1.3}.article-card .text-link{margin-top:8px}.wp-block-post-featured-image img{border-radius:18px}
@media(max-width:980px){.doctor-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.doctor-grid{grid-template-columns:1fr}.doctor-body{padding:17px}.article-card .card-body{min-height:0}}

/* Testimonial & partner sections */
.testimonials-section{background:#fff}.section-head-copy{max-width:620px;color:var(--muted);line-height:1.7}.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.testimonial-card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:20px;box-shadow:0 12px 30px rgba(45,25,80,.05)}.testimonial-top{display:flex;align-items:center;gap:14px}.testimonial-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 64px;background:#f1ecff}.testimonial-top h3{font-size:18px;line-height:1.25;margin:0 0 3px}.testimonial-top span{font-size:13px;color:var(--muted)}.testimonial-rating{margin:17px 0 8px;color:var(--purple);font-size:18px;letter-spacing:1px}.testimonial-rating span{color:#d8d0e8}.testimonial-card blockquote{margin:0;color:#59627c;font-size:15px;line-height:1.75}.testimonial-card blockquote p{margin:0}.partner-section{background:var(--soft)}.partner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;align-items:stretch}.partner-card{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;min-width:0}.partner-card>a{display:flex;height:100%;flex-direction:column}.partner-logo{width:100%;aspect-ratio:2.3/1;object-fit:contain;padding:18px;background:#fff}.partner-name{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-top:1px solid var(--line)}.partner-name strong{font-size:15px}.partner-name span{font-size:12px;color:var(--purple);background:#f0eaff;border-radius:999px;padding:4px 8px;white-space:nowrap}.partner-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(45,25,80,.08)}
@media(max-width:980px){.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head-copy{max-width:none}}
@media(max-width:640px){.testimonial-grid{grid-template-columns:1fr}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-name{display:block}.partner-name span{display:inline-block;margin-top:6px}}
