/* Compact reusable call to action shown above the footer on every page. */
.common-cta{position:relative;overflow:hidden;padding:44px 0;background:linear-gradient(120deg,#e5f5ff 0%,#cfeeff 56%,#eaf7ff 100%);color:#0d174c}
.common-cta:after{content:"";position:absolute;right:-90px;top:-170px;width:360px;height:360px;border:1px solid rgba(6,118,239,.14);border-radius:50%;box-shadow:0 0 0 55px rgba(6,118,239,.035)}
.common-cta .common-cta-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:60px;align-items:center}
.common-cta-copy .eyebrow{margin-bottom:9px;color:#0676ef}
.common-cta-copy h2{font-size:clamp(38px,4vw,54px);line-height:1;letter-spacing:-.045em}
.common-cta-copy>p{max-width:690px;margin:14px 0 0;color:#4f6085;font-size:14px;line-height:1.6}
.common-cta-points{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:15px;color:#152458;font-size:11px;font-weight:800}
.common-cta .button{min-width:205px;background:#0d174c;color:#fff;box-shadow:0 13px 30px rgba(13,23,76,.16)}

/* Compact footer with useful contact details. */
.site-footer{padding:46px 0 18px}
.site-footer .footer-compact-grid{grid-template-columns:1.25fr .85fr 1.35fr;gap:clamp(42px,6vw,88px);align-items:start}
.site-footer .footer-brand p{max-width:390px;margin:15px 0 0;color:#b7c5e5;line-height:1.65}
.site-footer .brand-footer{display:inline-flex;width:min(100%,250px);height:auto;padding:0;line-height:0}
.site-footer .brand-footer img{display:block;width:100%;height:auto;max-height:106px;object-fit:contain;object-position:left center;background:transparent;border-radius:0}
.site-footer .socials{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.site-footer .socials:empty{display:none}
.site-footer .socials a{margin:0!important;background:rgba(255,255,255,.025);transition:border-color .2s,background .2s,transform .2s}
.site-footer .socials a:hover{border-color:#70d9ff;background:rgba(112,217,255,.1);transform:translateY(-2px)}
.site-footer .footer-links{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.site-footer .footer-links h3{grid-column:1/-1}
.site-footer .footer-links>a{margin:7px 0!important}
.site-footer .footer-contact{display:grid;gap:10px}
.site-footer .footer-contact h3{margin-bottom:6px}
.site-footer .footer-contact>a,.site-footer .footer-contact>p{display:grid!important;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start;margin:0!important;padding:8px 0;color:#cbdad6!important;font-size:12px!important;line-height:1.4}
.site-footer .footer-contact .footer-address{margin-bottom:4px!important;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1)}
.site-footer .footer-contact i{width:32px;height:32px;display:grid;place-items:center;border:1px solid #34477d;border-radius:9px;color:#70d9ff;font-style:normal;font-size:14px}
.site-footer .footer-contact span{min-width:0;overflow-wrap:anywhere}
.site-footer .footer-contact small{display:block;margin-bottom:2px;color:#7185b9;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.site-footer .footer-bottom{margin-top:30px;padding-top:17px}
.site-footer .footer-bottom>div{display:flex;gap:24px}
.site-footer .footer-legal-disabled{color:#7185b9;font-size:10px;cursor:default;user-select:none}

/* About gallery showcase, positioned directly after member feedback. */
.about-gallery-teaser{padding:76px 0;background:linear-gradient(145deg,#0d174c,#101d66);color:#fff}
.about-gallery-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.65fr) auto;gap:45px;align-items:end;margin-bottom:34px}
.about-gallery-head .eyebrow{margin-bottom:14px}
.about-gallery-head h2{margin:0;font-size:clamp(42px,4.8vw,68px);line-height:.98;letter-spacing:-.045em}
.about-gallery-head>p{margin:0 0 5px;color:#afbbe0;font-size:14px;line-height:1.65}
.about-gallery-head .button{min-width:180px}
.about-gallery-teaser .teaser-grid{height:350px;display:grid;grid-template-columns:1.15fr .925fr .925fr;gap:14px}
.about-gallery-teaser .about-teaser-card{position:relative;min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#07113d;color:#fff}
.about-teaser-card img{width:100%;height:100%;display:block;object-fit:contain;object-position:center;transition:transform .35s}
.about-teaser-card>span{position:absolute;z-index:1;right:0;bottom:0;left:0;padding:54px 20px 18px;background:linear-gradient(transparent,rgba(5,12,50,.94))}
.about-teaser-card small,.about-teaser-card strong,.about-teaser-card em{display:block}
.about-teaser-card small{color:#70d9ff;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.about-teaser-card strong{margin-top:4px;font-size:18px}
.about-teaser-card em{margin-top:4px;color:#b7c2e4;font-size:11px;font-style:normal}
.about-teaser-card:hover img{transform:scale(1.025)}

@media(max-width:900px){.common-cta .common-cta-grid{grid-template-columns:1fr;gap:25px}.common-cta .button{width:max-content}.site-footer .footer-compact-grid{grid-template-columns:1.2fr 1fr;gap:45px}.site-footer .footer-contact{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer .footer-contact h3{grid-column:1/-1}.about-gallery-head{grid-template-columns:1fr auto}.about-gallery-head>p{grid-column:1/-1;grid-row:2}.about-gallery-teaser .teaser-grid{height:560px;grid-template-columns:1fr 1fr}.about-gallery-teaser .about-teaser-card:first-child{grid-column:1/-1}}
@media(max-width:620px){.common-cta{padding:38px 0}.common-cta-copy h2{font-size:38px}.common-cta-points{display:grid;gap:7px}.common-cta .button{width:100%}.site-footer{padding-top:42px}.site-footer .footer-compact-grid{grid-template-columns:1fr;gap:35px}.site-footer .footer-brand{grid-column:auto}.site-footer .brand-footer{width:min(72vw,230px)}.site-footer .footer-contact{grid-column:auto;grid-template-columns:1fr}.site-footer .footer-contact h3{grid-column:auto}.site-footer .footer-bottom{margin-top:28px}.about-gallery-teaser{padding:62px 0}.about-gallery-head{grid-template-columns:1fr;gap:22px}.about-gallery-head>p{grid-column:auto;grid-row:auto}.about-gallery-head .button{width:100%}.about-gallery-teaser .teaser-grid{height:auto;grid-template-columns:1fr}.about-gallery-teaser .about-teaser-card,.about-gallery-teaser .about-teaser-card:first-child{grid-column:auto;min-height:245px}}
