:root{
  --oomma-bg-base:#fdfff8;
  --oomma-bg-alt-1:#cbcfc3;
  --oomma-bg-alt-2:#cbd0c1;
  --oomma-bg-alt-3:#e4e7de;
  --oomma-dark-bg-1:#444641;
  --oomma-dark-bg-2:#282925;
  --oomma-dark-bg:var(--oomma-dark-bg-1);
  --oomma-dark-text:#f7f7f3;
  --oomma-soft-bg:var(--oomma-bg-alt-1);
  --oomma-card-bg:#fff;
  --oomma-border:rgba(60,60,55,.18);
}

.oomma-content-page{max-width:var(--oomma-wide-width);margin-inline:auto;overflow:visible}
.oomma-content-page>.oomma-page-title,.oomma-content-page>.oomma-intro,.oomma-content-page>.oomma-key-points,.oomma-content-page>.oomma-section,.oomma-content-page>.oomma-cta,.oomma-content-page>.oomma-faq,.oomma-content-page>.oomma-related-content{max-width:var(--oomma-content-width);margin-left:auto;margin-right:auto}
.oomma-section-inner{width:min(100%,var(--oomma-wide-width));margin-inline:auto;padding-inline:clamp(24px,4vw,64px);box-sizing:border-box}
.oomma-reading-width{max-width:var(--oomma-content-width)}
.oomma-full-width{width:100vw;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;box-sizing:border-box}
.oomma-intro{font-size:clamp(1.08rem,1.3vw,1.28rem);line-height:1.65}
.oomma-section,.oomma-key-points,.oomma-cta,.oomma-faq,.oomma-related-content{margin-top:var(--oomma-section-gap)}
.oomma-section h2,.oomma-feature-section>div>h2,.oomma-card-section>div>h2,.oomma-faq h2,.oomma-related-content h2{margin-top:0}
.oomma-section p,.oomma-feature-card p,.oomma-image-card p,.oomma-related-card p{line-height:1.72}

/* Configurable section rhythm. frontend.js assigns these classes to the major
   top-level Immersive sections so old generated pages benefit without rebuild. */
.oomma-style-immersive>.oomma-tone-light-base,.oomma-style-immersive>.oomma-tone-light-1,.oomma-style-immersive>.oomma-tone-light-2,.oomma-style-immersive>.oomma-tone-light-3,.oomma-style-immersive>.oomma-tone-dark-1,.oomma-style-immersive>.oomma-tone-dark-2{width:100vw;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;box-sizing:border-box}
.oomma-tone-light-base{background:var(--oomma-bg-base)!important;color:inherit}
.oomma-tone-light-1{background:var(--oomma-bg-alt-1)!important;color:inherit}
.oomma-tone-light-2{background:var(--oomma-bg-alt-2)!important;color:inherit}
.oomma-tone-light-3{background:var(--oomma-bg-alt-3)!important;color:inherit}
.oomma-tone-dark-1{background:var(--oomma-dark-bg-1)!important;color:var(--oomma-dark-text)!important}
.oomma-tone-dark-2{background:var(--oomma-dark-bg-2)!important;color:var(--oomma-dark-text)!important}
.oomma-tone-dark-1 h2,.oomma-tone-dark-1 h3,.oomma-tone-dark-1 p,.oomma-tone-dark-1 li,.oomma-tone-dark-1 a,.oomma-tone-dark-2 h2,.oomma-tone-dark-2 h3,.oomma-tone-dark-2 p,.oomma-tone-dark-2 li,.oomma-tone-dark-2 a{color:inherit}
.oomma-tone-dark-1 .oomma-feature-card,.oomma-tone-dark-2 .oomma-feature-card{background:rgba(0,0,0,.08)}

/* Pattern Library 1.0: immersive hero */
.oomma-style-immersive{max-width:var(--oomma-wide-width)}
.oomma-hero{position:relative;margin-top:0!important;overflow:hidden}
.oomma-hero .wp-block-image{margin:0;max-width:none!important}
/* The image is a real background layer. The copy remains in normal flow so a long
   title/intro can make the hero taller instead of escaping underneath the header. */
