.elementor-14891 .elementor-element.elementor-element-4f3e95a{--display:flex;}.elementor-14891 .elementor-element.elementor-element-b2e07d5{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-14891 .elementor-element.elementor-element-d3f9fbb{--display:flex;}.elementor-14891 .elementor-element.elementor-element-51f0f92{--display:flex;}.elementor-14891 .elementor-element.elementor-element-8f2636f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-14891 .elementor-element.elementor-element-610a371{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-14891 .elementor-element.elementor-element-04ae7f2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:767px){.elementor-14891 .elementor-element.elementor-element-51f0f92{--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS *//* =====================================================================
   PN RECEPTIONIST — PAGE CSS  (v1)
   ---------------------------------------------------------------------
   WHERE THIS GOES
   Elementor → edit the PNR page → Page Settings (bottom-left gear)
   → Advanced → Custom CSS. Paste this whole file in.
   Do NOT put it in Site Settings yet — see WHY below.

   ---------------------------------------------------------------------
   WHY :root, AND WHY IT'S HERE AND NOT SITE-WIDE

   A :root block declares custom properties — variables — on the document.
   Two properties of them matter for us:

   1. THEY ARE INERT. A variable does nothing at all until some rule
      references it. Nothing on powerednow.com currently mentions
      --pn-h2, so this block cannot affect a single existing page. That
      is what makes it safe to eventually lift site-wide: it adds
      vocabulary, it doesn't change behaviour.

   2. THEY CASCADE. Declared on :root, every element on the page can
      read them. So one value here moves the hero, the comparison
      panel, the step cards, pricing, the FAQ and the closing CTA
      together — instead of you hunting six font-size declarations
      across six HTML widgets and getting five of them consistent.

   The rules BELOW the token block are the opposite: they are the ones
   that actually change things. Every one is namespaced to a section we
   built (#himw-hero, .airvs, #himw-pnr-hiw, #himw-pnr-pricing, .air08,
   #himw-pnr-cta), so they can only match markup we control.

   THE PLAN, in order:
     - now:   this whole file lives in the PNR page's Custom CSS
     - next:  same pattern on PNC and the header rebuild
     - then:  once PNR and PNC are both signed off, the :root block
              ONLY moves up to Site Settings → Custom CSS, and the
              duplicate :root is deleted from each page. The
              namespaced overrides stay page-level.
   Legacy pages are never swept globally. They get modernised a
   section at a time, as you reach them.
   ===================================================================== */


/* =====================================================================
   1 — TOKENS + TYPE SCALE   ← the only block you should ever edit
   Fluid clamps: min = small phone, max = large desktop, middle is
   vw-based so there are no jumps at breakpoints.
   Sizes at 414px wide (iPhone XR):
     display 51.8 · h2 41.4 · h3 29.0 · h4 22.4 · lede 17.4 · body 16.1
   ===================================================================== */
:root{
  /* brand */
  --pn-y:#FFBA00;
  --pn-k:#161616;
  --pn-w:#FFFFFF;

  /* display / headings (Bebas Neue) */
  --pn-display: clamp(46px, 12.5vw, 76px);   /* hero H1 only            */
  --pn-h2:      clamp(36px, 10vw,   54px);   /* section headings        */
  --pn-h3:      clamp(26px, 7vw,    38px);   /* panel + card titles     */
  --pn-h4:      clamp(21px, 5.4vw,  26px);   /* tab titles, step titles */

  /* body (Barlow) */
  --pn-lede:    clamp(16.5px, 4.2vw, 19px);  /* section sub-paragraph   */
  --pn-body:    clamp(15.5px, 3.9vw, 17px);  /* standard copy           */
  --pn-small:   14.5px;                       /* captions, sub-lines     */
  --pn-micro:   12.5px;                       /* eyebrows, pills         */
  --pn-btn:     16px;                          /* ALL buttons, all sizes  */

  /* rhythm */
  --pn-lh-display: 0.92;
  --pn-lh-head:    0.98;
  --pn-lh-body:    1.55;

  /* layout */
  --pn-nav: 84px;        /* sticky header height + breathing room */
  --pn-radius: 20px;     /* shape lock: cards 20-24, buttons 12    */
}

/* stop iOS inflating text in narrow blocks — a common cause of
   "why is this one paragraph bigger than the others" on iPhone */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; }


/* =====================================================================
   2 — APPLY THE SCALE
   !important is deliberate: each section widget carries its own inline
   <style> in the page body, which lands later in the document than this
   file and would otherwise win at equal specificity.
   ===================================================================== */

/* ---- hero ---- */
#himw-hero h1{ font-size:var(--pn-display)!important; line-height:var(--pn-lh-display)!important; text-wrap:balance; }
#himw-hero .lede{ font-size:var(--pn-lede)!important; line-height:var(--pn-lh-body)!important; }
#himw-hero .eyebrow{ font-size:var(--pn-micro)!important; }
#himw-hero .trust-note{ font-size:var(--pn-small)!important; }
#himw-hero .btn{ font-size:var(--pn-btn)!important; }

/* ---- before / after comparison ---- */
.airvs h2{ font-size:var(--pn-h2)!important; line-height:var(--pn-lh-head)!important; text-wrap:balance; }
.airvs .sub{ font-size:var(--pn-lede)!important; }
.airvs .panel-title{ font-size:var(--pn-h3)!important; }
.airvs .tag{ font-size:var(--pn-micro)!important; }
.airvs .item-title{ font-size:17px!important; }
.airvs .item-sub{ font-size:var(--pn-small)!important; line-height:1.45!important; }

/* ---- how it works / steps ---- */
#himw-pnr-hiw .hiw-h2{ font-size:var(--pn-h2)!important; line-height:var(--pn-lh-head)!important; text-wrap:balance; }
#himw-pnr-hiw .hiw-sub{ font-size:var(--pn-lede)!important; }
#himw-pnr-hiw .hiw-tab-title{ font-size:var(--pn-h4)!important; }
#himw-pnr-hiw .hiw-tab-step{ font-size:var(--pn-small)!important; }
/* .hiw-mtitle is deliberately NOT sized here. The step-card titles are
   owned by the steps widget so they can be capped at two lines against
   the phone mockup's height budget — an !important here would override
   that and pin them back to 22.4px. */
#himw-pnr-hiw .hiw-mdesc{ font-size:var(--pn-body)!important; }
#himw-pnr-hiw .hiw-mstep-label{ font-size:var(--pn-micro)!important; }

/* ---- pricing ---- */
#himw-pnr-pricing .himw-pp-eyebrow{ font-size:var(--pn-micro)!important; }
#himw-pnr-pricing .himw-pp-title{ font-size:var(--pn-h2)!important; line-height:var(--pn-lh-head)!important; }
#himw-pnr-pricing .himw-pp-sub{ font-size:var(--pn-lede)!important; }
#himw-pnr-pricing .himw-pp-plan-name{ font-size:var(--pn-h3)!important; }
#himw-pnr-pricing .himw-pp-price .cur,
#himw-pnr-pricing .himw-pp-price .amt{ font-size:clamp(42px,11vw,58px)!important; }
#himw-pnr-pricing .himw-pp-desc{ font-size:var(--pn-small)!important; }
#himw-pnr-pricing .himw-pp-intro{ font-size:var(--pn-small)!important; }
#himw-pnr-pricing .himw-pp-feats li{ font-size:15px!important; }
#himw-pnr-pricing .himw-pp-btn{ font-size:var(--pn-btn)!important; }
#himw-pnr-pricing .himw-pp-stat-title{ font-size:var(--pn-h3)!important; }
#himw-pnr-pricing .himw-pp-stat-copy{ font-size:var(--pn-body)!important; }

/* ---- FAQ ---- */
.air08 .section-title{ font-size:var(--pn-h2)!important; line-height:var(--pn-lh-head)!important; }

/* ---- closing CTA ---- */
#himw-pnr-cta .cta-band h2{ font-size:var(--pn-h2)!important; line-height:var(--pn-lh-head)!important; }
#himw-pnr-cta .cta-band > .wrap > p{ font-size:var(--pn-lede)!important; }
#himw-pnr-cta .fine-print{ font-size:var(--pn-small)!important; }
#himw-pnr-cta .btn{ font-size:var(--pn-btn)!important; }


/* =====================================================================
   3 — MOBILE SPACING TRIMS
   The old mobile rules pushed hero content half a screen down and
   over-padded section tops. Tightened so the CTA is reliably above the
   fold on a 414x896 device.
   ===================================================================== */
@media (max-width:768px){
  #himw-hero .hero{ padding:32px 0 28px!important; }
  #himw-hero h1{ margin-top:8px!important; margin-bottom:18px!important; }
  #himw-hero .lede{ margin-top:0!important; }
  #himw-hero .trust-note{ margin-top:16px!important; padding-top:14px!important; margin-bottom:22px!important; }
  #himw-hero .phone-stage{ margin-top:36px!important; }
  #himw-hero .iphone-mock{ width:min(300px,76vw)!important; }

  #himw-pnr-cta .cta-band{ padding:72px 20px 64px!important; }
}


/* =====================================================================
   4 — PERFORMANCE  (the part that matters on an older iPhone)
   a) backdrop-filter is the most expensive thing on this page. Safari
      re-rasterises the blurred region every scroll frame. The "Before
      PN Receptionist" panel is a large blurred surface sitting over a
      flat gradient — it costs a fortune and reveals nothing. Below
      1024px it becomes a static translucent fill that looks near
      identical and is free.
   b) CSS keyframe loops (ringing phone, waveform, typing dots, pulsing
      play button) keep ticking off-screen. The boot script parks them.
   ===================================================================== */
@media (max-width:1024px){
  .airvs .panel--before{
    backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
    background:linear-gradient(160deg, rgba(255,255,255,0.13), rgba(255,255,255,0.035))!important;
  }
  .airvs .panel--before .tag,
  .airvs .panel--after .tag{ backdrop-filter:none!important; -webkit-backdrop-filter:none!important; }
}
@media (prefers-reduced-transparency: reduce){
  .airvs .panel--before{ backdrop-filter:none!important; -webkit-backdrop-filter:none!important; }
}

/* off-screen animation parking, toggled by the boot script */
[data-pn-rest], [data-pn-rest] *{ animation-play-state:paused!important; }

/* promote only the things that actually move */
#himw-hero .call-screen, #himw-hero .incall-screen,
#himw-hero .msg-screen, #himw-hero .booked-screen{ will-change:opacity; }


/* =====================================================================
   5 — ACCESSIBILITY + TOUCH
   ===================================================================== */
#himw-hero a, #himw-hero button,
.airvs a, .airvs button,
#himw-pnr-hiw a, #himw-pnr-hiw button,
#himw-pnr-pricing a, #himw-pnr-pricing button,
.air08 a, .air08 button,
#himw-pnr-cta a, #himw-pnr-cta button{
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(255,186,0,0.22);
}
#himw-hero a:focus-visible, #himw-hero button:focus-visible,
.airvs a:focus-visible, .airvs button:focus-visible,
#himw-pnr-hiw a:focus-visible, #himw-pnr-hiw button:focus-visible,
#himw-pnr-pricing a:focus-visible, #himw-pnr-pricing button:focus-visible,
.air08 a:focus-visible, .air08 .faq-q:focus-visible,
#himw-pnr-cta a:focus-visible, #himw-pnr-cta button:focus-visible{
  outline:3px solid var(--pn-y)!important;
  outline-offset:3px!important;
  border-radius:8px;
}

/* contrast repairs — these all failed WCAG AA as written */
#himw-pnr-pricing .himw-pp-intro{ color:rgba(255,255,255,0.58)!important; }
#himw-pnr-pricing .himw-pp-sub{ color:rgba(255,255,255,0.68)!important; }
#himw-pnr-hiw .hiw-tab-step{ color:rgba(22,22,22,0.5)!important; }

/* full-bleed sections need notch padding on landscape iPhones */
@supports (padding:max(0px)){
  #himw-hero .wrap, #himw-pnr-cta .cta-band, #himw-pnr-pricing .himw-pp-section{
    padding-left:max(20px, env(safe-area-inset-left));
    padding-right:max(20px, env(safe-area-inset-right));
  }
}

@media (prefers-reduced-motion: reduce){
  #himw-hero *, .airvs *, #himw-pnr-hiw *, #himw-pnr-pricing *, .air08 *, #himw-pnr-cta *{
    animation-duration:.01ms!important; animation-iteration-count:1!important;
    transition-duration:.01ms!important; scroll-behavior:auto!important;
  }
}/* End custom CSS */