/* Sonic IMAI - component styles (header, nav, footer, switcher, buttons, sections).
   Brand: navy #243B83 / deep navy #1b2a6b / red #c8102e / yellow #FFED47 / gold #ffd200. Font: Poppins. */

:root{
	--imai-navy:#243B83; --imai-navy-deep:#1b2a6b; --imai-red:#c8102e; --imai-red-dk:#a00b23;
	--imai-yellow:#FFED47; --imai-gold:#ffd200; --imai-ink:#1a1e2c; --imai-muted:#5b6478;
	--imai-line:#e3e8f2; --imai-paper:#f5f7fb; --imai-shadow:0 6px 24px rgba(20,30,80,.10);
	--imai-hd-h:74px;
}

*{box-sizing:border-box}
body{margin:0;color:var(--imai-ink);font-family:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
img{max-width:100%;height:auto}
a{color:var(--imai-red)}

/* ---------------- Buttons ---------------- */
.imai-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;font-weight:700;
	border-radius:8px;padding:.7rem 1.25rem;text-decoration:none;line-height:1.1;white-space:nowrap;
	transition:transform .12s ease,background .15s ease,box-shadow .15s ease}
.imai-btn:hover{transform:translateY(-1px)}
.imai-btn--quote{background:var(--imai-red);color:#fff;box-shadow:0 4px 14px rgba(200,16,46,.28)}
.imai-btn--quote:hover{background:var(--imai-navy-deep)}
.imai-btn--call{background:var(--imai-gold);color:var(--imai-navy);box-shadow:0 4px 14px rgba(0,0,0,.12)}
.imai-btn--call:hover{background:var(--imai-yellow)}

/* ---------------- Header ---------------- */
.imai-hd{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--imai-line)}
.imai-hd__in{max-width:1240px;margin:0 auto;padding:.5rem clamp(1rem,4vw,2rem);
	display:flex;align-items:center;gap:1.25rem;min-height:var(--imai-hd-h)}
.imai-hd__logo{display:inline-flex;align-items:center;flex:0 0 auto}
.imai-hd__logo img{height:54px;width:auto;display:block}
.imai-hd__badge{height:50px;width:auto;flex:0 0 auto;margin-left:.6rem}
.imai-hd__spacer{flex:1 1 auto}
@media(max-width:980px){.imai-hd__badge{height:40px;margin-left:.4rem}.imai-hd__spacer{display:none}}
/* reusable logo red gradient accent */
:root{--imai-red-grad:linear-gradient(135deg,#e02a3c 0%,#c8102e 55%,#9d0c24 100%)}
.imai-hd__nav{margin-left:auto;display:flex;align-items:center;gap:1.25rem}
.imai-menu{display:flex;align-items:center;gap:1.35rem;list-style:none;margin:0;padding:0}
.imai-menu a{color:var(--imai-navy);font-weight:600;text-decoration:none;font-size:1rem;padding:.4rem 0}
.imai-menu a:hover{color:var(--imai-red)}
.imai-menu .menu-item-has-children{position:relative}
.imai-menu .menu-item-has-children>a::after{content:"";display:inline-block;margin-left:.4em;
	border:5px solid transparent;border-top-color:currentColor;transform:translateY(3px)}
.imai-menu .sub-menu{position:absolute;top:100%;left:0;min-width:230px;background:#fff;
	border:1px solid var(--imai-line);border-radius:10px;box-shadow:var(--imai-shadow);
	padding:.4rem;margin:0;list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);
	transition:opacity .15s ease,transform .15s ease,visibility .15s}
.imai-menu .menu-item-has-children:hover>.sub-menu,
.imai-menu .menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.imai-menu .sub-menu a{display:block;padding:.55rem .7rem;border-radius:7px}
.imai-menu .sub-menu a:hover{background:var(--imai-paper)}
.imai-hd__cta{display:flex;align-items:center;gap:.6rem}
.imai-hd__cta--mobile{display:none}
.imai-hd__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;
	width:46px;height:40px;margin-left:auto;background:none;border:0;cursor:pointer;padding:8px}
.imai-hd__toggle span{height:3px;width:100%;background:var(--imai-navy);border-radius:2px;transition:.2s}

