@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/font-8.ttf) format('truetype');
}
:root{--navy:#203a57;--teal:#365f8d;--mint:#e3ebf3;--gold:#8faac4;--ink:#29445d;--muted:#566b7e;--line:#d2deea;--white:#fff;--pale:#f3f6fa;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:235px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}p{font-size:1.0625rem;line-height:1.8;color:var(--muted);margin:0 0 1.3rem}h1,h2,h3,h4{font-family:Manrope,sans-serif;color:var(--navy);margin:0;font-weight:600}h1{font-size:clamp(3rem,5.1vw,5.2rem);letter-spacing:-.045em;line-height:1.12}h2{font-size:clamp(2rem,3.1vw,3.2rem);letter-spacing:-.035em;line-height:1.22}h3{font-size:1.35rem;line-height:1.35;letter-spacing:-.025em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{max-width:1320px;width:calc(100% - 112px);margin:auto}.topline{background:var(--navy);color:#eff4f8;padding:10px 0;font-size:.8125rem;letter-spacing:.015em}.topline .wrap{display:flex;justify-content:space-between;gap:15px}.topline a{font-weight:600}header{background:rgba(255,255,255,.97);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.brand-logo{display:block;width:100%;height:auto;object-fit:contain}.practice-name{font-family:Manrope,sans-serif;font-size:clamp(1.4rem,2.3vw,2rem);font-weight:600;line-height:1.3;color:var(--navy);margin:0 0 26px;letter-spacing:-.025em}.nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;width:100%;gap:16px;font-size:.875rem;font-weight:500;border-top:1px solid var(--line);margin-top:16px;padding:12px 0}.nav a{padding:12px 0}.nav a:not(.button):hover,.nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:8px}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;padding:17px 24px;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:4px;font-size:.9375rem;font-weight:600;line-height:1.35;transition:background .2s,transform .2s}.button:hover{background:#294c72;transform:translateY(-2px)}.nav .button{padding:13px 20px}.button.light{background:white;border-color:white;color:var(--navy)}.button.outline{background:transparent;color:var(--teal);border-color:#b9cadb}.button.outline:hover{background:var(--mint)}.link{display:inline-flex;gap:20px;align-items:center;font-weight:600;font-size:.9375rem;border-bottom:1px solid #b8cadb;padding-bottom:6px}.link:hover{color:var(--teal)}.menu-toggle{display:none;border:1px solid var(--line);background:white;padding:10px 14px;border-radius:4px;color:var(--navy)}.eyebrow{text-transform:uppercase;font-size:.875rem;font-weight:700;letter-spacing:.16em;color:var(--teal);margin-bottom:24px;display:block}.hero-copy{padding:12px 0}.hero h1 span{display:block;color:var(--teal)}.hero-subtitle{font-family:Manrope,sans-serif;font-size:1.2rem;line-height:1.6;font-weight:600;margin:26px 0 16px;max-width:460px;color:var(--ink)}.hero p{max-width:440px}.actions{display:flex;gap:27px;align-items:center;flex-wrap:wrap;margin-top:28px}.trustline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0}.trustline .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.875rem;font-weight:500}.trustline span:before{content:none}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:40px}.section-head p{max-width:390px;margin:0}.section-head .eyebrow{margin-bottom:14px}.pale{background:var(--pale)}.paths{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:5px;overflow:hidden}.path-card{padding:32px 26px 28px;display:flex;flex-direction:column;background:white;border-right:1px solid var(--line);position:relative;transition:background .2s}.path-card:last-child{border-right:0}.path-card:hover{background:var(--mint)}.path-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:42px}.path-num{font-size:.8125rem;color:var(--muted)}.path-label{font-size:.875rem;letter-spacing:.12em;font-weight:700;color:var(--teal)}.path-card h3{font-size:1.55rem;margin-bottom:14px}.path-card p{font-size:.9375rem;line-height:1.7;flex:1}.path-card .explore{font-size:.875rem;font-weight:600;margin-top:23px;display:flex;justify-content:space-between}.path-card:nth-child(2){border-top:3px solid #5c7fa3}.path-card:nth-child(1){border-top:3px solid var(--teal)}.path-card:nth-child(3){border-top:3px solid var(--gold)}.path-card:nth-child(4){border-top:3px solid #7893ad}.path-help{font-size:.9375rem;margin:24px 0 0;text-align:center}.path-help a{text-decoration:underline;text-underline-offset:4px;color:var(--teal);font-weight:600}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.split h2{margin-bottom:26px}.feature-list{display:grid;gap:26px}.feature{padding-bottom:25px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:38px 1fr;gap:18px}.feature-number{font-size:.8125rem;color:var(--teal);padding-top:5px}.feature h3{margin-bottom:9px}.feature p{margin:0;font-size:1rem}.dark{background:var(--navy);color:white}.dark h2,.dark h3{color:white}.dark p{color:#d2deea}.dark .eyebrow{color:#c3d3e2}.assessment{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.assessment h2{margin-bottom:24px}.steps{counter-reset:steps}.step{display:flex;gap:22px;padding:24px 0;border-bottom:1px solid #ffffff26}.step:first-child{padding-top:0}.step b{font-size:.8rem;font-weight:500;color:#cbd8e4;padding-top:5px}.step h3{margin-bottom:8px}.step p{margin:0;font-size:1rem}.small-split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.small-split>div+div{border-left:1px solid var(--line);padding-left:80px}.small-split h2{font-size:2rem;margin-bottom:20px}.cta{text-align:center;background:var(--mint);padding:70px 24px}.cta h2{max-width:670px;margin:auto}.cta p{max-width:630px;margin:20px auto 0}.cta .actions{justify-content:center}footer{padding:60px 0 25px;background:white}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px}.footer-brand{display:block;width:300px;max-width:100%;margin-bottom:20px}footer h3{font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;margin:13px 0 20px}footer p,footer a{font-size:.875rem;line-height:1.8}footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:7px}footer a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin-top:45px;font-size:.75rem;color:var(--muted)}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:white;padding:14px}.skip:focus{top:10px}.page-hero{padding:68px 0 74px;background:var(--pale)}.breadcrumbs{font-size:.8125rem;color:var(--muted);margin-bottom:35px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.page-hero h1{max-width:950px;font-size:clamp(2.8rem,4.4vw,4.5rem)}.page-hero .intro{max-width:700px;font-size:1.1875rem;margin:26px 0 0}.page-hero .eyebrow{margin-bottom:18px}.body-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:100px}.prose h2{font-size:2rem;margin:0 0 20px}.prose h3{margin:30px 0 12px}.prose section{margin-bottom:55px}.prose ul{list-style:none;margin:22px 0;padding:0;display:grid;gap:13px}.prose li{position:relative;padding-left:23px;font-size:1rem;line-height:1.65;color:var(--muted)}.prose li:before{content:'•';position:absolute;left:0;color:#000}.side-card{background:var(--mint);padding:32px;border-radius:4px;position:sticky;top:250px}.side-card h3{font-size:1.7rem;margin-bottom:18px}.side-card .button{width:100%}.side-card small{display:block;font-size:.875rem;color:var(--muted);margin-top:18px;line-height:1.7}.path-nav{margin-top:28px;border-top:1px solid #c7d5e2;padding-top:20px;display:grid;gap:15px}.path-nav a{font-size:.9375rem;display:flex;justify-content:space-between}.path-nav a:hover{text-decoration:underline}.callout{border-left:3px solid var(--teal);padding:24px 28px;background:var(--pale);margin-top:25px}.callout p:last-child{margin:0}.progression{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}.progression span{background:var(--mint);padding:12px 15px;font-size:.875rem;border-radius:3px}.team{display:grid;grid-template-columns:1fr 1fr;gap:22px}.team article{padding:27px;border:1px solid var(--line)}.team article h3{margin:0 0 8px}.team p{font-size:.9375rem;margin:0}.credential{font-size:.8125rem;color:var(--teal);display:block;margin-bottom:15px;line-height:1.6}.faq{max-width:850px;margin:auto}details{border-bottom:1px solid var(--line);padding:24px 0}summary{font-family:Manrope;font-size:1.125rem;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:1.5rem;font-weight:400;color:var(--teal)}details[open] summary:after{content:'−'}details p{margin:20px 35px 0 0;font-size:1rem}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.contact-panel{background:var(--navy);color:white;padding:45px;border-radius:5px}.contact-panel h2{color:white;font-size:2rem;margin-bottom:25px}.contact-panel p{color:#d2deea}.contact-panel .phone{font-size:clamp(1.4rem,3vw,2.5rem);font-family:Manrope;font-weight:600;display:block;margin-bottom:25px}.contact-block{padding-bottom:26px;margin-bottom:26px;border-bottom:1px solid var(--line)}.contact-block h3{margin-bottom:15px}.contact-block p{margin:0}.contact-block a:not(.button){color:var(--teal);text-decoration:underline;text-underline-offset:4px}.hours{display:flex;justify-content:space-between;gap:20px;margin:8px 0;font-size:1rem;color:var(--muted)}
@media(min-width:1500px){}@media(max-width:1400px){.wrap{width:calc(100% - 64px)}.nav{gap:17px}.split,.assessment,.body-layout{gap:60px}.path-card{padding:27px 20px}.path-card h3{font-size:1.35rem}}@media(max-width:960px){html{scroll-padding-top:170px}.menu-toggle{display:block}.nav{display:none;margin-top:0;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px 32px;grid-template-columns:1fr 1fr;box-shadow:0 15px 20px #203a570d;max-height:75vh;overflow:auto}.nav.open{display:grid}.nav .button{grid-column:1/-1}.paths{grid-template-columns:1fr 1fr}.path-card:nth-child(2){border-right:0}.path-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.path-top{margin-bottom:25px}.section-head{align-items:start}.section-head p{max-width:310px}.split,.assessment{gap:45px}.body-layout{grid-template-columns:minmax(0,1fr) 280px;gap:35px}.small-split{gap:40px}.small-split>div+div{padding-left:40px}.footer-grid{grid-template-columns:1fr 1fr}.contact-grid{gap:35px}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.topline{padding:9px 0}.topline .wrap{font-size:.75rem}.topline .location-extra{display:none}.menu-toggle{padding:10px;flex-shrink:0}.practice-name{font-size:1.4rem;margin-bottom:22px}.hero .eyebrow{margin-bottom:22px;font-size:.875rem}.hero-subtitle{font-size:1.08rem;margin:23px 0 15px}.hero p{font-size:1rem}.hero .actions{gap:18px;margin-top:22px}.hero .button{padding:16px 19px}.section{padding:58px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:18px;max-width:100%}.paths{grid-template-columns:1fr 1fr}.path-card{padding:22px 16px}.path-top{margin-bottom:25px}.path-label{font-size:.875rem;letter-spacing:.08em}.path-num{font-size:.75rem}.path-card h3{font-size:1.22rem}.path-card p{font-size:.875rem}.path-card .explore{font-size:.9375rem;gap:6px}.path-help{font-size:.875rem}.split,.assessment,.small-split,.body-layout,.contact-grid{grid-template-columns:1fr;gap:35px}.small-split>div+div{padding-left:0;border:0;border-top:1px solid var(--line);padding-top:35px}.footer-grid{gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block;margin-bottom:8px}.page-hero{padding:36px 0 45px}.breadcrumbs{margin-bottom:27px}.page-hero h1{font-size:2.8rem}.page-hero .intro{font-size:1.0625rem}.side-card{position:static}.team{grid-template-columns:1fr}.contact-panel{padding:30px}.cta{padding:54px 20px}summary{font-size:1rem}.prose section{margin-bottom:38px}.prose h2{font-size:1.7rem}.section-head h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* OPTA: spacious, welcoming design in muted blue-green. Original logo artwork retained. */
.brand-color-filter{position:absolute;overflow:hidden;pointer-events:none;}.brand-logo{filter:url(#opta-logo-tone);}
.header-inner{display:grid;grid-template-columns:340px minmax(0,1fr);column-gap:40px;align-items:center;padding-top:18px;}
.brand{display:block;width:340px;max-width:100%;}
.header-identity{text-align:right;display:flex;flex-direction:column;gap:8px;}
.header-business{font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:600;line-height:1.4;color:var(--navy);}
.header-tagline{font-size:1.125rem;line-height:1.5;color:var(--teal);}
.nav{grid-column:1/-1;margin-top:18px;gap:14px;}
.topline{background:var(--navy);font-size:.875rem;}
.hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:0;align-items:stretch;padding:0;margin:38px 0 44px;background:var(--pale);}
.hero-copy{padding:54px 44px 54px 40px;align-self:center;}
.hero .eyebrow{line-height:1.6;letter-spacing:.09em;}
.hero h1{font-size:clamp(3rem,4.8vw,4.8rem);line-height:1.09;letter-spacing:-.045em;}
.hero h1 span{display:inline;}
.hero-subtitle{font-size:1.1875rem;margin:26px 0 16px;font-weight:600;}
.hero p{max-width:470px;}
.hero .actions{gap:22px;}
.hero-visual{display:block;position:relative;min-height:550px;}
.hero-visual img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:38% center;border-radius:0;}
.photo-note{position:absolute;left:24px;bottom:24px;background:#ffffffed;padding:18px 23px;border-left:3px solid var(--teal);}
.photo-note span{font-size:.9375rem;line-height:1.6;color:var(--ink);}
.photo-note strong{font-weight:600;font-size:1rem;}
.trustline{display:block;background:white;padding:23px 0;}
.trustline .wrap{font-size:.9375rem;justify-content:space-between;gap:20px;}
.trustline strong{font-weight:600;color:var(--navy);}
.section{padding:88px 0;}
.paths{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0;border-radius:0;overflow:visible;}
.path-card{padding:30px 32px;border:1px solid var(--line)!important;border-top:3px solid #5c7fa3!important;border-radius:0;}
.path-card h3{font-size:1.8rem;}
.path-card p{font-size:1.0625rem;max-width:440px;}
.path-top{margin-bottom:24px;}
.path-card .explore{margin-top:12px;font-size:1rem;}
.path-card:hover{background:#e3ebf3;}
.path-num{font-size:.875rem;}
.path-help{margin-top:30px;}
.feature h3{font-size:1.25rem;}
.feature-number{font-size:.875rem;}
.team article{background:white;border-top:3px solid var(--teal);padding:32px;}
.credential{font-size:.9375rem;}
.lifestyle-head{max-width:760px;margin-bottom:36px;}
.lifestyle-head h2{margin-bottom:22px;}
.lifestyle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:24px;align-items:stretch;}
.lifestyle-card{margin:0;background:var(--pale);border:1px solid var(--line);overflow:hidden;min-width:0;height:100%;display:flex;flex-direction:column;}
.lifestyle-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;}
.lifestyle-card figcaption{padding:28px 30px;display:flex;flex:1;flex-direction:column;}
.lifestyle-card h3{font-size:1.6rem;margin-bottom:12px;}
.lifestyle-card p{margin-bottom:18px;}
.lifestyle-card .link{margin-top:auto;}
.lifestyle-note{font-size:.8125rem;margin:20px 0 0;}
.pricing-section{background:var(--pale);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.pricing-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:38px;}
.pricing-head .eyebrow{margin-bottom:14px;}
.pricing-head p{max-width:470px;margin:0;}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.price-card{background:white;border:1px solid var(--line);border-top:3px solid var(--teal);padding:30px;min-width:0;}
.price-label{display:block;font-size:.875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:18px;}
.price{display:block;font-family:Manrope,sans-serif;font-size:clamp(2.6rem,4vw,4rem);font-weight:600;line-height:1;color:var(--navy);letter-spacing:-.045em;margin-bottom:16px;}
.price-card p{font-size:1rem;line-height:1.6;margin:0;}
.pricing-foot{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:26px;}
.pricing-foot p{font-size:.9375rem;line-height:1.65;margin:0;max-width:720px;}
.pricing-detail{background:var(--pale);border:1px solid var(--line);padding:34px;margin-bottom:55px;}
.pricing-detail .eyebrow{margin-bottom:12px;}
.pricing-detail .pricing-grid{grid-template-columns:1fr;gap:14px;margin:28px 0 22px;}
.pricing-detail .price-card{padding:24px 26px;}
.pricing-detail .price{font-size:2.75rem;}
.price-note{font-size:.9375rem!important;line-height:1.65!important;margin:0!important;}
.service-photo{margin:32px 0 0;}
.service-photo img{display:block;width:100%;max-height:440px;object-fit:cover;aspect-ratio:3/2;}
.service-photo figcaption{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-top:10px;}
.page-hero{border-bottom:1px solid var(--line);}
.button{border-radius:2px;}
footer{background:#f7f9fc;}
footer h3{font-size:.875rem;}
@media(max-width:1100px){.header-inner{grid-template-columns:290px minmax(0,1fr);gap:24px;}.brand{width:290px;}.header-business{font-size:1.125rem;}.hero-copy{padding:38px 30px;}.hero-visual{min-height:550px;}.hero .actions{align-items:flex-start;flex-direction:column;gap:18px;}.lifestyle-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:960px){.header-inner{grid-template-columns:280px minmax(0,1fr) auto;padding:16px 0;gap:20px;}.brand{width:280px;}.header-business{font-size:1rem;}.header-tagline{font-size:1rem;}.header-identity{text-align:left;}.nav{margin-top:0;}.hero{margin:30px 0;}.hero-copy{padding:32px 26px;}.hero h1{font-size:3.4rem;}.hero-visual{min-height:540px;}.hero .eyebrow{font-size:.875rem;}.section{padding:64px 0;}.trustline .wrap{justify-content:flex-start;}.trustline span{flex:1;min-width:160px;}.path-card h3{font-size:1.5rem;}.path-card{padding:26px;}}
@media(max-width:760px){header{position:relative;}.header-inner{grid-template-columns:minmax(0,1fr) auto;row-gap:16px;}.brand{width:280px;}.header-identity{grid-column:1/-1;grid-row:2;border-top:1px solid var(--line);padding-top:14px;gap:5px;}.header-business{font-size:1.0625rem;}.header-tagline{font-size:1rem;}.menu-toggle{grid-column:2;grid-row:1;}.hero{grid-template-columns:1fr;}.hero-copy{padding:36px 26px;}.hero h1{font-size:clamp(2.75rem,8vw,3.7rem);}.hero .actions{flex-direction:row;align-items:center;}.hero-visual{min-height:0;aspect-ratio:4/3;}.photo-note{left:16px;bottom:16px;padding:12px 16px;}.photo-note span,.photo-note strong{font-size:.875rem;}.trustline .wrap{display:grid;gap:12px;}.trustline span{min-width:0;}.lifestyle-grid,.pricing-grid{grid-template-columns:1fr;gap:24px;}.pricing-head{display:block;margin-bottom:28px;}.pricing-head p{margin-top:18px;}.pricing-foot{display:block;}.pricing-foot .link{margin-top:18px;}.pricing-detail{padding:26px;}.paths{grid-template-columns:1fr;}.path-card h3{font-size:1.6rem;}.path-card p{font-size:1rem;}.path-card .explore{font-size:1rem;}.path-label{font-size:.875rem;}.path-card{padding:28px;}.section{padding:56px 0;}.lifestyle-card figcaption{padding:25px;}.side-card{position:static;}html{scroll-padding-top:24px;}}
@media(max-width:380px){.brand{width:220px;}.hero-copy{padding:30px 22px;}.hero .actions{align-items:flex-start;flex-direction:column;}}

/* Provider portraits and expanded biographies */
.team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch;}
.team article{height:100%;padding:0;border:1px solid var(--line);border-top:3px solid var(--teal);background:white;overflow:hidden;}
.provider-photo{position:relative;aspect-ratio:1/1;overflow:hidden;background:#dce5ee;}
.provider-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;}
.provider-paul,.provider-patti,.provider-clarke,.provider-morgan{transform:none;}
.provider-copy{padding:30px 32px 34px;}
.team article h3{margin:0 0 8px;font-size:1.55rem;}
.team p{font-size:.975rem;line-height:1.72;margin:0 0 14px;}
.team p:last-child{margin-bottom:0;}
.credential{font-size:.9375rem;color:var(--teal);display:block;margin-bottom:18px;line-height:1.6;}
@media(max-width:760px){.team{grid-template-columns:1fr;gap:24px;}.provider-copy{padding:26px 24px 30px;}}

/* Visually balance the About page approach list against the full text block. */
.approach-section .prose{align-self:center;}

/* Patient forms */
.forms-page{background:#fff;}
.forms-notice{display:grid;grid-template-columns:180px minmax(0,1fr);gap:48px;padding:34px 38px;background:var(--navy);color:#fff;margin-bottom:76px;align-items:start;}
.forms-notice h2{color:#fff;font-size:2rem;margin-bottom:16px;}
.forms-notice p{color:#dce6ef;margin-bottom:8px;max-width:760px;}
.forms-step{font-size:.875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#c8d8e6;padding-top:8px;}
.forms-group{margin-bottom:82px;}
.forms-group-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:30px;}
.forms-group-head .eyebrow{margin-bottom:12px;}
.forms-group-head h2{font-size:clamp(2rem,3vw,3rem);}
.forms-group-head>p{max-width:470px;margin:0;}
.forms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.forms-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));}
.form-card{display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:30px;background:var(--pale);border:1px solid var(--line);border-top:3px solid var(--teal);min-width:0;}
.form-card h3{font-size:1.45rem;margin:8px 0 12px;}
.form-card p{font-size:1rem;line-height:1.65;margin:0;}
.form-card .button{align-self:flex-start;}
.form-card .link{align-self:flex-start;margin-top:auto;}
.form-card.compact{min-height:255px;}
.form-type{display:block;font-size:.8125rem;line-height:1.5;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);}
.forms-information{margin-bottom:64px;}
.forms-help{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:42px 46px;background:var(--mint);border:1px solid var(--line);}
.forms-help .eyebrow{margin-bottom:12px;}
.forms-help h2{font-size:2rem;margin-bottom:12px;}
.forms-help p{max-width:660px;margin:0;}
.forms-help .button{flex-shrink:0;}
@media(max-width:960px){.forms-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.forms-notice{grid-template-columns:150px minmax(0,1fr);gap:30px;}.forms-group-head{align-items:start;}}
@media(max-width:680px){.forms-notice{grid-template-columns:1fr;gap:12px;padding:28px 24px;margin-bottom:56px;}.forms-grid,.forms-grid-two{grid-template-columns:1fr;}.forms-group{margin-bottom:58px;}.forms-group-head{display:block;margin-bottom:24px;}.forms-group-head>p{margin-top:16px;}.form-card,.form-card.compact{min-height:0;padding:26px;}.forms-help{display:block;padding:30px 26px;}.forms-help .button{margin-top:24px;}}

/* Signature Care: keep the introduction visually connected and align the grid to three pathways. */
#signature-care .signature-head{display:block;max-width:780px;margin-bottom:46px;}
#signature-care .signature-head h2{margin-bottom:24px;}
#signature-care .signature-head>p{max-width:720px;margin:0;font-size:1.125rem;}
#signature-care .paths{grid-template-columns:repeat(3,minmax(0,1fr));}

@media(max-width:960px){
  #signature-care .paths{grid-template-columns:repeat(3,minmax(0,1fr));}
  #signature-care .path-card:nth-child(2){border-right:1px solid var(--line);}
  #signature-care .path-card:nth-child(-n+2){border-bottom:0;}
}

@media(max-width:680px){
  #signature-care .signature-head{margin-bottom:32px;}
  #signature-care .signature-head h2{margin-bottom:20px;}
  #signature-care .signature-head>p{font-size:1rem;}
  #signature-care .paths{grid-template-columns:1fr;}
  #signature-care .path-card,
  #signature-care .path-card:nth-child(2){border-right:0;}
  #signature-care .path-card:nth-child(-n+2){border-bottom:1px solid var(--line);}
}

/* Keep the office number easy to find without crowding the scheduling button. */
.side-card .schedule-phone{display:block;margin-top:14px;text-align:center;font-family:Manrope,sans-serif;font-size:1.125rem;font-weight:700;line-height:1.4;color:var(--navy);letter-spacing:.01em;}
.side-card .schedule-phone:hover{text-decoration:underline;text-underline-offset:4px;}

/* Keep OPTA's phone number continuously visible on mobile without affecting desktop. */
.mobile-call-bar{display:none;}
@media(max-width:760px){
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom));}
  .mobile-call-bar{display:flex;position:fixed;z-index:60;left:0;right:0;bottom:0;min-height:64px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));align-items:center;justify-content:center;background:var(--navy);color:#fff;border-top:1px solid #ffffff2e;box-shadow:0 -8px 24px #203a5726;font-family:Manrope,sans-serif;font-size:1rem;font-weight:700;letter-spacing:.01em;text-align:center;}
  .mobile-call-bar:hover{background:#294c72;}
  .mobile-call-bar:focus-visible{outline:3px solid var(--gold);outline-offset:-6px;}
}

/* Mobile homepage hero: reserve image space and keep the caption in the hero flow. */
@media(max-width:760px){
  .hero{min-width:0;}
  .hero-visual{min-width:0;min-height:0;aspect-ratio:auto;overflow:hidden;}
  .hero-visual img{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;}
  .hero-visual .photo-note{position:relative;left:auto;bottom:auto;margin:0;padding:16px 20px;background:#fff;border-left:3px solid var(--teal);overflow-wrap:break-word;}
}

/* Consistent solid black markers for content lists. */
main ul:not(.nav){list-style-type:disc;}main ul li::marker{color:#000;}main .prose ul{list-style:none;}

/* Shorter desktop header with a compact navigation row while scrolling. */
@media(min-width:961px){
  header .header-inner{grid-template-columns:220px minmax(0,1fr);column-gap:28px;row-gap:0;padding:12px 0 0;}
  header .brand{width:220px;}
  header .header-business{font-size:1.0625rem;}
  header .header-tagline{font-size:.875rem;}
  header .header-identity{gap:4px;}
  header .nav{margin-top:10px;padding:7px 0;gap:14px;}
  header .nav .button{padding:12px 18px;}
  header.header-compact{background:#fff;box-shadow:0 3px 12px #203a5712;}
  header.header-compact .header-inner{display:flex;gap:24px;padding:10px 0;}
  header.header-compact .brand{width:132px;flex:0 0 132px;}
  header.header-compact .header-identity{display:none;}
  header.header-compact .nav{flex:1;min-width:0;border-top:0;margin:0;padding:0;gap:14px;flex-wrap:nowrap;}
  header.header-compact .nav a{white-space:nowrap;font-size:.875rem;}
  html{scroll-padding-top:100px;}
  .side-card{top:100px;}
}
@media(min-width:961px) and (max-width:1150px){
  header.header-compact .header-inner{gap:16px;}
  header.header-compact .brand{width:112px;flex-basis:112px;}
  header.header-compact .nav{gap:10px;}
  header.header-compact .nav a{font-size:.8125rem;}
  header.header-compact .nav .button{padding:12px 10px;}
}
