/* Design 402. Primary Care. Shared design tokens and components.
   Fonts: Exo 2 (400, 700), Exo (500), locally bundled Latin WOFF2.
   Reference palette: BeFactory 2. Generated photographs: design 402.
   Main content 1060px. Mobile <768; tablet 768–1099; laptop 1100–1439; desktop >=1440.
   Effects: menu disclosure, image hover, keyboard/touch flip card, smooth back-to-top.
*/
@font-face{font-family:"Exo 2";src:url("fonts/exo2-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Exo 2";src:url("fonts/exo2-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Exo";src:url("fonts/exo-medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
:root{--titles:#6383aa;--subtitles:#87a4c8;--text:#e2e2e4;--links:#6383aa;--light-1:#f7f7f7;--light-2:#e8e8e8;--dark-bg:#1e1f23;--borders:#45464a;--white:#fff;--accent:#8e563a;--accent-hover:#81492d;--dark-text:#303238;--font-body:"Exo 2",Arial,sans-serif;--font-hero:"Exo","Exo 2",Arial,sans-serif;--content-width:1060px;--gutter:48px;--section-space:120px;--h1:clamp(3.4rem,5.5vw,5.625rem);--h2:clamp(2rem,3.25vw,3.125rem);--body:1rem;--small:.8125rem;--tracking:.055em;--pattern-dark:url("images/texture-dark.jpg");--pattern-light:url("images/texture-light.png");--pattern-blue:url("images/texture-blue.jpg")}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--dark-bg);color:var(--text);font-family:var(--font-body);font-size:var(--body);line-height:1.9;font-weight:400;letter-spacing:.035em}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button{letter-spacing:inherit}img{display:block;width:100%;max-width:100%;height:auto}svg{display:block}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:400;letter-spacing:0}h2{font-size:var(--h2);line-height:1.2;color:var(--titles)}h3{font-size:1.35rem;line-height:1.45}p+p{margin-top:20px}ul{margin:0;padding:0;list-style:none}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--subtitles);outline-offset:6px}a:active{filter:brightness(.9)}::selection{background:var(--accent);color:white}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.container{width:calc(100% - var(--gutter)*2);max-width:var(--content-width);margin-inline:auto}.eyebrow{display:block;font-size:var(--small);font-weight:400;line-height:1.65;letter-spacing:.13em;text-transform:uppercase}.arrow{width:30px;height:16px;fill:none;stroke:currentColor;stroke-width:1.2;flex-shrink:0}.line-icon{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:14px 24px;background:var(--accent);color:var(--white);border:0;font-size:var(--small);line-height:1.5;letter-spacing:.075em;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{background:var(--accent-hover)}.button .arrow{width:23px;transition:transform .2s}.button:hover .arrow{transform:translateX(3px)}.skip-link{position:absolute;top:12px;left:12px;z-index:100;padding:10px 20px;background:var(--white);color:var(--dark-bg);transform:translateY(-180%)}.skip-link:focus{transform:none}
/* Header: transparent on desktop; compact disclosure navigation below 1100px. */
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;gap:36px;padding:30px 32px;color:var(--white)}.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}.brand-mark{width:58px;height:61px;fill:none;stroke:currentColor;stroke-width:3;stroke-linejoin:miter}.brand span{font-size:12px;font-weight:700;letter-spacing:.045em;line-height:1.3}.main-nav{display:flex;align-items:center;gap:26px;margin-left:10px}.main-nav>a,.nav-pair>a,.more-toggle{font-size:12px;line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:.075em}.main-nav>a,.nav-pair>a{padding-block:15px;border-bottom:1px solid transparent}.main-nav>a:hover,.nav-pair>a:hover{border-color:rgba(255,255,255,.6)}.nav-group{position:relative}.nav-pair{display:flex;align-items:center;gap:4px}.submenu-toggle{border:0;background:none;color:inherit;padding:12px 5px;min-height:44px;line-height:1}.more-toggle{display:flex;align-items:center;gap:10px}.submenu{display:none;position:absolute;top:calc(100% + 8px);left:-20px;width:245px;padding:10px 0;background:var(--dark-bg);border-top:3px solid var(--accent);box-shadow:0 12px 30px #0003}.submenu a{display:block;padding:11px 20px;font-size:14px;line-height:1.5;letter-spacing:.02em}.submenu a:hover,.submenu a:focus-visible{background:#ffffff0b;color:var(--subtitles)}.nav-group:has([aria-expanded="true"])>.submenu{display:block}.submenu-more{left:auto;right:-15px}.header-cta{margin-left:auto;font-size:11px;padding:12px 18px;min-height:46px;white-space:nowrap}.menu-toggle{display:none}
/* Signature hero: a blue half-panel projects below a full-width photograph. */
.hero{position:relative;min-height:800px;height:clamp(800px,61.6vw,1100px);isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:calc(100% - 115px);object-fit:cover;object-position:center;z-index:-3}.hero-shade{position:absolute;inset:0 0 115px;background:linear-gradient(90deg,#10223733,#0e172000 80%);z-index:-2}.hero-panel{position:absolute;inset:0 auto 0 0;width:50%;background:rgba(99,131,170,.76);z-index:-1}.hero-content{padding-top:clamp(210px,15.5vw,285px);padding-bottom:85px}.hero h1{font-family:var(--font-hero);font-weight:500;font-size:var(--h1);line-height:1.12;letter-spacing:-.015em;color:var(--white);max-width:900px}.hero .button{margin-top:48px}.hero p{margin-top:32px;font-size:14px;line-height:1.8;letter-spacing:.015em;color:var(--white)}
/* Dark narrative surface and overlapping room photographs. */
.dark-surface{background-color:var(--dark-bg);background-image:var(--pattern-dark);background-repeat:repeat;background-position:center}.intro-section{display:flex;align-items:center;gap:100px;padding-top:150px;padding-bottom:115px}.intro-copy{flex:1;min-width:0}.intro-copy>.eyebrow{margin-bottom:25px;color:var(--text)}.intro-copy h2{margin-bottom:30px}.intro-copy p{font-size:15px;line-height:1.95;letter-spacing:.03em}.intro-copy .button{margin-top:34px}.room-composition{position:relative;flex:1;min-width:0;height:620px}.room-front{position:absolute;top:0;right:0;width:78%;z-index:2}.room-front img{aspect-ratio:4/5;object-fit:cover}.room-front figcaption{padding-top:22px;font-size:15px;line-height:1.7}.room-front figcaption .eyebrow{margin-bottom:9px;color:var(--subtitles)}.room-back{position:absolute;width:79%;height:380px;left:-24px;top:180px;overflow:hidden;background:var(--titles)}.room-back img{height:100%;object-fit:cover;object-position:60% center;filter:saturate(.4);opacity:.55}.section-heading{display:flex;align-items:flex-start;gap:100px;margin-bottom:65px}.section-heading>h2,.section-heading>p{flex:1;min-width:0}.section-heading>p{padding-top:7px;font-size:15px;line-height:1.95}.highlights{padding-top:30px;padding-bottom:0}.bento{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:260px 245px}.bento-photo{grid-column:1;grid-row:1 / 3;position:relative;overflow:hidden}.bento-photo img{height:100%;object-fit:cover;object-position:38% center;filter:saturate(.72)}.bento-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#111b2ddd)}.bento-photo figcaption{position:absolute;left:34px;bottom:30px;z-index:1;font-size:28px;letter-spacing:0;color:var(--white)}.bento-number{background:var(--accent);padding:24px 30px;grid-column:2;grid-row:1}.large-number{display:block;font-size:75px;line-height:1.1;letter-spacing:-.03em;color:var(--white);margin-bottom:16px}.bento-number h3{font-size:20px;color:var(--white)}.bento-number p{font-size:14px;line-height:1.75;margin-top:9px}.flip-card{display:block;background:none;padding:0;border:0;color:var(--white);grid-column:3;grid-row:1 / 3;text-align:left;perspective:1200px}.flip-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s}.flip-card[aria-pressed="true"] .flip-inner{transform:rotateY(180deg)}.flip-front,.flip-back{position:absolute;inset:0;display:flex;flex-direction:column;padding:38px 27px;background:var(--titles);backface-visibility:hidden}.flip-back{transform:rotateY(180deg);background:#486588}.flip-front .line-icon{margin-bottom:45px}.flip-heading{font-size:25px;line-height:1.35;letter-spacing:0}.flip-back>.flip-heading{margin-bottom:30px}.flip-back>span:not(.flip-heading):not(.flip-hint){font-size:15px;line-height:1.8}.flip-hint{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.04em}.flip-hint>span{font-size:25px}.bento-outline{grid-column:2;grid-row:2;padding:30px 25px;border:1px solid var(--borders)}.bento-outline .eyebrow{font-size:11px;color:var(--subtitles);margin-bottom:12px}.bento-outline h3{font-size:23px;line-height:1.25}.bento-outline p{font-size:13px;line-height:1.7;margin-top:14px}.care-quote{text-align:center;padding-top:105px;padding-bottom:80px}.quote-mark{display:block;color:var(--accent);font-size:95px;height:65px;line-height:1}.care-quote blockquote{font-size:clamp(1.9rem,3vw,2.75rem);line-height:1.4;letter-spacing:0;color:var(--white)}.care-quote .eyebrow{margin-top:27px;font-size:11px;color:var(--subtitles)}.stats{display:flex;gap:46px;padding-bottom:110px}.stat{flex:1;min-width:0;padding-bottom:27px;border-bottom:1px solid var(--borders)}.stat .line-icon{margin-bottom:26px}.stat-number{display:block;font-size:38px;line-height:1.2;color:var(--white);letter-spacing:0;margin-bottom:12px}.stat h3{font-size:13px;letter-spacing:.09em;text-transform:uppercase}.stat p{font-size:12px;line-height:1.8;letter-spacing:.03em;margin-top:9px}
/* Exact reference-style light band with interlocking image and text tiles. */
.light-surface{background-color:var(--light-1);color:var(--dark-text)}.treatments{padding-top:110px;position:relative;isolation:isolate}.treatments:before{position:absolute;content:"";inset:0 0 auto;height:480px;background:var(--light-2) var(--pattern-light) repeat center;z-index:-1}.treatment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.treatment-card{padding:39px 34px 32px;min-height:287px;background:var(--light-2);display:flex;flex-direction:column;transition:background .25s}.treatment-card h3{font-size:15px;line-height:1.6;letter-spacing:.095em;text-transform:uppercase;color:#49678d}.treatment-card p{font-size:14px;line-height:1.85;letter-spacing:.02em;margin:18px 0 26px}.treatment-card .arrow{margin-top:auto;color:var(--accent);transition:transform .25s}.treatment-card:hover{background:#dcdfe4}.treatment-card:hover .arrow{transform:translateX(7px)}.treatment-card.copper{background:var(--accent);color:var(--white)}.treatment-card.copper:hover{background:var(--accent-hover)}.treatment-card.blue{background:var(--titles);color:var(--white)}.treatment-card.blue:hover{background:#557599}.treatment-card.copper h3,.treatment-card.blue h3,.treatment-card.copper .arrow,.treatment-card.blue .arrow{color:var(--white)}.treatment-photo{overflow:hidden;background:var(--titles)}.treatment-photo img{height:100%;object-fit:cover;object-position:50% 35%;transition:transform .6s;filter:saturate(.65)}.treatment-photo:hover img{transform:scale(1.04)}.treatment-photo .consultation-crop{object-position:25% center}.blue-photo img{opacity:.6;mix-blend-mode:luminosity;object-position:70% center}
.testimonial-section{padding:120px 0;background:var(--light-1);color:var(--dark-text)}.testimonial-layout{display:flex;gap:100px}.testimonial-layout>div,.testimonial-layout>figure{flex:1;min-width:0}.testimonial-layout .eyebrow{color:var(--accent);margin-bottom:23px}.patient-quote{padding-top:12px}.patient-quote blockquote{font-size:26px;line-height:1.6;letter-spacing:0}.patient-quote figcaption{margin-top:24px;font-size:12px;line-height:1.7;color:#686b70}.appointment-section{padding:105px 0}.appointment-layout{display:flex;align-items:center;gap:100px}.appointment-layout>div{flex:1;min-width:0}.appointment-layout .eyebrow{margin-bottom:22px}.appointment-layout p{font-size:15px;line-height:1.9}.appointment-layout .button{margin-top:30px}
/* Four-column footer and narrow copyright bar. */
.site-footer{background:var(--titles) var(--pattern-blue) repeat center;color:var(--white)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.15fr 1.2fr;gap:48px;padding-top:88px;padding-bottom:75px}.footer-brand .brand-mark{width:53px;height:55px}.footer-brand p{font-size:13px;line-height:1.9;margin-top:23px}.footer-contact{display:inline-block;font-size:12px;margin-top:20px;border-bottom:1px solid #ffffff70}.footer-grid h2{font-size:14px;color:#182535;text-transform:uppercase;letter-spacing:.065em;margin:7px 0 24px;line-height:1.5}.footer-grid ul li{font-size:13px;line-height:1.75;margin-bottom:11px}.footer-grid a:not(.brand):hover{text-decoration:underline;text-underline-offset:5px}.hours{font-size:13px;line-height:1.85;margin:0}.hours>div+div{margin-top:16px}.hours dt{color:#17293e}.hours dd{margin:3px 0 0}.hours-note{font-size:12px;margin-top:20px}.footer-bottom{border-top:1px solid #ffffff1f;padding:22px 0}.footer-bottom>.container{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;letter-spacing:.025em}.footer-bottom .container>div{display:flex;gap:24px;align-items:center}.back-to-top{width:42px;height:42px;background:var(--accent);color:var(--white);border:0;font-size:23px}.back-to-top:hover{background:var(--accent-hover)}
/* Bare content elements, shared with future inner pages. */
.content-body{max-width:720px}.content-body h2{margin:2em 0 .6em}.content-body h3{color:var(--titles);margin:1.7em 0 .6em}.content-body p{margin:1em 0}.content-body ul{list-style:disc;padding-left:1.4em;margin:1.4em 0}.content-body figure{margin:2em 0}.content-body blockquote{border-left:3px solid var(--accent);padding:8px 0 8px 28px;font-size:1.4rem;margin:2em 0}.content-body figcaption{font-size:var(--small);margin-top:10px}
@media(min-width:1800px){.hero-content{max-width:1120px}.site-header{gap:46px;padding:40px}.main-nav{gap:34px}.hero h1{font-size:100px}.hero .button{margin-top:54px}}
@media(max-width:1250px){.site-header{gap:22px;padding-inline:24px}.main-nav{gap:18px;margin-left:0}.header-cta{font-size:10px;padding-inline:14px}.brand-mark{width:50px;height:53px}.brand span{font-size:11px}.intro-section,.section-heading,.testimonial-layout,.appointment-layout{gap:65px}.bento-number{padding-inline:23px}.bento-outline{padding-inline:22px}.footer-grid{gap:32px}}
@media(max-width:1099px){:root{--gutter:40px;--h1:clamp(3.25rem,7.5vw,5.3rem)}.site-header{gap:24px;padding:25px 32px}.header-cta{margin-left:auto;font-size:11px;order:1}.menu-toggle{order:2;display:flex;align-items:center;gap:12px;background:none;color:var(--white);border:1px solid #ffffff55;padding:10px 12px;min-height:46px;font-size:12px}.menu-lines{width:18px;height:10px;border-top:1px solid;border-bottom:1px solid;position:relative}.menu-lines:after{content:"";position:absolute;width:100%;top:4px;left:0;border-top:1px solid}.main-nav{display:none;position:absolute;top:100%;right:32px;left:32px;padding:16px 25px;background:var(--dark-bg);border-top:3px solid var(--accent);max-height:calc(100dvh - 125px);overflow:auto;box-shadow:0 15px 25px #0004}.main-nav.is-open{display:block}.main-nav>a,.nav-pair{display:flex;width:100%;border-bottom:1px solid var(--borders)}.main-nav>a{padding:15px 0}.nav-pair{justify-content:space-between}.nav-pair>a{flex:1}.submenu-toggle{min-width:44px}.more-toggle{justify-content:space-between;width:100%;padding:15px 0}.submenu{position:static;width:100%;box-shadow:none;border:0;padding:0 0 10px 14px}.submenu-more{columns:2}.hero{height:830px;min-height:830px}.hero-photo{object-position:60% center}.hero-content{padding-top:205px}.hero-panel{width:54%}.intro-section{padding-top:110px;gap:45px;padding-bottom:95px}.intro-copy h2{font-size:35px}.room-composition{height:530px}.room-back{height:310px;left:-10px;top:135px}.room-front{width:84%}.room-front figcaption{font-size:13px}.section-heading{gap:45px;margin-bottom:45px}.section-heading>p{font-size:14px}.bento{grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:270px 260px}.bento-number{padding:28px 21px}.large-number{font-size:68px}.flip-front,.flip-back{padding:32px 22px}.flip-heading{font-size:23px}.bento-outline{padding:25px 20px}.bento-outline h3{font-size:21px}.bento-photo figcaption{left:24px;right:20px;font-size:25px}.stats{gap:30px}.stat p{font-size:12px}.treatment-card{padding:30px 26px;min-height:305px}.treatment-card h3{font-size:14px}.treatment-card p{font-size:13px}.testimonial-layout,.appointment-layout{gap:45px}.patient-quote blockquote{font-size:23px}.footer-grid{grid-template-columns:1fr 1fr;gap:50px 65px}.footer-brand{grid-column:1;grid-row:1 / 3}.footer-grid>div:last-child{grid-column:1;grid-row:2}.footer-grid>div:nth-child(3){grid-column:2;grid-row:2}.footer-brand{grid-row:1}}
@media(max-width:767px){:root{--gutter:24px;--h1:clamp(2.3rem,8.75vw,4.6rem);--h2:2rem;--body:.9375rem}.site-header{padding:22px 24px;gap:14px}.brand-mark{width:44px;height:47px}.brand{gap:10px}.brand span{font-size:10px}.header-cta{display:none}.menu-toggle{margin-left:auto}.main-nav{left:24px;right:24px}.hero{height:auto;min-height:750px;padding-bottom:55px}.hero-photo{height:calc(100% - 65px);object-position:68% center}.hero-shade{bottom:65px;background:#10223720}.hero-panel{width:76%;background:rgba(99,131,170,.81)}.hero-content{padding-top:200px;padding-bottom:70px}.hero h1{line-height:1.16;letter-spacing:-.02em}.hero .button{margin-top:39px;font-size:11px;gap:15px;padding:14px 18px;min-height:50px}.hero p{margin-top:27px;font-size:12px;line-height:1.9;max-width:310px}.intro-section{flex-direction:column;align-items:stretch;padding-top:80px;padding-bottom:75px;gap:55px}.intro-copy>.eyebrow{font-size:11px;margin-bottom:18px}.intro-copy h2{font-size:32px;margin-bottom:26px}.intro-copy p{font-size:14px;line-height:1.95}.intro-copy .button{font-size:11px}.room-composition{flex:none;width:100%;height:540px}.room-front{width:76%}.room-front img{max-height:390px}.room-back{left:0;top:140px;width:75%;height:315px}.room-front figcaption{padding-top:18px;font-size:13px}.room-front figcaption .eyebrow{font-size:11px}.highlights{padding-top:0}.section-heading{flex-direction:column;gap:25px;margin-bottom:35px}.section-heading>p{font-size:14px;padding-top:0}.bento{grid-template-columns:1fr 1fr;grid-template-rows:300px 255px 270px}.bento-photo{grid-column:1 / 3;grid-row:1}.bento-photo img{object-position:center 44%}.bento-photo figcaption{font-size:27px;bottom:25px}.bento-number{grid-column:1;grid-row:2;padding:25px 21px}.bento-number h3{font-size:19px}.bento-number p{font-size:13px}.large-number{font-size:65px;margin-bottom:15px}.flip-card{grid-column:2;grid-row:2 / 4}.flip-front,.flip-back{padding:31px 20px}.flip-heading{font-size:23px}.flip-back>span:not(.flip-heading):not(.flip-hint){font-size:14px}.flip-hint{font-size:11px}.bento-outline{grid-column:1;grid-row:3;padding:25px 20px}.bento-outline h3{font-size:21px}.bento-outline .eyebrow{font-size:10px;letter-spacing:.08em}.bento-outline p{font-size:12px}.care-quote{padding-top:75px;padding-bottom:55px}.care-quote blockquote{font-size:27px;line-height:1.5}.care-quote blockquote br{display:none}.care-quote .eyebrow{font-size:10px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:35px 24px;padding-bottom:75px}.stat{padding-bottom:23px}.stat .line-icon{width:40px;height:40px;margin-bottom:22px}.stat h3{font-size:11px;line-height:1.6}.stat p{font-size:11px}.stat-number{font-size:33px}.treatments{padding-top:75px}.treatments:before{height:370px}.treatment-grid{grid-template-columns:1fr 1fr}.treatment-card{padding:26px 21px;min-height:300px}.treatment-card h3{font-size:12px;line-height:1.7;letter-spacing:.05em}.treatment-card p{font-size:12px;line-height:1.9;letter-spacing:0}.treatment-photo{min-height:265px}.treatment-grid>.treatment-card:last-child{grid-column:1 / 3;min-height:220px}.treatment-grid>.treatment-card:last-child h3 br{display:none}.treatment-grid>.treatment-card:last-child p{max-width:360px}.testimonial-section{padding:75px 0}.testimonial-layout{flex-direction:column;gap:27px}.testimonial-layout .eyebrow{font-size:11px;margin-bottom:20px}.patient-quote{padding-top:0}.patient-quote blockquote{font-size:23px;line-height:1.6}.patient-quote figcaption{font-size:11px}.appointment-section{padding:75px 0}.appointment-layout{flex-direction:column;align-items:stretch;gap:27px}.appointment-layout .eyebrow{font-size:11px}.appointment-layout p{font-size:14px}.appointment-layout .button{font-size:11px}.footer-grid{padding-top:65px;padding-bottom:55px;gap:45px 25px}.footer-brand .brand-mark{width:44px;height:47px}.footer-brand p{font-size:12px}.footer-contact{font-size:11px}.footer-grid h2{font-size:12px;margin-top:3px;margin-bottom:20px}.footer-grid ul li,.hours{font-size:12px}.hours-note{font-size:11px}.footer-bottom>.container{align-items:flex-start;flex-direction:column;gap:18px;font-size:10px}.footer-bottom .container>div{width:100%}.back-to-top{margin-left:auto;width:38px;height:38px}}
@media(max-width:374px){:root{--gutter:20px}.site-header{padding-inline:20px}.hero{min-height:710px}.hero-content{padding-top:180px}.hero p{font-size:11px}.room-composition{height:480px}.room-back{height:260px}.bento{grid-template-rows:270px 280px 290px}.bento-number,.bento-outline{padding-inline:16px}.flip-front,.flip-back{padding-inline:16px}.flip-heading{font-size:20px}.treatment-card{padding-inline:16px}.footer-grid{gap:38px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Round two. Shared additions to the approved home page system. */
:root{--section-inner:100px;--inner-h1:clamp(2.7rem,5.1vw,4.75rem);--body-width:720px;--field-bg:#fff;--field-border:#bfc5cc;--focus:#486588;--error:#a43a2b}
.inner-page .site-header{position:relative;background:var(--dark-bg)}
.main-nav [aria-current="page"]{border-bottom-color:var(--white);color:var(--white)}
.inner-hero{position:relative;isolation:isolate;background:var(--dark-bg);padding:105px 0 115px;min-height:400px;color:var(--white)}
.inner-hero:before{content:"";position:absolute;inset:0 50% -45px 0;background:rgba(99,131,170,.84);z-index:-1}
.inner-hero .eyebrow{margin-bottom:25px;color:var(--white)}
.inner-hero h1{font-family:var(--font-hero);font-size:var(--inner-h1);font-weight:500;line-height:1.12;letter-spacing:-.015em;max-width:900px;text-transform:uppercase}
.inner-hero p{max-width:570px;font-size:16px;line-height:1.9;margin-top:27px}
.inner-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 45%;z-index:-3;filter:brightness(.55)}
.inner-hero:has(.inner-hero-photo):after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#111a2455,transparent);z-index:-2}
.page-section{padding:var(--section-inner) 0}.page-section.light-surface{color:var(--dark-text)}
.page-section .section-heading{margin-bottom:48px}.page-section .section-heading>p{font-size:16px}
.split{display:flex;align-items:center;gap:85px}.split>*{flex:1;min-width:0}.split.align-start{align-items:flex-start}.split.reverse{flex-direction:row-reverse}
.split h2{margin-bottom:26px}.split p{font-size:16px;line-height:1.9}.split .eyebrow{margin-bottom:20px;color:var(--subtitles)}
.split .button{margin-top:28px}.light-surface .eyebrow{color:var(--accent)}
.feature-image{position:relative}.feature-image img{aspect-ratio:4/5;object-fit:cover;object-position:center}.feature-image.wide img{aspect-ratio:3/2}.feature-image figcaption{margin-top:18px;font-size:13px;line-height:1.65;color:inherit}
.section-intro{max-width:690px;margin-bottom:45px}.section-intro h2{margin-bottom:24px}.section-intro p{font-size:16px;line-height:1.9}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.plain-card{padding:34px;background:var(--light-2);color:var(--dark-text)}.plain-card h3{font-size:24px;line-height:1.35;color:#49678d;margin-bottom:18px}.plain-card p{font-size:15px;line-height:1.85}.plain-card .eyebrow{margin-bottom:16px}.plain-card.outline{background:transparent;border:1px solid var(--borders);color:var(--text)}.plain-card.outline h3{color:var(--subtitles)}
.photo-card{background:var(--light-2);color:var(--dark-text)}.photo-card>img{aspect-ratio:4/3;object-fit:cover}.photo-card>div{padding:28px}.photo-card h3{color:#49678d;font-size:25px;line-height:1.35;margin-bottom:12px}.photo-card p{font-size:15px;line-height:1.85}.photo-card .eyebrow{font-size:11px;margin-bottom:15px}
.step-list{display:flex;gap:35px;counter-reset:steps}.step{flex:1;min-width:0;border-top:1px solid var(--borders);padding-top:28px;counter-increment:steps}.step:before{content:counter(steps,decimal-leading-zero);display:block;font-size:52px;line-height:1.15;letter-spacing:-.03em;color:var(--subtitles);margin-bottom:24px}.step h3{font-size:23px;line-height:1.35;margin-bottom:16px}.step p{font-size:15px;line-height:1.9}
.light-surface .step{border-top-color:#c5c8cd}.light-surface .step h3{color:#49678d}
.filled-panel{padding:48px;background:var(--titles);color:var(--white)}.filled-panel h2,.filled-panel h3,.filled-panel .eyebrow{color:var(--white)}.filled-panel h3{font-size:30px;line-height:1.35;margin-bottom:18px}.filled-panel p{font-size:16px;line-height:1.85}.filled-panel .button{margin-top:27px}.filled-panel.copper{background:var(--accent)}
.hairline-list{margin:28px 0}.hairline-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #b9bfc6;padding:16px 0;font-size:15px;line-height:1.7}.hairline-list dt{flex:1}.hairline-list dd{margin:0;text-align:right}.dark-surface .hairline-list>div{border-color:var(--borders)}
.caption-row{display:flex;gap:25px;margin-top:42px}.caption-row>figure{flex:1;min-width:0}.caption-row img{aspect-ratio:4/3;object-fit:cover}.caption-row figcaption{font-size:13px;line-height:1.7;margin-top:14px}
.faq-list details{border-bottom:1px solid #b9bfc6}.faq-list details:first-child{border-top:1px solid #b9bfc6}.faq-list summary{list-style:none;cursor:pointer;font-size:18px;line-height:1.5;padding:23px 42px 23px 0;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:5px;top:20px;color:var(--accent);font-size:26px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 30px 24px 0;font-size:15px;line-height:1.9}.faq-list summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.faq-list summary:hover{color:var(--titles)}
.principal-quote{font-size:28px;line-height:1.55;letter-spacing:0;color:var(--subtitles);margin:30px 0}.team-wide{aspect-ratio:16/8;object-fit:cover;margin-bottom:32px}
.service-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#c8cbd0}.service-tile{background:var(--light-2);padding:40px;display:flex;flex-direction:column}.service-tile:nth-child(3n+1){background:var(--accent);color:var(--white)}.service-tile h3{font-size:25px;line-height:1.35;color:#49678d;margin-bottom:20px}.service-tile:nth-child(3n+1) h3{color:var(--white)}.service-tile p{font-size:16px;line-height:1.85;margin-bottom:25px}.service-tile .text-link{margin-top:auto}.text-link{display:inline-block;font-size:13px;line-height:1.7;letter-spacing:.07em;text-transform:uppercase;text-decoration:underline;text-underline-offset:6px}.text-link:hover{opacity:.8}
.page-section .stats{padding-bottom:0;margin-top:48px}.stats .stat.large{border-color:#c5c8cd}.light-surface .stat-number{color:var(--titles)}.light-surface .stat h3{color:var(--dark-text)}
.post-header{padding:85px 0 60px;background:var(--dark-bg) var(--pattern-dark) repeat;color:var(--white)}.post-header .eyebrow{color:var(--subtitles);margin-bottom:25px}.post-header h1{font-family:var(--font-hero);font-weight:500;font-size:clamp(2.5rem,4.3vw,4.25rem);line-height:1.18;letter-spacing:-.015em;max-width:950px}.post-meta{margin-top:27px;display:flex;gap:25px;font-size:13px;line-height:1.8;color:var(--text)}
.post-feature{background:var(--dark-bg)}.post-feature img{aspect-ratio:16/7;object-fit:cover;object-position:center 43%}.article-section{background:var(--light-1);color:var(--dark-text);padding:75px 0 100px}.article-section .content-body{margin-inline:auto;max-width:var(--body-width);width:calc(100% - var(--gutter)*2)}
.content-body>p:first-child{font-size:21px;line-height:1.75;margin-top:0}.content-body h2{font-size:34px;line-height:1.25;color:#49678d;letter-spacing:0}.content-body h3{font-size:25px;line-height:1.35;color:#49678d;letter-spacing:0}.content-body p,.content-body li{font-size:16px;line-height:1.95}.content-body li+li{margin-top:9px}.content-body blockquote{color:#49678d;font-size:24px;line-height:1.65;letter-spacing:0}.content-body figcaption{font-size:13px;line-height:1.7;color:#686b70}.content-body a{text-decoration:underline;text-underline-offset:4px;color:#49678d}
.article-source{border-top:1px solid #c5c8cd;margin-top:45px;padding-top:24px;font-size:13px;line-height:1.8;color:#686b70}.article-nav{border-top:1px solid #c5c8cd;margin-top:40px;padding-top:28px;display:flex;justify-content:space-between;gap:25px}
.quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.quote-card{padding:38px;background:var(--light-2);color:var(--dark-text)}.quote-card:nth-child(3n+1){background:var(--titles);color:var(--white)}.quote-card blockquote{font-size:24px;line-height:1.6;letter-spacing:0}.quote-card figcaption{border-top:1px solid currentColor;padding-top:18px;margin-top:26px;font-size:12px;line-height:1.6;opacity:.85}.editorial-note{font-size:13px;line-height:1.8;color:#686b70;margin-top:26px;max-width:760px}.dark-surface .editorial-note{color:#bfc5cc}
.study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 32px;margin-top:65px}.study-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.study-pair figure{position:relative}.study-pair img{aspect-ratio:4/5;object-fit:cover}.study-pair figcaption{position:absolute;left:14px;bottom:14px;background:var(--dark-bg);color:var(--white);font-size:11px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px}.study-title{display:flex;align-items:baseline;gap:18px;margin-bottom:20px}.study-title span{font-size:13px;letter-spacing:.09em;color:var(--accent)}.study-title h3{font-size:25px;line-height:1.3;color:#49678d}.study-caption{font-size:14px;line-height:1.8;margin-top:19px}.study-feature .study-pair img{aspect-ratio:5/4}.study-feature .study-title h3{font-size:34px}
.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.offer{border:1px solid #c5c8cd;padding:40px;display:flex;flex-direction:column}.offer .eyebrow{font-size:12px;margin-bottom:22px}.offer h2{font-size:34px;line-height:1.25;margin-bottom:24px}.offer .offer-value{font-size:46px;line-height:1.2;color:var(--accent);margin-bottom:22px}.offer p{font-size:16px;line-height:1.85}.offer-terms{padding-top:22px;margin-top:28px;border-top:1px solid #c5c8cd;font-size:12px;line-height:1.8}.offer .button{margin-top:28px;align-self:flex-start}.voucher{display:flex;border:2px dashed var(--accent);margin-top:70px;color:var(--dark-text)}.voucher-stub{flex:0 0 28%;border-right:2px dashed var(--accent);padding:50px 30px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#eee7e2}.voucher-value{font-size:65px;line-height:1.1;color:var(--accent);letter-spacing:-.03em}.voucher-stub .eyebrow{margin-top:17px;font-size:11px}.voucher-body{padding:43px;flex:1;min-width:0}.voucher-body h3{font-size:31px;color:#49678d;margin-bottom:20px}.voucher-body p{font-size:15px;line-height:1.85}.voucher-code{display:inline-block;padding:8px 15px;border:1px dashed var(--accent);margin-top:23px;font-size:15px;letter-spacing:.16em}.small-print{margin-top:60px;max-width:720px}.small-print h2{font-size:30px;margin-bottom:22px}.small-print p{font-size:14px;line-height:1.85}
.contact-lines{margin:0}.contact-lines>div{padding:22px 0;border-bottom:1px solid var(--borders)}.contact-lines dt{font-size:12px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;color:var(--subtitles);margin-bottom:8px}.contact-lines dd{margin:0;font-size:21px;line-height:1.7;letter-spacing:0;overflow-wrap:anywhere}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:flex;flex-direction:column;gap:9px;font-size:14px;line-height:1.6}.field.full,.form-note,.form-actions{grid-column:1 / 3}.field input,.field select,.field textarea{width:100%;min-width:0;padding:14px 16px;min-height:52px;border:1px solid var(--field-border);background:var(--field-bg);color:var(--dark-text);font-size:16px;line-height:1.6;border-radius:0}.field textarea{min-height:160px;resize:vertical}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--titles)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--focus);outline-offset:2px}.field input:user-invalid,.field textarea:user-invalid{border-color:var(--error)}.form-note{font-size:13px;line-height:1.8;color:#686b70}.form-actions .button{margin:0}.contact-telephone{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.4;color:var(--subtitles);letter-spacing:0;margin:25px 0}
.article-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.article-card{display:block;background:var(--light-2);color:var(--dark-text)}.article-card>img{aspect-ratio:3/2;object-fit:cover}.article-card>div{padding:35px}.article-card .eyebrow{font-size:12px;margin-bottom:22px}.article-card h2{font-size:32px;line-height:1.3;margin-bottom:24px;color:#49678d}.article-card:hover h2{text-decoration:underline;text-underline-offset:5px}.article-card .post-meta{color:#686b70;font-size:12px;margin-top:0}.archive-end{border-top:1px solid #c5c8cd;display:flex;justify-content:space-between;gap:25px;padding-top:25px;margin-top:45px;font-size:13px}
.utility-page{background:var(--dark-bg) var(--pattern-dark) repeat}.utility-main{min-height:650px;padding:105px 0}.utility-main .eyebrow{color:var(--subtitles);margin-bottom:25px}.utility-main h1{font-family:var(--font-hero);font-weight:500;font-size:clamp(2.7rem,6vw,5.5rem);line-height:1.15;letter-spacing:-.015em;color:var(--white);max-width:900px}.utility-main p{max-width:610px;margin-top:30px;font-size:17px;line-height:1.9}.utility-main .button{margin-top:35px}.utility-number{font-size:clamp(5rem,15vw,12rem);line-height:1;color:var(--titles);letter-spacing:-.045em;margin-bottom:25px}.utility-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:35px;font-size:14px}.utility-links a{text-decoration:underline;text-underline-offset:5px}.coming-photo{width:100%;height:400px;object-fit:cover;object-position:center 50%}
.search-controls{display:flex;gap:15px;align-items:stretch;margin-bottom:24px}.search-controls input{flex:1;min-width:0;background:var(--white);border:1px solid var(--field-border);padding:15px 20px;font-size:18px;color:var(--dark-text);border-radius:0}.search-controls input:focus{outline:2px solid var(--focus);outline-offset:2px}.search-summary{font-size:14px;color:#686b70;margin-bottom:35px}.search-result{padding:28px 0;border-top:1px solid #c5c8cd}.search-result .eyebrow{font-size:11px;margin-bottom:10px}.search-result h2{font-size:27px;line-height:1.35;margin-bottom:12px}.search-result a:hover{text-decoration:underline}.search-result p{font-size:15px;line-height:1.8;max-width:780px}.empty-results{padding:45px 0}.empty-results h2{font-size:30px;margin-bottom:20px}.empty-results p{font-size:16px}.search-label{display:block;font-size:14px;margin-bottom:12px}
[hidden]{display:none!important}
@media(max-width:1099px){:root{--section-inner:80px;--inner-h1:clamp(2.7rem,5.6vw,4.2rem)}.inner-hero{padding:80px 0 95px;min-height:370px}.split{gap:45px}.card-grid{gap:20px}.card-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.plain-card{padding:27px}.plain-card h3{font-size:22px}.plain-card p{font-size:14px}.step-list{gap:25px}.filled-panel{padding:34px}.study-grid{gap:40px 25px}.offer{padding:30px}.voucher-body{padding:33px}.voucher-stub{padding:35px 25px}.service-tile{padding:33px}.article-card>div{padding:28px}.article-card h2{font-size:28px}.post-feature img{aspect-ratio:16/8}.inner-page .main-nav{top:100%}}
@media(max-width:767px){:root{--section-inner:65px;--inner-h1:clamp(2.2rem,8.5vw,3.5rem)}.inner-hero{padding:65px 0 75px;min-height:340px}.inner-hero:before{right:24%;bottom:-28px}.inner-hero .eyebrow{font-size:11px;margin-bottom:20px}.inner-hero p{font-size:14px;line-height:1.85;margin-top:24px}.inner-hero-photo{object-position:65% center}.split,.split.reverse{flex-direction:column;align-items:stretch;gap:35px}.split h2{margin-bottom:24px}.split p{font-size:15px}.split .eyebrow{font-size:11px}.feature-image img{max-height:510px}.card-grid,.card-grid.two{grid-template-columns:1fr}.card-grid.four{grid-template-columns:1fr 1fr;gap:16px}.card-grid.four .plain-card{padding:23px 18px}.card-grid.four .plain-card h3{font-size:21px}.card-grid.four .plain-card p{font-size:13px}.page-section .section-heading>p{font-size:15px}.step-list{flex-direction:column;gap:35px}.step:before{font-size:45px;margin-bottom:17px}.step h3{font-size:24px}.step p{font-size:15px}.caption-row{flex-direction:column;gap:30px}.caption-row img{max-height:300px}.filled-panel{padding:31px 25px}.filled-panel h3{font-size:27px}.filled-panel p{font-size:15px}.hairline-list>div{font-size:14px;gap:15px}.faq-list summary{font-size:17px}.faq-list details p{font-size:14px}.team-wide{aspect-ratio:4/3;object-position:50% center}.principal-quote{font-size:25px}.service-overview{grid-template-columns:1fr}.service-tile{padding:30px}.service-tile h3{font-size:25px}.service-tile p{font-size:15px}.post-header{padding:65px 0 42px}.post-header h1{font-size:clamp(2.1rem,8vw,3.3rem)}.post-header .eyebrow{font-size:11px}.post-meta{font-size:12px;gap:18px}.post-feature img{aspect-ratio:4/3}.article-section{padding:50px 0 65px}.content-body>p:first-child{font-size:19px;line-height:1.75}.content-body h2{font-size:29px}.content-body h3{font-size:23px}.content-body p,.content-body li{font-size:15px}.content-body blockquote{font-size:22px;padding-left:22px}.article-nav{flex-direction:column;gap:20px}.quote-grid{grid-template-columns:1fr;gap:20px}.quote-card{padding:29px}.quote-card blockquote{font-size:23px}.editorial-note{font-size:12px}.study-grid{grid-template-columns:1fr;margin-top:45px}.study-title{gap:12px}.study-title h3{font-size:25px}.study-feature .study-title h3{font-size:28px}.study-pair{gap:8px}.study-feature .study-pair img{aspect-ratio:4/5}.study-pair figcaption{left:8px;bottom:8px;font-size:10px;padding:6px 9px}.study-caption{font-size:13px}.offer-grid{grid-template-columns:1fr}.offer h2{font-size:31px}.offer .offer-value{font-size:43px}.offer p{font-size:15px}.voucher{flex-direction:column;margin-top:45px}.voucher-stub{border-right:0;border-bottom:2px dashed var(--accent);padding:30px;flex-basis:auto}.voucher-value{font-size:58px}.voucher-body{padding:30px 25px}.voucher-body h3{font-size:27px}.small-print{margin-top:45px}.contact-form{grid-template-columns:1fr;gap:22px}.field.full,.form-note,.form-actions{grid-column:auto}.contact-lines dd{font-size:21px}.contact-telephone{font-size:27px}.article-cards{grid-template-columns:1fr;gap:30px}.article-card h2{font-size:28px}.archive-end{font-size:12px}.utility-main{padding:75px 0;min-height:580px}.utility-main p{font-size:15px}.utility-main .eyebrow{font-size:11px}.utility-links{gap:20px;font-size:13px}.coming-photo{height:300px}.search-controls{gap:10px}.search-controls input{padding:13px;max-width:100%;font-size:16px}.search-controls .button{padding-inline:17px;font-size:11px}.search-result h2{font-size:25px}.search-result p{font-size:14px}}

/* Responsive audit: phone <768, iPad 768–1099, laptop 1100–1439, desktop >=1440.
   Text containers grow with their contents; overflow is never hidden to mask a fault. */
h1,h2,h3,h4,h5,p,li,dt,dd,figcaption,blockquote{overflow-wrap:anywhere}
.container>*,.card-grid>*,.quote-grid>*,.offer-grid>*,.article-cards>*,.service-overview>*,.study-grid>*,.study-pair>*,.footer-grid>*,.contact-form>*,.bento>*{min-width:0}
.button{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
.post-meta,.archive-end,.study-title{flex-wrap:wrap}
.hairline-list dt,.hairline-list dd{min-width:0;flex:1}
.contact-form,.study-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.study-pair figcaption{max-width:calc(100% - 28px)}
.submenu a{overflow-wrap:anywhere}
.submenu li{break-inside:avoid}
.bento{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(260px,auto) minmax(245px,auto)}
.flip-inner{display:grid;min-height:100%}
.flip-front,.flip-back{position:relative;inset:auto;grid-area:1 / 1;min-width:0;min-height:100%;overflow-wrap:anywhere}
.flip-front{visibility:visible}.flip-back{visibility:hidden}
.flip-card[aria-pressed="true"] .flip-front{visibility:hidden}
.flip-card[aria-pressed="true"] .flip-back{visibility:visible}
.bento-photo{min-height:420px}.bento-photo img{position:absolute;inset:0;width:100%;height:100%}
.bento-photo figcaption{right:24px}
.legal-copy>p:first-child{font-size:18px}
.legal-copy h2{scroll-margin-top:28px;padding-top:18px;border-top:1px solid #c5c8cd}
.legal-copy h3{margin-top:32px}
.legal-copy h4{margin:32px 0 12px;font-size:20px;line-height:1.5;font-weight:700;color:#49678d;letter-spacing:0}
.legal-copy h5{margin:25px 0 10px;font-size:17px;line-height:1.5;font-weight:700;color:#303238;letter-spacing:0}
.legal-copy strong{font-weight:700}
.legal-copy #legal-contents{padding-top:0;border-top:0}
.legal-copy #legal-contents+ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:24px 0 50px}
.legal-copy #legal-contents+ul li{margin:0;border-bottom:1px solid #c5c8cd}
.legal-copy #legal-contents+ul a{display:block;padding:15px 0;line-height:1.65}
@media(min-width:1440px){
  .hero{height:auto;min-height:clamp(800px,61.6vw,1100px)}
}
@media(min-width:1100px) and (max-width:1439px){
  .hero{height:auto;min-height:clamp(800px,61.6vw,1100px)}
  .site-header{gap:22px;padding-inline:24px}
  .main-nav{gap:18px;margin-left:0}
  .header-cta{font-size:10px;padding-inline:14px}
}
@media(min-width:768px) and (max-width:1099px){
  .hero{height:auto;min-height:830px}
  .bento{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(270px,auto) minmax(260px,auto)}
  .card-grid:not(.two):not(.four){grid-template-columns:repeat(2,minmax(0,1fr))}
  .card-grid:not(.two):not(.four)>:last-child:nth-child(odd){grid-column:1 / -1}
  .filled-panel{padding:30px}
  .filled-panel .button{padding-inline:18px;gap:14px}
  .treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treatment-grid>.treatment-card:last-child{grid-column:1 / -1;min-height:230px}
}
@media(max-width:767px){
  .contact-form{grid-template-columns:minmax(0,1fr)}
  .submenu-more{columns:1}
  .bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:300px minmax(255px,auto) minmax(270px,auto)}
  .bento-photo{min-height:0}
  .flip-front,.flip-back{padding:28px 18px}
  .flip-front .line-icon{margin-bottom:28px}
  .flip-heading{font-size:21px}
  .bento-number,.bento-outline{padding:25px 18px}
  .intro-copy,.section-heading>h2,.section-heading>p,.testimonial-layout>div,.testimonial-layout>figure,.appointment-layout>div,.split>*{flex:none;width:100%}
  .button{padding-inline:20px;gap:14px;min-height:48px}
  .offer .button{align-self:stretch}
  .study-pair figcaption{max-width:calc(100% - 16px)}
  .room-composition{height:auto;min-height:470px;padding-bottom:35px}
  .room-front{position:relative;margin-left:auto}
  .room-back{height:280px;top:130px}
  .legal-copy>p:first-child{font-size:17px}
  .legal-copy h4{font-size:19px}.legal-copy h5{font-size:16px}
  .legal-copy #legal-contents+ul{grid-template-columns:minmax(0,1fr);gap:0}
}
@media(max-width:599px){
  .card-grid.four{grid-template-columns:minmax(0,1fr)}
  .card-grid.four .plain-card{padding:28px}
  .card-grid.four .plain-card p{font-size:15px}
  .treatment-grid{grid-template-columns:minmax(0,1fr)}
  .treatment-grid>.treatment-card:last-child{grid-column:auto}
  .treatment-card{padding:30px;min-height:240px}
  .treatment-card h3{font-size:15px}.treatment-card p{font-size:14px}
  .treatment-photo{height:300px;min-height:0}
  .hairline-list>div{flex-direction:column;gap:4px}
  .hairline-list dd{text-align:left}
  .filled-panel .button{padding-inline:16px;font-size:12px}
}
@media(max-width:374px){
  .bento{grid-template-columns:minmax(0,1fr);grid-template-rows:270px auto auto auto}
  .bento-photo{grid-column:1;grid-row:1}
  .bento-number{grid-column:1;grid-row:2}
  .bento-outline{grid-column:1;grid-row:3}
  .flip-card{grid-column:1;grid-row:4;min-height:330px}
  .flip-front,.flip-back{padding:28px}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:35px}
  .footer-grid>div,.footer-grid>div:nth-child(3),.footer-grid>div:last-child{grid-column:auto;grid-row:auto}
  .search-controls{flex-direction:column}
}
