/* Editorial rhythm for imported prose; form controls and compact captions stay scoped. */
.editor-content p,.original p{font-size:17px;line-height:1.85;max-width:76ch;margin-bottom:26px;overflow-wrap:break-word}
.editor-content ul,.editor-content ol,.original ul,.original ol{max-width:76ch;line-height:1.85;margin-block:24px 32px}
.editor-content li,.original li{margin-bottom:13px;overflow-wrap:break-word}
.editor-content h2,.original h2{line-height:1.3;text-wrap:pretty;overflow-wrap:anywhere;hyphens:auto}
.editor-content h3,.original h3{line-height:1.4;text-wrap:pretty;overflow-wrap:anywhere;hyphens:auto}
.editor-content h4,.editor-content h5,.original h4,.original h5{font-size:20px;font-weight:600;line-height:1.6;margin-block:32px 20px;max-width:76ch}
.editor-content>h2,.original>h2,.editor-content .TextObject>h2,.original .TextObject>h2{margin-top:52px;margin-bottom:24px}
.editor-content>h3,.original>h3,.editor-content .TextObject>h3,.original .TextObject>h3{margin-top:36px;margin-bottom:20px}
.editor-content>h2:first-child,.original>h2:first-child{margin-top:0}
.editor-content figcaption,.original figcaption{font-size:14px;line-height:1.75;padding-top:16px}
.editor-content figcaption p,.original figcaption p{font-size:14px;line-height:1.75;margin-bottom:12px}
.editor-content figure,.original figure{margin-block:36px 46px}
.editor-content .about-feature figure,.editor-content .about-founder figure{margin:0}
.editor-content .project-grid figure,.editor-content .planning-images figure{margin:0}
.editor-content .planning-images figcaption,.editor-content .project figcaption{padding-top:18px}
.editor-content .legacy-service-list,.original .legacy-service-list{list-style:none;margin:0 0 16px;padding-left:0}
.editor-content .legacy-service-list li,.original .legacy-service-list li{margin-bottom:0;padding-left:18px;text-indent:-18px}
.editor-content .portal-services,.editor-content .video-flow ol{max-width:none}
.editor-content .portal-services li{margin-bottom:0}
.editor-content .video-flow ol{line-height:1.75}.editor-content .video-flow li{font-size:15px}
.editor-content .video-request p,.editor-content .appointment-booking p,.editor-content .iq-form p{font-size:15px;line-height:1.75;margin-bottom:20px}
.editor-content .about-feature .lead{font-size:21px;line-height:1.7}
.editor-content .about-principles p{font-size:16px;line-height:1.8}

/* Information bands stay pale; the footer keeps its distinct deep tone. */
:root{--info-surface:#e6f0f3;--info-divider:#bed4dc;--info-hover:#d6e7ed}
.about-principles{gap:0;background:var(--info-surface);padding:30px 12px;color:var(--ink)}
.about-principles>div{padding:4px 24px}
.about-principles>div+div{border-left:1px solid var(--info-divider)}
.editor-content .about-principles h3{color:var(--ink);font-weight:600;line-height:1.35}
.editor-content .about-principles p,.about-principles .micro{color:var(--ink)}
.about-principles .micro{opacity:.8}
.service-grid{background:var(--info-surface);border-top:0;color:var(--ink)}
.service-grid .service,.service-grid .service+.service{padding:30px 24px 65px;border-color:var(--info-divider)}
.service-grid .service h3,.service-grid .service p,.service-grid .number,.service-grid .service-arrow{color:var(--ink)}
.service-grid .number{opacity:.8}.service-grid .service:hover,.service-grid .service:focus-visible{background:var(--info-hover)}
.facts{background:var(--info-surface);color:var(--ink);padding-inline:28px}.facts strong{color:var(--ink)}.facts>span+span{border-color:var(--info-divider)}
.making-facts{background:var(--info-surface);color:var(--ink);padding:26px 24px;border:0}
.making-facts strong{color:var(--ink)}
.page-layout>aside{background:var(--info-surface);color:var(--ink)}
.page-layout>aside .micro,.page-layout>aside a{color:var(--ink)}
.page-layout>aside a{border-color:var(--info-divider)}
.page-layout>aside a:hover,.page-layout>aside a:focus-visible{background:var(--info-hover);color:var(--ink)}
.page-layout>aside a:focus-visible{outline-color:var(--ink)}
footer{background:var(--deep);color:#fff}
footer p,footer a,footer .footer-bottom{color:#fff}
footer .brand-sub{color:#fff;opacity:.8}
footer .footer-bottom{border-color:#ffffff38}
footer a:hover,footer a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.consent-footer{background:var(--deep);width:100%;padding-inline:max(24px,calc((100% - 1280px)/2));margin:0}
.consent-footer button{color:#fff}
@media(max-width:800px){
 .editor-content p,.original p{font-size:16px;line-height:1.85;margin-bottom:24px}
 .editor-content>h2,.original>h2,.editor-content .TextObject>h2,.original .TextObject>h2{margin-top:38px}
 .about-principles{padding:10px 22px}.about-principles>div{padding:24px 0}
 .about-principles>div+div{border-left:0;border-top:1px solid var(--info-divider)}
 .service-grid .service,.service-grid .service+.service{padding:24px 18px 56px}
 .facts{padding-inline:18px}.making-facts{padding:22px 16px}
}
@media(prefers-reduced-motion:reduce){.page-layout>aside a{transition:none}}
.portal-inactive{cursor:default;user-select:text}
.editor-content .portal-inactive.text-link{color:var(--blue)}
.planning-images a{position:relative}
.ai-image-label{position:absolute;left:12px;bottom:12px;z-index:4;display:inline-block;padding:5px 9px;border-radius:3px;background:#082d3be6;color:#fff;font:600 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;pointer-events:none}
.ai-image-label[hidden]{display:none!important}
@media(max-width:600px){.ai-image-label{font-size:11px;padding:4px 7px;left:8px;bottom:8px}}
