/* V19 final layout guard — loads AFTER all per-page CSS */
html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
@media (min-width:1001px){
  .of-shell{width:min(1180px,calc(100% - 40px))!important}
  .oa-layout{grid-template-columns:minmax(0,930px) 210px!important;gap:28px!important}
  .oa-article{width:100%!important;max-width:930px!important}
  .oa-article>h1,.oa-article>h2,.oa-article>p,.oa-lead,.oa-dialogues,.oa-sitemap,.oa-faq,.oa-stats,.oa-proposal,.oa-nav,.oa-real-media,.of-insight{max-width:930px!important}
}
@media (max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body{font-size:16px!important}
  .of-shell{width:calc(100% - 24px)!important;max-width:none!important;margin:0 auto!important;padding:14px 0 40px!important}
  .oa-layout,.oa-article{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .oa-side{display:none!important}

  /* Hard-disable the desktop information diagram on phones. */
  .of-insight,.of-insight[class],[class~="of-insight"],[class*="of-insight--"]{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}

  .oa-article h1{max-width:100%!important;margin:0 0 18px!important;font-size:clamp(38px,11vw,54px)!important;line-height:1!important;letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:normal!important}
  .oa-kicker{margin:0 0 26px!important;font-size:9px!important;line-height:1.55!important}
  .oa-article h2{max-width:100%!important;margin:36px 0 14px!important;padding-top:14px!important;font-size:clamp(27px,8vw,38px)!important;line-height:1.08!important;letter-spacing:-.04em!important;overflow-wrap:normal!important;word-break:normal!important}
  .oa-article h3{font-size:22px!important;line-height:1.2!important}
  .oa-article p,.oa-lead,.speech p,.prevent p,.oa-siteitem p,.oa-faq details p{max-width:100%!important;font-size:16px!important;line-height:1.72!important;overflow-wrap:break-word!important;word-break:normal!important}
  .oa-lead{font-size:18px!important;line-height:1.68!important}

  /* Media becomes a plain vertical editorial card. */
  .oa-real-media,.oa-real-media--overview,.oa-real-media--service,.oa-real-media--trust{
    display:block!important;width:100%!important;max-width:100%!important;margin:22px 0 32px!important;border-radius:18px!important;overflow:hidden!important
  }
  .oa-real-media .oa-media-frame,.oa-real-media--overview .oa-media-frame,.oa-real-media--service .oa-media-frame,.oa-real-media--trust .oa-media-frame{
    display:block!important;position:relative!important;order:initial!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:4/3!important;border:0!important
  }
  .oa-real-media .oa-media-frame img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .oa-real-media figcaption,.oa-real-media--service figcaption,.oa-real-media--trust figcaption{
    display:flex!important;flex-direction:column!important;order:initial!important;width:100%!important;max-width:100%!important;padding:18px!important;border:0!important;border-top:1px solid var(--line)!important;background:#fffaf4!important
  }
  .oa-real-media figcaption:before{display:none!important}
  .oa-media-note{display:block!important;width:100%!important;margin:0 0 10px!important;padding:0!important;font-size:9px!important;line-height:1.35!important;letter-spacing:.14em!important}
  .oa-real-media figcaption>strong{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;font-size:25px!important;line-height:1.12!important;letter-spacing:-.035em!important}
  .oa-media-context,.oa-media-detail{display:block!important;width:100%!important;max-width:100%!important;margin:12px 0 0!important;padding:0!important;font-size:16px!important;line-height:1.68!important}
  .oa-media-chips,.oa-media-source,.oa-context-source{display:none!important}

  .oa-list,.oa-sitemap,.oa-stats,.oa-dialogues,.oa-faq,.oa-proposal,.oa-nav{width:100%!important;max-width:100%!important}
  .oa-list,.oa-sitemap,.oa-stats{grid-template-columns:1fr!important}
  .oa-list li,.oa-siteitem,.oa-stat{min-width:0!important}
  .oa-siteitem{grid-template-columns:34px minmax(0,1fr)!important;column-gap:12px!important;padding:16px!important}
  .oa-siteitem strong{font-size:17px!important}
  .dialogue-head{align-items:flex-start!important;flex-direction:column!important}
  .speech{margin:12px!important;padding:14px!important}
  .speaker{font-size:10px!important}
  .oa-proposal-head{align-items:flex-start!important;flex-direction:column!important}
  .oa-line,.oa-total{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}
}

/* =========================================================
   V1.4.9 — MOBILE-NATIVE OFFER + QUOTE EXPERIENCE
   Core forms/results stay visible, but use a deliberate phone layout.
   ========================================================= */
@media (max-width:760px){
  body.wemaxa-offers-page{
    overflow-anchor:none!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }

  /* Prevent theme/load entrance transforms from moving the route after first paint. */
  body.wemaxa-offers-page .wemaxa-brandline-section,
  body.wemaxa-offers-page .wemaxa-brandline-wrap,
  body.wemaxa-offers-page .wx-brandbar,
  body.wemaxa-offers-page .wx-datarail,
  body.wemaxa-offers-page .of-page,
  body.wemaxa-offers-page .of-shell,
  body.wemaxa-offers-page .of-hero,
  body.wemaxa-offers-page .oq-page{
    transform:none!important;
    translate:none!important;
    animation:none!important;
    transition:none!important;
  }

  body.wemaxa-offers-page .of-shell{
    width:calc(100% - 20px)!important;
    max-width:680px!important;
    margin-inline:auto!important;
    padding:12px 0 34px!important;
  }

  /* -------------------------
     OFFER FINDER / ARCHIVE
     ------------------------- */
  body.wemaxa-offers-page .of-searchpanel,
  body.wemaxa-offers-page .of-searchrow,
  body.wemaxa-offers-page .of-search,
  body.wemaxa-offers-page .of-count{
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    max-height:none!important;
  }
  body.wemaxa-offers-page .of-searchpanel{
    display:block!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
    padding:14px!important;
    border-radius:17px!important;
  }
  body.wemaxa-offers-page .of-searchrow{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  body.wemaxa-offers-page .of-search{
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    padding:0 14px!important;
    border-radius:12px!important;
    font-size:16px!important;
    line-height:1.2!important;
  }
  body.wemaxa-offers-page .of-count{
    width:100%!important;
    min-height:48px!important;
    border-radius:12px!important;
    font-size:11px!important;
  }
  body.wemaxa-offers-page .of-filters{
    display:flex!important;
    gap:7px!important;
    margin-top:10px!important;
    padding:2px 0 5px!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.wemaxa-offers-page .of-filters::-webkit-scrollbar{display:none!important}
  body.wemaxa-offers-page .of-filter{
    flex:0 0 auto!important;
    min-height:38px!important;
    padding:0 11px!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }

  .of-mobile-custom-gateway{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
    width:100%!important;
    margin:14px 0 0!important;
    padding:16px!important;
    border:1px solid rgba(243,81,32,.24)!important;
    border-radius:17px!important;
    background:linear-gradient(145deg,#17191f,#252932)!important;
    color:#fff!important;
    text-decoration:none!important;
    box-shadow:0 10px 24px rgba(17,19,26,.10)!important;
  }
  .of-mobile-custom-gateway span{min-width:0!important}
  .of-mobile-custom-gateway small{
    display:block!important;
    color:#ff8b68!important;
    font-size:9px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:.09em!important;
  }
  .of-mobile-custom-gateway strong{
    display:block!important;
    margin-top:5px!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  .of-mobile-custom-gateway em{
    display:block!important;
    margin-top:7px!important;
    color:#c9ced7!important;
    font-size:13px!important;
    line-height:1.45!important;
    font-style:normal!important;
  }
  .of-mobile-custom-gateway>b{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:44px!important;
    padding:0 12px!important;
    border-radius:11px!important;
    background:#f35120!important;
    color:#fff!important;
    font-size:10px!important;
    letter-spacing:.05em!important;
    white-space:normal!important;
    text-align:center!important;
  }

  /* -------------------------
     CUSTOM QUOTE BUILDER
     ------------------------- */
  body.wemaxa-offers-custom .oq-page{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    padding:4px 0 30px!important;
    overflow:visible!important;
  }
  body.wemaxa-offers-custom .oq-hero{
    display:block!important;
    margin:0 0 18px!important;
  }
  body.wemaxa-offers-custom .oq-hero .of-labels{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    margin-bottom:14px!important;
  }
  body.wemaxa-offers-custom .oq-hero h1{
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(34px,10.4vw,48px)!important;
    line-height:.99!important;
    letter-spacing:-.05em!important;
    text-wrap:balance!important;
  }
  body.wemaxa-offers-custom .oq-hero p{
    max-width:100%!important;
    margin:14px 0 0!important;
    color:#626a75!important;
    font-size:15px!important;
    line-height:1.62!important;
  }
  body.wemaxa-offers-custom .oq-error{
    margin:0 0 14px!important;
    padding:13px 14px!important;
    border-radius:13px!important;
    font-size:13px!important;
    line-height:1.5!important;
  }

  body.wemaxa-offers-custom .oq-builder{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
  }
  body.wemaxa-offers-custom .oq-form,
  body.wemaxa-offers-custom .oq-aside,
  body.wemaxa-offers-custom .oq-proposal{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    max-height:none!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  body.wemaxa-offers-custom .oq-form{
    background:#fff!important;
    box-shadow:0 10px 26px rgba(28,23,18,.055)!important;
  }
  body.wemaxa-offers-custom .oq-form-head{
    display:block!important;
    padding:18px 15px 15px!important;
  }
  body.wemaxa-offers-custom .oq-form-head small,
  body.wemaxa-offers-custom .oq-kicker{
    margin-bottom:7px!important;
    font-size:9px!important;
    line-height:1.2!important;
    letter-spacing:.11em!important;
  }
  body.wemaxa-offers-custom .oq-form-head h2{
    font-size:25px!important;
    line-height:1.06!important;
  }
  body.wemaxa-offers-custom .oq-fields{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:15px!important;
    width:100%!important;
    height:auto!important;
    padding:16px 15px!important;
    overflow:visible!important;
  }
  body.wemaxa-offers-custom .oq-field,
  body.wemaxa-offers-custom .oq-field--wide,
  body.wemaxa-offers-custom .oq-group{
    grid-column:auto!important;
    width:100%!important;
    min-width:0!important;
  }
  body.wemaxa-offers-custom .oq-field{
    display:grid!important;
    gap:7px!important;
  }
  body.wemaxa-offers-custom .oq-field label,
  body.wemaxa-offers-custom .oq-group legend{
    display:block!important;
    color:#343840!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.3!important;
    letter-spacing:.045em!important;
  }
  body.wemaxa-offers-custom .oq-field input,
  body.wemaxa-offers-custom .oq-field select{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:52px!important;
    margin:0!important;
    padding:0 14px!important;
    border:1px solid #cbc6bf!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17191f!important;
    font-size:16px!important;
    line-height:1.2!important;
    box-shadow:none!important;
  }
  body.wemaxa-offers-custom .oq-field select{
    padding-right:38px!important;
  }
  body.wemaxa-offers-custom .oq-field input:focus,
  body.wemaxa-offers-custom .oq-field select:focus{
    border-color:#f35120!important;
    box-shadow:0 0 0 3px rgba(243,81,32,.10)!important;
    outline:0!important;
  }
  body.wemaxa-offers-custom .oq-help{
    display:block!important;
    color:#777f89!important;
    font-size:12px!important;
    line-height:1.5!important;
  }
  body.wemaxa-offers-custom .oq-checks{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    margin-top:9px!important;
  }
  body.wemaxa-offers-custom .oq-check{
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    min-height:50px!important;
    padding:11px 12px!important;
    border:1px solid #e3dfd8!important;
    border-radius:12px!important;
    background:#fbfaf8!important;
    font-size:13px!important;
    line-height:1.35!important;
    cursor:pointer!important;
  }
  body.wemaxa-offers-custom .oq-check input{
    width:20px!important;
    height:20px!important;
    margin:0!important;
    accent-color:#f35120!important;
  }

  body.wemaxa-offers-custom .oq-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    padding:0 15px 16px!important;
  }
  body.wemaxa-offers-custom .oq-submit{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:52px!important;
    padding:0 14px!important;
    border-radius:12px!important;
    visibility:visible!important;
    font-size:12px!important;
    line-height:1.2!important;
    text-align:center!important;
  }
  body.wemaxa-offers-custom .oq-submit:disabled{
    opacity:.42!important;
    cursor:not-allowed!important;
  }
  body.wemaxa-offers-custom .oq-completion{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
    width:100%!important;
    padding:10px 11px!important;
    border:1px solid #e6e1da!important;
    border-radius:11px!important;
    background:#faf9f7!important;
  }
  body.wemaxa-offers-custom .oq-completion>b{
    color:#f35120!important;
    font-size:18px!important;
    line-height:1!important;
  }
  body.wemaxa-offers-custom .oq-completion>span{
    color:#747b85!important;
    font-size:11px!important;
    line-height:1.4!important;
  }

  body.wemaxa-offers-custom .oq-aside{
    position:static!important;
    padding:17px 15px!important;
    background:#17191f!important;
    color:#fff!important;
    box-shadow:none!important;
  }
  body.wemaxa-offers-custom .oq-aside small{font-size:9px!important}
  body.wemaxa-offers-custom .oq-aside h3{
    margin:0 0 9px!important;
    font-size:22px!important;
    line-height:1.08!important;
  }
  body.wemaxa-offers-custom .oq-aside p{
    color:#c7cbd2!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  body.wemaxa-offers-custom .oq-aside ul{
    gap:8px!important;
    margin-top:13px!important;
  }
  body.wemaxa-offers-custom .oq-aside li{
    grid-template-columns:22px minmax(0,1fr)!important;
    font-size:12px!important;
    line-height:1.45!important;
  }

  /* -------------------------
     GENERATED CUSTOM OFFER
     ------------------------- */
  body.wemaxa-offers-custom .oq-proposal{
    display:block!important;
    height:auto!important;
    margin-top:18px!important;
    background:#fff!important;
    box-shadow:0 10px 26px rgba(28,23,18,.055)!important;
  }
  body.wemaxa-offers-custom .oq-proposal-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
    padding:18px 15px!important;
  }
  body.wemaxa-offers-custom .oq-proposal-head h2{
    max-width:100%!important;
    margin:0!important;
    font-size:30px!important;
    line-height:1.02!important;
    overflow-wrap:break-word!important;
  }
  body.wemaxa-offers-custom .oq-meta{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin-top:12px!important;
  }
  body.wemaxa-offers-custom .oq-meta div{
    padding:11px!important;
    border-radius:10px!important;
  }
  body.wemaxa-offers-custom .oq-meta small{font-size:9px!important}
  body.wemaxa-offers-custom .oq-meta strong{
    margin-top:4px!important;
    font-size:13px!important;
    line-height:1.35!important;
    overflow-wrap:break-word!important;
  }
  body.wemaxa-offers-custom .oq-price{
    width:100%!important;
    padding-top:14px!important;
    border-top:1px solid #e7e2dc!important;
    text-align:left!important;
  }
  body.wemaxa-offers-custom .oq-price small{font-size:9px!important}
  body.wemaxa-offers-custom .oq-price strong{
    display:block!important;
    max-width:100%!important;
    margin-top:5px!important;
    font-size:clamp(29px,9vw,40px)!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
  }
  body.wemaxa-offers-custom .oq-proposal-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
  }
  body.wemaxa-offers-custom .oq-proposal-sec{
    width:100%!important;
    min-width:0!important;
    padding:17px 15px!important;
    border-right:0!important;
    border-bottom:1px solid #ece7e1!important;
  }
  body.wemaxa-offers-custom .oq-proposal-sec h3{
    margin:0 0 10px!important;
    font-size:20px!important;
    line-height:1.12!important;
  }
  body.wemaxa-offers-custom .oq-list{
    display:grid!important;
    gap:7px!important;
  }
  body.wemaxa-offers-custom .oq-list li{
    width:100%!important;
    min-width:0!important;
    padding:10px 11px!important;
    border-radius:10px!important;
    font-size:12px!important;
    line-height:1.45!important;
    overflow-wrap:break-word!important;
  }
  body.wemaxa-offers-custom .oq-proposal-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-items:stretch!important;
    width:100%!important;
    padding:17px 15px!important;
  }
  body.wemaxa-offers-custom .oq-proposal-actions p{
    max-width:100%!important;
    font-size:12px!important;
    line-height:1.55!important;
  }
  body.wemaxa-offers-custom .oq-proposal-buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  body.wemaxa-offers-custom .oq-btn{
    display:flex!important;
    width:100%!important;
    min-height:48px!important;
    padding:0 12px!important;
    border-radius:11px!important;
    font-size:10px!important;
    text-align:center!important;
  }
  body.wemaxa-offers-custom .oq-note{
    padding:13px 15px!important;
    font-size:11px!important;
    line-height:1.5!important;
  }

  /* -------------------------
     PROFESSION OFFER PAGE CTA
     ------------------------- */
  .oa-mobile-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    margin:0 0 25px!important;
    padding:15px!important;
    border:1px solid rgba(243,81,32,.18)!important;
    border-radius:16px!important;
    background:#fffaf6!important;
    box-shadow:0 8px 22px rgba(30,24,20,.045)!important;
  }
  .oa-mobile-actions small{
    display:block!important;
    color:#858c96!important;
    font-size:9px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:.08em!important;
  }
  .oa-mobile-actions strong{
    display:block!important;
    margin-top:5px!important;
    color:#f35120!important;
    font-size:32px!important;
    line-height:1!important;
  }
  .oa-mobile-actions span{
    display:block!important;
    margin-top:4px!important;
    color:#777e87!important;
    font-size:10px!important;
    line-height:1.3!important;
    text-transform:uppercase!important;
  }
  .oa-mobile-actions-links{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .oa-mobile-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:48px!important;
    padding:0 12px!important;
    border-radius:11px!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1.2!important;
    text-decoration:none!important;
    text-align:center!important;
  }
  .oa-mobile-order{background:#17191f!important;color:#fff!important}
  .oa-mobile-custom{background:#f35120!important;color:#fff!important}
}

@media (max-width:390px){
  body.wemaxa-offers-custom .oq-hero h1{font-size:33px!important}
  body.wemaxa-offers-custom .oq-form-head h2{font-size:23px!important}
  body.wemaxa-offers-custom .oq-proposal-head h2{font-size:27px!important}
  body.wemaxa-offers-custom .oq-price strong{font-size:28px!important}
}

@media (min-width:761px){
  .of-mobile-custom-gateway,.oa-mobile-actions{display:none!important}
}
