/* Self-hosted Google Fonts subsets: Cormorant Garamond, Roboto and Noto Sans. */
@font-face{
  font-family:'Cormorant Garamond';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('assets/fonts/cormorant-garamond-400-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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cormorant Garamond';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('assets/fonts/cormorant-garamond-400-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;
}
@font-face{
  font-family:'Roboto';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/roboto-400-700-greek-ext.woff2') format('woff2');
  unicode-range:U+1F00-1FFF;
}
@font-face{
  font-family:'Roboto';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/roboto-400-700-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:'Roboto';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/roboto-400-700-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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Roboto';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/roboto-400-700-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;
}
@font-face{
  font-family:'Noto Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/noto-sans-400-700-greek-ext.woff2') format('woff2');
  unicode-range:U+1F00-1FFF;
}
@font-face{
  font-family:'Noto Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/noto-sans-400-700-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-display:swap;
  src:url('assets/fonts/noto-sans-400-700-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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Noto Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('assets/fonts/noto-sans-400-700-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{
  --green:#358d3f;
  --teal:#367e8d;
  --gold:#c09100;
  --orange:#ea7b3c;
  --text:#888;
  --dark:#333;
  --line:#e8e8e8;
  --max:960px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;height:100%;width:100%;max-width:100%;overflow-x:hidden}
body{
  margin:0;
  min-height:100%;
  color:var(--text);
  font-family:Roboto,Helvetica,Arial,sans-serif;
  font-weight:400;
  font-size:16px;
  line-height:1.5;
  background:#d4d2cf url('assets/praxis-room-wide.jpg') center center/cover fixed no-repeat;
  display:flex;
  flex-direction:column;
  touch-action:manipulation;
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
body:before{content:"";position:fixed;inset:0;background:rgba(255,255,255,.08);z-index:-1}
/* scroll lock handled by JS */
a{color:var(--orange);text-decoration:none}a:hover{color:#333}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

.site-header{
  position:relative;
  z-index:20;
  width:100%;
  margin:0;
  background:transparent;
  display:flex;
  flex-wrap:nowrap;
  align-items:flex-start;
}

/* top translucent bar, same posture as the Jimdo reference */
.site-header > .brand,
.site-header > .nav-toggle,
.site-header > .site-nav{position:relative;z-index:2}
.site-header:before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:88px;
  background:rgba(205,205,205,.74);
  z-index:1;
}
.brand{
  flex:0 0 auto;
  min-width:250px;
  min-height:30px;
  margin:25px 20px 20px calc((100vw - var(--max))/2 + 20px);
  color:var(--green);
  text-decoration:none;
}
.brand-mark{display:none}
.brand strong{
  display:block;
  padding:0;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:30px;
  font-weight:400;
  line-height:.95;
  color:var(--gold);
}
.brand small{
  display:block;
  margin-top:2px;
  color:#777;
  font-size:12px;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.site-nav{
  flex:0 0 auto;
  margin-left:auto;
  margin-right:calc((100vw - var(--max))/2 + 20px);
  padding:25px 0;
  line-height:1;
  white-space:nowrap;
}
.site-nav a{
  display:inline-block;
  padding:5px 10px;
  border:0;
  color:var(--gold);
  font-size:16px;
  line-height:1.5;
  text-decoration:none;
  text-transform:uppercase;
}
.site-nav a:hover,.site-nav a:focus-visible{color:#7a5b00;outline:none}
.site-nav a[aria-current=page]{color:#7a5b00}
.language-switcher{
  position:fixed;
  top:8px;
  right:12px;
  display:flex;
  gap:0;
  z-index:1000;
  background:rgba(255,255,255,.86);
  box-shadow:rgba(0,0,0,.18) 1px 1px 5px;
}
.language-switcher a{display:block;padding:5px 8px;color:var(--gold);font-size:13px;text-decoration:none;text-transform:uppercase;border:0}.language-switcher a:hover,.language-switcher a[aria-current=true]{color:#7a5b00}
.nav-toggle{display:none;touch-action:manipulation}

/* logo/hero block: the reference has a tall empty/photo area with centered logo */
.logo-hero{
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(var(--max),100%);
  min-height:230px;
  margin:0 auto;
  padding:90px 20px;
  color:white;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:48px;
  line-height:1.05;
  text-align:center;
  text-shadow:0 2px 18px rgba(0,0,0,.52);
  background:transparent;
}

/* sloped white transition like the Jimdo theme */
.home-hero,.page-shell{
  position:relative;
  z-index:10;
  width:100%;
  max-width:none;
  margin:0;
  background:#fff;
  box-shadow:none;
  border:0;
}
.home-hero:before,.page-shell:before{
  content:"";
  position:absolute;
  left:0;right:0;top:-50px;
  height:100px;
  background:#fff;
  transform:skew(0deg,-2deg);
  transform-origin:center;
  z-index:-1;
}
.home-hero,.page-shell{padding:25px calc((100vw - var(--max))/2 + 20px) 50px}

.home-hero{
  display:grid;
  grid-template-columns:1fr 300px;
  gap:40px;
  align-items:start;
}
.home-copy{min-width:0}.small-line{display:none}
h1,h2,h3,p{margin-top:0}
h1{
  margin:0 0 .35em;
  padding:0 0 .1em;
  color:var(--teal);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:40px;
  font-weight:400;
  line-height:1.05;
  text-transform:none;
}
h2{margin:0 0 .45em;color:#1c6d92;font-size:32px;font-weight:400;line-height:1.25}h3{margin:1.1em 0 .35em;color:var(--gold);font-size:24px;font-weight:400;line-height:1.25}p{margin:0 0 1em;color:var(--text);font-size:16px;line-height:1.5}.home-image{margin:0}.home-image img,.soft-image img,.gallery img{width:100%;height:auto;object-fit:cover}.home-image img{height:330px;object-position:center 38%}.quiet-actions{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;margin:0;padding:8px 16px;border:1px solid var(--orange);border-radius:0;background:#fff;color:var(--orange);font:inherit;text-align:center;text-decoration:none;cursor:pointer}.button:hover{background:#333;border-color:#333;color:#fff}.text-link{display:inline-block;padding:8px 0;color:var(--orange)}
.lang-info{margin:22px 0 0;padding:16px 18px;background:#fafafa;border-radius:6px}.lang-info-title{margin:0 0 8px;color:#1c6d92;font-size:16px;font-weight:400;line-height:1.3}.lang-info p{margin:0 0 3px;color:var(--text);font-size:15px;line-height:1.5}.lang-info p:last-child{margin-bottom:0}

.home-routes{width:100%;max-width:none;margin:0;background:#fff;padding:0 calc((100vw - var(--max))/2 + 20px) 55px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.home-routes a{padding:0;text-decoration:none}.home-routes span{display:block;color:#1c6d92;font-size:22px;line-height:1.25}.home-routes small{display:block;margin-top:6px;color:var(--text);font-size:15px}.home-emergency{max-width:var(--max);margin:0 auto;background:#fff;padding:0 20px 50px}

.page-intro{max-width:100%;margin:0 0 20px}.page-intro.narrow{max-width:760px}.split-layout{display:grid;grid-template-columns:25.47% 72.52%;gap:2.01%;align-items:start}.soft-image{margin:0}.soft-image img{height:auto}.soft-image figcaption,.gallery figcaption{display:none}.text-stack{display:block}.text-stack article{margin-bottom:22px}.text-stack article h2{margin-bottom:8px;text-align:right}.text-stack article p{text-align:right;line-height:1.5}.about-layout{grid-template-columns:32% 1fr;gap:42px;align-items:start}.about-layout .soft-image{padding-top:8px}.about-layout .soft-image img{width:100%;max-height:420px;object-fit:cover}.about-layout .text-stack{max-width:640px;margin-left:auto}.cv-stack{border-top:1px solid var(--line)}.about-layout .cv-entry{display:grid;grid-template-columns:155px 1fr;gap:22px;margin:0;padding:15px 0;border-bottom:1px solid var(--line)}.about-layout .cv-entry p{text-align:left;margin:0;line-height:1.45}.cv-list{margin:0;padding-left:18px}.cv-list li{margin:0 0 8px;color:var(--text);line-height:1.45}.cv-list li:last-child{margin-bottom:0}.cv-label{color:#1c6d92!important;font-size:15px!important;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:25px 0}.gallery figure{margin:0}.gallery img{height:300px;object-fit:cover}.info-band,.calm-columns{display:grid;gap:30px}.info-band{grid-template-columns:1fr 1fr}.calm-columns{grid-template-columns:repeat(3,1fr)}.contact-layout{max-width:760px}.note{font-style:italic}.focus-section{margin:0 0 56px}.focus-section h2,.method-section h2{margin:0 0 10px;color:var(--teal);font-family:'Cormorant Garamond',Georgia,serif;font-size:40px;font-weight:400;line-height:1.05;text-transform:none}.services-intro{max-width:760px;margin:0 0 28px;color:var(--text);font-size:16px;line-height:1.58}.focus-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px 18px;width:100%;max-width:760px;padding:6px 0;background:transparent}.focus-card{position:relative;display:flex;align-items:center;justify-content:center;min-height:76px;padding:20px 28px;border:0;border-radius:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 150' preserveAspectRatio='none'%3E%3Cpath d='M83 123C50 123 24 104 24 80c0-24 21-43 49-43 8-22 33-35 59-28 18-16 53-14 70 4 29-9 61 7 70 33 36 0 64 22 64 49 0 25-25 43-60 43H82c-10 0-13-12 1-15z' fill='%23fff' stroke='%23cfcfcf' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;color:var(--dark);font-size:15.5px;line-height:1.35;text-align:center;letter-spacing:.005em}.focus-card::before,.focus-card::after{content:none}.focus-card:nth-child(1),.focus-card:nth-child(2),.focus-card:nth-child(3),.focus-card:nth-child(4){grid-column:span 3}.focus-card:nth-child(5),.focus-card:nth-child(6),.focus-card:nth-child(7){grid-column:span 4}.focus-card:nth-child(8){grid-column:span 4}.focus-card:nth-child(9){grid-column:span 7}.focus-card[data-i18n="services.focusInterpersonal"]{grid-column:span 8;min-height:86px;padding:22px 30px}.method-section{margin-top:4px}.method-section h2{margin-bottom:18px}.method-card{margin-bottom:18px;padding-left:0;border-left:3px solid var(--gold);border-bottom:1px solid var(--line)}details.method-card>summary{display:flex;align-items:center;gap:16px;margin:0;padding:16px 0 16px 18px;color:#1c6d92;font-size:24px;font-weight:400;line-height:1.25;cursor:pointer;list-style:none}
details.method-card>summary .summary-label{display:block;flex:1 1 auto;min-width:0;max-width:none;overflow-wrap:anywhere;word-break:normal;hyphens:auto}details.method-card>summary::-webkit-details-marker{display:none}details.method-card>summary::before{content:"›";display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;font-size:30px;font-weight:300;line-height:1;color:var(--teal);border:1px solid #d7d7d7;border-radius:50%;background:#fff;transition:transform .2s,border-color .2s,background .2s}details.method-card[open]>summary::before{transform:rotate(90deg);border-color:var(--teal);background:#fafafa}details.method-card[open]>summary{padding-bottom:10px}details.method-card .method-body{padding-left:64px}.method-card:nth-of-type(2){border-left-color:var(--teal)}.method-card:nth-of-type(3){border-left-color:var(--orange)}.method-card:nth-of-type(4){border-left-color:var(--green)}.method-body h4{margin:1em 0 .35em;color:var(--gold);font-size:18px;font-weight:400;line-height:1.25}.method-body p{margin:0 0 1em;color:var(--text);font-size:16px;line-height:1.5}.method-note{margin-top:18px;padding:12px 16px;background:#fafafa;border-radius:4px;font-style:italic;font-size:15px;color:var(--text)}@media(max-width:768px){.focus-grid{grid-template-columns:1fr;gap:10px;max-width:520px}.focus-card{grid-column:auto!important;min-height:50px;padding:12px 22px}details.method-card>summary{gap:12px;padding-left:14px;font-size:20px}details.method-card .method-body{padding-left:16px}}.contact-details address{font-style:normal;margin-bottom:16px}.contact-details address strong,.contact-details address span{display:block}.emergency-note{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}

main{flex:1 0 auto;background:#fff}.site-footer{flex:0 0 auto;width:100%;min-height:68px;max-width:none;margin:0;padding:18px calc((100vw - var(--max))/2 + 20px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:#333;color:#aaa}.site-footer p{margin:0;line-height:1.25}.site-footer strong,.site-footer p span{display:block}.site-footer a{color:#fff}.site-footer a:hover,.site-footer a:focus-visible{color:#f2d77c}.footer-links{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.footer-links a{white-space:nowrap}

.contact-channels{display:flex;flex-direction:column;gap:5px}.contact-channels>span{display:block}.contact-channels a{overflow-wrap:anywhere}
.legal-page{max-width:880px}.legal-intro{max-width:760px;margin-bottom:28px}.legal-language-note{margin:0;padding:14px 18px;border-left:3px solid var(--gold);background:#faf8f2;color:#666}.legal-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.legal-section{min-width:0;padding:24px 26px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.035)}.legal-section--wide{grid-column:1/-1}.legal-section h2{margin:0 0 12px;color:#1c6d92;font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;line-height:1.15}.legal-section h3{margin:20px 0 8px;color:var(--gold);font-size:18px;font-weight:500}.legal-section p,.legal-section li,.legal-section address{color:#666;line-height:1.62}.legal-section p:last-child,.legal-section ul:last-child{margin-bottom:0}.legal-section address{font-style:normal}.legal-section ul{margin:0 0 1em;padding-left:21px}.legal-section a{overflow-wrap:anywhere;word-break:normal}.legal-contact-list{display:grid;gap:5px}.legal-contact-list span{display:block}.legal-stand{margin-top:26px;color:#777;font-size:14px}

@media(max-width:1169px){
  .site-header{flex-wrap:wrap;max-width:100vw;overflow:visible}
  .site-header:before{height:auto;min-height:76px}
  .brand{margin:16px 82px 16px 20px;min-width:0;max-width:calc(100% - 112px)}
  .brand strong{font-size:28px}
  .site-nav{
    display:none;
    float:none;
    clear:both;
    flex:0 0 calc(100% - 24px);
    width:calc(100% - 24px);
    max-width:calc(100vw - 24px);
    margin:0 12px 14px;
    padding:8px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(192,145,0,.22);
    border-radius:18px;
    box-shadow:0 16px 34px rgba(0,0,0,.16),0 2px 8px rgba(0,0,0,.08);
    white-space:normal;
    overflow:hidden;
    overflow-wrap:anywhere;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  .site-header.nav-open .site-nav{display:block}
  .site-nav a{
    display:block;
    padding:13px 16px;
    border:0;
    border-bottom:1px solid rgba(192,145,0,.16);
    border-radius:12px;
    color:#8b6900;
    touch-action:manipulation;
  }
  .site-nav a:last-child{border-bottom:0}
  .site-nav a:hover,.site-nav a:focus-visible,.site-nav a[aria-current=page]{background:rgba(192,145,0,.1);color:#5f4700;outline:none}
  .site-header > .nav-toggle{
    position:absolute;
    top:12px;
    right:max(12px,env(safe-area-inset-right));
    z-index:6;
    width:52px;
    height:52px;
    border:1px solid rgba(192,145,0,.35);
    border-radius:999px;
    background:rgba(255,255,255,.9);
    box-shadow:0 8px 24px rgba(0,0,0,.16),0 1px 2px rgba(0,0,0,.08);
    padding:0;
    touch-action:manipulation;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .2s,box-shadow .2s,transform .2s,border-color .2s;
  }
  .nav-toggle:focus-visible{outline:3px solid rgba(192,145,0,.35);outline-offset:3px}
  .nav-toggle:active{transform:scale(.96)}
  .nav-toggle span:not(.sr-only){
    position:absolute;
    left:14px;
    display:block;
    width:24px;
    height:2px;
    margin:0;
    border:0;
    border-radius:999px;
    background:var(--gold);
    transition:transform .22s ease,opacity .18s ease,background .2s ease;
  }
  .nav-toggle span:nth-child(1){transform:translateY(-7px)}
  .nav-toggle span:nth-child(2){transform:translateY(0)}
  .nav-toggle span:nth-child(3){transform:translateY(7px)}
  .nav-toggle[aria-expanded="true"]{background:var(--gold);border-color:var(--gold);box-shadow:0 10px 28px rgba(192,145,0,.34),0 2px 8px rgba(0,0,0,.1)}
  .nav-toggle[aria-expanded="true"] span:not(.sr-only){background:#fff}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg)}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.15)}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg)}
  .language-switcher{display:none}
  .site-header.nav-open .language-switcher{
    position:static;
    display:flex;
    flex:0 0 calc(100% - 24px);
    width:calc(100% - 24px);
    max-width:calc(100vw - 24px);
    justify-content:center;
    gap:0;
    margin:0 12px 14px;
    padding:0;
    background:rgba(255,255,255,.88);
    box-shadow:none;
    border:1px solid rgba(192,145,0,.18);
    border-radius:999px;
    overflow:hidden;
  }
  .site-header.nav-open .language-switcher a{flex:1 1 auto;text-align:center;padding:10px 8px}
  .logo-hero{min-height:150px;padding:50px 20px;font-size:34px}
  .home-hero,.page-shell{padding:0 20px 50px}
  .home-hero{grid-template-columns:1fr}
  .home-routes{padding:0 20px 50px;grid-template-columns:1fr}
  .home-emergency{padding:0 20px 50px}
  .split-layout,.info-band,.calm-columns{grid-template-columns:1fr}
  .about-layout{gap:24px}
  .about-layout .soft-image{padding-top:0}
  .about-layout .text-stack{max-width:none;margin-left:0}
  .about-layout .text-stack article{padding-bottom:14px}
  .about-layout .cv-entry{display:block;grid-template-columns:1fr;gap:0}
  .cv-label{margin-bottom:5px!important}
  .text-stack article h2,.text-stack article p{text-align:left}
  .gallery{grid-template-columns:1fr}
  .gallery img{height:auto}
  .topic-list ul{columns:1}
  .site-footer{min-height:58px;padding:14px 20px;display:flex}
}
.fees-page{max-width:none}.fee-section{max-width:940px;margin:0 0 18px;padding-left:0;border-left:3px solid var(--gold);border-bottom:1px solid var(--line)}.fee-section:nth-of-type(2){border-left-color:var(--teal)}.fee-section:nth-of-type(3){border-left-color:var(--orange)}.fee-section:nth-of-type(4){border-left-color:var(--green)}.fee-section:nth-of-type(5){border-left-color:var(--gold)}.fee-section:nth-of-type(6){border-left-color:var(--teal)}.fee-section:nth-of-type(7){border-left-color:var(--orange)}.static-fee-section{border-left:0}.static-fee-section .fee-section-body{padding-left:0}.fee-section h2{margin:0 0 12px;color:var(--teal);font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:400;line-height:1.1}.fee-section h3{margin:22px 0 8px;color:#1c6d92;font-size:19px;font-weight:700}.fee-section p,.fee-section li{color:var(--text);font-size:16px;line-height:1.58}.fee-section ul{margin:0 0 18px;padding-left:22px}.fee-section a{overflow-wrap:anywhere;color:#1c6d92}details.fee-section>summary,details.fee-subsection>summary{display:flex;align-items:center;gap:16px;margin:0;padding:16px 0 16px 18px;color:#1c6d92;font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:400;line-height:1.1;cursor:pointer;list-style:none}details.fee-section>summary::-webkit-details-marker,details.fee-subsection>summary::-webkit-details-marker{display:none}details.fee-section>summary::before,details.fee-subsection>summary::before{content:"›";display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;font-family:Arial,sans-serif;font-size:30px;font-weight:300;line-height:1;color:var(--teal);border:1px solid #d7d7d7;border-radius:50%;background:#fff;transition:transform .2s,border-color .2s,background .2s}details.fee-section[open]>summary::before,details.fee-subsection[open]>summary::before{transform:rotate(90deg);border-color:var(--teal);background:#fafafa}details.fee-section[open]>summary{padding-bottom:10px}.fee-section-body{padding:0 0 8px 64px}.fee-subsection{margin:12px 0 18px;border-left:3px solid var(--teal);border-bottom:1px solid var(--line)}details.fee-subsection>summary{padding:13px 0 13px 16px;font-size:24px;line-height:1.2}.fee-subsection-body{padding-left:62px}.fee-table-wrap{width:100%;overflow-x:auto;margin:14px 0 20px}.fee-table{width:100%;min-width:760px;border-collapse:collapse;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fee-table th,.fee-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:15px;line-height:1.35}.fee-table th{color:#1c6d92;font-weight:700;background:#fafafa}.fee-table td span{display:block;margin-top:3px;color:#606060}.fee-table-wrap-compact{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.failed-search-table{min-width:700px;table-layout:fixed;border:1px solid var(--line);box-shadow:0 2px 8px rgba(0,0,0,.04)}.failed-search-table .failed-search-number{width:7%}.failed-search-table .failed-search-therapist{width:31%}.failed-search-table .failed-search-contact{width:39%}.failed-search-table .failed-search-date{width:23%}.failed-search-table th,.failed-search-table td{border-right:1px solid var(--line);overflow-wrap:anywhere;word-break:normal}.failed-search-table th:last-child,.failed-search-table td:last-child{border-right:0}.failed-search-table thead th{vertical-align:middle;background:#f3f8fa}.failed-search-table tbody th{padding:12px 8px;color:#1c6d92;text-align:center;vertical-align:middle;background:#fafafa;font-weight:700}.failed-search-table tbody td{height:52px;background:#fff}.failed-search-table tbody tr:last-child th,.failed-search-table tbody tr:last-child td{border-bottom:0}.template-box{padding:18px 20px;border-left:3px solid var(--gold);background:#fafafa}.template-box p:last-child{margin-bottom:0}@media(max-width:768px){details.fee-section>summary{gap:12px;padding-left:14px;font-size:27px}.fee-section-body{padding-left:16px}.fee-table{min-width:680px}.failed-search-table{min-width:640px}.failed-search-table th,.failed-search-table td{padding:10px 12px}.failed-search-table tbody th{padding-left:6px;padding-right:6px}.template-box{padding:14px 16px}details.fee-subsection>summary{gap:12px;padding-left:14px;font-size:22px}.fee-subsection-body{padding-left:16px}}
@media print{
  .fee-table-wrap-compact{overflow:visible}
  .failed-search-table{width:100%;min-width:0;border-color:#777;box-shadow:none}
  .failed-search-table th,.failed-search-table td{border-color:#777;color:#000;background:#fff}
  .failed-search-table tbody tr{break-inside:avoid;page-break-inside:avoid}
  .failed-search-table tbody td{height:11mm}
  .failed-search-table thead{display:table-header-group}
}
.english-only-note{display:none}
html[lang="en"] .english-only-note{display:block}
html[lang="el"] .english-only-note{display:block}

/* Mobile overflow hardening: long translated strings and embedded content must wrap instead of widening the page. */
.info-band,
.info-band > *,
.info-band iframe{
  min-width:0;
  max-width:100%;
}

.info-band h2,
.info-band p{
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}

.focus-section,
.method-section,
.method-card,
details.method-card > summary,
.focus-section h2,
.method-section h2,
.method-body,
.services-intro,
.focus-grid,
.focus-card{
  min-width:0;
  max-width:100%;
}

details.method-card > summary,
.focus-section h2,
.method-section h2,
.method-body,
.method-body p,
.method-note,
.focus-card{
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}

/* Services focus pills: soft pastel variant selected from mockups Option 1b. */
body[data-page="services"] .focus-grid{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:12px 13px;
  width:100%;
  max-width:890px;
  padding:8px 0;
  background:transparent;
}
body[data-page="services"] .focus-card{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:14px 24px;
  border:1px solid rgba(54,126,141,.15);
  border-radius:999px;
  background:linear-gradient(180deg,#fffefd,#f8fbfa);
  color:#566464;
  box-shadow:0 9px 22px rgba(28,109,146,.06), inset 0 1px 0 rgba(255,255,255,.92);
  font-size:15.5px;
  line-height:1.32;
  text-align:center;
  letter-spacing:0;
}
body[data-page="services"] .focus-card::before{content:none}
body[data-page="services"] .focus-card::after{content:none}
body[data-page="services"] .focus-card:nth-child(4n+1){
  border-color:rgba(192,145,0,.22);
  background:linear-gradient(180deg,#fffdf8,#fff7e6);
}
body[data-page="services"] .focus-card:nth-child(4n+1)::before{background:rgba(192,145,0,.34);box-shadow:0 0 0 6px rgba(192,145,0,.10)}
body[data-page="services"] .focus-card:nth-child(4n+2){
  border-color:rgba(28,109,146,.18);
  background:linear-gradient(180deg,#fbffff,#edf8fb);
}
body[data-page="services"] .focus-card:nth-child(4n+2)::before{background:rgba(28,109,146,.28);box-shadow:0 0 0 6px rgba(54,126,141,.08)}
body[data-page="services"] .focus-card:nth-child(4n+3){
  border-color:rgba(234,123,60,.20);
  background:linear-gradient(180deg,#fffdfb,#fff0e8);
}
body[data-page="services"] .focus-card:nth-child(4n+3)::before{background:rgba(234,123,60,.30);box-shadow:0 0 0 6px rgba(234,123,60,.08)}
body[data-page="services"] .focus-card:nth-child(4n+4){
  border-color:rgba(53,141,63,.19);
  background:linear-gradient(180deg,#fdfffc,#edf8ef);
}
body[data-page="services"] .focus-card:nth-child(4n+4)::before{background:rgba(53,141,63,.30);box-shadow:0 0 0 6px rgba(53,141,63,.08)}
body[data-page="services"] .focus-card[data-i18n="services.focusInterpersonal"]{
  min-height:54px;
  padding:14px 24px;
}
html[lang="el"] body[data-page="services"] .focus-card{
  font-family:"Noto Sans",Roboto,Arial,sans-serif;
  font-size:15px;
  line-height:1.42;
}
@media(max-width:768px){
  .method-card{width:100%;overflow:visible}
  .focus-section h2,.method-section h2{font-size:clamp(32px,10vw,40px);line-height:1.12}
  details.method-card > summary{padding-right:12px}
  details.method-card .method-body{padding-right:12px}
}
@media(max-width:640px){
  body[data-page="services"] .focus-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    max-width:560px;
    margin-inline:auto;
  }
  body[data-page="services"] .focus-card,
  body[data-page="services"] .focus-card[data-i18n="services.focusInterpersonal"]{
    width:100%;
    min-height:56px;
    border-radius:25px;
    padding:13px 18px;
    font-size:15px;
    line-height:1.36;
  }
  html[lang="el"] body[data-page="services"] .focus-card{
    font-size:15px;
    line-height:1.42;
  }
}
@media(max-width:360px){
  body[data-page="services"] .focus-card,
  body[data-page="services"] .focus-card[data-i18n="services.focusInterpersonal"]{
    padding-left:16px;
    padding-right:16px;
    font-size:14.5px;
  }
  body[data-page="services"] .focus-card::before{left:14px}
  html[lang="el"] body[data-page="services"] .focus-card{font-size:14.5px}
}

.accordion-close{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin:18px 0 6px 64px;padding:0;border:1px solid #d7d7d7;border-radius:50%;background:#fff;color:var(--teal);font:inherit;font-size:28px;font-weight:300;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:transform .2s,border-color .2s,background .2s,color .2s,box-shadow .2s}.accordion-close:hover,.accordion-close:focus-visible{border-color:var(--teal);background:#fafafa;color:#1c6d92;box-shadow:0 4px 14px rgba(0,0,0,.1);outline:none;transform:translateY(-1px)}.accordion-close:active{transform:translateY(0)}details:not([open])>.accordion-close{display:none}details.fee-section>.accordion-close,details.fee-subsection>.accordion-close{margin-left:18px}@media(max-width:768px){.accordion-close{width:44px;height:44px;margin-left:16px}details.fee-section>.accordion-close,details.fee-subsection>.accordion-close{margin-left:18px}}

/* Greek text renders more consistently with a language-aware sans-serif stack and without forced uppercase/letter spacing. */
html[lang="el"] body,
html[lang="el"] h1,
html[lang="el"] h2,
html[lang="el"] h3,
html[lang="el"] .brand strong,
html[lang="el"] .logo-hero,
html[lang="el"] .focus-section h2,
html[lang="el"] .method-section h2,
html[lang="el"] .fee-section h2,
html[lang="el"] details.fee-section > summary,
html[lang="el"] details.fee-subsection > summary{
  font-family:"Noto Sans",Roboto,Arial,sans-serif;
}

html[lang="el"] .brand small,
html[lang="el"] .site-nav a,
html[lang="el"] .language-switcher a,
html[lang="el"] .cv-label{
  text-transform:none;
  letter-spacing:0;
}

/* Phone layout: keep the final text and footer clear of the floating booking action. */
@media(max-width:768px){
  body{background-attachment:scroll}
  .page-shell,
  .home-hero,
  .home-routes,
  .home-emergency{
    padding-left:max(20px,env(safe-area-inset-left));
    padding-right:max(20px,env(safe-area-inset-right));
  }
  .gallery{gap:8px;margin:22px 0 28px}
  .gallery img{border-radius:6px}
  .info-band{gap:24px}
  .info-band > *{min-width:0}
  .site-footer{
    align-items:flex-start;
    flex-wrap:wrap;
    padding-left:max(20px,env(safe-area-inset-left));
    padding-right:max(20px,env(safe-area-inset-right));
    padding-bottom:calc(20px + env(safe-area-inset-bottom));
  }
  .footer-links{width:100%;justify-content:flex-start;gap:10px 18px}
  .legal-content{grid-template-columns:1fr;gap:14px}
  .legal-section{grid-column:auto;padding:20px 18px}
  .legal-section h2{font-size:27px}
}

/* Keep long translated and authoritative legal text inside its own box. */
h1,
.legal-page,
.legal-intro,
.legal-content,
.legal-section,
.legal-section h2,
.legal-section p,
.legal-section li,
.legal-section address{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}

@media(max-width:430px){
  h1{
    font-size:clamp(32px,9.3vw,40px);
    line-height:1.12;
  }
  .legal-page h1{
    font-size:clamp(26px,8vw,34px);
    line-height:1.15;
  }

  html[lang="el"] body[data-page="practice"] h1{
    line-height:1.15;
    padding-bottom:.18em;
  }
  body[data-page="practice"] .page-intro{margin-bottom:18px}
  body[data-page="practice"] .info-band h2{font-size:30px;line-height:1.2}
}

/* Wrap headings only at spaces; automatic hyphenation makes titles harder to scan. */
h1,h2,h3,.legal-section h2,.legal-section h3{
  hyphens:manual !important;
  overflow-wrap:normal;
  word-break:normal;
}
@media(max-width:430px){
  .legal-section h2{font-size:clamp(21px,7vw,27px);line-height:1.18}
}
