/* Radhin PAUD V1.6.1 — Typography Scale & Readability Refinement
   Fokus: proporsi judul lebih seimbang, teks isi lebih nyaman, formulir dan admin lebih terbaca. */
:root{
  --rp-body-size:16px;
  --rp-body-line:1.7;
  --rp-label-size:14px;
  --rp-control-size:16px;
  --rp-help-size:12.5px;
  --rp-meta-size:13px;
}
html{font-size:16px}
body{font-size:var(--rp-body-size);line-height:var(--rp-body-line)}

/* Global hierarchy */
.site-body p,.site-body li,.site-body dd,.site-body td{font-size:15px;line-height:1.72}
.eyebrow,.panel-kicker,.page-title span,.campaign-kicker,.utility-kicker{font-size:11.5px!important;line-height:1.35;letter-spacing:.115em!important}
.brand-copy strong{font-size:20px!important}
.brand-copy small{font-size:10.5px!important;line-height:1.35;letter-spacing:.075em!important}
.service-strip-copy strong{font-size:11.5px!important}
.service-strip-copy span:last-child,.service-strip nav a{font-size:11.5px;line-height:1.4}
.nav-links a{font-size:13.5px!important;line-height:1.35;padding:11px 13px}
.btn,.button,.login-card button,.utility-card button,.campaign-submit{font-size:14px!important;line-height:1.3;min-height:46px}

