:root{--navy:#122840;--blue:#204f82;--sky:#dceafb;--ink:#162e46;--muted:#415971;--line:#cbd9e8;--paper:#f7f9fc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:var(--blue);font-weight:700;text-underline-offset:4px}header,footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px max(5vw,20px);background:white}header{border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--navy);font-size:18px}nav{display:flex;gap:20px;flex-wrap:wrap}nav a{text-decoration:none}main{width:min(1160px,90vw);margin:auto}section{padding:70px 0;border-bottom:1px solid var(--line)}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:52px;padding:88px 0}.label{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:var(--blue);margin:0 0 12px}h1,h2,h3{margin:0 0 14px;font-family:Georgia,serif;font-weight:500;line-height:1.06;letter-spacing:-.035em}h1{font-size:clamp(50px,7vw,98px)}h2{font-size:clamp(38px,5vw,62px)}h3{font-size:clamp(26px,3vw,35px)}h4{margin:19px 0 4px}p{margin:0 0 16px}.intro{color:var(--muted);font-size:21px;max-width:44ch}.hero aside{background:linear-gradient(145deg,#224a75,#122840 75%);color:white;padding:36px;border-radius:22px;font:clamp(23px,3vw,38px)/1.27 Georgia,serif}.hero aside p:last-child{color:var(--sky);margin:0}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:25px}.button{display:inline-block;background:var(--blue);border:1px solid var(--blue);color:white;font:inherit;font-weight:750;text-decoration:none;border-radius:8px;padding:10px 17px;cursor:pointer}.workshops,.resources{display:grid;gap:16px;margin-top:30px}.workshops{grid-template-columns:repeat(3,minmax(0,1fr))}.resources{grid-template-columns:repeat(2,minmax(0,1fr))}.workshops article,.resources article{background:white;border:1px solid var(--line);border-radius:14px;padding:23px}.workshops article{display:flex;flex-direction:column}.workshops article>a{margin-top:auto}.resources article:last-child{background:#eaf2fc}ul{padding-left:21px;margin:0 0 20px}li{margin:5px 0}summary{cursor:pointer;font-weight:700;color:var(--blue)}details p{margin:10px 0 0}.about p,#booking>p{max-width:72ch}.about p:not(.label),#booking>p:not(.label){font-size:18px;color:var(--muted)}form{max-width:680px;background:white;border:1px solid var(--line);padding:24px;border-radius:14px}label{display:block;margin:0 0 13px;font-weight:700}input,textarea,select{display:block;width:100%;margin-top:5px;padding:9px;border:1px solid #8ba4bf;border-radius:7px;color:var(--ink);font:inherit}#draft{margin-top:18px}#copy{padding:6px 10px;border:1px solid #8ba4bf;border-radius:7px;background:white;color:var(--ink);cursor:pointer;font:inherit}#status{margin-left:10px}:focus-visible{outline:3px solid #ad520f;outline-offset:3px}@media(max-width:760px){header{flex-wrap:wrap}.hero,.workshops,.resources{grid-template-columns:1fr}.hero{gap:28px;padding:48px 0}section{padding:45px 0}nav{gap:14px}form,.workshops article,.resources article{padding:18px}}

.session-photo{margin:28px 0}
.session-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 47%;border-radius:14px}
.session-photo figcaption{margin-top:8px;color:var(--muted);font-size:14px}
@media(max-width:600px){.session-photo img{aspect-ratio:4/3}}

.about-with-photo {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 380px);
  align-items: center;
  gap: clamp(24px, 5vw, 64px);
}
.about-photo {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 14px;
}
@media (max-width: 680px) {
  .about-with-photo { grid-template-columns: 1fr; }
  .about-photo { max-width: 380px; }
}