@media(max-width:980px){
	.imai-hd__toggle{display:flex}
	.imai-hd__cta--desk{display:none}
	.imai-hd__cta--mobile{display:flex;flex-direction:column;gap:.6rem;margin-top:1rem}
	.imai-hd__cta--mobile .imai-btn{width:100%}
	.imai-hd__nav{position:fixed;inset:var(--imai-hd-h) 0 auto 0;margin:0;flex-direction:column;align-items:stretch;
		background:#fff;border-bottom:1px solid var(--imai-line);box-shadow:var(--imai-shadow);
		padding:1rem clamp(1rem,4vw,2rem) 1.5rem;gap:.25rem;max-height:calc(100vh - var(--imai-hd-h));
		overflow:auto;transform:translateY(-12px);opacity:0;visibility:hidden;transition:.2s}
	body.imai-nav-open .imai-hd__nav{transform:none;opacity:1;visibility:visible}
	body.imai-nav-open .imai-hd__toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
	body.imai-nav-open .imai-hd__toggle span:nth-child(2){opacity:0}
	body.imai-nav-open .imai-hd__toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
	.imai-menu{flex-direction:column;align-items:stretch;gap:0}
	.imai-menu>li{border-bottom:1px solid var(--imai-line)}
	.imai-menu a{padding:.85rem .2rem;font-size:1.05rem}
	.imai-menu .menu-item-has-children>a::after{float:right}
	.imai-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
		border:0;padding:0 0 .4rem .8rem;display:none}
	.imai-menu .imai-sub-open>.sub-menu{display:block}
}

/* ---------------- Language switcher pill ---------------- */
#imai-lang-switch{position:fixed;right:14px;left:auto;bottom:14px;z-index:99999;background:var(--imai-navy);
	color:#fff;font:600 13px/1 "Poppins",system-ui,Arial,sans-serif;padding:9px 15px;border-radius:30px;
	text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
#imai-lang-switch:hover{background:var(--imai-navy-deep)}

