/* One shared responsive contract: approved colors, readable copy, touch controls and separate character stages. */
@import url('/assets/tokens.css');
@import url('/assets/specialists.css');
:root{--navy:var(--brand-navy-deep);--gold:var(--brand-gold);--gold-light:var(--brand-gold-light);--cream:var(--brand-parchment);--blue:var(--brand-signal-blue);--pink:var(--brand-pink);--purple:var(--brand-purple)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-block:1.5rem}
main :is(section,form,fieldset,article)>*{min-width:0}
:is(main,.site-header,.site-footer) button,main summary{min-width:44px;min-height:44px;touch-action:manipulation}
:is(.text-link,.scroll-cue,.catalogue-scroll-cue,.websites-scroll-cue,.start-scroll,.forgot-link,.site-footer a,.primary-nav a){display:inline-flex;align-items:center;min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
main summary{display:list-item;padding-block:.6rem}
:is(.brief-form,.account-form,.client-form,.decision-guide,.service-workbench) :is(input:not([type=checkbox]):not([type=radio]),select,textarea),#serviceShowcaseSelect{font-size:max(16px,1em);min-height:48px;max-width:100%;color-scheme:dark}
input[type=checkbox],input[type=radio]{flex-shrink:0}
.contact-dock :is(a,button){min-width:44px;min-height:44px}
.service-links a,.pathways-grid a{display:inline-flex;align-items:center;min-height:44px}
.site-footer{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))}
.account-dialog-chrome{padding-top:max(.5rem,env(safe-area-inset-top,0px))}
.account-dialog{padding-bottom:env(safe-area-inset-bottom,0px)}
/* All plain hero pages share a contained art column, including the new Forge. */
.page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero){display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.8fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-height:0;padding-block:5rem 2.5rem}
.page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero)>div{width:100%;max-width:none}
.page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero) h1{line-height:1.02;text-wrap:balance}
.page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero) .page-figure{position:relative;inset:auto;width:100%;height:clamp(400px,45vw,650px);max-width:100%;object-fit:contain;object-position:center bottom;transform:none;align-self:end}
.page-index{display:flex;flex-wrap:wrap;gap:.5rem 1.75rem;padding:1.25rem clamp(1.25rem,5.5vw,5.8rem);border-bottom:1px solid var(--line-cool);background:var(--navy)}
.page-index a{display:inline-flex;align-items:center;min-height:44px;color:var(--gold-light);font-weight:600;text-decoration:none}
.page-index a:hover{text-decoration:underline;text-underline-offset:.35em}
.page-index a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.account-access{max-width:900px}
.bk-panel p[lang="ar"]{font-family:'Noto Naskh Arabic','Noto Sans Arabic',Tahoma,sans-serif;font-size:1.2em;line-height:1.9;letter-spacing:0;margin-block:1rem;text-align:start}
@media(max-width:1000px){
  .page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero){display:flex;flex-direction:column;align-items:stretch;gap:0;padding:3.25rem clamp(1.25rem,5vw,3rem) 1.5rem}
  .page-hero:not(.catalogue-hero):not(.packages-hero):not(.websites-hero):not(.approved-start-hero) .page-figure{flex:none;align-self:center;width:min(100%,520px);height:440px;margin-top:2rem}
  .home-hero,.page-hero.catalogue-hero,.page-hero.websites-hero,.page-hero.approved-start-hero{display:flex;flex-direction:column;min-height:0;height:auto;padding:3.25rem clamp(1.25rem,5vw,3rem) 1.5rem}
  .home-hero>.hero-copy,.page-hero.catalogue-hero>.catalogue-hero-copy,.page-hero.websites-hero>.websites-hero-copy,.page-hero.approved-start-hero>.start-hero-copy{position:relative;width:100%;max-width:760px;margin:0;align-self:stretch}
  .home-hero>.hero-stage,.page-hero.catalogue-hero>.catalogue-hero-stage,.page-hero.websites-hero>.websites-stage,.page-hero.approved-start-hero>.start-hero-stage{position:relative;inset:auto;align-self:center;flex:none;width:min(100%,680px);max-width:100%;height:520px;margin-top:2rem;transform:none}
  .home-hero h1,.page-hero.catalogue-hero h1,.page-hero.websites-hero h1,.page-hero.approved-start-hero h1{line-height:1.04}
  .catalogue-hero-proof,.websites-hero-proof,.start-hero-proof{position:relative;inset:auto;margin-top:1.5rem;padding:1rem 0;background:none;gap:.6rem 1.25rem;line-height:1.55}
  .catalogue-scroll-cue,.websites-scroll-cue,.start-scroll{position:relative;inset:auto;order:3;margin-top:1rem}
  .hero-stage .hero-zeus{height:96%;bottom:0;right:0}
  .hero-stage .hero-aphrodite{height:67%;bottom:0;left:0}
  .catalogue-hero-stage .catalogue-figure-primary{height:96%;bottom:0;right:0}
  .catalogue-hero-stage .catalogue-figure-secondary{height:67%;bottom:0;left:0}
  .websites-stage img,.start-hero-stage img{height:96%;bottom:0;right:6%}
  .primary-nav.is-open{top:100%;max-height:calc(100dvh - 83px);overflow-y:auto;overscroll-behavior:contain}
  .contact-dock{bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}
}
@media(max-width:420px){
  .home-hero>.hero-stage,.page-hero.catalogue-hero>.catalogue-hero-stage,.page-hero.websites-hero>.websites-stage,.page-hero.approved-start-hero>.start-hero-stage{height:440px}
}
body.motion-off *,body.motion-off *::before,body.motion-off *::after{animation-delay:0s!important;transition-delay:0s!important}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-delay:0s!important;transition-delay:0s!important}
  .reveal{opacity:1!important;filter:none!important;transform:none!important}
}
