*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--oa-white);color:var(--oa-text);font-family:"Crimson Pro",serif;font-size:18px;line-height:1.75}img{max-width:100%;height:auto}a{color:var(--oa-primary);text-decoration:none}a:hover{text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:var(--oa-primary-900);color:#fff;padding:12px 18px;font-family:Cinzel,serif}.skip-link:focus{top:16px}.site-header{position:fixed;z-index:1000;top:0;left:0;right:0;background:rgba(255,255,255,.96);border-bottom:1px solid var(--oa-primary-200);backdrop-filter:blur(10px)}.nav{max-width:var(--oa-max);margin:auto;padding:14px var(--oa-gutter);display:flex;align-items:center;gap:28px;min-height:78px}.brand{display:inline-flex;align-items:center;min-width:160px}.brand img{width:148px;max-height:52px;object-fit:contain}.nav-toggle{display:none;margin-left:auto;background:transparent;border:1px solid var(--oa-border);color:var(--oa-primary-900);width:44px;height:44px}.nav-links{display:flex;align-items:center;gap:20px;margin-left:auto}.nav-links a,.nav-links button{font-family:Cinzel,serif;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--oa-primary-900);padding:10px 4px;position:relative;background:none;border:0}.nav-links a[aria-current="page"]:after,.nav-links a:hover:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--oa-primary)}.nav-cta{background:var(--oa-primary)!important;color:#fff!important;padding:13px 16px!important}.page-main{padding-top:78px}.container{width:min(var(--oa-max),calc(100% - 2*var(--oa-gutter)));margin:auto}.section{padding:clamp(70px,9vw,130px) 0}.section--light{background:var(--oa-primary-50)}.section--dark{background:var(--oa-primary-900);color:#fff}.section-kicker,.eyebrow{font-family:Cinzel,serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--oa-primary);margin-bottom:16px}.section--dark .section-kicker,.section--dark .eyebrow{color:var(--oa-secondary-300)}h1,h2,h3,h4{font-family:"Cormorant Garamond",serif;margin:0 0 18px;line-height:1.1;font-weight:600}h1{font-size:clamp(52px,7vw,96px);font-weight:300}h2{font-size:clamp(42px,5vw,64px)}h3{font-size:clamp(30px,3vw,40px)}p{margin:0 0 18px}.lede{font-size:clamp(20px,2vw,24px);line-height:1.6;max-width:760px}.muted{color:var(--oa-muted)}.section--dark .muted{color:var(--oa-secondary-200)}.hero{min-height:calc(100vh - 78px);display:grid;align-items:end;background:var(--oa-primary-900);color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(92,108,148,.35),transparent 45%),linear-gradient(135deg,#1F2532 0%,#3D4761 100%)}.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .65fr;gap:60px;align-items:end;padding-top:100px;padding-bottom:90px}.hero h1{max-width:980px}.hero h1 span{display:block;color:var(--oa-secondary-200)}.hero__side{border-left:1px solid rgba(255,255,255,.3);padding-left:28px}.hero__mark{font-family:Cinzel,serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--oa-secondary-200);margin-bottom:20px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid var(--oa-primary);font-family:Cinzel,serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;transition:transform var(--oa-transition),box-shadow var(--oa-transition),background var(--oa-transition)}.btn--primary{background:var(--oa-primary);color:#fff}.btn--primary:hover{background:var(--oa-primary-700);transform:translateY(-2px);box-shadow:var(--oa-shadow-soft)}.btn--outline{background:#fff;color:var(--oa-primary-900);border-color:var(--oa-secondary-600)}.section--dark .btn--outline{background:transparent;color:#fff;border-color:#fff}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}.section-heading>div:last-child{max-width:560px}.editorial{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(35px,7vw,100px)}.editorial__number{font-family:Cormorant Garamond,serif;font-size:110px;line-height:.8;color:var(--oa-primary-200)}.editorial__copy{font-size:21px}.company-stack{display:grid;gap:18px}.company-card{position:relative;background:#fff;border:1px solid var(--oa-border);padding:clamp(26px,4vw,44px);display:grid;grid-template-columns:72px 1fr auto;gap:26px;align-items:center;box-shadow:var(--oa-shadow-soft);transition:transform var(--oa-transition),box-shadow var(--oa-transition)}.company-card:hover{transform:translateY(-4px);box-shadow:var(--oa-shadow)}.company-card__bar{width:8px;height:100%;min-height:90px;background:var(--entity-primary)}.company-card h3{margin-bottom:5px}.company-card__domain{font-family:Cinzel,serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--oa-muted)}.company-card__services{font-size:16px;color:var(--oa-muted);margin-top:10px}.company-card__link{font-family:Cinzel,serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--entity-primary);white-space:nowrap}.matrix{display:grid;grid-template-columns:300px 1fr;border-top:1px solid var(--oa-secondary-300)}.matrix__tabs{border-right:1px solid var(--oa-secondary-300)}.matrix__tab{width:100%;text-align:left;padding:20px;border:0;border-bottom:1px solid var(--oa-secondary-300);background:transparent;color:var(--oa-text);font-family:Cinzel,serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.matrix__tab[aria-selected="true"]{background:var(--oa-primary);color:#fff}.matrix__panel{padding:clamp(28px,5vw,60px)}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.mini-tag{display:inline-flex;padding:7px 10px;border:1px solid var(--oa-secondary-300);font-family:Cinzel,serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--oa-secondary-300);border:1px solid var(--oa-secondary-300)}.industry-card{background:#fff;padding:32px;min-height:190px}.industry-card h3{font-size:30px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.insight-card{border:1px solid var(--oa-border);background:#fff;overflow:hidden;transition:transform var(--oa-transition),box-shadow var(--oa-transition)}.insight-card:hover{transform:translateY(-4px);box-shadow:var(--oa-shadow)}.arch-frame{aspect-ratio:16/10;overflow:hidden;position:relative;background:var(--oa-gradient)}.arch-frame img{width:100%;height:100%;object-fit:cover;display:block}.insight-card__body{padding:26px}.card-meta{font-family:Cinzel,serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--oa-muted);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}.filter-btn{background:#fff;border:1px solid var(--oa-border);padding:10px 14px;font-family:Cinzel,serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--oa-primary-900);transition:all var(--oa-transition)}.filter-btn[aria-pressed="true"]{background:var(--oa-primary);color:#fff;border-color:var(--oa-primary)}.page-hero{position:relative;min-height:430px;padding:0;background:var(--oa-primary-900);border-bottom:1px solid var(--oa-secondary-200);overflow:hidden}.page-hero__grid{position:relative;display:flex;min-height:430px;align-items:center;gap:0}.page-hero h1{max-width:900px;color:var(--oa-secondary-50);position:relative;z-index:2}.profile-stack{display:grid;gap:26px}.company-profile{border:1px solid var(--oa-border);background:#fff;overflow:hidden}.company-profile__accent{height:8px;background:var(--entity-primary)}.company-profile__body{padding:clamp(28px,4vw,52px)}.profile-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px}.service-list{columns:2;column-gap:40px;margin:20px 0;padding:0;list-style:none}.service-list li{break-inside:avoid;padding:8px 0;border-bottom:1px solid var(--oa-primary-100)}.service-list li:before{content:"— ";color:var(--entity-primary);font-weight:700}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--oa-secondary-300)}.stat{background:#fff;padding:30px}.stat strong{display:block;font-family:Cormorant Garamond,serif;font-size:46px;color:var(--oa-primary)}.timeline{border-left:1px solid var(--oa-secondary-400);margin-left:8px}.timeline__item{position:relative;padding:0 0 40px 34px}.timeline__item:before{content:"";position:absolute;left:-6px;top:9px;width:11px;height:11px;background:var(--oa-primary);border-radius:50%}.form-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field--full{grid-column:1/-1}.field label{font-family:Cinzel,serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--oa-primary-900)}.field input,.field select,.field textarea{border:1px solid var(--oa-border);padding:13px 14px;background:#fff;color:var(--oa-text);min-height:48px}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--oa-primary-200);outline-offset:2px;border-color:var(--oa-primary)}.field__error{font-size:14px;color:var(--oa-primary-800);min-height:20px}.form-status{margin-top:18px;padding:14px;border-left:4px solid var(--oa-primary);background:var(--oa-primary-50);display:none}.form-status.is-visible{display:block}.faq-list{display:grid;gap:10px}.faq-item{border:1px solid var(--oa-border);background:#fff}.faq-question{width:100%;text-align:left;background:#fff;border:0;padding:22px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-family:Cormorant Garamond,serif;font-size:25px;color:var(--oa-text)}.faq-question__icon{font-family:Cinzel,serif;font-size:16px;color:var(--oa-primary)}.faq-answer{height:0;overflow:hidden;transition:height 220ms ease}.faq-answer__inner{padding:0 24px 24px;color:var(--oa-muted)}.gallery-grid{columns:3 280px;column-gap:18px}.gallery-item{break-inside:avoid;margin:0 0 18px;border:1px solid var(--oa-border);background:#fff}.gallery-item button{border:0;padding:0;width:100%;background:none;text-align:left}.gallery-item .arch-frame{aspect-ratio:auto;min-height:220px}.gallery-caption{padding:15px 17px}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.video-card{border:1px solid var(--oa-border);background:#fff}.video-thumb{position:relative}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:2px solid #fff;background:rgba(31,37,50,.72);color:#fff;font-size:20px}.modal{position:fixed;inset:0;background:rgba(31,37,50,.92);z-index:2000;display:none;align-items:center;justify-content:center;padding:24px}.modal.is-open{display:flex}.modal__dialog{width:min(1000px,100%);position:relative}.modal__close{position:absolute;right:-4px;top:-52px;width:44px;height:44px;background:#fff;color:var(--oa-primary-900);border:0}.modal__media{background:var(--oa-primary-900)}.modal__media img{width:100%;display:block}.modal__nav{display:flex;justify-content:space-between;margin-top:10px}.modal__nav button{background:#fff;border:0;padding:10px 16px;font-family:Cinzel,serif;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.career-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.role-list{display:grid;gap:12px}.role{border:1px solid var(--oa-border);padding:22px;background:#fff}.role__meta{font-family:Cinzel,serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--oa-muted)}.cta{background:var(--oa-gradient-deep);color:#fff;padding:clamp(40px,6vw,75px)}.cta__inner{display:flex;justify-content:space-between;gap:40px;align-items:center}.site-footer{background:var(--oa-primary-900);color:#fff;padding:70px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1.1fr 1fr 1fr;gap:30px}.footer-brand img{width:150px;background:#fff;padding:8px}.site-footer h2,.site-footer h3{font-size:22px;color:#fff}.site-footer a{color:var(--oa-secondary-200)}.site-footer p{color:var(--oa-secondary-200);font-size:16px}.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:5px}.newsletter{display:flex;gap:7px}.newsletter input{min-width:0;width:100%;padding:11px;border:0}.newsletter button{padding:11px 14px;border:0;background:var(--oa-primary);color:#fff;font-family:Cinzel,serif;font-size:10px;letter-spacing:.08em}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;color:var(--oa-secondary-300)}.footer-bottom a{font-size:14px}.cookie{position:fixed;z-index:1500;left:18px;right:18px;bottom:18px;background:#fff;border:1px solid var(--oa-border);box-shadow:var(--oa-shadow);padding:18px;display:none}.cookie.is-visible{display:block}.cookie__inner{max-width:1100px;margin:auto;display:flex;gap:20px;align-items:center}.cookie__actions{display:flex;gap:8px;flex-wrap:wrap}.backtop{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border:1px solid var(--oa-primary);background:#fff;color:var(--oa-primary);display:none;z-index:1200}.backtop.is-visible{display:block}.reveal{opacity:0;transform:translateY(18px);transition:opacity 600ms ease,transform 600ms ease}.reveal.is-visible{opacity:1;transform:none}.legal{max-width:900px}.legal h2{margin-top:45px;font-size:38px}.legal ul{padding-left:24px}


/* v3.2 — icon-only global search control */
.nav-search-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-decoration:none;
  border-radius:999px;
}
.nav-search-icon:hover { background:rgba(92,108,148,.10); }
.nav-search-icon:focus-visible { outline:3px solid currentColor; outline-offset:3px; }
.nav-search-icon .icon-search { display:block; }
@media (max-width: 900px) {
  .nav-search-icon { width:44px; height:44px; }
}


