/* V24: each destination is clear, every new section earns its place. */
.product-partners .section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:0 54px;align-items:end;margin-bottom:36px}
.product-partners .eyebrow{grid-column:1/-1}
.product-partners h2{font-size:clamp(36px,4vw,58px);line-height:1.2;max-width:740px}
.product-partners .section-heading>p{font-size:17px;line-height:1.7;margin:0 0 6px;max-width:370px}
.partner-logo-grid.partner-count-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.partner-logo-card{padding:17px 16px 15px}
.partner-logo-image{height:112px;padding:20px 14px}
.partner-logo-image img{max-width:min(180px,100%);max-height:72px}
.partner-logo-card>span{font-size:14px;line-height:1.45}
.marquee-track{animation-duration:92s}
.marquee-set{align-items:stretch}
.insurer-logo{flex:0 0 236px;width:236px;background:#f6f8fc!important;color:#213048!important}
.insurer-logo>span{color:#34465d!important;font-size:14px}
.insurer-logo img{object-fit:contain;max-width:176px;max-height:68px}
.closing .closing-phone{font-size:clamp(22px,2.4vw,31px);font-weight:700;letter-spacing:.015em;margin-top:28px;display:inline-block;padding:8px 0;color:#d4e5f7;border-bottom:1px solid #a5b8dc44}
.closing .closing-phone:hover{color:var(--teal)}
body[data-page] .closing .button{font-size:17px;min-height:58px}
.footer-bottom{margin-top:34px}footer{padding-bottom:90px}
/* Radial light expands slowly around the original sculpture. No flashes. */
.cosmic-burst{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.75}
.burst-ring{position:absolute;left:50%;top:50%;width:260px;height:260px;margin:-130px;border:1px solid #8ddbd459;border-radius:50%;box-shadow:0 0 24px #7da8f329,inset 0 0 25px #b4a0ee19;animation:light-expansion 10s cubic-bezier(.18,.58,.4,1) infinite}
.burst-ring:nth-child(2){animation-delay:-5s;border-color:#b59af054}
@keyframes light-expansion{0%{transform:scale(.45);opacity:0}15%{opacity:.52}80%,100%{transform:scale(1.92);opacity:0}}
.burst-rays{position:absolute;inset:7%;border-radius:50%;background:repeating-conic-gradient(from 20deg,#98d9ec00 0deg,#98d9ec00 16deg,#97c9ed24 17deg,#c0a4ed00 20deg);mask-image:radial-gradient(circle,transparent 25%,#000 40%,transparent 70%);animation:light-corona 28s ease-in-out infinite alternate}
@keyframes light-corona{from{transform:rotate(-10deg) scale(.95);opacity:.28}to{transform:rotate(14deg) scale(1.1);opacity:.7}}
.burst-spark{position:absolute;left:50%;top:50%;height:2px;width:2px;border-radius:50%;background:#c8eff8;box-shadow:0 0 8px #9de3ec;animation:light-particle 10s ease-out var(--delay) infinite;transform:rotate(var(--angle)) translateX(90px);opacity:0}
@keyframes light-particle{0%,10%{transform:rotate(var(--angle)) translateX(70px) scale(.3);opacity:0}25%{opacity:.68}75%,100%{transform:rotate(var(--angle)) translateX(var(--distance)) scale(.4);opacity:0}}
.offscreen .cosmic-burst *,.motion-paused .cosmic-burst *,.tab-hidden .cosmic-burst *{animation-play-state:paused!important}
.motion-paused .cosmic-burst{opacity:.2}
/* Distinct editorial layouts keep useful advice light and scannable. */
.review-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.review-path article{padding:28px 0;border-top:1px solid var(--line)}
.review-path h3{font-size:29px;margin:22px 0 18px;line-height:1.2}
.review-path p{font-size:17px;line-height:1.75}
.briefing-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:64px;align-items:start}
.briefing-lead{padding:35px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#34667230,#46356021)}
.briefing-lead h3{font-size:clamp(30px,3vw,43px);line-height:1.2;margin:24px 0}
.briefing-lead p{font-size:17px;line-height:1.8}
.briefing-list{padding:0;margin:0;list-style:none;counter-reset:brief}
.briefing-list li{position:relative;counter-increment:brief;padding:0 0 27px 50px;margin-bottom:27px;border-bottom:1px solid var(--line)}
.briefing-list li:before{content:'0' counter(brief);position:absolute;top:3px;left:0;color:var(--teal);font-size:14px}
.briefing-list strong{font-size:22px;line-height:1.4;display:block;margin-bottom:9px}
.briefing-list p{font-size:17px;line-height:1.75}
.prepare-list{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:0;gap:0 50px}
.prepare-list li{padding:22px 0;border-top:1px solid var(--line);font-size:21px;line-height:1.5;display:flex;gap:19px}
.prepare-list li>span{color:var(--teal)}.prepare-note{margin-top:25px;max-width:670px;font-size:17px}
.industry-directory>a{display:grid;grid-template-columns:45px 1fr 24px;gap:25px;align-items:center;padding:38px 0;border-top:1px solid var(--line);transition:background .4s,padding .4s}
.industry-directory>a:hover{background:#91c1ed08;padding-inline:16px}
.industry-directory h3{font-size:clamp(27px,3vw,40px);line-height:1.2;margin-bottom:12px}
.industry-directory p{font-size:17px}
.useful-questions .faq{max-width:1000px}
#claim-help .advisory-deck{max-width:950px}
#claim-help .deck-panel{min-height:300px}
#claim-help .advice-signal{display:none}
#enquiry{scroll-margin-top:145px}
.contact-layout{padding-top:35px}
.contact-layout h2{line-height:1.2}
.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.form-actions .button{font-size:16px;min-height:56px}
.form-actions .button:disabled{opacity:.5}
.form-hint{font-size:14px;line-height:1.65;margin-top:17px;max-width:520px}
label>span{font-size:14px;font-weight:400;color:var(--muted)}
#form-status:not(:empty){padding:18px;border:1px solid #91c9d948;border-radius:12px;margin-top:24px}
#email-fallback .plain-link{margin-top:14px}
/* Navigation thumbnails use four separate scenes from the original sector artwork. */
.sector-image.sector-0,.sector-image.sector-1,.sector-image.sector-2,.sector-image.sector-3{background-image:url('/sectors.webp');background-size:200% 200%}
.sector-image.sector-0{background-position:0 0}.sector-image.sector-1{background-position:100% 0}.sector-image.sector-2{background-position:0 100%}.sector-image.sector-3{background-position:100% 100%}
body[data-page] .sector-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.partner-logo-grid.partner-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.product-partners .section-heading{grid-template-columns:1fr}.product-partners .section-heading>p{margin-top:22px;max-width:600px}.briefing-grid{gap:30px}.review-path{gap:24px}.review-path h3{font-size:25px}body[data-page] .sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .product-partners h2{font-size:37px;line-height:1.23}
 .partner-logo-grid{gap:12px}.partner-logo-card{padding:12px 10px}.partner-logo-image{height:91px;padding:12px 7px}.partner-logo-image img{max-width:100%;max-height:58px}.partner-logo-card>span{font-size:14px}
 .review-path,.briefing-grid,.prepare-list{grid-template-columns:1fr;gap:20px}
 .review-path article{padding:25px 0 8px}.review-path h3{font-size:29px;margin-top:18px}
 .briefing-lead{padding:27px}.briefing-list li{padding-left:40px}.briefing-list strong{font-size:21px}
 .prepare-list{gap:0}.prepare-list li{font-size:19px;padding:20px 0}.prepare-note{font-size:16px}
 .industry-directory>a{grid-template-columns:23px 1fr 18px;gap:15px;padding:29px 0}.industry-directory h3{font-size:27px}.industry-directory p{font-size:16px}
 .cosmic-burst{scale:.8}.burst-ring{width:240px;height:240px;margin:-120px}
 #claim-help .deck-panel{min-height:0}.form-actions{display:grid;grid-template-columns:1fr}.form-actions .button{width:100%}
 #enquiry{scroll-margin-top:145px}footer{padding-bottom:95px}
 .contact-routing p{overflow-wrap:anywhere}.contact-number{font-size:clamp(27px,6.5vw,43px)!important}
}
@media(prefers-reduced-motion:reduce){.cosmic-burst *{animation:none!important}.cosmic-burst{opacity:.16}.burst-ring{opacity:.3;transform:scale(1.3)}}
#enquiry{scroll-margin-top:0}
/* The aura expands beyond the crest rather than disappearing behind it. */
.cosmic-burst{inset:-7%;opacity:.85}
.burst-ring{width:300px;height:300px;margin:-150px;border-width:1.5px}
@keyframes light-expansion{0%{transform:scale(.65);opacity:0}18%{opacity:.6}55%{opacity:.32}90%,100%{transform:scale(1.9);opacity:0}}
.burst-rays{inset:-4%;mask-image:radial-gradient(circle,transparent 29%,#000 46%,transparent 70%)}
@keyframes light-particle{0%,8%{transform:rotate(var(--angle)) translateX(130px) scale(.3);opacity:0}25%{opacity:.8}80%,100%{transform:rotate(var(--angle)) translateX(calc(var(--distance) + 50px)) scale(.4);opacity:0}}

.footer-brand>.brand{display:block;width:130px}
