/* V43: unified light bands and reliable local preview */
:root { --oo-v43-band:linear-gradient(120deg,#e7f2f8 0%,#dceef6 52%,#cce3ef 100%); }
body.oo-v43-site.oo-v37-main .oo-home-hero,
body.oo-v43-site.oo-v37-main .oo-v38-service-hero,
body.oo-v43-site.oo-v37-main main.page .page__blocks>section.block:first-child,
body.oo-v43-site.oo-v37-main.oo-v6-about #ziooUw,
body.oo-v43-site.oo-v37-main .oo-test-hero,
body.oo-v43-site.oo-v37-main .oo-blog-hero {
 background:var(--oo-v43-band)!important;color:#17313b!important;border-bottom:1px solid #c3dce8!important;
}
body.oo-page-home.oo-v43-site.oo-v37-main .oo-home-hero::before {
 background:linear-gradient(90deg,rgba(231,242,248,.97) 0%,rgba(220,238,246,.92) 36%,rgba(220,238,246,.64) 62%,rgba(204,227,239,.16) 88%,rgba(204,227,239,0) 100%)!important;
}
body.oo-v43-site.oo-v37-main main.page .page__blocks>section.block:first-child :is(h1,h2,h3),
body.oo-v43-site.oo-v37-main.oo-v6-about #ziooUw :is(h1,h2,h3),
body.oo-v43-site.oo-v37-main :is(.oo-home-hero,.oo-test-hero,.oo-blog-hero) :is(h1,h2) {
 color:#062a61!important;
}
body.oo-v43-site.oo-v37-main main.page .page__blocks>section.block:first-child p,
body.oo-v43-site.oo-v37-main.oo-v6-about #ziooUw p,
body.oo-v43-site.oo-v37-main :is(.oo-home-hero,.oo-test-hero,.oo-blog-hero) p {color:#36597c!important;}
body.oo-v43-site.oo-v37-main .oo-test-kicker {color:#0a7f7b!important;}
body.oo-page-home.oo-v43-site.oo-v37-main .oo-home-eyebrow {background:rgba(10,163,157,.08)!important;color:#0f5381!important;}
body.oo-v43-site.oo-v37-site .oo-topline {background:var(--oo-v43-band)!important;color:#0f5381!important;}
body.oo-v43-site.oo-v37-site :is(.oo-home-btn-primary,.oo-v38-btn-primary,.oo-sv32-btn-primary,.grid-button--primary,.form__button,.oo-m-wa) {
 background:#0a9d97!important;border-color:#0a9d97!important;color:#fff!important;border-radius:15px!important;font-weight:900!important;
}
body.oo-v43-site.oo-v37-site :is(.oo-home-btn-secondary,.oo-v38-btn-secondary,.oo-sv32-btn-secondary,.grid-button--secondary) {
 background:#fff!important;color:#0a9d97!important;border:2px solid #0a9d97!important;border-radius:15px!important;
}
body.oo-v43-site.oo-v37-site {font-family:Lato,Arial,Helvetica,sans-serif!important;}
body.oo-v43-site.oo-v37-site :is(h1,h2,h3,button,input,select,.grid-button) {font-family:inherit!important;}
/* All responsive layouts remain as in V40; avoid overflowing the desktop service grid. */
@media(min-width:1021px) {
 body.oo-v43-site.oo-v38-services .oo-v38-hero-inner {grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}
}
@media(max-width:640px) {
 body.oo-page-home.oo-v43-site.oo-v37-main .oo-home-hero::before {background:linear-gradient(180deg,rgba(231,242,248,.9),rgba(220,238,246,.75),rgba(204,227,239,.55))!important;}
}

/* V43: one common banner palette; its lower edge reaches pure white. */
:root {
 --oo-v43-title:#062a61; --oo-v43-muted:#36597c;
 --oo-v43-band:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,0) calc(100% - 80px),#fff 100%),linear-gradient(120deg,#e7f2f8 0%,#dceef6 52%,#cce3ef 100%);
}
html:has(body.oo-v43-site),body.oo-v43-site.oo-v37-site {background:#fff!important;}
body.oo-v43-site.oo-v37-site :is(.oo-home,.oo-home-section,.oo-home-section-alt,.oo-home-cta,.oo-sv32-main,.oo-sv32-section,.oo-sv32-section-alt,.oo-test-main,.page,.page__blocks) {background:#fff!important;}
body.oo-v43-site.oo-v37-main .oo-v43-band {border:0!important;box-shadow:none!important;position:relative;}
body.oo-v43-site.oo-v37-main .oo-v43-band>.block-background {background:transparent!important;opacity:0!important;}
body.oo-v43-site.oo-v37-main .oo-v43-title {padding:40px 20px 74px!important;margin:0!important;}
body.oo-v43-site.oo-v37-main .oo-v43-title-inner {width:min(1100px,100%);margin:auto;text-align:center;}
body.oo-v43-site.oo-v37-main .oo-v43-title-inner :is(h1,h2) {font-size:clamp(30px,3.5vw,48px)!important;line-height:1.2!important;margin:0!important;letter-spacing:-.025em!important;}
body.oo-v43-site.oo-v37-main .oo-v43-title-inner p {font-size:18px!important;line-height:1.6!important;max-width:950px;margin:16px auto 0!important;}
/* Home: a lighter veil over the text, more visible photography to its right. */
body.oo-v43-site.oo-page-home.oo-v37-main .oo-home-hero::before {
 background:linear-gradient(90deg,rgba(231,242,248,.92) 0%,rgba(220,238,246,.85) 26%,rgba(220,238,246,.52) 43%,rgba(204,227,239,.16) 61%,rgba(204,227,239,.03) 78%,transparent 100%)!important;
}
body.oo-v43-site.oo-page-home .oo-home-hero-media picture {display:block;}
body.oo-v43-site.oo-page-home .oo-home-hero-media img {
 border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;filter:brightness(.94) contrast(1.04)!important;
 -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 86%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 10%,#000 80%,transparent 100%);
 mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 86%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 10%,#000 80%,transparent 100%);
 -webkit-mask-composite:source-in;mask-composite:intersect;
}
/* Services: keep the whole desktop picture, feather all four actual photo edges. */
body.oo-v43-site.oo-v38-services .oo-v38-hero-visual {background:transparent!important;border:0!important;box-shadow:none!important;}
body.oo-v43-site.oo-v38-services .oo-v38-hero-visual:before {display:none!important;}
body.oo-v43-site.oo-v38-services .oo-v38-hero-visual img {
 border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;
 -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 89%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 8%,#000 85%,transparent 100%);
 mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 89%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 8%,#000 85%,transparent 100%);
 -webkit-mask-composite:source-in;mask-composite:intersect;
}
/* Ads: the text determines the row height; neither photograph can enlarge it. */
body.oo-v43-site.oo-v37-main #ai-CSygSU {padding:30px 20px 76px!important;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-layout {width:min(1120px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr) minmax(0,.56fr);gap:28px;align-items:stretch;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-copy {min-width:0;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-copy h1 {font-size:clamp(30px,2.6vw,40px)!important;line-height:1.18!important;margin:0 0 18px!important;text-align:left!important;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-copy p {font-size:17px!important;line-height:1.6!important;margin:0 0 14px!important;text-align:left!important;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-copy p:last-child {margin-bottom:0!important;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-visual {position:relative;min-height:0;min-width:0;align-self:stretch;background:transparent;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-visual img {position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;border:0!important;border-radius:0!important;transform:none!important;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-refractor img {mix-blend-mode:multiply;}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-lamp img {
 -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent);
 mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 10%,#000 90%,transparent);
 -webkit-mask-composite:source-in;mask-composite:intersect;
}
/* Shop: compact title, immediately followed by search and sorting on one row. */
body.oo-v43-site.oo-page-store #z2m2fh {padding:34px 20px 68px!important;}
body.oo-v43-site.oo-page-store section#ai-AawfTi {padding:4px 20px 52px!important;margin-top:0!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .block-background {background:#fff!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .block-product-list__content-container {width:100%!important;max-width:1180px!important;margin:0 auto!important;padding-top:0!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list {margin:0!important;padding:0!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__header {
 display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:center!important;gap:22px!important;
 flex-direction:row!important;flex-wrap:nowrap!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0 0 20px!important;padding:0!important;
}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__header-item {
 flex:initial!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;align-self:center!important;
}
body.oo-v43-site.oo-page-store #ai-AawfTi :is(.product-list__search,.product-list__sort) {width:100%!important;max-width:none!important;margin:0!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__sort {display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list-sorting__label {white-space:nowrap;margin:0!important;line-height:1.3!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list-sorting__select-wrapper {width:260px;min-width:0;height:46px!important;margin:0!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi :is(.site-element-search-bar__input,.product-list-sorting__select) {height:46px!important;width:100%!important;box-sizing:border-box!important;border:1px solid #c3dce8!important;background:#fff!important;border-radius:14px!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .site-element-search-bar__input {padding:0 14px 0 42px!important;}
body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__wrapper {margin-top:0!important;}
@media(max-width:800px) {
 body.oo-v43-site #ai-CSygSU .oo-v43-ads-layout {grid-template-columns:minmax(0,1fr) minmax(0,.62fr);gap:22px;}
 body.oo-v43-site #ai-CSygSU .oo-v43-ads-copy {grid-column:1/-1;}
 body.oo-v43-site #ai-CSygSU .oo-v43-ads-visual {height:230px;}
}
@media(max-width:640px) {
 body.oo-v43-site.oo-v37-main .oo-v43-title {padding:28px 18px 62px!important;}
 body.oo-v43-site.oo-v37-main .oo-v43-title-inner p {font-size:16px!important;}
 body.oo-v43-site.oo-page-home.oo-v37-main .oo-home-hero::before {background:linear-gradient(180deg,rgba(231,242,248,.86),rgba(220,238,246,.63),rgba(204,227,239,.25))!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__header {grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;align-items:end!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__header-item {align-self:end!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi .product-list__sort {flex-direction:column!important;align-items:stretch!important;gap:6px!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi .product-list-sorting__select-wrapper {width:100%!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi .product-list-sorting__label {font-size:13px!important;}
 body.oo-v43-site.oo-page-store #ai-AawfTi :is(.site-element-search-bar__input,.product-list-sorting__select) {font-size:13px!important;}
}

/* The thin information strip uses the same blue palette at its natural height. */
body.oo-v43-site.oo-v37-site .oo-topline {background:linear-gradient(120deg,#e7f2f8 0%,#dceef6 52%,#cce3ef 100%)!important;}

/* Reference finish on both ads photographs; the refractor stays inside the opaque area. */
body.oo-v43-site #ai-CSygSU .oo-v43-ads-refractor {
 mix-blend-mode:multiply;
 -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent);
 mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent);
 -webkit-mask-composite:source-in;mask-composite:intersect;
}
body.oo-v43-site #ai-CSygSU .oo-v43-ads-refractor img {
 inset:20px!important;width:calc(100% - 40px)!important;height:calc(100% - 40px)!important;mix-blend-mode:normal;
}