.oomma-hero-overlay{min-height:clamp(460px,42vw,580px)}
.oomma-hero-overlay>.oomma-hero-media{position:absolute;inset:0;width:100%;height:100%;margin:0!important}
.oomma-hero-overlay>.oomma-hero-media img{display:block;width:100%;height:100%;object-fit:cover}
.oomma-hero-overlay:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,15,20,.72) 0%,rgba(9,15,20,.45) 42%,rgba(9,15,20,.08) 76%,rgba(9,15,20,0) 100%);pointer-events:none}
.oomma-hero-copy{position:relative;z-index:2;min-height:clamp(460px,42vw,580px);display:block;color:#fff;margin:0!important;box-sizing:border-box}
.oomma-hero-copy>.oomma-section-inner{padding-top:calc(var(--oomma-header-overlap,0px) + var(--oomma-header-page-spacing));padding-bottom:clamp(44px,5vw,72px);box-sizing:border-box}
.oomma-hero .oomma-page-title{max-width:900px;margin:0 0 1rem;font-size:clamp(2.35rem,5.1vw,5.15rem);line-height:.98;font-weight:300;letter-spacing:-.035em;color:inherit}
.oomma-hero .oomma-intro{max-width:680px;margin:0;font-size:clamp(1.05rem,1.45vw,1.34rem);line-height:1.58;color:inherit}
.oomma-hero-simple{padding-block:clamp(48px,7vw,100px)}
.oomma-placeholder-image figcaption{display:none}

/* Key points / at a glance */
.oomma-key-points{padding:1.4rem 1.6rem;border:1px solid currentColor;border-radius:.5rem}
.oomma-key-points-grid{max-width:none!important;border:0;border-radius:0;padding:clamp(42px,6vw,82px) 0;margin-top:0!important;background:var(--oomma-soft-bg)}
.oomma-key-points-grid h2{margin-top:0;margin-bottom:1.6rem}
.oomma-grid{display:grid;gap:1px}
.oomma-grid-key-points{grid-template-columns:repeat(2,minmax(0,1fr));background:var(--oomma-border);border:1px solid var(--oomma-border)}
.oomma-key-point-card{background:var(--oomma-card-bg);padding:clamp(22px,3vw,38px);margin:0!important}
.oomma-key-point-card h3{margin:0 0 .6rem;font-size:clamp(1.05rem,1.4vw,1.25rem)}
.oomma-key-point-card p{margin:0;line-height:1.55}

/* Split text/image modules */
.oomma-style-immersive .oomma-section.oomma-split{max-width:none;margin-top:0;padding-block:clamp(58px,8vw,108px)}
.oomma-split-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,90px);align-items:center}
.oomma-split-copy{max-width:600px}
.oomma-image-text .oomma-split-copy{order:2}
.oomma-image-text .oomma-split-media{order:1}
.oomma-text-image .oomma-split-copy{order:1}
.oomma-text-image .oomma-split-media{order:2}
.oomma-split-media .wp-block-image,.oomma-split-media figure{margin:0}
.oomma-split-media img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.oomma-split h2{font-size:clamp(1.75rem,2.7vw,2.75rem);font-weight:400;line-height:1.12}

/* Wide / contrast sections */
.oomma-section-wide{max-width:none!important;padding-block:clamp(54px,7vw,96px);margin-top:0!important}
.oomma-section-dark,.oomma-statement-dark,.oomma-practical-info{background:var(--oomma-dark-bg);color:var(--oomma-dark-text)}
.oomma-section-soft,.oomma-statement-light{background:var(--oomma-soft-bg)}
.oomma-statement{padding-block:clamp(58px,8vw,108px);margin-top:0!important}
.oomma-statement h2{font-size:clamp(2rem,3.6vw,3.65rem);font-weight:300;line-height:1.05;letter-spacing:-.025em;margin-bottom:1.2rem}
.oomma-statement p{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.65}

/* Feature grid */
.oomma-feature-section{padding-block:clamp(58px,8vw,105px);margin-top:0!important}
.oomma-feature-section .oomma-section-inner>h2{margin-bottom:2rem;font-size:clamp(1.8rem,3vw,3rem);font-weight:300}
.oomma-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.14)}
.oomma-feature-card{position:relative;background:var(--oomma-dark-bg);padding:clamp(28px,4vw,52px);margin:0!important;min-height:210px}
.oomma-feature-mark{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid currentColor;border-radius:50%;margin-bottom:1.5rem;font-size:.85rem;opacity:.85}
.oomma-feature-card h3{margin:0 0 .75rem;font-size:clamp(1.15rem,1.7vw,1.45rem)}
.oomma-feature-card p{margin:0;opacity:.9}

/* Image cards */
.oomma-card-section{padding-block:clamp(58px,8vw,105px);margin-top:0!important}
.oomma-card-section .oomma-section-inner>h2{margin-bottom:2rem;font-size:clamp(1.8rem,3vw,3rem);font-weight:300}
.oomma-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);background:transparent}
.oomma-image-card{background:var(--oomma-card-bg);margin:0!important;overflow:hidden;border:1px solid var(--oomma-border)}
.oomma-image-card .wp-block-image{margin:0}
.oomma-image-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.oomma-image-card-copy{padding:clamp(20px,2.8vw,34px)}
.oomma-image-card-copy h3{margin-top:0;font-size:clamp(1.2rem,1.7vw,1.5rem)}
.oomma-image-card-copy a{text-decoration:none}

