/* Just As It Was v10.0 — reference parity for Experience, Reviews, Locations and Contact.
   These routes were the last major desktop pages still using the old fixed 1220px
   canvas on the owner's 4K display.  The approved Sites reference expands to an
   editorial canvas of roughly 60vw, with correspondingly larger type, whitespace,
   cards and form controls. */

/* Brand lockup: AS is the warm clay accent on both paper and image headers. */
body.jaiw-reference-mode .wordmark-copy strong em,
body.jaiw-reference-mode .header-over-hero .wordmark-copy strong em{
  color:var(--clay)!important;
  -webkit-text-fill-color:var(--clay)!important;
}

/* -------------------------------------------------------------------------
   Contact page — deterministic reference architecture.  The enquiry plugin is
   injected into .reference-enquiry-form-slot by reference-render.php.
   ------------------------------------------------------------------------- */
body.jaiw-page-contact .contact-page-hero{padding-bottom:clamp(78px,5vw,112px)}
body.jaiw-page-contact .contact-page-hero h1{text-transform:none;max-width:760px}
body.jaiw-page-contact .contact-enquiry{background:var(--ivory);padding:96px 0 118px;border-bottom:1px solid var(--line)}
body.jaiw-page-contact .contact-enquiry .contact-layout{align-items:start}
body.jaiw-page-contact .contact-enquiry aside h2{font-size:44px;line-height:.98;max-width:500px}
body.jaiw-page-contact .contact-enquiry aside>p:not(.eyebrow){font-size:11px;line-height:1.58;max-width:475px;margin-top:22px}
body.jaiw-page-contact .contact-enquiry dl{margin-top:34px}
body.jaiw-page-contact .contact-enquiry dl>div{grid-template-columns:118px 1fr;padding:13px 0;font-size:9px;line-height:1.45}
body.jaiw-page-contact .contact-enquiry dt{font-weight:600}
body.jaiw-page-contact .contact-enquiry dd{margin:0}
body.jaiw-page-contact .contact-enquiry .jaiw-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form input,
body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form select{min-height:44px}
body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form textarea{min-height:122px}
body.jaiw-page-contact .contact-enquiry .jaiw-submit{min-height:44px}

