/* Shared theme typography and colors for custom content and native page blocks. */
.eiiman-story { --ink:var(--wp--preset--color--primary,#1e1e1e); --muted:#505050; --green:#2e7132; --line:#dde5dc; --pale:var(--wp--preset--color--extra-tertiary,#f8fff8); color:var(--ink); font-family:inherit; font-size:16px; line-height:1.75; overflow-wrap:break-word; }
.eiiman-story *, .eiiman-story *::before, .eiiman-story *::after { box-sizing:border-box; }
body.home .wp-site-blocks > .eiiman-home-story { margin-block-start:0!important; }
.eiiman-story h1,.eiiman-story h2,.eiiman-story h3,.eiiman-story h4 { color:var(--ink); font-family:inherit; letter-spacing:normal; font-weight:700; line-height:1.3; text-wrap:balance; }
.eiiman-story h2 { font-size:clamp(26px,2.6vw,36px); font-weight:700; margin:0 0 22px; max-width:26ch; }
.eiiman-story h3 { font-size:22px; margin:0 0 12px; }
.eiiman-story h4 { font-size:18px; margin:0 0 12px; }
.eiiman-story p { margin:0 0 20px; color:var(--muted); }
.eiiman-story a { color:var(--green); text-underline-offset:5px; }
.eiiman-story a:focus-visible,.eiiman-story summary:focus-visible { outline:3px solid #237957; outline-offset:5px; }
.eiiman-story img { display:block; max-width:100%; height:auto; }
.eiiman-story .eiiman-kicker { font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:var(--green); margin:0 0 18px; }
.eiiman-story .eiiman-section { width:min(var(--wp--style--global--content-size,1200px),calc(100% - 48px)); margin:0 auto; padding:56px 0; border-bottom:1px solid var(--line); }
.eiiman-story .eiiman-lead { font-size:18px; max-width:76ch; margin-bottom:30px; }
.eiiman-story .eiiman-hero { background:var(--pale); display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:70px max(40px,calc((100vw - 1200px)/2)); min-height:580px; }
.eiiman-story .eiiman-hero h1 { font-size:clamp(38px,4.2vw,60px); font-weight:700; margin:0 0 25px; max-width:18ch; }
.eiiman-story .eiiman-hero-copy > p:not(.eiiman-kicker):not(.eiiman-hero-warranty) { font-size:18px; max-width:54ch; }
.eiiman-story .eiiman-actions { display:flex; flex-wrap:wrap; gap:12px; margin:30px 0 24px; }
.eiiman-story .eiiman-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:13px 21px; min-height:48px; border:1px solid var(--ink); border-radius:50px; background:var(--ink); color:white; font-weight:600; text-decoration:none; line-height:1.5; }
.eiiman-story .eiiman-button:hover { background:var(--green); border-color:var(--green); color:white; }
.eiiman-story .eiiman-button-secondary { background:transparent; color:var(--ink); }
.eiiman-story .eiiman-button-secondary:hover { background:var(--pale); color:var(--ink); }
.eiiman-story .eiiman-hero-warranty { font-size:13px; color:var(--green); max-width:48ch; margin:0; }
.eiiman-story .eiiman-hero-visual { margin:0; min-width:0; }
.eiiman-story .eiiman-hero-visual img { width:100%; aspect-ratio:7/3; object-fit:contain; border-radius:8px; }
.eiiman-story figcaption { display:flex; justify-content:space-between; gap:15px; margin-top:22px; padding-top:16px; border-top:1px solid #c5d5c9; font-size:11px; letter-spacing:.07em; color:var(--muted); }
.eiiman-story .eiiman-application-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:34px; }
.eiiman-story .eiiman-application { display:flex; flex-direction:column; border:1px solid var(--line); padding:27px 23px; border-radius:6px; background:#fff; }
.eiiman-story .eiiman-application p { font-size:15px; }
.eiiman-story .eiiman-application .eiiman-series { font-size:12px; color:var(--green); letter-spacing:.08em; font-weight:700; margin:0 0 24px; }
.eiiman-story .eiiman-application a { margin-top:auto; display:inline-block; padding-top:12px; font-size:14px; font-weight:600; }
.eiiman-story .eiiman-system-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; padding:0; margin:35px 0; gap:2px; }
.eiiman-story .eiiman-system-flow li { padding:24px 18px; background:var(--pale); min-width:0; }
.eiiman-story .eiiman-system-flow span { display:block; font-size:12px; letter-spacing:.07em; color:var(--green); margin-bottom:18px; }
.eiiman-story .eiiman-system-flow strong { font-size:17px; line-height:1.4; display:block; }
.eiiman-story .eiiman-proof-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:30px; margin:34px 0 20px; }
.eiiman-story .eiiman-proof-grid img { width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:5px; margin-bottom:24px; }
.eiiman-story .eiiman-proof-grid p { font-size:15px; }
.eiiman-story .eiiman-offices { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin:32px 0; }
.eiiman-story address { font-style:normal; color:var(--muted); font-size:15px; }
.eiiman-story .eiiman-phone { display:inline-block; padding:12px 0; font-size:21px; font-weight:600; }
.eiiman-story .eiiman-warranty { padding:23px 28px; border-left:3px solid var(--green); background:var(--pale); margin:25px 0; }
.eiiman-story .eiiman-warranty strong { font-size:20px; }
.eiiman-story .eiiman-warranty p { margin:6px 0 0; font-size:14px; }
.eiiman-story .eiiman-agency { background:var(--pale); color:var(--ink); padding:40px; margin:40px auto 0; border-radius:6px; border:1px solid var(--line); }
.eiiman-story .eiiman-agency h2,.eiiman-story .eiiman-agency h3,.eiiman-story .eiiman-agency h4 { color:var(--ink); }
.eiiman-story .eiiman-agency p { color:var(--muted); }
.eiiman-story .eiiman-agency .eiiman-kicker { color:var(--green); }
.eiiman-story .eiiman-agency .eiiman-button { background:var(--ink); color:white; border-color:var(--ink); }
.eiiman-story .eiiman-agency .eiiman-button:hover { background:var(--green); border-color:var(--green); }
.eiiman-story .eiiman-benefits { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:25px; margin:28px 0; }
.eiiman-story .eiiman-benefits article { border-top:1px solid var(--line); padding-top:22px; }
.eiiman-story .eiiman-agency .eiiman-benefits article { border-color:var(--line); }
.eiiman-story .eiiman-terms { font-size:14px; }
.eiiman-story .eiiman-guides { border-bottom:0; }
.eiiman-story .eiiman-resource-links { padding:0; list-style:none; gap:12px 25px; }
.eiiman-story details { margin:22px 0 0; border:1px solid var(--line); padding:0 22px; border-radius:4px; }
.eiiman-story summary { padding:17px 0; cursor:pointer; font-weight:600; }
.eiiman-story details p { margin-top:5px; }
.eiiman-page-story .eiiman-section { width:100%; padding:40px 0; }
.eiiman-page-story .eiiman-agency { padding:35px; }
.eiiman-story .eiiman-footer-links { width:min(var(--wp--style--global--content-size,1200px),calc(100% - 48px)); margin:auto; padding:25px 0; display:flex; flex-wrap:wrap; gap:8px 35px; }
.eiiman-story .eiiman-footer-links a { display:inline-block; padding:8px 0; font-size:14px; font-weight:600; }
@media(min-width:1600px) { .eiiman-story .eiiman-hero { padding-inline:max(40px,calc((100% - 1200px)/2)); } }
@media(max-width:1050px) { .eiiman-story .eiiman-application-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .eiiman-story .eiiman-hero { grid-template-columns:1.1fr .9fr; gap:25px; } }
@media(max-width:760px) {
 .eiiman-story .eiiman-hero { grid-template-columns:1fr; padding:45px 24px 32px; gap:26px; min-height:0; }
 .eiiman-story .eiiman-hero h1 { font-size:clamp(35px,7.8vw,48px); max-width:20ch; }
 .eiiman-story .eiiman-hero-visual { max-width:520px; }
 .eiiman-story .eiiman-section { width:calc(100% - 48px); padding:44px 0; }
 .eiiman-story .eiiman-application-grid { gap:12px; }
 .eiiman-story .eiiman-application { padding:23px 18px; }
 .eiiman-story .eiiman-system-flow { grid-template-columns:1fr; gap:3px; }
 .eiiman-story .eiiman-system-flow li { display:flex; align-items:center; gap:20px; padding:17px 20px; }
 .eiiman-story .eiiman-system-flow span { margin:0; }
 .eiiman-story .eiiman-offices { grid-template-columns:1fr; gap:22px; }
 .eiiman-story .eiiman-agency { padding:30px 24px; margin-top:25px; }
 .eiiman-story .eiiman-footer-links { width:calc(100% - 48px); }
 .eiiman-page-story .eiiman-section { width:100%; }
}
@media(max-width:480px) { .eiiman-story .eiiman-application-grid { grid-template-columns:1fr; } .eiiman-story .eiiman-actions { display:grid; } .eiiman-story .eiiman-warranty { padding:20px; } .eiiman-story figcaption { font-size:10px; flex-wrap:wrap; } }
/* Compact the existing mobile masthead so the page starts within the first screen. */
@media(max-width:781px) {
 .wp-site-blocks > header .top-bar { padding:8px 18px!important; }
 .wp-site-blocks > header .top-bar > .wp-block-columns { display:grid!important; grid-template-columns:1fr; gap:4px!important; padding:0!important; margin:0!important; }
 .wp-site-blocks > header .top-bar > .wp-block-columns > .wp-block-column { display:none; margin:0!important; }
 .wp-site-blocks > header .top-bar > .wp-block-columns > .wp-block-column:has(.eiiman-language-switcher),
 .wp-site-blocks > header .top-bar > .wp-block-columns > .wp-block-column:has(.wp-block-search) { display:block; }
 .wp-site-blocks > header .eiiman-language-switcher { justify-content:center; gap:2px; margin:0; }
 .wp-site-blocks > header .eiiman-language-switcher a { padding:8px 9px; font-size:12px; min-height:40px; }
 .wp-site-blocks > header .header-search-box { max-width:350px; margin:auto!important; }
 .wp-site-blocks > header .wp-block-search__inside-wrapper { padding:0; min-height:40px; }
 .wp-site-blocks > header .wp-block-search__input { min-width:0; }
 .wp-site-blocks > header .wp-block-search__button { min-width:44px; min-height:40px; }
 .wp-site-blocks > header .menu-header { padding:12px 18px!important; border-radius:0!important; }
 .wp-site-blocks > header .menu-header > .wp-block-columns { display:grid!important; grid-template-columns:minmax(0,1fr) 48px 48px; align-items:center; gap:8px!important; margin:0!important; padding:0!important; }
 .wp-site-blocks > header .menu-header > .wp-block-columns > .wp-block-column { margin:0!important; min-width:0; }
 .wp-site-blocks > header .menu-header > .wp-block-columns > .wp-block-column:has(> .wp-block-buttons) { display:none; }
 .wp-site-blocks > header .logo-box { justify-content:flex-start!important; }
 .wp-site-blocks > header .wp-block-site-logo img { width:145px!important; height:auto!important; }
 .wp-site-blocks > header .wp-block-navigation { justify-content:center!important; }
 .wp-site-blocks > header .wp-block-navigation__responsive-container-open { display:flex!important; align-items:center; justify-content:center; width:48px; height:48px; }
 .wp-site-blocks > header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none!important; }
 .wp-site-blocks > header .wp-block-woocommerce-mini-cart { margin:0; }
 .wp-site-blocks > header .wc-block-mini-cart__button { padding:12px; min-width:44px; min-height:44px; }
 body .eiiman-chat { width:50px; height:50px; min-height:50px; padding:10px; justify-content:center; right:max(12px,env(safe-area-inset-right)); bottom:calc(18px + env(safe-area-inset-bottom,0px)); }
 body .eiiman-chat > span { display:none; }
 body .return-to-top-btn { right:76px; bottom:24px; }
}

