:root{--up-gold:#d4af36;--up-dark:#161616;--up-text:#54595f;--up-bg:#fff}
html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{margin:0;color:var(--up-text);background:var(--up-bg);font-family:Arial,sans-serif}.pesantrenpro-container{width:min(1180px,calc(100% - 40px));margin:auto}.pesantrenpro-main{min-height:55vh}.pesantrenpro-header{background:#fff;border-bottom:1px solid #eee;position:relative;z-index:99}.pesantrenpro-header-inner{min-height:76px;display:flex;align-items:center;gap:28px}.pesantrenpro-brand{display:flex;align-items:center;text-decoration:none}.pesantrenpro-brand img,.pesantrenpro-brand .custom-logo{max-height:48px;width:auto}.pesantrenpro-brand-text{font-size:28px;font-weight:800;color:var(--up-dark)}.pesantrenpro-nav{margin-left:auto}.pesantrenpro-nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}.pesantrenpro-nav a{color:var(--up-dark);text-decoration:none;font-weight:600}.pesantrenpro-header-cta,.pesantrenpro-btn{display:inline-block;background:var(--up-gold);color:#111;padding:13px 20px;text-decoration:none;border-radius:4px;font-weight:700}.pesantrenpro-menu-toggle{display:none;margin-left:auto;border:0;background:transparent}.pesantrenpro-menu-toggle span{display:block;width:26px;height:2px;background:#111;margin:5px}.pesantrenpro-footer{background:#151515;color:#d7d7d7;padding:55px 0 0}.pesantrenpro-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.pesantrenpro-footer h4,.pesantrenpro-footer-brand{color:#fff}.pesantrenpro-footer-brand{font-size:30px;font-weight:800}.pesantrenpro-footer ul{list-style:none;padding:0}.pesantrenpro-footer a{color:#d7d7d7;text-decoration:none}.pesantrenpro-copyright{text-align:center;border-top:1px solid #2c2c2c;margin-top:36px;padding:20px}.pesantrenpro-content{padding:60px 0}.pesantrenpro-404{text-align:center}.elementor-page .pesantrenpro-main{overflow:hidden}@media(max-width:900px){.pesantrenpro-menu-toggle{display:block}.pesantrenpro-nav{display:none}.pesantrenpro-header-cta{display:none}.pesantrenpro-footer-grid{grid-template-columns:1fr}.pesantrenpro-header-inner{min-height:66px}}


/* Pesantren PRO 1.0.2: imported Elementor Header/Footer icon safety.
   These widget IDs come from the bundled kit and intentionally stay scoped so
   normal Elementor page icons remain fully editable. */
.elementor-element-2bf3fb79 .elementor-icon-list-icon,
.elementor-element-43316151 .elementor-icon-list-icon{
  width:16px!important;min-width:16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important
}
.elementor-element-2bf3fb79 .elementor-icon-list-icon i,
.elementor-element-2bf3fb79 .elementor-icon-list-icon svg,
.elementor-element-43316151 .elementor-icon-list-icon i,
.elementor-element-43316151 .elementor-icon-list-icon svg{
  font-size:13px!important;width:13px!important;height:13px!important;max-width:13px!important;max-height:13px!important;line-height:1!important;display:inline-block!important
}
.elementor-element-2da03570 .elementor-icon-list-icon{
  width:20px!important;min-width:20px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important
}
.elementor-element-2da03570 .elementor-icon-list-icon i,
.elementor-element-2da03570 .elementor-icon-list-icon svg{
  font-size:16px!important;width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;line-height:1!important;display:inline-block!important
}
.elementor-element-eba3c18 .elementor-icon-list-icon,
.elementor-element-716b3ecd .elementor-icon-list-icon{
  width:14px!important;min-width:14px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important
}
.elementor-element-eba3c18 .elementor-icon-list-icon i,
.elementor-element-eba3c18 .elementor-icon-list-icon svg,
.elementor-element-716b3ecd .elementor-icon-list-icon i,
.elementor-element-716b3ecd .elementor-icon-list-icon svg{
  font-size:11px!important;width:11px!important;height:11px!important;max-width:11px!important;max-height:11px!important;line-height:1!important;display:inline-block!important
}
.elementor-element-1265bf17 .elementor-social-icon{
  width:34px!important;height:34px!important;font-size:16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important
}
.elementor-element-1265bf17 .elementor-social-icon i,
.elementor-element-1265bf17 .elementor-social-icon svg{
  font-size:16px!important;width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;line-height:1!important
}
/* Base FA SVG safeguard in case another plugin converts icons after Elementor. */
.elementor-icon-list-icon .svg-inline--fa,
.elementor-social-icon .svg-inline--fa{height:1em!important;width:1em!important;max-height:1em!important;max-width:1em!important}

/* Pesantren PRO shell logo safety: changing logo must not stretch/collapse Header/Footer. */
.elementor-element-5bcc2622 img,
.elementor-element-623aad5e img{width:auto!important;max-width:100%!important;object-fit:contain!important}
.elementor-element-5bcc2622 img{max-height:72px!important}
.elementor-element-623aad5e img{max-height:86px!important}
@media(max-width:767px){.elementor-element-5bcc2622 img{max-height:56px!important}.elementor-element-623aad5e img{max-height:68px!important}}

/* Pesantren PRO native Header/Footer shell */
.pesantrenpro-header{background:var(--pp-header-bg,#0f743f)!important;border:0!important;box-shadow:0 4px 18px rgba(0,0,0,.14);position:relative;z-index:999}
.pesantrenpro-header-inner{min-height:86px;display:flex;align-items:center;gap:34px}
.pesantrenpro-header-logo,.pesantrenpro-brand img{display:block;max-height:58px!important;max-width:250px;width:auto!important;height:auto!important;object-fit:contain}
.pesantrenpro-brand-text{color:var(--pp-header-text,#fff)!important}
.pesantrenpro-nav{margin-left:auto}
.pesantrenpro-nav ul,.pesantrenpro-nav .menu{display:flex;align-items:center;gap:34px;list-style:none;margin:0;padding:0}
.pesantrenpro-nav li{margin:0;padding:0}
.pesantrenpro-nav a{color:var(--pp-header-text,#fff)!important;text-decoration:none;font-weight:700;font-size:15px;line-height:1.2;transition:opacity .2s ease}
.pesantrenpro-nav a:hover,.pesantrenpro-nav .current-menu-item>a{opacity:.78}
.pesantrenpro-header-cta{background:var(--pp-cta-bg,#08c83a)!important;color:#fff!important;border-radius:999px!important;padding:13px 30px!important;min-width:130px;text-align:center;font-weight:800;box-shadow:none}
.pesantrenpro-menu-toggle span{background:var(--pp-header-text,#fff)!important}

.pesantrenpro-footer{background:var(--pp-footer-bg,#07172d)!important;color:var(--pp-footer-text,#fff)!important;padding:64px 0 0!important}
.pesantrenpro-footer-grid{display:grid!important;grid-template-columns:1.45fr 1.1fr .9fr .9fr!important;gap:44px!important;align-items:start}
.pesantrenpro-footer h4{color:var(--pp-footer-text,#fff)!important;font-size:17px;margin:0 0 20px;font-weight:800}
.pesantrenpro-footer p,.pesantrenpro-footer li,.pesantrenpro-footer a{color:var(--pp-footer-text,#fff)!important;opacity:.9;font-size:14px;line-height:1.8;text-decoration:none}
.pesantrenpro-footer-logo{display:inline-flex;margin-bottom:16px}
.pesantrenpro-footer-logo img{display:block;max-height:72px;max-width:240px;width:auto;height:auto;object-fit:contain}
.pesantrenpro-footer ul{list-style:none;margin:0;padding:0}
.pesantrenpro-footer li+li{margin-top:7px}
.pesantrenpro-footer-about p{max-width:330px;margin:0}
.pesantrenpro-copyright{color:var(--pp-footer-text,#fff)!important;text-align:center;border-top:1px solid rgba(255,255,255,.14)!important;margin-top:48px!important;padding:22px 20px!important;font-size:13px;opacity:.88}

@media(max-width:980px){
 .pesantrenpro-header-inner{min-height:72px;gap:14px}.pesantrenpro-header-logo,.pesantrenpro-brand img{max-height:48px!important;max-width:205px}
 .pesantrenpro-menu-toggle{display:block;margin-left:auto;cursor:pointer}.pesantrenpro-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--pp-header-bg,#0f743f);padding:18px 20px;box-shadow:0 12px 25px rgba(0,0,0,.14)}
 .pesantrenpro-nav.is-open{display:block}.pesantrenpro-nav ul,.pesantrenpro-nav .menu{display:flex;flex-direction:column;align-items:flex-start;gap:0}.pesantrenpro-nav li{width:100%}.pesantrenpro-nav a{display:block;padding:12px 0;width:100%}
 .pesantrenpro-header-cta{display:none!important}.pesantrenpro-footer-grid{grid-template-columns:1fr 1fr!important;gap:34px!important}
}
@media(max-width:640px){.pesantrenpro-footer-grid{grid-template-columns:1fr!important}.pesantrenpro-container{width:min(100% - 28px,1180px)}.pesantrenpro-header-logo,.pesantrenpro-brand img{max-width:175px}}

/* Pesantren PRO premium native components */
.pesantrenpro-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}.pesantrenpro-post-grid.pesantrenpro-cols-1{grid-template-columns:1fr}.pesantrenpro-post-grid.pesantrenpro-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pesantrenpro-post-card{background:#fff;border:1px solid #e8edf2;border-radius:var(--pp-radius,8px);overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.06)}.pesantrenpro-post-thumb{display:block;aspect-ratio:16/10;overflow:hidden}.pesantrenpro-post-thumb img{width:100%;height:100%;object-fit:cover}.pesantrenpro-post-card-body{padding:22px}.pesantrenpro-post-card h2{font-size:24px;margin:10px 0}.pesantrenpro-post-card h2 a{text-decoration:none;color:inherit}.pesantrenpro-post-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:#7a8493}.pesantrenpro-post-meta span+span:before{content:"•";margin-right:10px}.pesantrenpro-read-more{font-weight:700;text-decoration:none}.pesantrenpro-single-wrap{max-width:900px}.pesantrenpro-single-header{margin-bottom:28px}.pesantrenpro-single-featured{margin:0 0 32px;border-radius:var(--pp-radius,8px);overflow:hidden}.pesantrenpro-single-featured img{width:100%;height:auto;display:block}.pesantrenpro-entry-content{font-size:1.05em}.pesantrenpro-404-code{font-size:120px;line-height:.9;font-weight:900;color:var(--pp-primary,#0f743f);opacity:.12}.pesantrenpro-social-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.pesantrenpro-social-link{display:inline-flex!important;align-items:center;justify-content:center;padding:6px 9px;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:11px!important}.pesantrenpro-back-to-top{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pp-primary,#0f743f);color:#fff;font-size:22px;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.18);z-index:9999;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.pesantrenpro-back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.pesantrenpro-header-inner.is-full-width{max-width:none;width:100%}.pesantrenpro-header.is-sticky{position:sticky;top:0}@media(max-width:900px){.pesantrenpro-post-grid,.pesantrenpro-post-grid.pesantrenpro-cols-2,.pesantrenpro-post-grid.pesantrenpro-cols-3{grid-template-columns:1fr 1fr}}@media(max-width:640px){.pesantrenpro-post-grid,.pesantrenpro-post-grid.pesantrenpro-cols-2,.pesantrenpro-post-grid.pesantrenpro-cols-3{grid-template-columns:1fr}.pesantrenpro-back-to-top{right:16px;bottom:16px}}

/* Pesantren PRO premium comments */
.pesantrenpro-comments-area,
.elementor-widget-theme-post-comments .comment-respond,
.elementor-widget-post-comments .comment-respond{font-family:var(--pp-body-font);color:var(--pp-body-text)}
.pesantrenpro-comments-card,
.elementor-widget-theme-post-comments .comment-respond,
.elementor-widget-post-comments .comment-respond{
  background:#fff;border:1px solid #e7edf3;border-radius:18px;padding:30px;box-shadow:0 14px 38px rgba(15,23,42,.07);margin:30px 0
}
.pesantrenpro-comment-form-intro{margin-bottom:22px}.pesantrenpro-comment-form-intro h3{font-size:28px;line-height:1.2;margin:5px 0 8px}.pesantrenpro-comment-form-intro p{margin:0;color:#6b7280}
.pesantrenpro-comments-eyebrow{display:inline-block;color:var(--pp-primary,#0f743f);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.pesantrenpro-comments-title{margin:5px 0 0;font-size:26px}.pesantrenpro-comment-list{list-style:none;margin:24px 0 0;padding:0}.pesantrenpro-comment-list .comment{padding:20px 0;border-top:1px solid #eef2f6}.pesantrenpro-comment-list .comment:first-child{border-top:0}.pesantrenpro-comment-list .comment-body{position:relative;padding-left:70px;min-height:54px}.pesantrenpro-comment-list .avatar{position:absolute;left:0;top:0;border-radius:50%}.pesantrenpro-comment-list .comment-author .fn{font-weight:800}.pesantrenpro-comment-list .comment-meta a{font-size:12px;color:#7b8492;text-decoration:none}.pesantrenpro-comment-list .reply a{font-weight:700;font-size:13px}
.pesantrenpro-comments-area label,
.elementor-widget-theme-post-comments .comment-respond label,
.elementor-widget-post-comments .comment-respond label{display:block;margin:0 0 8px;font-weight:700;color:#182335;font-size:14px}
.pesantrenpro-comments-area label span,
.elementor-widget-theme-post-comments .comment-respond label span,
.elementor-widget-post-comments .comment-respond label span{color:#e11d48}
.pesantrenpro-comment-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pesantrenpro-comments-area input[type=text],.pesantrenpro-comments-area input[type=email],.pesantrenpro-comments-area input[type=url],.pesantrenpro-comments-area textarea,
.elementor-widget-theme-post-comments .comment-respond input[type=text],.elementor-widget-theme-post-comments .comment-respond input[type=email],.elementor-widget-theme-post-comments .comment-respond input[type=url],.elementor-widget-theme-post-comments .comment-respond textarea,
.elementor-widget-post-comments .comment-respond input[type=text],.elementor-widget-post-comments .comment-respond input[type=email],.elementor-widget-post-comments .comment-respond input[type=url],.elementor-widget-post-comments .comment-respond textarea{
  width:100%;border:1px solid #dfe6ee;background:#f8fafc;border-radius:12px;padding:13px 15px;color:#111827;outline:none;box-shadow:none;transition:border-color .2s,box-shadow .2s,background .2s
}
.pesantrenpro-comments-area textarea,.elementor-widget-theme-post-comments .comment-respond textarea,.elementor-widget-post-comments .comment-respond textarea{min-height:160px;resize:vertical}
.pesantrenpro-comments-area input:focus,.pesantrenpro-comments-area textarea:focus,
.elementor-widget-theme-post-comments .comment-respond input:focus,.elementor-widget-theme-post-comments .comment-respond textarea:focus,
.elementor-widget-post-comments .comment-respond input:focus,.elementor-widget-post-comments .comment-respond textarea:focus{border-color:var(--pp-primary,#0f743f);background:#fff;box-shadow:0 0 0 4px rgba(15,116,63,.10)}
.pesantrenpro-comments-area .form-submit,.elementor-widget-theme-post-comments .comment-respond .form-submit,.elementor-widget-post-comments .comment-respond .form-submit{margin:18px 0 0}
.pesantrenpro-comment-submit,.elementor-widget-theme-post-comments .comment-respond input[type=submit],.elementor-widget-post-comments .comment-respond input[type=submit]{
  border:0!important;background:var(--pp-button-bg,#0f743f)!important;color:var(--pp-button-text,#fff)!important;border-radius:10px!important;padding:13px 24px!important;font-weight:800!important;cursor:pointer;box-shadow:0 8px 18px rgba(15,116,63,.16);transition:transform .2s,background .2s
}
.pesantrenpro-comment-submit:hover,.elementor-widget-theme-post-comments .comment-respond input[type=submit]:hover,.elementor-widget-post-comments .comment-respond input[type=submit]:hover{background:var(--pp-button-hover-bg,#0a5e34)!important;transform:translateY(-1px)}
.pesantrenpro-comments-area .logged-in-as,.elementor-widget-theme-post-comments .comment-respond .logged-in-as,.elementor-widget-post-comments .comment-respond .logged-in-as{background:#f0f8f3;border:1px solid #d9eee1;border-radius:10px;padding:11px 14px;color:#52606d;font-size:14px}.pesantrenpro-comments-area .logged-in-as a,.elementor-widget-theme-post-comments .comment-respond .logged-in-as a,.elementor-widget-post-comments .comment-respond .logged-in-as a{font-weight:700;text-decoration:none}
.elementor-widget-theme-post-comments .comment-respond .comment-reply-title,.elementor-widget-post-comments .comment-respond .comment-reply-title{font-family:var(--pp-heading-font);font-size:28px!important;line-height:1.2;margin:0 0 18px!important;color:var(--pp-heading)!important}
@media(max-width:680px){.pesantrenpro-comments-card,.elementor-widget-theme-post-comments .comment-respond,.elementor-widget-post-comments .comment-respond{padding:20px;border-radius:14px}.pesantrenpro-comment-fields-grid{grid-template-columns:1fr}.pesantrenpro-comment-form-intro h3,.elementor-widget-theme-post-comments .comment-respond .comment-reply-title,.elementor-widget-post-comments .comment-respond .comment-reply-title{font-size:23px!important}}
/* Hide the old standalone Elementor comment heading/divider from the bundled Single template;
   the premium comments card now owns its own heading. */
.single-post .elementor-element-1c800b6e,
.single-post .elementor-element-72e5d01f{display:none!important}

/* =========================================================
 * Pesantren PRO — Premium Comment Form v2
 * Covers native comments.php and Elementor Pro Post Comments.
 * ======================================================= */
.single-post .elementor-element-1c800b6e,
.single-post .elementor-element-72e5d01f,
.single-post .elementor-widget-heading:has(.elementor-heading-title:is(:where(*))) { }

/* Legacy heading fallback when an older imported template is still cached. */
.single-post .elementor-element-1c800b6e,
.single-post .elementor-element-72e5d01f { display:none!important; }

/* Elementor comments wrapper */
.single-post .elementor-widget-theme-post-comments,
.single-post .elementor-widget-post-comments,
.single-post .elementor-element-461571de {
    width:100%!important;
}

.single-post .elementor-widget-theme-post-comments .elementor-widget-container,
.single-post .elementor-widget-post-comments .elementor-widget-container,
.single-post .elementor-element-461571de > .elementor-widget-container {
    width:100%!important;
}

/* Card */
.single-post .elementor-widget-theme-post-comments .comment-respond,
.single-post .elementor-widget-post-comments .comment-respond,
.single-post .elementor-element-461571de .comment-respond,
.pesantrenpro-comment-form-card {
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:32px 0 0!important;
    padding:34px!important;
    background:#fff!important;
    border:1px solid #e6ece8!important;
    border-radius:18px!important;
    box-shadow:0 16px 40px rgba(15,35,24,.07)!important;
    box-sizing:border-box!important;
}

/* Reply title */
.single-post .comment-respond .comment-reply-title,
.single-post .comment-respond #reply-title,
.pesantrenpro-comment-form-intro h3 {
    margin:0 0 10px!important;
    padding:0!important;
    font-family:var(--pp-heading-font,inherit)!important;
    font-size:30px!important;
    line-height:1.2!important;
    font-weight:800!important;
    color:var(--pp-heading,#0b1f39)!important;
    border:0!important;
}

/* Small intro line below title. */
.single-post .comment-respond .comment-reply-title::after {
    content:"Bagikan tanggapan Anda dengan sopan dan relevan terhadap artikel.";
    display:block;
    margin-top:10px;
    font-family:var(--pp-body-font,inherit);
    font-size:15px;
    line-height:1.65;
    font-weight:400;
    color:#6b7280;
}

/* Force every core comment-form row back to a vertical block layout. */
.single-post .comment-respond form.comment-form,
.single-post .comment-respond .comment-form {
    display:block!important;
    width:100%!important;
    margin:0!important;
}
.single-post .comment-respond .comment-form > p,
.single-post .comment-respond p.comment-form-comment,
.single-post .comment-respond p.comment-form-author,
.single-post .comment-respond p.comment-form-email,
.single-post .comment-respond p.comment-form-url,
.single-post .comment-respond p.logged-in-as,
.single-post .comment-respond p.form-submit {
    display:block!important;
    width:100%!important;
    max-width:none!important;
    float:none!important;
    clear:both!important;
    margin:20px 0 0!important;
    padding:0!important;
    box-sizing:border-box!important;
}

.single-post .comment-respond .logged-in-as {
    padding:13px 15px!important;
    border:1px solid #dcece2!important;
    border-radius:11px!important;
    background:#f3faf5!important;
    color:#5f6b66!important;
    font-size:14px!important;
    line-height:1.65!important;
}
.single-post .comment-respond .logged-in-as a {
    color:var(--pp-primary,#0f743f)!important;
    font-weight:700!important;
    text-decoration:none!important;
}

/* Label above field, never beside it. */
.single-post .comment-respond label {
    display:block!important;
    width:auto!important;
    max-width:none!important;
    float:none!important;
    margin:0 0 9px!important;
    padding:0!important;
    color:#1f2937!important;
    font-family:var(--pp-body-font,inherit)!important;
    font-size:14px!important;
    line-height:1.4!important;
    font-weight:700!important;
}

/* Input + textarea */
.single-post .comment-respond input[type="text"],
.single-post .comment-respond input[type="email"],
.single-post .comment-respond input[type="url"],
.single-post .comment-respond textarea {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    float:none!important;
    margin:0!important;
    padding:14px 16px!important;
    border:1px solid #dbe4df!important;
    border-radius:12px!important;
    background:#f8fbf9!important;
    color:#17211b!important;
    font-family:var(--pp-body-font,inherit)!important;
    font-size:15px!important;
    line-height:1.6!important;
    box-shadow:none!important;
    outline:none!important;
    box-sizing:border-box!important;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important;
}
.single-post .comment-respond textarea {
    min-height:190px!important;
    resize:vertical!important;
}
.single-post .comment-respond input:focus,
.single-post .comment-respond textarea:focus {
    border-color:var(--pp-primary,#0f743f)!important;
    background:#fff!important;
    box-shadow:0 0 0 4px rgba(15,116,63,.10)!important;
}

/* Submit button */
.single-post .comment-respond .form-submit {
    margin-top:22px!important;
}
.single-post .comment-respond input[type="submit"],
.single-post .comment-respond button[type="submit"],
.pesantrenpro-comment-submit {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:170px!important;
    min-height:50px!important;
    margin:0!important;
    padding:13px 24px!important;
    border:0!important;
    border-radius:12px!important;
    background:var(--pp-button-bg,var(--pp-primary,#0f743f))!important;
    color:var(--pp-button-text,#fff)!important;
    font-family:var(--pp-body-font,inherit)!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1!important;
    text-decoration:none!important;
    cursor:pointer!important;
    box-shadow:0 10px 22px rgba(15,116,63,.16)!important;
    transition:transform .2s ease,background .2s ease,box-shadow .2s ease!important;
}
.single-post .comment-respond input[type="submit"]:hover,
.single-post .comment-respond button[type="submit"]:hover,
.pesantrenpro-comment-submit:hover {
    background:var(--pp-button-hover-bg,#0a5e34)!important;
    color:#fff!important;
    transform:translateY(-1px)!important;
    box-shadow:0 13px 26px rgba(15,116,63,.22)!important;
}

/* Comment list card too */
.single-post .comments-area .comment-list,
.pesantrenpro-comments-list-card {
    width:100%;
    box-sizing:border-box;
}

@media (max-width:680px) {
    .single-post .elementor-widget-theme-post-comments .comment-respond,
    .single-post .elementor-widget-post-comments .comment-respond,
    .single-post .elementor-element-461571de .comment-respond,
    .pesantrenpro-comment-form-card {
        padding:22px!important;
        border-radius:14px!important;
    }
    .single-post .comment-respond .comment-reply-title,
    .single-post .comment-respond #reply-title,
    .pesantrenpro-comment-form-intro h3 { font-size:24px!important; }
    .single-post .comment-respond textarea { min-height:160px!important; }
    .single-post .comment-respond input[type="submit"],
    .single-post .comment-respond button[type="submit"],
    .pesantrenpro-comment-submit { width:100%!important; }
}


/* =========================================================
 * Pesantren PRO — Comment Form v3 (cache-safe / Elementor-safe)
 * ======================================================= */
body .pesantrenpro-comments-area,
body .elementor-widget-post-comments .pesantrenpro-comments-area,
body .elementor-widget-theme-post-comments .pesantrenpro-comments-area {
    width:100%!important;
    max-width:none!important;
}
body .pesantrenpro-comments-area .pesantrenpro-comment-form-card,
body .elementor-widget-post-comments .pesantrenpro-comment-form-card,
body .elementor-widget-theme-post-comments .pesantrenpro-comment-form-card {
    width:100%!important;
    max-width:none!important;
    margin:28px 0!important;
    padding:34px!important;
    background:#fff!important;
    border:1px solid #e5ece8!important;
    border-radius:18px!important;
    box-shadow:0 14px 38px rgba(15,35,24,.08)!important;
    box-sizing:border-box!important;
}
body .pesantrenpro-comments-area .pesantrenpro-comment-form-intro {
    margin:0 0 24px!important;
}
body .pesantrenpro-comments-area .pesantrenpro-comments-eyebrow {
    display:inline-flex!important;
    margin:0 0 8px!important;
    color:var(--pp-primary,#0f743f)!important;
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:800!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
}
body .pesantrenpro-comments-area .pesantrenpro-comment-form-intro h3 {
    margin:0 0 10px!important;
    padding:0!important;
    color:var(--pp-heading,#0b1f39)!important;
    font-size:30px!important;
    line-height:1.25!important;
    font-weight:800!important;
}
body .pesantrenpro-comments-area .pesantrenpro-comment-form-intro p {
    margin:0!important;
    color:#69756f!important;
    font-size:15px!important;
    line-height:1.7!important;
}
body .pesantrenpro-comments-area .comment-respond,
body .pesantrenpro-comments-area form.comment-form {
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}
body .pesantrenpro-comments-area .comment-respond > .comment-reply-title {
    display:none!important;
}
body .pesantrenpro-comments-area .comment-form > p,
body .pesantrenpro-comments-area p.comment-form-comment,
body .pesantrenpro-comments-area p.comment-form-author,
body .pesantrenpro-comments-area p.comment-form-email,
body .pesantrenpro-comments-area p.comment-form-url,
body .pesantrenpro-comments-area p.logged-in-as,
body .pesantrenpro-comments-area p.form-submit {
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:none!important;
    margin:18px 0 0!important;
    padding:0!important;
    box-sizing:border-box!important;
}
body .pesantrenpro-comments-area .logged-in-as {
    padding:13px 15px!important;
    background:#f3faf5!important;
    border:1px solid #d9ece0!important;
    border-radius:11px!important;
    color:#5d6962!important;
    font-size:14px!important;
    line-height:1.65!important;
}
body .pesantrenpro-comments-area .logged-in-as a {
    color:var(--pp-primary,#0f743f)!important;
    font-weight:700!important;
    text-decoration:none!important;
}
body .pesantrenpro-comments-area label {
    display:block!important;
    float:none!important;
    width:100%!important;
    margin:0 0 8px!important;
    padding:0!important;
    color:#1f2937!important;
    font-size:14px!important;
    line-height:1.4!important;
    font-weight:700!important;
}
body .pesantrenpro-comments-area textarea,
body .pesantrenpro-comments-area input[type="text"],
body .pesantrenpro-comments-area input[type="email"],
body .pesantrenpro-comments-area input[type="url"] {
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:14px 16px!important;
    background:#f8fbf9!important;
    border:1px solid #d9e4de!important;
    border-radius:12px!important;
    color:#17211b!important;
    font-size:15px!important;
    line-height:1.6!important;
    box-sizing:border-box!important;
    box-shadow:none!important;
    outline:none!important;
}
body .pesantrenpro-comments-area textarea {
    min-height:190px!important;
    resize:vertical!important;
}
body .pesantrenpro-comments-area textarea:focus,
body .pesantrenpro-comments-area input[type="text"]:focus,
body .pesantrenpro-comments-area input[type="email"]:focus,
body .pesantrenpro-comments-area input[type="url"]:focus {
    background:#fff!important;
    border-color:var(--pp-primary,#0f743f)!important;
    box-shadow:0 0 0 4px rgba(15,116,63,.10)!important;
}
body .pesantrenpro-comments-area .form-submit { margin-top:22px!important; }
body .pesantrenpro-comments-area input[type="submit"],
body .pesantrenpro-comments-area button[type="submit"],
body .pesantrenpro-comments-area .pesantrenpro-comment-submit {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:180px!important;
    min-height:50px!important;
    margin:0!important;
    padding:13px 24px!important;
    background:var(--pp-button-bg,var(--pp-primary,#0f743f))!important;
    border:0!important;
    border-radius:12px!important;
    color:#fff!important;
    font-size:15px!important;
    line-height:1!important;
    font-weight:800!important;
    cursor:pointer!important;
    box-shadow:0 10px 22px rgba(15,116,63,.17)!important;
}
body .pesantrenpro-comments-area input[type="submit"]:hover,
body .pesantrenpro-comments-area button[type="submit"]:hover {
    background:var(--pp-button-hover-bg,#0a5e34)!important;
    transform:translateY(-1px)!important;
}
@media(max-width:680px){
    body .pesantrenpro-comments-area .pesantrenpro-comment-form-card{padding:22px!important;border-radius:14px!important}
    body .pesantrenpro-comments-area .pesantrenpro-comment-form-intro h3{font-size:24px!important}
    body .pesantrenpro-comments-area textarea{min-height:160px!important}
    body .pesantrenpro-comments-area input[type="submit"],body .pesantrenpro-comments-area button[type="submit"]{width:100%!important}
}


/* =========================================================
 * Pesantren PRO — Comment Form v4
 * Logged-in line is plain text; remove nested form card.
 * ======================================================= */
body.single-post .pesantrenpro-comments-area .comment-respond,
body.single-post .pesantrenpro-comments-area #respond,
body.single-post .elementor-widget-post-comments .comment-respond,
body.single-post .elementor-widget-theme-post-comments .comment-respond {
    margin:0!important;padding:0!important;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important;
}
body.single-post .pesantrenpro-comments-area .logged-in-as,
body.single-post .elementor-widget-post-comments .logged-in-as,
body.single-post .elementor-widget-theme-post-comments .logged-in-as {
    display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;
    margin:20px 0 22px!important;padding:0!important;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;
    color:#6b7280!important;font-size:14px!important;line-height:1.65!important;
}
body.single-post .pesantrenpro-comments-area .logged-in-as strong{color:#1f2937!important;font-weight:700!important}
body.single-post .pesantrenpro-comments-area .logged-in-as .pp-sep{color:#a3aaa6!important}
