
/* ---- GP Learning Center frame (scoped under .gp-lc) ---- */
.gp-lc{background:#FFF9F0;padding:56px 20px 80px;margin:0;box-sizing:border-box}
.gp-lc *,.gp-lc *::before,.gp-lc *::after{box-sizing:border-box}
.gp-lc-wrap{max-width:740px;margin:0 auto}
.gp-lc .gp-lc-back{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:13.5px;font-weight:700;letter-spacing:.01em;color:#6B6175;text-decoration:none;background:#FFFFFF;border:1px solid #EDE4D8;border-radius:999px;padding:8px 20px 8px 15px;margin:0;box-shadow:0 1px 0 rgba(255,255,255,.7) inset;transition:color .16s ease,border-color .16s ease,box-shadow .16s ease}
.gp-lc .gp-lc-back:hover,.gp-lc .gp-lc-back:focus-visible{color:#3B2544;border-color:#E4A63F;box-shadow:0 8px 20px -12px rgba(228,166,63,.9)}
.gp-lc .gp-lc-back-ico{display:inline-flex;transition:transform .16s ease}
.gp-lc .gp-lc-back-ico svg{width:15px;height:15px;display:block}
.gp-lc .gp-lc-back:hover .gp-lc-back-ico{transform:translateX(-2px)}
@media (prefers-reduced-motion:reduce){.gp-lc .gp-lc-back,.gp-lc .gp-lc-back-ico{transition:none}.gp-lc .gp-lc-back:hover .gp-lc-back-ico{transform:none}}
.gp-lc .gp-lc-cat{display:inline-flex;align-items:center;min-height:36px;font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8A5F13;text-decoration:none;background:linear-gradient(150deg,#FFE3AC,#FFCA6B);border-radius:999px;padding:6px 16px;box-shadow:0 6px 14px -8px rgba(228,166,63,.9);transition:transform .16s ease,box-shadow .16s ease}
.gp-lc .gp-lc-cat:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(228,166,63,1)}
.gp-lc-eyebrow{font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8B7E93;margin:0 0 14px}
.gp-lc .gp-lc-title{font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-weight:900 !important;font-size:clamp(30px,5.2vw,46px) !important;line-height:1.12 !important;letter-spacing:-.02em !important;color:#3B2544 !important;margin:0 0 30px !important;overflow-wrap:break-word}
.gp-lc-body{font-family:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:19px;line-height:1.7;color:#2A2233}
.gp-lc-body p{margin:0 0 22px;font-size:inherit;line-height:inherit}
.gp-lc-body a{color:#3B2544;text-decoration-color:#E7A23C;text-underline-offset:2px}
.gp-lc-body h2{font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-weight:800;font-size:26px;line-height:1.3;color:#3B2544;margin:40px 0 14px}
.gp-lc-body h3{font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-weight:800;font-size:21px;line-height:1.35;color:#3B2544;margin:32px 0 10px}
.gp-lc-body img{max-width:100%;height:auto}
.gp-lc-body ul:not([class]),.gp-lc-body ol:not([class]){margin:0 0 22px;padding-left:26px}
.gp-lc-body li{margin:0 0 8px}
@media (max-width:640px){.gp-lc{padding:36px 16px 56px}.gp-lc-title{margin-bottom:24px}}

/* GP Learning Center CSS (Ryu 2026-07-09)
 * Styles ONLY gp-prefixed classes emitted by the TAYA article renderer.
 * No existing theme/Elementor content carries gp- classes, so this is additive-only.
 * Palette: plum #3B2544 / plum2 #4C3159 / gold #FFCA6B / gold-deep #E7A23C / cream #FFF9F0. */

/* ---- direct answer box ---- */
.gp-direct-answer{background:linear-gradient(158deg,#3B2544,#4C3159);border-radius:15px;padding:26px 28px;margin:24px 0;color:#F6EEFA;position:relative;overflow:hidden}
.gp-direct-answer::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;background:radial-gradient(circle,rgba(255,202,107,.16),transparent 70%);pointer-events:none}
.gp-direct-answer .gp-da-label{font-family:'Montserrat',system-ui,sans-serif;font-size:11.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:#FFCA6B;margin:0 0 9px}
.gp-direct-answer .gp-da-body{margin:0;font-size:20px;line-height:1.5;color:#F6EEFA}
.gp-direct-answer b,.gp-direct-answer strong{color:#fff}
.gp-direct-answer a{color:#FFCA6B}

/* ---- price spans (+ promo strike states for the price-verify/promo layer) ---- */
.gp-price{font-weight:800;font-variant-numeric:tabular-nums;color:#3B2544;white-space:nowrap}
.gp-direct-answer .gp-price{color:#FFCA6B}
.gp-price del,.gp-price--promo .gp-price-was,.gp-price--struck{text-decoration:line-through;color:#7A6B85;font-weight:600}
.gp-price ins,.gp-price--promo .gp-price-now{text-decoration:none;color:#2E7D5B;font-weight:800}

/* ---- factors list (price ladder / what moves the price) ---- */
ul.gp-factors{list-style:none;padding:0;margin:6px 0}
ul.gp-factors>li{padding:16px 0;margin:0;border-top:1px solid #EBE2EE}
ul.gp-factors>li:first-child{border-top:0}
ul.gp-factors>li strong{color:#3B2544;font-weight:800}

/* ---- callout ("who this is NOT for") ---- */
.gp-callout{background:#FFF7E9;border:1px solid #F1DDB4;border-radius:14px;padding:22px 26px;margin:22px 0}
.gp-callout .gp-callout-label{font-family:'Montserrat',system-ui,sans-serif;font-weight:800;color:#9A6608;font-size:13px;letter-spacing:.5px;text-transform:uppercase;margin:0 0 8px}
.gp-callout p{margin:0 0 4px}
ul.gp-callout-list{list-style:none;margin:8px 0 0;padding:0}
ul.gp-callout-list>li{padding:9px 0 9px 26px;margin:0;position:relative;border-top:1px solid #F1DDB4}
ul.gp-callout-list>li:first-child{border-top:0}
ul.gp-callout-list>li::before{content:"";position:absolute;left:2px;top:16px;width:9px;height:9px;border-radius:2px;background:#E7A23C}
ul.gp-callout-list>li strong{color:#7A5208}

/* ---- competitors block (best-of articles) ---- */
.gp-competitors{margin:14px 0}
.gp-competitors .gp-comp-intro{margin:0 0 10px}
.gp-comp{border:1px solid #DBCFE0;border-radius:13px;padding:18px 20px;margin:0 0 14px;background:#FCFAFD}
.gp-comp--us{background:linear-gradient(158deg,#FBF3FF,#FFF7EC);border:2px solid #E7A23C}
.gp-comp .gp-comp-name{font-family:'Montserrat',system-ui,sans-serif;font-size:19px;line-height:1.3;color:#3B2544;font-weight:800;margin:0 0 6px;padding:0}
.gp-comp .gp-comp-tag{display:inline-block;font-family:'Montserrat',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.3px;text-transform:uppercase;color:#8A5A08;background:#FFF1D6;padding:4px 9px;border-radius:6px;margin:0 0 8px}
.gp-comp p:last-child{margin-bottom:0}

/* ---- FAQ ---- */
.gp-faq{margin:6px 0}
.gp-faq .gp-faq-q{font-family:'Montserrat',system-ui,sans-serif;font-weight:800;color:#3B2544;font-size:18px;line-height:1.4;margin:0;padding:20px 0 6px;border-top:1px solid #EBE2EE}
.gp-faq .gp-faq-q:first-child{border-top:0;padding-top:0}
.gp-faq .gp-faq-a{margin:0 0 20px}
.gp-faq .gp-faq-a:last-child{margin-bottom:0}

/* ---- next questions ---- */
.gp-next{margin:26px 0 6px}
.gp-next .gp-next-title{font-family:'Montserrat',system-ui,sans-serif;font-size:14px;letter-spacing:.6px;text-transform:uppercase;color:#7A6B85;font-weight:800;margin:0 0 12px}
ul.gp-next-list{list-style:none;margin:0;padding:0}
ul.gp-next-list>li{border:1px solid #DBCFE0;border-radius:12px;margin:0 0 10px;padding:15px 18px;font-family:'Montserrat',system-ui,sans-serif;font-weight:700;font-size:16.5px;color:#3B2544}
ul.gp-next-list>li>a{display:flex;align-items:center;justify-content:space-between;gap:14px;text-decoration:none;color:#3B2544;margin:-15px -18px;padding:15px 18px;border-radius:12px}
ul.gp-next-list>li>a::after{content:"\2192";color:#E7A23C;font-weight:800;flex:none}
ul.gp-next-list>li>a:hover{background:#FFFBF3;box-shadow:inset 0 0 0 1px #E7A23C}

/* ---- CTA ---- */
.gp-cta{background:linear-gradient(158deg,#3B2544,#4C3159);border-radius:16px;padding:26px 30px;margin:26px 0}
.gp-cta .gp-cta-lead{font-family:'Montserrat',system-ui,sans-serif;color:#fff;font-size:19px;font-weight:800;margin:0 0 3px}
.gp-cta .gp-cta-sub{color:#D8C7E4;font-size:15px;margin:0 0 16px}
.gp-cta .gp-cta-action{margin:0}
.gp-cta .gp-cta-action a{display:inline-block;background:#FFCA6B;color:#3B2544;font-family:'Montserrat',system-ui,sans-serif;font-weight:800;font-size:16px;text-decoration:none;padding:14px 26px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(231,162,60,.8)}
.gp-cta .gp-cta-action a:hover{background:#E7A23C;color:#2A1636}

/* ---- mobile ---- */
@media (max-width:640px){
  .gp-direct-answer{padding:20px 18px}
  .gp-direct-answer .gp-da-body{font-size:18px}
  .gp-callout{padding:18px 18px}
  .gp-cta{padding:22px 20px}
  .gp-comp{padding:15px 16px}
}

/* ---- figures (visual diagrams) ---- */
.gp-figure{margin:30px auto;text-align:center}
.gp-figure img{max-width:100%;height:auto;border-radius:14px;box-shadow:0 14px 32px -18px rgba(59,37,68,.45)}
.gp-figure--portrait{max-width:440px}
.gp-figure--square{max-width:500px}
.gp-figure--svg{max-width:760px}
.gp-figure--svg svg{width:100%;height:auto;display:block;background:#FDFBFE;border:1px solid #EBE2EE;border-radius:14px;padding:14px 10px;box-sizing:border-box}
.gp-figure .wp-element-caption,.gp-figure figcaption{font-family:'Nunito',system-ui,sans-serif;font-size:13.5px;color:#7A6B85;margin:10px auto 0;line-height:1.5}
@media (max-width:640px){.gp-figure--portrait,.gp-figure--square{max-width:100%}}
