/* Inselmann Widgets — component styles. Colors/fonts reference Elementor Global vars. */
.iw{
 --iw-teal:var(--e-global-color-primary,#33565B);
 --iw-teal2:var(--e-global-color-secondary,#1E3A3E);
 --iw-sage:var(--e-global-color-accent,#7C9082);
 --iw-sagedk:var(--e-global-color-sagedrk,#566B5E);
 --iw-text:var(--e-global-color-text,#4A4A46);
 --iw-oat:var(--e-global-color-oatbg01,#F5F1EA);
 --iw-oat2:var(--e-global-color-oatbg02,#ECE6DA);
 --iw-line:var(--e-global-color-lineclr,#E5DFD3);
 --iw-serif:var(--e-global-typography-primary-font-family,'Lora'),Georgia,serif;
 --iw-sans:var(--e-global-typography-text-font-family,'Public Sans'),sans-serif;
 font-family:var(--iw-sans);color:var(--iw-text);line-height:1.7;
}
.iw *{box-sizing:border-box}
.iw h1,.iw h2,.iw h3,.iw h4{font-family:var(--iw-serif);color:var(--iw-teal);line-height:1.2;font-weight:700;margin:0}
.iw a{text-decoration:none}
.iw .iw-label{display:inline-flex;align-items:center;gap:12px;font-size:12.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--iw-sagedk);margin-bottom:16px}
.iw .iw-label::before{content:"";width:34px;height:2px;background:var(--iw-sage)}
.iw .iw-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 28px;border-radius:6px;font-family:var(--iw-sans);font-weight:600;font-size:14px;letter-spacing:1.2px;text-transform:uppercase;border:1.5px solid transparent;transition:all .25s ease;cursor:pointer;line-height:1}
.iw .iw-btn-sage{background:var(--iw-sage);color:#fff;border-color:var(--iw-sage)}
.iw .iw-btn-sage:hover{background:var(--iw-sagedk);border-color:var(--iw-sagedk);transform:translateY(-2px)}
.iw .iw-btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.iw .iw-btn-outline:hover{background:#fff;color:var(--iw-teal)}

/* Page Hero */
.iw-pagehero{background:linear-gradient(120deg,var(--iw-teal2),var(--iw-teal) 70%);color:#fff;padding:70px 0;position:relative;overflow:hidden}
.iw-pagehero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 30%,rgba(124,144,130,.18),transparent 44%);pointer-events:none}
.iw-pagehero .iw-inner{max-width:1200px;margin:0 auto;padding:0 26px;position:relative;z-index:2}
.iw-pagehero .iw-bc{font-size:13.5px;color:rgba(255,255,255,.6);margin-bottom:14px}
.iw-pagehero .iw-bc a{color:var(--iw-sage)}
.iw-pagehero .iw-bc a:hover{color:#fff}
.iw-pagehero h1{color:#fff;font-size:clamp(30px,4.4vw,48px)}
.iw-pagehero p{color:rgba(255,255,255,.84);font-size:18px;margin-top:14px;max-width:660px}

/* Value cards */
.iw-vcards{display:grid;grid-template-columns:repeat(var(--iw-cols,3),1fr);gap:26px}
.iw-vcard{background:#fff;border:1px solid var(--iw-line);border-radius:8px;padding:34px 28px;transition:all .3s ease;position:relative;overflow:hidden}
.iw-vcard::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--iw-sage);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.iw-vcard:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(30,58,62,.1);border-color:transparent}
.iw-vcard:hover::before{transform:scaleX(1)}
.iw-vcard .iw-ic{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--iw-oat);color:var(--iw-sagedk);font-size:23px;margin-bottom:20px;border:1px solid var(--iw-oat2)}
.iw-vcard h3{font-size:20px;margin-bottom:10px}
.iw-vcard p{font-size:15.5px;color:var(--iw-text)}

/* Practice panel */
.iw-pa{background:#fff;border:1px solid var(--iw-line);border-radius:10px;padding:40px 36px;box-shadow:0 4px 18px rgba(30,58,62,.06);height:100%}
.iw-pa-h{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--iw-line)}
.iw-pa-h .iw-paic{width:54px;height:54px;border-radius:8px;display:grid;place-items:center;background:var(--iw-teal);color:var(--iw-sage);font-size:21px;flex:0 0 54px}
.iw-pa-h h3{font-size:24px}
.iw-pa ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}
.iw-pa li{display:flex;align-items:flex-start;gap:9px;font-size:15.5px;color:var(--iw-text);font-weight:500}
.iw-pa li::before{content:"\2713";color:var(--iw-sage);font-weight:700;margin-top:1px}

/* Pricing card */
.iw-pcard{background:#fff;border:1px solid var(--iw-line);border-radius:12px;padding:40px 32px;display:flex;flex-direction:column;position:relative;transition:all .3s ease;height:100%}
.iw-pcard:hover{transform:translateY(-6px);box-shadow:0 26px 70px rgba(20,40,42,.16)}
.iw-pcard.iw-feat{border:2px solid var(--iw-sage)}
.iw-pcard .iw-flag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--iw-sage);color:#fff;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;padding:6px 18px;border-radius:30px;white-space:nowrap}
.iw-pcard .iw-pc-name{font-family:var(--iw-serif);font-size:24px;color:var(--iw-teal);font-weight:700}
.iw-pcard .iw-pc-hours{font-size:13px;color:var(--iw-sagedk);font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}
.iw-pcard .iw-pc-amt{font-family:var(--iw-serif);font-size:44px;color:var(--iw-teal);font-weight:700;margin:20px 0 2px}
.iw-pcard .iw-pc-amt sup{font-size:22px;vertical-align:super}
.iw-pcard .iw-pc-per{font-size:14px;color:var(--iw-sagedk)}
.iw-pcard .iw-div{height:1px;background:var(--iw-line);margin:22px 0}
.iw-pcard ul{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:12px}
.iw-pcard li{display:flex;gap:10px;font-size:15.5px;color:var(--iw-text)}
.iw-pcard li::before{content:"\2713";color:var(--iw-sage);font-weight:700}
.iw-pcard .iw-pc-btn{margin-top:auto}
.iw-pcard .iw-pc-btn .iw-btn{width:100%}

/* CTA band */
.iw-cta{background:linear-gradient(120deg,var(--iw-teal2),var(--iw-teal) 75%);color:#fff;text-align:center;padding:70px 26px;position:relative;overflow:hidden;border-radius:0}
.iw-cta::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(124,144,130,.16),transparent 40%);pointer-events:none}
.iw-cta .iw-inner{position:relative;z-index:2;max-width:820px;margin:0 auto}
.iw-cta h2{color:#fff;font-size:clamp(28px,3.6vw,42px)}
.iw-cta p{color:rgba(255,255,255,.85);font-size:18px;margin:16px auto 30px;max-width:620px}
.iw-cta .iw-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* FAQ */
.iw-faq{max-width:840px;margin:0 auto}
.iw-faq details{background:#fff;border:1px solid var(--iw-line);border-radius:8px;margin-bottom:14px;overflow:hidden}
.iw-faq details[open]{border-color:var(--iw-sage);box-shadow:0 4px 18px rgba(30,58,62,.06)}
.iw-faq summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--iw-serif);font-size:18.5px;font-weight:700;color:var(--iw-teal)}
.iw-faq summary::-webkit-details-marker{display:none}
.iw-faq .iw-plus{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--iw-oat);color:var(--iw-sagedk);display:grid;place-items:center;transition:all .25s ease;font-size:16px;line-height:1}
.iw-faq details[open] .iw-plus{background:var(--iw-sage);color:#fff;transform:rotate(45deg)}
.iw-faq .iw-a{padding:0 26px 24px;color:var(--iw-text);font-size:16px;line-height:1.8}

/* Process steps */
.iw-steps{display:grid;grid-template-columns:repeat(var(--iw-cols,4),1fr);gap:26px}
.iw-step{text-align:center}
.iw-step .iw-num{width:66px;height:66px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--iw-sage);font-family:var(--iw-serif);font-size:24px;font-weight:700;color:var(--iw-teal)}
.iw-step h3{font-size:19px;margin-bottom:8px}
.iw-step p{font-size:15.5px;color:var(--iw-text)}
.iw-steps.iw-on-dark .iw-num{background:transparent;color:#fff}
.iw-steps.iw-on-dark h3{color:#fff}
.iw-steps.iw-on-dark p{color:rgba(255,255,255,.75)}

/* Contact cards */
.iw-ccards{display:grid;grid-template-columns:repeat(var(--iw-cols,2),1fr);gap:16px}
.iw-ci{display:flex;gap:18px;padding:22px;border:1px solid var(--iw-line);border-radius:10px;background:#fff;transition:all .25s ease}
.iw-ci:hover{border-color:var(--iw-sage);box-shadow:0 4px 18px rgba(30,58,62,.06)}
.iw-ci .iw-ci-ic{flex:0 0 50px;width:50px;height:50px;border-radius:50%;background:var(--iw-teal);color:var(--iw-sage);display:grid;place-items:center;font-size:19px}
.iw-ci h4{font-size:17px;margin-bottom:3px}
.iw-ci a,.iw-ci span{color:var(--iw-text);font-size:15.5px}
.iw-ci a:hover{color:var(--iw-sagedk)}

/* Fee table */
.iw-fee{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 18px rgba(30,58,62,.06)}
.iw-fee thead{background:var(--iw-teal)}
.iw-fee th{color:#fff;text-align:left;padding:18px 24px;font-size:14px;letter-spacing:.6px;text-transform:uppercase;font-family:var(--iw-sans);font-weight:700}
.iw-fee td{padding:18px 24px;border-bottom:1px solid var(--iw-line);font-size:16px;color:var(--iw-text)}
.iw-fee tbody tr:last-child td{border-bottom:none}
.iw-fee tbody tr:nth-child(even){background:var(--iw-oat)}
.iw-fee .iw-amt{font-family:var(--iw-serif);font-weight:700;color:var(--iw-teal);font-size:19px}

@media(max-width:1024px){.iw-pa ul{grid-template-columns:1fr 1fr}.iw-steps{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.iw-vcards,.iw-steps,.iw-ccards{grid-template-columns:1fr}.iw-pa ul{grid-template-columns:1fr}}
.iw-pa .iw-pa-intro{font-size:15.5px;color:var(--iw-text);margin:-6px 0 22px;line-height:1.6}
/* propagate-height: let height:100% cards fill a stretched flex column */
.elementor-widget-inselmann_practice_panel,.elementor-widget-inselmann_practice_panel .iw,
.elementor-widget-inselmann_pricing_card,.elementor-widget-inselmann_pricing_card .iw{height:100%}
.iw .iw-btn-ghost{background:transparent;color:var(--iw-teal);border-color:var(--iw-line)}
.iw .iw-btn-ghost:hover{background:var(--iw-teal);color:#fff;border-color:var(--iw-teal)}
.iw-pcard .iw-pc-note{font-size:12.5px;color:var(--iw-sagedk);margin:-14px 0 20px;line-height:1.5}
.iw-fee .iw-fee-svc{font-weight:700;color:#1E3A3E}

.iw-ci h3{font-family:var(--iw-serif);font-size:17px;font-weight:700;color:var(--iw-teal);margin:0 0 3px}
.iw-faq summary h3{margin:0;font:inherit;color:inherit;flex:1;font-weight:700}