/* Use the page template's single content rail, including the breadcrumb and saved blocks.
   The parent template uses an 80% rail and clips entry-content; custom sections must
   not add another inset or hide overflowing content/focus indicators. */
body.eiiman-content-page .post-page-area {
 padding:32px 24px 56px !important;
}
body.eiiman-content-page .post-page-area > .wp-block-columns {
 width:100%; max-width:var(--wp--style--global--content-size,1200px);
 margin-inline:auto;
}
body.eiiman-content-page .wp-block-post-content {
 padding:0; overflow:visible; font-family:inherit; font-size:16px; line-height:1.75;
}
body.eiiman-content-page .eiiman-breadcrumb { margin:0 0 24px; font-size:14px; }
.eiiman-page-story { width:100%; max-width:100%; margin:0; }
.eiiman-page-story .eiiman-section { width:100%; padding-block:40px; }
.eiiman-page-story > .eiiman-section:first-child { padding-top:8px; }
.eiiman-page-story .eiiman-introduction { padding-bottom:24px; border-bottom:0; }
.eiiman-page-story .eiiman-introduction .eiiman-lead { margin:0; }
.eiiman-page-story > .eiiman-agency,
.eiiman-page-story > .eiiman-agency:first-child { padding:32px; margin-top:32px; }
.eiiman-page-story .eiiman-section:last-child:not(.eiiman-agency) { border-bottom:0; }
.eiiman-story .eiiman-legacy-content { padding-block:32px; border-block:1px solid var(--line); }
.eiiman-story .eiiman-legacy-content > p { margin:0 0 12px; font-size:16px; line-height:1.75; }
.eiiman-story .eiiman-legacy-content > p:has(> strong:only-child) { margin-top:32px; margin-bottom:12px; color:var(--ink); font-size:22px; line-height:1.3; }
.eiiman-story .eiiman-legacy-content > p:first-child { margin-top:0; }
.eiiman-story .eiiman-legacy-content > :last-child { margin-bottom:0; }
body.eiiman-content-page .wp-block-post-title { font-size:clamp(30px,3.4vw,48px) !important; line-height:1.3; letter-spacing:normal; font-weight:700; }
.wp-site-blocks .eiiman-language-switcher { font-family:inherit; }
.eiiman-story :is(.eiiman-hero-copy,.eiiman-proof-grid > article,.eiiman-benefits > article,.eiiman-offices > article) { min-width:0; }
@media(max-width:760px) {
 body.eiiman-content-page .post-page-area { padding:24px 24px 40px !important; }
 .eiiman-page-story .eiiman-section { padding-block:32px; }
 .eiiman-page-story > .eiiman-agency,
 .eiiman-page-story > .eiiman-agency:first-child { padding:24px; margin-top:24px; }
 .eiiman-page-story > .eiiman-section:first-child:not(.eiiman-agency) { padding-top:0; }
}
/* The parent theme resets block-start margins with !important. */
.eiiman-story .eiiman-legacy-content > p:has(> strong:only-child) { margin-block-start:32px !important; }
.eiiman-story .eiiman-legacy-content > p:first-child { margin-block-start:0 !important; }
@media(min-width:782px) {
 .wp-site-blocks .eiiman-language-switcher { font-size:14px; gap:2px; }
 .wp-site-blocks .eiiman-language-switcher a { box-sizing:border-box; padding:10px; }
}
