/* Enmile 1.0 visual standards — final source for type, composition and image frames. */
:root{
 --enmile-content:1200px;--enmile-gutter:clamp(28px,4vw,48px);
 --enmile-section-space:80px;--enmile-hero-space:88px;--enmile-layout-gap:24px;--enmile-card-pad:24px;--enmile-inner-space:36px;--enmile-flow-space:48px;
 --enmile-type-h1:clamp(36px,3.9vw,52px);--enmile-type-detail:clamp(34px,3.6vw,48px);
 --enmile-type-h2:clamp(28px,3vw,38px);--enmile-type-sub:28px;--enmile-type-card:21px;
 --enmile-body-size:17px;--enmile-body-leading:1.7;
}
body{font-family:Inter,sans-serif;font-size:var(--enmile-body-size);line-height:var(--enmile-body-leading)}
body main :is(h1,h2,h3,h4){font-family:Manrope,sans-serif;font-weight:600!important;letter-spacing:-.025em;text-wrap:pretty;overflow-wrap:normal;word-break:normal}
body main h1{font-size:var(--enmile-type-h1)!important;line-height:1.14!important;letter-spacing:-.035em!important}
body.page .entry-content h1{font-size:var(--enmile-type-h1)!important;line-height:1.14!important;letter-spacing:-.035em!important}
body.page .entry-content h2{font-size:var(--enmile-type-sub)!important;line-height:1.24!important;font-weight:600!important;letter-spacing:-.025em!important}
body.page .entry-content>.wp-block-group.alignfull>h2:first-child,
body.page .entry-content>.wp-block-group.alignfull>p:first-child+h2,
body.page .entry-content .enmile-service-extension>h2:first-of-type{font-size:var(--enmile-type-h2)!important;line-height:1.18!important}
body.page .entry-content h3{font-size:var(--enmile-type-card)!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.015em!important}
body.page .entry-content p,body.page .entry-content li{font-size:var(--enmile-body-size)!important;line-height:var(--enmile-body-leading)!important;letter-spacing:0}
body.page .entry-content .wp-block-column p,
body.page .entry-content .enmile-deliverable-grid p,
body.page .entry-content .enmile-faq-list p{font-size:16px!important;line-height:1.7!important}
body.page .entry-content :is(p.enmile-eyebrow,p.enmile-review-eyebrow,p[style*="letter-spacing"]),
body main :is(.enmile-eyebrow,.enmile-enquiry-kicker,.enmile-review-eyebrow){font-size:12px!important;line-height:1.5!important;font-weight:650!important;letter-spacing:.1em!important;text-transform:uppercase}
body.page .entry-content>.wp-block-group.alignfull>h2{max-width:860px}
body.page .entry-content .wp-block-buttons{gap:12px;margin-top:28px}
body.page .entry-content .wp-block-button__link,body main .enmile-button,body .enmile-enquiry-button{font-size:15px!important;line-height:1.3!important;font-weight:600;letter-spacing:0;min-height:48px}
body.page .entry-content .wp-block-columns{margin-top:32px}
body.page .entry-content .wp-block-column>.wp-block-group{box-shadow:none}
body.page .entry-content .wp-block-column>.wp-block-group:hover{transform:none!important}
body.page .entry-content .enmile-spec-table :is(td,th){font-size:15px;line-height:1.55;padding:14px 18px}
body.page .entry-content .enmile-spec-table td:first-child{font-weight:500}
body.page-id-63 .entry-content .wp-block-cover{min-height:600px!important;padding-block:96px!important}
body.page-id-63 .wp-block-cover h1{font-size:clamp(44px,5vw,64px)!important;line-height:1.08!important;max-width:820px!important}
body.page-id-63 .wp-block-cover__inner-container>p:not(:first-child){font-size:18px!important;line-height:1.7!important;max-width:680px}
body.page-id-63 .entry-content>.wp-block-group.alignfull:nth-child(2){padding-block:28px!important}
body.page-id-63 .entry-content>.wp-block-group.alignfull:nth-child(2)>h2{font-size:23px!important;line-height:1.3!important}
body.page-id-63 .entry-content>.wp-block-group.alignfull:nth-child(2) h3{font-size:17px!important}
/* An actual two-column hero replaces the competing pseudo-element placeholders. */
body.page .entry-content>.enmile-hero-with-visual{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);align-items:center;gap:56px}
body.page .entry-content>.enmile-hero-with-visual::before,
body.page .entry-content>.enmile-hero-with-visual::after{display:none!important;content:none!important}
body.page .entry-content>.enmile-hero-with-visual>*{width:100%!important;max-width:100%!important;min-width:0;margin:0!important}
body.page .entry-content>.enmile-hero-with-visual .enmile-hero-copy h1{font-size:var(--enmile-type-detail)!important;max-width:100%!important;margin:16px 0 24px!important}
body.page .entry-content>.enmile-hero-with-visual .enmile-hero-copy>p{max-width:620px;margin-bottom:0}
body.page .entry-content>.enmile-hero-with-visual .enmile-hero-copy>p:first-child{margin-bottom:0!important}
body.page .entry-content>.enmile-hero-with-visual>.enmile-hero-media{align-self:center;position:relative;max-width:460px!important;justify-self:end}
body.page .entry-content>.wp-block-group.alignfull:first-child h1{line-height:1.14!important}
body.page .entry-content>.wp-block-group.enmile-hero-with-visual:first-child>.enmile-hero-copy{width:100%!important;max-width:100%!important}
body.page .entry-content>.wp-block-group.enmile-hero-with-visual:first-child .enmile-hero-copy>*{max-width:100%!important}
/* Product shots are contained; scenes are cropped in a frame with a specified ratio. */
body.page .entry-content .enmile-media-slot{
 position:relative;display:block!important;width:100%;height:auto!important;min-height:0!important;
 aspect-ratio:var(--enmile-media-ratio,16/10)!important;padding:0!important;
 border:1px solid #d8e3de!important;border-radius:12px!important;overflow:hidden;
 background:#f0f5f2!important;box-sizing:border-box;align-self:start;
}
.enmile-media-slot .enmile-media-drawing{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#337e74;background:radial-gradient(ellipse at 65% 32%,#ffffff 0%,#edf5f1 64%,#e9f0ec 100%)}
.enmile-media-slot .enmile-media-drawing svg{display:block;width:100%;height:100%;max-height:100%}
.enmile-media-slot.enmile-media--product .enmile-media-drawing{background:#f3f6f3;color:#94aaa1}
.enmile-media-slot .enmile-media-label{position:absolute;left:18px;right:18px;bottom:14px;display:flex;flex-direction:column;gap:3px;text-align:left;color:#2f5048}
.enmile-media-slot .enmile-media-label span{font-size:12px;font-weight:600;line-height:1.35}
.enmile-media-slot .enmile-media-label small{font-size:9px;letter-spacing:.08em;line-height:1.4;color:#6c8379}
.enmile-media-slot .enmile-real-media{display:block;width:100%!important;height:100%!important;position:absolute;inset:0;object-fit:var(--enmile-media-fit,contain)}
.enmile-media-slot.enmile-media--product .enmile-real-media{padding:10%;object-fit:contain}
body.page .entry-content>.enmile-hero-with-visual>.enmile-media-slot{border-color:#2c4b43!important;background:#15342d!important;align-self:center}
.enmile-hero-media .enmile-media-drawing{background:radial-gradient(ellipse at 50% 40%,#24473c,#112b27)!important;color:#a5c9bb!important}
.enmile-hero-media .enmile-media-label{color:#d8e9df}.enmile-hero-media .enmile-media-label small{color:#96b3a6}
.enmile-hero-media.enmile-media--product .enmile-real-media{padding:12%;background:#f3f6f3}
/* The primary square has two landscape support frames, rather than stretching three unequal columns. */
body.page .entry-content .enmile-product-gallery{
 display:grid!important;grid-template-columns:minmax(0,calc(52.941176% - var(--enmile-layout-gap) / 17)) minmax(0,1fr)!important;
 grid-template-rows:repeat(2,minmax(0,1fr));gap:24px!important;align-items:stretch;
}
body.page .entry-content .enmile-product-gallery>.wp-block-column{display:block!important;grid-column:2!important;grid-row:auto;min-width:0;margin:0!important}
body.page .entry-content .enmile-product-gallery>.wp-block-column:first-child{grid-column:1!important;grid-row:1/span 2}
body.page .entry-content .enmile-product-gallery>.wp-block-column>.enmile-media-slot{height:100%!important;aspect-ratio:auto!important;margin:0!important;width:100%!important}
body.page .entry-content .enmile-product-gallery>.wp-block-column:first-child>.enmile-media-slot{height:auto!important;aspect-ratio:1/1!important}
body.page .entry-content .enmile-product-visual-grid:not(.enmile-product-gallery){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;align-items:start}
body.page .entry-content .enmile-product-visual-grid:not(.enmile-product-gallery)>.wp-block-column{display:block!important;grid-column:auto!important;grid-row:auto!important}
body.page .entry-content .enmile-product-visual-grid:not(.enmile-product-gallery) .enmile-media-slot{height:auto!important;min-height:0!important;aspect-ratio:var(--enmile-media-ratio,16/10)!important;margin:0!important;width:100%!important}
body.page-id-63 .entry-content .enmile-home-why>.enmile-product-visual-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.page .entry-content .wp-block-column>.wp-block-group:not(.enmile-media-slot)>.enmile-media-slot{
 width:calc(100% + 2*var(--enmile-card-pad))!important;
 margin:calc(-1*var(--enmile-card-pad)) calc(-1*var(--enmile-card-pad)) 24px!important;
 border-width:0 0 1px!important;border-radius:12px 12px 0 0!important;
}
.enmile-hero-concept{border-block:1px solid #38554c;padding:24px 0 8px}
.enmile-concept-kicker{display:block;margin-bottom:24px;color:#8db9a7;font-size:10px;line-height:1.6;letter-spacing:.12em}
.enmile-hero-concept>div{display:flex;gap:18px;align-items:center;padding:22px 0;border-top:1px solid #29473d}
.enmile-hero-concept>div>span{flex:0 0 32px;height:32px;border:1px solid #588b75;border-radius:50%;display:grid;place-items:center;font-size:10px;color:#9fd6be}
.enmile-hero-concept strong{font-size:19px;line-height:1.4;font-weight:500;color:#e4eee8}
/* Semantic figures turn the old text-only architecture placeholders into scannable diagrams. */
body.page .entry-content .enmile-architecture-placeholder{display:block!important;padding:28px!important;min-height:0!important;border:1px solid #d5e3db!important;background:#f3f7f4!important;text-align:left!important}
.enmile-flow-figure{margin:0}
.enmile-flow-figure>figcaption{font-size:11px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:#426b5a;margin-bottom:20px}
body.page .entry-content .enmile-flow-stages{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:0;margin:0}
body.page .entry-content .enmile-flow-stages>li{margin:0;padding:18px 16px;border:1px solid #d4e1d8;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:20px;font-size:14px!important;line-height:1.5!important;min-width:0}
.enmile-flow-stages>li>span{font:500 11px/1 Manrope,sans-serif;color:#4c9474}
.enmile-flow-stages>li>strong{font-weight:500;color:#233f32}
body.page .entry-content .enmile-flow-figure .enmile-flow-note{font-size:12px!important;line-height:1.6!important;max-width:100%;margin:18px 0 0!important;color:#6a7e71}
/* Cards with several paragraphs use normal flow, rather than a fixed two-row subgrid. */
body.page #primary .entry-content .wp-block-columns>.wp-block-column:has(>p~p),
body.page #primary .entry-content .wp-block-columns>.wp-block-column:has(>.wp-block-group>p~p),
body.page #primary .entry-content .wp-block-columns>.wp-block-column>.wp-block-group:has(>p~p){display:block!important;grid-template-rows:none!important;grid-row:auto!important}
/* All custom templates use the same hierarchy. */
body main :is(.enmile-resource-hero,.enmile-product-archive__hero,.enmile-enquiry-hero,.enmile-search-hero,.enmile-review-hero) h1{font-size:var(--enmile-type-h1)!important;line-height:1.14!important;max-width:900px}
body main :is(.enmile-resource-hero,.enmile-search-hero,.enmile-review-hero) p:not([class*="eyebrow"]){font-size:18px;line-height:1.7;max-width:720px}
body main :is(.enmile-resource-section-heading,.enmile-product-section__intro,.enmile-enquiry-section-head) h2,
body main .enmile-resource-cta h2{font-size:var(--enmile-type-h2)!important;line-height:1.2!important;font-weight:600}
body main .enmile-resource-card h3,body main .enmile-context-card h3,body main .enmile-product-card h2{font-size:var(--enmile-type-card)!important;line-height:1.3!important;font-weight:600}
body main .enmile-featured-story h2{font-size:clamp(28px,2.6vw,36px)!important;line-height:1.22!important}
body main .enmile-resource-card p,body main .enmile-context-card p{font-size:16px;line-height:1.65}
body main .enmile-resource-meta{font-size:12px;line-height:1.6}
.enmile-featured-story__visual{aspect-ratio:3/2!important}
.enmile-featured-story{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px}
.enmile-resource-section-heading{padding-top:24px}
.enmile-resource-tabs{gap:8px}.enmile-resource-tab{font-size:13px;padding:9px 13px}
body main .enmile-article-hero h1{font-size:clamp(36px,3.7vw,50px)!important;line-height:1.16!important;max-width:960px}
body main .enmile-article-body h2{font-size:28px;line-height:1.25}
body main .enmile-article-body,body main .enmile-article-body>p:first-of-type{font-size:17px!important;line-height:1.8!important}
body main .enmile-key-takeaways h2{font-size:20px;line-height:1.3}
.enmile-enquiry-panel>h2,.enmile-enquiry-context>h2{font-size:30px!important;line-height:1.2!important}
.enmile-enquiry-section-head p,.enmile-enquiry-panel p,.enmile-enquiry-context p{font-size:16px;line-height:1.7}
.enmile-footer{font-size:14px;line-height:1.65}
.enmile-footer h2{font-size:14px;font-weight:600}
.enmile-footer__inner{grid-template-columns:1.35fr 1fr 1.05fr .8fr 1.5fr;gap:30px}
.enmile-footer__inner>div:last-child p{font-size:13px;line-height:1.7}
/* Language planning is visible only in the isolated draft; the launched header remains English. */
.enmile-nav-language{position:relative}
.enmile-language-planning summary{display:flex;align-items:center;gap:7px;cursor:pointer;color:#cbdad5;font-size:12px;list-style:none;padding:12px 4px}
.enmile-language-planning summary::-webkit-details-marker{display:none}
.enmile-language-panel{position:absolute;right:0;top:calc(100% + 14px);width:400px;max-width:calc(100vw - 40px);box-sizing:border-box;white-space:normal;padding:22px;background:#fff;border:1px solid #d9e4dd;border-radius:12px;box-shadow:0 20px 55px #07191126;color:#253c2f;z-index:30}
.enmile-language-panel>p:first-child{font-size:12px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px}
.enmile-language-panel ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;max-height:360px;overflow:auto}
.enmile-language-panel li{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 0;border-bottom:1px solid #edf2ee;color:#718277;font-size:13px}
.enmile-language-panel li{min-width:0}
.enmile-language-panel li>span{min-width:0;line-height:1.45}
.enmile-language-panel li small{flex-shrink:0;font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#8b9b90}
.enmile-language-panel li.is-current{color:#14765d;font-weight:600}
.enmile-language-panel .enmile-language-note{font-size:11px;line-height:1.6;margin:16px 0 0;color:#6d8071}
.enmile-device-toolbar h1{font-size:26px!important;line-height:1.2!important}
.enmile-visual-guide .enmile-review-section{margin-bottom:48px}
.enmile-visual-guide table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6}
.enmile-visual-guide th,.enmile-visual-guide td{text-align:left;vertical-align:top;padding:16px 14px;border-bottom:1px solid #dce6df}
.enmile-visual-guide th{background:#eef5f0;font-weight:600;color:#28563b}
.enmile-visual-guide td small{display:block;font-size:11px;color:#718174;line-height:1.6;margin-top:5px}
.enmile-visual-guide .enmile-guide-table{overflow-x:auto}
.enmile-visual-guide h2{font-size:30px;margin-bottom:20px}
.enmile-visual-guide .enmile-guide-tokens{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:30px 0 48px}
.enmile-guide-tokens>div{padding:24px;border:1px solid #dce5de;border-radius:10px}
.enmile-guide-tokens strong{font-size:30px;font-family:Manrope,sans-serif;display:block}
.enmile-guide-tokens span{font-size:12px;color:#6a7a6e}
@media(min-width:1600px){:root{--enmile-section-space:88px}}
@media(max-width:1050px){
 .enmile-nav-utilities{flex-wrap:wrap;align-items:flex-start}
 .enmile-nav-utilities>.enmile-nav-language{order:3;flex:0 0 100%;width:100%;min-width:0}
 .enmile-language-panel{position:static;margin-top:10px;width:100%;max-width:100%;box-shadow:none}
 .enmile-language-panel ul{grid-template-columns:repeat(2,minmax(0,1fr))}
 .enmile-language-panel li>span{overflow-wrap:anywhere}
}
@media(max-width:1024px){
 :root{--enmile-gutter:28px;--enmile-section-space:64px;--enmile-hero-space:72px;--enmile-inner-space:28px;--enmile-layout-gap:22px;--enmile-type-h1:42px;--enmile-type-detail:40px;--enmile-type-h2:34px}
 body.page .entry-content>.enmile-hero-with-visual{gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr)}
 body.page .entry-content .enmile-product-gallery{gap:22px!important}
 .enmile-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 .enmile-footer__brand{grid-column:1/-1}
 .enmile-footer__inner>div:last-child{grid-column:1/-1;max-width:520px}
}
@media(max-width:900px){
 body.page .entry-content>.enmile-hero-with-visual{grid-template-columns:1fr;gap:36px}
 body.page .entry-content>.enmile-hero-with-visual>.enmile-hero-media{justify-self:start;max-width:560px!important}
 body.page .entry-content>.enmile-hero-with-visual>.enmile-media--product{max-width:360px!important}
 body.page .entry-content .enmile-product-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto auto!important}
 body.page .entry-content .enmile-product-gallery>.wp-block-column{grid-column:auto!important;grid-row:auto!important}
 body.page .entry-content .enmile-product-gallery>.wp-block-column:first-child{grid-column:1/-1!important;grid-row:auto!important}
 body.page .entry-content .enmile-product-gallery>.wp-block-column>.enmile-media-slot{aspect-ratio:16/10!important;height:auto!important}
 body.page .entry-content .enmile-product-gallery>.wp-block-column:first-child>.enmile-media-slot{aspect-ratio:4/3!important}
 body.page .entry-content .enmile-product-visual-grid:not(.enmile-product-gallery){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.page-id-63 .entry-content .enmile-home-why>.enmile-product-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .enmile-featured-story{grid-template-columns:1fr;gap:28px}
}
@media(max-width:767px){
 :root{--enmile-gutter:20px;--enmile-section-space:52px;--enmile-hero-space:56px;--enmile-layout-gap:18px;--enmile-card-pad:22px;--enmile-inner-space:24px;--enmile-flow-space:36px;--enmile-type-h1:36px;--enmile-type-detail:34px;--enmile-type-h2:30px;--enmile-type-sub:25px;--enmile-type-card:20px;--enmile-body-size:16px}
 body.page-id-63 .entry-content .wp-block-cover{min-height:0!important;padding-block:64px!important}
 body.page-id-63 .wp-block-cover h1{font-size:44px!important;max-width:100%!important}
 body.page-id-63 .wp-block-cover__inner-container>p:not(:first-child){font-size:17px!important}
 body.page .entry-content>.enmile-hero-with-visual>.enmile-media--product{max-width:320px!important}
 body.page .entry-content>.enmile-hero-with-visual{gap:30px}
 body.page .entry-content .enmile-product-visual-grid:not(.enmile-product-gallery){grid-template-columns:1fr!important}
 body.page-id-63 .entry-content .enmile-home-why>.enmile-product-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 body.page-id-63 .entry-content .enmile-home-why>.enmile-product-visual-grid .enmile-media-slot{min-height:0!important;aspect-ratio:16/10!important}
 body.page .entry-content .enmile-product-gallery>.wp-block-column:first-child>.enmile-media-slot{aspect-ratio:1/1!important}
 body.page .entry-content .enmile-flow-stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.page .entry-content .enmile-flow-stages>li{padding:14px 12px;font-size:13px!important;gap:14px}
 body.page .entry-content .enmile-architecture-placeholder{padding:20px!important}
 .enmile-media-slot .enmile-media-label{left:14px;right:14px;bottom:12px}
 .enmile-media-slot .enmile-media-label span{font-size:11px}.enmile-media-slot .enmile-media-label small{font-size:8px}
 .enmile-hero-concept{padding-top:18px}.enmile-hero-concept strong{font-size:17px}.enmile-hero-concept>div{padding:18px 0}
 .enmile-enquiry-panel>h2,.enmile-enquiry-context>h2{font-size:27px!important}
 body main .enmile-article-hero h1{font-size:36px!important}
 .enmile-language-panel{position:static;margin-top:10px;width:100%;max-width:100%;box-shadow:none}
 .enmile-language-panel ul{grid-template-columns:1fr 1fr}
 .enmile-visual-guide .enmile-guide-tokens{grid-template-columns:repeat(2,minmax(0,1fr))}
 .enmile-visual-guide th,.enmile-visual-guide td{min-width:120px}
 .enmile-visual-guide td:nth-child(2){min-width:200px}
}
@media(max-width:359px){:root{--enmile-gutter:16px;--enmile-type-h1:34px;--enmile-type-detail:32px}.enmile-language-panel ul{grid-template-columns:1fr}}
