/*
Theme Name: Best Airway Orthodontists (Divi child)
Template: Divi
Description: Child theme of Divi for BestAirwayOrthodontists.com. Holds the homepage design, scripts and images.
Author: Starts with Strategy
Version: 1.0.0
*/


body{margin:0;background:#0B1120;color:#EFE8DC;font-family:"Schibsted Grotesk","Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure,blockquote{margin:0}
h1,h2,h3{text-wrap:balance;font-weight:400}
button{font-family:inherit}
a{color:inherit}
:focus-visible{outline:2px solid #F2B33D;outline-offset:4px}
input::placeholder{color:#8A93A3}
.grain{background-image:url(assets/img/grain.png);background-repeat:repeat;background-size:300px 300px}
.serif{font-family:"Instrument Serif",Georgia,serif}
.clock{font-size:14px;font-weight:600;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.trace{animation:trace 26s linear infinite;will-change:transform}
.trace-slow{animation:trace 60s linear infinite;will-change:transform}
@keyframes trace{from{transform:translateX(0)}to{transform:translateX(-1200px)}}
@supports (animation-timeline: view()){
  .rise{animation:rise linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
  .drift{animation:drift linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
  @keyframes rise{from{transform:translateY(56px)}to{transform:none}}
  @keyframes drift{from{transform:scale(1.12) translateY(-3%)}to{transform:scale(1.12) translateY(3%)}}
}
@media (prefers-reduced-motion: reduce){.trace,.trace-slow,.rise,.drift{animation:none !important}}
.sign{color:#F2B33D}
.sign,.wake{transition:color .15s linear}
.hero-photo-frame{aspect-ratio:4/5}
@media (min-width:980px){.hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) !important}.hero-photo-frame{aspect-ratio:auto;min-height:620px;height:100%}}
section,footer{display:flow-root}
@media (min-width:900px){.pod-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) !important}}
.flow-modal{position:fixed;inset:0;z-index:1000;background:rgba(5,8,18,0.76);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .25s ease}
.flow-modal .flow-box{background:#0B1120;color:#EFE8DC;border-radius:28px;padding:clamp(22px,3vw,36px);width:100%;max-width:640px;max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;gap:20px;box-shadow:0 30px 80px rgba(0,0,0,0.45);animation:popIn .3s cubic-bezier(.2,.8,.2,1)}
.flow-inline .flow-box{display:contents}
.pmodal{position:fixed;inset:0;z-index:1000;background:rgba(5,8,18,0.76);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .25s ease}
.pmodal-box{background:#FFFFFF;color:#0B1120;border-radius:28px;width:100%;max-width:680px;height:min(820px,calc(100vh - 32px));display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,0.45);animation:popIn .3s cubic-bezier(.2,.8,.2,1)}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.sheet{border-radius:44px 44px 0 0;margin-top:-44px;position:relative}
.marquee{display:flex;width:max-content;animation:marq 48s linear infinite}
.marquee-slow{display:flex;width:max-content;animation:marq 70s linear infinite}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.lift{transition:transform .25s ease, background-color .25s ease}
.lift:hover{transform:translateY(-3px)}
.zoom img{transition:transform .6s ease}
.zoom:hover img{transform:scale(1.04)}
.row-link{transition:color .2s ease}
.row-link:hover{color:#E2683A}
@media (prefers-reduced-motion: reduce){.marquee,.marquee-slow,.lift,.zoom img{animation:none !important;transition:none !important}}
.fly-card{transform:rotate(var(--rot));transition:transform .3s ease}
.fly-card:hover{transform:translateY(-6px) rotate(0deg)}
.fly-viewport{overflow-x:auto;overflow-y:visible;padding:10px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.fly-viewport::-webkit-scrollbar{display:none}
.fly-card{scroll-snap-align:start}
.fly-track{padding:0 24px}
@media (min-width:900px){.fly-viewport{overflow:visible}.fly-rows.wrapped{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px !important;max-width:1360px;margin:0 auto;padding-left:24px;padding-right:24px}.fly-rows.wrapped .fly-card{width:auto !important;height:auto !important;min-height:280px}.fly-rows.wrapped .fly-viewport,.fly-rows.wrapped .fly-track{display:contents !important}}
@media (prefers-reduced-motion: reduce){.fly-track{animation:none !important}.fly-viewport{overflow-x:auto !important}}
@media (min-width:640px){.doc-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (min-width:1000px){.doc-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}.doc-mid{margin-top:88px}}
.duo{filter:saturate(.92) contrast(1.04);mix-blend-mode:normal;background:#1A1230}
.dfield{max-width:600px;margin:0 auto;width:100%;padding-bottom:24px}
.dcard .dphoto{align-self:start}
@media (min-width:640px){.dcard{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.dcard .dphoto{aspect-ratio:1/1 !important}.dfield{max-width:720px}}
@media (min-width:900px){.dfield{grid-template-columns:repeat(2,minmax(0,1fr)) !important;max-width:1240px;padding-bottom:110px;row-gap:56px !important}.dcard.dr{position:relative;top:150px}}
@media (min-width:1080px){.sig-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) !important}}
@media (max-width:1079px){.sc-card{max-width:520px}}
@media (min-width:860px){.st-caps{grid-template-columns:39fr 22fr 39fr !important;gap:40px !important}}
@media (max-width:760px){.st-labels{display:none}.nav-links{display:none !important}.offset{margin-top:0 !important}}

h2[tabindex="-1"]:focus{outline:none}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
.flow-box iframe{display:block;width:100%;border:0;min-height:560px}

/* Plain inner pages (privacy policy etc.) */
.bao-page{background:#0B1120;color:#EFE8DC;min-height:100vh}
.bao-page-inner{max-width:760px;margin:0 auto;padding:32px 24px 96px;display:flex;flex-direction:column;gap:40px}
.bao-page h1{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(44px,6vw,80px);line-height:.98;letter-spacing:-.03em}
.bao-entry{font-size:18px;line-height:1.7;color:#D9DCE6}
.bao-entry h2,.bao-entry h3{font-family:"Instrument Serif",Georgia,serif;color:#EFE8DC;margin:1.6em 0 .4em;line-height:1.1}
.bao-entry h2{font-size:34px}
.bao-entry h3{font-size:26px}
.bao-entry p{margin:0 0 1.1em}
.bao-entry a{color:#F2B33D;text-underline-offset:4px}
.bao-entry ul,.bao-entry ol{margin:0 0 1.1em;padding-left:1.3em}

/* Keep Divi's defaults from restyling the hand-built homepage. Zero-specificity prefix so the design's own classes still win. */
:where(.bao-wrap) :is(h1,h2,h3,h4,h5,h6){padding:0;margin:0;font-weight:inherit;line-height:inherit;color:inherit;font-family:inherit}
:where(.bao-wrap) p{padding:0;margin:0}
:where(.bao-wrap) :is(ul,ol){padding:0;margin:0;list-style:none}
:where(.bao-wrap) a{color:inherit}
:where(.bao-wrap) button{font-family:inherit}
:where(.bao-wrap) img{max-width:100%}
.bao-wrap,.bao-wrap *,.bao-wrap *::before,.bao-wrap *::after{box-sizing:border-box}
/* wpautop (run on the code module) adds <br> between tags, which become stray grid and flex items. Hide them; the headline's own line break lives in an h2. */
.bao-wrap br{display:none}
.bao-wrap h2>br{display:inline}
.bao-wrap{font-family:"Schibsted Grotesk","Helvetica Neue",Helvetica,sans-serif;color:#EFE8DC;font-size:16px;line-height:1.5}
body.page-template-page-template-blank #page-container{padding-top:0 !important}
body.page-template-page-template-blank .et_pb_section,
body.page-template-page-template-blank .et_pb_fullwidth_code,
body.page-template-page-template-blank .et_pb_code_inner{padding:0 !important;margin:0 !important}