/* v3.3 — keep primary navigation labels and CTA on one line */
.nav-links > a,
.nav-links .nav-cta,
.nav-links .nav-search-icon {
  white-space: nowrap;
}

.nav-links .nav-cta {
  flex-shrink: 0;
}

.nav-links > a:not(.nav-cta):not(.nav-search-icon) {
  flex-shrink: 0;
}

@media (min-width: 901px) {
  .nav-links {
    flex-wrap: nowrap;
  }

  .nav-links > a {
    white-space: nowrap;
  }
}

/* v3.5 QA: accessible footer social icon buttons */
.social-icon {
  display: inline-flex;
  width: 2.5rem;
  height: 2.5rem;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.5rem;
  text-decoration: none;
}
.social-icon svg {
  width: 1.15rem;
  height: 1.15rem;
  display: block;
  fill: currentColor;
  stroke: none;
}
.social-icon:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.social-icon svg rect,
.social-icon svg circle {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}
.social-icon svg circle.fill {
  fill: currentColor;
  stroke: none;
}

/* v4.3 — Compact full-bleed inner-page hero */
.page-hero .container { position:relative; z-index:2; }
.page-hero__grid > div:first-child { position:relative; z-index:3; width:min(68%, 900px); padding:72px 0; }
.page-hero__grid > div:first-child .eyebrow { color:var(--oa-secondary-200); }
.page-hero__grid > div:first-child .lede,
.page-hero__grid > div:first-child .card-meta { color:var(--oa-secondary-50); }
.page-hero > .container:not(.page-hero__grid) { min-height:430px; display:flex; flex-direction:column; justify-content:center; position:relative; z-index:3; }
.page-hero > .container:not(.page-hero__grid) .eyebrow { color:var(--oa-secondary-200); }
.page-hero > .container:not(.page-hero__grid) .lede { color:var(--oa-secondary-50); max-width:760px; }
.page-hero .arch-frame {
  position:absolute;
  inset:0;
  z-index:0;
  min-height:0;
  width:100%;
  height:100%;
  border:0;
  background:var(--oa-primary-900);
}
.page-hero .arch-frame::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(7,17,38,.90) 0%,rgba(7,17,38,.68) 42%,rgba(7,17,38,.28) 72%,rgba(7,17,38,.18) 100%);
}
.page-hero .arch-frame > img {
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.page-hero .arch-frame .arch-frame-placeholder {
  position:absolute;
  inset:0;
  z-index:1;
  display:none;
  place-items:center;
  align-content:center;
  gap:10px;
  background:var(--oa-primary-900);
  color:var(--oa-secondary-200);
}
.page-hero .arch-frame.is-empty .arch-frame-placeholder { display:grid; }
.page-hero .arch-frame.is-empty::after { background:linear-gradient(90deg,rgba(7,17,38,.92),rgba(7,17,38,.72)); }
.page-hero .arch-frame.is-empty > img { display:none; }
