/* Mobile-first enhancements; all content stays visible without JavaScript. */
.icon-arrow{display:inline-block;width:19px;height:19px;flex:none;vertical-align:-4px;margin-left:4px}
.button .icon-arrow,.header-cta .icon-arrow{margin-left:0;vertical-align:middle}
.company-inline-link{display:inline-flex;align-items:center;gap:6px}
.mobile-first-header{position:sticky;top:0;z-index:50;height:84px;background:#10243af7;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.mobile-first-header .header-inner{height:84px}
.mobile-first-header nav a{display:inline-flex;align-items:center;gap:6px;min-height:44px}
.mobile-first-header nav a[aria-current=page]{color:#d7e5b5}
.mobile-first-header .header-cta{display:inline-flex;align-items:center;gap:14px;min-height:44px}
.nav-radar-dot{display:block;width:5px;height:5px;border-radius:50%;background:#c6d5a3;box-shadow:0 0 0 4px #b5c39115}
.mobile-navigation{display:none;margin:0}
.mobile-navigation summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:11px;min-height:44px;padding:8px 13px;color:#f5f3ec;border:1px solid #ffffff40;border-radius:8px;cursor:pointer;font-size:12px}
.mobile-navigation summary::-webkit-details-marker{display:none}
.mobile-navigation summary::marker{content:''}
.mobile-navigation[open] .menu-icon{transform:rotate(90deg)}
.mobile-navigation nav{position:absolute;right:16px;top:calc(100% + 8px);width:min(320px,calc(100vw - 32px));display:flex;flex-direction:column;align-items:stretch;padding:12px;border:1px solid #ffffff25;border-radius:14px;background:#10243a;box-shadow:0 22px 44px #071a3233}
.mobile-navigation nav a{justify-content:space-between;padding:10px 14px;border-radius:7px;font-size:15px;color:#f5f3ec;min-height:48px}
.mobile-navigation nav a[aria-current=page]{background:#d4dfb713}
.mobile-navigation nav .mobile-menu-contact{border-top:1px solid #ffffff25;margin-top:9px;padding-top:17px;color:#d5e3b7}

.brand-radar{isolation:isolate;position:relative;width:100%;max-width:340px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,#203e4c 0,#102b3b 43%,#0c2033 72%);overflow:hidden;contain:layout paint}
.brand-radar-grid{position:absolute;inset:8%;border-radius:50%;background:linear-gradient(90deg,transparent calc(50% - .5px),#a9c17b28 50%,transparent calc(50% + .5px)),linear-gradient(transparent calc(50% - .5px),#a9c17b28 50%,transparent calc(50% + .5px))}
.brand-radar-ring{position:absolute;border:1px solid #b4cc883d;border-radius:50%;pointer-events:none}
.ring-one{inset:9%;border-style:dashed}.ring-two{inset:22%}.ring-three{inset:35%}
.brand-radar-beam{position:absolute;inset:9%;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 68%,#b4d77904 72%,#b4d77924 95%,#cfe9a95c 99.7%,transparent 100%);animation:brand-scan 14s linear infinite;transform-origin:center;will-change:transform}
.brand-radar-dot{position:absolute;width:6px;height:6px;background:#ccdfa2;border-radius:50%;box-shadow:0 0 0 5px #c5dc9218,0 0 15px #b5d77b44;animation:radar-signal 4s ease-in-out infinite}
.dot-one{left:26%;top:29%}.dot-two{left:72%;top:59%;animation-delay:1.3s}.dot-three{left:62%;top:18%;animation-delay:2.5s}
.brand-radar-center{position:absolute;inset:36%;display:grid;place-items:center;border:1px solid #ffffff38;border-radius:16%;background:#fff;box-shadow:0 8px 30px #051a2a55}
.brand-radar-center img{width:85%;height:auto;display:block;object-fit:contain}
.brand-radar-caption{position:absolute;bottom:12%;left:0;right:0;text-align:center;font-size:8px;letter-spacing:2px;color:#c9d7b3}
.hero-radar{position:absolute;top:45px;right:25px;width:190px;box-shadow:0 15px 40px #10243a35}
.hero-radar .brand-radar-caption{font-size:6px;letter-spacing:1px}
.company-hero-visual .company-image-caption{right:auto;left:30px;top:24px;font-size:7px}
.home-section-radar{margin:auto;width:min(100%,330px);box-shadow:0 18px 60px #10243a12}
.page-radar{position:absolute;right:max(35px,calc((100vw - 1208px)/2));top:50%;transform:translateY(-50%);width:230px}
.company-page-hero{position:relative;padding-right:max(315px,calc((100vw - 1208px)/2 + 280px))}
.company-page-hero h1{font-size:clamp(40px,4.5vw,65px)}
.service-visual{color:#667348;height:155px;border-radius:12px;background:linear-gradient(135deg,#eef2e5,#f7f8f3);overflow:hidden}
.company-topic>.service-visual{display:block;margin:0 0 26px}
.service-visual svg{width:100%;height:100%;display:block}
.visual-float{animation:visual-float 4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.visual-line{animation:visual-line 5s ease-in-out infinite}.visual-line-1{animation-delay:.2s}.visual-line-2{animation-delay:.4s}
.visual-needle{transform-origin:160px 88px;animation:visual-needle 7s ease-in-out infinite}
.company-topic{border-radius:15px}
.company-topic>div:first-child{margin-bottom:22px}
.company-topic h3{font-family:Georgia,serif;font-size:29px}
.company-topic-bottom{font-size:9px}
.scroll-visual{overflow:hidden}
.scroll-visual-media{transform:translateY(var(--visual-shift,0px)) scale(1.06);opacity:var(--visual-opacity,1);will-change:transform,opacity}
.motion-item{transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.motion-item[data-reveal=pending]{opacity:0;transform:translateY(22px)}
.motion-item[data-reveal=visible]{opacity:1;transform:translateY(0)}
.motion-item[data-reveal=past]{opacity:.25;transform:translateY(-12px)}
.motion-item:focus-within{opacity:1!important;transform:none!important}
.motion-item:not([data-reveal=visible]) .service-visual *{animation-play-state:paused}
.brand-radar[data-in-view=false] *{animation-play-state:paused}
.radar-welcome{background:var(--navy);color:white;overflow:hidden}
.radar-welcome-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:center;padding-top:60px;padding-bottom:60px}
.radar-welcome .company-small-label{color:#c7d8a8}
.radar-welcome h1{font-family:Georgia,serif;font-size:clamp(40px,4.6vw,66px);font-weight:400;line-height:1.12;letter-spacing:-1.9px;margin:23px 0}
.radar-welcome h1 em{color:#c4d49d;font-style:normal}
.radar-welcome p{font-size:16px;line-height:1.8;max-width:510px;color:#bfccd0;margin-bottom:28px}
.radar-welcome-art{margin:auto}
.radar-edition-note{max-width:700px;font-size:14px;margin:-8px 0 30px}
.motion-control-wrap{padding:12px 22px 18px;background:#edf0e6;display:flex;justify-content:center}
.motion-control{display:flex;gap:9px;align-items:center;min-height:44px;background:transparent;color:#52633e;border:1px solid #c6d0b8;border-radius:30px;padding:10px 17px;font-size:11px}
html[data-motion-paused=true] .brand-radar *,html[data-motion-paused=true] .service-visual *{animation-play-state:paused!important}
html[data-motion-paused=true] .motion-item{opacity:1;transform:none;transition:none}
@keyframes brand-scan{to{transform:rotate(360deg)}}
@keyframes radar-signal{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes visual-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes visual-line{0%,100%{opacity:.7}50%{opacity:1}}
@keyframes visual-needle{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(12deg)}}
@media(max-width:1000px){.page-radar{width:190px;right:30px}.company-page-hero{padding-right:255px}.hero-radar{width:160px;right:20px;top:50px}.company-hero-visual .company-image-caption{left:auto;right:18px}}
@media(max-width:800px){
 .mobile-first-header{height:72px;padding-top:env(safe-area-inset-top,0px)}
 .mobile-first-header .header-inner{height:72px;flex-wrap:nowrap;justify-content:space-between;padding:0 20px;gap:14px}
 .mobile-first-header .official-brand{width:40px;border-radius:4px}
 .mobile-first-header .company-brand-name{font-size:17px}
 .mobile-first-header .brand-sub{font-size:6px;letter-spacing:1.8px;margin-top:6px}
 .mobile-first-header .brand{gap:10px}
 .mobile-first-header .desktop-navigation,.mobile-first-header .header-cta{display:none}
 .mobile-first-header .mobile-navigation{display:block;flex:none}
 .mobile-first-header .mobile-navigation nav{margin:0;order:unset;justify-content:flex-start;gap:2px;border-top:1px solid #ffffff25}
 .company-hero{display:flex;flex-direction:column;min-height:0}
 .company-hero-copy{padding:35px 22px 27px}
 .company-eyebrow{font-size:8px;letter-spacing:1.6px;gap:9px;margin-bottom:23px}
 .company-hero h1{font-size:clamp(32px,8.2vw,52px);letter-spacing:-1.7px;line-height:1.12;margin-bottom:20px}
 .company-hero-copy>p{font-size:15px;line-height:1.75;margin-bottom:0;max-width:500px}
 .company-hero-note{display:none}
 .company-buttons{gap:16px;margin-top:25px}
 .company-buttons>.button{min-height:48px;padding:13px 17px;font-size:13px;gap:13px}
 .company-inline-link{font-size:12px;min-height:42px;gap:3px}
 .company-hero-visual{min-height:315px;width:calc(100% - 32px);margin:0 16px 22px;border-radius:65px 12px 12px 12px}
 .hero-radar{width:138px;top:22px;right:18px}
 .company-hero-visual .company-image-caption{top:35px;left:24px;right:auto;font-size:6px;letter-spacing:1.2px;max-width:140px}
 .company-image-note{bottom:18px;left:18px;right:18px;padding:18px 20px;border-radius:0 10px 10px 0}
 .company-image-note .company-small-label{font-size:7px;letter-spacing:1.5px}
 .company-image-note p{font-size:27px;line-height:1.15;margin-top:10px}
 .company-path{display:grid;grid-template-columns:1fr;gap:0;padding:20px 22px 10px}
 .company-path>span{font-size:8px;margin-bottom:13px;letter-spacing:1.5px}
 .company-path a{min-height:48px;padding:10px 0;display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #cdd6be;font-size:13px}
 .company-path a .icon-arrow{width:17px;height:17px}
 .company-intro{padding:48px 22px;gap:23px}
 .company-intro h2{font-size:37px;line-height:1.13;margin-top:17px}
 .company-intro-copy .company-lead{font-size:20px;line-height:1.5}
 .company-intro-copy p{font-size:15px;line-height:1.85}
 .company-topic-grid{gap:18px;margin-top:26px}
 .company-topics-wrap .section-heading{display:block}
 .company-topics-wrap .section-heading>a{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding-top:0;font-size:12px;margin-top:8px}
 .company-topics-wrap h2{font-size:32px;line-height:1.17}
 .company-topic{padding:23px 23px 20px}
 .company-topic p{font-size:14px;line-height:1.8}
 .company-topic>div:first-child{margin-bottom:16px}
 .company-topic>.service-visual{height:142px;margin-bottom:21px}
 .company-topic-bottom{font-size:8px;padding-top:17px;margin-top:20px}
 .company-radar-heading{display:flex;flex-direction:column;gap:25px;align-items:stretch}
 .company-radar-section h2{font-size:34px;line-height:1.14}
 .home-section-radar{display:block;width:230px;max-width:75%;margin:8px auto 0}
 .company-latest{margin-top:40px}.company-latest .content-card{padding:23px;border-radius:12px}.company-latest .content-card h3{font-size:22px}
 .company-conversation{border-radius:14px;margin:5px 16px 40px;padding:32px 24px}
 .company-conversation h2{font-size:32px;line-height:1.18}.company-conversation .button{width:100%;justify-content:space-between;font-size:13px;gap:15px}
 .company-newsletter{margin:0 22px;padding:35px 0 40px}.company-newsletter h2{font-size:31px}.company-newsletter .button{width:100%;justify-content:space-between;font-size:13px}
 .company-footer{padding:32px 22px;gap:30px 22px}.company-footer-column{gap:3px}.company-footer-column a{display:inline-flex;align-items:center;min-height:42px;font-size:12px}.company-footer .official-brand{width:42px}.company-footer .company-brand-name{font-size:18px}
 .company-page-hero{padding:35px 22px 30px}.company-page-hero h1{font-size:clamp(33px,8.3vw,48px);line-height:1.14;letter-spacing:-1.4px;margin:22px 0}.company-page-hero p{font-size:15px;line-height:1.8}
 .page-radar{position:relative;top:auto;right:auto;transform:none;width:185px;margin:25px auto 0}
 .company-service-row{grid-template-columns:34px minmax(0,1fr);gap:9px 17px;scroll-margin-top:95px}.company-service-row h2{font-size:29px}.company-service-row p{font-size:15px;line-height:1.85}
 .company-person{border-radius:13px;padding:25px}.company-person .company-small-label{font-size:8px;line-height:1.7;letter-spacing:1.1px}.company-person h3{font-family:Georgia,serif;font-size:28px}.company-person p{font-size:14px;line-height:1.9}
 .radar-welcome-inner{display:flex;flex-direction:column;gap:24px;padding:35px 22px 30px;align-items:stretch}
 .radar-welcome .company-small-label{font-size:8px;letter-spacing:1.5px}.radar-welcome h1{font-size:clamp(34px,8.5vw,48px);line-height:1.12;letter-spacing:-1.5px;margin:21px 0}.radar-welcome p{font-size:15px;line-height:1.8;margin-bottom:23px}.radar-welcome .button{font-size:13px;min-height:48px;gap:20px}.radar-welcome-art{width:220px;margin:0 auto}
 .radar-subnav{padding:19px 22px;display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.radar-subnav strong{grid-column:1/-1;font-size:9px;letter-spacing:1.5px;margin-bottom:6px}.radar-subnav a{min-height:40px;font-size:12px;display:flex;align-items:center}.radar-subnav .icon-arrow{width:14px;height:14px}
 .radar-edition-note{font-size:13px;line-height:1.8}.cards .content-card{border-radius:12px;padding:24px}.content-card .card-bottom{align-items:center;flex-wrap:wrap;line-height:1.7}.article h1{font-size:34px;line-height:1.15;overflow-wrap:anywhere}.article-summary{line-height:1.7}.prose{line-height:1.85}.article-meta{line-height:1.8}.sources a{overflow-wrap:anywhere}.sources span{margin-top:5px}.article-cta{padding:24px}.article-cta h2{font-size:27px}.article-cta .button{max-width:100%;gap:14px;font-size:13px}.article .panel .button{max-width:100%;gap:14px}
 .motion-control-wrap{padding-bottom:max(18px,env(safe-area-inset-bottom,18px))}
}
@media(max-width:350px){.mobile-first-header .header-inner{padding:0 15px;gap:8px}.mobile-first-header .company-brand-name{font-size:15px}.mobile-first-header .brand-sub{font-size:5px;letter-spacing:1.5px}.mobile-navigation summary{padding:7px 10px;gap:7px;font-size:11px}.company-buttons{gap:8px 15px}.company-buttons>.button{font-size:12px;padding:12px 14px}.company-inline-link{font-size:11px}.hero-radar{width:118px;right:15px;top:22px}.company-hero-visual .company-image-caption{font-size:5px;left:19px}}
@media(prefers-reduced-motion:reduce){.brand-radar *,.service-visual *{animation:none!important}.motion-item{opacity:1!important;transform:none!important;transition:none!important}.scroll-visual-media{transform:none!important;opacity:1!important;will-change:auto}.motion-control-wrap{display:none}.company-topic:hover{transform:none}}
