/* ========================================================================== */
/* ALIFY v1.2 — Visual Cleanup / Editorial Restraint                          */
/* Removes stacked decorative layers from v1.0/v1.1 and establishes one      */
/* coherent header, inner-page masthead and footer language.                  */
/* ========================================================================== */

:root{
  --p12-line:color-mix(in srgb,var(--text) 10%,transparent);
  --p12-line-strong:color-mix(in srgb,var(--text) 18%,transparent);
  --p12-surface:color-mix(in srgb,var(--panel) 82%,transparent);
  --p12-ease:cubic-bezier(.22,.61,.36,1);
}

/* Kill the stacked visual metadata that made the interface feel duplicated. */
body::after,.p11-section-label{display:none!important}
.site-header .brand::after,.desktop-nav li::before,.burger::after,.pushmenu::before,.pushmenu::after,
.loader::after,.loader__frame::before,.cookie-bar::before,.site-footer::before,.about-story::before,.price-card--featured::before,
.project-card::before{content:none!important;display:none!important}
.footer-watermark{display:none!important}

/* Inner hero watermarks existed in both phase10 (::after) and phase11 (::before). */
.hub-hero::before,.hub-hero::after,
.inner-hero::before,.inner-hero::after,
.single-hero::before,.single-hero::after,
.case-hero::before,.case-hero::after,
.post-hero::before,.post-hero::after,
.legal-hero::before,.legal-hero::after,
.industry-hero::before,.industry-hero::after,
.quote-hero::before,.quote-hero::after{content:none!important;display:none!important}

/* Global rhythm: fewer simultaneous effects, stronger whitespace. */
.section{overflow:clip;padding-block:clamp(5.5rem,9vw,8.5rem)}
.section__head{margin-bottom:clamp(3.5rem,6vw,5.75rem)}
.section__head-side{padding-top:.45rem}
.section__head-side p{max-width:34ch}

