/* Unio Specialty Care - Temple City — site styles */

/* Fonts (SIL Open Font License; see /fonts/OFL-*.txt) */

@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-vietnamese-wght-normal.woff2) format("woff2-variations"),url(/fonts/inter-vietnamese-wght-normal.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext-wght-normal.woff2) format("woff2-variations"),url(/fonts/inter-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-wght-normal.woff2) format("woff2-variations"),url(/fonts/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --blue:#0071BC; --navy:#1B1464; --teal:#02566F; --sky:#2B8DBF; --link:#1A6FA8;
  --sky-dark:#1F73A0; /* sky blue dark enough for text, and behind white text (4.5:1) */
  --ink:#414141; --muted:#5f6b72; --line:#e2e8ed; --bg-soft:#f6f8fa;
  --f-body:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --f-sans:var(--f-body);
  --f-serif:var(--f-body);
  --sp:1; --mhs:1; --pad:0px;
  /* One type scale for every page (Inter, Harmony Medical style) */
  --t-hero:clamp(32px,4.6vw,56px); --t-h1:clamp(30px,4vw,46px); --t-h2:clamp(24px,2.9vw,34px); --t-h3:clamp(19px,1.9vw,23px);
  --t-body:17px; --t-small:15px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:120px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;font:400 17px/1.65 var(--f-body);color:var(--ink);font-feature-settings:"cv11","ss01";background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--link)}