/* Full-width visual break */
.oomma-full-image{margin-top:0!important;line-height:0;background:#111}
.oomma-full-image .wp-block-image{margin:0;max-width:none!important}
.oomma-full-image img{display:block;width:100%;height:clamp(360px,48vw,680px);object-fit:cover}

/* Practical info, CTA, FAQ and related */
.oomma-practical-info{padding-block:clamp(54px,7vw,94px);margin-top:0!important}
.oomma-practical-info h2{font-size:clamp(1.8rem,3vw,3rem);font-weight:300}
.oomma-cta{padding:1.5rem;border:1px solid currentColor;border-radius:.5rem}
.oomma-cta-band{max-width:none!important;border:0;border-radius:0;padding-block:clamp(48px,6vw,78px);margin-top:0!important;background:var(--oomma-soft-bg)}
.oomma-cta-band .wp-block-buttons{margin-top:1.5rem}
.oomma-faq{padding-block:clamp(54px,7vw,94px);margin-top:0!important;max-width:none!important}
.oomma-faq details{padding:1rem 0;border-bottom:1px solid rgba(127,127,127,.25)}
.oomma-faq summary{cursor:pointer;font-weight:600}
.oomma-related-content ul{padding-left:1.2rem}
.oomma-style-immersive .oomma-related-content{max-width:none!important;margin-top:0!important;padding-block:clamp(54px,7vw,94px)}
.oomma-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;background:transparent}
.oomma-related-card{background:var(--oomma-card-bg);border:1px solid var(--oomma-border);padding:clamp(22px,3vw,34px);margin:0!important}
.oomma-related-card h3{margin-top:0;font-size:1.25rem}

/* Editorial / compact preserve a calmer reading layout */
.oomma-style-editorial>.oomma-page-title,.oomma-style-editorial>.oomma-intro,.oomma-style-editorial>.oomma-key-points,
.oomma-style-compact>.oomma-page-title,.oomma-style-compact>.oomma-intro,.oomma-style-compact>.oomma-key-points{max-width:var(--oomma-content-width);margin-left:auto;margin-right:auto}
.oomma-style-editorial .oomma-section:not(.oomma-full-width):not(.oomma-split),.oomma-style-compact .oomma-section:not(.oomma-full-width):not(.oomma-split){max-width:var(--oomma-content-width);margin-left:auto;margin-right:auto}
.oomma-style-compact .oomma-section{margin-top:2rem}

/* Generated page layout controls */
body.oomma-ce-generated.oomma-ce-theme-divi #main-content{padding-top:var(--oomma-header-page-spacing)!important}
body.oomma-ce-generated.oomma-ce-theme-divi #main-content>.container{padding-top:0!important}
body.oomma-ce-generated:not(.oomma-ce-theme-divi) main.site-main{padding-top:var(--oomma-header-page-spacing)}
body.oomma-ce-generated.oomma-ce-title-theme h1.entry-title,
body.oomma-ce-generated.oomma-ce-title-theme h1.main_title,
body.oomma-ce-generated.oomma-ce-title-theme .entry-title{margin-bottom:var(--oomma-title-intro-spacing)!important}
body.oomma-ce-generated.oomma-ce-title-oomma h1.entry-title,
body.oomma-ce-generated.oomma-ce-title-oomma h1.main_title,
body.oomma-ce-generated.oomma-ce-title-oomma .entry-title:not(.oomma-page-title){display:none!important}
body.oomma-ce-generated.oomma-ce-title-oomma .oomma-page-title{margin-bottom:var(--oomma-title-intro-spacing)!important}
body.oomma-ce-generated.oomma-ce-style-immersive.oomma-ce-title-oomma .oomma-hero .oomma-page-title{margin-bottom:1rem!important}
body.oomma-ce-generated.oomma-ce-no-sidebar #sidebar,
body.oomma-ce-generated.oomma-ce-no-sidebar .widget-area{display:none!important}
body.oomma-ce-generated.oomma-ce-no-sidebar #left-area,
body.oomma-ce-generated.oomma-ce-no-sidebar .content-area{width:100%!important;max-width:100%!important;padding-right:0!important;float:none!important}
body.oomma-ce-generated.oomma-ce-no-sidebar #main-content .container:before{display:none!important}

@media(max-width:900px){
  .oomma-split-inner{grid-template-columns:1fr;gap:28px}
  .oomma-image-text .oomma-split-copy,.oomma-image-text .oomma-split-media,.oomma-text-image .oomma-split-copy,.oomma-text-image .oomma-split-media{order:initial}
  .oomma-image-text .oomma-split-media{order:2}
  .oomma-grid-key-points,.oomma-feature-grid{grid-template-columns:1fr}
  .oomma-card-grid,.oomma-related-grid{grid-template-columns:1fr}
  .oomma-hero-overlay:after{background:linear-gradient(0deg,rgba(9,15,20,.78),rgba(9,15,20,.24))}
  .oomma-hero-overlay,.oomma-hero-copy{min-height:clamp(500px,108vw,660px)}
  .oomma-hero-copy>.oomma-section-inner{padding-top:calc(var(--oomma-header-overlap,0px) + var(--oomma-header-page-spacing));padding-bottom:48px}
}
/* Immersive pages keep the image behind an overlapping theme header when applicable.
   The configured header spacing is applied to the hero copy itself; frontend.js adds
   the measured fixed/absolute header overlap so the H1 always starts below navigation. */
body.oomma-ce-generated.oomma-ce-style-immersive.oomma-ce-theme-divi #main-content{padding-top:0!important}
body.oomma-ce-generated.oomma-ce-style-immersive:not(.oomma-ce-theme-divi) main.site-main{padding-top:0!important}