/* Public pages */
.hero h1{font-size:clamp(44px,5vw,68px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
.hero-copy>p{font-size:18px!important;line-height:1.72!important}
.hero-trust,.trust-list{font-size:13px!important;line-height:1.5}
.hero-trust span b{font-size:11px}
.console-head strong{font-size:13px}.console-head small{font-size:9.5px}
.domain-overview small,.console-metrics small,.console-records code{font-size:10.5px!important}
.domain-overview strong{font-size:17px}.domain-overview span,.console-metrics span,.console-records span,.console-records b{font-size:11.5px!important}
.console-metrics strong{font-size:13.5px}.console-title strong{font-size:12px}.console-title span{font-size:10px}
.console-seal span{font-size:9px}.console-seal strong{font-size:17px}.console-seal small{font-size:9px}
.trust-bar strong{font-size:15px!important;line-height:1.35}.trust-bar small{font-size:12px!important;line-height:1.45}
.section-heading h2,.institutional-copy h2{font-size:clamp(32px,4vw,46px)!important;line-height:1.12!important;letter-spacing:-.032em!important}
.section-heading p,.institutional-copy p{font-size:16px!important;line-height:1.72!important}
.page-hero h1{font-size:clamp(36px,4.5vw,56px)!important;line-height:1.06!important;letter-spacing:-.035em!important}
.page-hero p{font-size:17px!important;line-height:1.72!important}
.service-card h3,.package-card h3,.post-body h3,.contact-grid h3,.domain-policy h3,.service-standard h3{font-size:20px!important;line-height:1.3}
.service-card p,.package-card p,.post-body p,.contact-grid p,.domain-policy p,.service-standard p,.principle-grid p,.governance-grid p{font-size:15px!important;line-height:1.7!important}
.service-card a,.post-card a,.contact-grid a,.package-card a{font-size:13.5px!important}
.package-card small,.post-body small,.portfolio-card small,.popular{font-size:11.5px!important}
.price{font-size:24px!important}.package-card li{font-size:14px!important;line-height:1.6}
.faq-list summary{font-size:16px!important;line-height:1.45}.faq-list details p{font-size:15px!important}
.cta h2{font-size:clamp(30px,4vw,44px)!important}.cta p{font-size:16px!important;line-height:1.7}
.info-panel h3,.domain-box h2,.tracking-result h2{font-size:23px!important;line-height:1.25}
.info-panel p,.info-panel li,.domain-box p,.domain-box li,.tracking-result p,.tracking-result dd,.article p,.article li{font-size:15px!important;line-height:1.75}
.article h1{font-size:clamp(36px,4.8vw,58px)!important}.article h2{font-size:30px!important}.article h3{font-size:23px!important}
.professional-footer h3{font-size:14px!important}.professional-footer p,.professional-footer a,.footer-bottom{font-size:13px!important;line-height:1.65}

/* Forms: all public, portal and administrator */
.form-card>label,.admin-form>label,.portal-payment-form>label,.login-card form>label,.campaign-form label,
.form-card label>span,.admin-form label>span{font-size:var(--rp-label-size)!important;line-height:1.45!important}
.form-card input,.form-card select,.form-card textarea,
.admin-form input:not([type=checkbox]):not([type=radio]),.admin-form select,.admin-form textarea,
.portal-payment-form input,.portal-payment-form select,.portal-payment-form textarea,
.login-card input,.domain-search input,.filter-bar input,.filter-bar select,
.campaign-form input,.campaign-form select,.campaign-form textarea{
  font-size:var(--rp-control-size)!important;
  line-height:1.5!important;
  min-height:54px;
  padding:14px 16px;
}
.form-card textarea,.admin-form textarea,.portal-payment-form textarea,.campaign-form textarea{min-height:132px}
.form-card small,.admin-form label small,.campaign-form label>small,.portal-payment-form small,.form-help{
  font-size:var(--rp-help-size)!important;line-height:1.55!important
}
.form-card input::placeholder,.form-card textarea::placeholder,.admin-form input::placeholder,.admin-form textarea::placeholder,.campaign-form input::placeholder,.campaign-form textarea::placeholder{font-size:15px}
.consent,.check,.campaign-declaration{font-size:14px!important;line-height:1.55!important}
.wizard-progress span{font-size:12.5px!important;line-height:1.4}
.estimate-box,.order-review{font-size:14px;line-height:1.65}
.inline-error,.site-alert,.alert,.campaign-alert{font-size:13.5px!important;line-height:1.55}

/* Portal */
.portal-main{font-size:16px!important;line-height:1.65!important}
.portal-login h1{font-size:clamp(36px,4.8vw,54px)!important;line-height:1.05!important}
.portal-login p,.portal-welcome p,.portal-panel p,.portal-panel li,.portal-document-list p{font-size:15px!important;line-height:1.7}
.portal-feature-list span,.portal-top a,.portal-top-actions{font-size:13.5px!important}
.portal-panel-head h2{font-size:22px!important}.portal-panel-head p{font-size:13.5px!important}
.portal-stat-grid strong{font-size:26px!important}.portal-stat-grid span{font-size:13px!important}
.status,.proof-status{font-size:11.5px!important;line-height:1.35}

/* Administrator */
.admin-main{font-size:15px!important;line-height:1.62!important}
.admin-brand strong{font-size:18px!important}.admin-brand small{font-size:9.5px!important}
.sidebar nav a,.sidebar-bottom a{font-size:13.5px!important;line-height:1.35;padding:12px 13px}
.sidebar nav a b{font-size:10px!important}
.admin-top strong{font-size:13.5px!important}.admin-top small{font-size:11.5px!important}
.page-title h1{font-size:34px!important;line-height:1.1!important}.page-title p{font-size:14px!important;line-height:1.55}
.stat-grid strong{font-size:32px!important}.stat-grid span{font-size:13px!important}
.panel-head h2{font-size:19px!important;line-height:1.3}.panel-head p{font-size:12.5px!important;line-height:1.5}.panel-head a{font-size:12.5px!important}
.table-wrap th{font-size:11.5px!important;line-height:1.35!important;letter-spacing:.065em!important}
.table-wrap td{font-size:13.5px!important;line-height:1.55!important}.table-wrap td small{font-size:11.5px!important;line-height:1.45}
.actions a,.actions button{font-size:12.5px!important;line-height:1.4}
.order-head strong{font-size:14px!important}.order-head small{font-size:11.5px!important}.order-card h2{font-size:21px!important}
.order-card dl{font-size:13px!important;line-height:1.55!important;grid-template-columns:115px 1fr}
.settings-form h3,.admin-form h3{font-size:17px!important;line-height:1.35}
.quick-panel>a{font-size:13px!important}.danger-button{font-size:12.5px!important}
.project-summary-grid span{font-size:13px!important}.project-summary-grid strong{font-size:19px!important}
.admin-timeline small,.document-list small,.payment-proof-info small{font-size:12px!important}
.admin-timeline p,.document-list p,.payment-proof-info p{font-size:14px!important;line-height:1.6}
.login-card h1{font-size:32px!important}.login-card>p{font-size:14.5px!important;line-height:1.65}.back{font-size:13px!important}

/* Free domain program */
.campaign-nav a{font-size:13px!important}.campaign-label{font-size:11px!important}
.campaign-hero h1{font-size:clamp(42px,4.9vw,66px)!important;line-height:1.02!important}.campaign-hero-copy>p{font-size:17px!important;line-height:1.72!important}
.campaign-domain-preview span{font-size:10.5px!important}.campaign-domain-preview strong{font-size:15.5px!important}
.campaign-prize-top small{font-size:10px!important}.campaign-prize-top strong{font-size:20px!important}
.campaign-prize-card h2{font-size:28px!important}.campaign-prize-card>p{font-size:14.5px!important;line-height:1.65}
.campaign-benefit-list strong{font-size:13.5px!important}.campaign-benefit-list small{font-size:12px!important}.campaign-prize-foot{font-size:12px!important}
.campaign-trust-grid strong{font-size:18px!important}.campaign-trust-grid span{font-size:12px!important}
.campaign-section-heading h2{font-size:clamp(32px,3.8vw,46px)!important}.campaign-section-heading p{font-size:16px!important;line-height:1.7}
.campaign-steps h3{font-size:18px!important}.campaign-steps p{font-size:14px!important;line-height:1.65}.campaign-steps article>span{font-size:11px!important}
.campaign-policy-box span{font-size:10.5px!important}.campaign-policy-box strong{font-size:14px!important}.campaign-policy-box p{font-size:13.5px!important}
.campaign-rank-head{font-size:10.5px!important}.campaign-rank-school strong{font-size:14px!important}.campaign-rank-school small{font-size:11px!important}
.campaign-rank-score strong{font-size:21px!important}.campaign-rank-score small{font-size:11px!important}.campaign-rank-row code{font-size:12px!important}
.campaign-application-info h2{font-size:40px!important}.campaign-application-info>p{font-size:15px!important;line-height:1.7}
.campaign-requirements h3{font-size:16px!important}.campaign-requirements strong{font-size:13px!important}.campaign-requirements small{font-size:11.5px!important}
.campaign-security-note strong{font-size:13px!important}.campaign-security-note p{font-size:12px!important;line-height:1.6}
.campaign-form legend{font-size:16px!important}.campaign-form legend span{font-size:10px!important}
.campaign-domain-input span{font-size:13px!important}.campaign-submit{font-size:14px!important}
.campaign-success strong{font-size:14px!important}.campaign-success p{font-size:13px!important}.campaign-success code{font-size:12px!important}.campaign-success small{font-size:11.5px!important}
.campaign-footer strong{font-size:16px!important}.campaign-footer p,.campaign-footer-links a,.campaign-footer-credit{font-size:12.5px!important;line-height:1.6}

/* Domain checker */
.checker-copy h1{font-size:clamp(38px,4.7vw,62px)!important}.checker-copy p,.checker-disclaimer p{font-size:15.5px!important;line-height:1.72}
.domain-result h2{font-size:28px!important}.domain-result p,.domain-result dd{font-size:14.5px!important;line-height:1.6}.domain-result dt{font-size:11.5px!important}.domain-result>a{font-size:14px!important}

/* Invoice, utility and school landing */
.utility-card h1{font-size:36px!important}.utility-card p{font-size:16px!important}
.invoice{font-size:15px!important;line-height:1.6}.invoice .brand h1{font-size:30px!important}.invoice .brand p,.invoice .meta p,.invoice .box p,.invoice .payment p{font-size:14px!important}.invoice .box small,.invoice .items th{font-size:12px!important}.invoice .items td{font-size:14px!important}.invoice .note{font-size:13px!important}.invoice .footer{font-size:12px!important}.toolbar a,.toolbar button{font-size:13.5px!important}
.school-label{font-size:13px!important}.school-hero h1{font-size:clamp(42px,6vw,78px)!important}.school-hero p{font-size:18px!important;line-height:1.7}.school-domain{font-size:15px!important}.school-card span{font-size:14px!important}.school-card strong{font-size:30px!important}.school-about h2{font-size:30px!important}.school-about p,.school-footer{font-size:15px!important;line-height:1.7}

/* Install checker */
.utility-page .card,.wrap .card{font-size:15px;line-height:1.6}.wrap .card h1{font-size:32px}.wrap .version{font-size:12px}.wrap .row{font-size:14px}.wrap .summary{font-size:14px}

@media(max-width:1000px){
  .nav-links a{font-size:13px!important}
  .hero h1{font-size:clamp(42px,7vw,60px)!important}
  .campaign-application-info h2{font-size:36px!important}
}
@media(max-width:700px){
  body{font-size:16px}
  .brand-copy strong{font-size:17px!important}.brand-copy small{font-size:9.5px!important}
  .hero h1{font-size:38px!important;line-height:1.07!important}.hero-copy>p{font-size:16.5px!important}
  .page-hero h1{font-size:34px!important}.page-hero p{font-size:16px!important}
  .section-heading h2,.institutional-copy h2{font-size:32px!important}.section-heading p,.institutional-copy p{font-size:15.5px!important}
  .service-card h3,.package-card h3,.post-body h3{font-size:19px!important}
  .form-card>label,.admin-form>label,.portal-payment-form>label,.login-card form>label,.campaign-form label{font-size:14px!important}
  .form-card input,.form-card select,.form-card textarea,.admin-form input:not([type=checkbox]):not([type=radio]),.admin-form select,.admin-form textarea,.portal-payment-form input,.portal-payment-form select,.portal-payment-form textarea,.login-card input,.domain-search input,.filter-bar input,.filter-bar select,.campaign-form input,.campaign-form select,.campaign-form textarea{font-size:16px!important}
  .page-title h1{font-size:29px!important}.page-title p{font-size:14px!important}
  .table-wrap th{font-size:11px!important}.table-wrap td{font-size:13px!important}
  .order-card dl{grid-template-columns:1fr;font-size:13px!important}.order-card dt{margin-top:7px}
  .campaign-hero h1{font-size:38px!important}.campaign-hero-copy>p{font-size:16px!important}
  .campaign-section-heading h2{font-size:32px!important}.campaign-application-info h2{font-size:32px!important}
  .campaign-trust-grid strong{font-size:15px!important}.campaign-trust-grid span{font-size:12px!important}
  .campaign-rank-school strong{font-size:13.5px!important}.campaign-rank-row code{font-size:11.5px!important}
  .professional-footer p,.professional-footer a,.footer-bottom{font-size:13px!important}
  .utility-card h1{font-size:32px!important}
  .school-hero h1{font-size:40px!important}.school-hero p{font-size:16.5px!important}
}
@media print{
  body,.invoice{font-size:11pt!important;line-height:1.45!important}
  .invoice .brand h1{font-size:22pt!important}.invoice .items th,.invoice .box small{font-size:9pt!important}
}
