/* Calendar and course pages extend the existing Unterdechler identity. */
.ud-events-page,.ud-course-page{max-width:1440px;margin-inline:auto}
.ud-breadcrumb{display:flex;flex-wrap:wrap;gap:8px 12px;padding:26px 4.3% 0;font-size:13px;color:var(--muted)}
.ud-breadcrumb a{text-decoration:none}.ud-breadcrumb a:hover{text-decoration:underline}
.ud-page-intro{padding:48px 4.3% 54px;max-width:1050px}
.ud-page-intro h1{font-size:clamp(54px,6.8vw,86px);line-height:1.02}
.ud-page-intro>p:last-child{margin-top:25px;max-width:600px;color:var(--muted);font-size:20px}
.ud-calendar-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7%;padding:0 4.3% 80px;align-items:start}
.ud-month{background:var(--tint);padding:30px 26px}
.ud-month h2{font-size:36px;margin:0 0 24px}
.ud-calendar{width:100%;border-collapse:separate;border-spacing:5px;text-align:center;font-size:17px;font-variant-numeric:tabular-nums}
.ud-calendar th{height:35px;color:var(--muted);font-size:13px;font-weight:600}
.ud-calendar abbr{text-decoration:none;cursor:default}
.ud-calendar td{height:44px;width:14.285%}
.ud-calendar-event{background:var(--green);color:var(--on-green);font-weight:600}
.ud-calendar-event a{display:flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none}
.ud-calendar-event a:hover{text-decoration:underline}
.ud-calendar-key{font-size:13px;color:var(--muted);margin-top:18px}
.ud-event-feature{padding-top:5px;scroll-margin-top:30px}
.ud-event-date{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin-bottom:25px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600}
.ud-event-date span{color:var(--muted);font-weight:400}
.ud-event-feature h2{font-size:clamp(36px,3.4vw,48px);line-height:1.08;margin-bottom:24px}
.ud-event-feature>p:not(.ud-event-date){max-width:570px;color:var(--muted)}
.ud-event-feature .ud-event-location{margin-top:22px;font-size:16px}
.ud-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 25px;margin-top:28px}
.ud-actions .text-link{margin-top:0}
.ud-event-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;padding:0 4.3% 65px;align-items:center}
.ud-event-story figure{height:350px}
.ud-event-story h2{font-size:clamp(36px,3.6vw,48px);margin-bottom:25px}
.ud-event-story p{max-width:500px;color:var(--muted)}
.ud-calendar-note{margin:0 4.3% 70px;padding-top:25px;border-top:1px solid var(--line);color:var(--muted);font-size:16px;max-width:900px}
.ud-course-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5%;padding:35px 4.3% 55px;align-items:center}
.ud-course-hero h1{font-size:clamp(52px,5.4vw,76px);line-height:1.02}
.ud-course-hero>div>p:not(.eyebrow){margin:25px 0 28px;max-width:470px;font-size:20px;color:var(--muted)}
.ud-course-hero figure{height:440px}
.ud-course-welcome{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:10%;margin:0 4.3%;padding:45px 0 70px;border-bottom:1px solid var(--line)}
.ud-course-welcome h2{font-size:clamp(40px,4.6vw,62px)}
.ud-course-welcome p{color:var(--muted);max-width:630px}
.ud-course-welcome p+p{margin-top:18px}
.ud-course-welcome .ud-lead{font-size:24px;line-height:1.4;color:var(--ink);margin-bottom:22px}
.ud-course-history{padding:65px 4.3% 0}
.ud-course-history>h2{font-size:clamp(40px,4.5vw,60px);margin-bottom:36px}
.ud-history-line{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%}
.ud-history-line li{border-top:1px solid var(--line);padding-top:18px}
.ud-history-line li>strong{font:500 clamp(48px,5vw,68px)/1.1 var(--serif);letter-spacing:-.04em;display:block;margin-bottom:22px;color:var(--green)}
.ud-history-line h3{font-size:21px;margin-bottom:12px}
.ud-history-line p{color:var(--muted);font-size:17px;max-width:370px}
.ud-course-region{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;align-items:center;padding:85px 4.3%}
.ud-course-region figure{height:540px}
.ud-course-region h2{font-size:clamp(42px,4.4vw,60px);margin-bottom:28px}
.ud-course-region p{color:var(--muted);max-width:550px}
.ud-course-region p+p{margin-top:18px}
.ud-course-day{background:var(--tint);padding:65px 4.3% 70px}
.ud-section-heading{max-width:800px;margin-bottom:40px}
.ud-section-heading>p:last-child{max-width:620px;color:var(--muted);margin-top:24px}
.ud-day-sequence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%}
.ud-day-sequence article{border-top:1px solid var(--line);padding-top:24px}
.ud-sequence-word{display:block;font-family:var(--serif);font-size:26px;color:var(--muted);margin-bottom:26px}
.ud-day-sequence h3{margin-bottom:18px}
.ud-day-sequence p{font-size:17px;color:var(--muted)}
.ud-day-sequence p+p{margin-top:16px}
.ud-course-start{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:12%;padding:90px 9% 80px;align-items:start;scroll-margin-top:20px}
.ud-start-date{display:flex;flex-direction:column;align-items:center;padding:22px 0 26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:19px}
.ud-start-date strong{font:500 clamp(100px,11vw,155px)/1.1 var(--serif);letter-spacing:-.06em}
.ud-start-date .ud-start-time{margin-top:24px;color:var(--muted);font-size:16px}
.ud-course-start h2{font-size:clamp(42px,4.8vw,64px);margin-bottom:28px}
.ud-course-start p{color:var(--muted);max-width:670px}
.ud-course-start p+p{margin-top:18px}
.ud-course-start address{margin-top:25px;font-size:17px}
.ud-course-learning{padding:20px 9% 85px}
.ud-course-learning h2{font-size:clamp(40px,4.4vw,60px)}
.ud-learning-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9%}
.ud-learning-columns h3{margin-bottom:18px}
.ud-learning-columns p{color:var(--muted);max-width:530px}
.ud-learning-columns p+p{margin-top:18px}
.ud-course-learning>.text-link{margin-top:30px}
.ud-course-close{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;padding:0 4.3% 85px;align-items:center}
.ud-course-close figure{height:440px}
.ud-course-close h2{font-size:clamp(40px,4vw,56px);margin-bottom:25px}
.ud-course-close p{color:var(--muted);max-width:530px}
.ud-course-close .phone-number{margin-top:15px}
.ud-course-email{display:block;width:fit-content;margin-top:12px;font-size:17px;overflow-wrap:anywhere}
.ud-course-close .ud-host-note{margin-top:28px;font-size:15px}
@media(prefers-color-scheme:dark){.ud-course-page figure img,.ud-event-story img{filter:brightness(.88)}}
:root[data-theme="light"] .ud-course-page figure img,:root[data-theme="light"] .ud-event-story img{filter:none}
@media(max-width:1100px){.ud-course-hero{gap:4%}.ud-course-hero h1{font-size:58px}.ud-course-hero figure{height:400px}.ud-course-region figure{height:560px}.ud-course-start{gap:8%;padding-inline:6%}.ud-course-learning{padding-inline:6%}.ud-day-sequence{gap:3%}.ud-event-date{display:block}.ud-event-date span{display:block;margin-top:6px}}
@media(max-width:767px){
  .ud-breadcrumb{padding:22px 22px 0;font-size:12px;gap:6px 10px}
  .ud-page-intro{padding:35px 22px 35px}.ud-page-intro h1{font-size:52px}.ud-page-intro>p:last-child{font-size:18px;margin-top:20px}
  .ud-calendar-section{grid-template-columns:1fr;gap:35px;padding:0 22px 55px}.ud-month{padding:24px 18px}.ud-month h2{font-size:33px;margin-bottom:15px}.ud-calendar{font-size:16px}.ud-calendar td{height:42px}
  .ud-event-feature h2{font-size:39px}.ud-event-date{margin-bottom:22px}.ud-actions{gap:18px;margin-top:24px}.ud-actions .button{gap:18px}
  .ud-event-story{grid-template-columns:1fr;gap:30px;padding:0 22px 45px}.ud-event-story figure{height:280px}.ud-event-story h2{font-size:39px}.ud-calendar-note{margin:0 22px 45px}
  .ud-course-hero{grid-template-columns:1fr;gap:30px;padding:32px 22px 35px}.ud-course-hero h1{font-size:clamp(47px,11.3vw,66px)}.ud-course-hero>div>p:not(.eyebrow){font-size:18px;margin:22px 0 25px}.ud-course-hero figure{height:300px;margin-inline:-22px}
  .ud-course-welcome{grid-template-columns:1fr;gap:26px;margin:0 22px;padding:20px 0 45px}.ud-course-welcome h2{font-size:43px}.ud-course-welcome .ud-lead{font-size:22px}
  .ud-course-history{padding:45px 22px 0}.ud-course-history>h2{font-size:42px;margin-bottom:30px}.ud-history-line{grid-template-columns:1fr;gap:25px}.ud-history-line li{display:grid;grid-template-columns:85px minmax(0,1fr);gap:15px;padding-top:20px}.ud-history-line li>strong{font-size:42px;margin-bottom:0}.ud-history-line h3{font-size:20px}.ud-history-line p{font-size:16px}
  .ud-course-region{grid-template-columns:1fr;gap:30px;padding:45px 22px}.ud-course-region figure{height:340px}.ud-course-region h2{font-size:43px;margin-bottom:23px}
  .ud-course-day{padding:45px 22px}.ud-section-heading{margin-bottom:30px}.ud-section-heading h2{font-size:43px}.ud-section-heading>p:last-child{margin-top:21px}.ud-day-sequence{grid-template-columns:1fr;gap:32px}.ud-day-sequence article{padding-top:20px}.ud-sequence-word{font-size:24px;margin-bottom:15px}.ud-day-sequence h3{margin-bottom:14px}
  .ud-course-start{grid-template-columns:1fr;gap:30px;padding:50px 22px 45px}.ud-start-date{display:grid;grid-template-columns:100px 1fr;align-items:center;justify-items:start;column-gap:20px;padding:16px 0}.ud-start-date strong{grid-column:1;grid-row:1/4;font-size:90px;line-height:1}.ud-start-date>span{grid-column:2}.ud-start-date .ud-start-time{margin-top:3px}.ud-course-start h2{font-size:45px;margin-bottom:23px}
  .ud-course-learning{padding:0 22px 50px}.ud-course-learning h2{font-size:42px}.ud-learning-columns{grid-template-columns:1fr;gap:30px}
  .ud-course-close{grid-template-columns:1fr;gap:30px;padding:0 22px 55px}.ud-course-close figure{height:290px}.ud-course-close h2{font-size:42px}.ud-course-close .phone-number{font-size:36px}
}
@media(max-width:360px){.ud-page-intro h1{font-size:46px}.ud-course-hero h1{font-size:44px}.ud-event-feature h2{font-size:35px}.ud-actions .button{font-size:15px;padding:12px 16px}.ud-calendar{border-spacing:2px}.ud-course-close .phone-number{font-size:33px}}
@media print{.ud-breadcrumb,.ud-actions{display:none}.ud-course-page section,.ud-event-story{padding:24px}.ud-course-hero figure,.ud-course-region figure,.ud-course-close figure{height:250px}.ud-course-day{background:transparent}.ud-course-welcome{padding:24px 0}.ud-calendar-section{padding:24px}.ud-day-sequence{gap:24px}.ud-course-page h1{font-size:42pt}.ud-course-page h2,.ud-events-page h2{font-size:26pt}}
/* Homepage invitation uses the same calendar and course identity. */
.course-teaser{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:10%;border-top:1px solid var(--line);padding-top:70px;padding-bottom:75px}
.course-teaser h2{font-size:clamp(38px,4vw,58px)}
.course-teaser h2+p{max-width:620px;margin-top:26px;color:var(--muted)}
.course-teaser-date{align-self:center;border-left:1px solid var(--line);padding-left:30px}
.course-teaser-date>p{color:var(--muted);font-size:16px}
.course-teaser-date time{display:block;font:500 clamp(30px,3vw,42px)/1.15 var(--serif);margin:16px 0}
@media(min-width:1024px) and (max-width:1100px){.site-header nav{gap:15px;font-size:14px}.site-header{gap:18px}.site-header .nav-call{padding-inline:12px}}
@media(max-width:767px){.course-teaser{grid-template-columns:1fr;gap:30px;padding:45px 22px}.course-teaser h2{font-size:40px}.course-teaser-date{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}}

.ud-course-region figure img{object-position:center 42%}.ud-dog-photo{height:440px;margin-bottom:42px}.ud-dog-photo img{object-position:center 55%}
@media(max-width:767px){.ud-course-region figure{height:440px}.ud-dog-photo{height:270px;margin-bottom:30px}}
