/* AICREA V15.1 — production fixes: pure black nav, no gray UI, safe text flow */
:root{
  --aicrea-aqua:#009b91;
  --aicrea-deep:#00474d;
  --aicrea-black:#000000;
  --aicrea-cream:#f6f5ef;
  --aicrea-paper:#fbfbf7;
  --aicrea-line:rgba(0,155,145,.28);
  --aicrea-white:#ffffff;
}
*{box-sizing:border-box;min-width:0}
html,body{overflow-x:hidden}
img,video,svg{max-width:100%;display:block}
p,h1,h2,h3,h4,a,span,b,small,label{overflow-wrap:normal;word-break:normal;hyphens:none}

/* NAV: pure black only. No gray/glass tint. */
.nav.nav-premium{
  background:#000!important;
  border:1px solid #009b91!important;
  box-shadow:0 14px 38px rgba(0,0,0,.34)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nav.nav-premium .navin{background:#000!important;border-radius:inherit}
.nav.nav-premium .links,.nav.nav-premium .links a,.nav.nav-premium .menu{color:#fff!important}
.nav.nav-premium .links a:not(.pill):hover{color:#009b91!important}
.nav.nav-premium .pill{background:#000!important;border:1px solid #009b91!important;color:#fff!important}
.nav.nav-premium .pill:hover{background:#009b91!important;color:#000!important}
.nav.nav-premium .brand-full{display:block;object-fit:contain}

/* Kill decorative rules that looked like rendering artifacts on Hostinger/Safari */
.image-wash-intro:after,.services-system:after,.blog-listing:after,
.home-ecosystem-v14:after,.presence-map.dark:after,
.home-team-v14:before{display:none!important}
section{border-top-color:rgba(0,155,145,.18)!important}

/* Use prepared images with Aicrea color already baked into the pixels. */
.image-wash-intro .creative-ambient:after,
.culture-ambient-v14:after,
.page-services-v14 .services-hero:after,
.page-projects-v14 .benoist-project-media:after,
.page-blog-v14 .blog-visual-band figure:after,
.page-start-v14 .start-hero-media:after{display:none!important}
.image-wash-intro .creative-ambient,
.culture-ambient-v14,
.page-start-v14 .start-hero-media,
.page-services-v14 .benoist-service-media{clip-path:none!important}

/* Home intro: stable 2-column editorial block, no overlap */
.image-wash-intro .section-head{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)!important;
  gap:38px!important;
  min-height:0!important;
  align-items:center!important;
  padding:72px 0!important;
}
.image-wash-intro .section-head>.eyebrow{grid-column:1;padding:0!important;align-self:start}
.image-wash-intro .section-head>div:nth-child(2){grid-column:1;padding:34px 0 0!important}
.image-wash-intro .creative-ambient{
  grid-column:2!important;grid-row:1 / span 2!important;
  position:relative!important;right:auto!important;top:auto!important;
  width:100%!important;height:430px!important;margin:0!important;
  border-radius:24px!important;overflow:hidden!important;
  border:1px solid rgba(0,155,145,.28)!important;
}
.image-wash-intro .creative-ambient img{width:100%;height:100%;object-fit:cover!important;filter:none!important}
.image-wash-intro .bigcopy,.image-wash-intro .lead{max-width:100%!important}

/* Safe typography: no text may spill out of cards/columns */
.service,.service-row,.service-pillar,.service-editorial,.step,.arce article,
.team-card,.quote,.home-insight-card,.project-auto-card,.blog-card,
.contact-float-card,.home-contact-card{overflow:hidden}
.service h3,.service-row h3,.service-pillar h2,.service-editorial h3,.step h3,
.team-card-copy h3,.home-insight-card h3,.blog-card h3{max-width:100%}

/* Team: thinner, readable band. */
.team-card{min-width:420px!important;width:420px!important;height:220px!important;border-color:rgba(0,155,145,.34)!important}
.team-card-photo{width:37%!important;flex:0 0 37%!important}
.team-card-copy{padding:18px!important;overflow:hidden!important}
.team-card-copy h3{font-size:25px!important;line-height:1!important;margin:3px 0 7px!important}
.team-card-copy b{display:block;font-size:10px!important;line-height:1.35!important}
.team-card-copy p{font-size:11.5px!important;line-height:1.42!important;margin-top:9px!important}

/* Contact on home: exact two-column structure; portrait is its own visual column */
.home-contact-card{
  grid-template-columns:minmax(280px,.78fr) minmax(360px,1fr) minmax(280px,.8fr)!important;
  background:#00474d!important;
  border:1px solid #009b91!important;
}
.home-contact-copy,.home-contact-form{min-width:0}
.home-contact-form .form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.home-contact-form input,.home-contact-form textarea{width:100%!important;max-width:100%!important}
.home-contact-mau{background:#00474d!important;min-height:390px!important;overflow:hidden!important}
.home-contact-mau img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;filter:none!important}
.home-contact-mau:after{display:none!important}
.home-contact-mau figcaption{left:20px!important;bottom:18px!important;background:#000!important;padding:8px 10px;border-radius:8px;border:1px solid #009b91}

/* Contact page */
.page-contact-v14 .contact-float-card{background:#00474d!important;border:1px solid #009b91!important}
.page-contact-v14 .contact-mau-pane{background:#00474d!important;overflow:hidden!important}
.page-contact-v14 .contact-mau-pane img{filter:none!important;object-fit:cover!important;object-position:center!important}
.page-contact-v14 .contact-mau-overlay{display:none!important}

/* Keep dark sections black/deep teal only; no gray fills. */
section.dark,.home-team-v14,.team-band-section,.footer,.page-contact-v14 .contact-hero-v13,
.page-projects-v14 .projects-hero,.page-blog-v14 .blog-visual-band,
.page-start-v14 main>section:nth-child(2){background:#000!important}
.home-ecosystem-v14,.ecosystem,.presence-map.dark{background:#00474d!important}

/* Tablet */
@media(max-width:1000px){
  .nav.nav-premium .links.open{background:#000!important;border:1px solid #009b91!important}
  .image-wash-intro .section-head{grid-template-columns:1fr!important;padding:58px 0!important}
  .image-wash-intro .section-head>.eyebrow,.image-wash-intro .section-head>div:nth-child(2){grid-column:1!important;padding:0!important}
  .image-wash-intro .section-head>div:nth-child(2){padding-top:20px!important}
  .image-wash-intro .creative-ambient{grid-column:1!important;grid-row:auto!important;height:360px!important;margin-top:12px!important}
  .home-contact-card{grid-template-columns:1fr 1fr!important}
  .home-contact-mau{grid-column:1/-1!important;height:420px!important}
  .team-card{min-width:380px!important;width:380px!important}
}

/* Mobile: everything visible, never clipped or dependent on hover */
@media(max-width:650px){
  .wrap{width:calc(100% - 28px)!important}
  .nav.nav-premium{background:#000!important}
  .nav.nav-premium .brand-full{width:138px!important}
  .hero-copy-v13 h1{font-size:clamp(48px,14vw,76px)!important;line-height:.92!important;letter-spacing:-.055em!important}
  .hero-copy-v13 .hero-secondary{font-size:clamp(22px,6.8vw,34px)!important;line-height:1.08!important}
  .image-wash-intro .bigcopy{font-size:clamp(38px,11vw,58px)!important;line-height:1!important}
  .image-wash-intro .lead{font-size:16px!important}
  .image-wash-intro .creative-ambient{height:260px!important;border-radius:18px!important}
  .team-card{min-width:300px!important;width:300px!important;height:195px!important}
  .team-card-photo{width:34%!important;flex-basis:34%!important}
  .team-card-copy{padding:13px!important}.team-card-copy h3{font-size:21px!important}.team-card-copy p{font-size:10px!important}
  .home-contact-card{grid-template-columns:1fr!important;border-radius:18px!important}
  .home-contact-copy{padding:28px 22px!important}
  .home-contact-form{padding:0 22px 24px!important}
  .home-contact-form .form{grid-template-columns:1fr!important}
  .home-contact-mau{grid-column:auto!important;height:360px!important;min-height:0!important}
  .home-contact-mau figcaption{font-size:11px!important}
  .page-contact-v14 .contact-mau-pane{min-height:420px!important}
  .page-services-v14 .service-pillar,.page-services-v14 .service-editorial{overflow:visible!important}
}