/* -------------------------------------------------------------------------- */
/* Header — quiet, architectural, useful.                                     */
/* -------------------------------------------------------------------------- */
.site-header{
  height:var(--header-h);padding-top:0;background:transparent;border:0;backdrop-filter:none;
  transition:transform .45s var(--p12-ease),background .35s ease,border-color .35s ease;
}
.site-header__inner{
  min-height:var(--header-h);display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(180px,1fr);
  align-items:center;padding-inline:0;background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
.site-header__inner::before{content:none!important;display:none!important}
.site-header::after{
  content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;height:1px;
  background:linear-gradient(90deg,var(--p12-line-strong),var(--p12-line),transparent 86%);
  opacity:.72;pointer-events:none;
}
.site-header.is-scrolled{
  background:var(--alify-header-bg-rgba,rgba(13,13,13,.82))!important;
  backdrop-filter:blur(var(--alify-header-blur,16px))!important;border:0!important;
}
.site-header.is-scrolled::after{left:0;right:0;background:var(--p12-line)}
.site-header .brand{font-size:1.32rem;letter-spacing:-.04em;justify-self:start}
.brand__dot{width:.42em;height:.42em;box-shadow:0 0 16px color-mix(in srgb,var(--green) 28%,transparent)}
.desktop-nav{justify-self:center}
.desktop-nav__list,.desktop-nav ul{gap:clamp(1.35rem,2.4vw,2.6rem)}
.desktop-nav a{
  font:500 .68rem/1 var(--ff-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);
  padding:.7rem 0;transform:none!important;
}
.desktop-nav a::after{bottom:.25rem;height:1px;box-shadow:none;background:var(--green)}
.desktop-nav a:hover,.desktop-nav .current-menu-item>a,.desktop-nav .current_page_item>a{color:var(--off)}
.site-header__actions{justify-self:end;display:flex;align-items:center;gap:.7rem}
.site-header__actions .btn{min-height:40px;padding:.8rem 1rem;font-size:.65rem;letter-spacing:.13em}
.burger{width:44px;height:44px;border:1px solid var(--p12-line-strong);background:rgba(247,247,245,.018);border-radius:50%}
.burger span{width:17px}

/* Mobile / secondary menu: one hierarchy, no nested decorative frames. */
.pushmenu{
  padding:clamp(5.8rem,9vw,7rem) clamp(1.5rem,5vw,3.4rem) 2.2rem;
  background:radial-gradient(52vw 40vw at 100% 0%,rgba(11,115,95,.15),transparent 65%),linear-gradient(155deg,#121522,#090a0d 68%);
  border-left:1px solid var(--p12-line-strong);
}
.pushmenu__list{padding-top:.5rem}
.pushmenu__list>li{grid-template-columns:36px 1fr;border-bottom:1px solid var(--p12-line)}
.pushmenu__list>li::after{height:1px;box-shadow:none}
.pushmenu__list>li>a{font-size:clamp(2.1rem,6vw,4.3rem);padding:.32em 0}
.pushmenu__contact{margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--p12-line)}
.pushmenu__contact::before{content:none!important}
.pushmenu__close{top:1.2rem;right:1.2rem;background:transparent;border:1px solid var(--p12-line-strong)}

/* -------------------------------------------------------------------------- */
/* Inner-page mastheads — one composition, no giant background copy.          */
/* -------------------------------------------------------------------------- */
.hub-hero,.inner-hero,.single-hero,.case-hero,.post-hero,.legal-hero,.industry-hero,.quote-hero{
  min-height:auto;display:block;align-items:initial;
  padding-top:calc(var(--header-h) + clamp(4.25rem,7vw,6.5rem));
  padding-bottom:clamp(4.5rem,7vw,6.5rem);
  background:
    radial-gradient(48vw 35vw at 88% 20%,color-mix(in srgb,var(--navy) 20%,transparent),transparent 70%),
    radial-gradient(34vw 28vw at 6% 100%,color-mix(in srgb,var(--teal) 7%,transparent),transparent 72%),
    linear-gradient(180deg,#0d0f15 0%,#0a0b0e 100%);
  border-bottom:1px solid var(--p12-line);
}
.hub-hero>.container,.inner-hero>.container,.single-hero>.container,.case-hero>.container,.post-hero>.container,.legal-hero>.container,.industry-hero>.container,.quote-hero>.container{
  position:relative;z-index:2;
}
.hub-hero .crumbs,.inner-hero .crumbs,.single-hero .crumbs,.case-hero .crumbs,.post-hero .crumbs,.legal-hero .crumbs,.industry-hero .crumbs,.quote-hero .crumbs,
.crumbs{
  margin:0 0 clamp(2.6rem,5vw,4.5rem);padding:0;border:0;font-size:.68rem;
}
.crumbs::before{content:none!important}
.hub-hero .section__head,.inner-hero .section__head,.quote-hero .section__head{margin-bottom:0}
.hub-hero .section__head-main,.inner-hero .section__head-main,.quote-hero .section__head-main{grid-column:1/9}
.hub-hero .section__head-side,.inner-hero .section__head-side,.quote-hero .section__head-side{
  grid-column:10/13;border-left:1px solid var(--p12-line-strong);padding-left:clamp(1.2rem,2vw,2rem);align-self:end;
}
.hub-hero h1,.inner-hero h1,.single-hero h1,.case-hero h1,.post-hero h1,.legal-hero h1,.industry-hero h1,.quote-hero h1{
  font-size:clamp(3.2rem,6.5vw,6.8rem);line-height:.94;letter-spacing:-.052em;max-width:11.5ch;margin-bottom:1.5rem;
}
.hub-hero .lead,.inner-hero .lead,.single-hero .lead,.case-hero .lead,.legal-hero .lead,.industry-hero .lead,.quote-hero .lead{max-width:58ch}

/* Singles retain asymmetry only when media actually exists. */
.single-hero__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,5vw,5rem);align-items:end}
.single-hero__grid>div:first-child,.single-hero__copy{grid-column:1/8}
.single-hero__visual{grid-column:9/13;max-width:420px;justify-self:end}
.single-hero__visual .media-frame{transform:none!important;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.single-hero__placeholder{min-height:240px;border:1px solid var(--p12-line);background:linear-gradient(145deg,var(--panel),#0b0d11)}
.case-hero__title{max-width:900px}
.case-hero .media-frame{margin-top:clamp(2.75rem,5vw,4.5rem);box-shadow:0 32px 90px rgba(0,0,0,.28)}
.post-hero__copy{max-width:980px}
.post-hero__fig{margin-top:clamp(2.75rem,5vw,4.5rem)}

/* Remove secondary decorative text artifacts that repeat real content. */
.project-card::before,.price-card--featured::before,.about-story::before{content:none!important}

/* Cards: less "every card is special". Keep hover response but remove corner chrome. */
.sv-card::after,.industry-card::after,.price-card::after,.value-card::after,.resource-card::after,.contact-card::after,.form-panel::after{content:none!important}
.sv-card,.industry-card,.price-card,.value-card,.aside-card,.related-card,.resource-card,.platform-card,.result-card,.video-card,.contact-card,.form-panel,.cap{
  background:linear-gradient(145deg,color-mix(in srgb,var(--alify-card-bg,var(--panel)) 96%,var(--navy) 4%),#0b0d11);
  border-color:var(--p12-line);box-shadow:none;
}
.sv-card:hover,.industry-card:hover,.resource-card:hover,.price-card:hover{border-color:color-mix(in srgb,var(--teal-2) 36%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.16)}
.price-card:hover{transform:translateY(-4px)}

/* Forms: cleaner panel hierarchy. */
.form-panel{box-shadow:0 24px 75px rgba(0,0,0,.18);border-color:var(--p12-line-strong)}
.form-panel::before{height:1px;opacity:.8}
.choice:hover{transform:none}

/* -------------------------------------------------------------------------- */
/* Footer — remove giant watermark and end-card theatrics.                    */
/* -------------------------------------------------------------------------- */
.site-footer{
  position:relative;overflow:hidden;padding-top:var(--alify-footer-top,clamp(5rem,9vw,8rem));padding-bottom:var(--alify-footer-bottom,2rem);
  background:radial-gradient(48vw 36vw at 10% 0%,color-mix(in srgb,var(--navy) 18%,transparent),transparent 72%),var(--alify-footer-bg,#0a0b0e)!important;
  color:var(--alify-footer-text,var(--text));border-top:1px solid var(--p12-line);
}
.footer-main{
  display:grid;grid-template-columns:minmax(0,5fr) minmax(140px,1.6fr) minmax(160px,2fr) minmax(220px,2.4fr);
  gap:clamp(2rem,5vw,5.5rem);align-items:start;padding-bottom:clamp(4rem,7vw,6.5rem);
}
.footer-brand{min-width:0}
.footer-brand>.brand{font-size:clamp(2.2rem,4vw,4rem);margin-bottom:1.4rem}
.footer-brand__copy{max-width:38ch;color:var(--muted);font-size:.98rem;line-height:1.75}
.footer-social{display:flex;flex-wrap:wrap;gap:.65rem 1.2rem;margin-top:2rem}
.footer-social a{font:500 .64rem/1 var(--ff-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-2);padding-bottom:.35rem;border-bottom:1px solid transparent}
.footer-social a:hover{color:var(--off);border-bottom-color:var(--green)}
.footer-head{font:500 .64rem/1.2 var(--ff-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--alify-footer-heading,var(--sage-2));margin-bottom:1.5rem}
.footer-navcol{border-left:0!important;padding-left:0!important}
.footer-navcol ul{margin:0;padding:0;list-style:none}
.footer-navcol li{margin:.72rem 0}
.footer-navcol a,.footer-contact a{color:var(--muted);font-size:.92rem;line-height:1.5;padding-left:0!important}
.footer-navcol a::before,.footer-contact a::before{content:none!important;display:none!important}
.footer-navcol a:hover,.footer-contact a:hover{color:var(--off)}
.footer-contact{border-left:0!important;padding-left:0!important}
.footer-email{display:inline-block;font-family:var(--ff-display);font-size:clamp(1.15rem,1.8vw,1.55rem)!important;letter-spacing:-.02em;color:var(--off)!important;overflow-wrap:anywhere}
.footer-contact p{margin-top:1.25rem;color:var(--muted);font-size:.88rem;line-height:1.7;max-width:30ch}
.footer-newsletter{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:clamp(2rem,6vw,7rem);align-items:end;
  padding-block:clamp(2.5rem,5vw,4.5rem);border-block:1px solid var(--p12-line);
}
.footer-newsletter .eyebrow{margin-bottom:.9rem}
.footer-newsletter h2{font-size:clamp(1.65rem,3vw,3rem);line-height:1.05;max-width:18ch;margin:0}
.footer-newsletter__form .nl,.footer-newsletter__form form{margin:0;width:100%}
.footer-bottom{display:flex;align-items:center;gap:1.25rem 2rem;justify-content:space-between;padding-top:1.5rem;border-top:0;color:var(--faint);font-size:.76rem}
.footer-bottom nav{margin-left:auto}
.footer-bottom nav ul{display:flex;flex-wrap:wrap;gap:.7rem 1.3rem;list-style:none;margin:0;padding:0}
.footer-bottom a,.footer-cookie-link{font:inherit;color:var(--muted);background:none;border:0;padding:0}
.footer-bottom a:hover,.footer-cookie-link:hover{color:var(--off)}

/* Home keeps one large signature word; inner pages do not. Tone it down. */
.home-hero.ui-hero-stage::after{opacity:.62;-webkit-text-stroke-color:rgba(247,247,245,.035)}
.home-hero__chrome::before{opacity:.58}

/* Responsive cleanup. */
@media(max-width:1199px){
  .footer-main{grid-template-columns:minmax(0,4fr) repeat(3,minmax(140px,1fr));gap:2.25rem}
}
@media(max-width:1023px){
  .site-header__inner{grid-template-columns:1fr auto}.desktop-nav{display:none}.site-header__actions{grid-column:2}
  .hub-hero .section__head-side,.inner-hero .section__head-side,.quote-hero .section__head-side{display:none}
  .hub-hero .section__head-main,.inner-hero .section__head-main,.quote-hero .section__head-main{grid-column:1/-1}
  .single-hero__grid{grid-template-columns:repeat(8,minmax(0,1fr))}.single-hero__grid>div:first-child,.single-hero__copy{grid-column:1/6}.single-hero__visual{grid-column:6/9}
  .footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1;max-width:620px}.footer-newsletter{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
  .site-header::after{left:0;right:0}.site-header__inner{padding-inline:0}
  .site-header__actions .header-cta{display:none}
  .hub-hero,.inner-hero,.single-hero,.case-hero,.post-hero,.legal-hero,.industry-hero,.quote-hero{padding-top:calc(var(--header-h) + 3.4rem);padding-bottom:3.75rem}
  .hub-hero h1,.inner-hero h1,.single-hero h1,.case-hero h1,.post-hero h1,.legal-hero h1,.industry-hero h1,.quote-hero h1{font-size:clamp(2.9rem,13vw,4.7rem);max-width:11ch}
  .single-hero__grid{display:block}.single-hero__visual{max-width:360px;margin-top:2.5rem}
  .footer-main{display:grid;grid-template-columns:1fr 1fr;gap:2.75rem 1.5rem}.footer-brand,.footer-contact{grid-column:1/-1}.footer-contact{padding-top:.5rem}
  .footer-newsletter{display:block}.footer-newsletter__form{margin-top:2rem}.footer-bottom{display:block}.footer-bottom nav{margin:1rem 0}.footer-bottom nav ul{display:block}.footer-bottom nav li{margin:.6rem 0}
}
@media(max-width:420px){
  .footer-main{display:block}.footer-main>div{margin-bottom:2.4rem}.footer-brand>.brand{font-size:2.5rem}
}

@media(prefers-reduced-motion:reduce){
  .home-hero__chrome::before{animation:none!important}
}
