/* ReefSync palette, richer imagery and consistent page rhythm. */
body{background:radial-gradient(ellipse at 90% 5%,#0b526c80,transparent 36%),radial-gradient(ellipse at 0 55%,#13435670,transparent 35%),#03131d}
.header{position:sticky;top:0;box-shadow:0 8px 35px #0004;backdrop-filter:blur(18px)}
.hero{min-height:740px}.hero-content{padding-top:110px}.hero h1{max-width:750px}.hero:after{background:linear-gradient(90deg,#03131df2,#03131d80 52%,#03131d00),linear-gradient(0deg,#03131d,transparent 35%)}
.hero-image{background-position:65% center}.hero .eyebrow,.eyebrow{color:#55e6e6}.button{background:linear-gradient(110deg,#55e6e6,#43b6ff);box-shadow:0 8px 28px #16bcd326;border:1px solid #86f8ff55;border-radius:12px}.button:hover{box-shadow:0 12px 35px #43b6ff55;color:#03131d}.button:focus-visible{outline-color:#ffaf8b}
.page-intro{position:relative;isolation:isolate;border-radius:28px;min-height:340px;padding:66px 44px;margin-top:26px;overflow:hidden;border:1px solid #55e6e62b;background:linear-gradient(90deg,#03131dfa 5%,#03131dca 48%,#03131d30),var(--page-image,url('assets/coral-detail-v2.png')) center/cover}
.page-intro .intro{max-width:680px;color:#d4e9ec}.page-intro h1{max-width:800px;font-size:clamp(36px,5vw,68px)}
.section{padding-block:70px}.collaboration-grid article,.service-grid article,.app-start article,.explainer-grid article{box-shadow:0 18px 50px #0003;background:linear-gradient(145deg,#124358b8,#071e2aed);border-color:#57cde833;transition:transform .2s,border-color .2s}.collaboration-grid article:hover,.service-grid article:hover,.app-start article:hover{transform:translateY(-4px);border-color:#55e6e688}
.section h2,.practice h2{max-width:800px}.practice{background:linear-gradient(115deg,#124153,#082432);border-left:4px solid #ffac88}.number,.contact-label{color:#ffb69b}.inline-link{display:inline-block;padding-block:8px;font-weight:600}
.section-picture{display:block;width:100%;height:175px;object-fit:cover;border-radius:14px;margin-bottom:24px}.page-ribbon{width:100%;height:230px;object-fit:cover;border-radius:22px;margin:0 0 24px}.shop-entry>img{box-shadow:none;border:1px solid #5adbe94d}.shop-brands a{display:flex;align-items:center;gap:14px;padding:14px 18px;border:1px solid #55e6e649;border-radius:12px;background:#0b2c3a}.shop-brands img{width:85px;height:45px;object-fit:contain;background:white;border-radius:6px;padding:4px}
.contact{background:linear-gradient(90deg,#03131df5,#03131dc9),url('assets/reef-hero-v2.png') center/cover;border-radius:25px;padding:45px;margin-top:35px;border:1px solid #55e6e640}.contact-person{background:#082838e8;padding:28px;border-radius:18px;border:1px solid #55e6e64d}.contact-person .email{font-size:clamp(14px,2vw,21px);overflow-wrap:anywhere}.language-picker{background:#113747;color:white;border:1px solid #527480;border-radius:8px;padding:8px;font:inherit;max-width:125px}.language-label{font-size:12px;color:#bcdbe3;display:flex;align-items:center;gap:7px}.shop-guarantees{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.shop-guarantees span{padding:8px 12px;border-radius:99px;background:#55e6e611;border:1px solid #55e6e633;color:#bfeef1;font-size:12px}
@media(max-width:1000px){nav{gap:14px}.brand>span{display:none}.header{gap:12px}.language-label>span{display:none}}
@media(max-width:720px){.hero{min-height:630px}.hero-content{padding-top:65px}.page-intro{padding:36px 22px;min-height:320px;background-position:65% center}.section{padding-block:42px}.contact{padding:25px}.section-picture{height:145px}.language-picker{max-width:90px}.page-ribbon{height:180px}.hero h1{font-size:49px}}
@media(prefers-reduced-motion:reduce){.collaboration-grid article,.service-grid article,.app-start article{transition:none;transform:none!important}}

/* Bounded desktop content keeps text and images readable on ultrawide displays. */
@media(min-width:1024px){
 .wrap{width:calc(100% - 64px);max-width:1320px}
 .header{padding-inline:max(32px,calc((100vw - 1320px)/2))}
 .page-intro{padding-inline:44px}
 .section-picture{height:auto;aspect-ratio:16/10;object-fit:cover}
 .shop-entry{grid-template-columns:1fr 1fr;gap:48px}
 .shop-entry>img{height:auto;aspect-ratio:auto;object-fit:contain}
 .tester-form{max-width:960px;grid-template-columns:1fr 1fr;gap:24px}
 .tester-form>label:has(textarea),.tester-consent,.tester-form>p{grid-column:1/-1}
}

/* Consistent readable measure and resilient grids across all pages. */
.wrap{min-width:0}.wrap p{max-width:70ch}
.collaboration-grid,.service-grid,.app-start,.explainer-grid,.shop-entry{min-width:0}
.collaboration-grid>*,.service-grid>*,.app-start>*,.explainer-grid>*,.shop-entry>*{min-width:0}
.shop-routes{align-items:flex-start}.shop-routes .button{max-width:100%;width:auto}
@media(max-width:720px){
 .wrap{width:calc(100% - 32px)}
 .page-intro{padding:30px 20px;min-height:0}.page-intro h1{font-size:clamp(32px,8vw,44px)}
 .hero h1{font-size:clamp(36px,10vw,49px)}
 .section-picture{height:auto;aspect-ratio:16/10}
 .shop-entry>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;box-shadow:none}
 .contact h2{font-size:36px}.contact{padding:24px 18px}.contact-person{padding:20px 14px}
 .button{max-width:100%;white-space:normal}.shop-routes .button{width:100%}
}
.wrap{overflow-wrap:anywhere}.hero-description{max-width:48ch!important}

/* Keep informative imagery whole; background scenery may crop decoratively. */
.shop-entry>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;box-shadow:none}
.section-picture{height:auto;aspect-ratio:3/2;object-fit:contain;background:#061c28}
.shop-brands img,.brand img{object-fit:contain;flex-shrink:0}

/* Clip banner imagery to all four corners, including the border edge. */
.page-intro{background-clip:padding-box;border-color:#254553}
