/* ASTRIA 068 — CLEAN SINGLE SOURCE: iPad portrait
   Approved reference: GLOBAL portrait layout.
   No stacked/legacy iPad portrait rules. Contact remains untouched.
*/
@media screen and (orientation:portrait) and (min-width:700px) and (max-width:1100px){
  html,body{overflow-x:hidden!important;}

  /* Shared content frame */
  body:not(.page-contact) main,
  body:not(.page-contact) .page-wrap,
  body:not(.page-contact) .global-detail,
  body:not(.page-contact) .cap-final,
  body:not(.page-contact) .company-shell,
  body:not(.page-contact) .home-stage{
    width:min(92vw,900px)!important;
    max-width:900px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  /* Hero: text first, then centered GLOBAL-sized 16:9 image */
  body:not(.page-contact) .home-hero,
  body:not(.page-contact) .about-media,
  body:not(.page-contact) .global-hero,
  body:not(.page-contact) .ai-hero,
  body:not(.page-contact) .cap-hero,
  body:not(.page-contact) .company-hero{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:26px!important;
    align-items:start!important;
    width:100%!important;
  }
  body:not(.page-contact) .home-copy,
  body:not(.page-contact) .global-copy,
  body:not(.page-contact) .cap-hero-copy,
  body:not(.page-contact) .company-copy,
  body:not(.page-contact) .about-media>div,
  body:not(.page-contact) .ai-hero>div{
    width:100%!important;max-width:none!important;min-width:0!important;
  }
  body:not(.page-contact) .home-visual,
  body:not(.page-contact) .cap-visual,
  body:not(.page-contact) .company-visual,
  body:not(.page-contact) .about-media>img,
  body:not(.page-contact) .global-hero>img,
  body:not(.page-contact) .ai-hero>img{
    width:80%!important;max-width:730px!important;
    aspect-ratio:16/9!important;height:auto!important;min-height:0!important;
    object-fit:cover!important;object-position:center!important;
    justify-self:center!important;margin:0 auto!important;display:block!important;
  }
  body:not(.page-contact) .home-visual img,
  body:not(.page-contact) .cap-visual img,
  body:not(.page-contact) .company-visual img{
    width:100%!important;height:100%!important;aspect-ratio:16/9!important;
    object-fit:cover!important;object-position:center!important;display:block!important;
  }

  /* HOME portrait typography — aligned to the same hierarchy as GLOBAL/ABOUT */
  body.home-029 .home-title{
    font-size:42px!important;line-height:1.08!important;font-weight:400!important;
    letter-spacing:-.015em!important;margin:0 0 12px!important;
  }
  body.home-029 .home-subtitle{
    font-size:24px!important;line-height:1.22!important;font-weight:400!important;
    letter-spacing:-.005em!important;margin:0 0 20px!important;
  }
  body.home-029 .home-copy p{
    font-size:15.5px!important;line-height:1.62!important;font-weight:400!important;
    max-width:760px!important;margin:0!important;
  }

  /* EXPERTISE hero: same portrait typography and usable text width as GLOBAL. */
  body.page-capabilities .cap-hero-copy .eyebrow{
    margin-bottom:18px!important;
  }
  body.page-capabilities .cap-hero-copy h1{
    font-size:38px!important;
    line-height:1.08!important;
    font-weight:400!important;
    letter-spacing:0!important;
    white-space:normal!important;
    margin:0 0 20px!important;
    max-width:none!important;
  }
  body.page-capabilities .cap-hero-copy p{
    font-size:17px!important;
    line-height:1.55!important;
    font-weight:400!important;
    width:100%!important;
    max-width:820px!important;
    margin:0!important;
    white-space:normal!important;
  }

  /* Four projects: GLOBAL portrait 2×2 */
  body:not(.page-contact) .home-cards,
  body:not(.page-contact) .about-cards,
  body:not(.page-contact) .global-cards,
  body:not(.page-contact) .ai-cards,
  body:not(.page-contact) .cap-services,
  body:not(.page-contact) .company-cards{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:54px!important;row-gap:38px!important;
    width:100%!important;align-items:start!important;margin-top:38px!important;
  }
  body:not(.page-contact) .home-card,
  body:not(.page-contact) .about-cards>*,
  body:not(.page-contact) .global-cards>*,
  body:not(.page-contact) .ai-cards>*,
  body:not(.page-contact) .cap-service,
  body:not(.page-contact) .company-card{
    min-width:0!important;width:100%!important;margin:0!important;padding:0!important;
    box-sizing:border-box!important;border:0!important;background:transparent!important;
  }
  body:not(.page-contact) .home-card img,
  body:not(.page-contact) .about-cards img,
  body:not(.page-contact) .global-cards img,
  body:not(.page-contact) .ai-cards img,
  body:not(.page-contact) .cap-service img,
  body:not(.page-contact) .company-card img,
  body:not(.page-contact) .project-icon{
    width:auto!important;max-width:72px!important;height:62px!important;object-fit:contain!important;
    object-position:left center!important;margin:0 0 12px!important;
  }

  /* Ask Astria: APPROVED GLOBAL PORTRAIT — full-width intro, then 2×2 questions below */
  body:not(.page-contact) .ask,
  body:not(.page-contact) .home-ai .ask,
  body:not(.page-contact) .global-ask,
  body:not(.page-contact) .capabilities-ask{
    display:block!important;
    width:100%!important;
    margin-top:46px!important;
  }
  body:not(.page-contact) .ask>div:first-child,
  body:not(.page-contact) .home-ai .ask>div:first-child,
  body:not(.page-contact) .global-ask>div:first-child,
  body:not(.page-contact) .capabilities-ask>div:first-child{
    width:100%!important;max-width:none!important;min-width:0!important;
  }
  body:not(.page-contact) .ask .answer,
  body:not(.page-contact) .home-ai .ask .answer,
  body:not(.page-contact) .global-ask .answer,
  body:not(.page-contact) .capabilities-ask .answer{
    border:0!important;background:transparent!important;box-shadow:none!important;
    padding:0!important;margin:26px 0 0!important;min-height:0!important;height:auto!important;
    width:100%!important;max-width:none!important;
  }
  body:not(.page-contact) .ask .questions,
  body:not(.page-contact) .home-ai .ask .questions,
  body:not(.page-contact) .global-ask .questions,
  body:not(.page-contact) .capabilities-ask .questions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:34px 54px!important;
    width:100%!important;
    margin-top:36px!important;
    align-content:start!important;
  }
  body:not(.page-contact) .ask .questions button,
  body:not(.page-contact) .home-ai .ask .questions button,
  body:not(.page-contact) .global-ask .questions button,
  body:not(.page-contact) .capabilities-ask .questions button{
    border:0!important;background:transparent!important;box-shadow:none!important;
    width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
    padding:0!important;margin:0!important;text-align:left!important;white-space:normal!important;
    overflow:visible!important;text-overflow:clip!important;
  }
  body:not(.page-contact) .ask .questions button::after,
  body:not(.page-contact) .home-ai .ask .questions button::after,
  body:not(.page-contact) .global-ask .questions button::after,
  body:not(.page-contact) .capabilities-ask .questions button::after{
    content:none!important;display:none!important;
  }

  /* Footer: one uninterrupted centered line */
  body:not(.page-contact) .footer,
  body:not(.page-contact) .home-unified-footer,
  body:not(.page-contact) .company-footer{
    display:flex!important;justify-content:center!important;align-items:center!important;
    width:100%!important;text-align:center!important;white-space:nowrap!important;
    gap:0!important;padding-left:18px!important;padding-right:18px!important;box-sizing:border-box!important;
  }
  body:not(.page-contact) .astria-footer-global{
    display:inline!important;width:auto!important;max-width:100%!important;white-space:nowrap!important;
    text-align:center!important;font-size:clamp(9px,1.15vw,11.5px)!important;line-height:1.2!important;
    word-spacing:0!important;letter-spacing:.01em!important;
  }
  body:not(.page-contact) .footer-line-1,
  body:not(.page-contact) .footer-line-2,
  body:not(.page-contact) .footer-mid-dot{display:inline!important;white-space:nowrap!important;}
  body:not(.page-contact) .footer-mid-dot{padding:0 2px!important;margin:0!important;}

  body:not(.page-contact) .astria-ai-launcher{
    right:max(18px,env(safe-area-inset-right))!important;
    bottom:max(18px,env(safe-area-inset-bottom))!important;
  }

  /* EXPERTISE / Capabilities: portrait copy is longer than other pages.
     Keep the approved 2×2 structure, but let copy grow vertically and
     keep a deliberate breathing gap before the footer divider. */
  body.page-capabilities .cap-services{
    grid-auto-rows:auto!important;
    row-gap:48px!important;
    column-gap:58px!important;
    align-items:start!important;
  }
  body.page-capabilities .cap-service{
    align-self:start!important;
    height:auto!important;
    min-height:0!important;
  }
  body.page-capabilities .cap-service h3{
    white-space:normal!important;
    line-height:1.24!important;
    margin-bottom:10px!important;
  }
  body.page-capabilities .cap-service p{
    max-width:none!important;
    white-space:normal!important;
    line-height:1.56!important;
  }
  body.page-capabilities .capabilities-ask{
    padding-bottom:42px!important;
    margin-bottom:0!important;
  }
  body.page-capabilities .capabilities-ask .questions{
    row-gap:32px!important;
    column-gap:58px!important;
  }
  body.page-capabilities .capabilities-ask .questions button{
    line-height:1.42!important;
  }
}

/* ASTRIA 068 — Sports Hospitality iPad portrait title
   Keep desktop/landscape unchanged; portrait title is one clean line. */
@media screen and (orientation:portrait) and (min-width:700px) and (max-width:1100px){
  body.page-sports .ai-hero h1{
    font-size:clamp(32px,4.5vw,38px)!important;
    line-height:1.08!important;
    font-weight:400!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
    max-width:none!important;
    margin-bottom:18px!important;
  }
  body.page-sports .ai-hero h1 br{display:none!important;}
}