@media (min-width:2200px){
  /* ---------------------------------------------------------------------
     Shared 4K canvas, header, small UI and CTA.
     --------------------------------------------------------------------- */
  body.jaiw-reference-experience,
  body.jaiw-reference-reviews,
  body.jaiw-reference-locations,
  body.jaiw-page-contact{
    font-size:clamp(14px,.42vw,18px)!important;
  }

  body.jaiw-reference-experience .shell,
  body.jaiw-reference-reviews .shell,
  body.jaiw-reference-locations .shell,
  body.jaiw-page-contact .shell{
    width:60vw!important;
    max-width:none!important;
    margin-inline:auto!important;
  }

  body.jaiw-reference-experience .site-header,
  body.jaiw-reference-reviews .site-header,
  body.jaiw-reference-locations .site-header,
  body.jaiw-page-contact .site-header{
    height:clamp(82px,3.15vw,120px)!important;
    grid-template-columns:minmax(430px,1fr) auto minmax(310px,1fr)!important;
    gap:clamp(30px,1.5vw,58px)!important;
    padding:0 clamp(64px,3.15vw,120px)!important;
  }
  body.jaiw-reference-experience .wordmark,
  body.jaiw-reference-reviews .wordmark,
  body.jaiw-reference-locations .wordmark,
  body.jaiw-page-contact .wordmark{min-width:430px!important;gap:clamp(14px,.65vw,25px)!important}
  body.jaiw-reference-experience .wordmark-monogram,
  body.jaiw-reference-reviews .wordmark-monogram,
  body.jaiw-reference-locations .wordmark-monogram,
  body.jaiw-page-contact .wordmark-monogram{
    width:clamp(44px,1.85vw,70px)!important;height:clamp(44px,1.85vw,70px)!important;font-size:clamp(19px,.82vw,31px)!important;
  }
  body.jaiw-reference-experience .wordmark-copy strong,
  body.jaiw-reference-reviews .wordmark-copy strong,
  body.jaiw-reference-locations .wordmark-copy strong,
  body.jaiw-page-contact .wordmark-copy strong{font-size:clamp(18px,.82vw,31px)!important}
  body.jaiw-reference-experience .wordmark-copy small,
  body.jaiw-reference-reviews .wordmark-copy small,
  body.jaiw-reference-locations .wordmark-copy small,
  body.jaiw-page-contact .wordmark-copy small{margin-top:clamp(5px,.25vw,10px)!important;font-size:clamp(7px,.31vw,11.5px)!important}
  body.jaiw-reference-experience .desktop-nav,
  body.jaiw-reference-reviews .desktop-nav,
  body.jaiw-reference-locations .desktop-nav,
  body.jaiw-page-contact .desktop-nav{gap:clamp(30px,1.38vw,54px)!important}
  body.jaiw-reference-experience .desktop-nav a,
  body.jaiw-reference-reviews .desktop-nav a,
  body.jaiw-reference-locations .desktop-nav a,
  body.jaiw-page-contact .desktop-nav a{font-size:clamp(11px,.48vw,18px)!important;letter-spacing:.07em!important}
  body.jaiw-reference-experience .header-cta,
  body.jaiw-reference-reviews .header-cta,
  body.jaiw-reference-locations .header-cta,
  body.jaiw-page-contact .header-cta{
    min-width:clamp(155px,7.1vw,272px)!important;min-height:clamp(46px,2.25vw,86px)!important;padding:0 clamp(17px,.8vw,30px)!important;font-size:clamp(10px,.43vw,16px)!important;
  }
  body.jaiw-reference-experience .eyebrow,
  body.jaiw-reference-reviews .eyebrow,
  body.jaiw-reference-locations .eyebrow,
  body.jaiw-page-contact .eyebrow{font-size:clamp(10px,.42vw,16px)!important}
  body.jaiw-reference-experience .button,
  body.jaiw-reference-reviews .button,
  body.jaiw-reference-locations .button,
  body.jaiw-page-contact .button{
    min-height:clamp(48px,2.2vw,84px)!important;padding-inline:clamp(18px,.8vw,31px)!important;font-size:clamp(10px,.42vw,16px)!important;gap:clamp(22px,1vw,38px)!important;
  }
  body.jaiw-reference-experience .text-link,
  body.jaiw-reference-reviews .text-link,
  body.jaiw-reference-locations .text-link,
  body.jaiw-page-contact .text-link{font-size:clamp(9px,.39vw,15px)!important;gap:clamp(7px,.35vw,13px)!important}

  /* Shared non-image hero: Reviews, Locations, Contact. */
  body.jaiw-reference-reviews .page-hero,
  body.jaiw-reference-locations .page-hero,
  body.jaiw-page-contact .page-hero{padding:clamp(165px,7vw,269px) 0 clamp(122px,5.3vw,204px)!important}
  body.jaiw-reference-reviews .page-hero>.shell,
  body.jaiw-reference-locations .page-hero>.shell,
  body.jaiw-page-contact .page-hero>.shell{grid-template-columns:minmax(0,1.22fr) minmax(0,.62fr)!important;column-gap:clamp(145px,6.2vw,238px)!important}
  body.jaiw-reference-reviews .page-hero .eyebrow,
  body.jaiw-reference-locations .page-hero .eyebrow,
  body.jaiw-page-contact .page-hero .eyebrow{margin-bottom:clamp(42px,1.7vw,65px)!important}
  body.jaiw-reference-reviews .page-hero h1,
  body.jaiw-reference-locations .page-hero h1,
  body.jaiw-page-contact .page-hero h1{font-size:clamp(78px,3.05vw,117px)!important;line-height:.88!important;max-width:41vw!important}
  body.jaiw-reference-reviews .page-hero>.shell>p:last-of-type,
  body.jaiw-reference-locations .page-hero>.shell>p:last-of-type,
  body.jaiw-page-contact .page-hero>.shell>p:last-of-type{font-size:clamp(14px,.6vw,23px)!important;line-height:1.5!important;max-width:22vw!important}

  /* ---------------------------------------------------------------------
     EXPERIENCE
     --------------------------------------------------------------------- */
  body.jaiw-reference-experience .page-hero-image{height:clamp(860px,32.5vw,1250px)!important}
  body.jaiw-reference-experience .page-hero-image>.shell{grid-template-columns:minmax(0,1.08fr) minmax(0,.72fr)!important;column-gap:clamp(120px,5.7vw,220px)!important;padding-bottom:clamp(85px,3.65vw,140px)!important}
  body.jaiw-reference-experience .page-hero-image .eyebrow{margin-bottom:clamp(180px,5.8vw,223px)!important}
  body.jaiw-reference-experience .page-hero-image h1{font-size:clamp(78px,3vw,115px)!important;line-height:.88!important;max-width:36vw!important}
  body.jaiw-reference-experience .page-hero-image>.shell>p:last-child{font-size:clamp(14px,.62vw,24px)!important;line-height:1.5!important;max-width:21vw!important}

  body.jaiw-reference-experience .process-section{padding-top:clamp(155px,6.7vw,257px)!important;padding-bottom:clamp(165px,7.1vw,273px)!important}
  body.jaiw-reference-experience .process-section .section-heading{grid-template-columns:minmax(0,1.08fr) minmax(0,.56fr)!important;gap:clamp(130px,5.8vw,223px)!important;margin-bottom:clamp(55px,2.4vw,92px)!important}
  body.jaiw-reference-experience .process-section .section-heading h2{font-size:clamp(58px,2.35vw,90px)!important;line-height:.98!important}
  body.jaiw-reference-experience .process-section .section-heading>p{font-size:clamp(13px,.56vw,21px)!important;line-height:1.52!important;max-width:20vw!important}
  body.jaiw-reference-experience .process-list article{grid-template-columns:clamp(62px,3vw,115px) minmax(0,15vw) 1fr!important;gap:clamp(45px,2vw,77px)!important;padding:clamp(58px,2.55vw,98px) 0!important}
  body.jaiw-reference-experience .process-list article>span{font-size:clamp(10px,.4vw,15px)!important}
  body.jaiw-reference-experience .process-list h2{font-size:clamp(44px,1.8vw,69px)!important;line-height:.98!important}
  body.jaiw-reference-experience .process-list p{font-size:clamp(13px,.55vw,21px)!important;line-height:1.55!important;max-width:27vw!important;margin-top:clamp(5px,.22vw,9px)!important}

  body.jaiw-reference-experience .reliability{padding:clamp(165px,7.2vw,277px) 0!important}
  body.jaiw-reference-experience .reliability>.shell{grid-template-columns:minmax(0,1fr) minmax(0,.78fr)!important;gap:clamp(165px,7.3vw,280px)!important}
  body.jaiw-reference-experience .reliability h2{font-size:clamp(62px,2.7vw,104px)!important;line-height:.97!important;max-width:32vw!important}
  body.jaiw-reference-experience .reliability p{font-size:clamp(13px,.55vw,21px)!important;line-height:1.55!important;max-width:29vw!important}
  body.jaiw-reference-experience .reliability li{padding:clamp(22px,.95vw,36px) 0!important;font-size:clamp(12px,.5vw,19px)!important}
  body.jaiw-reference-experience .experience-quote{width:45vw!important;max-width:none!important;padding-top:clamp(170px,7.6vw,292px)!important;padding-bottom:clamp(180px,8vw,307px)!important}
  body.jaiw-reference-experience .experience-quote blockquote{font-size:clamp(62px,2.65vw,102px)!important;line-height:1.02!important}
  body.jaiw-reference-experience .experience-quote p{font-size:clamp(10px,.42vw,16px)!important;margin-top:clamp(24px,1.05vw,40px)!important}

  /* ---------------------------------------------------------------------
     REVIEWS
     --------------------------------------------------------------------- */
  body.jaiw-reference-reviews .review-themes{padding-top:clamp(85px,3.7vw,142px)!important;padding-bottom:clamp(76px,3.3vw,127px)!important}
  body.jaiw-reference-reviews .review-themes>div{margin-top:clamp(22px,.9vw,35px)!important}
  body.jaiw-reference-reviews .review-themes span{padding:0 clamp(22px,1vw,38px)!important;font-size:clamp(10px,.43vw,16px)!important;line-height:1.5!important}
  body.jaiw-reference-reviews .reviews-list{width:46vw!important;max-width:none!important;padding-top:clamp(70px,3.1vw,119px)!important;padding-bottom:clamp(160px,7vw,269px)!important}
  body.jaiw-reference-reviews .reviews-list article{grid-template-columns:clamp(70px,3.4vw,130px) 1fr!important;gap:clamp(34px,1.45vw,56px)!important;padding:clamp(155px,6.7vw,257px) 0!important}
  body.jaiw-reference-reviews .review-index{font-size:clamp(28px,1.05vw,40px)!important;padding-top:clamp(5px,.2vw,8px)!important}
  body.jaiw-reference-reviews .review-theme{font-size:clamp(10px,.4vw,15px)!important;margin-bottom:clamp(18px,.8vw,31px)!important}
  body.jaiw-reference-reviews .reviews-list blockquote{font-size:clamp(54px,2.25vw,86px)!important;line-height:1.035!important;max-width:35vw!important}
  body.jaiw-reference-reviews .reviews-list article>div:last-child>p:not(.review-theme){font-size:clamp(13px,.53vw,20px)!important;line-height:1.58!important;max-width:34vw!important;margin:clamp(26px,1.1vw,42px) 0 clamp(20px,.85vw,33px)!important}
  body.jaiw-reference-reviews .reviews-list footer{gap:clamp(10px,.45vw,17px)!important;font-size:clamp(10px,.4vw,15px)!important}

  /* ---------------------------------------------------------------------
     LOCATIONS
     --------------------------------------------------------------------- */
  body.jaiw-reference-locations .location-archive{padding-top:clamp(155px,6.8vw,261px)!important;padding-bottom:clamp(175px,7.6vw,292px)!important}
  body.jaiw-reference-locations .location-group{padding:clamp(70px,3.05vw,117px)!important;margin-bottom:clamp(70px,3vw,115px)!important}
  body.jaiw-reference-locations .location-group-heading{grid-template-columns:minmax(0,1fr) minmax(0,.52fr)!important;gap:clamp(120px,5.4vw,207px)!important;margin-bottom:clamp(68px,2.95vw,113px)!important;padding-bottom:clamp(38px,1.65vw,63px)!important}
  body.jaiw-reference-locations .location-group-heading h2{font-size:clamp(62px,2.55vw,98px)!important;line-height:.95!important}
  body.jaiw-reference-locations .location-group-heading>p,
  body.jaiw-reference-locations .location-group-heading>div:last-child p{font-size:clamp(13px,.55vw,21px)!important;line-height:1.5!important;margin-bottom:clamp(18px,.75vw,29px)!important}
  body.jaiw-reference-locations .destination-grid{gap:clamp(16px,.65vw,25px)!important}
  body.jaiw-reference-locations .destination-card-media,
  body.jaiw-reference-locations .destination-card-placeholder{height:clamp(420px,18vw,691px)!important}
  body.jaiw-reference-locations .destination-card-copy{padding:clamp(24px,1vw,38px)!important}
  body.jaiw-reference-locations .destination-card-copy>span{font-size:clamp(9px,.36vw,14px)!important}
  body.jaiw-reference-locations .destination-card-copy h3{font-size:clamp(34px,1.4vw,54px)!important;margin:clamp(16px,.65vw,25px) 0 clamp(13px,.55vw,21px)!important;line-height:.98!important}
  body.jaiw-reference-locations .destination-card-copy p{font-size:clamp(11px,.44vw,17px)!important;line-height:1.48!important;min-height:clamp(90px,3.4vw,130px)!important}
  body.jaiw-reference-locations .destination-card-copy .text-link{font-size:clamp(9px,.36vw,14px)!important}
  body.jaiw-reference-locations .destination-card-large{min-height:clamp(500px,20vw,768px)!important;grid-template-columns:1.12fr .88fr!important}
  body.jaiw-reference-locations .destination-card-large .destination-card-media,
  body.jaiw-reference-locations .destination-card-large .destination-card-placeholder{height:100%!important}
  body.jaiw-reference-locations .destination-card-large .destination-card-copy{padding:clamp(55px,2.3vw,88px)!important}
  body.jaiw-reference-locations .destination-card-large .destination-card-copy h3{font-size:clamp(50px,2.05vw,79px)!important}

  /* ---------------------------------------------------------------------
     CONTACT
     --------------------------------------------------------------------- */
  body.jaiw-page-contact .contact-page-hero h1{text-transform:none!important;max-width:36vw!important}
  body.jaiw-page-contact .contact-enquiry{padding:clamp(150px,6.6vw,253px) 0 clamp(180px,7.8vw,300px)!important}
  body.jaiw-page-contact .contact-enquiry .contact-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)!important;gap:clamp(160px,7vw,269px)!important}
  body.jaiw-page-contact .contact-enquiry aside h2{font-size:clamp(58px,2.45vw,94px)!important;line-height:.98!important;max-width:31vw!important}
  body.jaiw-page-contact .contact-enquiry aside>p:not(.eyebrow){font-size:clamp(13px,.56vw,21px)!important;line-height:1.58!important;max-width:28vw!important;margin-top:clamp(30px,1.3vw,50px)!important}
  body.jaiw-page-contact .contact-enquiry dl{margin-top:clamp(48px,2vw,77px)!important}
  body.jaiw-page-contact .contact-enquiry dl>div{grid-template-columns:clamp(150px,6.5vw,250px) 1fr!important;padding:clamp(20px,.85vw,33px) 0!important;font-size:clamp(11px,.46vw,17.5px)!important;line-height:1.45!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-block{max-width:none!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form{grid-template-columns:1fr 1fr!important;gap:clamp(20px,.85vw,33px) clamp(22px,.95vw,36px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form label,
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form legend{font-size:clamp(10px,.42vw,16px)!important;line-height:1.25!important;margin-bottom:clamp(8px,.32vw,12px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form input,
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form select,
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form textarea{
    font-size:clamp(12px,.5vw,19px)!important;padding:clamp(14px,.6vw,23px)!important;border-color:rgba(38,48,41,.18)!important;
  }
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form input,
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form select{min-height:clamp(54px,2.35vw,90px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-enquiry-form textarea{min-height:clamp(150px,6.5vw,250px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(12px,.5vw,19px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-choice{padding:clamp(15px,.62vw,24px)!important;font-size:clamp(11px,.45vw,17px)!important;gap:clamp(10px,.4vw,15px)!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-checkbox{font-size:clamp(11px,.45vw,17px)!important;line-height:1.5!important}
  body.jaiw-page-contact .contact-enquiry .jaiw-submit{min-height:clamp(54px,2.35vw,90px)!important;font-size:clamp(10px,.42vw,16px)!important;padding-inline:clamp(20px,.9vw,35px)!important}

  /* Shared final CTA, matching the already-approved About/Home 4K rhythm. */
  body.jaiw-reference-experience .final-cta-inner,
  body.jaiw-reference-reviews .final-cta-inner,
  body.jaiw-reference-locations .final-cta-inner{
    min-height:clamp(390px,19vw,730px)!important;
    grid-template-columns:9vw minmax(0,1fr) 20vw!important;
    grid-template-rows:auto auto!important;
    column-gap:clamp(90px,4.4vw,169px)!important;
    row-gap:clamp(28px,1.4vw,54px)!important;
    align-items:center!important;
  }
  body.jaiw-reference-experience .final-cta .eyebrow,
  body.jaiw-reference-reviews .final-cta .eyebrow,
  body.jaiw-reference-locations .final-cta .eyebrow{grid-column:1!important;grid-row:1/3!important;align-self:center!important}
  body.jaiw-reference-experience .final-cta h2,
  body.jaiw-reference-reviews .final-cta h2,
  body.jaiw-reference-locations .final-cta h2{grid-column:2!important;grid-row:1/3!important;align-self:center!important;font-size:clamp(60px,2.8vw,108px)!important;line-height:.96!important;max-width:36vw!important}
  body.jaiw-reference-experience .final-cta-inner>p:not(.eyebrow),
  body.jaiw-reference-reviews .final-cta-inner>p:not(.eyebrow),
  body.jaiw-reference-locations .final-cta-inner>p:not(.eyebrow){grid-column:3!important;grid-row:1!important;align-self:end!important;font-size:clamp(13px,.62vw,23px)!important;line-height:1.55!important;max-width:20vw!important}
  body.jaiw-reference-experience .final-cta .button,
  body.jaiw-reference-reviews .final-cta .button,
  body.jaiw-reference-locations .final-cta .button{grid-column:3!important;grid-row:2!important;align-self:start!important;justify-self:start!important;min-width:clamp(160px,7.5vw,288px)!important;margin:0!important;background:var(--green)!important;border-color:var(--green)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
}

@media (max-width:720px){
  body.jaiw-page-contact .contact-enquiry{padding:66px 0 78px}
  body.jaiw-page-contact .contact-enquiry .jaiw-choice-grid{grid-template-columns:1fr!important}
  body.jaiw-page-contact .contact-enquiry aside h2{font-size:36px}
}