h1,h2,h3,h4,h5,h6,p{margin:0}
:focus-visible{outline:3px solid #FFCB05;outline-offset:2px}
.w{max-width:1200px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:#fff;padding:10px 16px}
.skip:focus{left:8px;top:8px}

/* ---------- header ---------- */
.site-h{position:sticky;top:0;z-index:50}
.topbar{background:var(--blue);color:#fff;font:400 16px/1.2 var(--f-sans)}
.topbar .w{max-width:1440px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px}
.pill{display:inline-block;background:#fff;color:#1f1f1f;border:2px solid #FFCB05;border-radius:999px;padding:3px 14px;font:600 17px/1.2 var(--f-sans);text-decoration:none;letter-spacing:.01em}
.toplinks{display:flex;gap:10px;align-items:center}
.toplinks a{color:#fff;text-decoration:none}
.toplinks a:hover{text-decoration:underline}
.mainbar{background:rgba(243,242,242,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.06)}
.mainbar .w{max-width:1440px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px}
.logo{display:block;flex:none}
.logo img{height:56px;width:auto}
.menu ul{list-style:none;margin:0;padding:0}
.menu>ul{display:flex;align-items:center;gap:2px}
.menu .top{display:flex;align-items:center;gap:6px;padding:10px 14px;border:0;background:none;color:#333;font:500 15px/1.2 var(--f-sans);text-transform:uppercase;letter-spacing:.02em;text-decoration:none;cursor:pointer;border-radius:4px}
.menu .top:hover,.menu .top.on{color:var(--sky-dark)}
.menu .top svg{transition:transform .2s}
.has-sub{position:relative}
.sub{display:none;position:absolute;top:100%;left:0;min-width:250px;padding:8px 0;background:#fff;border-radius:8px;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.sub a{display:block;padding:10px 18px;color:var(--teal);font:400 15px/1.3 var(--f-sans);text-decoration:none;white-space:nowrap}
.sub a:hover,.sub a:focus-visible,.sub a[aria-current]{background:#eaf4fa}
@media (hover:hover) and (min-width:1120px){.has-sub:hover>.sub{display:block}}
.has-sub:focus-within>.sub,.has-sub.open>.sub{display:block}
.has-sub.open>.top svg{transform:rotate(180deg)}
.menu>ul>.has-sub:last-child>.sub{left:auto;right:0} /* the last menu (Contact) opens leftward, inside the window */
.burger{display:none}

/* Menu button below 1120px: the full menu needs about 1,080px and would run off the right edge. */
@media (max-width:1119px){
  .mainbar .w{min-height:64px}
  .logo img{height:46px}
  .burger{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:0;border-radius:8px;background:transparent;color:var(--teal);cursor:pointer}
  .bars,.bars::before,.bars::after{display:block;width:24px;height:2.5px;border-radius:2px;background:currentColor;position:relative;transition:transform .2s,opacity .2s}
  .bars::before,.bars::after{content:"";position:absolute;left:0}
  .bars::before{top:-7px}.bars::after{top:7px}
  .site-h.open .bars{background:transparent}
  .site-h.open .bars::before{transform:translateY(7px) rotate(45deg)}
  .site-h.open .bars::after{transform:translateY(-7px) rotate(-45deg)}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 14px 28px rgba(0,0,0,.18);max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto}
  .site-h.open .menu{display:block}
  .menu>ul{display:block;padding:6px 0 12px}
  .menu .top{width:100%;justify-content:space-between;padding:15px 22px;font-size:16px;border-bottom:1px solid #eef1f3;border-radius:0}
  .sub{position:static;display:none;box-shadow:none;border-radius:0;padding:4px 0 8px;background:#f6f9fb;min-width:0}
  .has-sub:focus-within>.sub{display:none}
  .has-sub.open>.sub{display:block}
  .sub a{padding:12px 34px;font-size:15.5px;white-space:normal}
  .topbar{font-size:14px}
  .pill{font-size:15px;padding:2px 11px}
}
@media (max-width:420px){.toplinks span,.toplinks a+span+a{display:none}}

/* ---------- generic sections (rebuilt from the Wix layout) ---------- */
.s{position:relative}
.si{max-width:1440px;margin:0 auto}
.r{margin-top:calc(var(--mt,0) * 1px * var(--sp))}
.pb{height:calc(var(--mt,0) * 1px * var(--sp))}
.r.center{margin-left:auto;margin-right:auto}
.r.left{margin-left:var(--ml,0)}
.r.right{margin-left:auto}
.r.full{width:100%}
.r.cols{display:flex;align-items:flex-start;gap:var(--gap,24px);margin-left:var(--ml,0)}
.r.cols.center{margin-left:auto;margin-right:auto}
.c{min-width:0}
.t{width:100%;overflow-wrap:break-word;container-type:inline-size}
.t p,.t li{margin:0}
.t ul,.t ol{margin:0;padding-left:1.35em}
.t a{color:inherit}
.t .sp{height:.85em}
.t img{display:inline-block;max-width:100%;height:auto;vertical-align:middle}
.im{display:block}
.r.center>.im,.r.right>.im{margin-left:auto}
.r.center>.im{margin-right:auto}
.im img{width:100%;height:auto}
.box{position:relative;width:100%}
.box::before{content:"";display:table} /* keeps the first child's top margin inside the box (no white gap above banners) */
.box.has-img{min-height:calc(var(--mh) * 1px * var(--mhs))}
.media{width:100%;background-size:cover;background-position:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 24px;text-decoration:none;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .15s,color .15s,box-shadow .15s,transform .15s;border:2px solid transparent;background:var(--blue);color:#fff;border-radius:999px;font:600 16px var(--f-sans)}
.btn.ghost{background:transparent;color:var(--bc,var(--blue));border-color:var(--bc,var(--blue))}
.btn.ghost:hover{background:var(--bc,var(--blue));color:#fff}
.btn:hover{box-shadow:0 4px 14px rgba(0,0,0,.14);transform:translateY(-1px)}
.btn.line{background:transparent;color:var(--blue);border-color:var(--blue)}
.ln{border:0;margin:0;max-width:100%}
.r.center>.ln{margin:0 auto}
.map,.embed{display:block;width:100%;border:0}
.tbl table{width:100%;border-collapse:collapse;background:#fff;font-size:16px}
.tbl th{background:var(--blue);color:#fff;text-align:left;padding:11px 16px;font:600 17px/1.3 var(--f-sans)}
.tbl td{padding:10px 16px;border-bottom:1px solid var(--line)}
.tbl tr:nth-child(even) td{background:#f7fafc}
.tnote{padding:10px 16px;font-size:14.5px;font-weight:500;color:#9a2b2b}

/* photo strip (from Wix galleries) */
.gal ul{display:flex;gap:12px;list-style:none;margin:0;padding:0 0 10px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.gal li{flex:0 0 auto;scroll-snap-align:start}
.gal img{height:var(--gh);width:auto;max-width:88vw;object-fit:cover;border-radius:8px}

/* ---------- post cards ---------- */
.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:0 10px 26px rgba(0,0,0,.1);transform:translateY(-2px)}
.card img,.card .noimg{width:100%;aspect-ratio:16/10;object-fit:cover;background:#eaf2f7}
.cb{display:flex;flex-direction:column;gap:8px;padding:16px 18px 20px}
.cm{font-size:13px;color:var(--muted)}
.ct{font:700 19px/1.3 var(--f-sans);color:#1f2a30}
.cx{font-size:14.5px;line-height:1.55;color:#555}

/* ---------- blog ---------- */
.listing{padding:48px 0 72px}
.listing h1,.post h1,.prep h1,.notfound h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 30px}
.chips a{display:inline-block;padding:6px 14px;border:1px solid var(--sky);border-radius:999px;color:var(--teal);font-size:14px;text-decoration:none}
.chips a:hover,.chips a[aria-current]{background:var(--sky-dark);border-color:var(--sky-dark);color:#fff}
.post{max-width:780px;margin:0 auto;padding:36px 24px 56px}
.post h1,.ct,.prose h2,.prose h3{overflow-wrap:break-word;hyphens:auto}
.pcover{width:100%;height:auto;aspect-ratio:1200/750;border-radius:10px;margin:0 0 28px}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:14px}
.crumbs a{color:var(--teal);text-decoration:none}
.pmeta{margin:12px 0 28px;font-size:14px;color:var(--muted)}
.prose{font-size:17px;line-height:1.75;color:#333}
.prose p,.prose ul,.prose ol,.prose blockquote,.prose figure{margin:0 0 1.05em}
.prose ul,.prose ol{padding-left:1.4em}
.prose li{margin:.3em 0}
.prose h2,.prose h3,.prose h4{font-family:var(--f-sans);font-weight:600;color:#1f2a30;line-height:1.3;margin:1.6em 0 .55em}
.prose h2{font-size:1.5em}.prose h3{font-size:1.25em}.prose h4{font-size:1.08em}
.prose img{width:auto;max-width:100%;height:auto;border-radius:8px;margin:1em auto}
.prose .sp{display:none}
.prose a{color:var(--link)}
.more{background:var(--bg-soft);padding:48px 0 56px}
.more h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:#1f2a30;margin-bottom:22px}
.all{margin-top:26px;text-align:center}

/* ---------- prep instructions ---------- */
.prep{padding:48px 0 64px}
.prep .w{max-width:900px}
.prep .lead{margin:12px 0 32px;max-width:720px}
.prep section{margin:0 0 34px}
.prep h2{font:700 var(--t-h3)/1.3 var(--f-sans);letter-spacing:-.01em;color:var(--teal);margin:0 0 6px}
.prep .note{margin:0 0 10px;color:var(--muted)}
.pdfs{list-style:none;margin:0;padding:0;border-top:1px solid #d9e6ec}
.pdfs li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:12px 0;border-bottom:1px solid #d9e6ec}
.pdfs .nm{font-weight:500;color:#1f2a30}
.pdfs .lg{display:flex;flex-wrap:wrap;gap:8px}
.pdfs .lg a{display:inline-block;min-height:34px;padding:7px 13px;border:1px solid var(--sky);border-radius:999px;color:var(--teal);font-size:14px;line-height:1.2;text-decoration:none}
.pdfs .lg a:hover,.pdfs .lg a:focus-visible{background:var(--sky-dark);border-color:var(--sky-dark);color:#fff}
.prep .contact{margin-top:20px}
.notfound{padding:80px 0;text-align:center}.notfound p{margin:14px 0}

/* ---------- footer ---------- */
.site-f{color:#fff}
.fmain{background:var(--blue);padding:56px 0 60px}
.fmain .w{max-width:980px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;font:400 16px/1.55 var(--f-sans)}
.fmain a{color:#fff}
.fh{font-weight:600;font-style:italic}
.faddr p+p{margin-top:2px}
.flinks{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.flinks a{text-decoration:none}.flinks a:hover{text-decoration:underline}
.fbar{background:var(--navy);padding:22px 0;font:400 14px var(--f-sans)}
.fbar .w{max-width:980px}

/* ---------- tablets and phones ---------- */
@media (max-width:1100px){.si{padding:0 16px}}
@media (max-width:760px){
  :root{--sp:.5;--mhs:.62;--pad:20px}
  .si{padding:0}
  .r:not(.full){padding-left:var(--pad);padding-right:var(--pad);max-width:none!important;margin-left:0!important;margin-right:0!important}
  .r.full>.t{padding:0 var(--pad)}
  .c .r,.c .r:not(.full){padding-left:0;padding-right:0}
  .box .r:not(.full):not(.cols),.c .box .r:not(.full):not(.cols){padding-left:var(--pad);padding-right:var(--pad)}
  .r.cols{flex-direction:column;align-items:stretch;gap:22px}
  .c{flex:none!important;max-width:none!important;width:100%}
  .t{max-width:none!important}
  .t [style*="text-align:center"] {text-align:center}
  .btn{min-width:0!important;min-height:44px!important;max-width:100%}
  .r.center>.btn,.r.left>.btn{display:flex;margin:0 auto;width:fit-content}
  .ln{max-width:50%}
  .r.left>.ln,.r.right>.ln{margin:0 auto}
  .media{aspect-ratio:auto!important;min-height:max(230px,calc(var(--mh) * .45px))}
  .map{height:340px!important}
  .gal{--gh:240px!important}
  .gal ul{padding-left:var(--pad);padding-right:var(--pad)}
  .im{margin-left:auto;margin-right:auto}
  .tbl{overflow-x:auto}
  .tbl th,.tbl td{padding:9px 12px}
  .cards{grid-template-columns:1fr;gap:18px}
  .listing,.prep{padding:32px 0 48px}
  .post{padding:26px 20px 44px}
  .prose{font-size:16.5px}
  .fmain{padding:40px 0 44px}
  .fmain .w{flex-direction:column;gap:22px}
  .flinks{align-items:flex-start}
  .w{padding:0 20px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------- search/AI content blocks ---------- */
.seo-block{padding:56px 0;background:#fff}
.seo-block+.seo-block{padding-top:0}
.seo-block h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 auto 14px;max-width:900px}
.seo-block .lead{max-width:820px;margin:0 auto 32px;text-align:center;font-size:17px}
.seo-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.seo-grid.groups{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.seo-grid h3{font:700 19px/1.3 var(--f-sans);color:var(--teal);margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid #e3eef5}
.clist{columns:2;column-gap:24px;list-style:none;margin:0;padding:0}
.clist.one{columns:1}
.clist li{break-inside:avoid;padding:4px 0 4px 14px;position:relative;font-size:15px}
.clist li::before{content:"";position:absolute;left:0;top:13px;width:5px;height:5px;border-radius:50%;background:var(--sky)}
.clist a{color:var(--teal)}
.checks{list-style:none;margin:0 0 18px;padding:0}
.checks li{padding:6px 0 6px 26px;position:relative;font-size:15px}
.checks li::before{content:"";position:absolute;left:2px;top:11px;width:12px;height:7px;border-left:2.5px solid var(--sky);border-bottom:2.5px solid var(--sky);transform:rotate(-45deg)}
.faq{background:var(--bg-soft);padding:56px 0}
.faq .w{max-width:860px}
.faq h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin-bottom:22px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin:0 0 10px}
.faq summary{cursor:pointer;list-style:none;padding:16px 48px 16px 18px;font:600 16.5px/1.35 var(--f-sans);color:#1f2a30;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:12px;font:400 24px/1 var(--f-sans);color:var(--sky)}
.faq details[open] summary::after{content:"–"}
.faq .fa{padding:0 18px 16px}
.pfaq{margin-top:36px}
.pfaq .faq,.pfaq{background:none}
.pfaq h2{font:700 var(--t-h3)/1.3 var(--f-sans);letter-spacing:-.01em;color:#1f2a30;margin:0 0 14px}
.pfaq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin:0 0 10px}
.pfaq summary{cursor:pointer;padding:14px 18px;font:600 16px/1.35 var(--f-sans)}
.pfaq .fa{padding:0 18px 14px}
.prose .disclaimer{font-size:14px;color:var(--muted);margin-top:2em}
.trials{padding:48px 0 40px}
.trials .w{max-width:960px}
.trials h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30}
.trials .lead{margin:12px 0 30px;max-width:760px;font-size:17px}
.trials h2{font:700 var(--t-h3)/1.3 var(--f-sans);letter-spacing:-.01em;color:var(--teal);margin:30px 0 14px}
.tcards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.tcard{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:#fff}
.tcard.on{border-color:var(--sky);box-shadow:0 6px 18px rgba(43,141,191,.12)}
.tcard h3{font:700 19px/1.3 var(--f-sans);color:#1f2a30;margin:8px 0 6px}
.tcard p{font-size:15px;color:#4a5a61}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;background:#1b7a43;color:#fff;font:600 12px/1.4 var(--f-sans);letter-spacing:.03em;text-transform:uppercase}
.badge.soon{background:#e8eef2;color:var(--teal)}
.trials .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
@media (max-width:900px){.seo-grid{grid-template-columns:1fr}.clist{columns:2}}
@media (max-width:520px){.clist{columns:1}.seo-block{padding:40px 0}.faq{padding:40px 0}}

/* patient portal page */
.portal{padding:48px 0 40px}
.portal .w{max-width:860px}
.portal h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30}
.portal .lead{margin:12px 0 22px;font-size:17px}
.portal h2{font:700 var(--t-h3)/1.3 var(--f-sans);letter-spacing:-.01em;color:var(--teal);margin:34px 0 12px}
.portal p{margin:0 0 12px}
.portal .cta{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.portal .note{color:var(--muted);font-size:15px}
.steps{margin:0 0 14px;padding-left:1.4em}
.steps li{margin:6px 0}

/* Provider profile (synthesized pages) */
.provider{padding:44px 0 56px;background:#fff}
.provider .w{max-width:900px}
.pv-top{display:flex;gap:48px;align-items:center;justify-content:center;flex-wrap:wrap}
.pv-photo{width:295px;max-width:100%;height:auto;aspect-ratio:295/350;object-fit:cover;border-radius:4px}
.pv-id{flex:1 1 320px;max-width:446px}
.pv-id h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:rgb(0,113,188);margin:0 0 6px}
.pv-title{font:500 18px/1.4 var(--f-sans);color:#414141;margin:0 0 12px}
.pv-loc{margin:0 0 20px;color:#414141}
.pv-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}


.pv-body{max-width:780px;margin:44px auto 0}
.pv-body h2{font:700 var(--t-h3)/1.3 var(--f-sans);letter-spacing:-.01em;color:var(--teal);margin:28px 0 12px}
.pv-body p{font-size:16px;line-height:1.6;color:#414141;margin:0 0 14px}
.pv-body ul{padding-left:20px;color:#414141;line-height:1.6}
@media (max-width:760px){.pv-top{gap:24px;text-align:center}.pv-cta{justify-content:center}.pv-id{max-width:none}}
.pv-lang{margin:0 0 12px;color:#414141}

/* Direct Access Colonoscopy call-to-action (provider profiles) */
.dac-btn{display:flex;align-items:center;gap:14px;width:100%;max-width:380px;margin:4px 0 0;padding:14px 18px 14px 14px;border-radius:16px;
  background:linear-gradient(135deg,#ff7a2e 0%,#f05a00 55%,#e04800 100%);color:#fff;text-decoration:none;text-align:left;
  box-shadow:0 8px 22px rgba(240,90,0,.32),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.dac-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(240,90,0,.42),inset 0 1px 0 rgba(255,255,255,.25);filter:saturate(1.08)}
.dac-btn:active{transform:translateY(0)}
.dac-btn:focus-visible{outline:3px solid #0071bc;outline-offset:3px}
.dac-ic{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#fff;color:#f05a00;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.dac-tx{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.dac-tx strong{font:600 17px/1.2 var(--f-sans);letter-spacing:.01em}
.dac-tx small{font:400 13px/1.3 var(--f-sans);opacity:.95}
.dac-ar{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.2);transition:transform .18s ease}
.dac-btn:hover .dac-ar{transform:translateX(3px)}
.r.center>.dac-btn{margin:4px auto 0}
.pv-sched{font:400 clamp(18px,1.94vw,26px)/1.4 var(--f-sans);color:#414141;margin:0 0 6px}
@media (max-width:760px){.dac-btn{margin-left:auto;margin-right:auto}}
.dac-btn[lang=vi] .dac-tx strong,.dac-btn[lang=vi] .dac-tx small{font-family:var(--f-body)}

/* Consistent headings everywhere */
main :is(h1,h2,h3,h4,h5,h6){line-height:1.2;letter-spacing:-.015em}
main :is(h1,h2,h3){text-wrap:balance} /* no lone last word on a wrapped heading */
main .t p,main .t li{line-height:1.65}

/* Provider training & education table */
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.edu{padding:24px 0 56px;background:#fff}
.edu .w{max-width:900px}
.edu h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 0 22px}
.edu-t{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 2px 12px rgba(16,40,70,.05)}
.edu-t thead th{background:var(--bg-soft);color:var(--muted);font:600 13px/1.3 var(--f-sans);text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:12px 20px;border-bottom:1px solid var(--line)}
.edu-t tbody th,.edu-t td{padding:16px 20px;vertical-align:middle;border-bottom:1px solid var(--line);text-align:left}
.edu-t tbody tr:last-child>*{border-bottom:0}
.edu-t tbody tr:nth-child(even)>*{background:#fbfcfd}
.edu-t tbody th{font:700 16px/1.35 var(--f-sans);color:var(--teal);width:32%}
.edu-name{display:block;font-weight:500;color:var(--ink)}
.edu-place{display:block;font-size:14px;color:var(--muted);margin-top:2px}
.edu-logo{width:190px;text-align:right}
.edu-logo img{display:inline-block;max-width:170px;max-height:52px;width:auto;height:auto;object-fit:contain}
@media (max-width:760px){
  .edu{padding:16px 0 40px}
  .edu-t thead{display:none}
  .edu-t,.edu-t tbody,.edu-t tr{display:block;width:100%}
  .edu-t tr{display:grid;grid-template-columns:1fr;gap:10px;justify-items:center;text-align:center;padding:18px 16px;border-bottom:1px solid var(--line)}
  .edu-t tbody tr:last-child{border-bottom:0}
  .edu-t tbody th,.edu-t td{display:block;border:0;padding:0;width:auto;text-align:center;background:none!important}
  .edu-t tbody th{font-size:15px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}
  /* Phones: logo only; the school name stays for screen readers and search. */
  .edu-t td.edu-school{position:absolute!important;width:1px!important;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .edu-logo img{max-width:220px;max-height:64px}
  .edu-logo:empty{display:none}
}
@media (max-width:760px){.edu-t.nologo td.edu-school{position:static!important;width:auto!important;height:auto;overflow:visible;clip:auto;white-space:normal}}

/* Accepted insurance (PPO-first) */
.ins{padding:44px 0 32px;background:#fff}
.ins .w{max-width:980px}
.ins-intro{text-align:center;max-width:780px;margin:0 auto 36px}
.ins-kicker{display:inline-block;font:700 13px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--blue);background:#e8f3fb;border-radius:999px;padding:8px 14px;margin:0 0 14px}
.ins h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30;margin:0 0 14px}
.ins .lead{font-size:18px;color:var(--muted);margin:0 0 22px}
.ins-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.ins h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);margin:40px 0 18px;text-align:center}
.ins-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.ins-card{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 1px 6px rgba(16,40,70,.04)}
.ins-card strong{display:block;font:600 16px/1.3 var(--f-sans);color:#1f2a30}
.ins-card small{display:block;font-size:13.5px;color:var(--muted);margin-top:2px}
.ins-ck{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e6f6ee;color:#15803d;margin-top:-2px}
.ins-mc{border-color:#b9dcf2;background:#f3f9fd}
.ins-note{text-align:center;color:var(--muted);margin:16px 0 0}
.ins-why{margin:44px 0 0;padding:28px 30px;border-radius:18px;background:var(--bg-soft)}
.ins-why h2{margin-top:0}
.ins-points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px 28px}
.ins-points li{padding-left:18px;border-left:3px solid var(--blue);line-height:1.55}
.ins-points strong{color:#1f2a30}
.ins-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.ins-steps li{counter-increment:s;position:relative;padding:18px 18px 18px 64px;border:1px solid var(--line);border-radius:14px;line-height:1.55}
.ins-steps li::before{content:counter(s);position:absolute;left:18px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--blue);color:#fff;font:700 16px/32px var(--f-sans);text-align:center}
.ins-steps strong{display:block;color:#1f2a30}
.ins-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:44px 0 0}
.ins-box{padding:22px 24px;border:1px solid var(--line);border-radius:16px}
.ins-box h3{font:700 var(--t-h3)/1.3 var(--f-sans);color:var(--teal);margin:0 0 8px}
.ins-box p{margin:0 0 6px}
.ins-box ul{margin:0 0 12px;padding-left:20px;line-height:1.6}
.ins-out{color:#b42318;font-weight:600;margin-top:10px!important}
.ins-box details{margin:4px 0 10px}
.ins-box summary{cursor:pointer;color:var(--blue);font-weight:600}
.ins-ipa{margin-top:8px!important}
.ins-small{font-size:14px;color:var(--muted)}
.ins-notices{margin:28px 0 0;padding:20px 24px;border-radius:16px;background:#fff8ec;border:1px solid #f6dfb2}
.ins-notices h3{font:700 18px/1.3 var(--f-sans);color:#8a5a00;margin:0 0 10px}
.ins-notices ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ins-notices li{display:grid;grid-template-columns:170px 1fr;gap:12px;line-height:1.5}
.ins-notices time{font-weight:600;color:#8a5a00}
.ins-disc{font-size:14px;color:var(--muted);text-align:center;margin:20px 0 0}
@media (max-width:760px){
  .ins{padding:28px 0 20px}
  .ins-two{grid-template-columns:1fr}
  .ins-why{padding:22px 18px}
  .ins-notices li{grid-template-columns:1fr;gap:2px}
  .ins-grid{grid-template-columns:1fr 1fr;gap:10px}
  .ins-card{padding:12px;gap:8px}
  .ins-ck{width:24px;height:24px}
}
@media (max-width:380px){.ins-grid{grid-template-columns:1fr}}

/* Appointment page: Direct Access Colonoscopy first */
/* Top banner on every page: full screen width, same height, tint and title style */
.banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(220px,22vw,340px);padding:40px 0;
  background-color:#1d2b38;background-size:cover;background-position:center;color:#fff;text-align:center}
.banner::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(10,25,45,.45)}
.banner .w{width:100%}
.banner .banner-t{font:800 var(--t-hero)/1.1 var(--f-sans);letter-spacing:-.02em;margin:0;color:#fff;text-wrap:balance}
.banner p:not(.banner-t){font-size:18px;max-width:640px;margin:10px auto 0;opacity:.95}
.dac-hero{padding:0 0 48px;background:linear-gradient(180deg,#fff 0,#fff7f1 100%)}
.dac-hero .w{max-width:1080px}
.dac-card{position:relative;margin-top:-36px;display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;padding:40px;border-radius:24px;color:#fff;
  background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.18) 0,transparent 40%),linear-gradient(135deg,#ff7a2e 0%,#f05a00 55%,#d94400 100%);box-shadow:0 18px 44px rgba(240,90,0,.30)}
.dac-badge{display:inline-block;margin:0 0 14px;padding:7px 14px;border-radius:999px;background:#fff;color:#c23d00;font:800 13px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.08em}
.dac-card h2{font:800 clamp(30px,4.2vw,48px)/1.08 var(--f-sans);letter-spacing:-.025em;margin:0 0 14px;color:#fff}
.dac-card h2 span{display:block;color:#ffe3c9}
.dac-lead{font-size:18px;line-height:1.55;margin:0 0 24px;color:#fff;opacity:.97}
.dac-go{display:inline-flex;align-items:center;gap:12px;padding:18px 30px;border-radius:999px;background:#fff;color:#d94400;text-decoration:none;font:800 19px/1 var(--f-sans);box-shadow:0 8px 22px rgba(0,0,0,.18);transition:transform .15s,box-shadow .15s}
.dac-go:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.24);color:#b83a00}
.dac-go svg{transition:transform .15s}.dac-go:hover svg{transform:translateX(4px)}
.dac-go:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media (prefers-reduced-motion:no-preference){.dac-go{animation:dacpulse 2.6s ease-in-out 1.2s 3}}
@keyframes dacpulse{0%,100%{box-shadow:0 8px 22px rgba(0,0,0,.18),0 0 0 0 rgba(255,255,255,.7)}50%{box-shadow:0 8px 22px rgba(0,0,0,.18),0 0 0 12px rgba(255,255,255,0)}}
.dac-sub{margin:14px 0 0;font-size:14.5px;color:#fff;opacity:.95}
.dac-sub a{color:#fff;font-weight:600}
.dac-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.dac-steps li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.14);backdrop-filter:blur(2px);line-height:1.45}
.dac-steps span{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#d94400;font:800 16px/1 var(--f-sans)}
.dac-steps strong{display:block;font:700 16.5px/1.3 var(--f-sans);margin-bottom:2px}
.dac-fit{max-width:820px;margin:28px auto 0;padding:22px 26px;border-radius:18px;background:#fff;border:1px solid #fbd9c2}
.dac-fit h3{font:700 var(--t-h3)/1.3 var(--f-sans);color:#c2410c;margin:0 0 10px}
.dac-fit ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.dac-fit li{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.dac-fit li svg{flex:none;margin-top:3px;color:#15803d}
.appt-visit{padding:52px 0 56px;background:#fff}
.appt-visit .w{max-width:900px}
.appt-visit h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 0 10px}
.appt-visit .lead{text-align:center;color:var(--muted);margin:0 auto 22px;max-width:640px}
.appt-widget{display:block;width:100%;border:0;border-radius:14px}
.appt-alt{text-align:center;margin:14px 0 0}
.appt-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0 0}
.appt-links a{display:block;padding:18px 20px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.appt-links a:hover{border-color:var(--blue);box-shadow:0 4px 14px rgba(0,113,188,.1)}
.appt-links strong{display:block;font:700 17px/1.3 var(--f-sans);color:var(--blue);margin-bottom:4px}
.appt-links strong::after{content:" →"}
.appt-links span{font-size:14.5px;color:var(--muted)}
.dac-sticky{display:none}
@media (max-width:760px){
  .banner{min-height:200px}
  .dac-card{grid-template-columns:1fr;padding:26px 20px;gap:22px;margin-top:-28px;border-radius:20px}
  .dac-go{width:100%;justify-content:center;padding:18px 20px}
  .dac-fit ul{grid-template-columns:1fr}
  .dac-fit{padding:18px}
  .appt-links{grid-template-columns:1fr}
  .dac-sticky{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 12px 18px;border-radius:16px;
    background:linear-gradient(135deg,#ff7a2e,#e04800);color:#fff;text-decoration:none;box-shadow:0 10px 26px rgba(224,72,0,.4);transition:transform .25s,opacity .25s}
  .dac-sticky strong{display:block;font:800 15px/1.2 var(--f-sans)}
  .dac-sticky span{font-size:13.5px;line-height:1.3}
  .dac-sticky svg{flex:none;width:34px;height:34px;padding:7px;border-radius:50%;background:rgba(255,255,255,.22)}
  .dac-sticky.hide{transform:translateY(140%);opacity:0;pointer-events:none}
  body:has(.dac-sticky) .fbar{padding-bottom:96px}
}

/* Direct Access Colonoscopy page */
.dac-ins{padding:8px 0 44px;background:#fff7f1}
.dac-ins .w,.dac-elig .w,.dac-docs .w,.dac-where .w{max-width:1080px}
.dac-ins h2,.dac-docs h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:#c2410c;text-align:center;margin:0 0 18px}
.dac-ins-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.dac-ins-grid li{position:relative;padding:20px 18px 18px 54px;border-radius:16px;background:#fff;border:2px solid #fbd0b0;box-shadow:0 4px 14px rgba(240,90,0,.08)}
.dac-ins-grid li svg{position:absolute;left:18px;top:20px;width:26px;height:26px;padding:4px;border-radius:50%;background:#15803d;color:#fff}
.dac-ins-grid strong{display:block;font:800 19px/1.25 var(--f-sans);color:#1f2a30}
.dac-ins-grid small{display:block;font-size:14px;line-height:1.4;color:var(--muted);margin-top:4px}
.dac-ins-note{text-align:center;color:var(--muted);margin:18px 0 0}
.dac-elig{padding:48px 0;background:#fff}
.dac-elig .w{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dac-col{padding:24px 26px;border-radius:18px;border:1px solid var(--line)}
.dac-col h3{font:700 var(--t-h3)/1.3 var(--f-sans);margin:0 0 12px}
.dac-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dac-col li{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.dac-col li svg{flex:none;margin-top:3px}
.dac-col.yes{background:#f2fbf5;border-color:#c6ead3}.dac-col.yes h3{color:#15803d}.dac-col.yes li svg{color:#15803d}
.dac-col.no{background:#fff7f5;border-color:#f6d3cb}.dac-col.no h3{color:#b42318}.dac-col.no li svg{color:#b42318}
.dac-col p{margin:14px 0 0;font-size:15px;color:var(--muted)}
.dac-docs{padding:8px 0 52px;background:#fff}
.dac-docs h2{color:var(--blue)}
.dac-docs .lead{text-align:center;color:var(--muted);margin:-8px auto 22px}
.dac-doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dac-doc{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);background:#fff;transition:box-shadow .15s,transform .15s}
.dac-doc:hover{box-shadow:0 10px 26px rgba(16,40,70,.1);transform:translateY(-2px)}
.dac-doc img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:50% 20%}
.dd-b{display:flex;flex-direction:column;gap:4px;padding:16px 18px 18px}
.dd-b strong{font:800 19px/1.25 var(--f-sans);color:var(--blue)}
.dd-b em{font-style:normal;font-size:13.5px;font-weight:600;color:var(--teal)}
.dd-b span{font-size:15px;line-height:1.5}
.dd-b .dd-more{margin-top:6px;color:var(--blue);font-weight:600}
.dac-where{padding:0 0 52px;background:#fff}
.dac-where-card{display:grid;grid-template-columns:minmax(0,1fr) 1.8fr;gap:28px;align-items:center;padding:30px 32px;border-radius:20px;background:var(--bg-soft);border:1px solid var(--line)}
.dac-where-img{display:block;border-radius:14px;overflow:hidden;box-shadow:0 4px 14px rgba(10,25,45,.12)}
.dac-where-img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .2s}
.dac-where-img:hover img{transform:scale(1.03)}
.dac-where h2{font:800 var(--t-h2)/1.2 var(--f-sans);color:var(--blue);margin:0 0 10px}
.dac-where p{margin:0 0 10px;line-height:1.55}
.dac-where-cta{grid-column:1/-1;text-align:center;border-top:1px solid var(--line);padding-top:22px}
.vdhc-lockup{display:flex;gap:16px;align-items:center;margin:0 0 12px}.vdhc-lockup p{margin:0!important}.vdhc-lockup .vdhc-logo{margin:0;max-height:96px;flex:none}
.dac-where-cta .dac-go{background:linear-gradient(135deg,#ff7a2e,#e04800);color:#fff}
.dac-where-cta .dac-go:hover{color:#fff}
.dac-small{font-size:14.5px;color:var(--muted)}
@media (max-width:900px){.dac-ins-grid{grid-template-columns:1fr 1fr}.dac-doc-grid{grid-template-columns:1fr 1fr}.dac-where-card{grid-template-columns:1fr 1.4fr}}
@media (max-width:760px){
  .dac-elig .w,.dac-where-card{grid-template-columns:1fr}
  .dac-col{padding:20px 18px}
  .dac-where-card{padding:22px 18px}
  .dac-where-cta .dac-go{width:100%;justify-content:center}
}
@media (max-width:560px){.dac-ins-grid,.dac-doc-grid{grid-template-columns:1fr}.dac-doc{flex-direction:row}.dac-doc img{width:120px;aspect-ratio:3/4;flex:none}.dd-b{padding:12px 14px}}

/* Direct Access questionnaire */
.q-wrap{padding:40px 0 64px;background:linear-gradient(180deg,#fff7f1 0,#fff 320px)}
.q-wrap .w{max-width:760px}
.q-back{margin:0 0 14px;font-size:15px}
.q-back a{color:var(--blue);text-decoration:none;font-weight:600}
.q-wrap h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30;margin:0 0 10px}
.q-intro{color:var(--muted);font-size:17px;margin:0 0 22px}
.q-bar{height:8px;border-radius:999px;background:#fde4d2;overflow:hidden}
.q-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff7a2e,#e04800);border-radius:999px;transition:width .3s}
.q-count{font:600 14px/1 var(--f-sans);color:#c2410c;margin:10px 0 18px}
#dacq{padding:28px;border-radius:20px;background:#fff;border:1px solid #fbd9c2;box-shadow:0 10px 30px rgba(240,90,0,.08)}
.q-step{border:0;margin:0;padding:0;min-width:0}
.q-step legend{font:800 var(--t-h2)/1.25 var(--f-sans);letter-spacing:-.015em;color:#1f2a30;margin:0 0 8px;padding:0;outline:none}
.q-help{color:var(--muted);margin:0 0 14px}
.q-opts{display:grid;gap:10px;margin-top:12px}
.q-opt{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:2px solid var(--line);border-radius:14px;cursor:pointer;line-height:1.4;transition:border-color .15s,background .15s}
.q-opt:hover{border-color:#fbb98a}
.q-opt input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:#e04800}
.q-opt:has(input:checked){border-color:#f05a00;background:#fff4ec}
.q-opt:has(input:focus-visible){outline:3px solid #0071bc;outline-offset:2px}
.q-none{border-style:dashed}
.q-row,.q-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.q-grid{grid-template-columns:1fr 1fr}
.q-wide{grid-column:1/-1}
.q-sub{margin:10px 0 -4px;font:700 13px/1.3 var(--f-sans);letter-spacing:.06em;text-transform:uppercase;color:#02566F}
.q-holder{margin-top:0}
.q-ins{margin-top:0}
.q-card-files{display:grid;grid-template-columns:1fr;max-width:480px;gap:10px;margin-top:8px}
.q-file{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:2px dashed var(--line);border-radius:12px;background:#fff;font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;cursor:pointer}
.q-file{cursor:default}
.q-file-btns{display:flex;flex-wrap:wrap;gap:8px}
.q-file-btns .btn{position:relative;overflow:hidden;cursor:pointer;font-size:15px;padding:9px 16px;min-height:0}
.q-file-btns input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0} /* (the button opens the camera or the photos) */
.q-file-prev{display:block;max-width:100%;max-height:150px;border-radius:8px;border:1px solid var(--line);object-fit:contain;background:#f6f8fa}
.q-file-prev[hidden]{display:none}
@media (hover:hover) and (pointer:fine){.q-cam{display:none}} /* (Take a photo: phones and tablets; a computer uploads one) */
.q-file-name{font:400 13px/1.3 var(--f-body);color:#15803d}

.q-card-res{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff8e1;border:1px solid #f1d98a}
.q-card-res.ok{background:#ecf8f0;border-color:#9fd1b2}
.q-card-msg{margin:0;font-weight:600}
.q-cb-q{margin:10px 0 6px}
.q-ins-note{margin:0;color:#15803d}
.q-grid[hidden],.q-row[hidden],.q-opts[hidden]{display:none} /* (the policyholder's fields: only after "No, someone else is") */
.q-field select{appearance:auto}
.q-field{display:flex;flex-direction:column;gap:6px;font:600 14.5px/1.3 var(--f-sans);color:#1f2a30}
.q-field input,.q-field select{font:400 17px/1.3 var(--f-body);padding:12px 14px;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%;min-height:50px}
.q-field input:focus,.q-field select:focus{outline:none;border-color:#f05a00;box-shadow:0 0 0 3px rgba(240,90,0,.15)}
.q-bmi{margin:12px 0 0;font-weight:600;color:var(--teal)}
.q-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.q-consent{display:flex;gap:12px;align-items:flex-start;margin:18px 0 0;line-height:1.45;cursor:pointer}
.q-consent input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:#e04800}
.q-miss,.q-err{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#fef3f2;color:#b42318;font-weight:600}
.q-err a{color:#b42318}
.q-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.q-next{margin-left:auto;min-width:160px;background:linear-gradient(135deg,#ff7a2e,#e04800);font-size:17px}
.q-next:disabled{opacity:.6;cursor:wait}
.q-result{padding:30px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(16,40,70,.06);outline:none}
.q-result h2{font:800 var(--t-h2)/1.2 var(--f-sans);color:var(--blue);margin:0 0 10px}
.q-result p{margin:0 0 12px;line-height:1.6}
.q-result .btn{margin:6px 8px 0 0}
.q-stay{margin-left:6px;padding:0;border:0;background:none;color:var(--link);font:inherit;text-decoration:underline;cursor:pointer}
.q-yes{border-color:#c6ead3;background:#f2fbf5}.q-yes h2{color:#15803d}
.q-plan .q-opt span{display:grid;gap:3px}.q-plan .q-opt strong{font-size:1.05em}.q-plan .q-opt small{color:var(--muted,#5b6b7d);font-size:.95em}
.q-book-widget{display:block;width:100%;border:0;margin:6px 0 4px}
.q-book-alt{font-size:.95em}
.q-book-note{margin:0 0 10px;padding:10px 14px;background:#fff8e1;border:1px solid #f1d98a;border-radius:10px;font-size:.95em}
.q-book-later{font-size:.95em;color:#4a5560}
.q-fine{font-size:13.5px;color:var(--muted);margin:20px 0 0;text-align:center}
.appt-note{margin:0 auto 22px;max-width:700px;padding:16px 18px;border-radius:14px;background:#eef6fc;border:1px solid #cfe5f5;color:#1f2a30;line-height:1.5;text-align:center}
@media (max-width:760px){
  #dacq{padding:20px 16px}
  .q-row{grid-template-columns:1fr 1fr}.q-row .q-field:last-child{grid-column:1/-1}
  .q-grid{grid-template-columns:1fr}
  .q-result{padding:22px 18px}
  .q-nav .btn{flex:1}
}
.q-nav [hidden],.q-result[hidden],#dacq[hidden]{display:none!important}

/* About Us: provider cards */
.team{padding:52px 0 60px;background:#fafafa}
.team .w{max-width:1160px}
.team h2{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:var(--blue);text-align:center;margin:0 0 10px}
.team .lead{text-align:center;color:var(--muted);margin:0 auto 28px;max-width:620px}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.team-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 2px 8px rgba(16,40,70,.05);transition:box-shadow .18s,transform .18s}
.team-card:hover{box-shadow:0 14px 32px rgba(16,40,70,.14);transform:translateY(-3px)}
.team-card:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.team-card img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%}
.tc-b{flex:1;display:flex;flex-direction:column;gap:3px;padding:18px 18px 20px;text-align:center}
.tc-b strong{font:800 19px/1.25 var(--f-sans);color:#1f2a30}
.tc-t{font-size:15px;color:var(--teal);font-weight:600}
.tc-l{font-size:14px;color:var(--muted);margin-bottom:14px}
.tc-go{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:center;margin-top:auto;padding:11px 20px;border-radius:999px;background:var(--blue);color:#fff;font:700 15px/1 var(--f-sans);transition:background .18s}
.tc-go svg{transition:transform .18s}
.team-card:hover .tc-go{background:#005a96}.team-card:hover .tc-go svg{transform:translateX(3px)}
@media (max-width:980px){.team-grid{grid-template-columns:1fr 1fr}}
@media (max-width:460px){.team-grid{gap:12px}.tc-b{padding:14px 10px 16px}.tc-b strong{font-size:16px}.tc-t,.tc-l{font-size:13px}.tc-go{padding:9px 12px;font-size:13px;white-space:nowrap}.tc-go svg{display:none}}

/* Provider profile: foreign languages at the bottom */
.pv-flang{margin-top:20px!important}
.pv-flang span{color:rgb(0,113,188)}

/* Contact Us */
.contact{padding:48px 0 44px;background:#fff}
.contact .w{max-width:1080px}
.ct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.contact .ct-grid{grid-template-columns:repeat(2,1fr)}
.ct-card{padding:26px 24px;border-radius:18px;background:var(--bg-soft);border:1px solid var(--line);line-height:1.6}
.ct-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(16,40,70,.08);margin-bottom:14px}
.ct-card h2{font:800 var(--t-h3)/1.3 var(--f-sans);color:var(--blue);margin:0 0 8px}
.ct-card p{margin:0 0 10px}
.ct-mail{font-weight:700;font-size:18px;word-break:break-word}
.ct-small{font-size:14.5px;color:var(--muted)}
.ct-note{text-align:center;margin:26px 0 0;color:var(--muted)}
@media (max-width:860px){.ct-grid,.contact .ct-grid{grid-template-columns:1fr}}

/* For Providers (/for-providers) and the online form page (/referral-form) */
.ref-hero{padding:0 0 44px;background:linear-gradient(180deg,#fff 0,#eef7fd 100%)}
.ref-hero .w,.ref-how .w,.ref-final .w{max-width:1080px}
.ref-card{position:relative;margin-top:-36px;display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:center;padding:40px;border-radius:24px;color:#fff;
  background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.2) 0,transparent 40%),linear-gradient(135deg,#1aa3f0 0%,#0a7fd4 50%,#0059a8 100%);box-shadow:0 18px 44px rgba(10,127,212,.32)}
.ref-badge{display:inline-block;margin:0 0 14px;padding:7px 14px;border-radius:999px;background:#fff;color:#0062b5;font:800 13px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.08em}
.ref-card h2{font:800 clamp(30px,4.2vw,48px)/1.08 var(--f-sans);letter-spacing:-.025em;margin:0 0 14px;color:#fff}
.ref-card h2 span{display:block;color:#d4efff}
.ref-lead{font-size:18px;line-height:1.55;margin:0 0 24px;color:#fff;opacity:.97}
.ref-go{display:inline-flex;align-items:center;gap:12px;padding:18px 30px;border-radius:999px;background:#fff;color:#0062b5;text-decoration:none;font:800 19px/1 var(--f-sans);box-shadow:0 8px 22px rgba(0,0,0,.18);transition:transform .15s,box-shadow .15s}
.ref-go:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.24);color:#004a8c}
.ref-go svg{transition:transform .15s}.ref-go:hover svg{transform:translateX(4px)}
.ref-go:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media (prefers-reduced-motion:no-preference){.ref-card .ref-go{animation:dacpulse 2.6s ease-in-out 1.2s 3}}
.ref-sub{margin:14px 0 0;font-size:14.5px;color:#fff;opacity:.95}
.ref-sub a{color:#fff;font-weight:600}
.ref-points{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ref-points li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.15);line-height:1.45}
.ref-points li>span{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff;color:#0062b5}
.ref-points li>span svg{width:22px;height:22px}
.ref-points strong{display:block;font:700 16.5px/1.3 var(--f-sans);margin-bottom:2px}
.ref-pick{padding:44px 0 40px;background:#fff}
.ref-pick .w{max-width:1080px}
.ref-pick h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:#1f2a30;text-align:center;margin:0 0 22px}
.ref-pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ref-path{display:flex;flex-direction:column;padding:26px 26px 24px;border-radius:20px;border:2px solid;line-height:1.55}
.ref-path p{margin:0 0 12px}
.ref-path h3{font:800 clamp(22px,2.4vw,28px)/1.2 var(--f-sans);margin:0 0 6px}
.ref-path-k{font:800 12.5px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px!important}
.ref-path-no{font-weight:700}
.ref-path-cta{margin:auto 0 0!important;padding-top:8px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.ref-path-cta a:not(.btn){font-weight:600}
.ref-path--dac{background:#fff7f1;border-color:#fbb98a}
.ref-path--dac .ref-path-k,.ref-path--dac h3{color:#c2410c}.ref-path--dac .ref-path-no{color:#15803d}
.ref-path--consult{background:#eef7fd;border-color:#8cc8ef}
.ref-path--consult .ref-path-k,.ref-path--consult h3{color:#0062b5}.ref-path--consult .ref-path-no{color:#0062b5}
.ref-btn-dac{background:linear-gradient(135deg,#ff7a2e,#e04800);gap:10px}
.ref-path .btn svg{width:18px;height:18px}
.ref-pick + .dac-hero{padding-top:8px}
.ref-pick + .dac-hero .dac-card{margin-top:0}
.ref-how-lead{text-align:center;color:var(--muted);margin:-8px auto 26px;max-width:720px}
.rf-dac-note{margin-top:36px;margin-bottom:-12px}
.rf-dac-note p{max-width:760px;margin:0 auto;padding:14px 18px;border-radius:14px;background:#fff7f1;border:1px solid #fbd0b0;font-size:15.5px;line-height:1.55}
@media (max-width:860px){.ref-pick-grid{grid-template-columns:1fr}}
.ref-how{padding:48px 0 52px;background:#fff}
.ref-how h2,.ref-why h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 0 22px}
.ref-ways{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ref-way{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:28px 24px 24px;border-radius:18px;background:var(--bg-soft);border:1px solid var(--line);line-height:1.55}
.ref-way p{margin:0 0 18px;flex:1}
.ref-way h3{font:800 var(--t-h3)/1.3 var(--f-sans);color:#1f2a30;margin:0 0 8px}
.ref-way h3 em{display:inline-block;margin-left:6px;padding:4px 9px;border-radius:999px;background:#15803d;color:#fff;font:800 11.5px/1 var(--f-sans);font-style:normal;text-transform:uppercase;letter-spacing:.06em;vertical-align:middle}
.ref-way--main{background:#eef7fd;border:2px solid #0a7fd4;box-shadow:0 10px 26px rgba(10,127,212,.14)}
.ref-n{position:absolute;top:-14px;left:22px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--blue);color:#fff;font:800 15px/1 var(--f-sans)}
.ref-way--main .ref-n{background:#0a7fd4}
.ref-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(16,40,70,.08);margin-bottom:14px}
.ref-btn{gap:10px}.ref-btn svg{width:18px;height:18px}
.ref-note{text-align:center;color:var(--muted);margin:22px 0 0;font-size:15px}
.ref-why{padding:52px 0;background:var(--bg-soft)}
.ref-why .w{max-width:1100px}
.ref-why .lead{text-align:center;color:var(--muted);max-width:760px;margin:0 auto 28px}
.ref-why .ct-card{background:#fff}
.ref-why .ct-card h3{font:800 var(--t-h3)/1.3 var(--f-sans);color:var(--blue);margin:0 0 8px}
.ref-hero--flow{padding-top:48px}
.ref-hero--flow .ref-card{margin-top:0}
.ref-final{padding:12px 0 60px;background:#fff}
.ref-final-card{display:grid;grid-template-columns:1.3fr auto;gap:24px;align-items:center;padding:30px 34px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#1aa3f0 0%,#0a7fd4 50%,#0059a8 100%)}
.ref-final-card h2{font:800 var(--t-h2)/1.2 var(--f-sans);color:#fff;margin:0 0 6px}
.ref-final-card p{margin:0}.ref-final-card a:not(.ref-go){color:#fff;font-weight:700}
.rf-back{padding-top:22px;padding-bottom:0;margin-bottom:-20px;font-size:15px}
@media (max-width:860px){
  .ref-card,.ref-final-card{grid-template-columns:1fr;padding:28px 22px}
  .ref-ways{grid-template-columns:1fr;gap:26px}
  .ref-go{padding:16px 22px;font-size:17px}
}

/* Direct access for HCPs */
.hcp-who{grid-template-columns:repeat(3,1fr)}
.dac-col li span strong{color:inherit}
.hcp-no li span{color:var(--ink)}
@media (max-width:900px){.hcp-who{grid-template-columns:1fr}}
.hcp-no+.dac-col{align-self:start}
@media (max-width:760px){.edu-t tr.nl td.edu-school{position:static!important;width:auto!important;height:auto;overflow:visible;clip:auto;white-space:normal}}

/* medical records page */
.records .rec-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 8px}
.records .rec-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:22px 22px 10px}
.records .rec-card h2{margin:0 0 10px}
.records .rec-card .cta{margin:14px 0 12px}
@media (max-width:760px){.records .rec-cards{grid-template-columns:1fr}}
/* Provider profiles (doctors + NP): same name size everywhere, "Schedule Appointment" clearly smaller */
.pv-name,.pv-id h2{font:800 var(--t-h1)/1.15 var(--f-sans);text-wrap:balance;letter-spacing:normal;color:rgb(0,113,188);text-align:left;margin:0 0 6px}
.pv-title{font-size:var(--t-body);font-weight:400}
.pv-sched,.provider .pv-sched{font:700 var(--t-h3)/1.3 var(--f-sans);color:var(--ink);margin:0 0 6px}
.pv-id{max-width:520px;container-type:inline-size}
/* One line, one size on every profile: sized from the (equal-width) text column so the longest name fits */
.pv-name,.pv-id h2{white-space:nowrap;font-size:min(34px,7.4cqi)}
@media (max-width:760px){.pv-name,.pv-id h2{font-size:min(34px,calc((100vw - 80px)/13.4))}}
@media (max-width:760px){.pv-name,.pv-id h2,.pv-sched,.pv-lang{text-align:center}
  .r:has(>.t>.pv-sched),.r:has(>.pv-lang),.r:has(>.pv-sched){margin-left:auto!important;margin-right:auto!important}}
.pv-body p{font-size:var(--t-body);line-height:1.65}

/* provider referral form */
.rf-wrap{padding:44px 0 64px;background:#fff}
.rf-wrap .w{max-width:880px}
.rf-wrap h1{font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.02em;color:#1f2a30;margin:0 0 14px}
.rf-wrap h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);margin:0 0 12px}
.rf-intro{margin:0 0 10px}
.rf-warn{background:#fff4e5;border:1px solid #f2c27d;border-radius:10px;padding:12px 16px;margin:0 0 24px}
.rf-sec{border:1px solid var(--line);border-radius:12px;padding:8px 22px 22px;margin:0 0 20px;min-width:0}
.rf-sec legend{font:700 var(--t-h3)/1.3 var(--f-sans);color:var(--teal);padding:0 8px}
.rf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 16px;margin:10px 0}
.rf-f{display:flex;flex-direction:column;gap:6px;font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;min-width:0}
.rf-wide{grid-column:1/-1}
.rf-f input,.rf-f select,.rf-f textarea{font:400 16px/1.3 var(--f-body);padding:11px 13px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);width:100%;min-height:46px}
.rf-f textarea{resize:vertical;min-height:120px}
.rf-f input[type=file]{padding:9px 10px;font-size:15px}
.rf-f input:focus,.rf-f select:focus,.rf-f textarea:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(0,113,188,.15)}
.rf-req{color:#c0392b;font-weight:700}
.rf-sub{font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;margin:18px 0 0}
.rf-radio{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:16px 0 4px}
.rf-lab{font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;flex:1 1 100%}
.rf-opt{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.rf-opt input{width:18px;height:18px;accent-color:var(--sky)}
.rf-help,.rf-fine{color:var(--muted);font-size:14.5px;margin:4px 0 0;font-weight:400}
.rf-files{margin:6px 0 0;padding-left:20px;font:400 14.5px/1.5 var(--f-body)}
.rf-confirm{display:flex;margin:18px 0 0}
.rf-confirm[hidden]{display:none}
.rf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rf-err{background:#fdecea;border:1px solid #e5a29b;color:#8a1f13;border-radius:10px;padding:12px 16px;margin:0 0 14px}
.rf-submit{margin-top:4px;min-width:200px}
.rf-submit[disabled]{opacity:.6;cursor:progress}
.rf-done{background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:26px 24px}
@media (max-width:760px){.rf-grid{grid-template-columns:1fr 1fr}.rf-sec{padding:6px 14px 18px}}
@media (max-width:520px){.rf-grid{grid-template-columns:1fr}}

.rf-search{margin:8px 0 2px}
.rf-search-lab{display:block;font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;margin:0 0 6px}
.rf-search gmp-place-autocomplete{display:block;width:100%;color-scheme:light;border-radius:10px;border:2px solid var(--line)}

.rf-auth{background:#fdecea;border:1px solid #e5a29b;border-left:5px solid #c0392b;color:#a01e12;border-radius:10px;padding:12px 16px;margin:12px 0 4px;font-weight:500}
.rf-auth strong{color:#a01e12}
.rf-cta{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.rf-grid[hidden],.rf-f[hidden],.rf-search[hidden],.rf-auth[hidden]{display:none}

.rf-lookup{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px 6px;margin:8px 0 12px}
.rf-lookup>.rf-f{margin:0 0 6px}
.rf-lookup-row{display:flex;gap:10px;flex-wrap:wrap}
.rf-lookup-row input{flex:1 1 260px;font:400 16px/1.3 var(--f-body);padding:11px 13px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);min-height:46px;min-width:0}
.rf-lookup-row select{flex:0 1 180px;font:400 16px/1.3 var(--f-body);padding:11px 13px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);min-height:46px}
.rf-lookup-row input:focus,.rf-lookup-row select:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(0,113,188,.15)}
.rf-lookup-row .btn[disabled]{opacity:.6;cursor:progress}
.rf-npi-res{list-style:none;margin:6px 0 8px;padding:0}
.rf-npi-res li{margin:6px 0}
.rf-npi-res button{width:100%;text-align:left;font:500 15px/1.4 var(--f-body);padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);cursor:pointer}
.rf-npi-res button:hover,.rf-npi-res button:focus-visible{border-color:var(--sky);background:#f0f7fc;outline:none}

.rr-back{margin:0 0 14px;font-size:15px}
.rr-combo{position:relative}
.rr-sug[hidden]{display:none}
.rr-sug{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:20;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 28px rgba(0,0,0,.14);max-height:300px;overflow:auto}
.rr-sug li{padding:9px 12px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.rr-sug li:hover,.rr-sug li[aria-selected=true]{background:#f0f7fc}
.rr-sug-name{font:600 16px/1.3 var(--f-sans);color:#1f2a30}
.rr-sug-sub{font:400 13.5px/1.3 var(--f-body);color:var(--muted)}
.rr-names{margin:0}
.rr-help{margin:6px 0 10px}
.rr-note{background:#eaf4fa;border:1px solid #b9d9ec;border-left:5px solid var(--sky);border-radius:10px;padding:12px 16px;margin:0 0 24px}
.rr-note[hidden]{display:none}
.rr-pt{border:1px solid var(--line);border-radius:10px;padding:10px 14px 4px;margin:0 0 12px;background:var(--bg-soft)}
.rr-pt-head{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--teal);font:700 15px/1.3 var(--f-sans)}
.rr-del{background:none;border:0;color:#a01e12;font:600 14px/1.3 var(--f-sans);text-decoration:underline;cursor:pointer;padding:6px 4px}
.rr-del[hidden]{display:none}
.rr-add-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:4px 0 8px}
.rr-add-row .btn[disabled]{opacity:.6;cursor:not-allowed}
.rr-help{margin:10px 0 12px}
.rr-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:16px 0 4px}
.rr-checks .rf-lab{grid-column:1/-1}
@media (max-width:520px){.rr-checks{grid-template-columns:1fr}}

.q-search[hidden]{display:none}
.q-search-lab{display:block;font:600 14.5px/1.3 var(--f-sans);color:#1f2a30;margin:0 0 6px}
.q-search gmp-place-autocomplete{display:block;width:100%;color-scheme:light;border-radius:12px;border:2px solid var(--line)}
.q-pharm-help{margin:-6px 0 0}

.q-combo{position:relative}
.q-combo label{font:600 14.5px/1.3 var(--f-sans);color:#1f2a30}
.q-combo input{font:400 17px/1.3 var(--f-body);padding:12px 14px;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%;min-height:50px}
.q-combo input:focus{outline:none;border-color:#f05a00;box-shadow:0 0 0 3px rgba(240,90,0,.15)}
.q-sug[hidden]{display:none}
.q-sug{position:absolute;left:0;right:0;top:calc(100% - 22px);z-index:20;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px rgba(0,0,0,.14);max-height:280px;overflow:auto}
.q-sug li{padding:9px 12px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.q-sug li:hover,.q-sug li[aria-selected=true]{background:#fff2e8}
.q-sug-name{font:600 16px/1.3 var(--f-sans);color:#1f2a30}
.q-sug-sub{font:400 13.5px/1.3 var(--f-body);color:var(--muted)}
.q-sug-help{font:400 14px/1.4 var(--f-body);color:var(--muted)}

.prose figure img{display:block;border-radius:8px}.prose figcaption{font-size:13px;color:var(--muted);margin-top:6px}
.hb-facts{list-style:none;padding:0;margin:24px 0 8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.hb-facts li{background:var(--pale,#eaf4fa);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.hb-facts strong{color:var(--teal);font-size:17px}.hb-facts span{font-size:14px;color:var(--muted)}
.hb-video{margin:28px 0 8px;border-radius:12px;overflow:hidden}
.hb-steps{padding-left:22px}.hb-steps li{margin:0 0 10px}
.hb-note{background:#fff7e6;border-left:4px solid #e3a008;padding:12px 16px;border-radius:6px;margin:24px 0}
.portal.hb .tbl{margin:8px 0 12px}
.hb-cta{background:var(--pale,#eaf4fa);border-radius:14px;padding:22px 24px;margin:32px 0 16px}.hb-cta h2{margin-top:0}
.hb-more{color:var(--muted)}
.site-f .fsub{margin:-4px 0 10px;font-size:14px}
.billing .tbl td:first-child{white-space:nowrap}
/* PPO & Medicare booking band */
.ppo-band{background:linear-gradient(135deg,#eaf4fa,#f6fafd);border-top:1px solid #d7e8f2;padding:36px 0;margin-top:24px}
.ppo-in{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:center;max-width:1040px;margin:0 auto}
.ppo-k{font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:13px;color:var(--teal);margin:0 0 6px}
.ppo-band h2{font:700 var(--t-h3)/1.25 var(--f-sans);color:#1f2a30;margin:0 0 10px}
.ppo-band p{margin:0}
.ppo-btns{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.ppo-btns .btn{text-align:center}
.ppo-sm{text-align:center;font-size:15px}
@media (max-width:760px){.ppo-in{grid-template-columns:1fr;gap:18px}}
.home-quick{padding:28px 0 8px}
.hq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1080px;margin:0 auto}
.hq{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #d7e8f2;border-radius:14px;padding:18px 20px;text-decoration:none;color:inherit;box-shadow:0 2px 10px rgba(16,60,90,.06);transition:box-shadow .15s,transform .15s}
.hq:hover{box-shadow:0 6px 18px rgba(16,60,90,.12);transform:translateY(-1px)}
.hq strong{color:var(--teal);font-size:18px}.hq span{font-size:15px;color:#3b4950}.hq em{font-style:normal;font-weight:600;color:var(--blue,#0071bc);margin-top:auto}
@media (max-width:820px){.hq-grid{grid-template-columns:1fr}}

.cf-turnstile{margin:12px 0}.cf-turnstile:empty{margin:0}

/* Direct Access questionnaire: language picker */
.q-lang{margin:0 0 18px}
.q-lang-lab{display:block;font-size:13px;font-weight:600;color:var(--muted);margin:0 0 8px}
.q-lang-opts{display:flex;flex-wrap:wrap;gap:8px}
.q-lang-opts label{position:relative;cursor:pointer}
.q-lang-opts input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.q-lang-opts span{display:inline-block;padding:8px 14px;border:2px solid var(--line);border-radius:999px;background:#fff;font-weight:600;font-size:15px;line-height:1.2;transition:border-color .15s,background .15s}
.q-lang-opts label:hover span{border-color:#fbb98a}
.q-lang-opts input:checked+span{border-color:#f05a00;background:#fff4ec;color:#b33a00}
.q-lang-opts input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}

/* Direct Access questionnaire: US / metric switch */
.q-units{display:inline-flex;margin:0 0 14px;border:2px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}
.q-units label{position:relative;cursor:pointer}
.q-units input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.q-units span{display:block;padding:8px 16px;font-weight:600;font-size:15px;line-height:1.2}
.q-units input:checked+span{background:#fff4ec;color:#b33a00}
.q-units input:focus-visible+span{outline:2px solid var(--blue);outline-offset:-2px}
.q-row[hidden]{display:none}
#q-metric{grid-template-columns:repeat(2,1fr)}
.q-zh-q{margin:6px 0 0;font-weight:700}.q-zh[hidden]{display:none}

/* Photo gallery (Locations): true 3:4 photos in a grid; click to open the zoom viewer */
.pgal{max-width:1100px;margin:0 auto;padding:0 20px}
.pgal ul{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:0;padding:0}
.pgal-i{position:relative;display:block;border-radius:10px;overflow:hidden;background:var(--bg-soft);aspect-ratio:3/4;cursor:zoom-in}
.pgal-i img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s ease}
.pgal-i:hover img{transform:scale(1.03)}
.pgal-i:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.pgal-z{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;opacity:.85;transition:opacity .15s}
.pgal-i:hover .pgal-z{opacity:1}
@media (max-width:760px){.pgal ul{grid-template-columns:repeat(2,1fr);gap:10px}.pgal-z{width:32px;height:32px;right:8px;bottom:8px}}

/* Zoom viewer */
.lb{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(10,14,18,.94);color:#fff;overflow:hidden;overscroll-behavior:contain}
.lb::backdrop{background:rgba(10,14,18,.94)}
.lb-stage{position:absolute;inset:0;display:grid;place-items:center;touch-action:none;cursor:zoom-in}
.lb-stage.zoomed{cursor:grab}.lb-stage.dragging{cursor:grabbing}
.lb-img{max-width:min(100vw,1500px);max-height:100vh;max-height:100dvh;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none;transform-origin:0 0;will-change:transform}
.lb-img.anim{transition:transform .25s ease}
.lb-btn{position:absolute;z-index:2;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;transition:background .15s}
.lb-btn:hover{background:rgba(255,255,255,.28)}.lb-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.lb-close{top:14px;right:14px}
.lb-prev{left:14px;top:50%;transform:translateY(-50%)}.lb-next{right:14px;top:50%;transform:translateY(-50%)}
.lb-zoom{top:14px;right:72px}
.lb-bar{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:14px 76px 18px;text-align:center;font-size:15px;line-height:1.4;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}
.lb-count{opacity:.75;margin-right:8px}
.lb.zoomed .lb-bar,.lb.zoomed .lb-prev,.lb.zoomed .lb-next{opacity:0;pointer-events:none}
@media (max-width:760px){.lb-prev,.lb-next{top:auto;bottom:12px;transform:none;width:44px;height:44px}.lb-bar{padding-bottom:22px}}

/* Locations: office info cards (Contact page card style; white on the gray section) */
.loc-cards{max-width:1100px;margin:0 auto;padding:0 20px;text-align:left}
.loc-cards .ct-card{background:#fff;box-shadow:0 2px 10px rgba(16,40,70,.05)}
.loc-cards .ct-ic{background:var(--bg-soft);box-shadow:none}
.loc-cards strong{color:#1f2a30}
.loc-list{margin:0 0 10px;padding:0;list-style:none}
.loc-list li{position:relative;padding-left:26px;margin:0 0 6px}
.loc-list li::before{content:"";position:absolute;left:2px;top:.45em;width:13px;height:7px;border-left:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);transform:rotate(-45deg)}
.pgal-i{border-radius:14px}
.q-field input.q-bad{border-color:#d92d20;background:#fef3f2;box-shadow:0 0 0 3px rgba(217,45,32,.15)}.q-field input.q-bad:focus{border-color:#d92d20}

/* Patient reviews (provider pages, About Us) */
.rv{padding:56px 0 52px;background:#fff}
.rv--practice{background:var(--bg-soft)}
.rv .w{max-width:1100px}
.rv h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 0 8px}
.rv .lead{text-align:center;color:var(--muted);margin:0 auto 26px;max-width:680px}
.rv-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 20px}
.rv-score{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 16px 18px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-align:center;text-decoration:none;transition:border-color .15s,box-shadow .15s}
a.rv-score:hover{border-color:var(--blue);box-shadow:0 4px 14px rgba(0,113,188,.1)}
.rv--practice .rv-score{box-shadow:0 2px 10px rgba(16,40,70,.05)}
.rv-src{font:700 12.5px/1 var(--f-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.rv-num{font:800 40px/1.05 var(--f-sans);color:#1f2a30;min-height:42px}
.rv-stars{--r:100%;display:inline-block;flex:none;width:100px;height:19px;background:linear-gradient(90deg,#f5a623 var(--r),#d5dbe0 var(--r));
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 19'%3E%3Cpath d='M10 .8l2.8 5.7 6.3.9-4.6 4.4 1.1 6.3L10 15.1l-5.6 3 1.1-6.3L.9 7.4l6.3-.9z'/%3E%3C/svg%3E") 0 0/20px 19px repeat-x;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 19'%3E%3Cpath d='M10 .8l2.8 5.7 6.3.9-4.6 4.4 1.1 6.3L10 15.1l-5.6 3 1.1-6.3L.9 7.4l6.3-.9z'/%3E%3C/svg%3E") 0 0/20px 19px repeat-x}
.rv-stars--empty{--r:0%}
.rv-count{font-size:14.5px;color:var(--muted)}
.rv-sub{font-size:13.5px;line-height:1.5}
.rv-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rv-q{display:flex;flex-direction:column;gap:12px;margin:0;padding:22px 22px 18px;border-radius:18px;background:var(--bg-soft);border:1px solid var(--line)}
.rv--practice .rv-q{background:#fff}
.rv-q .rv-stars{width:85px;height:16px;-webkit-mask-size:17px 16px;mask-size:17px 16px}
.rv-q blockquote{margin:0;font-size:16px;line-height:1.6;color:#1f2a30;display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
.rv-q blockquote::before{content:"\201C"}.rv-q blockquote::after{content:"\201D"}
.rv-q figcaption{margin-top:auto;font-size:13.5px;line-height:1.5;color:var(--muted)}
.rv-by{font-weight:700;color:var(--ink)}
.rv-q a.rv-author{color:var(--ink);font-weight:600}
.rv-note{font-size:13.5px;color:var(--muted);text-align:center;margin:22px auto 6px;max-width:740px}
.rv-all{text-align:center;font-size:14.5px;margin:0}
@media (max-width:860px){.rv-quotes{grid-template-columns:1fr}}
@media (max-width:760px){
  .rv{padding:40px 0 36px}
  .rv-scores{grid-template-columns:1fr;gap:10px}
  .rv-score{display:grid;grid-template-columns:auto auto 1fr;grid-template-areas:"src src src" "num stars count";align-items:center;justify-items:start;gap:6px 10px;padding:14px 16px;text-align:left}
  .rv-src{grid-area:src}.rv-num{grid-area:num;font-size:28px;min-height:0}.rv-score>.rv-stars{grid-area:stars}.rv-count{grid-area:count}
  .rv-sub{grid-column:1/-1}
}
@media (max-width:760px){.rv-q:nth-child(n+4){display:none}}

/* Home page */
.hm-hero{padding:46px 0 0;background:linear-gradient(180deg,#eef6fb 0,#f7fbfd 62%,#fff 100%);text-align:center}
.hm-hero .w{max-width:1160px}
.hm-eyebrow{font:700 13.5px/1.2 var(--f-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin:0 0 12px}
.hm-hero h1{font:800 var(--t-hero)/1.08 var(--f-sans);letter-spacing:-.025em;color:#16303f;margin:0 auto 16px;max-width:880px;text-wrap:balance}
.hm-lead{font-size:clamp(17px,1.5vw,19px);line-height:1.6;color:#3b4950;margin:0 auto 24px;max-width:760px;text-wrap:pretty}
.hm-cta{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 14px;margin:0 0 18px}
.hm-cta .btn{padding:14px 26px;font-size:16.5px}
.hm-call{font-weight:600;color:var(--ink);padding:0 6px}.hm-call a{color:inherit;text-decoration:none}.hm-call a:hover{color:var(--blue);text-decoration:underline}
.hm-rating{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:0 2px 10px rgba(16,40,70,.06);color:var(--ink);text-decoration:none;font-size:15px}
.hm-rating:hover{border-color:var(--blue)}
.hm-rating strong{color:#1f2a30}
.hm-photo{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;object-position:50% 30%;border-radius:22px 22px 0 0;margin:32px auto 0;box-shadow:0 -6px 30px rgba(16,40,70,.08)}
.home-quick{padding:30px 0 12px}
.hm-team{background:#fff;padding-top:44px}
.hm-about{padding:56px 0;background:#fff}
.hm-about .w{max-width:1100px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hm-about h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);margin:0 0 14px}
.hm-about-text>p{line-height:1.7;margin:0 0 16px}
.hm-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:22px!important}
.hm-link{font-weight:600}
.hm-about-photo{display:block;border-radius:18px;overflow:hidden;aspect-ratio:4/4.4;box-shadow:0 10px 30px rgba(16,40,70,.12)}
.hm-about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transition:transform .4s ease}
.hm-about-photo:hover img{transform:scale(1.03)}
.hm-services{padding:56px 0;background:var(--bg-soft)}
.hm-services .w,.hm-values .w{max-width:1100px}
.hm-services h2,.hm-values h2{font:800 var(--t-h2)/1.2 var(--f-sans);letter-spacing:-.015em;color:var(--blue);text-align:center;margin:0 0 26px}
.hm-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.hm-svc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 2px 8px rgba(16,40,70,.05);transition:box-shadow .2s,transform .2s}
.hm-svc:hover{box-shadow:0 14px 32px rgba(16,40,70,.14);transform:translateY(-3px)}
.hm-svc img{width:100%;aspect-ratio:840/400;object-fit:cover}
.hm-svc-b{display:flex;flex-direction:column;gap:8px;padding:22px 24px 24px;flex:1}
.hm-svc-b strong{font:800 var(--t-h3)/1.3 var(--f-sans);color:var(--blue)}
.hm-svc-b span{line-height:1.65;color:#3b4950}
.hm-svc-b em{font-style:normal;font-weight:700;color:var(--blue);margin-top:auto;padding-top:6px}
.hm-values{padding:56px 0;background:#fff}
.hm-values .ct-card h3{font:800 var(--t-h3)/1.3 var(--f-sans);color:var(--blue);margin:0 0 8px}
@media (max-width:860px){
  .hm-about .w{grid-template-columns:1fr;gap:28px}
  .hm-about-photo{aspect-ratio:4/3;order:-1}
  .hm-svc-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .hm-hero{padding-top:30px}
  .hm-cta .btn{flex:1 1 100%;max-width:360px}
  .hm-photo{aspect-ratio:16/10;border-radius:16px 16px 0 0;margin-top:24px}
  .hm-about,.hm-services,.hm-values{padding:40px 0}
}

/* Blog filters: topic / type / language rows */
.chip-groups{margin:14px 0 28px;display:grid;gap:10px}
.chip-row{display:flex;align-items:baseline;gap:14px}
.chip-row .chips{margin:0}
.chip-lab{flex:0 0 74px;font:700 12px/1 var(--f-body,inherit);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2,#5b6b73)}
@media(max-width:640px){.chip-row{flex-direction:column;gap:6px}.chip-lab{flex:none}}

/* Locations: Valley Digestive Health Center feature (above USC Arcadia Hospital) */
.vdhc{max-width:1100px;margin:0 auto;padding:34px 20px 0;text-align:left}
.vdhc-k{margin:0 0 6px;text-align:center;font:700 14px/1.3 var(--f-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.vdhc h2{margin:0 0 12px;text-align:center;font:800 var(--t-h1)/1.15 var(--f-sans);letter-spacing:-.015em;color:var(--blue)}
.vdhc-lead{max-width:820px;margin:0 auto 30px;text-align:center;font-size:17px}
.vdhc-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start;margin-bottom:28px}
.vdhc h3{font:700 19px/1.3 var(--f-sans);color:var(--teal);margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid #e3eef5}
.vdhc-grid .loc-list{margin-bottom:22px}
.vdhc-grid .ct-card h3{border:0;padding:0;color:var(--blue);font-size:var(--t-h3);font-weight:800}
.vdhc .pgal{padding:0}
.pgal.wide ul{grid-template-columns:repeat(4,1fr)}
.pgal.wide .pgal-i{aspect-ratio:4/3}
.pgal.wide .pgal-i img{object-fit:cover}
.vdhc-also{text-align:center;margin-bottom:28px;padding-top:36px;border-top:2px solid var(--line)}
.vdhc-also h3{font:800 var(--t-h2)/1.25 var(--f-sans);color:var(--blue);margin:0 0 8px}
.vdhc-also p{max-width:720px;margin:0 auto}
@media (max-width:900px){.vdhc-grid{grid-template-columns:1fr;gap:8px}}
@media (max-width:760px){.pgal.wide ul{grid-template-columns:repeat(2,1fr)}}
.ty h1{margin-bottom:12px}.ty-prep{margin-top:20px}.ty-other{font-size:.95em;color:var(--muted);margin:4px 0 0}
.vdhc-logo{display:block;width:auto;height:auto;max-width:min(260px,100%);max-height:92px;margin:0 0 14px;mix-blend-mode:multiply}
.ty-where,.ty-prep,.ty-cancel{margin-top:20px}
.ty-cancel{background:#fff8e1;border-color:#f1d98a;padding:20px 26px}.ty-cancel p{margin:0}
.vdhc .vdhc-logo{margin:0 auto 14px}
.ty-where{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}
.ty-where-img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:14px;box-shadow:0 4px 14px rgba(10,25,45,.12)}
@media (max-width:700px){.ty-where{grid-template-columns:1fr}.vdhc-lockup .vdhc-logo{max-height:80px}}
.vdhc-head{display:flex;gap:22px;align-items:center;justify-content:center;margin:0 0 18px}
.vdhc-head .vdhc-logo{margin:0;max-height:104px;flex:none}
.vdhc-head h2{text-align:left;margin-bottom:6px}.vdhc-head .vdhc-k{text-align:left}
.vdhc-addr{margin:0;font-size:17px}
.usc-logo{display:block;width:100%;max-width:340px;height:auto;margin:0 0 6px}
@media (max-width:700px){.vdhc-head{flex-direction:column;text-align:center}.vdhc-head h2,.vdhc-head .vdhc-k{text-align:center}}
.q-doc>span{font-weight:600}.q-docs{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-top:8px}.q-docs .q-opt{padding:10px 14px;font-weight:500}
.q-field.q-doc .q-opt input{width:20px;min-height:0;height:20px;padding:0;border:0;box-shadow:none;border-radius:50%;background:none;accent-color:#e04800}
.q-field.q-doc .q-opt{font:500 16px/1.4 var(--f-body);color:var(--ink)}
.ty-more{margin:12px 0 0;font-size:.95em}
.ty-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ty-list li{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.ty-list p{margin:0;line-height:1.55}
.ty-list .ty-alert{background:#fff8e1;border-color:#f1d98a}
.ty-tl{list-style:none;margin:0 0 0 6px;padding:0;border-left:3px solid #cfe3f2}.ty-tl li{position:relative;padding:0 0 14px 18px;line-height:1.55}.ty-tl li:last-child{padding-bottom:0}.ty-tl li::before{content:"";position:absolute;left:-9px;top:.5em;width:12px;height:12px;border-radius:50%;background:#0071bc}
.ty-ready,.ty-timeline,.ty-bill{margin-top:20px}.ty-bill{background:#eef6fc;border-color:#bcd9ee;padding:20px 26px}.ty-bill p{margin:0}
.ty-ready h2,.ty-timeline h2{margin-top:0}
.ref-ready{grid-template-columns:minmax(0,1fr) 220px;align-items:start}
.ref-ready h2{margin:0 0 10px}.ref-ready h3{font:800 17px/1.3 var(--f-sans);color:var(--blue);margin:18px 0 4px}
.ref-handouts{list-style:none;margin:10px 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ref-handouts a{display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border:2px solid #f05a00;border-radius:999px;background:#fff;color:#b33a00;font-weight:700;font-size:15px;text-decoration:none}
.ref-handouts a:hover{background:#fff4ec}.ref-handouts a:focus-visible{outline:3px solid #0071bc;outline-offset:2px}
.ref-handout-img{display:block;border-radius:10px;overflow:hidden;box-shadow:0 6px 20px rgba(10,25,45,.18);border:1px solid var(--line);background:#fff}
.ref-handout-img img{display:block;width:100%;height:auto}
@media (max-width:760px){.ref-ready{grid-template-columns:1fr}.ref-handout-img{max-width:240px}}
/* For Providers: the orange Direct Access block runs unbroken to the consultation section. One white-to-blue fade then runs behind both the consultation card and "How to refer", reaching its deepest blue below the three ways to refer. */
.ref-blue{background:linear-gradient(180deg,#fff 0,#eef7fd 100%)}
.ref-blue .ref-hero--flow,.ref-blue .ref-how{background:none}
.dac-elig.dac-tint,.dac-where.dac-tint{background:#fff7f1}
.dac-where.dac-tint .dac-where-card{background:#fff;border-color:#f1dccd}
.q-book-row{display:flex;gap:18px;align-items:center;margin:0 0 12px}.q-book-row p{margin:0}.q-book-row .vdhc-logo{margin:0;max-height:88px;flex:none}
@media (max-width:560px){.q-book-row{gap:12px}.q-book-row .vdhc-logo{max-height:64px}}
/* Text message reminders page */
.texts ul{margin:0 0 14px;padding-left:22px}.texts li{margin:0 0 6px}
.texts blockquote.sms{margin:10px 0 16px;padding:12px 16px;max-width:560px;background:#eef4f7;border:1px solid var(--line);border-radius:16px 16px 16px 4px;font-size:15px;line-height:1.5;overflow-wrap:anywhere;color:#1f2a30}
/* Office holidays (site.js): closures next to the office hours, and a notice the week before */
.hol-note{display:inline-block;margin-top:4px;font-size:.92em;color:#8a4b00;font-weight:600}
.hol-banner{background:#fff6e0;border-bottom:1px solid #f1d38a}
.hol-banner p{max-width:1180px;margin:0 auto;padding:10px 20px;font-size:15px;color:#4a3b00}
.hol-banner a{color:#02566F;font-weight:600}

/* Accepted Insurance: check your insurance with a photo of your card (insurance-check.js) */
.ic{margin:28px 0;padding:22px 24px;border:2px solid #fbd0b0;border-radius:18px;background:#fffaf5}
.ic h2{margin-top:0}
.ic-actions{margin:14px 0 0}
.ic-status{min-height:1.3em;margin:8px 0 0;color:#4a5560}
.ic-res{margin-top:12px}
.ic-row{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid var(--line);margin-top:8px}
.ic-row b{display:block}
.ic-row .ic-ic{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff}
.ic-row.yes .ic-ic{background:#15803d}.ic-row.no .ic-ic{background:#b42318}.ic-row.unclear .ic-ic{background:#b7791f}
.ic-row .btn{margin-top:8px}
.ic-read{font-size:.95em;color:#4a5560;margin:10px 0 0}
.ic-congrats{margin:4px 0 6px;padding:14px 16px;border-radius:12px;background:#ecfdf3;border:1px solid #abefc6;color:#05603a;font-size:1.25em;line-height:1.3}
.ic-opts{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.ic-opts .btn{margin:0}
.ic-fine{font-size:.88em;color:#5f6b72}
.ic-ask{margin-top:16px;padding-top:12px;border-top:1px dashed #f1c9a8}
.ic-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.ic-grid label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:14.5px}
.ic-grid input{font:inherit;font-weight:400;padding:10px 12px;border:2px solid var(--line);border-radius:10px}
.ic-wide{grid-column:1/-1}
.ic-err{color:#b42318;font-weight:600}
@media (max-width:560px){.ic{padding:16px}.ic-grid{grid-template-columns:1fr}}

/* ---------- print (a page printed from the browser; PDFs print from the viewer) ---------- */
@media print{
  .site-h,.site-f,.skip,.dac-sticky,.lb,.chips,.all,.more{display:none!important}
  body{color:#000;font-size:12pt;line-height:1.45}
  main{padding:0}
  .w{max-width:none;padding:0}
  a{color:inherit;text-decoration:underline}
  .prose a[href^="http"]::after,.pv-body a[href^="http"]::after{content:" (" attr(href) ")";font-size:.85em;color:#555}
  .btn,.dac-go,.dac-btn{border:1px solid #000;background:none!important;color:#000!important;box-shadow:none}
  .card,.tcard,.ins-card,.dac-doc,.faq details,.tbl,.edu-t,figure,img{break-inside:avoid}
  h1,h2,h3{break-after:avoid}
  .banner{min-height:0;padding:12px 0;background:none!important;color:#000}
  .banner::before{display:none}
  .banner .banner-t,.banner p{color:#000}
  .media,.map,.embed,.appt-widget{display:none}
}
/* Direct Access questionnaire opened from a Procedure Call text: confirm it's you, then the details on file */
.q-verify{margin:0 0 22px;padding:16px 18px;border-radius:14px;background:#eef6fb;border:1px solid #bcd9ec}
.q-verify[hidden]{display:none}
.q-verify h2{font-size:20px;margin:0 0 6px}
.q-verify p{margin:0 0 10px}
.q-verify-act{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:14px}
.q-verify-err{color:#b3261e;font-weight:600;margin:10px 0 0}
.q-verify-msg{margin:0;font-weight:600}
.q-verify-dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:10px 0 0}
.q-verify-dl dt{color:var(--muted)}.q-verify-dl dd{margin:0;overflow-wrap:anywhere}
.q-verify-sum{margin:6px 0 14px;padding:12px 14px}
.q-linkbtn{background:none;border:0;padding:4px 0;color:var(--blue);text-decoration:underline;font:600 15px var(--f-sans);cursor:pointer}
.q-pre{display:none!important}
/* (from a postcard's QR code: the questionnaire opens once they confirm it's them) */
.q-gate > :not(.q-verify){display:none!important}
/* (from a postcard's QR code: "GI Checkup" until they confirm it's them; nothing says colonoscopy before) */
.q-gi{display:none}
html.q-gated .q-gi{display:block}
html.q-gated .q-back,html.q-gated .q-wrap h1[data-t="h1"],html.q-gated .q-wrap .q-intro[data-t="intro"],html.q-gated .q-bar,html.q-gated .q-count{display:none!important}
html.q-gated a[href^="/direct-access-colonoscopy"],html.q-gated .toplinks span{display:none!important}
