﻿/* IDSE public course page: ivory, project plum and antique gold. */
.idse-premium { --ip-plum:#50345f; --ip-ink:#35263e; --ip-muted:#726777; --ip-gold:#d7bc83; background:#faf9f4; color:var(--ip-ink); font-family:Inter,Arial,sans-serif; line-height:1.7; }
.idse-premium * { box-sizing:border-box; }
.idse-premium h1,.idse-premium h2,.idse-premium h3 { font-family:Manrope,Inter,Arial,sans-serif; }
.idse-premium h1,.idse-premium h2,.idse-premium h3,.idse-premium p { margin:0; }
.idse-premium a { color:inherit; }
.idse-premium a:focus-visible,.idse-premium summary:focus-visible { outline:3px solid #b18a42; outline-offset:5px; }
.ip-container { width:min(1200px,calc(100% - 96px)); margin-inline:auto; }
.ip-section { padding:95px 0; scroll-margin-top:25px; }
.ip-eyebrow { font-size:10px; font-weight:700; letter-spacing:1.9px; line-height:1.7; color:#917039; }
.ip-hero { padding:160px 0 75px; background:radial-gradient(ellipse at 85% 40%,#ece2ef 0,transparent 52%),#f4f2e9; border-bottom:1px solid #e2d8e5; overflow:hidden; }
.ip-hero-grid { display:grid; grid-template-columns:1.25fr 1fr; gap:80px; align-items:center; }
.ip-hero .ip-eyebrow { display:flex; align-items:center; gap:10px; }
.ip-eyebrow>span { width:6px; height:6px; border-radius:50%; background:#9b7b46; }
.ip-course-name { font-size:14px; font-weight:500; color:#77677f; margin-top:28px!important; }
.idse-premium h1 { font-size:clamp(40px,4.2vw,61px); font-weight:600; letter-spacing:-2.7px; line-height:1.1; margin-top:16px; }
.idse-premium h1 em { font-style:normal; color:#865c96; }
.ip-lead { font-size:15px; color:#726777; line-height:1.85; margin-top:24px!important; max-width:465px; }
.ip-hero-tags { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.ip-hero-tags span { padding:5px 11px; font-size:10px; border:1px solid #d8c8de; border-radius:4px; color:#70527e; background:#ffffff40; }
.ip-actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; margin-top:29px; }
.ip-button { display:inline-flex; align-items:center; justify-content:space-between; gap:27px; padding:15px 22px; font-size:12px; font-weight:600; border-radius:5px; text-decoration:none; transition:background .2s,transform .2s; }
.ip-button-plum { background:#50345f; color:#fff!important; box-shadow:0 6px 14px #50345f14; }
.ip-button-plum:hover { background:#694478; transform:translateY(-2px); }
.ip-button>span { font-size:20px; line-height:1; color:#dfcd9d; }
.ip-link { display:inline-flex; align-items:center; gap:16px; font-size:12px; font-weight:500; text-decoration:none; border-bottom:1px solid #bda9c6; padding:6px 0; }
.ip-link:hover { color:#865c96; }
.ip-small-note { font-size:10px; color:#776b7e; margin-top:21px!important; }
.ip-blueprint { position:relative; border:1px solid #866893; border-radius:14px; padding:26px 30px 20px; background:linear-gradient(145deg,#432b50,#62416f); color:#fff; box-shadow:15px 20px 0 -7px #e5d9eb,0 26px 55px #50345f15; }
.ip-blueprint-top { display:flex; justify-content:space-between; align-items:center; color:#decee5; font-size:9px; letter-spacing:1.8px; }
.ip-blueprint-top>i { font-size:20px; color:#dcc58e; }
.ip-orbit { height:220px; position:relative; display:grid; place-items:center; margin:8px auto 10px; max-width:325px; }
.ip-orbit-ring { position:absolute; width:165px; height:165px; border:1px solid #ddc8e73d; border-radius:50%; box-shadow:0 0 0 23px #ddc8e706,0 0 0 24px #ddc8e717; }
.ip-orbit-ring:before,.ip-orbit-ring:after { content:""; position:absolute; background:#ddc8e726; height:1px; width:230px; top:81px; left:-33px; }
.ip-orbit-ring:after { transform:rotate(90deg); }
.ip-orbit-core { z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; width:115px; height:115px; background:#71517e; border:1px solid #ad8cba; border-radius:50%; box-shadow:0 0 30px #ddc8e70a; }
.ip-orbit-core i { font-size:21px; color:#e1c58b; margin-bottom:9px; }
.ip-orbit-core span { font-size:9px; font-weight:600; letter-spacing:1.5px; text-align:center; line-height:1.5; color:#f3eaf6; }
.ip-orbit-label { position:absolute; font-size:9px; color:#e9dced; background:#50345f; padding:2px 9px; border:1px solid #ad8cba38; border-radius:3px; }
.ip-orbit-people { left:9px; top:64px; }.ip-orbit-process { right:0; top:74px; }.ip-orbit-tech { bottom:10px; left:50%; transform:translateX(-50%); }
.ip-orbit-dot { position:absolute; top:35px; right:83px; background:#d3bd88; width:6px; height:6px; border-radius:50%; box-shadow:0 0 0 5px #d3bd8815; }
.ip-blueprint h2 { font-size:26px; font-weight:500; letter-spacing:-.8px; line-height:1.25; }
.ip-blueprint>p { font-size:12px; color:#decee5; line-height:1.8; margin-top:10px; }
.ip-blueprint-units { margin-top:22px; border-top:1px solid #ffffff1f; }
.ip-blueprint-units>div { display:flex; gap:16px; align-items:center; border-bottom:1px solid #ffffff1f; padding:13px 0; }
.ip-blueprint-units span { font-size:11px; color:#d7bc83; }.ip-blueprint-units strong { font-size:12px; font-weight:500; }.ip-blueprint-units i { margin-left:auto; font-size:10px; color:#cdb3d8; }
.ip-blueprint-footer { display:flex; justify-content:space-between; gap:12px; font-size:7px; letter-spacing:1.2px; color:#cdb3d8; padding-top:20px; }
.ip-facts { background:#fff; border-bottom:1px solid #e8e0eb; }
.ip-facts-grid { display:grid; grid-template-columns:repeat(4,1fr); padding-block:29px; }
.ip-facts-grid>div { border-left:1px solid #e8e0eb; padding-left:38px; display:flex; flex-direction:column; justify-content:center; }
.ip-facts-grid>div:first-child { border-left:0; padding-left:0; }.ip-facts-grid strong { font-size:30px; line-height:1.2; letter-spacing:-1px; font-weight:500; }.ip-facts-grid small { font-size:14px; letter-spacing:0; }.ip-facts-grid span { font-size:10px; color:#776b7e; margin-top:7px; }.ip-facts-grid>div:last-child { flex-direction:row; justify-content:flex-start; align-items:center; gap:16px; }.ip-facts-grid i { font-size:27px; color:#956fa4; }.ip-facts-grid b { color:#62416f; font-weight:500; }
.ip-page-nav { border-bottom:1px solid #e8e0eb; }.ip-page-nav>div { display:flex; gap:35px; flex-wrap:wrap; padding-block:18px; }.ip-page-nav a { font-size:11px; text-decoration:none; color:#726777; }.ip-page-nav a:hover { color:#50345f; text-decoration:underline; text-underline-offset:5px; }
.ip-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:85px; align-items:end; margin-bottom:42px; }
.ip-heading .ip-eyebrow { margin-bottom:15px; }.idse-premium .ip-section h2,.ip-faq-section h2 { font-size:clamp(30px,3vw,40px); font-weight:500; letter-spacing:-1.5px; line-height:1.2; }.ip-heading>p { font-size:14px; line-height:1.85; color:var(--ip-muted); max-width:430px; }
.ip-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }.ip-benefits article { padding-top:24px; border-top:1px solid #e2d8e5; }.ip-icon { display:grid; place-items:center; width:42px; height:42px; border:1px solid #e2d8e5; border-radius:10px; color:#865c96; background:#f0e8f3; margin-bottom:20px; }.ip-benefits h3 { font-size:18px; font-weight:600; margin-bottom:10px; }.ip-benefits p { font-size:13px; color:var(--ip-muted); line-height:1.85; max-width:320px; }
.ip-recognition { display:flex; align-items:center; gap:26px; padding:23px 28px; margin-top:44px; background:#f2ecf4; border:1px solid #e2d8e5; border-radius:8px; }.ip-recognition img { width:87px; height:50px; object-fit:contain; mix-blend-mode:multiply; }.ip-recognition strong { font-size:12px; font-weight:600; }.ip-recognition p { font-size:11px; color:#726777; margin-top:4px; }
.ip-units-section { background:#efe7f2; }.ip-units-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px; }.ip-unit { background:#fff; border:1px solid #e2d8e5; border-radius:12px; padding:32px; display:flex; flex-direction:column; }.ip-unit-top { display:flex; justify-content:space-between; align-items:center; color:#80598f; font-size:10px; font-weight:600; letter-spacing:1.7px; margin-bottom:25px; }.ip-unit-top i { font-size:23px; color:#956fa4; }.ip-unit h3 { font-size:22px; font-weight:500; line-height:1.4; letter-spacing:-.6px; min-height:94px; }.ip-unit>p { font-size:12px; color:var(--ip-muted); margin:15px 0 20px; line-height:1.8; }.ip-unit ul { padding:0; list-style:none; margin:0 0 26px; }.ip-unit li { position:relative; padding:7px 0 7px 16px; font-size:12px; color:#685370; }.ip-unit li:before { content:""; position:absolute; width:4px; height:4px; border-radius:50%; background:#baa170; left:0; top:16px; }.ip-unit-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid #e8e0eb; padding-top:18px; margin-top:auto; font-size:10px; color:#776b7e; }.ip-unit-footer i { margin-right:5px; }
.ip-learning-grid { display:grid; grid-template-columns:1fr 1.1fr; align-items:center; gap:85px; }.ip-learning-grid>div>.ip-eyebrow,.ip-fees-grid>div>.ip-eyebrow { margin-bottom:15px; }.ip-audio-card { background:#ede5d3; border:1px solid #e1d7c1; border-radius:14px; padding:37px; }.ip-audio-icon { display:grid; place-items:center; width:58px; height:58px; border-radius:50%; border:1px solid #c5b98e; background:#f7f0df; color:#82764d; font-size:25px; margin-bottom:25px; }.ip-audio-card h3 { font-size:31px; line-height:1.25; font-weight:500; letter-spacing:-1px; }.ip-audio-card>p:last-child { font-size:11px; color:#8c8268; }.ip-wave { display:flex; align-items:center; justify-content:space-between; gap:5px; height:100px; margin:15px 0; }.ip-wave span { flex:1; background:#b9a776; height:25px; border-radius:4px; opacity:.6; }.ip-wave span:nth-child(3n) { height:65px; opacity:.8; }.ip-wave span:nth-child(4n) { height:42px; }.ip-wave span:nth-child(5n) { height:82px; opacity:1; }.ip-body-copy { font-size:14px; color:var(--ip-muted); margin:23px 0!important; line-height:1.85; max-width:435px; }.ip-checks { list-style:none; margin:22px 0; padding:0; }.ip-checks li { position:relative; padding:7px 0 7px 24px; font-size:12px; color:#685370; }.ip-checks li:before { content:"✓"; position:absolute; left:0; color:#865c96; }.ip-audience-note { font-size:11px; line-height:1.9; color:#776b7e; border-top:1px solid #e2d8e5; padding-top:20px; }.ip-audience-note strong { color:#62416f; }
.ip-assessment-section { background:#50345f; color:#faf6fc; }.ip-assessment-section .ip-eyebrow { color:#d4bb83; }.ip-assessment-section .ip-heading>p { color:#decee5; }.ip-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; list-style:none; margin:50px 0 0; padding:0; }.ip-steps li { border-top:1px solid #9976a7; padding-top:20px; }.ip-steps li>span { color:#d2b982; font-size:11px; }.ip-steps h3 { font-size:17px; font-weight:500; margin:16px 0 10px; line-height:1.4; }.ip-steps p { font-size:12px; color:#decee5; line-height:1.85; }
.ip-fees-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:110px; align-items:center; }.ip-fee-card { border:1px solid #e2d8e5; border-top:3px solid #956fa4; border-radius:10px; padding:35px; background:#fff; box-shadow:0 15px 35px #50345f07; }.ip-fee-card .ip-eyebrow { font-size:9px; }.ip-fee-card h3 { font-size:23px; font-weight:500; letter-spacing:-.6px; margin-top:13px; }.ip-price { font-size:57px; letter-spacing:-2px; font-weight:500; line-height:1.3; margin-top:23px!important; }.ip-price span { font-size:11px; color:#776b7e; font-weight:400; letter-spacing:0; white-space:nowrap; }.ip-fee-card .ip-checks { padding:18px 0; border-top:1px solid #e8e0eb; margin-top:24px; }.ip-fee-card .ip-button { width:100%; }.ip-fee-note { font-size:10px; color:#776b7e; text-align:center; margin-top:14px!important; }.ip-existing { display:flex; align-items:center; gap:15px; margin-top:35px; color:#865c96; }.ip-existing p { font-size:11px; }.ip-existing a { color:#62416f; text-underline-offset:4px; }
.ip-faq-section { padding:60px 0 80px; border-top:1px solid #e2d8e5; }.ip-faq-grid { display:grid; grid-template-columns:.85fr 1.4fr; gap:80px; }.ip-faq-grid>div>.ip-eyebrow { margin-bottom:15px; }.ip-faq-grid>div>p:last-child { margin-top:20px; font-size:12px; line-height:1.85; color:#776b7e; }.ip-faq details { border-bottom:1px solid #e2d8e5; }.ip-faq summary { cursor:pointer; list-style:none; padding:20px 27px 20px 0; position:relative; font-size:13px; font-weight:500; }.ip-faq summary::-webkit-details-marker { display:none; }.ip-faq summary:after { content:"+"; position:absolute; right:0; color:#865c96; font-size:18px; top:16px; }.ip-faq details[open] summary:after { content:"−"; }.ip-faq details>p { padding:0 15px 20px 0; font-size:12px; line-height:1.9; color:#726777; }
body:has(.idse-premium) #mainNavbar { background:#f4f2e9!important; box-shadow:none!important; }
@media(max-width:1100px) { .ip-container { width:calc(100% - 64px); }.ip-hero-grid { gap:45px; }.idse-premium h1 { font-size:49px; }.ip-heading { gap:45px; }.ip-learning-grid,.ip-fees-grid { gap:50px; }.ip-unit { padding:26px; }.ip-facts-grid>div { padding-left:25px; } }
@media(max-width:850px) { .ip-hero { padding-top:135px; }.ip-hero-grid { grid-template-columns:1fr; gap:45px; }.ip-hero-copy { max-width:620px; }.ip-blueprint { width:100%; max-width:460px; justify-self:center; }.ip-section { padding:65px 0; }.ip-heading { gap:30px; }.ip-unit h3 { font-size:19px; min-height:110px; }.ip-learning-grid { gap:30px; }.ip-audio-card { padding:28px; }.ip-steps { grid-template-columns:1fr 1fr; gap:30px; }.ip-fees-grid { gap:30px; }.ip-fee-card { padding:26px; }.ip-faq-grid { gap:35px; } }
@media(max-width:640px) { .ip-container { width:calc(100% - 36px); }.ip-hero { padding:120px 0 55px; }.idse-premium h1 { font-size:43px; letter-spacing:-1.8px; }.ip-course-name { font-size:12px; margin-top:23px!important; }.ip-lead { font-size:14px; }.ip-actions { gap:18px; }.ip-blueprint { padding:24px; box-shadow:7px 11px 0 -4px #e5d9eb; }.ip-facts-grid { grid-template-columns:1fr 1fr; gap:25px 20px; padding-block:25px; }.ip-facts-grid>div { padding-left:18px; }.ip-facts-grid>div:nth-child(3) { border-left:0; padding-left:0; }.ip-facts-grid strong { font-size:28px; }.ip-facts-grid span { font-size:9px; }.ip-facts-grid>div:last-child { gap:10px; }.ip-page-nav>div { gap:10px 22px; padding-block:16px; }.ip-page-nav a { font-size:10px; }.ip-section { padding:55px 0; }.ip-heading { grid-template-columns:1fr; gap:20px; margin-bottom:30px; }.ip-heading>p { font-size:13px; }.ip-benefits { grid-template-columns:1fr; gap:25px; }.ip-benefits article { padding-top:22px; }.ip-benefits p { max-width:none; }.ip-icon { margin-bottom:15px; }.ip-recognition { padding:20px; gap:18px; align-items:flex-start; }.ip-recognition img { width:65px; height:45px; }.ip-recognition p { font-size:10px; }.ip-units-grid,.ip-learning-grid,.ip-fees-grid,.ip-faq-grid { grid-template-columns:1fr; gap:28px; }.ip-unit { padding:25px; }.ip-unit h3 { min-height:0; font-size:21px; }.ip-unit-top { margin-bottom:20px; }.ip-unit-footer { font-size:9px; }.ip-audio-card { padding:30px; }.ip-learning-grid>div:last-child { padding-top:5px; }.ip-steps { gap:25px; margin-top:30px; }.ip-steps h3 { font-size:16px; }.ip-steps p { font-size:11px; }.ip-fees-grid { gap:35px; }.ip-faq-section { padding:45px 0 60px; }.ip-faq summary { font-size:12px; }.ip-small-note { font-size:9px; } }
@media(prefers-reduced-motion:reduce) { .idse-premium * { transition:none!important; scroll-behavior:auto!important; } }
