/*
Theme Name: Satory Custom
Theme URI: /
Author: Satory
Description: A calm, contemporary, bilingual custom theme for Satory Medical Acupuncture. Portable original content and permalinks.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: satory-custom
*/

:root{--ink:#173c42;--body:#43585a;--muted:#748180;--teal:#26716b;--blue:#24697b;--lime:#d8e98c;--paper:#f4f5ee;--pale:#eaf0e9;--line:#dce2d9;--white:#fff;--radius:24px;--container:1280px;--font:"Segoe UI",Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.75;color:var(--body);background:var(--white);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}a,button,summary{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;height:auto;vertical-align:middle}figure{margin:0}h1,h2,h3,h4,h5,h6{font-weight:500;color:var(--ink);line-height:1.2;margin:0 0 1rem;overflow-wrap:break-word}h1{letter-spacing:-.045em}h2{letter-spacing:-.035em}p{margin:0 0 1.35rem}ul,ol{margin:0 0 1.5rem;padding-left:1.5rem}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--teal);outline-offset:5px;border-radius:3px}.container{width:min(calc(100% - 96px),var(--container));margin-inline:auto}.section-space{padding-block:100px}.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.skip-link:focus{position:fixed;top:10px;left:10px;padding:12px 20px;background:var(--ink);color:white;z-index:10000}.eyebrow{display:block;color:var(--teal);font-size:11px;font-weight:650;letter-spacing:.17em;line-height:1.6;text-transform:uppercase;margin-bottom:20px}.eyebrow.light{color:var(--lime)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:56px;padding:15px 26px;color:var(--white);background:var(--ink);border:1px solid var(--ink);border-radius:5px;font-size:14px;line-height:1.4;font-weight:500;transition:background .2s,transform .2s}.button span{font-size:22px;line-height:1}.button:hover{background:var(--teal);border-color:var(--teal);color:var(--white);transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:18px;color:var(--ink);font-size:14px;font-weight:550;line-height:1.6}.text-link span{font-size:23px;font-weight:400;transition:transform .2s}.text-link:hover span{transform:translate(2px,-2px)}

/* Navigation */
.utility-bar{background:var(--ink);color:#e2e9df;font-size:11px;letter-spacing:.035em}.utility-inner{display:flex;justify-content:space-between;align-items:center;min-height:35px}.utility-inner a{display:flex;align-items:center;gap:6px}.utility-inner a:hover{color:var(--lime)}.utility-inner a>span{margin-left:10px}.utility-inner strong{font-weight:550;letter-spacing:.06em}.site-header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;gap:38px;min-height:104px}.site-logo{display:inline-flex;align-items:center;flex:none;max-width:173px}.site-logo img{width:173px;height:auto;max-height:72px;object-fit:contain}.site-logo>span{font-size:36px;letter-spacing:-.06em;color:var(--blue)}.primary-navigation{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:32px}.primary-menu{display:flex;align-items:center;gap:25px;margin:0;padding:0;list-style:none}.primary-menu>li{position:relative;font-size:12px;line-height:1.5;color:var(--ink);font-weight:500;white-space:nowrap}.primary-menu>li>a,.primary-menu summary{display:flex;align-items:center;gap:7px;padding:18px 0;cursor:pointer}.primary-menu a[aria-current=page]{color:var(--teal)}.primary-menu a[aria-current=page]:after{content:"";width:4px;height:4px;background:var(--teal);border-radius:50%;margin-left:0}.primary-menu summary{list-style:none}.primary-menu summary::-webkit-details-marker{display:none}.chevron{width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform .2s}.primary-menu details[open] .chevron{transform:rotate(225deg);margin-top:3px}.submenu{position:absolute;left:-24px;top:calc(100% + 19px);width:530px;padding:16px;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 45px #173c4214;margin:0;z-index:20}.submenu:before{content:"";position:absolute;bottom:100%;left:0;width:100%;height:23px}.submenu li{white-space:normal}.submenu a{display:flex;min-height:44px;align-items:center;padding:9px 12px;font-size:12px;line-height:1.5;border-radius:5px}.submenu a:hover{background:var(--paper);color:var(--teal)}.primary-menu>li:nth-last-child(-n+3) .submenu{left:auto;right:-24px}.navigation-actions{display:flex;align-items:center;gap:24px}.language-switch{font-size:11px;font-weight:650;color:var(--ink);display:flex;align-items:center;gap:5px}.language-switch span{font-size:15px}.button-header{font-size:12px;min-height:45px;padding:11px 16px;gap:18px;white-space:nowrap}.button-header span{font-size:19px}.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);padding:10px 0;font-size:13px;align-items:center;gap:10px}.menu-icon{display:grid;gap:6px;width:24px}.menu-icon i{height:1px;width:100%;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.admin-bar .site-header{top:32px}

/* Home */
.home-hero{background:var(--paper);overflow:hidden;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:75px;min-height:660px;padding-block:56px}.hero-copy{padding-block:18px}.hero-copy .eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:28px}.little-cross{font-size:22px;font-weight:400;line-height:1}.hero-copy h1{font-size:clamp(40px,4.4vw,65px);font-weight:450;line-height:1.13;margin-bottom:26px;max-width:650px}.hero-intro{font-size:16px;line-height:1.8;max-width:520px;margin-bottom:31px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px}.hero-location{display:flex;align-items:center;gap:10px;border-top:1px solid #173c421c;margin-top:37px;padding-top:21px;font-size:11px;letter-spacing:.01em;max-width:475px}.location-pin{display:inline-block;width:11px;height:14px;border:1px solid var(--teal);border-radius:8px 8px 8px 0;transform:rotate(-45deg);position:relative;margin-right:3px}.location-pin:after{content:"";width:3px;height:3px;background:var(--teal);border-radius:50%;position:absolute;left:3px;top:3px}.hero-visual{position:relative;isolation:isolate;max-width:540px;min-width:0;padding:0 24px 14px 22px}.hero-image{position:relative;height:530px;width:100%;background:#e3e6dc;border-radius:100px 8px 100px 8px;overflow:hidden;z-index:1}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:center 43%}.hero-orbit{position:absolute;border:1px solid #8ba69966;border-radius:50%;z-index:-1;pointer-events:none}.orbit-one{width:560px;height:560px;top:-20px;left:-21px}.orbit-two{width:580px;height:580px;top:-30px;left:-31px}.hero-note{position:absolute;display:flex;align-items:center;gap:16px;bottom:36px;left:-28px;background:var(--white);border:1px solid var(--line);border-radius:7px;padding:19px 25px;z-index:2;box-shadow:0 8px 18px #173c4205}.hero-note>span{color:var(--teal);font-size:42px;line-height:1}.hero-note p{margin:0;color:var(--ink);font-size:13px;line-height:1.6;font-weight:500}.hero-vertical{position:absolute;right:-17px;top:25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.15em;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading h2{font-size:clamp(30px,3vw,43px);max-width:650px;margin:0;line-height:1.2}.section-heading>.text-link{max-width:230px;flex:none;font-size:12px;margin-bottom:4px}.section-heading .eyebrow{margin-bottom:15px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{display:grid;grid-template-columns:41% 1fr;min-height:205px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fafbf7;transition:border-color .2s,transform .2s,box-shadow .2s}.service-card:hover{border-color:#91aaa1;transform:translateY(-3px);box-shadow:0 10px 20px #173c4207}.service-image{display:block;overflow:hidden;background:#dfe9e5}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover .service-image img{transform:scale(1.035)}.service-body{padding:19px 19px 17px;display:flex;flex-direction:column;position:relative}.service-count{font-size:9px;letter-spacing:.11em;color:var(--muted);margin-bottom:14px}.service-card h3{font-size:17px;font-weight:500;letter-spacing:-.025em;line-height:1.35;margin:0 0 18px}.service-card h3 a:after{content:"";position:absolute;inset:0;z-index:1}.service-arrow{align-self:flex-end;width:29px;height:29px;line-height:27px;text-align:center;border:1px solid #cad6cc;border-radius:50%;margin-top:auto;color:var(--ink);font-size:20px;z-index:2}.service-arrow:hover{background:var(--ink);border-color:var(--ink);color:white}.home-information{background:var(--paper);border-top:1px solid var(--line)}.information-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:100px;align-items:start}.information-aside{position:sticky;top:145px}.information-aside h2{font-size:40px;max-width:280px;line-height:1.2;margin-bottom:30px}.information-aside>img{display:block;max-width:260px;max-height:320px;object-fit:cover;object-position:top;border-radius:5px 60px 5px 5px;margin-bottom:26px}.home-content{padding-top:0}.home-content>div>h2:first-child,.home-content>h2:first-child{margin-top:0}.home-content h2{font-size:30px}.home-content details{background:transparent}

/* Page and article typography: original editorial content without builder dependencies. */
.inner-main{padding-bottom:100px}.page-title-band{background:var(--paper);padding:28px 0 63px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-title-band:after{content:"";position:absolute;right:-120px;top:-150px;width:430px;height:430px;border:1px solid #7a9b9126;border-radius:50%;pointer-events:none}.page-title-band .eyebrow{margin-top:36px;margin-bottom:17px}.page-title-band h1{font-size:clamp(32px,4.2vw,57px);max-width:1050px;margin:0;line-height:1.18;position:relative;z-index:1}.breadcrumbs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:10px;line-height:1.5;color:var(--muted);position:relative;z-index:1}.breadcrumbs>span:last-child{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs>span:nth-child(2){color:#b1bcb2}.breadcrumbs a:hover{color:var(--ink)}.content-layout,.single-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:80px;padding-top:65px;align-items:start}.page-article,.single-article{min-width:0}.page-article:has(.article-grid){grid-column:1/-1}.page-featured-image,.single-featured-image{margin-bottom:40px;background:var(--paper);border-radius:8px;overflow:hidden}.page-featured-image img,.single-featured-image img{width:100%;max-height:540px;object-fit:contain}.content-sidebar{position:sticky;top:145px}.sidebar-card{background:var(--pale);border:1px solid #d6e1d8;padding:28px;border-radius:8px}.sidebar-card .eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:17px}.sidebar-card h2{font-size:27px;line-height:1.25;margin-bottom:17px}.sidebar-card p{font-size:12px;line-height:1.85;color:#566e68;margin-bottom:20px}.sidebar-number{font-size:21px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bdcfc3;padding-top:19px;font-weight:500;letter-spacing:-.025em}.sidebar-number span{font-size:24px}.sidebar-card>.text-link{font-size:11px;margin-top:15px;gap:8px}.sidebar-card>.text-link span{font-size:18px}.sidebar-links{margin-top:36px}.sidebar-links h2{font-size:18px;line-height:1.4;margin-bottom:18px}.sidebar-links>a{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.55}.sidebar-links>a span{color:var(--teal);font-size:17px}.sidebar-back{margin-top:25px;font-size:12px;align-items:flex-start}.entry-content{font-size:16px;line-height:1.85;overflow-wrap:anywhere;color:var(--body)}.entry-content:after{content:"";display:table;clear:both}.entry-content h1{font-size:40px;margin-top:2rem}.entry-content h2{font-size:30px;line-height:1.3;margin-top:2.5rem;margin-bottom:1.2rem}.entry-content h3{font-size:24px;line-height:1.35;margin-top:2rem;margin-bottom:1rem}.entry-content h4{font-size:20px;line-height:1.4;margin-top:1.8rem}.entry-content h5,.entry-content h6{font-size:18px;line-height:1.4;margin-top:1.5rem}.entry-content>div>h2:first-child,.entry-content>h2:first-child{margin-top:0}.entry-content strong,.entry-content b{font-weight:650;color:var(--ink)}.entry-content p{margin:0 0 1.4rem}.entry-content a{color:var(--teal);text-decoration:underline;text-decoration-color:#98b6aa;text-underline-offset:4px;text-decoration-thickness:1px}.entry-content a:hover{color:var(--ink);text-decoration-color:var(--ink)}.entry-content a[href^="tel:"]{white-space:nowrap}.entry-content ul,.entry-content ol{padding-left:22px;margin-bottom:1.6rem}.entry-content li{padding-left:5px;margin-bottom:.5rem}.entry-content li::marker{color:var(--teal)}.entry-content img{max-height:700px;object-fit:contain;margin-block:10px 24px;border-radius:5px}.entry-content figure{margin:24px 0}.entry-content figure img{margin:0}.entry-content figcaption{font-size:12px;line-height:1.6;margin-top:10px;color:var(--muted)}.entry-content blockquote{margin:32px 0;border-left:2px solid var(--teal);padding:10px 0 10px 30px;font-size:21px;color:var(--ink);line-height:1.65}.entry-content blockquote p:last-child{margin-bottom:0}.entry-content iframe{display:block;max-width:100%;width:100%;min-height:350px;border:1px solid var(--line);border-radius:6px;margin:28px 0}.entry-content video{max-width:100%;height:auto}.entry-content table{display:block;max-width:100%;border-collapse:collapse;overflow-x:auto;margin:24px 0;font-size:14px}.entry-content th,.entry-content td{border:1px solid var(--line);padding:12px 16px;text-align:left}.entry-content th{background:var(--paper);color:var(--ink);font-weight:600}.entry-content hr{border:0;height:1px;background:var(--line);margin:35px 0}.entry-content details{border-top:1px solid #cad6cc;padding:0;margin:0}.entry-content details:last-child{border-bottom:1px solid #cad6cc}.entry-content summary{position:relative;list-style:none;cursor:pointer;padding:21px 43px 21px 0;font-size:16px;font-weight:500;line-height:1.55;color:var(--ink)}.entry-content summary::-webkit-details-marker{display:none}.entry-content summary:after{content:"+";position:absolute;right:2px;top:18px;font-size:25px;font-weight:300;color:var(--teal);line-height:1.3}.entry-content details[open]>summary:after{content:"−"}.entry-content details>div{padding:0 35px 8px 0;font-size:14px}.entry-content details>p{padding-right:35px;font-size:14px}.entry-content details p{margin-bottom:16px}.entry-content br+br{line-height:1.1}.about-page .entry-content img{max-width:min(420px,100%)}.about-page .entry-content div:has(>img):first-child{float:left;margin:0 32px 16px 0}.booking-callout{padding:34px;background:var(--pale);border:1px solid #d6e1d8;border-radius:8px;margin-bottom:40px}.booking-callout .eyebrow{margin-bottom:17px}.booking-callout h2{font-size:24px;margin-bottom:15px}.booking-number{display:inline-flex;gap:35px;align-items:center;font-size:clamp(27px,3vw,38px);letter-spacing:-.03em;line-height:1.2;color:var(--ink)}.booking-number span{font-size:35px}.booking-callout p{font-size:13px;margin:18px 0 0}.article-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-top:45px;font-size:13px}.article-contact .text-link{font-size:18px}

/* Articles, archives and search */
.archive-content{padding-top:60px}.archive-description{max-width:850px;margin-bottom:65px}.archive-list-heading{display:flex;align-items:center;gap:15px;padding-top:30px;border-top:1px solid var(--line);margin-bottom:28px}.archive-list-heading .eyebrow{margin:0}.archive-count{font-size:10px;color:var(--teal);background:var(--pale);border-radius:30px;min-width:26px;height:26px;text-align:center;line-height:26px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 28px}.article-card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:white;transition:border-color .2s,transform .2s}.article-card:hover{border-color:#a6bcaf;transform:translateY(-3px)}.article-card-image{display:block;aspect-ratio:1.55;overflow:hidden;background:var(--pale)}.article-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.article-card:hover .article-card-image img{transform:scale(1.03)}.card-symbol{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#b8cfc2;font-family:Georgia,serif;font-size:100px;font-style:italic;line-height:1}.article-card-body{padding:25px;display:flex;flex-direction:column;flex:1}.article-card h2{font-size:22px;line-height:1.35;letter-spacing:-.025em;margin-bottom:15px}.article-card-body p{font-size:13px;line-height:1.8;margin-bottom:24px}.article-card-body .text-link{font-size:12px;margin-top:auto}.pagination{margin-top:50px;display:flex;justify-content:center;gap:8px;align-items:center}.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.pagination .page-numbers,.page-links a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:6px;border:1px solid var(--line);border-radius:4px;font-size:12px}.pagination .page-numbers.current{background:var(--ink);border-color:var(--ink);color:white}.pagination .page-numbers:hover{background:var(--pale);color:var(--ink)}.pagination .page-numbers.dots{border:0}.pagination .nav-links .page-numbers{margin:0}.page-links{display:flex;gap:8px;margin-top:30px}.search-form{display:flex;gap:12px;max-width:700px;margin-top:30px;position:relative;z-index:1}.search-form input{min-width:0;flex:1;border:1px solid #ccd7ce;border-radius:5px;padding:12px 18px;background:white;color:var(--ink);font-size:15px}.empty-state{padding:20px 0 50px}.empty-state h2{font-size:32px}.empty-state p{margin-bottom:25px}.error-main{padding-block:80px 100px}.error-number{font-size:clamp(90px,16vw,190px);line-height:1;letter-spacing:-.07em;color:var(--ink);font-weight:350;margin:30px 0}.error-number span{color:#bad391;font-size:.7em;display:inline-block;margin-left:30px;transform:rotate(20deg)}.error-main h1{font-size:clamp(30px,4vw,48px);margin-bottom:20px}.error-main>.hero-actions{margin-top:30px}

/* Contact and footer */
.appointment-band{background:var(--ink);color:var(--white);position:relative;overflow:hidden}.appointment-band:before{content:"";position:absolute;width:340px;height:340px;border:1px solid #93b7a126;border-radius:50%;top:-120px;left:43%;pointer-events:none}.appointment-band:after{content:"";position:absolute;width:370px;height:370px;border:1px solid #93b7a126;border-radius:50%;top:-135px;left:calc(43% - 15px);pointer-events:none}.appointment-inner{display:flex;justify-content:space-between;align-items:center;padding-block:58px;gap:35px;position:relative;z-index:1}.appointment-inner .eyebrow{font-size:10px;margin-bottom:14px}.appointment-inner h2{color:var(--white);font-size:42px;margin:0;font-weight:450}.appointment-number{display:flex;align-items:center;gap:26px;color:var(--white);font-size:38px;line-height:1.4;letter-spacing:-.025em}.appointment-number:hover{color:var(--lime)}.appointment-number small{display:block;color:#b7c8bd;font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px}.phone-circle{display:flex;align-items:center;justify-content:center;flex:none;width:73px;height:73px;border:1px solid #8ca99a;border-radius:50%;font-size:37px;font-weight:300}.site-footer{background:#fbfcf8;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.3fr 1.1fr 1fr .95fr;gap:54px;padding-bottom:60px}.footer-brand .site-logo{margin-bottom:21px;max-width:155px}.footer-brand .site-logo img{width:155px;max-height:62px}.footer-brand p{font-size:12px;line-height:1.85;margin-bottom:20px;color:#64746d;max-width:270px}.footer-social{font-size:11px;color:var(--ink);display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid #aebfb0;padding-bottom:3px}.footer-social span{font-size:18px}.footer-grid h2{font-size:14px;font-weight:550;letter-spacing:0;margin:10px 0 24px}.footer-contact address{font-size:12px;font-style:normal;line-height:1.85;margin-bottom:19px}.footer-contact>a,.footer-links>a{display:block;font-size:12px;line-height:1.6;margin-bottom:13px;overflow-wrap:anywhere}.footer-contact>.text-link{display:inline-flex;font-size:11px;gap:10px;margin-top:5px}.footer-contact>.text-link span{font-size:18px}.footer-search{display:flex;align-items:center;gap:5px;border-bottom:1px solid #c1d0c0;margin-top:26px;padding-bottom:8px}.footer-search input{border:0;min-width:0;width:100%;background:transparent;font-size:11px;color:var(--ink);padding:4px 0}.footer-search input:focus-visible{outline-offset:1px}.footer-search button{border:0;background:transparent;color:var(--ink);font-size:22px;line-height:1;padding:0 4px}.footer-bottom{border-top:1px solid var(--line);padding-block:21px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#768477;font-size:10px}.footer-bottom a{display:flex;align-items:center;gap:18px}.footer-bottom a span{font-size:18px;color:var(--ink)}

/* Screen sizes */
@media(min-width:1600px){.hero-grid{min-height:720px}.hero-image{height:575px}.hero-visual{max-width:560px}.orbit-one{width:600px;height:600px}.orbit-two{width:620px;height:620px}}
@media(max-width:1320px){.container{width:calc(100% - 72px)}.header-inner{gap:28px}.primary-navigation{gap:22px}.primary-menu{gap:19px}.primary-menu>li{font-size:11px}.navigation-actions{gap:20px}.site-logo{max-width:150px}.site-logo img{width:150px}.button-header{font-size:11px;gap:10px;padding:11px 13px}.hero-grid{gap:48px}.hero-copy h1{font-size:56px}.hero-image{height:510px}.orbit-one{width:520px;height:520px}.orbit-two{width:540px;height:540px}.information-layout{gap:70px;grid-template-columns:290px minmax(0,1fr)}.service-body{padding:17px 16px}.service-card h3{font-size:16px}.footer-grid{gap:35px}}
@media(max-width:1119px){.container{width:calc(100% - 64px)}.header-inner{justify-content:space-between;min-height:87px}.site-logo{max-width:160px}.site-logo img{width:160px}.menu-toggle{display:flex}.primary-navigation{display:none;position:absolute;left:0;top:100%;right:0;background:#fff;border-bottom:1px solid var(--line);max-height:calc(100dvh - 125px);overflow-y:auto;box-shadow:0 14px 20px #173c4208;padding:16px 32px 28px}.primary-navigation.is-open{display:block}.primary-menu{display:block}.primary-menu>li{font-size:15px;white-space:normal;border-bottom:1px solid var(--line)}.primary-menu>li>a,.primary-menu summary{padding:16px 0;justify-content:space-between}.primary-menu a[aria-current=page]:after{margin-right:1px}.primary-menu summary{padding-right:4px}.submenu{position:static;box-shadow:none;width:100%;border:0;border-radius:0;background:var(--paper);padding:8px 12px;margin:0 0 12px;gap:0}.submenu:before{display:none}.submenu a{padding:10px 12px;font-size:13px;min-height:44px}.navigation-actions{margin-top:24px;justify-content:space-between}.navigation-actions .button{font-size:13px;padding:13px 22px}.language-switch{font-size:13px}.chevron{width:7px;height:7px}.hero-grid{gap:36px;min-height:610px;padding-block:50px;grid-template-columns:1.05fr 1fr}.hero-copy h1{font-size:46px}.hero-intro{font-size:14px}.hero-copy .eyebrow{font-size:10px}.hero-actions{gap:20px}.hero-actions .button{font-size:12px;padding:15px 19px;gap:18px}.hero-actions>.text-link{font-size:12px;gap:13px}.hero-image{height:465px;border-top-left-radius:85px;border-bottom-right-radius:85px}.hero-visual{padding-inline:10px}.hero-note{left:-15px;bottom:25px;padding:16px 20px}.hero-note p{font-size:11px}.hero-note>span{font-size:35px}.hero-vertical{right:-20px;font-size:7px}.orbit-one{width:465px;height:465px;left:-42px;top:0}.orbit-two{width:485px;height:485px;left:-52px;top:-10px}.section-space{padding-block:75px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{min-height:215px;grid-template-columns:40% 1fr}.service-card h3{font-size:18px}.service-body{padding:20px}.information-layout{grid-template-columns:235px minmax(0,1fr);gap:55px}.information-aside{top:118px}.information-aside h2{font-size:32px}.information-aside>img{max-width:210px;max-height:280px}.entry-content{font-size:15px}.entry-content h2,.home-content h2{font-size:27px}.content-layout,.single-layout{grid-template-columns:minmax(0,1fr) 250px;gap:42px;padding-top:50px}.content-sidebar{top:118px}.sidebar-card{padding:23px}.sidebar-number{font-size:19px}.sidebar-card h2{font-size:24px}.article-grid{gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1.25fr 1.15fr 1fr;gap:35px}.footer-grid>div:last-child{grid-column:2/-1;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-grid>div:last-child h2{margin:0 0 13px;display:none}.footer-grid>div:last-child>a{margin:0}.footer-search{margin-top:0;max-width:210px;flex:1;margin-left:auto}.appointment-inner h2{font-size:36px}.appointment-number{font-size:32px}.phone-circle{width:62px;height:62px;font-size:30px}.admin-bar .site-header{top:32px}}
@media(max-width:800px){.container{width:calc(100% - 48px)}.hero-grid{grid-template-columns:1fr 1fr;gap:25px;min-height:560px;padding-block:45px}.hero-copy h1{font-size:39px}.hero-intro{font-size:13px;line-height:1.7}.hero-image{height:405px;border-top-left-radius:70px;border-bottom-right-radius:70px}.hero-copy .eyebrow{font-size:9px;margin-bottom:22px}.hero-actions{gap:15px}.hero-actions .button{min-height:48px;font-size:11px;padding:12px 15px;gap:12px}.hero-actions>.text-link{font-size:11px}.hero-location{margin-top:27px;padding-top:17px;font-size:9px;gap:8px}.hero-note{left:-11px;padding:12px 15px;gap:10px}.hero-note>span{font-size:29px}.hero-note p{font-size:10px}.hero-vertical{right:-16px;font-size:6px}.orbit-one{width:385px;height:385px;left:-25px;top:10px}.orbit-two{width:405px;height:405px;left:-35px;top:0}.section-heading{gap:25px;align-items:flex-start}.section-heading h2{font-size:32px}.section-heading>.text-link{max-width:180px;font-size:11px;gap:10px;margin-top:32px}.service-card{min-height:190px;grid-template-columns:39% 1fr}.service-body{padding:16px}.service-card h3{font-size:15px;line-height:1.4}.service-count{font-size:8px;margin-bottom:11px}.service-arrow{width:26px;height:26px;line-height:23px;font-size:18px}.information-layout{grid-template-columns:1fr;gap:38px}.information-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;align-items:start}.information-aside .eyebrow{grid-column:1;grid-row:1;margin-bottom:0}.information-aside h2{grid-column:1;grid-row:2;max-width:350px;font-size:35px;margin:0}.information-aside .text-link{grid-column:1;grid-row:3;align-self:start}.information-aside>img{grid-column:2;grid-row:1/4;max-height:240px;max-width:100%;width:100%;margin:0;object-fit:cover;object-position:center 35%;height:230px}.home-content{border-top:1px solid var(--line);padding-top:30px}.home-content h2{font-size:28px}.content-layout,.single-layout{grid-template-columns:1fr;gap:40px}.content-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:30px}.sidebar-links{margin-top:0}.sidebar-back{margin-top:10px}.page-title-band{padding-bottom:45px}.page-title-band .eyebrow{margin-top:26px;font-size:10px}.page-title-band h1{font-size:40px}.inner-main{padding-bottom:70px}.appointment-inner{padding-block:45px}.appointment-inner h2{font-size:31px}.appointment-number{font-size:27px;gap:18px}.phone-circle{width:52px;height:52px;font-size:27px}.appointment-inner .eyebrow{font-size:9px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 45px}.footer-grid>div:last-child{grid-column:auto;display:block}.footer-grid>div:last-child h2{display:block;margin:10px 0 24px}.footer-grid>div:last-child>a{margin-bottom:13px}.footer-search{margin-top:23px;max-width:none}.footer-brand p{max-width:300px}.footer-bottom{font-size:9px}.site-footer{padding-top:50px}.footer-grid{padding-bottom:40px}.archive-description{max-width:100%;margin-bottom:45px}.article-card h2{font-size:21px}}
@media(max-width:600px){html{scroll-padding-top:95px}body{font-size:15px}.container{width:calc(100% - 40px)}.utility-bar{font-size:9px}.utility-inner{min-height:30px}.utility-inner>span{max-width:52%;line-height:1.5}.utility-inner a{gap:4px}.utility-inner a>span{margin-left:4px}.header-inner{min-height:78px}.site-logo{max-width:145px}.site-logo img{width:145px;max-height:59px}.menu-toggle{font-size:12px}.primary-navigation{padding:10px 20px 25px;max-height:calc(100dvh - 108px)}.primary-menu>li{font-size:14px}.primary-menu>li>a,.primary-menu summary{padding:15px 0}.submenu{grid-template-columns:1fr;padding:8px}.submenu a{font-size:12px;min-height:42px}.menu-is-open{overflow:hidden}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:37px;padding-top:38px;padding-bottom:37px;min-height:0}.hero-copy{padding:0}.hero-copy .eyebrow{margin-bottom:19px;font-size:9px}.hero-copy h1{font-size:44px;line-height:1.12;max-width:500px;margin-bottom:22px}.hero-intro{font-size:14px;line-height:1.8;max-width:440px;margin-bottom:23px}.hero-actions{gap:23px}.hero-actions .button{font-size:12px;min-height:52px;padding:14px 18px;gap:20px}.hero-actions>.text-link{font-size:12px}.hero-location{font-size:10px;max-width:none;margin-top:25px;padding-top:17px}.hero-visual{width:100%;max-width:430px;align-self:center;padding:0 14px 12px 19px}.hero-image{height:385px;width:100%;border-radius:75px 6px 75px 6px}.hero-image img{object-position:center 41%}.hero-note{left:0;bottom:30px;padding:15px 21px}.hero-note p{font-size:11px}.hero-note>span{font-size:34px}.orbit-one{width:400px;height:400px;left:calc(50% - 200px);top:-4px}.orbit-two{width:420px;height:420px;left:calc(50% - 210px);top:-14px}.hero-vertical{right:0;top:20px;font-size:6px}.section-space{padding-block:55px}.section-heading{display:block;margin-bottom:27px}.section-heading h2{font-size:32px;max-width:400px}.section-heading .eyebrow{font-size:10px;margin-bottom:13px}.section-heading>.text-link{max-width:none;margin-top:18px;font-size:11px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{grid-template-columns:37% 1fr;min-height:200px}.service-image img{object-fit:cover}.service-body{padding:20px 21px 17px}.service-count{font-size:9px;margin-bottom:13px}.service-card h3{font-size:20px;line-height:1.32;max-width:250px;margin-bottom:18px}.service-arrow{width:30px;height:30px;line-height:27px;font-size:21px}.information-layout{gap:27px}.information-aside{gap:13px 22px;grid-template-columns:1.15fr 1fr}.information-aside .eyebrow{font-size:9px}.information-aside h2{font-size:29px;line-height:1.2}.information-aside>img{height:190px;max-height:190px;border-radius:5px 45px 5px 5px}.information-aside .text-link{font-size:12px}.home-content{padding-top:25px}.entry-content{font-size:15px;line-height:1.85}.entry-content h1{font-size:31px}.entry-content h2,.home-content h2{font-size:26px;margin-top:2rem;line-height:1.3}.entry-content h3{font-size:22px;margin-top:1.7rem}.entry-content h4{font-size:19px}.entry-content details>div{padding-right:10px}.entry-content summary{font-size:15px;padding-block:19px}.entry-content summary:after{top:17px;font-size:23px}.entry-content blockquote{font-size:19px;padding-left:22px}.entry-content iframe{min-height:280px}.entry-content img{margin-block:7px 20px}.page-title-band{padding-top:21px;padding-bottom:37px}.page-title-band .eyebrow{margin-top:25px;margin-bottom:14px;font-size:9px}.page-title-band h1{font-size:34px;line-height:1.2}.page-title-band:after{width:300px;height:300px;right:-130px;top:-95px}.breadcrumbs{font-size:9px;gap:9px}.breadcrumbs>span:last-child{max-width:70%}.content-layout,.single-layout{padding-top:37px;gap:35px}.content-sidebar{grid-template-columns:1fr;gap:25px}.sidebar-card{padding:25px}.sidebar-card h2{font-size:26px}.sidebar-card p{max-width:250px;font-size:13px}.sidebar-number{max-width:270px;font-size:23px}.sidebar-links{margin-top:5px}.sidebar-links h2{font-size:19px}.sidebar-links>a{font-size:13px}.sidebar-links>a:nth-of-type(n+5){display:none}.sidebar-back{font-size:13px}.page-featured-image,.single-featured-image{margin-bottom:28px}.booking-callout{padding:25px;margin-bottom:32px}.booking-callout h2{font-size:23px}.booking-number{font-size:30px;gap:26px}.booking-callout p{font-size:12px}.about-page .entry-content div:has(>img):first-child{float:none;margin:0 0 25px}.article-title-band h1{font-size:32px}.article-contact{align-items:flex-start;flex-direction:column;gap:8px;margin-top:30px}.inner-main{padding-bottom:55px}.archive-content{padding-top:35px}.archive-description{margin-bottom:35px}.article-grid{grid-template-columns:1fr;gap:25px}.article-card-image{aspect-ratio:1.6}.article-card-body{padding:24px}.article-card h2{font-size:24px}.article-card-body p{font-size:14px}.article-card-body .text-link{font-size:13px}.archive-list-heading{padding-top:23px;margin-bottom:24px}.archive-list-heading .eyebrow{font-size:9px}.pagination{margin-top:33px;gap:5px}.pagination .nav-links{gap:5px}.pagination .page-numbers{min-width:37px;height:37px;font-size:11px}.search-form{gap:8px;flex-wrap:wrap;margin-top:25px}.search-form input{width:100%;font-size:14px;min-height:49px}.search-form .button{min-height:49px;gap:12px;padding:12px 15px;font-size:12px}.error-main{padding-block:55px 65px}.error-main>.eyebrow{font-size:10px}.error-number{margin:25px 0;font-size:125px}.error-number span{margin-left:20px}.error-main h1{font-size:33px}.error-main>p:not(.error-number){font-size:14px}.empty-state h2{font-size:29px}.appointment-inner{align-items:flex-start;flex-direction:column;gap:27px;padding-block:40px}.appointment-inner h2{font-size:35px}.appointment-inner .eyebrow{font-size:9px;margin-bottom:13px}.appointment-number{font-size:32px;gap:20px}.appointment-number small{font-size:9px}.phone-circle{width:57px;height:57px;font-size:30px}.appointment-band:before{left:40%;top:-60px}.appointment-band:after{left:calc(40% - 15px);top:-75px}.site-footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 24px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.footer-brand .site-logo{max-width:150px;margin-bottom:17px}.footer-brand p{max-width:380px;font-size:12px;margin-bottom:15px}.footer-grid h2{font-size:13px;margin:4px 0 18px}.footer-contact{grid-column:1/-1}.footer-contact address{font-size:12px;margin-bottom:15px}.footer-contact>a,.footer-links>a{font-size:11px;line-height:1.75;margin-bottom:10px}.footer-contact>.text-link{font-size:11px}.footer-contact>a[href^="tel:"]{font-size:18px;color:var(--ink)}.footer-grid>div:last-child h2{margin:4px 0 18px}.footer-search{margin-top:19px}.footer-bottom{padding-block:20px;align-items:flex-start;gap:20px;font-size:8px}.footer-bottom a{gap:10px;white-space:nowrap}.footer-bottom a span{font-size:15px}.admin-bar .site-header{top:46px}}
@media(max-width:374px){.container{width:calc(100% - 32px)}.utility-inner>span{font-size:8px}.utility-inner a{font-size:8px}.hero-copy h1{font-size:39px}.hero-image{height:345px}.hero-note{padding:13px 17px;left:-2px}.service-card{min-height:185px;grid-template-columns:37% 1fr}.service-body{padding:17px}.service-card h3{font-size:18px}.hero-actions{gap:16px}.hero-actions .button{font-size:11px;padding:13px 15px;gap:14px}.hero-actions>.text-link{font-size:11px;gap:10px}.information-aside h2{font-size:27px}.information-aside>img{height:170px}.appointment-number{font-size:28px}.footer-grid{gap:30px 20px}.footer-bottom a{font-size:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}.service-card:hover,.article-card:hover,.button:hover{transform:none}}
@media print{.utility-bar,.site-header,.content-sidebar,.appointment-band,.site-footer,.hero-actions,.menu-toggle,.hero-vertical,.hero-orbit{display:none!important}.container{width:100%;max-width:none}.content-layout,.single-layout,.information-layout{display:block}.page-title-band{background:white;padding:0 0 25px}.entry-content{font-size:11pt;color:#111}.entry-content details>*{display:block!important}.entry-content details{break-inside:avoid}.entry-content details>div{content-visibility:visible}.entry-content a{text-decoration:none;color:inherit}.entry-content a[href^=http]:after{content:" (" attr(href) ")";font-size:8pt}h1,h2,h3{break-after:avoid}img{break-inside:avoid;max-height:400px!important}.inner-main{padding:0}.hero-grid{min-height:0}.hero-image{height:280px}.service-grid{grid-template-columns:repeat(3,1fr)}.service-card{break-inside:avoid;min-height:120px}.service-card h3{font-size:12px}.service-body{padding:12px}.section-space{padding-block:30px}}

/* Satory typography refinement */
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(assets/fonts/noto-sans-greek-ext.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(assets/fonts/noto-sans-greek.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(assets/fonts/noto-sans-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(assets/fonts/noto-sans-latin.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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--font:"Noto Sans","Segoe UI",Arial,sans-serif;--body:#385357;--muted:#607477}
body{font-size:17px;line-height:1.8}
h1{letter-spacing:-.025em}h2{letter-spacing:-.02em}
.entry-content{font-size:17px;line-height:1.9}
.hero-copy h1{font-weight:500;letter-spacing:-.035em}.hero-intro{font-size:17px}
.utility-bar{font-size:13px;letter-spacing:0}.utility-inner{min-height:40px}.utility-inner strong{font-weight:600;letter-spacing:.02em}
.header-inner{gap:28px;min-height:108px}.primary-navigation{gap:26px}.primary-menu{gap:22px}
.primary-menu>li{font-size:16px;font-weight:500}.primary-menu>li>a,.primary-menu summary{min-height:48px}
.submenu{width:min(620px,calc(100vw - 48px));padding:16px;gap:4px;top:calc(100% + 19px)}
.submenu a{font-size:16px;line-height:1.55;font-weight:400;min-height:48px;padding:11px 14px}
.navigation-actions{gap:20px}.language-switch{font-size:14px;font-weight:600}.button-header{font-size:15px;font-weight:600;min-height:50px;padding:13px 18px;gap:16px}
.menu-toggle{font-size:16px;font-weight:500}.site-logo{max-width:180px}.site-logo img{width:180px}
.site-footer{color:var(--body)}.footer-grid{grid-template-columns:1.25fr 1.15fr 1fr 1fr;gap:38px}
.footer-brand .site-logo{max-width:180px;margin-bottom:24px}.footer-brand .site-logo img{width:180px;max-height:75px}
.footer-brand p{font-size:16px;line-height:1.85;color:var(--body);max-width:330px}
.footer-grid h2{font-size:19px;font-weight:600;line-height:1.4;letter-spacing:0;margin:10px 0 22px}
.footer-social{font-size:16px;font-weight:500;min-height:44px}
.footer-contact address{font-size:16px;line-height:1.85}
.footer-contact>a,.footer-links>a{font-size:16px;font-weight:400;line-height:1.65;min-height:40px;margin-bottom:5px;padding-block:6px}
.footer-contact>.text-link{font-size:15px;font-weight:500;line-height:1.7;min-height:44px}
.footer-contact>a[href^="tel:"]{font-size:20px;font-weight:500;color:var(--ink)}
.footer-search{min-height:48px;margin-top:22px}.footer-search input{font-size:16px;line-height:1.6;min-height:44px}.footer-search button{min-width:44px;min-height:44px}
.footer-bottom{font-size:14px;line-height:1.7;color:#5e7269;padding-block:24px;flex-wrap:wrap}
.footer-bottom a{font-size:14px;white-space:normal;min-height:44px}
.appointment-number small,.appointment-inner .eyebrow{font-size:13px}.appointment-inner h2{font-weight:500}
@media(min-width:1280px) and (max-width:1439px){
  .header-inner{gap:22px}.site-header .site-logo,.site-header .site-logo img{width:160px;max-width:160px}
  .primary-navigation{gap:20px}.primary-menu{gap:16px}.primary-menu>li{font-size:15px}
  .navigation-actions{gap:16px}.button-header{padding-inline:15px;font-size:14px;gap:12px}
}
@media(max-width:1279px){
  .header-inner{justify-content:space-between;min-height:90px}.menu-toggle{display:flex}
  .primary-navigation{display:none;position:absolute;left:0;top:100%;right:0;background:#fff;border-bottom:1px solid var(--line);max-height:calc(100dvh - 130px);overflow-y:auto;box-shadow:0 14px 20px #173c4208;padding:16px 32px 28px}
  .primary-navigation.is-open{display:block}.primary-menu{display:block}
  .primary-menu>li{font-size:17px;white-space:normal;border-bottom:1px solid var(--line)}
  .primary-menu>li>a,.primary-menu summary{padding:16px 0;justify-content:space-between}
  .submenu{position:static;box-shadow:none;width:100%;border:0;border-radius:0;background:var(--paper);padding:8px 12px;margin:0 0 12px;gap:0;grid-template-columns:1fr 1fr}
  .submenu:before{display:none}.submenu a{font-size:16px;min-height:48px;padding:11px 12px}
  .navigation-actions{margin-top:24px;justify-content:space-between}.navigation-actions .button{font-size:16px;padding:14px 22px}.language-switch{font-size:15px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:42px 48px}
  .footer-grid>div:last-child{grid-column:auto;display:block}.footer-grid>div:last-child h2{display:block;margin:10px 0 22px}
  .footer-grid>div:last-child>a{margin-bottom:5px}.footer-search{max-width:none;margin-left:0;margin-top:22px}
}
@media(max-width:600px){
  body,.entry-content{font-size:16px}.entry-content{line-height:1.85}
  .utility-bar{font-size:11px}.utility-inner{min-height:38px;gap:12px;align-items:center}.utility-inner>span{max-width:50%;line-height:1.6}.utility-inner a{font-size:11px;gap:4px;flex-wrap:wrap;justify-content:flex-end;line-height:1.5}.utility-inner a>span{display:none}
  .header-inner{min-height:84px}.site-header .site-logo,.site-header .site-logo img{width:155px;max-width:155px}.menu-toggle{font-size:16px;min-height:48px}
  .primary-navigation{padding:10px 20px 25px;max-height:calc(100dvh - 168px)}.primary-menu>li{font-size:17px}.submenu{grid-template-columns:1fr;padding:8px}.submenu a{font-size:16px}
  .hero-intro{font-size:16px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 22px;padding-bottom:35px}
  .footer-brand,.footer-contact{grid-column:1/-1}.footer-brand p{font-size:16px;max-width:none}.footer-brand .site-logo{max-width:175px}.footer-brand .site-logo img{width:175px}
  .footer-grid h2,.footer-grid>div:last-child h2{font-size:18px;margin:4px 0 16px}
  .footer-contact address{font-size:16px}.footer-contact>a,.footer-links>a{font-size:16px;line-height:1.75;min-height:44px;margin-bottom:2px}
  .footer-contact>.text-link{font-size:16px}.footer-contact>a[href^="tel:"]{font-size:22px}.footer-social{font-size:16px}
  .footer-bottom{display:flex;align-items:flex-start;gap:8px 22px;font-size:13px;padding-block:20px}.footer-bottom a{font-size:13px;gap:10px;white-space:normal}
  .appointment-number small,.appointment-inner .eyebrow{font-size:12px}
}
@media print{body,.entry-content{font-size:11pt}.site-header,.utility-bar,.site-footer{display:none!important}}

/* Even mobile menu bars and a centered close icon. */
.menu-icon i{height:2px}
.menu-toggle[aria-expanded=true] .menu-icon i:first-child{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-4px) rotate(-45deg)}

/* Clickable contact details */
.contact-map-link,.contact-phone-link{text-decoration:underline;text-decoration-color:currentColor;text-underline-offset:.2em;text-decoration-thickness:1px}
.entry-content .contact-phone-link{white-space:nowrap}
.utility-inner .utility-address{display:block;line-height:1.6}
@media(max-width:600px){.utility-inner .utility-address{max-width:52%;text-align:left;font-size:11px;line-height:1.6}}
@media(max-width:374px){.utility-inner .utility-address{font-size:10px}}

/* Current page and menu section */
.primary-menu>li.current-menu-item>a,.primary-menu>li.current-menu-ancestor>details>summary{color:var(--teal);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:9px}
.primary-menu a[aria-current="page"]:after{display:none}
.submenu .current-menu-item>a{background:var(--pale);color:var(--ink);font-weight:600;box-shadow:inset 3px 0 0 var(--teal);border-radius:4px}
.submenu .current-menu-ancestor>a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}

/* Keep long menus inside the available viewport. */
@media(min-width:1280px){
  .submenu{max-height:var(--submenu-max-height,calc(100dvh - 230px));align-content:start;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-color:#8ca59c var(--paper);scrollbar-width:thin}
  .primary-menu .has-submenu>details[open]:after{content:"";position:absolute;left:-24px;top:100%;width:min(620px,calc(100vw - 48px));height:24px;z-index:19}
  .primary-menu>li:nth-last-child(-n+3)>details[open]:after{left:auto;right:-24px}
  .submenu::-webkit-scrollbar{width:8px}.submenu::-webkit-scrollbar-track{background:var(--paper);border-radius:8px}.submenu::-webkit-scrollbar-thumb{background:#8ca59c;border-radius:8px}
}
@media(max-width:1279px){
  .primary-navigation{min-width:0;max-width:100%;overflow-x:hidden}
  .primary-navigation.is-open{max-height:var(--navigation-max-height,calc(100dvh - 168px));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-color:#8ca59c var(--paper);scrollbar-width:thin}
  .primary-navigation::-webkit-scrollbar{width:8px}.primary-navigation::-webkit-scrollbar-track{background:var(--paper)}.primary-navigation::-webkit-scrollbar-thumb{background:#8ca59c;border-radius:8px}
  .primary-menu,.primary-menu>li,.primary-menu details,.submenu,.submenu li{min-width:0;max-width:100%}
  .primary-menu a,.primary-menu summary{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .submenu{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chevron{flex:none}
  .navigation-actions{min-width:0;flex-wrap:wrap}.navigation-actions .button{white-space:normal}
}
@media(max-width:600px){.submenu{grid-template-columns:minmax(0,1fr)}}

/* Footer brand credits and social mark */
.footer-social{gap:10px}.footer-social-icon{width:22px;height:22px;flex:none}
.footer-bottom .footer-powered{display:inline-flex;align-items:center;gap:12px;max-width:100%;flex-wrap:wrap}
.footer-bottom .footer-powered span{font-size:inherit;color:inherit;white-space:nowrap}
.footer-powered img{display:block;width:126px;height:auto;flex:none}
@media(max-width:600px){.footer-bottom .footer-powered{gap:10px}.footer-powered img{width:120px}}

/* Readable homepage address */
.hero-location{font-size:18px;line-height:1.6;font-weight:500;letter-spacing:0;gap:12px}
.hero-location a{min-width:0;overflow-wrap:break-word}
.hero-location .location-pin{flex:none}
@media(max-width:600px){.hero-location{font-size:16px}}

/* All category articles, immediately after the opening paragraph. */
.category-layout{display:block}
.category-layout .category-description{min-width:0;max-width:none;margin-bottom:0}
.category-description p,.category-description h2,.category-description h3,.category-description h4,.category-description ul,.category-description ol,.category-description blockquote{max-width:900px}
.category-slider{min-width:0;width:100%;margin:32px 0 42px;padding:26px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
.category-articles-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.category-articles-heading-copy{display:flex;align-items:center;gap:12px;min-width:0}
.category-articles-heading h2{font-size:24px;line-height:1.35;letter-spacing:-.02em;margin:0}
.category-articles-count{flex:none;min-width:28px;padding:2px 8px;border-radius:20px;background:var(--pale);color:var(--teal);font-size:13px;line-height:24px;text-align:center}
.category-slider-controls{display:flex;gap:8px;flex:none}.category-slider-controls[hidden]{display:none}
.category-slider-controls button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #b8c9bd;border-radius:50%;background:white;color:var(--ink);font-size:24px;line-height:1}
.category-slider-controls button:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:white}
.category-slider-controls button:disabled{opacity:.35;cursor:default}
.category-slider .category-articles-list{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);gap:18px;max-width:none;list-style:none;padding:2px 2px 14px;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#8ca59c transparent;-webkit-overflow-scrolling:touch}
.category-articles-list::-webkit-scrollbar{height:6px}.category-articles-list::-webkit-scrollbar-thumb{background:#8ca59c;border-radius:6px}
.category-slider .category-articles-list>li{min-width:0;padding:0;margin:0;scroll-snap-align:start}
.category-slider .category-article-link{display:grid;grid-template-columns:minmax(0,1fr) 18px;grid-template-rows:150px 1fr;gap:16px 10px;height:100%;padding:0 18px 20px;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);text-decoration:none}
.category-slider .category-article-image,.category-slider .category-article-placeholder{grid-column:1/-1;width:calc(100% + 36px);max-width:none;height:150px;max-height:none;margin:0 -18px;border-radius:0;background:var(--pale);object-fit:cover}
.category-slider .category-article-placeholder{display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:64px;font-style:italic;color:#89a79c}
.category-slider .category-article-title{min-width:0;font-size:17px;line-height:1.55;letter-spacing:0;font-weight:500;margin:0;overflow-wrap:anywhere}
.category-article-arrow{font-size:22px;line-height:1.4;color:var(--teal)}
.category-article-link:hover .category-article-title{color:var(--teal);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.category-slider .category-articles-list{grid-auto-columns:calc((100% - 36px)/3)}}
@media(max-width:800px){.category-slider .category-articles-list{grid-auto-columns:calc((100% - 18px)/2)}}
@media(max-width:600px){.category-slider{padding:18px;margin:26px 0 32px}.category-articles-heading{align-items:flex-start;gap:12px;margin-bottom:18px}.category-articles-heading-copy{gap:8px;flex-wrap:wrap}.category-articles-heading h2{font-size:20px}.category-slider-controls{gap:6px}.category-slider-controls button{width:38px;height:38px;font-size:22px}.category-slider .category-articles-list{grid-auto-columns:86%;gap:14px}.category-slider .category-article-link{grid-template-rows:140px 1fr;padding:0 16px 18px}.category-slider .category-article-image,.category-slider .category-article-placeholder{width:calc(100% + 32px);height:140px;margin-inline:-16px}.category-slider .category-article-title{font-size:16px}}
@media print{.category-slider{padding:15px}.category-slider-controls{display:none!important}.category-slider .category-articles-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;scroll-snap-type:none}.category-slider .category-articles-list>li{break-inside:avoid}}

/* SSA controls its responsive iframe height; keep it outside prose iframe styles. */
.satory-booking{width:100%;max-width:100%;min-width:0;margin:0 0 40px}
.satory-booking iframe{display:block;width:100%;max-width:100%;border:0}
@media(max-width:600px){.satory-booking{margin-bottom:32px}}
.appointment-inner h2 a:hover{color:var(--lime)}


/* Satory contact form: scoped Contact Form 7 presentation. */
.satory-contact-form{margin:40px 0 48px;padding:30px;background:var(--paper);border:1px solid var(--line);border-radius:10px;min-width:0}
.satory-contact-form h2{font-size:clamp(24px,2.3vw,32px);line-height:1.35;margin:0 0 24px;max-width:30ch}
.satory-contact-form .wpcf7-form{margin:0;min-width:0}
.satory-contact-form-fields>p{margin:0 0 20px}
.satory-contact-form .satory-contact-required-note{font-size:14px;color:var(--body);margin-bottom:20px}
.satory-contact-form label{display:block;color:var(--ink);line-height:1.6;font-weight:500}
.satory-contact-form .wpcf7-form-control-wrap{display:block;margin-top:8px;min-width:0}
.satory-contact-form input[type="text"],.satory-contact-form input[type="email"],.satory-contact-form textarea{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:1px solid #baccc4;border-radius:5px;padding:13px 15px;background:var(--white);color:var(--ink);font:inherit;font-size:18px;line-height:1.5}
.satory-contact-form textarea{height:180px;min-height:180px;resize:vertical}
.satory-contact-form input::placeholder,.satory-contact-form textarea::placeholder{color:#687976;opacity:1}
.satory-contact-form input:focus-visible,.satory-contact-form textarea:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-color:var(--teal)}
.satory-contact-form .wpcf7-acceptance .wpcf7-list-item{display:block;margin:0}
.satory-contact-form .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:10px;font-size:15px;font-weight:400;line-height:1.7;color:var(--body)}
.satory-contact-form .wpcf7-acceptance input[type="checkbox"]{appearance:auto;flex:none;width:auto;height:auto;min-width:0;margin:.4em 0 0;padding:0;accent-color:var(--teal)}
.satory-contact-form .wpcf7-list-item-label{min-width:0;overflow-wrap:anywhere}
.satory-contact-form input[type="submit"]{display:inline-block;width:auto;max-width:100%;min-height:54px;padding:14px 26px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:var(--white);font:inherit;font-weight:600;line-height:1.4;cursor:pointer}
.satory-contact-form input[type="submit"]:hover{background:var(--teal);border-color:var(--teal)}
.satory-contact-form input[type="submit"]:disabled{opacity:.6;cursor:not-allowed}
.satory-contact-form .wpcf7-not-valid-tip{font-size:14px;line-height:1.5;margin-top:6px}
.satory-contact-form .wpcf7 form .wpcf7-response-output{margin:20px 0 0;padding:12px 15px;font-size:16px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:600px){.satory-contact-form{margin:30px 0 36px;padding:22px 16px}.satory-contact-form h2{font-size:24px;margin-bottom:20px}.satory-contact-form label,.satory-contact-form input[type="text"],.satory-contact-form input[type="email"],.satory-contact-form textarea{font-size:16px}.satory-contact-form .wpcf7-acceptance label{font-size:14px}.satory-contact-form-fields>p{margin-bottom:18px}}

/* SATORY C2 FAQ spacing fix - 2026-10-27 */
.satory-c2-content details.satory-c2-faq > p,
.satory-c2-content details.satory-c2-faq > div {
  padding: 0 1.15rem 1.15rem;
  margin: 0;
}
/* END SATORY C2 FAQ spacing fix */
