@font-face{font-family:SerWordmark;src:url('assets/wordmark.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:SerDisplay;src:url('assets/serif.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:SerSans;src:url('assets/sans.woff') format('woff');font-display:swap;font-weight:400}
@font-face{font-family:SerSans;src:url('assets/sans-medium.woff') format('woff');font-display:swap;font-weight:600 800}
:root{--paper:#ffffff;--ink:#202e38;--muted:#5c6872;--accent:#185574;--accent-hover:#0f3f59;--line:#dce3e8;--tint:#ecf3f7;--copy:#46545e;--gutter:clamp(24px,6.1vw,112px);--body:SerSans,Arial,sans-serif;--display:SerDisplay,Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
::selection{background:#cee5f4;color:var(--ink)}
.wrap{width:calc(100% - var(--gutter)*2);max-width:1420px;margin-inline:auto}
.skip-link{position:fixed;top:-100px;left:20px;z-index:20;padding:12px 22px;background:var(--accent);color:#fff}
.skip-link:focus{top:15px}
.site-header{min-height:110px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:40px}
.brand{font-family:SerWordmark,Georgia,serif;font-size:46px;line-height:1;white-space:nowrap;letter-spacing:-.035em;padding-top:5px}
.main-nav{margin-left:auto;display:flex;gap:30px;font-size:16px;align-items:center}
.main-nav a{padding:12px 0;border-bottom:1px solid transparent;transition:border-color .18s ease}
.main-nav a:hover{border-color:var(--ink)}
.languages{display:flex;align-items:center;gap:7px;font-size:15px}
.languages button{background:none;border:0;padding:10px 4px;cursor:pointer;position:relative;min-height:44px}
.languages button[aria-pressed="true"]:after{content:"";height:1px;background:var(--accent);position:absolute;left:4px;right:4px;bottom:6px}
.languages button[aria-pressed="false"]{color:var(--muted)}
.languages>span{color:#8998a3}
.hero{position:relative;isolation:isolate;width:100%;max-width:1800px;margin:auto;height:min(58.4vw,1010px);min-height:610px;overflow:hidden}
.hero-copy{padding-top:64px;position:relative;z-index:2;pointer-events:none}
.hero-copy a{pointer-events:auto}
.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.085em;color:var(--accent);margin:0 0 25px;line-height:1.4}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.12;margin:0;letter-spacing:-.035em}
h1{font-size:clamp(50px,4.65vw,78px);white-space:nowrap;max-width:42%}
.hero-description{font-size:clamp(18px,1.55vw,23px);color:var(--muted);max-width:31%;line-height:1.5;margin:30px 0 30px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 23px;min-height:56px;background:var(--accent);color:#ffffff;border:1px solid var(--accent);border-radius:5px;font-size:16px;line-height:1.35;transition:background .2s ease,transform .2s ease}
.button:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}
.button>span[aria-hidden]{font-size:22px;line-height:1}
.hero-art{position:absolute;z-index:0;bottom:0;left:0;width:100%;height:auto;display:block;pointer-events:none}
.sessions{border-top:1px solid var(--line);padding-top:54px;padding-bottom:64px}
.session-introduction{max-width:920px}
.session-introduction .eyebrow{margin-bottom:19px}
.session-copy{max-width:820px;margin-top:28px;font-size:20px;line-height:1.65;color:var(--copy)}
.session-copy>p{margin:0 0 23px}
.session-quote{margin:34px 0 0;padding-top:27px;border-top:1px solid var(--line)}
.session-quote p{font-family:var(--display);font-size:27px;line-height:1.4;color:var(--ink);margin:0;max-width:720px}
.session-quote footer{font-size:14px;margin-top:14px;color:var(--muted)}
h2{font-size:clamp(35px,3.1vw,48px)}
.lead{font-size:22px;line-height:1.55;color:var(--copy);margin:24px 0 0}
.session-facts{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:35px;margin:44px 0 0;padding-bottom:44px;border-bottom:1px solid var(--line)}
.session-facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.session-facts dd{margin:0;font-size:22px;line-height:1.35}
.session-facts .fact-detail{font-size:15px;color:var(--muted);margin-top:7px}
.practical-information{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(40px,9vw,150px);padding-top:39px}
h3{font-size:29px}
.practical-heading p{font-size:16px;max-width:390px;color:var(--muted);line-height:1.6;margin:17px 0 0}
.price-row{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:0 0 21px;font-size:17px}
.price-row+.price-row{border-top:1px solid var(--line);padding-top:20px}
.price-row strong{font-weight:400;font-size:25px;white-space:nowrap}
.price-row small{display:block;margin-top:6px;font-size:14px;color:var(--muted)}
.text-link{display:inline-flex;gap:25px;align-items:center;font-size:16px;padding-bottom:4px;border-bottom:1px solid #8ba6b6;margin-top:6px;color:var(--accent)}
.text-link:hover{border-color:var(--ink)}
.about{padding-block:66px 72px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.4fr);gap:clamp(40px,9vw,150px)}
.about .eyebrow{margin-bottom:21px}
.about-caption{font-size:15px;color:var(--muted);margin:15px 0 0}
.about-biography{font-size:20px;line-height:1.65;color:var(--copy)}
.about-biography>p{margin:0 0 22px}
.about-biography>p:last-child{margin-bottom:0}
.about-copy .lead{margin:0;font-size:23px}
.about-copy>p:last-child{font-size:17px;color:var(--muted);margin:21px 0 0;line-height:1.65}
.contact{background:var(--tint);padding:63px 0 68px}
.contact-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center}
.contact .eyebrow{margin-bottom:20px}
.contact h2{font-size:clamp(35px,3.5vw,52px)}
.contact-copy>p:last-child{font-size:18px;max-width:530px;color:var(--copy);margin:24px 0 0}
.contact-action{justify-self:end;width:max-content;max-width:100%}
.contact-action .button{min-width:260px}
.contact-number{display:block;font-size:15px;margin-top:16px}
.contact-note{font-size:13px;color:var(--muted);line-height:1.6;margin:18px 0 0}
.site-footer{min-height:142px;display:flex;gap:30px;align-items:center;justify-content:space-between}
.site-footer .brand{font-size:35px}
.site-footer p{font-size:13px;color:var(--muted)}
.back-top{font-size:13px;color:var(--muted);display:flex;gap:18px;align-items:center;padding:12px 0}
.back-top:hover{color:var(--accent)}
@media(min-width:1650px){.hero-copy{padding-top:80px}.hero-description{max-width:410px}.hero-art{width:100%}}
@media(max-width:1100px) and (min-width:901px){.main-nav{gap:18px}.site-header{gap:23px}.brand{font-size:39px}.hero-description{max-width:32%;font-size:18px}.hero-copy{padding-top:44px}.hero .eyebrow{margin-bottom:21px}.hero-description{margin-top:24px}.hero .button{font-size:15px;padding:14px 18px;gap:12px}.hero{min-height:585px}}
@media(max-width:900px){
  .site-header{min-height:100px;gap:20px;flex-wrap:wrap;padding-block:22px 15px}
  .brand{font-size:40px}.main-nav{order:3;width:100%;justify-content:space-between;gap:15px;font-size:15px}.languages{margin-left:auto}.site-header .main-nav a{padding:5px 0}
  .hero{min-height:0;height:auto;overflow:hidden;padding-top:39px}
  .hero-copy{padding-top:0}.hero .eyebrow{margin-bottom:18px}h1{font-size:clamp(43px,7.8vw,65px);max-width:100%;white-space:normal}
  .hero-description{max-width:540px;font-size:20px;line-height:1.5;margin-top:22px;margin-bottom:25px}
  .hero-art{position:relative;width:112%;max-width:none;left:-6%;margin-top:-15px;margin-bottom:10px}
  .hero-copy .button{position:relative;z-index:2}
  .sessions{padding-top:40px;padding-bottom:45px}.lead{font-size:21px}
  .session-facts{gap:20px;margin-top:32px;padding-bottom:32px}.session-facts dd{font-size:20px}.session-facts .fact-detail{font-size:14px}
  .practical-information,.about{gap:35px}.practical-information{grid-template-columns:1fr 1.15fr}
  .price-row{font-size:15px}.price-row strong{font-size:23px}
  .about{grid-template-columns:1fr;padding-block:48px;gap:30px}.about-copy .lead{font-size:21px}
  .contact-inner{gap:35px;grid-template-columns:1.2fr 1fr}.contact-action .button{min-width:0;font-size:15px;padding:16px 20px}
  .site-footer{flex-wrap:wrap;gap:20px;padding-block:32px;min-height:120px}.site-footer p{margin:0}.site-footer .back-top{margin-left:auto}
}
@media(max-width:600px){
  :root{--gutter:24px}
  body{font-size:17px}.brand{font-size:37px}.site-header{column-gap:15px;row-gap:15px;padding-top:23px;padding-bottom:17px}.main-nav{font-size:14px}.languages{font-size:14px}
  .hero{padding-top:35px}.hero-description{font-size:18px;max-width:350px;margin-bottom:23px}.hero .eyebrow{font-size:11px;letter-spacing:.09em}.hero .button{font-size:15px;padding:14px 18px;min-height:50px}
  .hero-art{width:135%;left:-17.5%;margin-top:1px;margin-bottom:0}
  h2{font-size:34px;line-height:1.14}.session-introduction .eyebrow{margin-bottom:15px}.session-introduction .lead{font-size:19px;margin-top:20px}
  .session-copy{font-size:18px;line-height:1.65;margin-top:23px}.session-copy>p{margin-bottom:22px}.session-quote{margin-top:29px;padding-top:24px}.session-quote p{font-size:24px}
  .session-facts{grid-template-columns:1fr;gap:0;border-bottom:0;padding-bottom:0;margin-top:26px}
  .session-facts>div{display:grid;grid-template-columns:95px 1fr;column-gap:15px;border-bottom:1px solid var(--line);padding:20px 0;align-items:baseline}
  .session-facts dt{margin:0;font-size:11px}.session-facts dd{font-size:18px}.session-facts .fact-detail{grid-column:2;font-size:13px;margin-top:6px}
  .practical-information{grid-template-columns:1fr;gap:28px;padding-top:33px}.practical-heading p{font-size:15px;max-width:none}h3{font-size:27px}.price-row{font-size:16px}
  .about{grid-template-columns:1fr;gap:27px;padding-block:39px 44px}.about .eyebrow{margin-bottom:14px}.about-caption{font-size:14px}.about-copy .lead{font-size:20px}.about-copy>p:last-child{font-size:16px}
  .about-biography{font-size:18px}
  .contact{padding-block:41px 45px}.contact-inner{grid-template-columns:1fr;gap:28px}.contact h2{font-size:36px}.contact-copy>p:last-child{font-size:17px;margin-top:20px}.contact-action{justify-self:start}.contact-action .button{min-width:245px;font-size:16px}
  .site-footer{display:grid;grid-template-columns:1fr auto;gap:17px 12px;padding-block:31px}.site-footer .brand{font-size:33px}.site-footer p{grid-column:1/-1;grid-row:2;font-size:12px}.back-top{font-size:12px;gap:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.main-nav a{transition:none}.button:hover{transform:none}}

/* Integration is loaded only on Ser Emocional pages. */
#ser-emocional [hidden]{display:none!important}
#ser-emocional{width:100%;max-width:none;margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.5}
body.ser-emocional-page{margin:0;padding:0;max-width:none;background:var(--paper)}
#ser-emocional .site-header{background:transparent;position:relative;box-shadow:none}
#ser-emocional .archive{padding-block:64px 80px;min-height:60vh}
#ser-emocional .archive h1{max-width:none;white-space:normal}
#ser-emocional .article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 60px;margin-top:32px}
#ser-emocional .article-item{border-bottom:1px solid var(--line);padding-block:30px}
#ser-emocional .article-item time{font-size:13px;color:var(--muted)}
#ser-emocional .article-item h2{font-size:32px;margin-block:12px 16px}
#ser-emocional .article-item h2 a:hover{color:var(--accent)}
#ser-emocional .article-pagination{display:flex;justify-content:space-between;gap:24px;margin-top:32px}
#ser-emocional .articles-link{color:var(--accent)}
@media(max-width:600px){#ser-emocional .article-list{grid-template-columns:1fr}#ser-emocional .archive{padding-block:42px}#ser-emocional .site-footer .articles-link{grid-column:1;grid-row:3}}