/* ---------------- Trust strip (above footer) ---------------- */
.imai-trust-strip{background:var(--imai-navy-deep);color:#fff;padding:14px 16px;text-align:center}
.imai-trust-strip .imai-ts-inner{max-width:1240px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:11px 22px;align-items:center}
.imai-trust-strip .imai-ts-item{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:#eaf0ff}
.imai-trust-strip .imai-ts-item b{color:var(--imai-yellow)}
.imai-trust-strip .imai-ts-ic{color:var(--imai-yellow);font-size:15px}
.imai-trust-strip .imai-g-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:50px;padding:6px 13px 6px 11px;box-shadow:0 2px 6px rgba(0,0,0,.18);text-decoration:none}
.imai-trust-strip .imai-g-tx{color:var(--imai-navy-deep);font-size:13px;font-weight:700;line-height:1.15;text-align:left}
.imai-trust-strip .imai-g-tx .st{color:#FFB400;letter-spacing:.5px;font-size:12px}
.imai-trust-strip .imai-g-tx small{display:block;color:#5a6275;font-weight:600;font-size:10.5px}
.imai-trust-strip .imai-lic{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#eaf0ff;line-height:1.2;text-align:left}
.imai-trust-strip .imai-lic b{color:var(--imai-yellow)}
.imai-trust-strip .imai-lic small{display:block;color:#c4cef0;font-weight:600;font-size:10.5px}
.imai-trust-strip a.imai-bbb{display:inline-flex;align-items:center;gap:9px;text-decoration:none}
.imai-trust-strip .imai-bbb img{height:38px;width:auto;display:block;background:#fff;border-radius:6px;padding:3px 5px}
.imai-trust-strip .imai-bbb small{color:#eaf0ff;font-weight:700;font-size:12px;line-height:1.15;text-align:left}
.imai-trust-strip .imai-bbb small b{color:var(--imai-yellow)}
@media(max-width:600px){.imai-trust-strip .imai-ts-inner{gap:10px 16px}.imai-trust-strip .imai-ts-item{font-size:12.5px}}

/* ---------------- Footer ---------------- */
.imai-ft{background:var(--imai-navy-deep);color:#dfe5f5;margin-top:var(--wp--preset--spacing--40,4rem)}
.imai-ft__in{max-width:1240px;margin:0 auto;padding:clamp(2.5rem,5vw,4rem) clamp(1rem,4vw,2rem);
	display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem}
.imai-ft a{color:#dfe5f5;text-decoration:none}
.imai-ft a:hover{color:#fff;text-decoration:underline}
.imai-ft__brand img{height:54px;width:auto;background:#fff;border-radius:8px;padding:6px 10px}
.imai-ft__brand p{color:#aeb8d6;font-size:.95rem;line-height:1.6;margin:.9rem 0}
.imai-ft__bbb{display:inline-block;margin-top:6px;background:#fff;border-radius:8px;padding:6px 9px;line-height:0}
.imai-ft__bbb img{height:42px;width:auto;display:block}
.imai-ft__h{color:#fff;font-size:1.05rem;margin:0 0 1rem}
.imai-ft__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;font-size:.95rem}
.imai-ft__visit address{font-style:normal;line-height:1.7;color:#cdd6ee;font-size:.95rem}
.imai-ft__hours{color:var(--imai-gold);font-weight:600;font-size:.9rem;margin:.8rem 0}
.imai-ft__social{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.imai-ft__social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;
	border-radius:50%;background:rgba(255,255,255,.10);color:#fff;transition:background .15s ease,transform .12s ease}
.imai-ft__social a:hover{background:var(--imai-gold);color:var(--imai-navy-deep);transform:translateY(-2px)}
.imai-ft__social svg{display:block}
.imai-ft__bar{border-top:1px solid rgba(255,255,255,.12);text-align:center;
	padding:1.1rem 1rem;color:#9aa6cc;font-size:.85rem}
.imai-ft__bar p{margin:0}
@media(max-width:860px){.imai-ft__in{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.imai-ft__in{grid-template-columns:1fr;text-align:center}
	.imai-ft__social{justify-content:center}.imai-ft__brand .imai-ft__bbb{margin-inline:auto}}

/* ---------------- Generic content helpers ---------------- */
.imai-quote-main{padding:0}
main .wp-block-heading{color:var(--imai-navy)}

/* ---------------- Long-form article / page content polish ---------------- */
main .wp-block-post-title{color:var(--imai-navy);margin:clamp(1.5rem,4vw,2.75rem) auto .5rem;line-height:1.12}
main .entry-content,main .wp-block-post-content{color:#26303f}
main .wp-block-post-content>*{margin-block:0 1.15rem}
main .wp-block-post-content h2{font-size:var(--wp--preset--font-size--x-large,1.9rem);margin-top:2.2rem;line-height:1.2}
main .wp-block-post-content h3{font-size:1.4rem;margin-top:1.6rem;color:var(--imai-navy-deep)}
main .wp-block-post-content p,main .wp-block-post-content li{font-size:1.0625rem;line-height:1.75}
main .wp-block-post-content a{color:var(--imai-red);text-underline-offset:2px}
main .wp-block-post-content ul,main .wp-block-post-content ol{padding-left:1.3rem}
main .wp-block-post-content li{margin-block:.35rem}
main .wp-block-post-content img{border-radius:12px}
main .wp-block-post-content blockquote{border-left:4px solid var(--imai-gold);background:var(--imai-paper);
	margin:1.6rem 0;padding:1rem 1.25rem;border-radius:0 10px 10px 0}
/* the guide posts' hero figure + CTA box + FAQ (self-styled HTML) */
figure.imai-hero{margin:0 0 1.5rem}
figure.imai-hero img{width:100%;border-radius:14px;box-shadow:var(--imai-shadow)}
.imai-hero,.imai-cta,.imai-faq{max-width:780px;margin-inline:auto}
details{border:1px solid var(--imai-line);border-radius:10px;padding:.25rem 1rem;margin:.6rem 0;background:#fff}
details>summary{cursor:pointer;font-weight:600;color:var(--imai-navy);padding:.7rem 0;list-style:none}
details>summary::-webkit-details-marker{display:none}
details[open]>summary{border-bottom:1px solid var(--imai-line);margin-bottom:.6rem}

/* Trust strip color hardening (rules above were losing the cascade on live; force with !important). Folds in snippet 3602 trust-strip override. */
.imai-trust-strip{background:#1b2a6b!important;color:#fff!important}
.imai-trust-strip .imai-ts-item,.imai-trust-strip .imai-lic{color:#eaf0ff!important}
.imai-trust-strip .imai-ts-item b,.imai-trust-strip .imai-lic b,.imai-trust-strip .imai-ts-ic{color:#FFED47!important}
.imai-trust-strip .imai-lic small{color:#c4cef0!important}
.imai-trust-strip .imai-g-tx{color:#1b2a6b!important}
.imai-trust-strip .imai-g-tx small{color:#5a6275!important}
