.landing-root{scroll-padding-top:0}.landing-page{scroll-behavior:smooth}.landing-progress{position:fixed;inset:0 0 auto;height:3px;z-index:100;background:#52a0b71a;pointer-events:none}.landing-progress span{display:block;height:100%;background:#52a0b7;transform:scaleX(0);transform-origin:left;box-shadow:0 0 12px #52a0b788}.landing-page .hero{min-height:min(820px,calc(100svh - 145px))}.landing-page .hero-content{padding-bottom:8rem}.landing-page .hero-study{animation:none;transform:translate3d(0,var(--landing-depth,0px),0) scale(1.11)}.landing-scroll-cue{position:absolute;left:5.2%;bottom:3.8rem;display:flex;align-items:center;gap:1rem;font-size:.7rem;letter-spacing:.08em;color:#f4f4f4}.landing-scroll-cue>span:last-child{display:grid;place-items:center;border:1px solid #52a0b766;border-radius:50%;width:32px;height:32px;animation:landing-cue 2.5s ease-in-out infinite}.landing-page .hero-bottom{bottom:1.6rem}.landing-company{padding-block:8rem;min-height:78svh;display:grid;align-items:center}.landing-company .split-layout{align-items:start}.landing-statement{position:relative;align-self:start}.landing-page .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.landing-page .service-grid>article:last-child{grid-column:1/-1}.landing-page .service-detail{min-height:350px}.landing-page .process-section{margin-top:3rem}.landing-page main>section{scroll-margin-top:135px}.landing-page .contact-banner .pending{color:#f4f4f4;background:#546f782b}.landing-page .site-nav a.is-active{background:#52a0b7;color:#1f2e33}.landing-page .site-footer{margin-top:5rem}
@keyframes landing-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes landing-enter{from{opacity:.4;transform:translate3d(0,48px,0) scale(.97)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@supports(animation-timeline:view()){.landing-page [data-reveal]{animation:landing-enter linear both;animation-timeline:view();animation-range:entry 0% cover 25%}}
.landing-page.motion-paused [data-reveal]{animation:none;opacity:1;transform:none}.landing-page.motion-paused .hero-study{transform:scale(1.025)}
@media(max-width:760px){.landing-page .hero{min-height:790px}.landing-page .hero-content{padding-bottom:6.5rem}.landing-scroll-cue{left:7%;bottom:2rem}.landing-page .service-grid{grid-template-columns:1fr}.landing-page .service-detail{min-height:0}.landing-company{min-height:0;padding-block:4.5rem}.landing-statement{position:relative}.landing-page main>section{scroll-margin-top:110px}.landing-page .hero-bottom{display:none}.landing-page .site-footer{margin-top:3rem}}
@media(prefers-reduced-motion:reduce){.landing-page{scroll-behavior:auto}.landing-page [data-reveal]{animation:none;opacity:1;transform:none}.landing-page .hero-study{transform:none}.landing-scroll-cue>span:last-child{animation:none}}

/* Glass surfaces: retain the cream canvas and dark, readable modules. */
.landing-page{background:radial-gradient(ellipse at 10% 22%,#52a0b722,transparent 27%),radial-gradient(ellipse at 92% 60%,#546f7824,transparent 26%),#f2eee6}
.landing-page .site-header{background:linear-gradient(125deg,#546f78d9,#1f2e33eb);border-color:#ffffff61;box-shadow:inset 0 1px 0 #ffffffaa,inset 0 -1px 0 #52a0b733,0 12px 38px #1f2e3333}
.landing-page :is(.hero-note.card,.statement-panel,.reference-preview,.card.service-card){background:linear-gradient(135deg,#546f78e8,#1f2e33f0);border:1px solid #ffffff66;box-shadow:inset 0 1px 0 #ffffff99,inset 1px 0 0 #ffffff26,inset 0 -1px 0 #52a0b744,0 20px 50px #1f2e332b}
.landing-page :is(.services-section,.process-section,.contact-banner){background:radial-gradient(ellipse at 90% 0%,#52a0b73d,transparent 60%),linear-gradient(130deg,#546f78e8,#1f2e33f0);border-color:#ffffff66;box-shadow:inset 0 1px 0 #ffffff99,inset 0 -1px 0 #52a0b744,0 20px 55px #1f2e3326}
.landing-page .card.service-card{overflow:hidden;background:linear-gradient(145deg,#ffffff1f,#52a0b70e 45%,#1f2e3344)}
.landing-page .card.service-card:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,#ffffff1a,transparent 32%,transparent 65%,#52a0b712)}
.landing-page .hero-note:before{background:linear-gradient(130deg,#ffffff24,transparent 35%,#52a0b712);border-radius:inherit}
.landing-page .hero-badge,.landing-page .hero-note .chip{border-color:#ffffff55;background:linear-gradient(130deg,#ffffff1c,#52a0b71c);box-shadow:inset 0 1px 0 #ffffff4d}
.landing-page .nd-button{background:linear-gradient(135deg,#52a0b7ed,#52a0b7bd);border:1px solid #ffffff77;box-shadow:inset 0 1px 0 #ffffffb3,inset 0 -1px 0 #1f2e3326,0 8px 24px #52a0b72b}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .landing-page .site-header{background:linear-gradient(125deg,#546f7888,#1f2e33b8);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%)}
 .landing-page .hero-note.card{background:linear-gradient(135deg,#546f7855,#1f2e3399);-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}
 .landing-page :is(.statement-panel,.reference-preview){background:linear-gradient(140deg,#546f78bb,#1f2e33d9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
}
@media(hover:hover) and (pointer:fine){.landing-page .card.service-card:hover{border-color:#ffffffb3;box-shadow:inset 0 1px 0 #ffffffbb,0 22px 50px #52a0b733}}
@media(max-width:760px){.landing-page .site-nav.is-open{background:#1f2e33f5}.landing-page .site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.landing-page .hero-note.card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}

/* Let the content determine card height instead of adding empty space. */
.landing-page .service-detail{min-height:0}
.landing-page .service-grid{gap:.75rem}

/* Keep the company statement aligned and inside its own section. */
.landing-page .landing-company .landing-statement{position:relative;top:auto;align-self:start;animation:none;transform:none}
.landing-company .split-layout>div{min-width:0}
@media(max-width:480px){.landing-company .page-title{overflow-wrap:anywhere;hyphens:auto}}

/* Audience building blocks, aligned with the existing glass panels. */
.landing-page .audience-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.75rem;list-style:none;margin:0;padding:0}
.landing-page .audience-card{grid-column:span 3;display:flex;align-items:center;min-width:0;min-height:112px;padding:1.4rem 1.5rem;border-radius:22px;color:#f4f4f4;background:linear-gradient(135deg,#ffffff14,transparent 45%,#52a0b709),#1f2e33f0;border:1px solid #ffffff59;box-shadow:inset 0 1px 0 #ffffff80,inset 0 -1px 0 #52a0b738,0 12px 30px #1f2e3324;font-size:1.05rem;line-height:1.45;overflow-wrap:break-word;hyphens:auto}
.landing-page .audience-card:nth-child(n+5){grid-column:span 4}
@media(max-width:1024px){.landing-page .audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-page .audience-card,.landing-page .audience-card:nth-child(n+5){grid-column:auto}.landing-page .audience-card:last-child{grid-column:1/-1}}
@media(max-width:480px){.landing-page .audience-grid{grid-template-columns:1fr}.landing-page .audience-card{min-height:80px;padding:1.1rem 1.25rem;border-radius:18px}}
@media(forced-colors:active){.landing-page .audience-card{color:CanvasText;background:Canvas;border:1px solid CanvasText;box-shadow:none}}

/* Make the next-section link an obvious action, including on touch screens. */
.landing-page .landing-scroll-cue {
  gap: .85rem; min-height: 48px; padding: .35rem 1rem .35rem .45rem;
  font-size: .85rem; letter-spacing: .015em; line-height: 1.4;
  border: 1px solid #52a0b7b3; border-radius: 16px;
  background: #1f2e33e6; color: #f4f4f4;
  box-shadow: inset 0 1px 0 #ffffff26, 0 4px 14px #1f2e3333;
  transition: border-color .2s, background .2s;
}
.landing-page .landing-scroll-cue>span:last-child {
  order: -1;
  flex: 0 0 36px; width: 36px; height: 36px; border: 0;
  background: #52a0b7; color: #1f2e33; animation: none;
}
.landing-scroll-cue svg { width: 26px; height: 26px; transition: transform .2s; }
.landing-page .landing-scroll-cue:hover { background: #303638; border-color: #78b5c7; }
.landing-scroll-cue:hover svg { transform: translateY(2px); }
.landing-page .landing-scroll-cue:focus-visible { outline: 3px solid #f4f4f4; outline-offset: 4px; }
@media(prefers-reduced-motion:reduce){.landing-scroll-cue svg{transition:none}.landing-scroll-cue:hover svg{transform:none}}
@media(forced-colors:active){
 .landing-page .landing-scroll-cue,.landing-page .landing-scroll-cue:hover{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}
 .landing-page .landing-scroll-cue>span:last-child{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}
 .landing-page .landing-scroll-cue:focus-visible{outline-color:Highlight}
}
