/* Imagine Monkey 0.3.2 — Studio components.
   All artwork/CSS is local and trusted theme code. Data packages only select these classes.
   Existing headers and pages retain their old presentation until a Studio package is approved. */
:is(.imf-site,.editor-styles-wrapper) .im-studio{
  --im-studio-line:#d6e4f2;--im-studio-muted:#516984;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#162f4c;font-size:17px;line-height:1.75;isolation:isolate;
  padding:clamp(60px,6.2vw,var(--im-section-space,88px)) clamp(24px,5vw,80px);
  margin:0!important;max-width:none!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-studio *{box-sizing:border-box}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-inner{width:100%;max-width:var(--im-wide,1240px);margin-inline:auto!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio :is(h1,h2,h3){font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 22px;text-wrap:balance;color:inherit;overflow-wrap:break-word}
:is(.imf-site,.editor-styles-wrapper) .im-studio h2{font-size:clamp(2rem,3.6vw,3.2rem)}
:is(.imf-site,.editor-styles-wrapper) .im-studio h3{font-size:27px}
:is(.imf-site,.editor-styles-wrapper) .im-studio p{margin:0 0 20px}
:is(.imf-site,.editor-styles-wrapper) .im-studio :is(p,figure,blockquote):last-child{margin-block-end:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-eyebrow{font:750 10px/1.65 system-ui,sans-serif!important;letter-spacing:.18em;text-transform:uppercase;color:#3f678e;margin:0 0 22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-eyebrow::before{content:"";display:inline-block;vertical-align:middle;width:25px;height:2px;margin-inline-end:12px;background:linear-gradient(90deg,#087ddd,#eb6385,#ff9228)}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-lead{font-size:19px;line-height:1.75}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-studio-panel-kicker{font:700 11px/1.6 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#456d94;margin:0 0 30px}
:is(.imf-site,.editor-styles-wrapper) .im-studio :is(.im-studio-hero-grid,.im-studio-service-grid,.im-studio-section-heading,.im-studio-personal-grid,.im-studio-foundation-panel,.im-studio-foundation-grid,.im-studio-review-grid,.im-studio-invitation)>*{min-width:0;margin-block:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio :is(a,button):focus-visible{outline:3px solid #1687f8;outline-offset:5px;box-shadow:0 0 0 2px #fff}
/* The hero: one message and one upright piece of existing brand artwork. */
:is(.imf-site,.editor-styles-wrapper) .im-studio.im-studio-hero{
  color:#f6fbff;background:radial-gradient(ellipse at 96% 44%,rgba(44,109,157,.24),transparent 61%),linear-gradient(115deg,#0a2542 25%,#0c3153);
  padding-block:clamp(58px,5.5vw,84px) clamp(68px,6.3vw,92px);position:relative;overflow:hidden;
}
/* Smooth hero atmosphere: one large static curve, no dots, grain, grid or pulsing. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero::before{
  content:"";position:absolute;pointer-events:none;z-index:0;
  width:clamp(600px,65vw,1040px);height:clamp(600px,65vw,1040px);
  right:clamp(-310px,-15vw,-130px);top:50%;transform:translateY(-50%);
  border:1px solid rgba(140,195,235,.075);border-radius:50%;
  box-shadow:0 0 0 86px rgba(119,184,227,.025),0 0 0 172px rgba(119,184,227,.018);
}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero>.im-inner{position:relative;z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero-grid{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:clamp(38px,6vw,94px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero .im-eyebrow{color:#b1cce5}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero h1{font-size:clamp(2.65rem,4.9vw,4.6rem);line-height:1.045;letter-spacing:-.04em;margin:0 0 30px;max-width:720px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero h1 strong{color:#91cbfc;font-weight:400}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero .im-lead{max-width:590px;color:#cfdfed;font-size:clamp(17px,1.3vw,19px)}
:is(.imf-site,.editor-styles-wrapper) .im-studio-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio-actions:not(:has(> *)){display:none}
:is(.imf-site,.editor-styles-wrapper) .im-studio .wp-element-button{border-radius:11px;padding:15px 24px;min-height:50px;font-size:15px;font-weight:650;background:linear-gradient(180deg,#1375e7,#0864d2);border:1px solid #418ceb;box-shadow:inset 0 1px 0 #ffffff30,0 10px 25px -16px #0615278c;color:#fff;text-decoration:none;display:inline-flex;gap:20px;align-items:center;justify-content:center}
:is(.imf-site,.editor-styles-wrapper) .im-studio .wp-element-button:hover{background:#075bbf;color:#fff;border-color:#70b4ff}
:is(.imf-site,.editor-styles-wrapper) .im-studio-hero .im-studio-hero-note{font-size:13px;line-height:1.7;color:#adc5dd;max-width:none;padding-top:26px;margin-top:28px;border-top:1px solid #294a69;width:fit-content}
:is(.imf-site,.editor-styles-wrapper) .im-studio-art{
  position:relative;text-align:center;justify-self:end;width:100%;max-width:420px;padding:26px 28px 28px!important;
  background:radial-gradient(ellipse at 50% 52%,rgba(111,193,247,.14),transparent 64%),linear-gradient(145deg,rgba(218,241,255,.09),rgba(171,215,247,.03));
  border:1px solid #5c88ab66;border-radius:28px;box-shadow:inset 0 1px 0 #ffffff18,0 28px 70px -52px #0009;overflow:hidden;
}
:is(.imf-site,.editor-styles-wrapper) .im-studio-art::before{content:"";position:absolute;top:0;left:12%;right:12%;height:3px;background:linear-gradient(90deg,#0c8ace,#a978ae,#f39341);opacity:.85}
:is(.imf-site,.editor-styles-wrapper) .im-studio-art .im-studio-art-label{font:650 10px/1.6 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#b7d6ee;max-width:none;margin:0 0 22px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-bulb{margin:0 auto!important;text-align:center;width:100%;max-width:200px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-bulb img{width:100%;height:auto;aspect-ratio:278 / 482;object-fit:contain;display:block;transform:none;filter:none}
:is(.imf-site,.editor-styles-wrapper) .im-studio-art .im-studio-art-caption{font:400 22px/1.3 Georgia,serif;letter-spacing:-.02em;max-width:none;color:#e5f3ff;margin:20px 0 0}
/* Service family: thin borders, consistent line icons, and space for the copy. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-services{background:linear-gradient(180deg,#f0f6fc,#f7faff)}
:is(.imf-site,.editor-styles-wrapper) .im-studio-section-heading{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:end;margin-bottom:38px!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio-section-heading h2{margin-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio-section-intro{font-size:17px;line-height:1.8;color:#526b86;max-width:450px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
:is(.imf-site,.editor-styles-wrapper) :is(.im-studio-service-card,.is-style-im-studio-card){position:relative;background:#fff;border:1px solid #d4e3f1;border-radius:20px;padding:32px;box-shadow:0 18px 45px -37px #254e794d;display:flex;flex-direction:column;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-card::before{content:"";position:absolute;top:0;left:30px;right:30px;height:3px;background:linear-gradient(90deg,#078bdd,#e377a1,#fcac52);opacity:.65}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-studio-icon{width:54px;height:54px;flex:0 0 auto;align-self:flex-start;display:grid;place-items:center;padding:0;line-height:0;border:1px solid #d0e5f8;border-radius:15px;background:linear-gradient(145deg,#fff,#eaf4ff);box-shadow:inset 0 1px 0 #fff,0 7px 18px -14px #4c92c9;margin:0 0 26px!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-studio-icon>img{width:28px;height:28px;max-width:none;max-height:none;object-fit:contain;object-position:center;display:block;margin:0!important;padding:0;border:0;vertical-align:middle}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-card h3{margin:0 0 14px;font-size:28px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-card p{font-size:16px;line-height:1.8;color:#526881}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-card .im-studio-card-link{margin-top:auto!important;padding-top:20px;font-size:14px;font-weight:650}
:is(.imf-site,.editor-styles-wrapper) .im-studio-card-link a{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;color:#0962bf;text-decoration:none;border-bottom:1px solid transparent}
:is(.imf-site,.editor-styles-wrapper) .im-studio-card-link a:hover{color:#073d79;border-color:#9fc7ed}
:is(.imf-site,.editor-styles-wrapper) .im-studio-arrow{font-size:20px;font-weight:400}
/* Personal service: one editorial column plus one grouped process panel. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-personal-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(38px,6vw,92px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-studio-personal-copy{max-width:550px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-personal-copy>p:not(.im-eyebrow):not(.im-lead){font-size:16px;color:#526881}
:is(.imf-site,.editor-styles-wrapper) .im-studio-personal-copy .im-studio-signoff{padding-left:20px;border-left:2px solid #f58a36;margin-top:26px;color:#244c75;font-size:16px;line-height:1.7}
:is(.imf-site,.editor-styles-wrapper) .im-studio-process-panel{padding:34px 38px;border-radius:24px;border:1px solid #d4e3f1;background:linear-gradient(145deg,#f9fcff,#eef6fd);box-shadow:inset 0 1px 0 #fff}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step{display:grid!important;grid-template-columns:42px minmax(0,1fr);gap:18px;margin:0!important;padding:22px 0;border-top:1px solid #d8e6f3}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step:last-child{padding-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step>*{margin-block:0!important;min-width:0;align-self:start}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step-copy{padding-block-start:6px}

:is(.imf-site,.editor-styles-wrapper) .im-studio-step .im-studio-step-number{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:#e3f0fc;color:#1266b8;border:1px solid #ccdfef;border-radius:50%;font:700 11px/1 system-ui;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step h3{font-size:22px;margin:0 0 8px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-step-copy p{font-size:14px;line-height:1.7;color:#526b83}
/* Technical feature: one navy surface, never fake scores or floating devices. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundations{background:#f6faff;padding-top:32px;padding-bottom:32px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-panel{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,4vw,64px);position:relative;overflow:hidden;padding:clamp(32px,4.2vw,60px);background:radial-gradient(ellipse at 95% 10%,#22619155,transparent 58%),linear-gradient(125deg,#0d2946,#0e365c);border-radius:28px;border:1px solid #487499;color:#f3f9ff;box-shadow:0 28px 65px -46px #16375680}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-panel::before{content:"";position:absolute;inset:0 36px auto;height:3px;background:linear-gradient(90deg,#139bdf,#a779b3,#ef8b54);opacity:.85}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-panel .im-eyebrow{color:#b3d0e9}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-panel h2{font-size:clamp(2rem,3.2vw,3rem);color:#f5faff}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-copy .im-lead{font-size:17px;color:#d1e1ef}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-copy p:last-child{font-size:14px;line-height:1.9;color:#b9cfe2}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;align-content:center}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-item{border-top:1px solid #42627f;padding-top:22px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-item .im-studio-icon{width:40px;height:40px;padding:0;background:#244c6f;border-color:#507493;border-radius:12px;margin-bottom:16px!important;box-shadow:inset 0 1px 0 #ffffff12}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-item .im-studio-icon>img{width:22px;height:22px;filter:brightness(0) invert(1);opacity:.94}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-item h3{font:650 15px/1.5 system-ui,sans-serif;letter-spacing:0;color:#f1f7ff;margin:0 0 8px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-item p{font-size:13px;line-height:1.8;color:#c1d4e5}
/* Review: the supplied quotation, styled as a quiet editorial feature. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-reviews{background:linear-gradient(180deg,#f6faff,#fff)}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-grid{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,5vw,76px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-copy p:not(.im-eyebrow){font-size:16px;color:#526b84;max-width:370px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-card{position:relative;padding:clamp(28px,4vw,48px);border:1px solid #d2e3f3;border-radius:26px;box-shadow:0 20px 45px -36px #254e7970;background:linear-gradient(130deg,#fff,#f3f9ff)}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-card::after{content:"“";position:absolute;top:10px;right:26px;font:130px/1 Georgia,serif;color:#e0edfa;pointer-events:none}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-stars{width:104px;margin:0 0 24px!important;position:relative;z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-stars img{display:block;width:100%;height:auto}
:is(.imf-site,.editor-styles-wrapper) .im-studio .im-studio-quote,
.imf-site .wp-block-post-content .im-studio .im-studio-quote{border:0;padding:0;margin:0;position:relative;z-index:1;text-align:left;max-width:none}
:is(.imf-site,.editor-styles-wrapper) .im-studio-quote p{font:400 clamp(22px,2vw,30px)/1.45 Georgia,serif;letter-spacing:-.02em;color:#102d50;margin:0 0 24px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-quote cite{display:block;border-top:1px solid #d5e5f3;padding-top:20px;font:650 14px/1.6 system-ui,sans-serif;color:#294f76}
/* Closing invitation: an inset surface, not a second oversized hero. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-closing{background:#fff;padding-top:12px;padding-bottom:64px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation{display:grid!important;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:clamp(30px,4vw,52px);color:#f5faff;border:1px solid #416f94;border-radius:26px;background:radial-gradient(ellipse at 100% 20%,#21699c66,transparent 60%),#103453;box-shadow:0 24px 55px -43px #13345680}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation .im-eyebrow{color:#bdd9ef}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation h2{font-size:clamp(2rem,3.3vw,3.1rem);color:#f5faff;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation .im-studio-section-intro{color:#d2e1ee;font-size:16px;line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation .im-studio-actions{margin-top:24px!important}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation .im-studio-closing-link{margin-top:18px;font-size:14px;font-weight:650}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation a:not(.wp-element-button){color:#cae6ff;text-underline-offset:.3em}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation .im-studio-call{font-size:13px;color:#bad1e4;margin-top:20px}
/* Optional shared component packages: scoped so existing components are not replaced silently. */
.imf-site .im-header-shell.im-studio-header{max-width:1320px;border-color:#6f95b14d;box-shadow:inset 0 1px 0 #ffffff16,0 12px 30px -25px #0009;position:relative;padding:10px 28px;background:var(--im-header-bg);border-radius:20px}
.imf-site .im-studio-header::after{content:"";position:absolute;bottom:-1px;left:15%;right:15%;height:2px;background:linear-gradient(90deg,transparent,#318dce,#b180ac,#e69d4e,transparent);pointer-events:none}
.imf-site .im-studio-header-inner{gap:18px;justify-content:space-between}
.imf-site .im-studio-header .im-brand-image{height:90px;width:auto}
.imf-site .im-studio-header .im-nav-primary{margin-inline-start:auto;font-size:13px}
.imf-site .im-studio-header .im-nav-primary>.im-menu-list{gap:2px}
.imf-site .im-studio-header .im-nav-primary a{padding:12px 10px}
.imf-site .im-studio-header .im-sub-toggle{min-width:32px;width:32px;border-color:#6484a255;min-height:40px}
.imf-site .im-studio-header .im-project-link .wp-element-button{font-size:13px;min-height:46px;gap:14px;padding:12px 18px;border-radius:10px;background:linear-gradient(180deg,#1578e7,#0864d2);box-shadow:inset 0 1px 0 #ffffff30;border-color:#3b87dd}
.imf-site .im-footer-shell.im-studio-footer{max-width:1320px;padding:46px 32px 24px;position:relative}
.imf-site .im-studio-footer::before{content:"";position:absolute;top:0;left:32px;right:32px;height:2px;background:linear-gradient(90deg,#71b7e2,#ddafc4,#f5ba8c);opacity:.7}
.imf-site .im-studio-footer-top{display:flex;align-items:center;justify-content:space-between;gap:56px}
.imf-site .im-studio-footer-brand{display:flex;align-items:center;gap:24px}
.imf-site .im-studio-footer .im-brand-image{height:100px;width:auto}
.imf-site .im-studio-footer-title{font-size:28px;line-height:1.18;margin:0 0 10px}
.imf-site .im-studio-footer-caption{font:400 13px/1.6 system-ui,sans-serif;color:#526b83;margin:0}
.imf-site .im-studio-footer-links{max-width:470px}
.imf-site .im-studio-footer .im-studio-panel-kicker{font:700 10px/1.6 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.13em;color:#526b83;margin:0 0 12px}
.imf-site .im-studio-footer .im-nav-footer a{font-size:13px;padding:9px 12px;min-height:44px}
.imf-site .im-studio-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding-top:22px;border-top:1px solid #d4e2ef}
.imf-site .im-studio-footer .im-footer-note{margin:0;font-size:12px;opacity:1;color:#526b83}
.imf-site .im-studio-footer-phone{margin:0;font:600 13px/1.6 system-ui,sans-serif}
.imf-site .im-studio-footer-phone a{color:#245482;display:inline-flex;align-items:center;min-height:44px}
/* Restrained interaction detail. Text/cards stay visible without JavaScript. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-arrow{display:inline-block}
:is(.imf-site,.editor-styles-wrapper) .im-studio-service-card:focus-within{border-color:#87b4de;box-shadow:0 18px 40px -28px rgba(24,68,109,.24)}
@media (hover:hover) and (pointer:fine){
  .imf-site .im-studio-service-card:hover{border-color:#b0cce6;box-shadow:0 20px 42px -30px rgba(29,72,116,.27)}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .imf-site .im-studio-service-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
  .imf-site .im-studio-service-card:hover{transform:translateY(-2px)}
  .imf-site .im-studio-card-link .im-studio-arrow{transition:transform .18s ease}
  .imf-site .im-studio-card-link a:hover .im-studio-arrow{transform:translateX(2px)}
  .imf-site .im-studio a.wp-element-button{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
  .imf-site .im-studio a.wp-element-button:hover{transform:translateY(-1px)}
}
@media(max-width:1160px){
 .imf-site .im-studio-header .im-brand-image{height:78px}.imf-site .im-studio-header .im-header-inner>.im-project-link{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-service-card{padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(260px,.8fr);gap:42px}
}
@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-studio{padding-inline:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-service-grid{gap:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-service-card{padding:24px}.imf-site .im-studio-service-card h3{font-size:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-personal-grid{gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-process-panel{padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-panel{grid-template-columns:1fr;gap:36px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-copy{max-width:630px}
 .imf-site .im-studio-header .im-nav-primary{font-size:12px}.imf-site .im-studio-header .im-nav-primary a{padding-inline:8px}
}
@media(max-width:780px){
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero::before{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-studio{padding-block:60px;padding-inline:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero-grid{grid-template-columns:1fr;gap:38px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero-copy{max-width:640px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero h1{font-size:clamp(40px,8vw,62px)}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-art{max-width:430px;justify-self:center;padding:24px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-bulb{max-width:158px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-art .im-studio-art-caption{font-size:21px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-section-intro{max-width:600px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-service-grid{grid-template-columns:1fr;gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-service-card{padding:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-personal-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-review-grid{grid-template-columns:1fr;gap:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-invitation{grid-template-columns:1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-foundations{padding-top:12px;padding-bottom:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-closing{padding-top:0;padding-bottom:36px}
 .imf-site .im-header-shell.im-studio-header{padding:8px 16px}
 .imf-site .im-studio-header .im-brand-image{height:76px}
 .imf-site .im-studio-header .im-nav-primary{font-size:14px}
 .imf-site .im-studio-header .im-sub-toggle{width:44px;min-height:44px}
 .imf-site .im-studio-footer-top{align-items:flex-start;flex-direction:column;gap:30px}
 .imf-site .im-studio-footer .im-brand-image{height:88px}
 .imf-site .im-studio-footer-title{font-size:26px}
 .imf-site .im-studio-footer .im-studio-footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}
 .imf-site .im-footer-shell.im-studio-footer{padding-inline:24px}
}
@media(max-width:400px){
 :is(.imf-site,.editor-styles-wrapper) .im-studio-foundation-grid{grid-template-columns:1fr;gap:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero h1{font-size:39px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-process-panel{padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-step{gap:12px;grid-template-columns:34px minmax(0,1fr)}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-step .im-studio-step-number{width:32px;height:32px}
 .imf-site .im-studio-footer-brand{gap:16px}.imf-site .im-studio-footer-title{font-size:22px}
}
@media(prefers-reduced-motion:reduce){
 :is(.imf-site,.editor-styles-wrapper) .im-studio,
 :is(.imf-site,.editor-styles-wrapper) .im-studio *,
 :is(.imf-site,.editor-styles-wrapper) .im-studio::before,
 :is(.imf-site,.editor-styles-wrapper) .im-studio::after,
 :is(.imf-site,.editor-styles-wrapper) .im-studio *::before,
 :is(.imf-site,.editor-styles-wrapper) .im-studio *::after,
 .imf-site :is(.im-studio-header,.im-studio-footer) *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

@media(forced-colors:active){
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero::before{display:none}

 :is(.imf-site,.editor-styles-wrapper) :is(.im-studio,.im-studio-art,.im-studio-service-card,.im-studio-process-panel,.im-studio-foundation-panel,.im-studio-invitation,.im-studio-review-card){background:Canvas!important;color:CanvasText!important;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-studio :is(p,h1,h2,h3,strong,cite){color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-studio :is(.im-studio-art,.im-studio-service-card,.im-studio-process-panel,.im-studio-foundation-panel,.im-studio-invitation,.im-studio-review-card,.im-studio-icon){border:1px solid CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-studio .wp-element-button{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}
 :is(.imf-site,.editor-styles-wrapper) .im-studio :is(a,button):focus-visible{outline:3px solid Highlight;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-review-card::after{display:none}
}
@media print{
 :is(.imf-site,.editor-styles-wrapper) .im-studio-hero::before{display:none}

 :is(.imf-site,.editor-styles-wrapper) .im-studio{padding:24px 0!important;background:#fff!important;color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-studio :is(p,h1,h2,h3,strong,cite,a){color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-studio :is(.im-studio-foundation-panel,.im-studio-invitation,.im-studio-review-card,.im-studio-service-card,.im-studio-art){background:#fff!important;box-shadow:none;border:1px solid #999}
 :is(.imf-site,.editor-styles-wrapper) .im-studio-art{display:none}.imf-site .im-studio-hero-grid{grid-template-columns:1fr}
}


/* 0.3.3 header/footer trust pass + stronger brand accent lines. */
:is(.imf-site,.editor-styles-wrapper) .im-studio-process-panel,
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation,
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-card{position:relative;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-studio-process-panel::before,
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation::before,
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-card::before{
  content:"";position:absolute;top:0;left:28px;right:28px;height:3px;
  background:linear-gradient(90deg,#168fe8,#b47caf,#ef6087,#ff9a32);opacity:.86;pointer-events:none;
}
:is(.imf-site,.editor-styles-wrapper) .im-studio-review-card::before{left:34px;right:34px}
:is(.imf-site,.editor-styles-wrapper) .im-studio-invitation::before{left:36px;right:36px}

/* The current primary menu already carries the quote/contact item last.
   Studio Header 03 promotes that existing menu item instead of duplicating it. */
.imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a{
  position:relative;overflow:hidden;isolation:isolate;color:#fff!important;
  padding:11px 18px!important;min-height:44px;border-radius:10px;
  border:1px solid #2f85df;background:linear-gradient(180deg,#1687f8 0%,#0866db 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 12px 24px -16px rgba(8,102,219,.75);
  text-shadow:0 1px 0 rgba(0,0,0,.08);
}


@media (hover:hover) and (pointer:fine){
 .imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a:hover{
   background:linear-gradient(180deg,#2592ff,#075dc7)!important;border-color:#70b7ff;
   transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 15px 28px -18px rgba(8,102,219,.8);
 }
}

/* Footer 03: social profiles + official email trust badge. */
.imf-site .im-studio-footer-grid{
  display:grid;grid-template-columns:minmax(0,1.12fr) minmax(220px,.78fr) minmax(250px,.72fr);
  gap:clamp(34px,5vw,72px);align-items:start;
}
.imf-site .im-studio-footer .im-studio-footer-title{color:var(--im-footer-ink)}
.imf-site .im-studio-footer-caption,
.imf-site .im-studio-footer .im-studio-panel-kicker,
.imf-site .im-studio-footer .im-footer-note{color:color-mix(in srgb,var(--im-footer-ink) 68%,transparent)}
.imf-site .im-studio-footer-phone a{color:var(--im-footer-link)}
.imf-site .im-studio-footer-trust{min-width:0}
.imf-site .im-studio-socials{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.imf-site .im-social-link{
  width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;
  color:var(--im-footer-ink);text-decoration:none;border:1px solid color-mix(in srgb,var(--im-footer-ink) 22%,transparent);
  background:color-mix(in srgb,var(--im-footer-ink) 7%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease;
}
.imf-site .im-social-link:focus-visible{outline:3px solid #1687f8;outline-offset:3px}
.imf-site .im-social-glyph{width:20px;height:20px;display:grid;place-items:center;position:relative;font:800 17px/1 system-ui,sans-serif;color:currentColor}
.imf-site .im-social-facebook .im-social-glyph::before{content:"f";font-size:21px;font-family:Arial,sans-serif}
.imf-site .im-social-x .im-social-glyph::before{content:"X";font-size:15px;letter-spacing:-.08em}
.imf-site .im-social-linkedin .im-social-glyph::before{content:"in";font-size:13px;letter-spacing:-.05em}
.imf-site .im-social-setup{font-size:12px;line-height:1.6;color:var(--im-footer-link);margin:0 0 18px}
@media (hover:hover) and (pointer:fine){
 .imf-site .im-social-link:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--im-footer-link) 72%,transparent);background:color-mix(in srgb,var(--im-footer-link) 15%,transparent)}
 .imf-site .im-social-facebook:hover{color:#5ca3ff}.imf-site .im-social-linkedin:hover{color:#66b5ff}.imf-site .im-social-google:hover{color:#8bc3ff}
}
.imf-site .im-verified-email{
  position:relative;overflow:hidden;display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:start;
  padding:18px 18px 17px;border-radius:18px;border:1px solid color-mix(in srgb,var(--im-footer-ink) 22%,transparent);
  background:linear-gradient(145deg,color-mix(in srgb,var(--im-footer-ink) 8%,transparent),color-mix(in srgb,var(--im-footer-ink) 3%,transparent));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 30px -26px rgba(0,0,0,.35);
}
.imf-site .im-verified-email::before{content:"";position:absolute;top:0;left:18px;right:18px;height:3px;background:linear-gradient(90deg,#168fe8,#b47caf,#ef6087,#ff9a32);opacity:.9}
.imf-site .im-verified-mark{
  width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#fff;font:800 18px/1 system-ui,sans-serif;
  background:linear-gradient(145deg,#1498ef,#bc5aa8,#f47b38);box-shadow:0 10px 20px -15px rgba(12,107,211,.9);
}
.imf-site .im-verified-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.imf-site .im-verified-copy strong{font:750 11px/1.5 system-ui,sans-serif;letter-spacing:.11em;color:var(--im-footer-ink)}
.imf-site .im-verified-copy span{font:400 12px/1.5 system-ui,sans-serif;color:color-mix(in srgb,var(--im-footer-ink) 68%,transparent)}
.imf-site .im-verified-copy b{margin-top:4px;display:inline-flex;width:max-content;max-width:100%;padding:6px 9px;border-radius:9px;border:1px solid color-mix(in srgb,var(--im-footer-ink) 18%,transparent);font:650 12px/1.3 system-ui,sans-serif;color:var(--im-footer-ink);overflow-wrap:anywhere}

@media(max-width:980px){.imf-site .im-studio-footer-grid{grid-template-columns:1fr 1fr}.imf-site .im-studio-footer-trust{grid-column:1/-1;max-width:520px}}
@media(max-width:780px){
 .imf-site .im-studio-footer-grid{grid-template-columns:1fr;gap:28px}
 .imf-site .im-studio-footer-trust{grid-column:auto;max-width:none}
 .imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a{width:100%;max-width:none!important;justify-content:center;margin-top:8px}
}
@media(prefers-reduced-motion:reduce){
 .imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a::after{display:none!important;animation:none!important}
 .imf-site .im-social-link{transition:none!important}
}
@media(forced-colors:active){
 .imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a,
 .imf-site .im-social-link,.imf-site .im-verified-email,.imf-site .im-verified-mark{background:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonText!important;box-shadow:none}
 .imf-site .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a::after,
 .imf-site .im-verified-email::before{display:none!important}
}

/* 0.3.5 — compact brand-side phone utility + left-balanced navigation. */
.imf-site .im-header-shell.im-studio-header.im-studio-header-brandphone{padding-block:8px}
.imf-site .im-studio-header-brandphone .im-studio-header-inner{
  display:grid;grid-template-columns:178px minmax(0,1fr);gap:clamp(22px,3vw,40px);align-items:center;width:100%;
}
.imf-site .im-studio-header-brandphone .im-studio-brand-contact{
  display:grid;justify-items:start;align-content:center;gap:2px;margin:0!important;min-width:0;
}
.imf-site .im-studio-header-brandphone .im-brand{margin:0!important}
.imf-site .im-studio-header-brandphone .im-brand-image{height:72px;width:auto}
.imf-site .im-studio-header-brandphone .im-studio-header-phone{margin:-2px 0 0!important}
.imf-site .im-studio-header-brandphone .im-business-phone{
  display:inline-flex;align-items:baseline;gap:7px;min-height:30px;padding:5px 9px 5px 10px;
  color:#274d73;text-decoration:none;border:1px solid #cfe0ef;border-radius:10px;
  background:linear-gradient(180deg,#f8fbff,#edf5fc);box-shadow:inset 0 1px 0 #fff,0 8px 18px -16px rgba(33,87,139,.5);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.imf-site .im-studio-header-brandphone .im-business-phone-label{
  color:#1570c7;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.12em;font-weight:800;
}
.imf-site .im-studio-header-brandphone .im-business-phone-number{font-size:12px;line-height:1.2;font-weight:720;letter-spacing:.015em}
.imf-site .im-studio-header-brandphone .im-nav-primary{margin-inline-start:0!important;width:100%;min-width:0}
.imf-site .im-studio-header-brandphone .im-nav-primary>.im-menu-list{justify-content:flex-start;gap:2px;width:100%;flex-wrap:nowrap}
.imf-site .im-studio-header-brandphone .im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a,
.imf-site .im-studio-header-brandphone.im-studio-header-menu-cta .im-nav-primary>.im-menu-list>li:last-child>a{margin-inline-start:8px}
@media (hover:hover) and (pointer:fine){
 .imf-site .im-studio-header-brandphone .im-business-phone:hover{
   transform:translateY(-1px);border-color:#acd1ef;background:#f7fbff;box-shadow:inset 0 1px 0 #fff,0 10px 22px -17px rgba(33,87,139,.55);
 }
}
.imf-site .im-studio-footer .im-business-phone{
  display:inline-flex;align-items:baseline;gap:8px;min-height:44px;padding:0;color:var(--im-footer-link);text-decoration:none;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.imf-site .im-studio-footer .im-business-phone-label{font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.11em;font-weight:800;opacity:.72}
.imf-site .im-studio-footer .im-business-phone-number{font-size:13px;line-height:1.6;font-weight:700}
@media(max-width:1160px){
 .imf-site .im-studio-header-brandphone .im-studio-header-inner{grid-template-columns:150px minmax(0,1fr);gap:18px}
 .imf-site .im-studio-header-brandphone .im-brand-image{height:66px}
 .imf-site .im-studio-header-brandphone .im-business-phone{padding:4px 7px;gap:5px}
 .imf-site .im-studio-header-brandphone .im-business-phone-label{display:none}
 .imf-site .im-studio-header-brandphone .im-business-phone-number{font-size:11px}
 .imf-site .im-studio-header-brandphone .im-nav-primary{font-size:12px}
 .imf-site .im-studio-header-brandphone .im-nav-primary a{padding-inline:8px}
}
@media(max-width:900px){
 .imf-site .im-studio-header-brandphone .im-studio-header-inner{grid-template-columns:128px minmax(0,1fr);gap:12px}
 .imf-site .im-studio-header-brandphone .im-brand-image{height:62px}
 .imf-site .im-studio-header-brandphone .im-studio-header-phone{display:none}
 .imf-site .im-studio-header-brandphone .im-nav-primary>.im-menu-list{justify-content:flex-end;flex-wrap:wrap}
}
@media(max-width:780px){
 .imf-site .im-header-shell.im-studio-header.im-studio-header-brandphone{padding:8px 16px}
 .imf-site .im-studio-header-brandphone .im-studio-header-inner{display:flex;align-items:center;justify-content:space-between;gap:14px}
 .imf-site .im-studio-header-brandphone .im-studio-brand-contact{display:block}
 .imf-site .im-studio-header-brandphone .im-brand-image{height:66px}
 .imf-site .im-studio-header-brandphone .im-nav-primary{width:auto;flex:1;display:flex;justify-content:flex-end;flex-wrap:wrap}
 .imf-site .im-studio-header-brandphone .im-nav-primary.im-enhanced>.im-menu-list{width:100%;flex-basis:100%;flex-wrap:nowrap}
}
@media(prefers-reduced-motion:reduce){.imf-site .im-business-phone{transition:none!important}}
@media(forced-colors:active){
 .imf-site .im-business-phone{color:LinkText!important;background:Canvas!important;border:1px solid LinkText!important;box-shadow:none!important}
 .imf-site .im-business-phone-label{color:LinkText!important}
}

/* 0.3.6 — stable three-zone header: brand | menu | contact utility. */
.imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{
  padding:10px 24px;
  min-height:96px;
}
.imf-site .im-studio-header-threezone .im-studio-header-inner{
  display:grid;
  grid-template-columns:146px minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  width:100%;
}
.imf-site .im-studio-header-threezone .im-brand{
  justify-self:start;
  margin:0!important;
}
.imf-site .im-studio-header-threezone .im-brand-image{
  height:76px;
  width:auto;
}
.imf-site .im-studio-header-threezone .im-nav-primary{
  margin:0!important;
  min-width:0;
  width:100%;
  font-size:13px;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list{
  justify-content:flex-start;
  flex-wrap:nowrap;
  gap:2px;
  width:100%;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child{
  display:none;
}
.imf-site .im-studio-header-threezone .im-nav-primary a{
  padding:12px 9px;
  white-space:nowrap;
}
.imf-site .im-studio-header-contact{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
  margin:0!important;
}
.imf-site .im-studio-header-threezone .im-business-phone{
  display:grid;
  grid-template-rows:auto auto;
  align-items:center;
  justify-items:start;
  gap:1px;
  min-width:145px;
  min-height:50px;
  padding:7px 13px 8px;
  color:#173b61;
  text-decoration:none;
  border:1px solid #bfd9ee;
  border-radius:11px;
  background:linear-gradient(180deg,#f9fcff,#eaf4fd);
  box-shadow:inset 0 1px 0 #fff,0 9px 22px -18px rgba(33,87,139,.5);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  white-space:nowrap;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.imf-site .im-studio-header-threezone .im-business-phone-label{
  color:#1672c8;
  font-size:9px;
  line-height:1.15;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:800;
}
.imf-site .im-studio-header-threezone .im-business-phone-number{
  font-size:15px;
  line-height:1.2;
  font-weight:760;
  letter-spacing:.01em;
}
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:12px 17px;
  color:#fff!important;
  text-decoration:none;
  white-space:nowrap;
  font:720 12px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.02em;
  border:1px solid #2f85df;
  border-radius:11px;
  background:linear-gradient(180deg,#1687f8 0%,#0866db 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 12px 24px -16px rgba(8,102,219,.78);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease;
}

.imf-site .im-primary-menu-cta-arrow{font-size:16px;line-height:1}
@media (hover:hover) and (pointer:fine){
  .imf-site .im-studio-header-threezone .im-business-phone:hover{
    transform:translateY(-1px);
    border-color:#9fc9ea;
    background:#f8fcff;
    box-shadow:inset 0 1px 0 #fff,0 13px 26px -20px rgba(33,87,139,.58);
  }
  .imf-site .im-studio-header-threezone .im-primary-menu-cta:hover{
    transform:translateY(-1px);
    filter:brightness(1.03);
    border-color:#70b7ff;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 15px 28px -18px rgba(8,102,219,.82);
  }
}
@media(max-width:1180px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:126px minmax(0,1fr) auto;gap:14px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:68px}
  .imf-site .im-studio-header-threezone .im-nav-primary{font-size:12px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:7px}
  .imf-site .im-studio-header-threezone .im-business-phone{min-width:132px;padding-inline:10px}
  .imf-site .im-studio-header-threezone .im-business-phone-number{font-size:13px}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta{padding-inline:13px;font-size:11px}
}
@media(max-width:1030px){
  .imf-site .im-studio-header-threezone .im-business-phone{display:none}
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:120px minmax(0,1fr) auto}
}
@media(max-width:900px) and (min-width:781px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:104px minmax(0,1fr) auto;gap:10px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:62px}
  .imf-site .im-studio-header-threezone .im-nav-primary{font-size:11px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:5px}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta{padding-inline:10px;font-size:10px}
}
@media(max-width:780px){
  .imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{padding:8px 16px;min-height:0}
  .imf-site .im-studio-header-threezone .im-studio-header-inner{display:flex;align-items:center;justify-content:space-between;gap:14px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:66px}
  .imf-site .im-studio-header-threezone .im-nav-primary{width:auto;flex:1;display:flex;justify-content:flex-end;flex-wrap:wrap;font-size:14px}
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced>.im-menu-list{width:100%;flex-basis:100%;flex-wrap:nowrap}
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child{display:list-item}
  .imf-site .im-studio-header-threezone .im-studio-header-contact{display:none}
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a{
    width:100%;max-width:none!important;justify-content:center;margin-top:8px;color:#fff!important;
    border:1px solid #2f85df;border-radius:10px;background:linear-gradient(180deg,#1687f8,#0866db)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .imf-site .im-studio-header-threezone .im-primary-menu-cta,
  .imf-site .im-studio-header-threezone .im-business-phone{transition:none!important}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta::after{display:none!important;animation:none!important}
  .imf-site .im-nav-primary .sub-menu{transition:none!important}
}
@media(forced-colors:active){
  .imf-site .im-studio-header-threezone .im-business-phone,
  .imf-site .im-studio-header-threezone .im-primary-menu-cta{background:Canvas!important;color:LinkText!important;border:1px solid LinkText!important;box-shadow:none!important}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta::after{display:none!important}
}

/* 0.3.7 header polish — tighter desktop rhythm and a true stacked mobile header. */
.imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{
  min-height:90px;
  padding:8px 22px;
}
.imf-site .im-studio-header-threezone .im-studio-header-inner{
  grid-template-columns:104px minmax(0,1fr) auto;
  gap:14px;
}
.imf-site .im-studio-header-threezone .im-brand-image{
  height:70px;
}
.imf-site .im-studio-header-threezone .im-nav-primary{
  justify-self:stretch;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list{
  justify-content:flex-start;
  gap:0;
}
.imf-site .im-studio-header-threezone .im-nav-primary a{
  padding:10px 7px;
}
.imf-site .im-studio-header-threezone .im-sub-toggle{
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  padding:0;
  border-radius:8px;
  display:inline-grid;
  place-items:center;
  line-height:1;
  vertical-align:middle;
}
.imf-site .im-studio-header-threezone .im-studio-header-contact{
  align-self:center;
  gap:9px;
}
.imf-site .im-studio-header-threezone .im-business-phone,
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  min-height:48px;
  height:48px;
}
.imf-site .im-studio-header-threezone .im-business-phone{
  min-width:150px;
  padding:6px 14px;
}
.imf-site .im-studio-header-threezone .im-business-phone-number{
  font-size:15px;
}
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  padding:10px 16px;
}
@media(max-width:1180px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{
    grid-template-columns:92px minmax(0,1fr) auto;
    gap:10px;
  }
  .imf-site .im-studio-header-threezone .im-brand-image{height:64px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:6px}
  .imf-site .im-studio-header-threezone .im-business-phone{min-width:132px;padding-inline:10px}
}
@media(max-width:1030px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{
    grid-template-columns:88px minmax(0,1fr) auto;
  }
}
@media(max-width:900px) and (min-width:781px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{
    grid-template-columns:80px minmax(0,1fr) auto;
    gap:8px;
  }
  .imf-site .im-studio-header-threezone .im-brand-image{height:58px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:4px}
  .imf-site .im-studio-header-threezone .im-sub-toggle{width:30px;min-width:30px;height:30px;min-height:30px;border-radius:7px}
}
@media(max-width:780px){
  .imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{
    padding:14px 16px 16px;
    min-height:0;
  }
  .imf-site .im-studio-header-threezone .im-studio-header-inner{
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"brand" "nav";
    gap:10px;
    align-items:stretch;
  }
  .imf-site .im-studio-header-threezone .im-brand{
    grid-area:brand;
    justify-self:center;
    align-self:center;
  }
  .imf-site .im-studio-header-threezone .im-brand-image{
    height:78px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary{
    grid-area:nav;
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    font-size:14px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced .im-menu-toggle{
    align-self:center;
    width:min(100%,220px);
    min-height:42px;
    height:42px;
    padding:7px 16px;
    border-radius:10px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced>.im-menu-list{
    width:100%;
    flex-basis:auto;
    flex-wrap:nowrap;
    padding-top:10px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary .im-menu-list>li{
    width:100%;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary .im-menu-list>li>a{
    width:auto;
    max-width:none;
    min-height:44px;
    padding:10px 12px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li:has(> .im-sub-toggle){
    display:grid;
    grid-template-columns:minmax(0,1fr) 40px;
    align-items:center;
    column-gap:6px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li:has(> .im-sub-toggle)>a{
    min-width:0;
  }
  .imf-site .im-studio-header-threezone .im-sub-toggle{
    width:40px;
    min-width:40px;
    height:40px;
    min-height:40px;
    padding:0;
    border-radius:9px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li:has(> .im-sub-toggle)>.sub-menu{
    grid-column:1 / -1;
    width:100%;
    margin:4px 0 8px;
  }
  .imf-site .im-studio-header-threezone .im-studio-header-contact{display:none}
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child{display:list-item}
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a{
    width:100%;
    max-width:none!important;
    justify-content:center;
    margin-top:8px;
    min-height:46px;
  }
}
@media(max-width:420px){
  .imf-site .im-studio-header-threezone .im-brand-image{height:72px}
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced .im-menu-toggle{width:100%}
}

/* --------------------------------------------------------------------------
   Framework 0.3.8 · Studio plan collection / editorial package sections
   Native blocks, same visual family as Studio 02. No site-chrome selectors.
   Every grid's direct children reset native flow margins; gap owns spacing.
   -------------------------------------------------------------------------- */
:is(.imf-site,.editor-styles-wrapper) .im-packages {
  --im-plan-gradient:linear-gradient(90deg,#168cda 0%,#738dd0 34%,#e56896 64%,#ff9433 100%);
  --im-plan-line:#d2e2f1;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-packages-hero-grid,.im-plan-collection,.im-plan-card-top,.im-plan-scope,.im-review-guide,.im-review-guide-item,.im-packages-story-grid,.im-packages-section-heading,.im-packages-fit-row)>* {
  min-width:0;margin:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages.im-packages-hero {
  position:relative;isolation:isolate;overflow:hidden;color:#f5faff;
  padding-block:clamp(52px,5.8vw,84px);
  background:radial-gradient(ellipse at 89% 34%,#235a8140,transparent 53%),linear-gradient(118deg,#0a2542,#103453);
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero::after {
  content:"";position:absolute;z-index:-1;pointer-events:none;inline-size:720px;block-size:720px;
  border:1px solid #93c7ea0d;border-radius:50%;inset-inline-end:-150px;inset-block-start:-155px;
  box-shadow:0 0 0 64px #96ccf105,0 0 0 130px #96ccf104;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-grid {
  display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(0,.78fr);gap:clamp(44px,6.5vw,104px);align-items:center;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-copy h1 {
  font-size:clamp(40px,4.7vw,68px);font-weight:400;line-height:1.07;letter-spacing:-.035em;
  max-width:720px;margin:0 0 24px;text-wrap:balance;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero h1 strong {font-weight:400;color:#96cdf9}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero .im-eyebrow {color:#b7d2e8}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-copy .im-lead {color:#cfdeeb;max-width:610px;font-size:18px;line-height:1.75;margin-bottom:20px}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-jump {margin:0;font-size:14px;font-weight:650}
:is(.imf-site,.editor-styles-wrapper) .im-packages-jump a {color:#e7f4ff;display:inline-flex;align-items:center;min-height:44px;gap:20px;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-packages-jump a:hover {text-decoration:underline;text-underline-offset:.3em}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note {
  position:relative;border:1px solid #7cb0d44a;border-radius:24px;padding:30px 32px;
  background:linear-gradient(145deg,#d4eaff13,#cde5ff06);box-shadow:inset 0 1px 0 #ffffff15,0 24px 50px -44px #0008;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-packages-hero-note,.im-plan-card,.im-review-guide)::before {
  content:"";position:absolute;top:0;left:28px;right:28px;height:3px;background:var(--im-plan-gradient);pointer-events:none;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-icon {
  display:flex;align-items:center;justify-content:center;flex-shrink:0;inline-size:50px;block-size:50px;margin:0;
  border:1px solid #cfe3f6;border-radius:14px;background:linear-gradient(145deg,#fff,#eaf4ff);
  padding:11px;box-sizing:border-box;box-shadow:inset 0 1px 0 #fff,0 9px 20px -16px #234d7840;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-icon img {
  width:26px;height:26px;max-width:none;display:block;object-fit:contain;margin:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-plan-icon {margin-bottom:18px}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-overline {
  font:700 11px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.095em;text-transform:uppercase;color:#536c88;margin:0 0 15px;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note .im-plan-overline {color:#b9d4eb;margin-bottom:12px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note .im-packages-note-title {font-size:31px;line-height:1.15;color:#f7fbff;margin-bottom:16px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note .im-packages-note-copy {font-size:14px;line-height:1.8;color:#d2e3f1;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note .im-packages-note-signature {font-size:12px;color:#b8d0e3;margin:22px 0 0;padding-top:17px;border-top:1px solid #93b8d233}
/* Plan comparison: one level, equal tops, readable plan features and aligned actions. */
:is(.imf-site,.editor-styles-wrapper) .im-packages.im-packages-comparison {background:linear-gradient(180deg,#f1f7fd,#f8fbff);padding-block:clamp(56px,5.8vw,82px)}
:is(.imf-site,.editor-styles-wrapper) .im-packages-section-heading {display:grid!important;grid-template-columns:1.2fr 1fr;gap:40px;align-items:end;margin-bottom:34px!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages-section-title h2 {margin:0;font-size:clamp(32px,3.25vw,46px);line-height:1.13}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-section-caption {font-size:16px;line-height:1.7;color:#526b86;justify-self:end}
:is(.imf-site,.editor-styles-wrapper) .im-plan-collection {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card {
  --im-plan-copy:#425e7a;--im-plan-ink:#122f50;--im-plan-check:#0872d8;
  position:relative;display:flex;flex-direction:column;align-self:stretch;min-width:0;
  padding:30px;border:1px solid #cfdfef;border-radius:24px;color:var(--im-plan-ink);
  background:linear-gradient(170deg,#fff 70%,#f7fbff);box-shadow:0 18px 45px -35px #244f793d;
  transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card>* {margin-block:0!important;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-top {display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-badge {
  font:700 11px/1.35 system-ui,sans-serif;letter-spacing:.01em;inline-size:fit-content;max-inline-size:100%;
  padding:7px 10px;border-radius:999px;border:1px solid #d0e1f2;background:#f0f7ff;color:#31567c;margin:0;
}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card .im-plan-card-heading {margin-top:22px!important;margin-bottom:24px!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card h3 {font-size:32px;line-height:1.12;color:var(--im-plan-ink);margin:0 0 13px;letter-spacing:-.03em}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card .im-plan-intro {font-size:15px;line-height:1.7;min-block-size:5.1em;color:var(--im-plan-copy);margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-plan-scope {display:grid!important;grid-template-columns:1fr 1fr;gap:14px;align-items:start;border-block:1px solid #dae7f3;padding-block:19px;margin-bottom:23px!important}
:is(.imf-site,.editor-styles-wrapper) .im-plan-scope-item+.im-plan-scope-item {border-inline-start:1px solid #d6e5f2;padding-inline-start:20px}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-scope-label {color:var(--im-plan-copy);font-size:11px;font-weight:600;line-height:1.5;margin:0 0 6px}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-scope-value {color:var(--im-plan-ink);font:400 12px/1.5 system-ui,sans-serif;margin:0;white-space:normal}
:is(.imf-site,.editor-styles-wrapper) .im-plan-scope-value strong {display:inline-block;font-size:30px;font-weight:600;line-height:1.12;letter-spacing:-.04em;color:inherit;margin-inline-end:5px}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card>.im-plan-overline {margin-top:22px!important;margin-bottom:10px!important;color:var(--im-plan-copy)}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-features {list-style:none;margin:0;padding:0;display:grid;gap:0}
:is(.imf-site,.editor-styles-wrapper) .im-plan-features>li {
  position:relative;list-style:none;margin:0!important;padding:9px 0 9px 23px;
  font:400 14px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--im-plan-copy);border-bottom:1px solid #e8eff6;
}
:is(.imf-site,.editor-styles-wrapper) .im-plan-features>li:last-child {border-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-plan-features>li::before {
  content:"";position:absolute;inset-inline-start:2px;top:16px;width:5px;height:9px;
  border:solid var(--im-plan-check);border-width:0 1.8px 1.8px 0;transform:rotate(40deg);pointer-events:none;
}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card .im-plan-card-footer {margin-top:auto!important;padding-top:27px}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-footer .wp-block-buttons {display:block!important;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-footer .wp-block-button {display:block;width:100%;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-footer .wp-element-button {
  display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:100%;
  min-height:50px;padding:13px 17px;line-height:1.45;border-radius:11px;font-size:13px;font-weight:650;
  color:#134c85;background:#edf6ff;border:1px solid #bfd8ef;box-shadow:inset 0 1px 0 #fff;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card-featured {
  --im-plan-ink:#f6fbff;--im-plan-copy:#d5e5f4;--im-plan-check:#8ed0ff;
  background:radial-gradient(ellipse at 100% 0,#1c679950,transparent 57%),linear-gradient(145deg,#102f50,#103657 70%,#0c2a48);
  border-color:#557e9f;box-shadow:0 24px 54px -35px #0a2b5070;
}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-featured .im-plan-badge-featured {background:#ffeddb;border-color:#ffc38a;color:#733400}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-featured :is(.im-plan-scope,.im-plan-scope-item+.im-plan-scope-item) {border-color:#638bad55}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-featured .im-plan-features>li {border-color:#6b96b629}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-featured .im-plan-card-footer .wp-element-button {color:#fff;background:linear-gradient(180deg,#0973e4,#0662cc);border-color:#4a98e5;box-shadow:inset 0 1px 0 #ffffff26,0 9px 24px -18px #00162b}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-footer .wp-element-button:focus-visible {outline:3px solid #198bff;outline-offset:4px;box-shadow:0 0 0 2px #fff}
:is(.imf-site,.editor-styles-wrapper) .im-plan-card-featured .wp-element-button:focus-visible {outline-color:#b7e3ff}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-arrow {display:inline-block;font-size:18px;font-weight:400;line-height:1;transition:transform .16s ease;flex-shrink:0}
:is(.imf-site,.editor-styles-wrapper) .im-packages-fit-row {display:flex!important;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px!important;margin-bottom:34px!important;padding-inline:4px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-fit-row p {font-size:13px;line-height:1.6;color:#4b6682}
:is(.imf-site,.editor-styles-wrapper) .im-packages-fit-row a {color:#075ebc;font-weight:600;text-decoration:underline;text-underline-offset:.25em;display:inline-flex;align-items:center;min-height:32px;gap:10px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-fit-row .im-packages-timing-note {font-size:12px;color:#526a83}
/* Small, purposeful review guide; no tooltip-only explanations. */
:is(.imf-site,.editor-styles-wrapper) .im-review-guide {position:relative;display:grid!important;grid-template-columns:.78fr 1fr 1fr;gap:30px;align-items:start;padding:30px;border:1px solid #cfdfef;border-radius:22px;background:#ffffffb3;box-shadow:inset 0 1px 0 #fff}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide .im-eyebrow {font-size:9px!important;letter-spacing:.11em;margin-bottom:14px!important}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide-title h3 {font-size:28px;line-height:1.15;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide-item {display:grid!important;grid-template-columns:34px 1fr;gap:12px;padding-inline-start:24px;border-inline-start:1px solid #dbe7f2}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide .im-plan-icon {width:32px;height:32px;padding:5px;border-radius:9px;box-shadow:none}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide .im-plan-icon img {width:20px;height:20px}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide-copy h3 {font:650 15px/1.5 system-ui,sans-serif;letter-spacing:0;margin:3px 0 8px}
:is(.imf-site,.editor-styles-wrapper) .im-review-guide-copy p {font-size:13px;line-height:1.8;color:#506982;margin:0}
/* Same testimonial language as the homepage, at a size suited to this quotation. */
:is(.imf-site,.editor-styles-wrapper) .im-packages.im-packages-story {background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-packages-story-grid {display:grid!important;grid-template-columns:1fr 1.08fr;align-items:center;gap:clamp(36px,5vw,76px)}
:is(.imf-site,.editor-styles-wrapper) .im-packages-story-copy h2 {font-size:clamp(32px,3.1vw,44px);line-height:1.13}
:is(.imf-site,.editor-styles-wrapper) .im-packages-story-copy>p:not(.im-eyebrow) {font-size:16px;line-height:1.8;color:#4a6580}
:is(.imf-site,.editor-styles-wrapper) .im-packages-story-copy>p.im-lead {font-size:18px;color:#233f5f}
:is(.imf-site,.editor-styles-wrapper) .im-packages-story-link a {font-size:14px;font-weight:650;min-height:44px;display:inline-flex;align-items:center;gap:18px;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-testimonial {padding:32px;background:linear-gradient(135deg,#fff,#f2f8ff)}
:is(.imf-site,.editor-styles-wrapper) .im-packages-testimonial .im-studio-quote p {font-size:clamp(22px,1.8vw,25px);line-height:1.5;margin-bottom:24px}
/* Contact block stays native; its typography is not overridden by .im-studio. */
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-section {background:linear-gradient(180deg,#f0f7fd,#f8fbff);padding-block:clamp(56px,6vw,88px);color:#173250}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-grid {display:grid!important;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(36px,5vw,76px)}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-grid>* {min-width:0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy h2 {font:400 clamp(34px,3.3vw,46px)/1.13 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 24px;color:#173250}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy .im-eyebrow {color:#3f678e;font-size:10px!important;letter-spacing:.16em;margin:0 0 22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy .im-eyebrow::before {background:linear-gradient(90deg,#168cda,#e56896,#ff9433);height:2px;width:25px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy p {font:400 15px/1.8 system-ui,sans-serif;color:#4e6883;margin:0 0 20px}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy p.im-lead {font-size:18px;color:#284667}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note {display:flex!important;align-items:center;gap:16px;padding-block:23px;border-block:1px solid #ccdfef;margin-block:26px!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note>* {margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note .im-plan-icon {flex:none;width:42px;height:42px;padding:9px;border:1px solid #ccdef2;border-radius:12px;background:#fff;box-sizing:border-box}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note .im-plan-icon img {width:24px;height:24px;display:block}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note p {font-size:13px;line-height:1.7}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-note strong {font-weight:650;color:#244766}
:is(.imf-site,.editor-styles-wrapper) .im-packages-contact-phone a {font-size:23px;font-weight:650;color:#15578e;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
@media(hover:hover) and (pointer:fine) {
 .imf-site .im-packages .im-plan-card:hover {transform:translateY(-3px);border-color:#a8c9e7;box-shadow:0 26px 50px -32px #254f794a}
 .imf-site .im-plan-card .wp-element-button:hover {background:#dfedfc;color:#143d68;border-color:#91b9dd}
 .imf-site .im-plan-card-featured .im-plan-card-footer .wp-element-button:hover {background:#065abc;color:#fff;border-color:#86baff}
 .imf-site .im-packages a:hover>.im-plan-arrow {transform:translateX(3px)}
 .imf-site .im-packages-jump a:hover>.im-plan-arrow {transform:translateY(2px)}
}
@media(max-width:1100px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-grid {gap:38px;grid-template-columns:1.2fr .9fr}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-collection {gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-card .im-plan-intro {min-block-size:6.8em}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-scope {gap:10px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-scope-item+.im-plan-scope-item {padding-inline-start:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-badge {padding:6px 8px;font-size:10px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-scope-value strong {font-size:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-review-guide {grid-template-columns:1fr 1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-review-guide-title {grid-column:1/-1}
 :is(.imf-site,.editor-styles-wrapper) .im-review-guide-item {padding-inline-start:0;border:0}
}
@media(max-width:950px) {
 :is(.imf-site,.editor-styles-wrapper) .im-plan-collection {grid-template-columns:1fr;gap:24px;max-width:640px;margin-inline:auto!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card {padding:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-card .im-plan-intro {min-block-size:0}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-badge {font-size:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-features>li {font-size:15px}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-card-footer .wp-element-button {font-size:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-contact-grid {grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-contact-copy {max-width:640px}
}
@media(max-width:780px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-grid,:is(.imf-site,.editor-styles-wrapper) .im-packages-section-heading,:is(.imf-site,.editor-styles-wrapper) .im-packages-story-grid {grid-template-columns:1fr;gap:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-copy h1 {font-size:clamp(38px,8vw,56px)}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note {max-width:620px;padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero::after {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-section-caption {justify-self:start;font-size:15px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-section-caption br {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-review-guide {grid-template-columns:1fr;padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-review-guide-item {border-top:1px solid #d6e5f2;padding-top:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-fit-row {margin-bottom:28px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-contact-section {padding-inline:24px}
}
@media(max-width:370px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-card h3 {font-size:29px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-copy h1 {font-size:37px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-testimonial {padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-contact-section {padding-inline:20px}
}
@media(prefers-reduced-motion:reduce) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-plan-card,.im-plan-arrow,.wp-element-button) {transition:none!important;animation:none!important;transform:none!important}
}
@media(forced-colors:active) {
 :is(.imf-site,.editor-styles-wrapper) :is(.im-packages,.im-packages-contact-section,.im-plan-card,.im-packages-hero-note,.im-review-guide,.im-plan-icon) {background:Canvas!important;color:CanvasText!important;box-shadow:none!important;border-color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages :is(p,h1,h2,h3,li,strong,span,cite) {color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages .wp-element-button {background:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-plan-badge,.im-plan-scope,.im-plan-scope-item,.im-plan-features>li) {background:Canvas!important;color:CanvasText!important;border-color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-plan-features>li::before {border-color:CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero::after,:is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-plan-card,.im-packages-hero-note,.im-review-guide)::before {display:none}
}
@media print {
 :is(.imf-site,.editor-styles-wrapper) :is(.im-packages,.im-packages-contact-section) {padding:20px 0!important;background:white!important;color:black!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages :is(.im-plan-card,.im-packages-hero-note,.im-review-guide) {background:white!important;color:black!important;box-shadow:none!important;border:1px solid #888!important;break-inside:avoid}
 :is(.imf-site,.editor-styles-wrapper) .im-packages :is(p,h1,h2,h3,strong,li,span,cite) {color:black!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero::after {display:none}
}
/* Mobile hero note becomes a compact editorial aside, not another tall hero. */
@media(max-width:780px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-packages-hero-note {display:grid!important;grid-template-columns:42px minmax(0,1fr);gap:10px 16px;align-items:start}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-plan-icon {grid-column:1;grid-row:1/4;width:42px;height:42px;padding:8px;margin:0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-plan-overline {grid-column:2;grid-row:1;margin:0!important;font-size:10px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-packages-note-title {grid-column:2;grid-row:2;margin:0!important;font-size:27px}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-packages-note-copy {grid-column:2;grid-row:3;margin:0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-packages-hero-note>.im-packages-note-signature {grid-column:2;grid-row:4;margin:5px 0 0!important;padding-top:13px;font-size:11px}
}

:is(.imf-site,.editor-styles-wrapper) .im-plan-features>li strong {font-weight:650;color:var(--im-plan-ink)}

/* Framework 0.3.9 — two-plan subscription comparison / managed-care components.
   Reuses Studio plan cards, icon tiles, gradients and native block structure.
   No header/footer/menu/body-layout changes. */
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-collection.im-plan-collection-two {
  grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1120px;margin-inline:auto!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-card {
  padding:34px;min-width:0;
}
:is(.imf-site,.editor-styles-wrapper) .im-subscription-card .im-plan-card-heading {
  margin-block:20px 22px!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-subscription-card .im-plan-intro {
  min-block-size:3.4em;max-inline-size:480px;
}
:is(.imf-site,.editor-styles-wrapper) .im-subscription-cost {
  border-block:1px solid #d7e5f2;padding-block:20px;margin-bottom:22px!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-subscription-card.im-plan-card-featured .im-subscription-cost {
  border-color:#8cb1d333;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-price {
  display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin:0 0 6px;
  font:400 14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--im-plan-copy);
}
:is(.imf-site,.editor-styles-wrapper) .im-subscription-price strong {
  font:600 clamp(42px,4.2vw,54px)/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.045em;color:var(--im-plan-ink);
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-description {
  color:var(--im-plan-copy);font-size:12px;line-height:1.6;margin:0;
}
:is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-footnote {
  font:400 12px/1.65 system-ui,sans-serif;color:var(--im-plan-copy);margin:0 0 14px;min-block-size:1.65em;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-plans .im-packages-fit-row {
  max-width:1120px;margin:24px auto 0!important;align-items:flex-start;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-plans .im-packages-timing-note {max-width:395px}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care {background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-grid {
  display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,76px);align-items:center;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-grid>* {min-width:0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-copy h2 {font-size:clamp(32px,3.15vw,46px);line-height:1.14}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-copy>p:not(.im-eyebrow) {font-size:16px;line-height:1.85;color:#4b6681}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-copy>p.im-lead {font-size:18px;color:#284462}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-copy>p.im-managed-safety-note {
  font-size:13px;line-height:1.75;border-inline-start:2px solid #dc8b51;padding-inline-start:17px;margin-top:25px;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel {
  position:relative;overflow:hidden;padding:32px;border:1px solid #557e9f;border-radius:24px;color:#f6fbff;
  background:radial-gradient(ellipse at 100% 0,#1c679935,transparent 55%),linear-gradient(140deg,#102f50,#103657);
  box-shadow:inset 0 1px 0 #ffffff15,0 24px 54px -42px #0b2c505c;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel::before {
  content:"";position:absolute;inset:0 28px auto;height:3px;background:var(--im-plan-gradient);pointer-events:none;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel>.im-plan-overline {color:#bfdaee;margin:0 0 22px}
:is(.imf-site,.editor-styles-wrapper) .im-care-item {
  display:grid!important;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:16px;
  border-top:1px solid #8cb1d32e;padding-block:20px;margin:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-care-item:last-child {padding-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-care-item>* {margin:0!important;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel .im-plan-icon {
  width:40px;height:40px;padding:9px;border-radius:12px;background:#ffffff0e;border-color:#8bb7d54d;box-shadow:inset 0 1px 0 #ffffff0d;
}
:is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel .im-plan-icon img {width:20px;height:20px;filter:brightness(0) invert(1)}
:is(.imf-site,.editor-styles-wrapper) .im-care-item-copy h3 {
  font:650 16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;color:#f4f9fe;margin:0 0 6px;
}
:is(.imf-site,.editor-styles-wrapper) .im-care-item-copy p {font-size:14px;line-height:1.7;color:#d2e2f0;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-managed-support {background:linear-gradient(180deg,#f6faff,#fff)}
:is(.imf-site,.editor-styles-wrapper) .im-managed-support .im-studio-personal-copy h2 {font-size:clamp(32px,3.2vw,46px)}
:is(.imf-site,.editor-styles-wrapper) .im-managed-support .im-studio-process-panel {background:#fff}
@media(max-width:1100px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-card {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-subscription-card .im-plan-intro {min-block-size:5.1em}
 :is(.imf-site,.editor-styles-wrapper) .im-subscription-card h3 {min-block-size:2.24em}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-grid {gap:32px}
}
@media(max-width:780px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-plan-collection.im-plan-collection-two {grid-template-columns:1fr;gap:24px;max-width:620px}
 :is(.imf-site,.editor-styles-wrapper) .im-subscription-card .im-plan-intro,
 :is(.imf-site,.editor-styles-wrapper) .im-subscription-card h3 {min-block-size:0}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-grid {grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-plans .im-packages-timing-note {max-width:100%}
}
@media(max-width:370px) {
 :is(.imf-site,.editor-styles-wrapper) .im-packages .im-subscription-card {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-care-item {gap:12px;grid-template-columns:34px 1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel .im-plan-icon {width:34px;height:34px;padding:7px}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel .im-plan-icon img {width:18px;height:18px}
}
@media(forced-colors:active) {
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel {background:Canvas;color:CanvasText;box-shadow:none;border-color:CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel::before {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel :is(p,h3) {color:CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-care-item {border-color:CanvasText}
}
@media print {
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel {background:#fff!important;color:#000;box-shadow:none;border-color:#888}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel::before {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-managed-care-panel :is(p,h3) {color:#000}
}

/* Framework 0.3.10 — reusable inquiry layout and contact-information panels.
   Uses native blocks plus the existing Contact plugin. No global chrome, form
   delivery, markup rewriting, or previous-page selectors change in this pass. */
:is(.imf-site,.editor-styles-wrapper) .im-inquiry {
  --im-inquiry-line:#cfdfef;
  --im-inquiry-gradient:linear-gradient(90deg,#168cda 0%,#738dd0 34%,#e56896 64%,#ff9433 100%);
  font:400 16px/1.8 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#163250;isolation:isolate;max-width:none!important;margin:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry :is(.im-inquiry-hero-grid,.im-inquiry-grid,.im-inquiry-call-row,.im-inquiry-detail-heading,.im-inquiry-location,.im-inquiry-paths)>* {
  min-width:0;margin-block:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry p {margin:0 0 18px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry p:last-child {margin-block-end:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inner {position:relative;max-width:var(--im-wide,1240px);margin-inline:auto!important;width:100%;z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry.im-inquiry-hero {
  padding-block:clamp(40px,3.7vw,52px) clamp(44px,4vw,56px);position:relative;overflow:hidden;color:#f5faff;
  background:radial-gradient(ellipse at 93% 24%,#235a8140,transparent 55%),linear-gradient(118deg,#0a2542,#103453);
}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero::after {
  content:"";position:absolute;pointer-events:none;inset-inline-end:-145px;inset-block-start:-230px;
  width:610px;height:610px;border:1px solid #93c7ea0c;border-radius:50%;
  box-shadow:0 0 0 64px #96ccf105,0 0 0 130px #96ccf104;
}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero-grid {display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,6vw,96px);align-items:end}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-eyebrow {color:#bdd6eb;margin-bottom:22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-eyebrow::before {background:var(--im-inquiry-gradient);height:2px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero h1 {
  font:400 clamp(40px,4.25vw,62px)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.035em;
  margin:0;text-wrap:balance;max-width:670px;color:#f5faff;
}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero h1 strong {font-weight:400;color:#96cdf9}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero-copy {padding-bottom:4px;max-width:465px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead {font-size:18px;line-height:1.85;color:#d3e2ef;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-signature {font-size:12px;font-weight:550;letter-spacing:.015em;color:#bdd4e6;padding-top:20px;margin-top:20px;border-top:1px solid #406280;inline-size:fit-content}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-signature a {color:#d3eaff;display:inline-flex;align-items:center;min-height:32px;margin-inline-start:5px;font-weight:650;text-underline-offset:.22em}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-body {background:linear-gradient(180deg,#f0f6fc 0%,#f8fbff 80%,#fff);padding-block:44px 52px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-grid {display:grid!important;grid-template-columns:minmax(0,1.62fr) minmax(300px,.88fr);gap:32px;align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form {min-width:0;scroll-margin-block-start:32px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-sidebar {display:grid!important;gap:24px;align-content:start;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-sidebar>* {margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-card {position:relative;padding:30px;border:1px solid var(--im-inquiry-line);border-radius:24px;background:linear-gradient(145deg,#fff,#f7fbff);box-shadow:0 20px 44px -36px #244e7952;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-card::before {content:"";position:absolute;pointer-events:none;top:0;left:28px;right:28px;height:3px;background:var(--im-inquiry-gradient)}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-icon {width:46px;height:46px;display:grid;place-items:center;padding:10px;flex:none;border:1px solid #cfe3f6;border-radius:13px;background:linear-gradient(145deg,#fff,#eaf4ff);box-shadow:inset 0 1px 0 #fff,0 8px 18px -15px #234d7840;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-icon img {width:24px;height:24px;display:block;max-width:none;margin:0;object-fit:contain}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-call-row {display:flex!important;gap:16px;align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-overline {font:700 10px/1.65 system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#4a6b8e;margin:0 0 5px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-phone {margin:0;font:650 clamp(20px,1.85vw,26px)/1.3 system-ui,sans-serif;letter-spacing:-.025em}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-phone a {display:inline-flex;align-items:center;min-height:44px;color:#15558a;text-decoration:none;white-space:nowrap}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-phone a:hover {color:#0756b5;text-decoration:underline;text-underline-offset:.2em}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-contact-card>.im-inquiry-muted {font-size:13px;line-height:1.75;color:#526c85;margin:16px 0 0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hours-group {margin:23px 0 0!important;padding-top:22px;border-top:1px solid #d9e5f0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-detail-heading {display:flex!important;gap:11px;align-items:center;margin-bottom:13px!important}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-detail-icon {width:22px;height:22px;padding:0;display:block;flex:none;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-detail-icon img {width:22px;height:22px;display:block;max-width:none;margin:0;object-fit:contain}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-small-title {font:650 14px/1.5 system-ui,sans-serif;letter-spacing:0;color:#183e63;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-hours {padding:0;list-style:none;margin:0;display:block}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hours>li {list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:0!important;padding:8px 0;border-bottom:1px solid #e5edf5;font:400 13px/1.7 system-ui,sans-serif;color:#526881}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hours>li:last-child {border-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hours>li strong {font-weight:550;color:#244767;white-space:nowrap}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-location {display:flex!important;gap:11px;align-items:flex-start;margin-top:18px!important;padding-top:20px;border-top:1px solid #d9e5f0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-location-name {font:650 13px/1.7 system-ui,sans-serif;color:#244767;margin:0 0 3px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-location-caption {font-size:12px;line-height:1.7;color:#526c85;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-card.im-inquiry-training {background:radial-gradient(ellipse at 100% 0,#235f8a45,transparent 70%),linear-gradient(145deg,#103150,#0d2945);border-color:#537b9d;color:#f1f8ff}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-training>.im-inquiry-icon {background:#244867;border-color:#557da0;margin-bottom:20px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-training .im-inquiry-icon img {filter:brightness(0) invert(1)}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-training>.im-inquiry-overline {color:#bbd5e9;margin-bottom:14px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-training h2 {font:400 clamp(26px,2.2vw,31px)/1.17 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:0 0 18px;color:#f5faff}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-training p:not(.im-inquiry-overline) {font-size:14px;line-height:1.85;color:#d0e1ee;margin:0}
/* The existing form's markup, labels, response state and sending logic stay intact. */
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf {margin:0;max-width:none;width:100%}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact .imcf-intro {padding:30px 36px 24px;background:linear-gradient(145deg,#fff,#eff6fd);border-bottom:1px solid #d9e5f2}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact .imcf-intro h2 {font-size:32px;line-height:1.16;max-width:none}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact .imcf-intro-text {font-size:14px;line-height:1.8;max-width:580px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact .imcf-panel {padding:26px 36px 32px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf-panel-heading {margin-bottom:20px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-paths {display:grid!important;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px!important;padding-top:24px;border-top:1px solid #cfdfed}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-path {margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-path:last-child {justify-self:end}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry .im-inquiry-path-label {font-size:12px;line-height:1.7;color:#526c85;margin:0 0 4px}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-path p {margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-path a {display:inline-flex;gap:14px;align-items:center;min-height:44px;font-size:14px;font-weight:650;color:#075fb9;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-path a:hover {text-decoration:underline;text-underline-offset:.3em}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry a:focus-visible {outline:3px solid #1678d3;outline-offset:4px;border-radius:4px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .imf-site .im-inquiry-arrow {display:inline-block;transition:transform .18s ease}
 .imf-site .im-inquiry-path a:hover .im-inquiry-arrow {transform:translateX(3px)}
}
@media(max-width:1100px) {
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-grid {grid-template-columns:minmax(0,1.5fr) minmax(285px,1fr);gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card {padding:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-call-row {gap:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-phone {font-size:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact :is(.imcf-intro,.imcf-panel) {padding-inline:26px}
}
@media(max-width:860px) {
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-grid {grid-template-columns:1fr;gap:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-sidebar {grid-template-columns:1fr 1fr;gap:20px;align-items:start}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero-grid {gap:30px;grid-template-columns:1.05fr .95fr}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero h1 {font-size:42px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead {font-size:16px}
}
@media(max-width:640px) {
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry.im-inquiry-hero {padding-block:40px 42px;padding-inline:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero-grid {grid-template-columns:1fr;gap:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero h1 {font-size:clamp(38px,7.2vw,46px);max-width:540px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero-copy {max-width:520px;padding:0}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-signature {padding-top:14px;margin-top:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero::after {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-body {padding:28px 20px 32px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-sidebar {grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact :is(.imcf-intro,.imcf-panel) {padding:25px 22px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact .imcf-intro h2 {font-size:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-paths {grid-template-columns:1fr;gap:16px;margin-top:28px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-path:last-child {justify-self:start}
}
@media(max-width:360px) {
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-body {padding-inline:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card {padding:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-form .imcf--compact :is(.imcf-intro,.imcf-panel) {padding:24px 18px}
}
@media(prefers-reduced-motion:reduce) {
 .imf-site .im-inquiry-arrow {transition:none!important;transform:none!important}
}
@media(forced-colors:active) {
 :is(.imf-site,.editor-styles-wrapper) :is(.im-inquiry,.im-inquiry-card,.im-inquiry-training,.im-inquiry-icon) {background:Canvas!important;color:CanvasText!important;box-shadow:none!important;border-color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry :is(h1,h2,h3,p,strong,span) {color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry a {color:LinkText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry :is(a,button):focus-visible {outline-color:Highlight!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero::after,
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card::before {display:none}
}
@media print {
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry {background:#fff!important;color:#000!important;padding:20px 0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry :is(h1,h2,h3,p,strong,span,a) {color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) :is(.im-inquiry-grid,.im-inquiry-hero-grid,.im-inquiry-sidebar) {display:block!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card {background:#fff!important;border-color:#888!important;box-shadow:none!important;margin-block:16px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero::after,
 :is(.imf-site,.editor-styles-wrapper) .im-inquiry-card::before {display:none}
}

/* Static mobile navigation when scripting is explicitly disabled. The media
   feature does NOT match during normal script loading, so it does not reintroduce
   the previous first-paint expanded-menu jump. Script blockers may not expose
   this state; see release notes. Normal enhanced header behavior is unchanged. */
@media (max-width:780px) and (scripting:none) {
 .imf-site .im-studio-header-threezone .im-nav-primary:not(.im-enhanced) {display:block;width:100%}
 .imf-site .im-studio-header-threezone .im-nav-primary:not(.im-enhanced)>.im-menu-list {display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;width:100%;gap:0}
 .imf-site .im-studio-header-threezone .im-nav-primary:not(.im-enhanced)>.im-menu-list>li {width:100%;min-width:0}
}

/* 0.3.11 — Global flush accent rails.
   Align the blue/pink/orange rail with each rounded card edge instead of floating inward. */
:is(.imf-site,.editor-styles-wrapper) :is(
  .im-studio-art,
  .im-studio-service-card,
  .im-studio-foundation-panel,
  .im-studio-process-panel,
  .im-studio-review-card,
  .im-studio-invitation,
  .im-packages-hero-note,
  .im-plan-card,
  .im-review-guide,
  .im-managed-care-panel,
  .im-inquiry-card
){overflow:hidden}

:is(.imf-site,.editor-styles-wrapper) :is(
  .im-studio-art,
  .im-studio-service-card,
  .im-studio-foundation-panel,
  .im-studio-process-panel,
  .im-studio-review-card,
  .im-studio-invitation,
  .im-packages-hero-note,
  .im-plan-card,
  .im-review-guide,
  .im-managed-care-panel,
  .im-inquiry-card
)::before{
  inset-inline:0!important;
  top:0!important;
  height:3px!important;
  opacity:.92;
}

/* The contact-form plugin is intentionally styled from the Framework here so
   its accent follows the same site-wide card language without a plugin update. */
.imf-site .imcf.imcf::before,
.editor-styles-wrapper .imcf.imcf::before{
  inset-inline:0!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:3px!important;
  border-radius:0!important;
}

/* Trust badge is itself a card; keep its rail flush with the rounded shell. */
.imf-site .im-verified-email{overflow:hidden}
.imf-site .im-verified-email::before{
  left:0!important;
  right:0!important;
  inset-inline:0!important;
  top:0!important;
  height:3px!important;
}

/* Framework 0.3.12 — specialty service compositions.
   Reuses Studio tokens, plan cards, icons, native form and blue-action sheen.
   Scoped to .im-services-page: existing pages and site chrome are unchanged. */
:is(.imf-site,.editor-styles-wrapper) .im-services-page {
  --im-sp-gradient:linear-gradient(90deg,#168cda,#7891d1 34%,#e56896 65%,#ff9433);
}
:is(.imf-site,.editor-styles-wrapper) .im-services-page :is(.im-sp-centered-intro,.im-sp-guest-band,.im-sp-guest,.im-sp-two-offers,.im-sp-editorial-grid,.im-sp-detail-row,.im-sp-local-opening,.im-sp-local-stack,.im-sp-local-signal,.im-sp-factor-band,.im-sp-audit-grid,.im-sp-audit-list,.im-sp-audit-row,.im-sp-contact-reversed,.im-sp-malware-opening,.im-sp-recovery-grid,.im-sp-recovery-top,.im-sp-aftercare)>* {min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-white {background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-light {background:linear-gradient(170deg,#f0f7fe,#f8fbff)}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-dark {background:radial-gradient(ellipse at 95% 20%,#205c8740,transparent 60%),linear-gradient(118deg,#0b2846,#103858);color:#f5faff}
:is(.imf-site,.editor-styles-wrapper) .im-services-page h1 {font:400 clamp(40px,4.6vw,68px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.038em;margin:0 0 26px;text-wrap:balance}
:is(.imf-site,.editor-styles-wrapper) .im-services-page h1 strong {font-weight:400;color:#1367aa}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-dark h1 strong {color:#96cdf9}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-dark .im-eyebrow {color:#bed5e8}
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-dark .im-lead {color:#d0e1ee;font-size:18px;line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-card {position:relative;border:1px solid #cddfee;border-radius:24px;overflow:hidden;box-shadow:0 20px 48px -38px #173c6355;background:linear-gradient(150deg,#fff,#f6faff)}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-card::before {content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--im-sp-gradient);pointer-events:none;opacity:.94}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-kicker {font:700 11px/1.6 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#3d6389;margin:0 0 15px}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-dark-note {font-size:13px;line-height:1.8;color:#b8d1e5;max-width:550px;margin:24px 0 0}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .wp-block-buttons {margin-block:26px 0}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .wp-block-button {margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .wp-element-button {line-height:1.5}
/* Restaurant: one open invitation with a horizontal guest-journey strip. */
:is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-restaurant-opening {padding-block:clamp(52px,5.2vw,80px) 54px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro {text-align:center;max-width:850px;margin-inline:auto!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro h1 {margin-block:22px 24px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro .im-lead {font-size:18px;line-height:1.8;max-width:710px;margin-inline:auto!important;color:#43607c}
:is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro .wp-block-buttons {display:flex;justify-content:center;margin-top:28px!important}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-guest-band {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:28px 8px;margin-top:46px!important;background:#ffffffc9}
:is(.imf-site,.editor-styles-wrapper) .im-sp-guest {display:grid!important;grid-template-columns:46px minmax(0,1fr);gap:18px;padding:4px 28px;align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-sp-guest+.im-sp-guest {border-inline-start:1px solid #d5e5f2}
:is(.imf-site,.editor-styles-wrapper) .im-sp-guest .im-plan-icon {width:46px;height:46px;padding:9px;border-radius:13px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-guest-copy h3 {font:650 17px/1.5 system-ui,sans-serif;letter-spacing:0;margin:0 0 5px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-guest-copy p {font-size:13px;line-height:1.7;color:#58718b;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-two-offers {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-restaurant-plan {padding:34px;max-width:none}
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-intro {min-height:3.4em}
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-card-heading {margin-top:22px!important;margin-bottom:22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-features>li {padding-block:12px;font-size:15px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-features>li::before {top:19px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-card-footer {padding-top:26px}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-under-note {font-size:13px;line-height:1.8;color:#536b84;max-width:870px;margin:22px 0 0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-editorial-grid {display:grid!important;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,5.5vw,78px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-editorial-panel {padding:32px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row {display:grid!important;grid-template-columns:50px minmax(0,1fr);gap:20px;padding-block:25px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row:first-child {padding-top:3px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row:last-child {padding-bottom:3px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row+.im-sp-detail-row {border-top:1px solid #d4e4f2}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-copy h3 {font-size:24px;line-height:1.2;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-detail-copy p {font-size:14px;line-height:1.8;color:#506b85;margin:0}
/* Local SEO: connected signals, factor strip, and a numbered editorial audit. */
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-opening {display:grid!important;grid-template-columns:1.3fr .8fr;gap:clamp(36px,6vw,84px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-stack {display:grid!important;gap:16px}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-local-stack>.im-sp-kicker {color:#b8d2e8;margin-bottom:2px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-signal {display:grid!important;grid-template-columns:44px minmax(0,1fr);gap:17px;align-items:center;padding:22px;border:1px solid #7aabce4d;border-radius:18px;background:linear-gradient(140deg,#e9f5ff12,#e9f5ff05);box-shadow:inset 0 1px 0 #ffffff10}
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-signal:nth-of-type(2) {margin-inline-start:22px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-signal:nth-of-type(3) {margin-inline-start:44px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-local-signal .im-plan-icon {width:44px;height:44px;padding:9px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-signal-copy h3 {font:650 16px/1.5 system-ui,sans-serif;letter-spacing:0;color:#f3f9ff;margin:0 0 4px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-signal-copy p {font-size:13px;line-height:1.7;color:#c6dbed;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor-band {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px!important;border-top:1px solid #c9ddec;border-bottom:1px solid #c9ddec}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor {padding:28px 34px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor:first-child {padding-inline-start:0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor+.im-sp-factor {border-inline-start:1px solid #c9ddec}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-index {font:700 12px/1.5 system-ui,sans-serif;letter-spacing:.05em;color:#1666a8;margin:0 0 15px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor h3 {font-size:28px;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-factor p:not(.im-sp-index) {font-size:15px;line-height:1.75;color:#4a6782;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-grid {display:grid!important;grid-template-columns:.82fr 1.18fr;gap:clamp(36px,6vw,88px);align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-intro .im-lead {font-size:17px;line-height:1.8;color:#46627f}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-list {border-top:1px solid #ccdfef}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row {display:grid!important;grid-template-columns:22px 46px minmax(0,1fr);gap:18px;align-items:start;padding-block:26px;border-bottom:1px solid #ccdfef}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row>.im-sp-index {padding-top:13px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row .im-plan-icon {width:46px;height:46px;padding:9px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-copy h3 {font-size:25px;margin:0 0 12px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-copy p {font-size:15px;line-height:1.8;color:#4e6983;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-sp-contact-reversed {display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(36px,5vw,76px);align-items:start}
/* Malware: a direct help panel and an early inquiry; recovery steps follow. */
:is(.imf-site,.editor-styles-wrapper) .im-sp-malware-opening {display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:clamp(40px,7vw,100px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-help-card {padding:32px;background:#f7fbff;color:#15395b}
:is(.imf-site,.editor-styles-wrapper) .im-sp-help-card .im-plan-icon {margin-bottom:22px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-help-card .im-sp-help-phone {font:700 clamp(22px,2.4vw,32px)/1.3 system-ui,sans-serif;letter-spacing:-.025em;margin:0 0 20px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-help-phone a {display:inline-flex;align-items:center;min-height:44px;color:#155a94;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-sp-help-copy {font-size:15px;line-height:1.8;color:#476783}
:is(.imf-site,.editor-styles-wrapper) .im-sp-help-note {font-size:13px;line-height:1.8;padding-top:18px;border-top:1px solid #d2e3ef;color:#536b81}
:is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-grid {display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:36px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-step {border-top:1px solid #c7dced;padding-top:22px;position:relative}
:is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-top {display:flex!important;align-items:center;justify-content:space-between;gap:14px;margin-bottom:23px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-step-index {font:400 28px/1 Georgia,serif;color:#1964a3}
:is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-step h3 {font-size:25px;line-height:1.22;margin-bottom:15px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-step>p {font-size:15px;line-height:1.85;color:#4c6782}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-aftercare {display:grid!important;grid-template-columns:1.2fr .85fr;gap:clamp(32px,6vw,86px);align-items:center;padding:clamp(28px,4.5vw,58px);background:linear-gradient(125deg,#0d2b49,#123e62);color:#f7fbff;border-color:#446b8a}
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-eyebrow {color:#c4dced;margin-top:22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-lead {font-size:17px;color:#d0e1ef}
:is(.imf-site,.editor-styles-wrapper) .im-sp-after-links {border-inline-start:1px solid #6c94b342;padding-inline-start:36px}
:is(.imf-site,.editor-styles-wrapper) .im-sp-after-links .im-sp-kicker {color:#b8d3e8}
:is(.imf-site,.editor-styles-wrapper) .im-sp-after-links h3 {font-size:27px;color:#f5faff}
:is(.imf-site,.editor-styles-wrapper) .im-sp-after-links p:not(.im-sp-kicker) {font-size:14px;line-height:1.8;color:#caddeb}
:is(.imf-site,.editor-styles-wrapper) .im-sp-after-links a {color:#baddfa}
/* Form remains the plugin renderer; no label/field/notification overrides. */
:is(.imf-site,.editor-styles-wrapper) .im-sp-contact .imcf {width:100%;margin:0;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-form-slot {min-width:0}
@media(max-width:1100px) {
 :is(.imf-site,.editor-styles-wrapper) .im-sp-guest {padding-inline:20px;gap:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-two-offers {gap:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-restaurant-plan {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-local-opening {grid-template-columns:1.2fr .9fr;gap:32px}
}
@media(max-width:950px) {
 :is(.imf-site,.editor-styles-wrapper) .im-sp-guest-band {padding:24px 8px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-guest {grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-editorial-grid,:is(.imf-site,.editor-styles-wrapper) .im-sp-audit-grid {grid-template-columns:1fr;gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-audit-intro {max-width:700px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-contact-reversed {grid-template-columns:1fr;gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-contact-reversed .im-packages-contact-copy {max-width:660px}
}
@media(max-width:780px) {
 :is(.imf-site,.editor-styles-wrapper) .im-services-page h1 {font-size:clamp(37px,8vw,56px)}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page.im-sp-restaurant-opening {padding-block:48px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro {text-align:start}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-centered-intro .wp-block-buttons {justify-content:flex-start}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-two-offers,:is(.imf-site,.editor-styles-wrapper) .im-sp-local-opening,:is(.imf-site,.editor-styles-wrapper) .im-sp-malware-opening,:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare {grid-template-columns:1fr!important;gap:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-local-stack {max-width:650px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-local-signal:nth-of-type(n) {margin-inline-start:0}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-guest-band {grid-template-columns:1fr;padding:8px 24px;margin-top:32px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-guest {grid-template-columns:46px minmax(0,1fr);gap:16px;padding:22px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-guest+.im-sp-guest {border-inline-start:0;border-top:1px solid #d5e5f2}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-plan .im-plan-intro {min-height:0}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-factor-band {grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-factor,:is(.imf-site,.editor-styles-wrapper) .im-sp-factor:first-child {padding:24px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-factor+.im-sp-factor {border-inline-start:0;border-top:1px solid #c9ddec}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-after-links {border-inline-start:0;border-top:1px solid #6c94b342;padding-inline-start:0;padding-block-start:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-help-card {padding:28px;max-width:620px}
}
@media(max-width:480px) {
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-restaurant-plan,:is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-editorial-panel {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row {grid-template-columns:40px minmax(0,1fr);gap:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-detail-row .im-plan-icon {width:40px;height:40px;padding:7px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row {grid-template-columns:20px minmax(0,1fr);gap:13px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row>.im-plan-icon {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-audit-row>.im-sp-index {padding-top:5px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-grid {grid-template-columns:1fr;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-step {padding-top:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-sp-recovery-top {margin-bottom:18px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-plan-card h3 {font-size:29px}
}
@media(forced-colors:active) {
 :is(.imf-site,.editor-styles-wrapper) .im-services-page,:is(.imf-site,.editor-styles-wrapper) .im-services-page :is(.im-sp-card,.im-sp-local-signal,.im-sp-factor-band,.im-sp-factor,.im-sp-audit-row,.im-sp-recovery-step,.im-sp-after-links) {background:Canvas!important;color:CanvasText!important;border-color:CanvasText!important;box-shadow:none!important}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page :is(p,h1,h2,h3,strong,span) {color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-card::before {display:none}
}
@media print {
 :is(.imf-site,.editor-styles-wrapper) .im-services-page,:is(.imf-site,.editor-styles-wrapper) .im-services-page :is(.im-sp-card,.im-sp-local-signal) {background:#fff!important;color:#000!important;box-shadow:none!important;border-color:#999!important}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page :is(p,h1,h2,h3,strong,span,a) {color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page .im-sp-card::before {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-services-page :is(.im-sp-restaurant-plan,.im-sp-recovery-step,.im-sp-audit-row) {break-inside:avoid}
}

/* Framework 0.3.13 — development studio compositions.
 * Scoped to .im-dev, composed from supported native blocks. The three-node strip
 * is a service illustration, not a dashboard or a claim of measured results.
 * No global chrome, previous pages, form logic or scripts are modified.
 */
:is(.imf-site,.editor-styles-wrapper) .im-dev {
 --im-dev-ink:#173452;--im-dev-muted:#4d6884;--im-dev-line:#cedeef;
 --im-dev-rail:linear-gradient(90deg,#168cda 0%,#7891d1 34%,#e56896 65%,#ff9433 100%);
}
:is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-masthead-grid,.im-dev-flowboard,.im-dev-flow-item,.im-dev-section-heading,.im-dev-tooling-grid,.im-dev-extension-stack,.im-dev-card-heading,.im-dev-connection-panel,.im-dev-connection-row,.im-dev-experience-grid,.im-dev-principle)>* {min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flow-copy,.im-dev-card-heading-copy,.im-dev-connection-row-copy,.im-dev-principle-copy)>* {margin-block-start:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev h2 {font-size:clamp(32px,3.2vw,46px);line-height:1.13}
:is(.imf-site,.editor-styles-wrapper) .im-dev h2 strong {font-weight:400;color:#236899}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-overline {font:700 10px/1.6 system-ui,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#496c8e;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-caption {font-size:12px;line-height:1.75;color:#4e6a86;margin-top:18px}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-text-link {margin:20px 0 0;font-size:14px;font-weight:650}
:is(.imf-site,.editor-styles-wrapper) .im-dev-text-link a {min-height:44px;display:inline-flex;gap:16px;align-items:center;color:#075dbb;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-dev-text-link a:hover {text-decoration:underline;text-underline-offset:.25em}
/* Open editorial masthead. The short supporting copy sits beside—not under—the
 * display title; a single connected service band completes the composition. */
:is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-masthead {background:linear-gradient(145deg,#f6fbff,#edf5fd);padding-block:clamp(54px,5.5vw,80px) clamp(48px,5vw,72px)}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-grid {display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr);gap:clamp(36px,5.3vw,76px);align-items:end}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-heading h1 {font:400 clamp(40px,4.8vw,67px)/1.075 Georgia,'Times New Roman',serif;letter-spacing:-.037em;color:#15314f;text-wrap:balance;margin:0;max-width:760px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-heading h1 strong {font-weight:400;color:#1769a8;display:block;text-wrap:balance}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-copy {max-width:430px;padding-bottom:5px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-copy .im-lead {font-size:18px;line-height:1.8;color:#385976;margin-bottom:24px}
:is(.imf-site,.editor-styles-wrapper) .im-dev .wp-block-buttons {margin-block:24px 0}
:is(.imf-site,.editor-styles-wrapper) .im-dev .wp-block-button {margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev .wp-element-button {line-height:1.5}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard {position:relative;isolation:isolate;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px!important;padding:32px 12px;color:#eef8ff;border:1px solid #416b8e;border-radius:24px;overflow:hidden;background:radial-gradient(ellipse at 100% 0%,#205a8040,transparent 60%),linear-gradient(118deg,#0d2b48,#103e63);box-shadow:0 24px 55px -39px #193b6366}
:is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flowboard,.im-dev-surface,.im-dev-connection-panel)::before {content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--im-dev-rail);pointer-events:none;opacity:.94}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item {position:relative;display:grid!important;grid-template-columns:46px minmax(0,1fr);gap:18px;align-items:start;padding:5px 26px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item+.im-dev-flow-item {border-inline-start:1px solid #80b0d23d}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item:not(:last-child)::after {content:"";position:absolute;inset-inline-end:-4px;inset-block-start:26px;width:7px;height:7px;transform:rotate(-45deg);border-inline-end:1px solid #9bc9ea;border-block-end:1px solid #9bc9ea;background:#103653;pointer-events:none;z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-plan-icon {width:46px;height:46px;padding:9px;border-radius:13px;background:#ffffff0d;border-color:#a1cae74a;box-shadow:inset 0 1px 0 #ffffff16}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-plan-icon img {width:26px;height:26px;filter:brightness(0) invert(1)}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-dev-overline {color:#b8d4e9;margin-bottom:6px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-dev-flow-title {font:400 25px/1.25 Georgia,serif;letter-spacing:-.02em;color:#f6fbff;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-flow-copy p:not(.im-dev-overline) {font-size:13px;line-height:1.8;color:#c8dded;margin:0;max-width:240px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-heading h1 br {display:none}
/* One large WordPress foundation plus two deliberately related extension panels. */
:is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-tooling {background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-dev-section-heading {display:grid!important;grid-template-columns:1.25fr 1fr;gap:clamp(28px,5vw,72px);align-items:end;margin-bottom:36px!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev-section-heading h2 {margin-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-section-caption {max-width:450px;font-size:16px;line-height:1.85;color:var(--im-dev-muted);justify-self:end}
:is(.imf-site,.editor-styles-wrapper) .im-dev-tooling-grid {display:grid!important;grid-template-columns:1.12fr 1fr;gap:28px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-surface {position:relative;padding:34px;border:1px solid var(--im-dev-line);border-radius:24px;overflow:hidden;box-shadow:0 20px 46px -39px #244d7757;background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-foundation-card {background:linear-gradient(140deg,#f5faff,#edf5fd)}
:is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading {display:flex!important;gap:18px;align-items:center;margin-bottom:22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading .im-plan-icon {flex:none;width:50px;height:50px;padding:10px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading .im-plan-icon img {width:28px;height:28px;object-fit:contain}
:is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading .im-dev-overline {margin-bottom:6px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading h3 {font-size:27px;line-height:1.2;margin:0;color:var(--im-dev-ink)}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-card-lead {font-size:16px;line-height:1.85;color:#3e5f7d;margin:0 0 26px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-foundation-row {padding-block:20px;border-top:1px solid #d1e1ef;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev-foundation-row:last-child {padding-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev-foundation-row h3 {font:650 15px/1.5 system-ui,sans-serif;letter-spacing:0;color:#244d71;margin:0 0 7px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-foundation-row p {font-size:14px;line-height:1.8;color:#4b6883;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev-extension-stack {display:grid!important;grid-template-rows:1fr 1fr;gap:24px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-extension-card>p {font-size:15px;line-height:1.8;color:#4c6883}
:is(.imf-site,.editor-styles-wrapper) .im-dev-extension-card .im-dev-text-link {font-size:14px;margin-top:16px}
:is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-extension-ice {background:linear-gradient(155deg,#fff,#f7fbff)}
/* Integrations are explained in two clear rows; no faux API console or metrics. */
:is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-connections {background:#f6faff;padding-block:28px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel {position:relative;display:grid!important;grid-template-columns:1.15fr 1fr;gap:clamp(36px,5vw,76px);align-items:center;padding:clamp(28px,4vw,54px);border:1px solid #426e91;border-radius:26px;overflow:hidden;color:#f4faff;background:radial-gradient(ellipse at 100% 0%,#20669944,transparent 64%),linear-gradient(125deg,#0d2b47,#103b61);box-shadow:0 24px 55px -40px #15395c70}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel .im-eyebrow {color:#b8d1e5}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel h2 {color:#f6fbff;font-size:clamp(32px,3.1vw,45px);margin-bottom:24px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel h2 strong {color:#a2d3f9}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel .im-lead {color:#d5e4f0;font-size:17px;line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel .im-dev-connection-note {font-size:14px;color:#c1d6e7;line-height:1.85;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-rows {min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row {display:grid!important;grid-template-columns:44px minmax(0,1fr);gap:20px;padding:28px 0;border-top:1px solid #426883;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row:last-child {border-bottom:1px solid #426883}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row .im-plan-icon {width:44px;height:44px;padding:8px;background:#ffffff10;border-color:#98bfd74a;box-shadow:inset 0 1px 0 #ffffff12}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row .im-plan-icon img {width:26px;height:26px;filter:brightness(0) invert(1)}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row .im-dev-overline {color:#a9cbe6;margin-bottom:5px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row h3 {font-size:26px;line-height:1.2;color:#f2f8ff;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row p:not(.im-dev-overline) {font-size:14px;line-height:1.8;color:#c7ddeb;margin:0}
/* Open numbered principles give the eye a break from cards. */
:is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-experience {background:linear-gradient(180deg,#f6faff,#fff)}
:is(.imf-site,.editor-styles-wrapper) .im-dev-experience-grid {display:grid!important;grid-template-columns:1.05fr 1fr;gap:clamp(36px,6vw,88px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-dev-experience-copy .im-lead {font-size:17px;line-height:1.85;color:#43617f;max-width:530px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-principle {display:grid!important;grid-template-columns:40px minmax(0,1fr);gap:18px;padding-block:24px;border-top:1px solid #cfdfed;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-dev-principle:last-child {border-bottom:1px solid #cfdfed}
:is(.imf-site,.editor-styles-wrapper) .im-dev-principle .im-dev-principle-number {font:650 12px/1.5 system-ui,sans-serif;letter-spacing:.03em;color:#1865a5;width:36px;height:36px;border:1px solid #c9def1;border-radius:50%;background:#edf6ff;display:grid;place-items:center;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev-principle h3 {font-size:25px;line-height:1.2;color:#193a5b;margin:0 0 9px}
:is(.imf-site,.editor-styles-wrapper) .im-dev-principle-copy p {font-size:14px;line-height:1.8;color:#4c6882;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-contact {border-top:1px solid #e0eaf4}
@media(hover:hover) and (pointer:fine) {
 .imf-site .im-dev-text-link a:hover .im-plan-arrow {transform:translateX(3px)}
}
@media(max-width:1100px) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-grid {grid-template-columns:1.3fr 1fr;gap:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-heading h1 {font-size:clamp(42px,5.2vw,57px)}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item {grid-template-columns:1fr;gap:16px;padding:6px 24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item:not(:last-child)::after {inset-block-start:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-surface {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading {gap:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading h3 {font-size:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel {gap:36px}
}
@media(max-width:900px) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-grid {grid-template-columns:1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-heading h1 {max-width:750px;font-size:clamp(40px,6.5vw,57px)}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-masthead-copy {max-width:660px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-section-heading {grid-template-columns:1fr;gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-section-caption {justify-self:start;max-width:660px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel {grid-template-columns:1fr;gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-copy {max-width:680px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-experience-grid {gap:34px}
}
@media(max-width:780px) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-masthead {padding-block:48px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard {grid-template-columns:1fr;gap:0;padding:10px 24px;margin-top:32px!important;border-radius:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item {grid-template-columns:44px minmax(0,1fr);gap:18px;padding:24px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item+.im-dev-flow-item {border-inline-start:0;border-block-start:1px solid #80b0d23d}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item:not(:last-child)::after {display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-copy p:not(.im-dev-overline) {max-width:430px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-dev-flow-title {font-size:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-tooling-grid {grid-template-columns:1fr;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-extension-stack {grid-template-rows:auto auto}
 :is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-surface {padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading h3 {font-size:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev.im-dev-connections {padding-block:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel {padding:28px;border-radius:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-experience-grid {grid-template-columns:1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-principle {padding-block:22px}
}
@media(max-width:380px) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard {padding-inline:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item {gap:13px;grid-template-columns:40px minmax(0,1fr)}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-plan-icon {width:40px;height:40px;padding:7px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flowboard .im-plan-icon img {width:24px;height:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev .im-dev-surface {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading {align-items:start;gap:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading .im-plan-icon {width:40px;height:40px;padding:7px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading .im-plan-icon img {width:24px;height:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-card-heading h3 {font-size:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-panel {padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row {grid-template-columns:36px minmax(0,1fr);gap:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row .im-plan-icon {width:36px;height:36px;padding:6px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-connection-row .im-plan-icon img {width:22px;height:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-dev-principle {gap:12px;grid-template-columns:36px minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev *, :is(.imf-site,.editor-styles-wrapper) .im-dev *::before, :is(.imf-site,.editor-styles-wrapper) .im-dev *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active) {
 :is(.imf-site,.editor-styles-wrapper) .im-dev,
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flowboard,.im-dev-surface,.im-dev-connection-panel,.im-plan-icon,.im-dev-principle-number) {background:Canvas!important;color:CanvasText!important;border-color:CanvasText!important;box-shadow:none!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(p,h1,h2,h3,strong) {color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flowboard,.im-dev-surface,.im-dev-connection-panel)::before,
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item::after {display:none!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev img {filter:none!important}
}
@media print {
 :is(.imf-site,.editor-styles-wrapper) .im-dev {background:#fff!important;color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flowboard,.im-dev-surface,.im-dev-connection-panel) {background:#fff!important;color:#000!important;box-shadow:none!important;border:1px solid #999}
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(p,h1,h2,h3,strong) {color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev :is(.im-dev-flowboard,.im-dev-surface,.im-dev-connection-panel)::before,
 :is(.imf-site,.editor-styles-wrapper) .im-dev-flow-item::after {display:none!important}
 :is(.imf-site,.editor-styles-wrapper) .im-dev img {filter:none!important}
}

/* Framework 0.3.14 — five deliberately different page compositions.
 * Native block content selects these reusable components; no raw CSS comes from imports.
 * Navigation, contact processing and the existing shared button enhancement are unchanged.
 */
:is(.imf-site,.editor-styles-wrapper) .im-refresh{
 --im-r-ink:#15334f;--im-r-muted:#516b83;--im-r-blue:#0b65bb;--im-r-line:#d3e3f1;
 --im-r-rail:linear-gradient(90deg,#048ee2 0%,#a47bb7 44%,#ed668c 65%,#ff943d 100%);
 color:var(--im-r-ink);line-height:1.75;
}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .wp-block-group{margin-block-start:0}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-inner{max-width:var(--im-wide,1240px)}
:is(.imf-site,.editor-styles-wrapper) .im-refresh :is(h1,h2,h3){font-family:Georgia,'Times New Roman',serif;font-weight:400;text-wrap:balance;overflow-wrap:break-word;letter-spacing:0;line-height:1.16}
:is(.imf-site,.editor-styles-wrapper) .im-refresh h1{font-size:clamp(40px,4.8vw,70px);line-height:1.09;margin:0 0 26px;max-width:none}
:is(.imf-site,.editor-styles-wrapper) .im-refresh h2{font-size:clamp(32px,3.4vw,46px);margin:0 0 22px}
:is(.imf-site,.editor-styles-wrapper) .im-refresh h3{font-size:clamp(23px,2.1vw,29px);margin:0 0 14px}
:is(.imf-site,.editor-styles-wrapper) .im-refresh p{font-size:16px;margin:0 0 18px}
:is(.imf-site,.editor-styles-wrapper) .im-refresh strong{font-weight:650}
:is(.imf-site,.editor-styles-wrapper) .im-refresh h1 strong{color:#1169b0;font-weight:400}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-lead{font-size:clamp(17px,1.45vw,19px);line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-muted{color:var(--im-r-muted);line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-caption{font-size:13px;line-height:1.75;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-overline{font:700 10px/1.75 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-number{font:600 12px/1.4 system-ui,sans-serif;letter-spacing:.03em;color:#1766aa;margin:0;min-width:26px}
:is(.imf-site,.editor-styles-wrapper) .im-r-white{background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-r-ice{background:linear-gradient(145deg,#f0f7fd,#f9fcff)}
:is(.imf-site,.editor-styles-wrapper) .im-r-actions{display:flex!important;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:30px!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-actions>*{margin:0!important;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .wp-block-buttons{margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .wp-element-button{gap:22px;max-width:100%;font-size:14px;min-height:50px;line-height:1.45;white-space:normal;text-align:center}
:is(.imf-site,.editor-styles-wrapper) .im-r-arrow{display:inline-block;flex:0 0 auto;font-size:19px;transition:transform .18s ease}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-textlink{font:650 14px/1.65 system-ui,sans-serif;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-r-textlink a{display:inline-flex;gap:14px;align-items:center;min-height:44px;color:#0961b4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32em}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-phone{font:650 21px/1.4 system-ui,sans-serif;margin:22px 0 14px}
:is(.imf-site,.editor-styles-wrapper) .im-r-phone a{color:#185887;display:inline-flex;gap:16px;min-height:44px;align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-r-rail{position:relative;border:1px solid var(--im-r-line);border-radius:24px;overflow:hidden;isolation:isolate}
:is(.imf-site,.editor-styles-wrapper) .im-r-rail::before{content:"";position:absolute;inset:0 0 auto;height:3px;pointer-events:none;background:var(--im-r-rail);z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-r-card{background:linear-gradient(145deg,#fff,#f7fbff);padding:clamp(26px,3.5vw,46px);box-shadow:0 24px 48px -43px #163e7470}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel{background:radial-gradient(ellipse at 100% 0%,#27628c50,transparent 65%),linear-gradient(130deg,#0b2a49,#103b61);padding:clamp(30px,4vw,54px);color:#f4f9ff;box-shadow:0 24px 48px -42px #17385880;border-color:#527899}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel :is(.im-eyebrow,.im-r-overline){color:#b4cee6}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel :is(.im-r-muted,.im-r-caption){color:#c4d8e9}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-lead{color:#dfedf8}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-textlink a{color:#b9dfff}
:is(.imf-site,.editor-styles-wrapper) .im-r-icon{display:grid;place-items:center;box-sizing:border-box;flex:0 0 auto;inline-size:50px;block-size:50px;line-height:0;margin:0!important;padding:0;border:1px solid #cde3f8;border-radius:14px;background:linear-gradient(150deg,#fff,#eaf4ff);box-shadow:0 8px 18px -16px #276eac80}
:is(.imf-site,.editor-styles-wrapper) .im-r-icon>img{display:block;width:27px;height:27px;max-width:none;max-height:none;object-fit:contain;margin:0!important;padding:0;border:0}
:is(.imf-site,.editor-styles-wrapper) .im-r-heading-split{display:grid!important;grid-template-columns:1.05fr 1fr;gap:clamp(32px,5vw,76px);align-items:end;margin-bottom:40px!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-heading-split>*{min-width:0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-heading-split h2{margin-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-r-feature{display:grid!important;grid-template-columns:50px minmax(0,1fr);gap:20px;padding:24px 0;border-top:1px solid #d4e4f2;align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-r-feature>*{min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-feature h3{font:650 16px/1.5 system-ui,sans-serif;margin:0 0 8px}
:is(.imf-site,.editor-styles-wrapper) .im-r-feature p{font-size:14px;line-height:1.8;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-feature{border-color:#426783}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-feature p{color:#c2d7e8}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-list{list-style:none;padding:0;margin:22px 0 28px}
:is(.imf-site,.editor-styles-wrapper) .im-r-list>li{position:relative;padding:14px 0 14px 27px;margin:0;border-top:1px solid #dbe7f2;font-size:15px;line-height:1.75}
:is(.imf-site,.editor-styles-wrapper) .im-r-list>li::before{content:"✓";position:absolute;left:0;top:14px;color:#096bd0;font:650 16px/1.65 system-ui}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-list>li{border-color:#3e617e;color:#d7e6f2}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-list>li::before{color:#92d1ff}
/* Home owns the dark, illustration-led masthead. */
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead{padding-block:clamp(52px,5.7vw,82px);background:radial-gradient(ellipse at 83% 49%,#1b588553,transparent 56%),#0b2947;color:#f7fbff;position:relative;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead-grid{display:grid!important;grid-template-columns:1.5fr .75fr;gap:clamp(36px,6vw,84px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead-copy h1{font-size:clamp(43px,5.15vw,76px);max-width:860px;line-height:1.055}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead h1 strong{color:#9ed1fb}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead :is(.im-eyebrow,.im-r-caption){color:#bbd3e8}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead .im-r-lead{max-width:610px;color:#d7e6f2}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead .im-r-textlink a{color:#d4ebff}
:is(.imf-site,.editor-styles-wrapper) .im-home-masthead .im-r-caption{margin-top:30px}
:is(.imf-site,.editor-styles-wrapper) .im-home-art{position:relative;text-align:center;border-radius:160px 160px 28px 28px;padding:34px 24px 30px;border:1px solid #7ebce431;background:linear-gradient(175deg,#87c9f71c,#bce1ff05);max-width:380px;justify-self:end;width:100%;box-shadow:inset 0 1px 0 #cae4f51c}
:is(.imf-site,.editor-styles-wrapper) .im-home-art::before{content:"";position:absolute;inset:-16px;border:1px solid #7ebce41a;border-radius:178px 178px 44px 44px;pointer-events:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-art .im-r-overline{color:#bddaf0;font-size:9px;letter-spacing:.16em;margin-bottom:18px}
:is(.imf-site,.editor-styles-wrapper) .im-home-bulb{margin:0 auto!important;width:100%;max-width:185px}
:is(.imf-site,.editor-styles-wrapper) .im-home-bulb img{display:block;width:100%;height:auto;aspect-ratio:278 / 482;object-fit:contain;transform:none;filter:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-art .im-home-art-caption{font:400 21px/1.45 Georgia,serif;color:#e1f0fc;margin-top:22px}
:is(.imf-site,.editor-styles-wrapper) .im-home-service-index{border-top:1px solid #cbddeb}
:is(.imf-site,.editor-styles-wrapper) .im-home-service-row{display:grid!important;grid-template-columns:28px 54px minmax(0,1fr) minmax(130px,185px);gap:24px;align-items:center;padding:30px 0;border-bottom:1px solid #d8e6f1}
:is(.imf-site,.editor-styles-wrapper) .im-home-service-row>*{margin:0!important;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-service-row h3{font-size:29px;margin:0 0 10px}
:is(.imf-site,.editor-styles-wrapper) .im-home-service-copy p{color:var(--im-r-muted);font-size:15px;max-width:600px}
:is(.imf-site,.editor-styles-wrapper) .im-home-story-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-story-step{border-top:1px solid #cbdeef;padding-top:23px;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-story-step .im-r-number{margin-bottom:15px}
:is(.imf-site,.editor-styles-wrapper) .im-home-story-step h3{font-size:23px}
:is(.imf-site,.editor-styles-wrapper) .im-home-story-step p:not(.im-r-number){font-size:15px;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-home-performance{padding-block:36px}
:is(.imf-site,.editor-styles-wrapper) .im-home-performance-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(36px,5.5vw,78px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-home-principles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 26px}
:is(.imf-site,.editor-styles-wrapper) .im-home-principles .im-r-feature{grid-template-columns:1fr;gap:14px;padding-top:18px;padding-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-principles .im-r-icon{width:40px;height:40px;border-radius:11px;background:#244e73;border-color:#557d9e}
:is(.imf-site,.editor-styles-wrapper) .im-home-principles .im-r-icon img{width:22px;height:22px;filter:brightness(0) invert(1)}
:is(.imf-site,.editor-styles-wrapper) .im-home-proof-grid{display:grid!important;grid-template-columns:.85fr 1.3fr;align-items:center;gap:clamp(30px,5vw,74px)}
:is(.imf-site,.editor-styles-wrapper) .im-r-stars{width:105px;margin:0 0 22px!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-stars img{display:block;width:100%;height:auto}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-quote{margin:0!important;padding:0!important;border:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-quote p{font:400 clamp(23px,2.2vw,29px)/1.52 Georgia,serif;color:#183b60}
:is(.imf-site,.editor-styles-wrapper) .im-r-quote cite{display:block;font:650 14px/1.7 system-ui,sans-serif;border-top:1px solid #d4e3f1;padding-top:20px;margin-top:24px;color:#36577a}
/* Web design: a magazine-like, open masthead and an honest visual-language strip. */
:is(.imf-site,.editor-styles-wrapper) .im-design-masthead{padding-block:clamp(50px,5.5vw,82px) 56px}
:is(.imf-site,.editor-styles-wrapper) .im-design-title-grid{display:grid!important;grid-template-columns:1.35fr .85fr;gap:clamp(28px,5vw,70px);align-items:end}
:is(.imf-site,.editor-styles-wrapper) .im-design-title-grid h1{font-size:clamp(42px,4.9vw,70px);line-height:1.12;margin:0;max-width:770px}
:is(.imf-site,.editor-styles-wrapper) .im-design-intro .im-r-lead{font-size:17px;color:var(--im-r-muted);margin-bottom:26px}
:is(.imf-site,.editor-styles-wrapper) .im-design-language{display:grid!important;grid-template-columns:.75fr 1fr 1.25fr;margin-top:48px!important;border-top:1px solid #c8dceb;border-bottom:1px solid #c8dceb}
:is(.imf-site,.editor-styles-wrapper) .im-design-language>div{min-width:0;padding:28px 32px;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-design-language>div+div{border-left:1px solid #d7e5f1}
:is(.imf-site,.editor-styles-wrapper) .im-design-language>div:first-child{padding-left:0}
:is(.imf-site,.editor-styles-wrapper) .im-design-language>div:last-child{padding-right:0}
:is(.imf-site,.editor-styles-wrapper) .im-design-language .im-design-letterform{font:400 56px/1 Georgia,serif;color:#103657;margin:0 0 16px}
:is(.imf-site,.editor-styles-wrapper) .im-design-palette{display:flex;gap:10px;align-items:center;height:56px;margin:0 0 16px!important}
:is(.imf-site,.editor-styles-wrapper) .im-design-dot{display:inline-block;inline-size:34px;block-size:34px;border-radius:50%;border:1px solid #d3e1ed;flex:0 1 34px}
:is(.imf-site,.editor-styles-wrapper) .im-design-dot-navy{background:#0c2d4b}.im-design-dot-blue{background:#1477db}.im-design-dot-ice{background:#e7f2fc}.im-design-dot-orange{background:#f58220}
:is(.imf-site,.editor-styles-wrapper) .im-design-detail{display:flex;gap:20px;align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-design-detail h3{font-size:24px;margin-bottom:12px}
:is(.imf-site,.editor-styles-wrapper) .im-design-detail p{font-size:14px;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-design-experience-grid{display:grid!important;grid-template-columns:1fr 1.04fr;gap:clamp(30px,5vw,70px);align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-design-feature{margin-top:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-design-feature .im-r-textlink{margin-top:28px}
:is(.imf-site,.editor-styles-wrapper) .im-design-principles .im-r-feature:last-child{padding-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-design-content-grid{display:grid!important;grid-template-columns:1fr 1.1fr;gap:clamp(32px,5vw,76px);align-items:start}
/* E-commerce: centered storefront cover with a horizontal shopping-journey shelf. */
:is(.imf-site,.editor-styles-wrapper) .im-commerce-masthead{background:radial-gradient(ellipse at 50% -15%,#245d8760,transparent 65%),#0b2c4b;color:#f6fbff;padding-bottom:50px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading{text-align:center;max-width:900px;margin-inline:auto}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading h1{font-size:clamp(43px,5.1vw,72px);max-width:100%}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading h1 strong{color:#a0d2fb}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading .im-r-lead{max-width:735px;margin:0 auto 30px;color:#d2e3f1}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading .im-eyebrow{color:#b9d3e9}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-heading .wp-block-buttons{display:flex;justify-content:center}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px!important;background:#f4f9ff;color:#193c5d;box-shadow:0 24px 45px -34px #061c3080;border-color:#aac9e3;border-radius:20px;padding:26px 14px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item{display:grid!important;grid-template-columns:50px minmax(0,1fr);gap:0 17px;padding:0 24px;margin:0!important;align-content:start}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item+.im-commerce-route-item{border-left:1px solid #cfdfed}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item>.im-r-number{grid-column:2;margin-bottom:8px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item>.im-r-icon{grid-column:1;grid-row:1 / span 2;align-self:center}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy{grid-column:2;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy h3{font:650 16px/1.5 system-ui,sans-serif;margin-bottom:6px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy p{font-size:13px;color:#526d87;line-height:1.75}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair>div{margin:0!important;min-width:0;display:flex;flex-direction:column;padding:38px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair .im-r-icon{margin-bottom:24px!important}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair h3{font-size:36px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair .im-r-lead{font-size:17px}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-pair .im-r-textlink{margin-top:auto!important}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-management-grid{display:grid!important;grid-template-columns:.95fr 1.1fr;gap:clamp(34px,6vw,84px);align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-commerce-management-rows .im-r-feature:first-child{padding-top:0;border-top:0}
/* Redesign: an inset editorial cover with a narrow, vertical process spine. */
:is(.imf-site,.editor-styles-wrapper) .im-redesign-masthead{padding-block:clamp(42px,5vw,70px)}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-cover{display:grid!important;grid-template-columns:.6fr 1.8fr;grid-template-areas:'spine main';padding:0;background:#fff;box-shadow:0 25px 60px -48px #173b7280}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-cover-main{grid-area:main;padding:clamp(36px,5vw,70px);min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-cover-main h1{font-size:clamp(43px,5vw,70px)}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-cover-main .im-r-lead{max-width:640px;color:var(--im-r-muted);margin-bottom:28px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-spine{grid-area:spine;background:linear-gradient(160deg,#133f65,#0c2d4d);padding:42px 28px;color:#f3f9ff;display:flex;flex-direction:column;justify-content:space-between;gap:32px;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-spine .im-r-overline{color:#b3cee4}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list p{font:400 23px/1.5 Georgia,serif;border-top:1px solid #41647e;padding-top:16px;margin-bottom:20px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list span{display:block;font:650 10px/1.6 system-ui,sans-serif;color:#9dc9eb;margin-bottom:4px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-spine .im-r-caption{color:#b8d0e5;font-size:12px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-grid{display:grid!important;grid-template-columns:.9fr 1.15fr;gap:clamp(36px,6vw,84px);align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-row{display:grid!important;grid-template-columns:34px minmax(0,1fr);gap:22px;padding:26px 0;border-top:1px solid #d0e1ef;align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-row:last-child{border-bottom:1px solid #d0e1ef}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-row .im-r-number{padding-top:8px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-copy h3{font-size:27px;margin-bottom:12px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-review-copy p{font-size:15px;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-grid{display:grid!important;grid-template-columns:.9fr 1.25fr;gap:30px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-main{margin:0!important;display:flex;flex-direction:column;justify-content:center}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-main .im-r-icon{margin-bottom:28px!important}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-main h3{font-size:35px}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details .im-r-feature{display:flex!important;flex-direction:column;gap:18px;border:1px solid #d6e5f1;padding:26px;border-radius:18px;background:#fff;min-width:0;margin:0!important}
/* Local SEO: a side signpost, open title and full-width connected presence board. */
:is(.imf-site,.editor-styles-wrapper) .im-local-masthead{padding-block:clamp(56px,6.2vw,88px)}
:is(.imf-site,.editor-styles-wrapper) .im-local-heading-grid{display:grid!important;grid-template-columns:.68fr 1.8fr;gap:clamp(34px,5.5vw,78px);align-items:center}
:is(.imf-site,.editor-styles-wrapper) .im-local-signpost{border-right:1px solid #cbddec;padding:18px 36px 18px 0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-local-signpost>.im-r-icon{width:76px;height:76px;border-radius:23px;margin-bottom:26px!important}
:is(.imf-site,.editor-styles-wrapper) .im-local-signpost>.im-r-icon img{width:44px;height:44px}
:is(.imf-site,.editor-styles-wrapper) .im-local-signpost .im-local-service-name{font:700 12px/1.5 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#115eaa;margin:0 0 14px}
:is(.imf-site,.editor-styles-wrapper) .im-refresh .im-local-place{font:400 25px/1.45 Georgia,serif;margin-bottom:24px;color:#1b3d5c}
:is(.imf-site,.editor-styles-wrapper) .im-local-title h1{font-size:clamp(44px,5vw,70px);line-height:1.1}
:is(.imf-site,.editor-styles-wrapper) .im-local-title .im-r-lead{max-width:720px;color:#4f6983;margin-bottom:28px}
:is(.imf-site,.editor-styles-wrapper) .im-local-presence{padding-block:36px}
:is(.imf-site,.editor-styles-wrapper) .im-local-board{padding:40px}
:is(.imf-site,.editor-styles-wrapper) .im-local-board-heading{text-align:center;max-width:800px;margin:0 auto 30px!important}
:is(.imf-site,.editor-styles-wrapper) .im-local-board-heading h2{font-size:35px;margin-bottom:14px}
:is(.imf-site,.editor-styles-wrapper) .im-local-board-heading .im-eyebrow{margin-bottom:14px!important}
:is(.imf-site,.editor-styles-wrapper) .im-local-connections{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #54748f;padding-top:26px;gap:0}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection{display:grid!important;grid-template-columns:50px minmax(0,1fr);align-items:start;gap:18px;padding:0 24px;min-width:0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection:first-child{padding-left:0}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection:last-child{padding-right:0}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection+.im-local-connection{border-left:1px solid #3e627e}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection-copy h3{font:650 17px/1.5 system-ui,sans-serif;margin-bottom:8px}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection-copy p{font-size:14px;color:#c4d8e9}
:is(.imf-site,.editor-styles-wrapper) .im-local-connection-copy .im-r-micro-number{font:650 10px/1.5 system-ui,sans-serif;margin:0 0 4px;color:#a8cbed}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-grid{display:grid!important;grid-template-columns:.8fr 1.3fr;align-items:start;gap:clamp(34px,6vw,86px)}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-row{display:grid!important;grid-template-columns:25px 45px minmax(0,1fr);gap:16px;align-items:start;padding:26px 0;border-top:1px solid #d2e2ef}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-row:last-child{border-bottom:1px solid #d2e2ef}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-row .im-r-number{padding-top:11px}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-row .im-r-icon{width:42px;height:42px;border-radius:12px}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-row .im-r-icon img{width:23px;height:23px}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-copy h3{font-size:25px}
:is(.imf-site,.editor-styles-wrapper) .im-local-work-copy p{font-size:15px;color:var(--im-r-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-local-factor-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid #caddec;padding-top:28px}
:is(.imf-site,.editor-styles-wrapper) .im-local-factor{margin:0!important;padding-right:24px;min-width:0}
:is(.imf-site,.editor-styles-wrapper) .im-local-factor+.im-local-factor{border-left:1px solid #cedfea;padding-left:28px}
:is(.imf-site,.editor-styles-wrapper) .im-local-factor .im-r-number{margin-bottom:16px}
:is(.imf-site,.editor-styles-wrapper) .im-local-factor p:not(.im-r-number){font-size:15px;color:var(--im-r-muted)}
/* One shared form, varied surrounding compositions. Form internals remain plugin-owned. */
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry{background:#f5f9ff}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-grid{display:grid!important;grid-template-columns:.9fr 1.35fr;gap:clamp(30px,5.5vw,80px);align-items:start}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-reverse .im-r-inquiry-grid{grid-template-columns:1.35fr .9fr}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-grid>*{min-width:0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-copy{padding-block:22px}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-copy h2{font-size:clamp(34px,3.35vw,47px)}
:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry .imcf{width:100%;max-width:none;margin:0}
/* Flex/grid siblings never inherit the native flow's extra top margin. */
:is(.imf-site,.editor-styles-wrapper) .im-refresh :is(.im-home-masthead-grid,.im-design-title-grid,.im-design-experience-grid,.im-design-content-grid,.im-commerce-management-grid,.im-redesign-review-grid,.im-redesign-focus-grid,.im-local-heading-grid,.im-local-work-grid,.im-home-performance-grid,.im-home-proof-grid)>*{min-width:0;margin-block-start:0}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :is(.imf-site,.editor-styles-wrapper) .im-r-textlink a:hover .im-r-arrow{transform:translateX(3px)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row{transition:background-color .18s ease}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row:hover{background:#f8fbff}
}
@media(max-width:1060px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-masthead-grid{grid-template-columns:1.35fr .8fr;gap:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-art{padding-inline:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-bulb{max-width:160px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-masthead-copy h1{font-size:clamp(42px,5.2vw,66px)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row{grid-template-columns:24px 48px 1fr 154px;gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language>div{padding-inline:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-detail{gap:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item{padding-inline:18px;gap:0 12px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-pair>div{padding:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine{padding-inline:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details{gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-board{padding:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection{grid-template-columns:1fr;padding-inline:20px;gap:14px}
}
@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-refresh{padding-inline:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row{grid-template-columns:26px 50px minmax(0,1fr);gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row>.im-r-textlink{grid-column:3}
 :is(.imf-site,.editor-styles-wrapper) .im-home-performance-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-principles .im-r-feature{grid-template-columns:40px minmax(0,1fr)}
 :is(.imf-site,.editor-styles-wrapper) .im-design-title-grid{grid-template-columns:1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-intro{max-width:740px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language{grid-template-columns:.8fr 1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language .im-design-detail{grid-column:1 / -1;border-top:1px solid #d7e5f1;border-left:0;padding-left:0}
 :is(.imf-site,.editor-styles-wrapper) .im-design-palette{gap:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item{grid-template-columns:1fr;gap:10px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item>.im-r-number{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item>.im-r-icon{grid-column:1;grid-row:1}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy{grid-column:1}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-cover{grid-template-columns:.68fr 1.5fr}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-grid{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-main{display:block}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details{grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(.imf-site,.editor-styles-wrapper) .im-local-work-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-grid,:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-reverse .im-r-inquiry-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-copy{padding:0}
}
@media(max-width:680px){
 :is(.imf-site,.editor-styles-wrapper) .im-refresh{padding:56px 22px}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh h1{font-size:clamp(37px,7.7vw,51px);line-height:1.12}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh h2{font-size:clamp(30px,6.6vw,38px)}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh h3{font-size:25px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-masthead-grid{grid-template-columns:1fr;gap:38px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-art{justify-self:center;max-width:305px;padding-top:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-bulb{max-width:150px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-art::before{inset:-10px}
 :is(.imf-site,.editor-styles-wrapper) .im-r-heading-split{grid-template-columns:1fr;gap:22px;margin-bottom:30px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row{grid-template-columns:38px minmax(0,1fr);gap:12px 18px;padding-block:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row>.im-r-number{grid-column:1;grid-row:1;padding-top:4px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row>.im-r-icon{grid-column:1;grid-row:2;width:38px;height:38px;border-radius:11px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row>.im-r-icon img{width:22px;height:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-copy{grid-column:2;grid-row:1 / span 2}
 :is(.imf-site,.editor-styles-wrapper) .im-home-service-row>.im-r-textlink{grid-column:2}
 :is(.imf-site,.editor-styles-wrapper) .im-home-story-steps{grid-template-columns:1fr;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-principles{grid-template-columns:1fr;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-performance{padding-top:20px;padding-bottom:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-proof-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language{margin-top:34px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language>div{padding:24px 18px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-palette{gap:7px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-dot{width:27px;height:27px;flex-basis:27px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language .im-design-letterform{font-size:48px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-experience-grid,:is(.imf-site,.editor-styles-wrapper) .im-design-content-grid{grid-template-columns:1fr;gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route{grid-template-columns:1fr;padding:24px;border-radius:19px;margin-top:36px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item{grid-template-columns:44px minmax(0,1fr);gap:15px;padding:18px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item:first-child{padding-top:0}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item:last-child{padding-bottom:0}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item+.im-commerce-route-item{border-left:0;border-top:1px solid #cfdfed}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-item>.im-r-icon{grid-row:1;grid-column:1;width:42px;height:42px;border-radius:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy{grid-column:2}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-route-copy h3{font-size:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-pair,:is(.imf-site,.editor-styles-wrapper) .im-commerce-management-grid{grid-template-columns:1fr;gap:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-pair>div{padding:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-commerce-pair h3{font-size:33px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-cover{grid-template-columns:1fr;grid-template-areas:'main' 'spine'}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-cover-main{padding:32px 24px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine{padding:26px;gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list p{font:400 17px/1.55 Georgia,serif;margin:0;padding-top:10px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine .im-r-caption{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-review-grid{grid-template-columns:1fr;gap:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-review-row{gap:12px;grid-template-columns:25px minmax(0,1fr)}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details{gap:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details .im-r-feature{padding:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details .im-r-feature h3{font-size:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-heading-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost{padding:0 0 24px;border-right:0;border-bottom:1px solid #caddec;display:grid!important;grid-template-columns:50px 1fr;gap:4px 17px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost>.im-r-icon{grid-row:1 / span 2;width:50px;height:50px;border-radius:14px;margin:0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost>.im-r-icon img{width:28px;height:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost .im-local-service-name{margin:0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost .im-local-place{font-size:17px;margin:0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-place br{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-local-signpost .im-r-caption{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-local-presence{padding-top:18px;padding-bottom:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-board{padding:30px 26px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-board-heading{text-align:left;margin-bottom:22px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-local-board-heading h2{font-size:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connections{grid-template-columns:1fr;padding-top:0;border-top:0;gap:0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection{grid-template-columns:42px minmax(0,1fr);gap:16px;padding:20px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection+.im-local-connection{border-left:0;border-top:1px solid #3e627e}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection>.im-r-icon{width:42px;height:42px;border-radius:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection-copy h3{font-size:17px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-connection:last-child{padding-bottom:0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-work-row{grid-template-columns:40px minmax(0,1fr);gap:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-work-row>.im-r-number{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-local-work-copy h3{font-size:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-factor-grid{grid-template-columns:1fr;gap:22px;padding-top:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-local-factor+.im-local-factor{border-left:0;border-top:1px solid #cedeeb;padding:22px 0 0}
 :is(.imf-site,.editor-styles-wrapper) .im-local-factor .im-r-number{margin-bottom:12px}
}
@media(max-width:400px){
 :is(.imf-site,.editor-styles-wrapper) .im-refresh{padding-inline:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language>div{padding:20px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-design-language>div+div{border-left:0;border-top:1px solid #d7e5f1}
 :is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel,:is(.imf-site,.editor-styles-wrapper) .im-r-card{padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-focus-details{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-redesign-spine-list span{display:inline-block;min-width:24px;margin-right:8px}
}
@media(prefers-reduced-motion:reduce){
 :is(.imf-site,.editor-styles-wrapper) .im-refresh *,:is(.imf-site,.editor-styles-wrapper) .im-refresh *::before,:is(.imf-site,.editor-styles-wrapper) .im-refresh *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){
 :is(.imf-site,.editor-styles-wrapper) :is(.im-refresh,.im-home-art,.im-r-dark-panel,.im-r-card,.im-redesign-spine,.im-redesign-cover,.im-commerce-route){background:Canvas!important;color:CanvasText!important;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh :is(h1,h2,h3,p,strong,cite,span){color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-rail{border:1px solid CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-rail::before{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-icon{background:Canvas;border-color:CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh .im-r-icon img{filter:none}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh a{color:LinkText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh .wp-element-button{background:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonText}
}
@media print{
 :is(.imf-site,.editor-styles-wrapper) .im-refresh{padding:24px 0!important;background:#fff!important;color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh :is(.im-r-dark-panel,.im-r-card,.im-redesign-spine,.im-redesign-cover,.im-commerce-route){background:#fff!important;color:#000!important;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-refresh :is(p,strong,h1,h2,h3,cite){color:#000!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-art,:is(.imf-site,.editor-styles-wrapper) .im-r-inquiry-form{display:none!important}
}

/* Global editorial typography repair — core body content and its editor only.
 * Remove the -0.02…-0.045em squeeze and optional Latin fi/ff ligatures. Keep normal kerning.
 * Existing serif family, weights, sizes and UI labels stay in place. No text substitution.
 */
.imf-site :is(.im-page-content,.im-content-layout,.im-blog-layout),.editor-styles-wrapper{
 font-variant-ligatures:no-common-ligatures no-discretionary-ligatures;
}
.imf-site :is(.im-page-content,.im-content-layout,.im-blog-layout) :is(h1,h2,h3,h4,h5,h6,blockquote,blockquote p),
.editor-styles-wrapper :is(h1,h2,h3,h4,h5,h6,blockquote,blockquote p){
 letter-spacing:0!important;font-variant-ligatures:no-common-ligatures no-discretionary-ligatures!important;
 font-feature-settings:"liga" 0,"clig" 0,"dlig" 0!important;font-kerning:normal;
}
.imf-site :is(.im-page-content,.im-content-layout,.im-blog-layout) :is(h1,h2,h3,h4,h5,h6,blockquote) :is(strong,em,span,a),
.editor-styles-wrapper :is(h1,h2,h3,h4,h5,h6,blockquote) :is(strong,em,span,a){
 letter-spacing:inherit!important;font-variant-ligatures:inherit!important;font-feature-settings:inherit!important;
}
/* Requested restaurant title spacing; the existing page needs no JSON replacement. */
:is(.imf-site,.editor-styles-wrapper) .im-sp-restaurant-opening .im-sp-centered-intro h1{margin-block-start:32px!important}

.imf-site :is(.im-page-content,.im-content-layout,.im-blog-layout) :is(p,li,cite,span,strong,em),
.editor-styles-wrapper :is(p,li,cite,span,strong,em){font-variant-ligatures:no-common-ligatures no-discretionary-ligatures!important;}

/* Framework 0.3.15 — Homepage Studio Canvas.
 * Fully scoped; r5 and all interior pages retain their existing presentation.
 * Uses existing assets/blue-button behavior. No global typography overrides.
 */
:is(.imf-site,.editor-styles-wrapper) .im-home-six {
 --h6-ink:#142638;--h6-blue:#106bb7;--h6-muted:#4d657d;--h6-line:#ccdfee;
 --h6-rail:linear-gradient(90deg,#008fe0 0%,#8d80bc 40%,#ed6f97 65%,#ff9228 100%);
 --h6-shadow:0 18px 40px -32px rgba(12,41,65,.32);
 margin:0!important;max-width:none!important;color:var(--h6-ink);
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section {
 color:var(--h6-ink);padding-block:76px;background:#fff;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section :is(h1,h2,h3){font-weight:400;line-height:1.12}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section h2{font-size:clamp(34px,3.3vw,47px)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section :is(h1,h2,h3) strong{font-weight:400;color:var(--h6-blue)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six :where(.h6-section p):not(:where(.imcf p)){color:var(--h6-muted)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-label{font:720 10px/1.6 system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#426381;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-caption{font-size:12px;line-height:1.7;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-card{position:relative;border:1px solid var(--h6-line);border-radius:24px;background:#fff;box-shadow:var(--h6-shadow);isolation:isolate;min-width:0;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-card,.h6-hero-canvas)::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--h6-rail);border-radius:0;pointer-events:none;z-index:2}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-icon{width:50px;height:50px;border:1px solid #bfdcf9;border-radius:15px;background:linear-gradient(150deg,#fff,#ebf5ff);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0!important;box-shadow:0 5px 13px -10px #24598966}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-icon img{display:block;width:28px;height:28px;object-fit:contain;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-hero-canvas,.h6-materials,.h6-swatches,.h6-heading-row,.h6-service-grid,.h6-service-stack,.h6-card-top,.h6-process-cover,.h6-step,.h6-proof-grid,.h6-quality-grid,.h6-hero-foot)>*{min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons{display:flex!important;align-items:center;flex-wrap:wrap;gap:14px;margin-top:28px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons>.wp-block-button{margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons .wp-element-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:54px;font-size:14px;padding:14px 23px;line-height:1.5}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-arrow{display:inline-block;margin-inline-start:8px;font-family:system-ui,sans-serif;line-height:1}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-text-link{font:650 14px/1.6 system-ui,sans-serif;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-text-link a{color:#075cac;display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.3em;text-decoration-thickness:1px}
/* The main statement is near-black and blue; the adjacent specimens are actual brand elements. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero{padding-block:44px 35px;background:linear-gradient(145deg,#f3f8fe,#eaf4fd 76%,#f7fbff)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas{position:relative;display:grid!important;grid-template-columns:minmax(0,1.58fr) minmax(0,1fr);gap:34px;align-items:stretch;border:1px solid #c5daed;border-radius:30px;padding:26px 26px 26px 52px;background:#fff;box-shadow:0 26px 58px -45px #28496677;isolation:isolate;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas::before{clip-path:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy{padding:24px 0;align-self:center}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .im-eyebrow{margin-bottom:28px!important;letter-spacing:.14em;font-size:10px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title{font-size:clamp(46px,5.6vw,80px);line-height:1.035;margin:0 0 28px;letter-spacing:0;color:#12263b;text-wrap:initial}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-title strong{font-size:.84em;line-height:1.16;color:#106bb7;display:inline-block}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-lead{max-width:560px;font-size:17px;line-height:1.8;color:#4c647c;margin-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-secondary{margin:14px 0 0;font-size:13px;font-weight:620}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-secondary a{color:#1b5380;display:inline-flex;align-items:center;min-height:36px;text-underline-offset:.3em}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-materials{display:grid!important;grid-template-columns:1fr;grid-template-rows:1fr auto;gap:18px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card{padding:32px 34px 28px;background:linear-gradient(125deg,#0c2946,#17496b);border-color:#386788;color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;box-shadow:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-label{color:#b8d5ec}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-sample{font:400 clamp(100px,8.7vw,132px)/1 Georgia,serif;letter-spacing:0;color:#fff;margin:15px 0 20px;text-shadow:4px 5px 0 #1d5275}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-specimen-heading{font-size:28px;margin-bottom:14px;line-height:1.16;color:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-caption{color:#c7ddec}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-palette-card{padding:24px 26px;background:#f5f9fe;box-shadow:none;border-color:#d1e2ef}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-palette-card::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatches{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:17px 0 13px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch{display:flex;align-items:flex-end;padding:12px 8px;border-radius:8px;min-height:67px;font:600 10px/1.2 system-ui,sans-serif;color:#fff;background:#0c2946}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch-blue{background:#0c6ecc}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch-ice{background:#e4f1fd;color:#28567d;border:1px solid #c6deef}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch-orange{background:#ff9228;color:#362008}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-foot{display:flex!important;gap:14px;align-items:center;justify-content:center;padding-top:23px;flex-wrap:wrap}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-footnote{font:500 12px/1.65 system-ui,sans-serif;color:#4a657f;padding:0 20px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-footnote+.h6-hero-footnote{border-left:1px solid #c8dbea}
/* Different service proportions, one visual family. Clear routes replace an unstyled list. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-heading-row{display:grid!important;grid-template-columns:1.1fr 1fr;align-items:end;gap:clamp(26px,5vw,70px);margin-bottom:34px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-heading-row h2{margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section-intro{font-size:16px;line-height:1.8;max-width:520px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-grid{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:24px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack{display:grid!important;grid-template-rows:1fr 1fr;gap:24px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-card-top{display:flex!important;align-items:center;gap:20px;justify-content:space-between;margin-bottom:28px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-design{padding:36px 40px;background:linear-gradient(135deg,#f8fbff,#eef6ff);display:flex;flex-direction:column}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-design h3{font-size:clamp(30px,2.9vw,40px);margin:8px 0 20px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-copy{font-size:15px;line-height:1.8;margin-bottom:20px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-destinations{margin-top:auto!important;padding-top:22px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-destinations .h6-text-link{border-top:1px solid #cbdeed;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-destinations a{display:flex;justify-content:space-between;min-height:56px;text-decoration:none;font-size:15px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-destinations a:hover{text-decoration:underline}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-card-signature{font:650 9px/1.5 system-ui,sans-serif;letter-spacing:.15em;color:#4f6f8b;margin-top:28px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-service-development,.h6-service-care){padding:27px 32px;display:flex;flex-direction:column}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack .h6-card-top{margin-bottom:20px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack h3{font-size:28px;margin:0 0 12px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack .h6-text-link{margin-top:auto}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-care{background:linear-gradient(120deg,#0f2d49,#174365);color:#fff;border-color:#386783}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-care :is(.h6-service-copy,.h6-label){color:#c3d9eb}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-care .h6-text-link a{color:#c4e5ff}
/* The original illustration belongs with the people and process, not in another repeated hero. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process{background:#f1f7fd;padding-block:60px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-cover{display:grid!important;grid-template-columns:minmax(0,.66fr) minmax(0,1.35fr);overflow:hidden;align-items:stretch;border-radius:28px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-art{padding:42px 28px;background:linear-gradient(145deg,#0d2945,#154668);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-art .h6-label{color:#c1d9eb;margin-bottom:30px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-bulb{width:150px;max-width:75%;margin:0 0 30px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-bulb img{width:100%;height:auto;display:block;object-fit:contain}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-art-caption{font:400 24px/1.3 Georgia,serif;color:#f2f8ff;max-width:300px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-copy{padding:44px 48px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-copy h2{margin-bottom:22px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-intro{font-size:16px;line-height:1.8;margin-bottom:26px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-steps{margin:0 0 24px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step{display:grid!important;grid-template-columns:36px minmax(0,1fr);gap:18px;border-top:1px solid #dae6f1;padding:20px 0;margin:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step-number{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#eaf4ff;border:1px solid #c8def2;border-radius:50%;font:700 10px/1 system-ui,sans-serif;color:#145fa5}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step-copy h3{font-size:24px;line-height:1.2;margin-bottom:7px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step-copy p{font-size:13px;line-height:1.7;margin:0}
/* A visual duet: the technical care, then the client's own words. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof{background:#fff;padding-block:72px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-grid{display:grid!important;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);gap:24px;align-items:stretch}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-card{padding:38px;background:linear-gradient(120deg,#0c2c47,#134364);color:#fff;border-color:#396780}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-card .im-eyebrow{color:#bdd9ed}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-card h2 strong{color:#9cd1f9}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-intro{font-size:15px;color:#c8ddec;margin-bottom:27px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item{border-top:1px solid #486984;padding-top:20px;display:flex;flex-direction:column;align-items:flex-start}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item .h6-icon{width:36px;height:36px;border-radius:11px;margin-bottom:15px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item .h6-icon img{width:21px;height:21px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item h3{font:650 14px/1.4 system-ui,sans-serif;margin-bottom:9px;color:#f4faff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item p{font-size:12px;line-height:1.8;color:#c1d7e9}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-card{padding:40px;display:flex;flex-direction:column;background:linear-gradient(145deg,#fff,#f1f8ff)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-stars{width:110px;max-width:100%;margin:24px 0 28px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-stars img{display:block;width:100%;height:auto}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof .h6-quote{border:0;background:none;box-shadow:none;margin:0!important;padding:0!important;text-align:left;max-width:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quote p{font:400 clamp(24px,2.1vw,30px)/1.42 Georgia,serif;color:#163b5c;margin:0 0 28px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quote cite{font:650 13px/1.6 system-ui,sans-serif;color:#3f6280;font-style:normal}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-close{margin-top:auto!important;padding-top:36px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-close h3{border-top:1px solid #ccdfed;padding-top:28px;font-size:30px;margin-bottom:12px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-close p{font-size:13px;line-height:1.8;max-width:360px}
/* Existing plugin renderer/settings, no duplicated form or behavior. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry{background:linear-gradient(145deg,#edf5fe,#f7fbff);padding-block:72px 84px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf{width:100%;max-width:none;margin:0}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf h2{color:#f2f8ff;font-size:clamp(30px,3vw,42px)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf .imcf-intro-text{color:#cbddec}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf .imcf-eyebrow{color:#c0d7eb}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf .imcf-personal p{color:#c7dcee}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-inquiry .imcf .imcf-direct p{color:#bed5e7}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .imf-site .im-home-six .h6-text-link .h6-arrow{transition:transform .18s ease}
 .imf-site .im-home-six .h6-text-link a:hover .h6-arrow{transform:translateX(3px)}
 .imf-site .im-home-six :is(.h6-service-design,.h6-service-development,.h6-service-care){transition:border-color .18s ease,box-shadow .18s ease}
 .imf-site .im-home-six :is(.h6-service-design,.h6-service-development,.h6-service-care):hover{border-color:#8bb7db;box-shadow:0 24px 44px -32px #214a7066}
}
@media(max-width:1100px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas{grid-template-columns:1.5fr 1fr;padding:22px 22px 22px 32px;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title{font-size:clamp(42px,5.5vw,65px)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title strong{font-size:.87em}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-type-card,.h6-palette-card){padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-design{padding:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-copy{padding:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-quality-card,.h6-review-card){padding:30px}
}
@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section{padding-inline:24px;padding-block:60px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero{padding-block:32px 28px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas{grid-template-columns:1fr;padding:32px;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy{padding:8px 0 0}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title{font-size:clamp(44px,8vw,70px)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-materials{grid-template-columns:1fr 1fr;grid-template-rows:auto;align-items:stretch}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-sample{font-size:80px;margin:15px 0}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-specimen-heading{font-size:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-palette-card{display:flex;flex-direction:column;justify-content:center}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatches{gap:5px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch{padding-inline:5px;font-size:9px;min-height:72px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-heading-row{grid-template-columns:1fr;gap:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section-intro{max-width:650px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-grid{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-destinations{padding-top:0}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-design h3{font-size:36px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-service-development,.h6-service-care){padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-card-top{gap:14px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-cover{grid-template-columns:.7fr 1.3fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-copy{padding:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-grid{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-close{padding-top:28px}
}
@media(max-width:600px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section{padding-inline:20px;padding-block:46px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero{padding-block:24px 22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas{padding:25px 22px;gap:26px;border-radius:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title{font-size:clamp(37px,9.4vw,55px);margin-bottom:22px;line-height:1.08}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-title strong{font-size:.9em;line-height:1.2}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .im-eyebrow{font-size:9px!important;letter-spacing:.12em;margin-bottom:23px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .im-eyebrow::before{width:18px;margin-right:9px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-lead{font-size:15px;line-height:1.8}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons{margin-top:23px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons>.wp-block-button{width:100%}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-buttons .wp-element-button{width:100%;font-size:13px;padding-inline:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-materials{grid-template-columns:1fr;gap:15px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card{display:grid;grid-template-columns:85px minmax(0,1fr);gap:0 17px;align-items:center;padding:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-label{grid-column:1 / -1;margin-bottom:16px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-sample{grid-column:1;grid-row:2 / 4;font-size:68px;margin:0!important;text-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-specimen-heading{grid-column:2;font-size:21px;margin:0 0 8px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-caption{grid-column:2;font-size:10px;line-height:1.6}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-palette-card{padding:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-swatch{font-size:10px;padding-inline:8px;min-height:58px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-foot{gap:6px;padding-top:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-footnote{padding-inline:10px;font-size:11px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-footnote:last-child{border-left:0;width:100%;text-align:center}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section h2{font-size:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-heading-row{margin-bottom:27px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-stack{grid-template-columns:1fr;gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-grid{gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-service-design,.h6-service-development,.h6-service-care){padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-service-design h3{font-size:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-cover{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-art{display:grid;grid-template-columns:95px minmax(0,1fr);align-items:center;gap:0 22px;text-align:left;padding:26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-art .h6-label{grid-column:2;align-self:end;font-size:9px;margin:0 0 16px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-bulb{grid-column:1;grid-row:1 / 3;width:90px;max-width:100%;margin:0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-art-caption{grid-column:2;align-self:start;font-size:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-process-copy{padding:28px 26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step{gap:12px;padding-block:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-step-copy h3{font-size:23px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-quality-card,.h6-review-card){padding:28px 26px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-grid{gap:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-item p{font-size:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-review-stars{margin-top:10px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quote p{font-size:25px}
}
@media(max-width:360px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section{padding-inline:16px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-canvas{padding-inline:18px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-copy .h6-title{font-size:35px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card{padding:20px;grid-template-columns:68px minmax(0,1fr);gap:0 12px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-sample{font-size:58px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-type-card .h6-specimen-heading{font-size:19px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-quality-grid{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-hero-footnote{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six *{scroll-behavior:auto!important}
 .imf-site .im-home-six .h6-arrow{transition:none!important;transform:none!important}
}
@media(forced-colors:active){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-section,.h6-card,.h6-hero-canvas,.h6-process-art,.h6-swatch,.h6-icon,.h6-step-number){background:Canvas!important;color:CanvasText!important;box-shadow:none;border-color:CanvasText}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(h1,h2,h3,p,strong,cite){color:CanvasText!important;text-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six a{color:LinkText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-card,.h6-hero-canvas)::before{display:none}
}
@media print{
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-section,.h6-card,.h6-hero-canvas,.h6-process-art){background:#fff!important;color:#000!important;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(h1,h2,h3,p,strong,cite){color:#000!important;text-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-section{padding-block:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six :is(.h6-card,.h6-hero-canvas)::before{display:none}
}

/* 0.3.16 — Portfolio landing-page composition only; project records live in the plugin. */
.imf-site .im-portfolio-page .im-portfolio-intro{padding-block:70px 62px;background:linear-gradient(160deg,#fff,#f1f7ff)}
.imf-site .im-portfolio-page .im-portfolio-intro-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:70px;align-items:end}
.imf-site .im-portfolio-page .im-portfolio-intro h1{font-size:clamp(42px,5.4vw,74px);line-height:1.06;font-weight:400;letter-spacing:0;color:#122d47;margin:25px 0 0}
.imf-site .im-portfolio-page .im-portfolio-intro h1 strong{font-weight:400;color:#126db5}
.imf-site .im-portfolio-page .im-portfolio-intro-note{position:relative;padding:25px 28px;border:1px solid #c5ddf0;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 12px 30px -30px #234d6f}
.imf-site .im-portfolio-page .im-portfolio-intro-note::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#049de2,#718cce,#e86195,#ff883c)}
.imf-site .im-portfolio-page .im-portfolio-intro-note p{margin:0;color:#506e89;font-size:15px;line-height:1.8}
.imf-site .im-portfolio-page .im-portfolio-intro-note .im-eyebrow{margin-bottom:13px;font-size:10px;color:#276397}
.imf-site .im-portfolio-page .im-portfolio-collection{padding-block:44px 65px;background:#fbfdff}
.imf-site .im-portfolio-page .im-portfolio-inquiry{padding-block:30px 65px;background:#fbfdff}
.imf-site .im-portfolio-page .im-portfolio-inquiry .im-inner{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;background:linear-gradient(120deg,#0b2945,#164b72);padding:40px 45px;border:1px solid #426d8e;border-radius:24px;overflow:hidden;color:#d4e4f1}
.imf-site .im-portfolio-page .im-portfolio-inquiry .im-inner::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#049de2,#718cce,#e86195,#ff883c)}
.imf-site .im-portfolio-page .im-portfolio-inquiry h2{color:#fff;font-size:clamp(30px,3.5vw,44px);margin:0}
.imf-site .im-portfolio-page .im-portfolio-inquiry p{color:#d0e3f2}
.imf-site .imp-portfolio h1,.imf-site .imp-portfolio h2,.imf-site .imp-portfolio h3{font-variant-ligatures:none;letter-spacing:0}
@media(max-width:800px){.imf-site .im-portfolio-page .im-portfolio-intro-grid{grid-template-columns:1fr;gap:30px}.imf-site .im-portfolio-page .im-portfolio-intro{padding-block:44px}.imf-site .im-portfolio-page .im-portfolio-inquiry .im-inner{grid-template-columns:1fr;gap:24px;padding:28px}.imf-site .im-portfolio-page .im-portfolio-collection{padding-block:35px}}


/* 0.3.17 — site-wide creative refinement pass.
 * Preserves approved compositions; reduces repeated decoration and gives page-specific motifs more room.
 */
:is(.imf-site,.editor-styles-wrapper) .im-refine-pass{--im-refine-rule:#caddec}
:is(.imf-site,.editor-styles-wrapper) .im-refine-pass .im-eyebrow::before{opacity:.78}

/* Homepage: preserve Aa/Character composition; let testimonial and process breathe. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-service-stack .h6-card::before,
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-review-card::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-service-development{background:#fff;box-shadow:none;border-color:#d6e4f0}
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-review-card{background:transparent;border-color:transparent;box-shadow:none;padding-inline:18px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-review-stars{margin-top:4px!important}
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-quote p{font-size:clamp(28px,2.45vw,36px);line-height:1.36}
:is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-review-close h3{border-top-color:#d6e3ee}

/* Web Design: one small brand-system detail; keep comparison cards useful, not identical. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-design .im-packages-hero-note{padding-bottom:48px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-design .im-packages-hero-note::after{content:"";position:absolute;left:28px;bottom:25px;width:118px;height:5px;border-radius:99px;background:linear-gradient(90deg,#102a55 0 25%,#0b73d7 25% 50%,#dceeff 50% 75%,#ff8b2d 75%);box-shadow:0 0 0 1px #ffffff17}
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-design .im-studio-service-grid>.im-studio-service-card:nth-child(n+2)::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-design .im-studio-service-grid>.im-studio-service-card:nth-child(n+2){box-shadow:none}

/* Web Development: make the existing rail read as one connected system. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-development .im-dev-flow-item{position:relative}
@media(min-width:901px){
 :is(.imf-site,.editor-styles-wrapper) .im-refine-web-development .im-dev-flow-item:not(:last-child)::after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);z-index:3;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid #7da6c555;background:#123b5c;color:#a9d6f2;font:500 14px/1 system-ui,sans-serif}
}
:is(.imf-site,.editor-styles-wrapper) .im-refine-web-development .im-dev-extension-card .im-plan-icon{background:transparent;border-color:transparent;box-shadow:none;padding:4px;width:34px;height:34px}

/* E-commerce: emphasize progression without adding dashboard chrome. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-ecommerce .im-commerce-route{position:relative}
@media(min-width:781px){
 :is(.imf-site,.editor-styles-wrapper) .im-refine-ecommerce .im-commerce-route-item:not(:last-child)::after{content:"→";position:absolute;right:-12px;top:50%;transform:translateY(-50%);z-index:2;color:#5790bb;background:#f4f9ff;padding:3px 6px;font:600 14px/1 system-ui,sans-serif}
}
:is(.imf-site,.editor-styles-wrapper) .im-refine-ecommerce .im-commerce-management-rows .im-r-feature .im-r-icon{background:transparent;border-color:transparent;box-shadow:none}

/* Website Redesign: protect the signature spine; simplify the four supporting improvement rows. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-redesign .im-redesign-focus-details .im-r-icon{background:transparent;border-color:transparent;box-shadow:none;width:34px;height:34px;padding:4px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-redesign .im-redesign-focus-details .im-r-feature{border-top:1px solid #d8e5f0;padding-top:20px}

/* Restaurant: a menu-like rhythm using rules and spacing, not food clichés. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-restaurant .im-sp-restaurant-plan .im-plan-features>li{background:transparent!important;border-bottom:1px dotted #bfd2e3;padding-block:13px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-restaurant .im-sp-restaurant-plan .im-plan-features>li:last-child{border-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-refine-restaurant .im-sp-guest-band{box-shadow:none}

/* Local SEO: restrained map/coordinate logic contained to its existing location module. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-local-seo .im-local-signpost{position:relative;isolation:isolate;background-image:linear-gradient(#c7ddeb33 1px,transparent 1px),linear-gradient(90deg,#c7ddeb33 1px,transparent 1px);background-size:28px 28px;background-position:0 0}
:is(.imf-site,.editor-styles-wrapper) .im-refine-local-seo .im-local-signpost>*{position:relative;z-index:1}
:is(.imf-site,.editor-styles-wrapper) .im-refine-local-seo .im-local-work-row .im-r-icon{background:transparent;border-color:transparent;box-shadow:none}

/* Malware: restraint is deliberate; orange is only a caution cue. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-malware .im-sp-dark-note{border-left:3px solid #ff8a2e;padding-left:17px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-malware .im-sp-recovery-step::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-malware .im-sp-recovery-step{box-shadow:none}

/* Managed Services: retain pricing cards, open up the support/process area. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-managed .im-managed-support .im-studio-process-panel{background:transparent;border:0;box-shadow:none;padding:0}
:is(.imf-site,.editor-styles-wrapper) .im-refine-managed .im-managed-support .im-studio-process-panel::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-managed .im-managed-support .im-studio-step{padding-inline:0}
:is(.imf-site,.editor-styles-wrapper) .im-refine-managed .im-managed-care .im-care-item .im-plan-icon{background:transparent;border-color:transparent;box-shadow:none}

/* Packages: preserve the three-plan comparison; make the quote and review explanation less widget-like. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-packages .im-packages-testimonial::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-packages .im-packages-testimonial{background:transparent;border-color:transparent;box-shadow:none;padding-inline:8px}
:is(.imf-site,.editor-styles-wrapper) .im-refine-packages .im-packages-testimonial .im-studio-quote p{font-size:clamp(25px,2.2vw,32px);line-height:1.42}
:is(.imf-site,.editor-styles-wrapper) .im-refine-packages .im-review-guide{box-shadow:none;background:transparent;border-inline:0;border-radius:0;padding-inline:0}

/* Contact: shared form stays untouched; supporting information becomes quieter. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-contact .im-inquiry-sidebar .im-inquiry-card:not(.im-inquiry-contact-card)::before{display:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-contact .im-inquiry-sidebar .im-inquiry-card:not(.im-inquiry-contact-card){box-shadow:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-contact .im-inquiry-paths{border-top:1px solid #d5e4ef;padding-top:22px}

/* Portfolio landing: editorial intro and grid do the work; reserve the gradient signature for key framing. */
:is(.imf-site,.editor-styles-wrapper) .im-refine-portfolio .im-portfolio-intro-note{box-shadow:none}
:is(.imf-site,.editor-styles-wrapper) .im-refine-portfolio .im-portfolio-inquiry .im-inner{box-shadow:0 22px 48px -38px #123a5d80}

@media(max-width:780px){
 :is(.imf-site,.editor-styles-wrapper) .im-refine-home .h6-review-card{padding-inline:0}
 :is(.imf-site,.editor-styles-wrapper) .im-refine-web-design .im-packages-hero-note::after{left:24px;bottom:21px}
}

/* 0.3.18 — Homepage Selected Work integration. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{background:linear-gradient(180deg,#f5f9fd 0%,#eef6fd 100%);padding-block:76px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.7fr);gap:44px;align-items:end;margin-bottom:34px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-heading h2{margin:0;max-width:620px;color:#102f4a}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-intro{max-width:470px;margin:0 0 4px auto;color:#566f87;font-size:15px;line-height:1.8}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all{margin:24px 0 0;text-align:right;font-size:13px;font-weight:750}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all a{color:#075faa;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all a span{display:inline-block;transition:transform .2s ease}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all a:hover span{transform:translateX(3px)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work .imp-featured-card{border-radius:24px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work .imp-featured-link{padding:29px 28px 26px;min-height:252px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work .imp-featured-card-1{background:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work .imp-featured-card-3{background:#f8fbff}
@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{padding-block:58px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-heading{grid-template-columns:1fr;gap:16px;margin-bottom:28px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-intro{margin:0;max-width:650px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all{text-align:left}
}
@media(max-width:600px){:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{padding-block:46px}}
@media(prefers-reduced-motion:reduce){:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-all a span{transition:none!important;transform:none!important}}


/* 0.3.19 — Tighten the homepage transition from Selected Work into Personal Service.
   The sections remain distinct; only the compounded vertical padding between them is reduced. */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{padding-bottom:48px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work + .h6-process{padding-top:38px}
@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{padding-bottom:40px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work + .h6-process{padding-top:32px}
}
@media(max-width:600px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work{padding-bottom:34px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-selected-work + .h6-process{padding-top:30px}
}


/* 0.3.20 — Dark-surface inline-link contrast guard.
 * Inline editorial links inside navy content panels use the same light-link language
 * as their neighboring text links instead of inheriting the sitewide brand blue.
 */
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-lead a,
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-lead a:visited{color:#b9dfff;text-decoration-color:#b9dfff;text-underline-offset:.18em}
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-lead a,
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-lead a:visited{color:#baddfa;text-decoration-color:#baddfa;text-underline-offset:.18em}
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead a,
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead a:visited{color:#d3eaff;text-decoration-color:#d3eaff;text-underline-offset:.18em}
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-lead a:hover,
:is(.imf-site,.editor-styles-wrapper) .im-r-dark-panel .im-r-lead a:focus-visible,
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-lead a:hover,
:is(.imf-site,.editor-styles-wrapper) .im-sp-aftercare .im-lead a:focus-visible,
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead a:hover,
:is(.imf-site,.editor-styles-wrapper) .im-inquiry-hero .im-inquiry-lead a:focus-visible{color:#fff;text-decoration-color:#fff}


/* 0.3.21 — Editorial blog index + single-post system. */
:is(.imf-site,.editor-styles-wrapper) .im-blog-page{background:#f3f8fd;color:#15304b}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero{padding:clamp(76px,8vw,118px) clamp(24px,5vw,80px) 72px;background:linear-gradient(180deg,#edf5fc 0%,#f7fbff 100%);border-bottom:1px solid #d5e4ef}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero .im-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.7fr);gap:clamp(40px,7vw,92px);align-items:end}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero h1{margin:0;max-width:780px;color:#102f4a;font-size:clamp(3rem,5.4vw,5.55rem)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero h1 strong{color:#0c69bc;font-weight:400}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero-note{max-width:470px;margin-left:auto;padding-left:26px;border-left:1px solid #c6dcea;color:#506d87;font-size:16px;line-height:1.85}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero-note p:last-child{margin-bottom:0}
:is(.imf-site,.editor-styles-wrapper) .im-blog-hero-note a{font-weight:700}
:is(.imf-site,.editor-styles-wrapper) .im-blog-collection{padding:72px clamp(24px,5vw,80px) clamp(90px,9vw,126px);background:#f7fbff}
:is(.imf-site,.editor-styles-wrapper) .im-blog-collection-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #d5e3ef}
:is(.imf-site,.editor-styles-wrapper) .im-blog-collection-head h2{margin:0;color:#102f4a;font-size:clamp(2rem,3.3vw,3.1rem)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-collection-head p{margin:0;max-width:450px;color:#5a7187;font-size:15px}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cards{display:grid;gap:24px}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cards.im-blog-columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cards.im-blog-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #ccdeec;border-radius:23px;overflow:hidden;box-shadow:0 18px 42px -36px rgba(16,47,74,.5);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card:hover{transform:translateY(-3px);border-color:#9fc5e4;box-shadow:0 28px 48px -38px rgba(16,47,74,.62)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-media{display:block;aspect-ratio:16/9;background:#dbeaf5;overflow:hidden;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card:hover .im-blog-card-image{transform:scale(1.018)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#0f3555,#174d75);color:#cbe8ff;font:400 clamp(44px,5vw,72px)/1 Georgia,serif;letter-spacing:-.07em}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-body{display:flex;flex:1;flex-direction:column;padding:25px 26px 24px}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#607991;font:750 10px/1.5 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-meta time{font-weight:650;letter-spacing:.05em;white-space:nowrap}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-title{margin:18px 0 13px;font-size:clamp(1.55rem,2vw,2rem);line-height:1.13;letter-spacing:-.035em;color:#102f4a}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-title a{color:inherit;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.14em}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-excerpt{margin:0;color:#526f88;font-size:15px;line-height:1.72}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-action{margin:auto 0 0;padding-top:22px;font-size:13px;font-weight:750}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-action a{display:inline-flex;gap:12px;align-items:center;color:#0866b6;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-action span{transition:transform .18s ease}
:is(.imf-site,.editor-styles-wrapper) .im-blog-card-action a:hover span{transform:translateX(3px)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-top:44px;padding-top:26px;border-top:1px solid #d4e3ef;font-size:13px;font-weight:700}
:is(.imf-site,.editor-styles-wrapper) .im-blog-pagination a{text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-blog-page-next{text-align:right}
:is(.imf-site,.editor-styles-wrapper) .im-blog-page-status{color:#6a8095;font-weight:600}
:is(.imf-site,.editor-styles-wrapper) .im-blog-empty{padding:44px;border:1px dashed #bcd2e3;border-radius:18px;background:#fff;color:#5b7289;text-align:center}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cta{padding:76px clamp(24px,5vw,80px);background:#eaf4fc;border-top:1px solid #d4e3ef}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cta .im-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;padding:38px 42px;border:1px solid #bfd5e6;border-radius:26px;background:#fff;box-shadow:0 20px 48px -40px #123a5d}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cta h2{margin:0 0 8px;color:#102f4a;font-size:clamp(2rem,3.4vw,3.25rem)}
:is(.imf-site,.editor-styles-wrapper) .im-blog-cta p{margin:0;color:#5b7289;max-width:700px}

/* Single article: editorial, readable, and intentionally quieter than service pages. */
.imf-site .im-blog-single{background:#f7fbff;color:#17304a}
.imf-site .im-article-hero{padding:clamp(70px,8vw,112px) clamp(24px,5vw,80px) 62px;background:linear-gradient(180deg,#eef6fd,#f8fbfe);border-bottom:1px solid #d5e4ef}
.imf-site .im-article-hero-inner{max-width:980px;margin-inline:auto}
.imf-site .im-article-hero .im-eyebrow{margin-bottom:24px!important}
.imf-site .im-article-hero .wp-block-post-title{margin:0;color:#102f4a;font-size:clamp(3rem,6vw,5.65rem);line-height:1.03;letter-spacing:-.045em}
.imf-site .im-article-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:27px;color:#58728a;font-size:13px;font-weight:650}
.imf-site .im-article-meta .wp-block-post-terms{margin:0}
.imf-site .im-article-meta .wp-block-post-terms a{color:#075fab;text-decoration:none;font-weight:750}
.imf-site .im-article-feature{max-width:1120px;margin:0 auto;padding:44px 28px 0}
.imf-site .im-article-feature .wp-block-post-featured-image{margin:0;border:1px solid #cbddeb;border-radius:27px;overflow:hidden;background:#e5f0f8;box-shadow:0 26px 52px -44px #123a5d}
.imf-site .im-article-feature .wp-block-post-featured-image img{width:100%;max-height:670px;object-fit:cover;display:block}
.imf-site .im-article-body-shell{max-width:830px;margin:0 auto;padding:clamp(54px,7vw,88px) 28px 74px}
.imf-site .im-article-body-shell>.wp-block-post-content{font-size:18px;line-height:1.82;color:#29465f}
.imf-site .im-article-body-shell>.wp-block-post-content>p{margin-bottom:1.45em}
.imf-site .im-article-body-shell>.wp-block-post-content :is(h2,h3,h4){color:#102f4a;margin-top:1.65em;margin-bottom:.58em}
.imf-site .im-article-body-shell>.wp-block-post-content h2{font-size:clamp(2rem,3.6vw,3.05rem)}
.imf-site .im-article-body-shell>.wp-block-post-content h3{font-size:clamp(1.55rem,2.6vw,2.15rem)}
.imf-site .im-article-body-shell>.wp-block-post-content :is(ul,ol){padding-left:1.4em;margin-block:1.15em 1.6em}
.imf-site .im-article-body-shell>.wp-block-post-content li{margin-bottom:.55em}
.imf-site .im-article-body-shell>.wp-block-post-content a{font-weight:650}
.imf-site .im-article-body-shell>.wp-block-post-content blockquote{margin:2.2em 0;padding:30px 34px;border:1px solid #aac9df;border-left:4px solid #1687f8;border-radius:18px;background:#eef7fe;color:#163a5a;font-family:Georgia,serif;font-size:1.25em;line-height:1.55}
.imf-site .im-article-body-shell>.wp-block-post-content :is(figure.wp-block-image,.wp-block-gallery,.wp-block-video){margin-block:2.2em}
.imf-site .im-article-body-shell>.wp-block-post-content .wp-block-image img{border-radius:16px}
.imf-site .im-article-footer-meta{margin-top:52px;padding-top:25px;border-top:1px solid #d3e2ed;color:#61778b;font-size:13px}
.imf-site .im-article-footer-meta a{font-weight:700;text-decoration:none}
.imf-site .im-article-navigation{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.imf-site .im-article-navigation .wp-block-post-navigation-link{margin:0;padding:18px 20px;border:1px solid #cfdfeb;border-radius:14px;background:#fff;font-size:14px;font-weight:700}
.imf-site .im-article-navigation .post-navigation-link-next{text-align:right}
.imf-site .im-article-navigation a{text-decoration:none}
.imf-site .im-related-posts{padding:72px clamp(24px,5vw,80px) 94px;background:#edf5fc;border-top:1px solid #d4e3ef}
.imf-site .im-related-posts .im-inner{max-width:1200px}
.imf-site .im-related-posts-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
.imf-site .im-related-posts-head h2{margin:0;color:#102f4a;font-size:clamp(2.1rem,3.8vw,3.45rem)}
.imf-site .im-related-posts-head p{margin:0;max-width:440px;color:#5e7489;font-size:15px}
.imf-site .im-related-posts .im-blog-card{background:#fafdff}

@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-blog-hero .im-inner{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-hero-note{margin-left:0;max-width:680px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cards.im-blog-columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cta .im-inner{grid-template-columns:1fr}
 .imf-site .im-related-posts .im-blog-cards.im-blog-columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 :is(.imf-site,.editor-styles-wrapper) .im-blog-hero{padding-block:58px 50px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-hero-note{padding-left:0;border-left:0;border-top:1px solid #c8dce9;padding-top:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-collection{padding-block:52px 72px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-collection-head{display:block}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-collection-head p{margin-top:12px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cards.im-blog-columns-3,
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cards.im-blog-columns-2,
 .imf-site .im-related-posts .im-blog-cards.im-blog-columns-3{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-card-body{padding:23px 22px 22px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-pagination{grid-template-columns:1fr 1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-page-status{grid-column:1 / -1;grid-row:1;text-align:center}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-page-edge{display:none}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cta{padding-block:52px}
 :is(.imf-site,.editor-styles-wrapper) .im-blog-cta .im-inner{padding:30px 26px}
 .imf-site .im-article-hero{padding-block:56px 46px}
 .imf-site .im-article-feature{padding-inline:20px;padding-top:30px}
 .imf-site .im-article-feature .wp-block-post-featured-image{border-radius:19px}
 .imf-site .im-article-body-shell{padding:46px 22px 58px}
 .imf-site .im-article-body-shell>.wp-block-post-content{font-size:17px;line-height:1.78}
 .imf-site .im-article-navigation{grid-template-columns:1fr}
 .imf-site .im-article-navigation .post-navigation-link-next{text-align:left}
 .imf-site .im-related-posts{padding-block:56px 70px}
 .imf-site .im-related-posts-head{display:block}
 .imf-site .im-related-posts-head p{margin-top:10px}
}
@media(prefers-reduced-motion:reduce){
 :is(.imf-site,.editor-styles-wrapper) .im-blog-card,
 :is(.imf-site,.editor-styles-wrapper) .im-blog-card-image,
 :is(.imf-site,.editor-styles-wrapper) .im-blog-card-action span{transition:none!important;transform:none!important}
}


/* Blog taxonomy/archive cards follow the same editorial family while inheriting the archive query. */
.imf-site .im-blog-archive .wp-block-query .im-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;list-style:none}
.imf-site .im-blog-archive .wp-block-query .im-blog-grid>li{display:flex;flex-direction:column;min-width:0;padding:0 0 24px;border:1px solid #ccdeec;border-radius:23px;overflow:hidden;background:#fff;box-shadow:0 18px 42px -36px rgba(16,47,74,.5)}
.imf-site .im-blog-archive .wp-block-post-featured-image{margin:0 0 22px;aspect-ratio:16/9;overflow:hidden;background:#dbeaf5}
.imf-site .im-blog-archive .wp-block-post-featured-image img{width:100%;height:100%;object-fit:cover}
.imf-site .im-blog-archive .wp-block-post-date{margin:0 24px;color:#617b91;font:700 10px/1.5 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.imf-site .im-blog-archive .wp-block-post-title{margin:13px 24px 12px;font-size:clamp(1.55rem,2vw,2rem);line-height:1.14}
.imf-site .im-blog-archive .wp-block-post-title a{color:#102f4a;text-decoration:none}
.imf-site .im-blog-archive .wp-block-post-excerpt{margin:0 24px;color:#526f88;font-size:15px;line-height:1.72}
.imf-site .im-blog-archive .wp-block-post-excerpt__more-link{display:inline-block;margin-top:16px;color:#0866b6;font-size:13px;font-weight:750;text-decoration:none}
.imf-site .im-blog-archive .wp-block-query-pagination{margin-top:42px;padding-top:25px;border-top:1px solid #d4e3ef;font-size:13px;font-weight:700}
@media(max-width:900px){.imf-site .im-blog-archive .wp-block-query .im-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.imf-site .im-blog-archive .wp-block-query .im-blog-grid{grid-template-columns:1fr}}


/* 0.3.22 — Legal / policy documents and human-readable sitemap. */
:is(.imf-site,.editor-styles-wrapper) .im-legal-page,
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-page{background:#f4f9fd;color:#193b58}
:is(.imf-site,.editor-styles-wrapper) .im-legal-hero{padding:72px clamp(24px,5vw,80px) 62px;background:linear-gradient(180deg,#eef6fd,#f8fbfe);border-bottom:1px solid #d3e3ef}
:is(.imf-site,.editor-styles-wrapper) .im-legal-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:62px;align-items:end}
:is(.imf-site,.editor-styles-wrapper) .im-legal-hero h1,
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero h1{margin:20px 0 0;color:#102f4a;font-size:clamp(3.5rem,6.4vw,6rem);line-height:1.02;letter-spacing:-.045em;font-weight:400}
:is(.imf-site,.editor-styles-wrapper) .im-legal-hero-intro{max-width:720px;margin:22px 0 0;color:#526f88;font-size:17px;line-height:1.78}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-card{position:relative;padding:28px 30px;border:1px solid #bdd4e5;border-radius:22px;background:#fff;box-shadow:0 22px 48px -42px #133b5d;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-card::before,
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#049de2,#718cce,#e86195,#ff883c)}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-label{margin:18px 0 4px;color:#52718c;font:800 9px/1.4 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-label:first-child{margin-top:0}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-value{margin:0;color:#123b5c;font:700 17px/1.45 system-ui,sans-serif}
:is(.imf-site,.editor-styles-wrapper) .im-legal-meta-copy{margin:0;color:#58728a;font-size:13px;line-height:1.65}
:is(.imf-site,.editor-styles-wrapper) .im-legal-body{padding:64px clamp(24px,5vw,80px) 92px;background:#f7fbfe}
:is(.imf-site,.editor-styles-wrapper) .im-legal-body .im-inner{max-width:980px}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc{padding:clamp(30px,5vw,62px);border:1px solid #ccdfea;border-radius:26px;background:#fff;box-shadow:0 24px 56px -48px #123b5c}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc .im-legal-lead{margin:0 0 38px;color:#21445f;font:400 clamp(1.2rem,1.9vw,1.45rem)/1.72 Georgia,serif}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc h2{margin:46px 0 14px;padding-top:6px;color:#102f4a;font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.16;letter-spacing:-.02em}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc h2:first-of-type{margin-top:0}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc p{margin:0 0 17px;color:#405f78;font-size:16px;line-height:1.82}
:is(.imf-site,.editor-styles-wrapper) .im-legal-doc a{color:#0868ba;font-weight:700;text-underline-offset:3px}
:is(.imf-site,.editor-styles-wrapper) .im-legal-list{margin:13px 0 24px;padding-left:1.25rem;color:#405f78;font-size:16px;line-height:1.78}
:is(.imf-site,.editor-styles-wrapper) .im-legal-list li{margin-bottom:9px;padding-left:5px}
:is(.imf-site,.editor-styles-wrapper) .im-legal-note{margin:24px 0!important;padding:20px 22px;border:1px solid #bcd5e7;border-left:4px solid #1687f8;border-radius:14px;background:#eff7fd;color:#244c69!important}

:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero{padding:72px clamp(24px,5vw,80px) 58px;background:linear-gradient(180deg,#0b2945,#123e61);border-bottom:1px solid #315b7b}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero .im-inner{max-width:1240px}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero h1{color:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero .im-eyebrow{color:#a8d9f6}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero .im-eyebrow::before{background:#ff8a2a}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero .im-legal-hero-intro{color:#c9ddea}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-body{padding:58px clamp(24px,5vw,80px) 92px;background:#f4f9fd}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-intro{max-width:850px;margin:0 0 32px;color:#5a7186;font-size:15px;line-height:1.75}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card{position:relative;min-width:0;padding:29px 28px 26px;border:1px solid #cbddea;border-radius:21px;background:#fff;box-shadow:0 18px 44px -40px #123b5c;overflow:hidden}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card:nth-child(2),
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card:nth-child(5){background:#edf6fd}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card h3{margin:0 0 10px;color:#102f4a;font-size:26px;line-height:1.17}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-card>p{margin:0 0 20px;color:#60788d;font-size:13px;line-height:1.7}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-links{margin:0;padding:0;list-style:none;border-top:1px solid #d6e4ef}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-links li{margin:0;padding:0;border-bottom:1px solid #d6e4ef}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;color:#0866b6;font-size:13px;font-weight:750;text-decoration:none}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-links a::after{content:"→";font-size:15px;transition:transform .16s ease}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-links a:hover::after{transform:translateX(3px)}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-close{margin-top:28px;padding:32px 34px;border:1px solid #bfd5e6;border-radius:22px;background:#0f3858;color:#d8e8f3}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-close h2{margin:0 0 8px;color:#fff;font-size:clamp(1.8rem,3vw,2.6rem)}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-close p{margin:0;color:#d0e2ee;font-size:15px;line-height:1.7}
:is(.imf-site,.editor-styles-wrapper) .im-sitemap-close a{color:#a9dcfa;font-weight:750}

@media(max-width:900px){
 :is(.imf-site,.editor-styles-wrapper) .im-legal-hero-grid{grid-template-columns:1fr;gap:30px}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-meta-card{max-width:650px}
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 :is(.imf-site,.editor-styles-wrapper) .im-legal-hero,:is(.imf-site,.editor-styles-wrapper) .im-sitemap-hero{padding-block:54px 46px}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-body,:is(.imf-site,.editor-styles-wrapper) .im-sitemap-body{padding-block:44px 64px}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-doc{padding:28px 22px;border-radius:20px}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-doc h2{margin-top:38px}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-doc p,:is(.imf-site,.editor-styles-wrapper) .im-legal-list{font-size:15px}
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-grid{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-close{padding:27px 24px}
}
@media(prefers-reduced-motion:reduce){
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-links a::after{transition:none!important;transform:none!important}
}
@media(forced-colors:active){
 :is(.imf-site,.editor-styles-wrapper) .im-legal-meta-card,
 :is(.imf-site,.editor-styles-wrapper) .im-legal-doc,
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-card,
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-close{background:Canvas!important;color:CanvasText!important;border-color:CanvasText;box-shadow:none}
 :is(.imf-site,.editor-styles-wrapper) .im-legal-page a,
 :is(.imf-site,.editor-styles-wrapper) .im-sitemap-page a{color:LinkText!important}
}


/* --------------------------------------------------------------------------
   Framework 0.3.23 · navigation UX/accessibility refinement
   Keeps the approved three-zone composition; improves readability, target
   alignment, dropdown scanning, CTA geometry, and mobile disclosure behavior.
   -------------------------------------------------------------------------- */
.imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{
  padding:8px 22px;
}
.imf-site .im-studio-header-threezone .im-studio-header-inner{
  grid-template-columns:96px minmax(0,1fr) auto;
  gap:18px;
}
.imf-site .im-studio-header-threezone .im-nav-primary{
  font-size:14px;
  line-height:1.35;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list{
  gap:2px;
  align-items:center;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li{
  min-height:44px;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:has(> .im-sub-toggle){
  display:flex;
  align-items:center;
}
.imf-site .im-studio-header-threezone .im-nav-primary a{
  color:#15385d;
  min-height:44px;
  padding:10px 9px;
  font-weight:650;
  line-height:1.25;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li>a:hover,
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li>a:focus-visible{
  background:#eaf4ff;
}
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>.current-menu-item>a,
.imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>.current-menu-ancestor>a{
  color:#0e3158;
  background:#e7f2ff;
  box-shadow:inset 0 -2px 0 #1687f8;
}
.imf-site .im-studio-header-threezone .im-sub-toggle{
  position:relative;
  flex:0 0 auto;
  width:36px;
  min-width:36px;
  height:36px;
  min-height:36px;
  margin-inline-start:1px;
  padding:0;
  display:inline-grid;
  place-items:center;
  color:#1a456e;
  background:#f8fbff;
  border-color:#caddec;
  border-radius:9px;
  box-shadow:inset 0 1px 0 #fff;
}
.imf-site .im-studio-header-threezone .im-sub-toggle-icon{
  display:block;
  width:8px;
  height:8px;
  border-inline-end:1.7px solid currentColor;
  border-block-end:1.7px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transform-origin:center;
  transition:transform .16s ease;
}
.imf-site .im-studio-header-threezone .im-sub-toggle[aria-expanded="true"] .im-sub-toggle-icon{
  transform:translateY(2px) rotate(225deg);
}
.imf-site .im-studio-header-threezone .im-sub-toggle:hover{
  color:#0b63b8;
  background:#eef6ff;
  border-color:#a9cdea;
}
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu{
  inset-block-start:calc(100% + 7px);
  margin:0;
  padding:8px;
  min-width:252px;
  max-width:min(320px,calc(100vw - 32px));
  max-height:calc(100vh - 118px);
  overflow:auto;
  overscroll-behavior:contain;
  border-color:#cbddec;
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 42px -26px rgba(17,56,91,.42),inset 0 1px 0 #fff;
}
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li{
  width:100%;
}
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a{
  width:100%;
  max-width:none;
  min-height:44px;
  justify-content:flex-start;
  padding:10px 12px;
  color:#17395e;
  border-radius:8px;
  font-size:13.5px;
  font-weight:650;
  line-height:1.35;
  white-space:normal;
}
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a:hover,
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a:focus-visible,
.imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>.current-menu-item>a{
  color:#0e3158;
  background:#eaf4ff;
  box-shadow:inset 3px 0 0 #1687f8;
}
.imf-site .im-studio-header-threezone .im-studio-header-contact{
  display:grid;
  grid-template-columns:auto auto;
  align-items:stretch;
  justify-content:end;
  gap:10px;
}
.imf-site .im-studio-header-threezone .im-business-phone,
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  height:52px;
  min-height:52px;
  box-sizing:border-box;
  align-self:stretch;
}
.imf-site .im-studio-header-threezone .im-business-phone{
  min-width:150px;
  align-content:center;
  padding:7px 14px;
}
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  gap:11px;
  padding:10px 18px;
  font-size:12.5px;
  font-weight:760;
}
.imf-site .im-primary-menu-cta-arrow{
  display:inline-grid;
  place-items:center;
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin:0;
  font-size:17px;
  line-height:18px;
  transform:translateY(-.5px);
}
.imf-site .im-studio-header-threezone .im-menu-toggle{
  color:#15385d;
  background:#f5f9fe;
  border-color:#c9ddec;
  box-shadow:inset 0 1px 0 #fff;
  font-weight:700;
}
.imf-site .im-studio-header-threezone .im-menu-toggle-icon{
  font-size:17px;
  line-height:1;
}
@media(max-width:1180px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:88px minmax(0,1fr) auto;gap:12px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:62px}
  .imf-site .im-studio-header-threezone .im-nav-primary{font-size:13px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:6px}
  .imf-site .im-studio-header-threezone .im-business-phone{min-width:136px;padding-inline:10px}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta{padding-inline:14px;font-size:11.5px}
}
@media(max-width:1080px){
  .imf-site .im-studio-header-threezone .im-business-phone{display:none}
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:86px minmax(0,1fr) auto}
}
@media(max-width:900px) and (min-width:781px){
  .imf-site .im-studio-header-threezone .im-studio-header-inner{grid-template-columns:78px minmax(0,1fr) auto;gap:8px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:56px}
  .imf-site .im-studio-header-threezone .im-nav-primary{font-size:12px}
  .imf-site .im-studio-header-threezone .im-nav-primary a{padding-inline:4px}
  .imf-site .im-studio-header-threezone .im-primary-menu-cta{padding-inline:11px;font-size:10.5px}
}
@media(max-width:780px){
  .imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{padding:14px 16px 16px}
  .imf-site .im-studio-header-threezone .im-studio-header-inner{gap:12px}
  .imf-site .im-studio-header-threezone .im-brand-image{height:74px}
  .imf-site .im-studio-header-threezone .im-nav-primary{font-size:15px}
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced .im-menu-toggle{
    width:100%;
    min-height:48px;
    height:48px;
    justify-content:space-between;
    padding:10px 14px;
    border-radius:10px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced>.im-menu-list{
    padding-top:10px;
    gap:3px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary .im-menu-list>li>a{
    width:100%;
    min-height:48px;
    padding:12px 13px;
    border-radius:9px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li:has(> .im-sub-toggle){
    display:grid;
    grid-template-columns:minmax(0,1fr) 44px;
    column-gap:6px;
  }
  .imf-site .im-studio-header-threezone .im-sub-toggle{
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
    margin:0;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li:has(> .im-sub-toggle)>.sub-menu{
    width:100%;
    max-width:none;
    max-height:min(56vh,420px);
    margin:5px 0 9px;
    padding:6px;
    border-radius:10px;
    background:#f8fbff;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a{
    min-height:46px;
    padding:11px 13px;
    font-size:14px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a{
    min-height:50px;
    margin-top:7px;
    padding-inline:16px;
    font-size:14px;
    font-weight:760;
  }
}
@media(prefers-reduced-motion:reduce){
  .imf-site .im-studio-header-threezone .im-sub-toggle-icon{transition:none!important}
}
@media(forced-colors:active){
  .imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a:hover,
  .imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a:focus-visible,
  .imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>.current-menu-item>a{
    box-shadow:inset 3px 0 0 LinkText;
  }
}

/* --------------------------------------------------------------------------
   Framework 0.3.24 · header contact-row alignment correction
   WordPress' is-layout-flow block-gap rule can add a top margin to the second
   direct child even after the wrapper is converted to grid/flex. Reset those
   generated flow margins so the phone and primary CTA share one true baseline.
   -------------------------------------------------------------------------- */
.imf-site .im-studio-header-threezone .im-studio-header-contact{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}
.imf-site .im-studio-header-threezone .im-studio-header-contact > *{
  margin-block-start:0!important;
  margin-block-end:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
}
.imf-site .im-studio-header-threezone .im-business-phone,
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  flex:0 0 auto;
  height:52px;
  min-height:52px;
  align-self:center;
  margin:0!important;
}
.imf-site .im-studio-header-threezone .im-primary-menu-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.imf-site .im-studio-header-threezone .im-primary-menu-cta-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  line-height:1;
  transform:none;
}
@media(max-width:780px){
  .imf-site .im-studio-header-threezone .im-studio-header-contact{display:none}
}


/* --------------------------------------------------------------------------
   Framework 0.3.25 · production mobile navigation + Google Reviews footer
   The mobile header is a two-row grid: brand + phone, then navigation.
   Essential submenu layout uses the JS-added .im-has-submenu class instead of
   relying on :has(), improving compatibility with older Safari/WebKit builds.
   -------------------------------------------------------------------------- */
.imf-site .im-social-google .im-social-glyph{display:inline-grid;place-items:center;font:800 17px/1 Arial,Helvetica,sans-serif;letter-spacing:-1px}
.imf-site .im-social-google .im-social-glyph::before{content:"G"}

@media(max-width:780px){
  .imf-site .im-header-shell.im-studio-header.im-studio-header-threezone{padding:12px 14px 14px}
  .imf-site .im-studio-header-threezone .im-studio-header-inner{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:"brand contact" "nav nav";
    align-items:center;
    gap:10px 12px;
  }
  .imf-site .im-studio-header-threezone .im-brand{grid-area:brand;justify-self:start;margin:0!important}
  .imf-site .im-studio-header-threezone .im-brand-image{height:62px;width:auto;display:block}
  .imf-site .im-studio-header-threezone .im-studio-header-contact{
    grid-area:contact;
    display:flex!important;
    justify-self:end;
    align-items:center;
    width:auto;
    gap:0;
    margin:0!important;
  }
  .imf-site .im-studio-header-threezone .im-studio-header-contact>.im-primary-menu-cta{display:none!important}
  .imf-site .im-studio-header-threezone .im-business-phone{
    display:inline-flex!important;
    flex:0 0 auto;
    width:auto;
    min-width:0;
    height:46px;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:7px 12px;
    margin:0!important;
    border-radius:10px;
    white-space:nowrap;
  }
  .imf-site .im-studio-header-threezone .im-business-phone-label{font-size:9px;line-height:1.1}
  .imf-site .im-studio-header-threezone .im-business-phone-number{font-size:12.5px;line-height:1.15}
  .imf-site .im-studio-header-threezone .im-nav-primary{grid-area:nav;width:100%;min-width:0;margin:0;font-size:15px}
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced .im-menu-toggle{
    display:flex;
    width:100%;
    height:48px;
    min-height:48px;
    align-items:center;
    justify-content:space-between;
    padding:0 14px;
    margin:0;
    border-radius:10px;
    font-size:15px;
  }
  .imf-site .im-studio-header-threezone .im-menu-toggle-icon{display:inline-grid;place-items:center;width:24px;height:24px;font-size:0}
  .imf-site .im-studio-header-threezone .im-menu-toggle-icon::before,
  .imf-site .im-studio-header-threezone .im-menu-toggle-icon::after{content:"";position:absolute;width:15px;height:2px;border-radius:2px;background:currentColor}
  .imf-site .im-studio-header-threezone .im-menu-toggle-icon::before{transform:translateY(-4px)}
  .imf-site .im-studio-header-threezone .im-menu-toggle-icon::after{transform:translateY(4px)}
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced>.im-menu-list{
    width:100%;
    margin:8px 0 0;
    padding:7px;
    gap:2px;
    border:1px solid #d4e2ef;
    border-radius:12px;
    background:#fff;
    box-shadow:0 16px 36px -28px rgba(15,42,85,.4);
  }
  .imf-site .im-studio-header-threezone .im-nav-primary.im-enhanced>.im-menu-list:not(.im-open){display:none}
  .imf-site .im-studio-header-threezone .im-nav-primary .im-menu-list>li{width:100%;min-height:0;margin:0}
  .imf-site .im-studio-header-threezone .im-nav-primary .im-menu-list>li>a{
    display:flex;
    width:100%;
    min-height:48px;
    align-items:center;
    padding:11px 12px;
    margin:0;
    color:#17395e;
    border-radius:8px;
    font-size:15px;
    font-weight:680;
    line-height:1.3;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li.im-has-submenu{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px;
    column-gap:4px;
    align-items:center;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li.im-has-submenu>a{grid-column:1;grid-row:1}
  .imf-site .im-studio-header-threezone .im-nav-primary li.im-has-submenu>.im-sub-toggle{
    grid-column:2;grid-row:1;
    width:44px;min-width:44px;height:44px;min-height:44px;
    margin:0;
    border-radius:8px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary li.im-has-submenu>.sub-menu{
    grid-column:1/-1;
    position:static!important;
    inset:auto!important;
    width:100%;max-width:none;max-height:none;
    margin:3px 0 6px;
    padding:5px 5px 5px 10px;
    overflow:visible;
    border:0;
    border-left:2px solid #d5e7f8;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary .sub-menu>li>a{
    min-height:44px;
    padding:10px 11px;
    color:#244d72;
    background:#f6faff;
    border-radius:8px;
    font-size:14px;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a{
    min-height:50px;
    justify-content:center;
    margin-top:5px;
    color:#fff;
    background:#0866db;
    border:1px solid #0866db;
    border-radius:9px;
    font-size:14px;
    font-weight:760;
  }
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a:hover,
  .imf-site .im-studio-header-threezone .im-nav-primary>.im-menu-list>li:last-child>a:focus-visible{color:#fff;background:#075bbf}
}
@media(max-width:390px){
  .imf-site .im-studio-header-threezone .im-brand-image{height:56px}
  .imf-site .im-studio-header-threezone .im-business-phone{height:44px;min-height:44px;padding-inline:10px}
  .imf-site .im-studio-header-threezone .im-business-phone-label{display:none}
  .imf-site .im-studio-header-threezone .im-business-phone-number{font-size:12px}
}

/* ========================================================================
   Framework 0.3.27 · Homepage proof spectrum
   One cohesive editorial section: functional brand-color feature band followed
   by an open testimonial spread. No overlap or stacked-card dependency.
   ======================================================================== */
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-spectrum{
 background:linear-gradient(180deg,#fff 0%,#fff 58%,#f2f8ff 100%);
 padding-block:clamp(70px,7vw,96px) clamp(76px,7vw,96px);
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-row{
 display:grid!important;
 grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
 gap:clamp(40px,7vw,100px);
 align-items:end;
 margin:0 0 34px!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-row>*{min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-copy .im-eyebrow{margin-bottom:17px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-copy h2{
 margin:0;
 max-width:600px;
 font-size:clamp(40px,4vw,58px);
 line-height:1.02;
 color:#102d49;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-copy h2 strong{color:#0c6ecc}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-intro{
 justify-self:end;
 max-width:610px;
 margin:0!important;
 color:#526b84;
 font-size:15px;
 line-height:1.85;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-belt{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:0;
 overflow:hidden;
 border:1px solid #c5d9e9;
 border-radius:28px;
 box-shadow:0 24px 55px -44px rgba(12,41,65,.48);
 margin:0!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item{
 position:relative;
 min-width:0;
 min-height:244px;
 padding:30px 27px 28px;
 margin:0!important;
 display:flex!important;
 flex-direction:column;
 align-items:flex-start;
 justify-content:flex-start;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item+.h6-spectrum-item{border-left:1px solid rgba(255,255,255,.24)}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-navy{background:#0c2946;color:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-blue{background:#0c6ecc;color:#fff}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-ice{background:#e4f1fd;color:#102d49}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-orange{background:#ff9228;color:#102d49}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item .h6-icon{
 width:44px;height:44px;
 padding:10px;
 border-radius:13px;
 margin:0 0 auto!important;
 background:rgba(255,255,255,.94);
 border:1px solid rgba(255,255,255,.45);
 box-shadow:0 10px 24px -18px rgba(12,41,65,.55);
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item .h6-icon img{width:22px;height:22px}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item h3{
 margin:30px 0 9px;
 font:650 15px/1.4 system-ui,sans-serif;
 color:inherit;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item p{
 margin:0;
 font-size:12.5px;
 line-height:1.72;
 color:inherit;
 opacity:.82;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-navy p,
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-blue p{opacity:.76}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-editorial{
 position:relative;
 display:grid!important;
 grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);
 gap:clamp(42px,7vw,96px);
 align-items:start;
 margin:clamp(50px,6vw,76px) 0 0!important;
 padding-top:clamp(34px,4vw,48px);
 border-top:1px solid #bdd4e6;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-editorial::before{
 content:"“";
 position:absolute;
 top:20px;
 left:calc(35% - 12px);
 font:400 clamp(90px,9vw,132px)/1 Georgia,serif;
 color:#d8ebfb;
 pointer-events:none;
 transform:translateX(-50%);
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta,
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote{min-width:0;margin-block:0!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta .im-eyebrow{margin-bottom:20px!important}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta .h6-review-stars{
 width:98px;
 margin:0 0 26px!important;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta h3{
 margin:0 0 12px;
 max-width:280px;
 font-size:clamp(29px,3vw,39px);
 line-height:1.06;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta>p:last-child{
 max-width:320px;
 margin:0;
 color:#526b84;
 font-size:13px;
 line-height:1.72;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote{
 position:relative;
 z-index:1;
 border:0;
 background:none;
 box-shadow:none;
 padding:12px 0 0!important;
 margin:0!important;
 text-align:left;
 max-width:none;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote p{
 margin:0 0 20px;
 max-width:820px;
 font:400 clamp(28px,3.1vw,43px)/1.34 Georgia,serif;
 color:#153b5c;
 letter-spacing:-.015em;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote cite{
 display:inline-block;
 padding-top:13px;
 border-top:3px solid #ff9228;
 font:650 12px/1.5 system-ui,sans-serif;
 color:#3f6280;
 font-style:normal;
}
:is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-spectrum + .h6-inquiry{padding-top:74px}
@media(max-width:980px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-belt{grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item{min-height:208px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item:nth-child(3){border-left:0;border-top:1px solid rgba(16,45,73,.13)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item:nth-child(4){border-top:1px solid rgba(16,45,73,.13)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-editorial{grid-template-columns:minmax(190px,.52fr) minmax(0,1.48fr);gap:42px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-editorial::before{display:none}
}
@media(max-width:760px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-spectrum{padding-block:58px 70px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-heading-row{grid-template-columns:1fr;gap:18px;margin-bottom:26px!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-intro{justify-self:start}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-belt{border-radius:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item{min-height:190px;padding:24px 22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item h3{margin-top:24px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-editorial{grid-template-columns:1fr;gap:28px;margin-top:48px!important;padding-top:32px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta h3{max-width:none}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-meta>p:last-child{max-width:520px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote{padding-top:0!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-spectrum + .h6-inquiry{padding-top:58px}
}
@media(max-width:480px){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-belt{grid-template-columns:1fr}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item{min-height:0;padding:22px}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item+.h6-spectrum-item{border-left:0;border-top:1px solid rgba(255,255,255,.25)}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item h3{margin-top:18px}
}
@media(forced-colors:active){
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item{background:Canvas!important;color:CanvasText!important;border:1px solid CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-spectrum-item .h6-icon{background:Canvas!important;border-color:CanvasText!important}
 :is(.imf-site,.editor-styles-wrapper) .im-home-six .h6-proof-quote cite{border-color:CanvasText!important}
}
