@font-face{font-family:Editorial;src:local('Iowan Old Style'),local('Palatino');font-display:swap}
:root{--paper:#fafbf8;--ink:#26372f;--muted:#657269;--blue:#264aaf;--yellow:#f3d973;--line:#dce2d9;--serif:Editorial,'Palatino Linotype','Book Antiqua',Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75;min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,p,figure{margin:0}h1,h2,.brand{font-family:var(--serif);font-weight:400}h1{font-size:46px;line-height:1.2;letter-spacing:-1.3px;color:var(--blue);overflow-wrap:anywhere}h2{font-size:28px;line-height:1.35;letter-spacing:-.5px}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:2px}.container{width:min(1180px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-150%);padding:10px 20px;background:var(--yellow)}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,251,248,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:4px;font-size:29px;white-space:nowrap;letter-spacing:-1px}.brand-dot{width:7px;height:7px;background:var(--blue);border-radius:50%;align-self:flex-end;margin-bottom:12px;margin-left:3px}.main-nav{display:flex;align-items:center;gap:27px;font-size:14px;line-height:1.5}.main-nav a{padding-block:10px;position:relative}.main-nav a:hover,.main-nav a[aria-current]{color:var(--blue)}.main-nav a[aria-current]::after{content:'';height:3px;background:var(--yellow);position:absolute;bottom:0;left:0;right:0}.menu-toggle{display:none}main{flex:1}.eyebrow{font-size:13px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}.home-profile{display:grid;grid-template-columns:1fr .92fr;gap:90px;align-items:center;padding-block:74px 83px}.home-copy h1{font-size:54px;margin:14px 0 23px;letter-spacing:-1.5px}.lead{font-size:20px;line-height:1.65;color:var(--ink)}.home-copy>p:not(.lead):not(.eyebrow){margin-top:20px;color:var(--muted)}.profile-image{margin:0}.profile-image img{height:370px;border-radius:4px;object-position:58% 50%}.profile-image figcaption{margin-top:13px;font-size:13px;color:var(--muted);line-height:1.7}.profile-image figcaption span{display:block;font-size:12px}.page-section{padding-block:37px 72px;min-height:570px}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:30px;display:flex;gap:12px;flex-wrap:wrap}.breadcrumb a:hover{color:var(--blue)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.capacity{font-size:14px;padding:7px 14px;border:1px solid #cdd7c9;border-radius:30px;white-space:nowrap}.section-intro{max-width:730px;color:var(--muted);margin-top:24px}.posts-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:43px;margin-bottom:21px}.posts-heading>span{font-size:13px;color:var(--muted)}.posts-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.post-card{background:#f0f3ed;border-radius:4px;overflow:hidden}.post-image{position:relative;height:270px;overflow:hidden;background:#e8e7e0}.post-image img{width:100%;height:100%;object-position:50% 62%}.post-card:nth-child(2) .post-image img{transform:scale(1.35);object-position:24% 32%}.post-sample{position:absolute;top:15px;left:15px;padding:6px 11px;border-radius:3px;background:var(--paper);font-size:12px;letter-spacing:.35px}.post-body{padding:24px 27px}.post-body>p{font-size:17px;line-height:1.75}.post-meta{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.post-price{color:var(--blue);font-weight:600}.sample-note{font-size:13px;color:var(--muted);margin-top:20px}.article-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:95px;align-items:start;margin-top:32px}.article-copy{max-width:670px;margin-top:30px}.article-layout .article-copy{margin-top:0}.article-copy>p+p{margin-top:23px;color:var(--muted)}.text-link{color:var(--blue);border-bottom:1px solid var(--blue);padding-bottom:2px}.quiet-note{margin-top:3px;padding:23px 25px;border-left:3px solid var(--yellow);background:#f1f4f9;font-family:var(--serif);font-size:24px;line-height:1.5;color:var(--blue)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px;margin-top:30px}.contact-layout .article-copy{margin:0}.contact-list{margin:0}.contact-list>div{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:baseline;padding-block:17px;border-bottom:1px solid var(--line)}.contact-list>div:first-child{padding-top:0}.contact-list dt{font-size:14px;color:var(--muted)}.contact-list dd{margin:0;font-family:var(--serif);font-size:24px;overflow-wrap:anywhere}.contact-list dd a{color:var(--blue)}.site-footer{border-top:1px solid var(--line);padding-block:25px;display:flex;justify-content:space-between;align-items:center;gap:20px}.site-footer .brand{font-size:24px}.site-footer .brand-dot{margin-bottom:9px}.site-footer p{font-size:13px;color:var(--muted)}.site-footer>a:last-child{font-size:14px}.prototype-note{text-align:center;background:#f0f3ed;padding:10px 20px;font-size:12px;color:#59675d}
@media(max-width:1220px){.container{width:calc(100% - 64px)}.header-inner{min-height:78px}.menu-toggle{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:transparent;border-radius:4px;padding:8px 12px;font-size:14px;color:var(--ink);cursor:pointer}.menu-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:15px 32px 23px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 10px 20px #21362e0a;flex-direction:column;align-items:stretch;gap:0;font-size:16px}.main-nav.is-open{display:flex}.main-nav a{padding:12px 6px}.main-nav a[aria-current]::after{width:25px;left:6px;right:auto}.home-profile{gap:55px;padding-block:55px 65px}.home-copy h1{font-size:48px}.profile-image img{height:370px}.article-layout,.contact-layout{gap:55px}}
@media(max-width:800px){.container{width:calc(100% - 48px)}.home-profile{grid-template-columns:1fr;gap:32px;padding-block:42px 52px}.home-copy{max-width:650px}.home-copy h1{font-size:46px}.profile-image{max-width:650px}.profile-image img{height:340px}.page-section{min-height:520px;padding-bottom:52px}h1{font-size:38px}.page-heading{flex-direction:column;align-items:flex-start;gap:18px}.post-image{height:220px}.post-body{padding:22px}.post-body>p{font-size:16px}.article-layout{grid-template-columns:1fr;gap:28px}.quiet-note{max-width:420px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-list{max-width:650px}.site-footer{flex-wrap:wrap}.site-footer p{order:3;width:100%}}
@media(max-width:560px){.container{width:calc(100% - 40px)}.header-inner{min-height:72px}.brand{font-size:27px}.main-nav{padding-inline:20px}.home-profile{padding-top:31px;gap:27px}.home-copy h1{font-size:42px;margin-top:11px;margin-bottom:20px}.lead{font-size:19px}.home-copy>p:not(.lead):not(.eyebrow){font-size:16px;margin-top:18px}.profile-image img{height:275px}.profile-image figcaption{font-size:12px}.eyebrow{font-size:12px}.page-section{padding-top:24px;min-height:480px}.breadcrumb{font-size:12px;margin-bottom:24px;gap:9px}h1{font-size:34px;letter-spacing:-.9px;hyphens:auto}.capacity{font-size:13px}.posts-heading{align-items:flex-start;flex-direction:column;gap:5px;margin-top:32px}.posts-heading h2{font-size:26px}.posts-grid{grid-template-columns:1fr;gap:22px}.post-image{height:250px}.post-body{padding:22px 23px}.post-meta{font-size:13px}.sample-note{font-size:12px}.article-copy{margin-top:24px}.quiet-note{font-size:22px}.contact-list>div{grid-template-columns:85px 1fr;gap:10px}.contact-list dd{font-size:23px}.site-footer{padding-block:21px;gap:12px}.site-footer p{font-size:12px}.prototype-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
/* Rejtett képek: quiet identity, a vertical craft feed, and a fuller personal page. */
main:focus{outline:none}.home-copy h1{font-size:43px;line-height:1.2;max-width:460px}.feed-page{max-width:780px;margin-inline:auto}.feed-page .page-heading{align-items:flex-start}.feed-page .page-heading h1{font-size:41px}.feed-page .section-intro{max-width:690px}.posts-feed{display:flex;flex-direction:column;gap:32px}.posts-feed .post-card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.posts-feed .post-body{padding:25px 30px 27px}.posts-feed .post-body>p{font-size:17px;line-height:1.8}.post-date{display:block;font-size:13px;color:var(--muted);margin-bottom:12px}.posts-feed .post-image{height:auto;aspect-ratio:3/2}.posts-feed .post-image img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}.post-price-footer{padding:16px 30px;border-top:1px solid #eef0ed;font-size:14px;background:#fff}.personal-intro{display:grid;grid-template-columns:1.35fr .75fr;gap:65px;align-items:start}.personal-opening{padding-top:9px}.personal-opening h1{font-size:46px;margin-top:13px;margin-bottom:23px;overflow-wrap:normal;hyphens:manual}.personal-opening .lead{font-family:var(--serif);font-size:29px;line-height:1.45;color:var(--ink);max-width:530px}.personal-opening>p:last-child{font-size:17px;color:var(--muted);max-width:600px;margin-top:22px}.personal-side{padding:28px 30px 29px;background:#e9eef9;border-radius:5px;border-top:4px solid var(--yellow)}.personal-side>.eyebrow{color:var(--blue);margin-bottom:21px}.personal-side>div{display:flex;gap:21px;align-items:baseline;padding-block:15px;border-bottom:1px solid #cfd9ec}.personal-side>div:last-child{border-bottom:0;padding-bottom:0}.personal-side>div>span{font-size:12px;color:#6277a3}.personal-side>div>p{font-family:var(--serif);font-size:26px;line-height:1.25;color:var(--blue)}.personal-side small{display:block;margin-top:8px;font-family:var(--sans);font-size:14px;color:#52617b;line-height:1.6}.personal-detail{display:grid;grid-template-columns:.75fr 1.35fr;gap:85px;margin-top:65px;padding-top:39px;border-top:1px solid var(--line)}.personal-detail h2{font-size:32px;margin-top:14px;max-width:285px;line-height:1.25}.personal-topics>section{padding-block:23px;border-bottom:1px solid var(--line)}.personal-topics>section:first-child{padding-top:0}.personal-topics>section:last-child{border-bottom:0;padding-bottom:0}.personal-topics h3{font-family:var(--sans);font-weight:550;font-size:18px;line-height:1.5;margin:0 0 9px}.personal-topics p{font-size:16px;color:var(--muted);max-width:620px}.personal-practical{margin-top:45px;display:flex;align-items:center;justify-content:space-between;gap:35px;background:#f2f4ef;padding:24px 28px;border-radius:4px}.personal-practical h2{font-size:23px}.personal-practical p{font-size:14px;color:var(--muted);margin-top:7px}.contact-link{display:flex;align-items:center;gap:25px;white-space:nowrap;font-size:15px;color:var(--blue);border-bottom:1px solid var(--blue);padding-bottom:5px}.contact-link>span{font-size:21px}
@media(max-width:1220px){.personal-intro{gap:40px}.personal-detail{gap:55px}.personal-opening h1{font-size:41px}.personal-side{padding:24px}.personal-opening .lead{font-size:27px}}
@media(max-width:800px){.home-copy h1{font-size:40px}.personal-intro{grid-template-columns:1fr;gap:30px}.personal-side{max-width:600px;width:100%}.personal-side>div{gap:23px}.personal-detail{grid-template-columns:1fr;gap:28px;margin-top:40px;padding-top:32px}.personal-detail h2{max-width:none;font-size:30px}.personal-practical{align-items:flex-start;flex-direction:column;gap:20px}.personal-opening h1{font-size:39px}}
@media(max-width:560px){.brand{font-size:25px}.header-inner{gap:15px}.home-copy h1{font-size:35px;max-width:300px}.feed-page .page-heading h1{font-size:33px}.posts-feed{gap:25px}.posts-feed .post-body{padding:20px}.posts-feed .post-body>p{font-size:16px}.post-price-footer{padding:14px 20px}.posts-feed .post-image{height:auto}.personal-opening h1{font-size:34px}.personal-opening .lead{font-size:26px}.personal-opening>p:last-child{font-size:16px}.personal-side{padding:22px}.personal-side>div>p{font-size:25px}.personal-detail h2{font-size:29px}.personal-topics h3{font-size:17px}.personal-practical{padding:22px}.contact-link{font-size:14px}.site-footer .brand{font-size:23px}}
/* Keep the footer text and contact link on the same row at every width. */
.site-footer{flex-wrap:nowrap;align-items:baseline;gap:24px}.site-footer p{order:0;width:auto;flex:1;min-width:0;font-size:14px}.site-footer>a:last-child{flex:none;font-size:14px}.contact-list dd{font-family:var(--sans);font-size:17px;line-height:1.6}
@media(max-width:560px){.site-footer{gap:18px}.site-footer p,.site-footer>a:last-child{font-size:12px}.contact-list dd{font-size:16px}}

/* Quiet contact row and an opaque mobile navigation surface. */
.site-header{background:var(--paper)}
.personal-practical{background:none;border-top:1px solid var(--line);border-radius:0;padding:24px 0;gap:24px}
.personal-practical h2{font-family:var(--sans);font-size:18px;font-weight:500;letter-spacing:0}
.personal-practical p{margin-top:5px;line-height:1.6}
.personal-practical .contact-link{border-bottom:0;padding:8px 0;gap:12px;font-size:15px}
.personal-practical .contact-link:hover{text-decoration:underline;text-underline-offset:5px}
.personal-practical .contact-link>span{font-size:19px}
@media(max-width:1220px){
 body.menu-open{overflow:hidden}
 .main-nav{position:fixed;top:79px;bottom:0;left:0;right:0;background:var(--paper);padding:28px 32px;overflow-y:auto;border-top:1px solid var(--line);border-bottom:0;box-shadow:none;gap:8px;font-size:20px}
 .main-nav a{padding:19px 18px;border-bottom:1px solid var(--line);border-radius:3px;flex-shrink:0}
 .main-nav a[aria-current]{background:#edf1fb;border-bottom-color:transparent}
 .main-nav a[aria-current]::after{left:0;top:19px;bottom:19px;width:3px;height:auto}
}
@media(max-width:800px){.personal-practical{gap:12px;padding:22px 0}}
@media(max-width:560px){.main-nav{top:73px;padding:20px}.main-nav a{padding:18px 16px;font-size:18px}}

/* A gentle, changeable background and separate programme and gallery pages. */
:root,:root[data-background="cream"]{--paper:#f8f3e9;--line:#dfd3c2;--surface:#fffdf8;--muted:#665f54;--blue:#72533e;--yellow:#ddba7a}
:root[data-background="blue"]{--paper:#dce9f6;--line:#b9cada;--surface:#f8fbff;--muted:#4f626f;--blue:#264aaf;--yellow:#f3d973}
:root[data-background="sage"]{--paper:#dfebdf;--line:#bfcfbd;--surface:#f8fcf5;--muted:#536653;--blue:#264aaf;--yellow:#f3d973}
:root[data-background="rose"]{--paper:#f2e0e4;--line:#d7bfc5;--surface:#fff9fa;--muted:#6b5961;--blue:#264aaf;--yellow:#f3d973}
:root[data-background="white"]{--paper:#fafbf8;--line:#dce2d9;--surface:#fff;--muted:#657269;--blue:#264aaf;--yellow:#f3d973}
.main-nav{gap:18px;white-space:nowrap;font-size:14px}
.home-profile .profile-image img{border-radius:8px}
.posts-feed .post-card,.post-price-footer{background:var(--surface)}
.posts-feed .post-body>p{overflow-wrap:anywhere;white-space:pre-line}
.craft-program-link{margin-top:19px;font-size:15px}
.craft-program-link span{margin-left:8px}
.collection-page{max-width:1080px;margin-inline:auto}
.collection-page>.section-intro{max-width:650px;margin-top:19px;font-size:17px}
.events-list{margin-top:42px;border-top:1px solid var(--line)}
.event-row{display:grid;grid-template-columns:86px 1fr;gap:35px;padding:34px 0;border-bottom:1px solid var(--line)}
.event-date{align-self:start;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f2e5ba;border-radius:6px;padding:13px 7px;line-height:1.4;font-size:12px;color:#555747}
.event-date strong{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:39px;line-height:1.2;margin:3px 0}
.event-category{font-size:12px;color:var(--blue);letter-spacing:.4px;margin-bottom:8px}
.event-body h2,.course-body h2{font-size:30px;line-height:1.3;color:var(--ink);margin-bottom:13px}
.event-meta{color:var(--muted);font-size:14px;margin-bottom:15px}
.event-body>p:not(.event-category):not(.event-meta),.course-body>p:not(.event-category){color:var(--muted);max-width:710px;font-size:16px}
.program-details{margin-top:18px;color:var(--muted);font-size:15px;max-width:730px}
.program-details summary{cursor:pointer;color:var(--ink);font-size:14px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:13px 0}
.program-details summary::-webkit-details-marker{display:none}
.program-details summary::after{content:'+';font-size:21px;font-weight:400;color:var(--blue)}
.program-details[open] summary::after{content:'−'}
.program-details summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.program-details p{padding-bottom:12px;line-height:1.75}
.program-details ul{padding-left:20px;margin:0 0 14px;line-height:1.8}
.program-link{display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #264aaf55;padding:6px 0;font-size:14px;color:var(--blue);margin-top:8px}
.program-link:hover{border-color:var(--blue)}
.program-contact-note{font-size:15px;color:var(--muted);margin-top:28px;max-width:760px}
.courses-list{margin-top:43px;display:flex;flex-direction:column;gap:34px}
.course-row{display:grid;grid-template-columns:300px 1fr;gap:38px;background:var(--surface);padding:28px;border:1px solid var(--line);border-radius:8px}
.course-row>img{aspect-ratio:4/5;height:100%;max-height:390px;border-radius:4px;object-position:center}
.course-body{padding:5px 0}
.gallery-tools{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-top:32px}
.gallery-filters{display:flex;flex-wrap:wrap;gap:9px}
.gallery-filter{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:14px;line-height:1.4;cursor:pointer}
.gallery-filter:hover{border-color:var(--blue);color:var(--blue)}
.gallery-filter[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.gallery-filter-count{opacity:.7;font-size:12px}
.gallery-count{flex:none;color:var(--muted);font-size:13px;white-space:nowrap;padding-bottom:9px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}
.gallery-open{display:block;position:relative;overflow:hidden;border-radius:6px}
.gallery-open>img{height:auto;aspect-ratio:4/5;transition:transform .2s ease}
.gallery-open:hover>img{transform:scale(1.025)}
.gallery-zoom{position:absolute;right:13px;bottom:13px;background:var(--surface);border-radius:50%;width:33px;height:33px;display:grid;place-items:center;color:var(--blue)}
.gallery-item figcaption{margin-top:14px;color:var(--muted);font-size:14px;line-height:1.6}
body.gallery-is-open{overflow:hidden}
.gallery-dialog{width:min(1080px,calc(100% - 48px));height:min(720px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:20px;border:0;border-radius:8px;background:#fff;color:var(--ink)}
.gallery-dialog[open]{display:flex;flex-direction:column}
.gallery-dialog::backdrop{background:#18251e}
.gallery-dialog-toolbar{display:flex;flex:0 0 56px;align-items:center;justify-content:space-between;gap:20px;padding-bottom:14px;font-size:14px;color:var(--muted)}
.gallery-dialog button{cursor:pointer;background:transparent;border:1px solid var(--line);border-radius:4px;color:var(--ink);padding:7px 12px}
.gallery-close{display:flex;gap:15px;align-items:center;font-size:14px}
.gallery-close>span{font-size:23px;line-height:1}
#gallery-full-image{width:100%;height:0;min-height:0;max-height:none;flex:1 1 0;object-fit:contain;border-radius:4px;background:#fff}
.gallery-dialog-bottom{display:flex;flex:0 0 64px;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;font-size:15px}
.gallery-dialog-bottom p{text-align:center}
@media(max-width:800px){.gallery-tools{align-items:flex-start;flex-direction:column;gap:7px}.gallery-count{padding:0}.gallery-grid{margin-top:25px}}
@media(max-width:560px){.gallery-filters{gap:7px}.gallery-filter{font-size:13px;padding:8px 12px}}
@media(max-width:1220px){.main-nav{gap:5px;font-size:20px}.course-row{grid-template-columns:260px 1fr;gap:28px;padding:24px}}
@media(max-width:800px){.course-row{grid-template-columns:1fr;padding:23px;gap:24px}.course-row>img{aspect-ratio:3/2;height:auto;max-height:none}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:25px}.event-row{gap:24px}.collection-page>.section-intro{font-size:16px}}
@media(max-width:560px){.event-row{grid-template-columns:62px 1fr;gap:18px;padding:27px 0}.event-date{padding:11px 4px;font-size:10px}.event-date strong{font-size:32px}.event-body h2,.course-body h2{font-size:26px}.event-meta{font-size:13px}.event-category{font-size:11px}.event-body>p:not(.event-category):not(.event-meta),.course-body>p:not(.event-category){font-size:15px}.program-link{font-size:13px;gap:9px}.course-row{padding:19px}.gallery-grid{grid-template-columns:1fr;gap:29px}.gallery-open>img{aspect-ratio:3/2}.gallery-item figcaption{margin-top:10px}.gallery-dialog{width:calc(100% - 24px);height:min(680px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);padding:14px}.gallery-dialog-bottom{font-size:13px;gap:12px}.program-contact-note{font-size:14px}.main-nav{font-size:18px}}

/* Shared monthly events calendar and short FAQ. */
.calendar-panel{margin-top:34px;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:8px}
#naptar{scroll-margin-top:110px}
.calendar-intro{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px}
.calendar-intro h2{font-size:27px}
.calendar-intro p{color:var(--muted);font-size:14px}
.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
.calendar-head h3{font-family:var(--serif);font-size:23px;font-weight:400;margin:0}
.calendar-controls{display:flex;gap:8px}
.calendar-controls button{width:38px;height:38px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;font-size:21px;line-height:1}
.calendar-controls button:hover{border-color:var(--blue);color:var(--blue)}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.calendar-weekday{font-size:13px;color:var(--muted);text-align:center;padding-bottom:5px}
.calendar-empty,.calendar-day{min-height:94px;border:1px solid var(--line);border-radius:4px}
.calendar-empty{background:var(--paper);opacity:.4}
.calendar-day{padding:8px;min-width:0;background:var(--surface)}
.calendar-day-number{display:block;color:var(--muted);font-size:13px;margin-bottom:5px}
.calendar-event{display:block;padding:5px 6px;border-radius:3px;background:#e7edfb;color:var(--blue);font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.calendar-event:hover{background:#d9e3f9}
.calendar-no-events{margin-top:14px;color:var(--muted);font-size:14px}
.events-subheading{font-size:25px;margin-top:44px}
.events-subheading+.events-list{margin-top:16px}
.event-row{scroll-margin-top:110px}
.personal-calendar-link{margin-top:34px;font-size:16px}
.faq-page{max-width:850px;margin-inline:auto}
.faq-list{margin-top:33px;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}
.faq-list summary{cursor:pointer;list-style:none;font-size:17px;font-weight:550;line-height:1.5;padding-right:35px;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:5px;top:0;font-size:24px;color:var(--blue);font-weight:400}
.faq-list details[open] summary::after{content:'−'}
.faq-list p{margin-top:10px;max-width:690px;color:var(--muted);font-size:16px}
.faq-list a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.calendar-intro{display:block}.calendar-intro p{margin-top:6px}.calendar-panel{padding:20px}.calendar-empty,.calendar-day{min-height:81px}.calendar-day{padding:5px}.calendar-event{font-size:11px}}
@media(max-width:560px){.calendar-panel{padding:16px}.calendar-intro h2{font-size:24px}.calendar-head h3{font-size:20px}.calendar-grid{gap:3px}.calendar-empty,.calendar-day{min-height:62px}.calendar-day{padding:4px}.calendar-weekday{font-size:11px}.calendar-event{font-size:0;min-height:29px;display:block;position:relative;padding:0}.calendar-event::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:9px;height:9px;background:var(--blue);border-radius:50%}.faq-list summary{font-size:16px}.faq-list p{font-size:15px}}

/* Ildikó saját arculati képei. */
.brand{gap:0}
.brand-logo{width:74px;height:74px;flex:none;object-fit:contain;border-radius:50%}
.home-brand-banner{margin-top:30px}
.home-brand-banner img{width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;border-radius:8px}
.home-brand-banner+.home-profile{display:block;max-width:720px;margin-inline:auto;padding-top:52px}
@media(max-width:800px){.brand-logo{width:62px;height:62px}.home-brand-banner img{height:260px;aspect-ratio:auto;object-position:center}}
@media(max-width:560px){.header-inner{gap:12px}.brand-logo{width:54px;height:54px}.home-brand-banner{margin-top:18px}.home-brand-banner img{height:210px}.home-brand-banner+.home-profile{padding-top:38px}}

/* Warm cream surfaces let the handmade work carry the colour. */
:root[data-background="cream"] .quiet-note,
:root[data-background="cream"] .personal-side{background:#f1e7d8}
:root[data-background="cream"] .personal-side>div{border-bottom-color:var(--line)}
:root[data-background="cream"] .personal-side>div>span,
:root[data-background="cream"] .personal-side small{color:var(--muted)}
:root[data-background="cream"] .calendar-event{background:#f0e2ce}
:root[data-background="cream"] .calendar-event:hover{background:#e8d5b9}
:root[data-background="cream"] .program-link{border-bottom-color:#72533e66}
@media(max-width:1220px){:root[data-background="cream"] .main-nav a[aria-current]{background:#f0e3d0}}

.contact-address-detail{display:block;color:var(--muted);font-size:15px;line-height:1.6;margin-top:2px}

@media(max-width:560px){.contact-address-street{display:block}}


@media(max-width:560px){.gallery-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:9px}.gallery-filter{width:100%;min-width:0;height:60px;justify-content:center;text-align:center}.gallery-filter:first-child{grid-column:1/-1}}

.course-body .program-soon{margin-top:12px;color:var(--muted);font-size:14px;font-weight:600}

/* Spacious, illustrated event calendar. */
.collection-page:has(#month-calendar){max-width:1180px}
.calendar-panel{padding:30px}
.calendar-intro{display:block;margin-bottom:22px}
.calendar-intro h2{font-size:31px}
.calendar-intro p{margin-top:7px;max-width:760px}
.calendar-head{margin-bottom:12px}
.calendar-head h3{font-size:30px;text-transform:capitalize}
.calendar-controls button{width:46px;height:46px;border-radius:8px;background:var(--paper)}
.calendar-grid{gap:7px}
.calendar-weekday{font-size:14px;font-weight:600;padding:6px 0 10px;color:var(--ink)}
.calendar-weekday-short{display:none}
.calendar-empty,.calendar-day{min-height:174px;border-radius:8px}
.calendar-empty{opacity:.45}
.calendar-day{padding:10px;background:#fffdf8}
.calendar-day.has-event{display:flex;position:relative;padding:0;overflow:hidden;border-color:#c8a47f}
.calendar-day-number{font-size:18px;font-weight:650;line-height:1.3;margin-bottom:10px;color:var(--ink)}
.calendar-day.has-event .calendar-day-number{position:absolute;z-index:1;top:6px;left:6px;margin:0;padding:2px 7px;border-radius:5px;background:#fffdf8;color:var(--blue);box-shadow:0 1px 5px #352b2226;pointer-events:none}
.calendar-day.has-event .calendar-event,:root[data-background="cream"] .calendar-day.has-event .calendar-event{display:grid;place-items:center;position:relative;flex:1;min-width:0;width:auto;aspect-ratio:auto;height:auto;min-height:0;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:#f0e2ce}
.calendar-event::after,:root[data-background="cream"] .calendar-event::after{content:none}
.calendar-day.has-event .calendar-event:hover img{filter:brightness(.92)}
.calendar-event img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.calendar-event img[src*="piros-kaves-csesze"]{object-position:70% center}
.calendar-event-fallback{font-size:22px;color:var(--blue);line-height:1}
.event-photo-gallery{max-width:760px;margin:22px 0 18px}
.event-photo-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);grid-template-rows:repeat(2,122px);gap:8px}
.event-photo-grid img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.event-photo-grid img:first-child{grid-row:span 2}
.event-photo-grid img[src*="piros-csesze-reszlet"]{object-position:center 15%}
.event-photo-gallery figcaption{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.5}
.event-location{max-width:730px;margin-top:15px;color:var(--muted);font-size:14px;font-style:normal;line-height:1.7}
@media(max-width:850px){
 .calendar-panel{padding:22px}.calendar-grid{gap:5px}.calendar-empty,.calendar-day{min-height:137px}.calendar-day{padding:6px}.calendar-day-number{font-size:16px;margin-bottom:6px}.calendar-day.has-event{padding:0}
}
@media(max-width:620px){
 .calendar-panel{width:calc(100% + 24px);margin-left:-12px;padding:12px}.calendar-intro{margin-bottom:20px}.calendar-intro h2{font-size:27px}.calendar-head h3{font-size:25px}.calendar-controls button{width:42px;height:42px}.calendar-grid{gap:3px}.calendar-weekday{font-size:13px;padding:2px 0 6px}.calendar-weekday-full{display:none}.calendar-weekday-short{display:inline}.calendar-empty,.calendar-day{min-height:101px}.calendar-day{padding:2px}.calendar-day.has-event{padding:0}.calendar-day-number{font-size:16px;margin-bottom:0}.calendar-day.has-event .calendar-day-number{top:3px;left:3px;padding:0 4px;font-size:14px}.calendar-event-fallback{font-size:18px}
 .event-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:160px 92px;gap:6px}
 .event-photo-grid img:first-child{grid-column:1/-1;grid-row:auto}
}
.home-copy h1.eyebrow{font-family:var(--sans);font-size:13px;font-weight:400;line-height:1.75;letter-spacing:1.4px;color:var(--muted);margin:0}
.home-copy>.lead{margin-top:18px}
@media(max-width:560px){.home-copy h1.eyebrow{font-size:12px}}
@media(max-width:560px){
 .event-row{grid-template-columns:62px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
 .event-date{grid-column:1;grid-row:1 / 3}
 .event-body{display:contents}
 .event-body>.event-category{display:none}
 .event-body>h2{grid-column:2;grid-row:1;align-self:start;margin:0}
 .event-body>.event-meta{grid-column:2;grid-row:2;align-self:end;margin:0 0 4px}
 .event-body>p:not(.event-category):not(.event-meta),.event-body>.event-photo-gallery,.event-body>.program-details,.event-body>.event-location,.event-body>.program-link{grid-column:1 / -1}
}
@media(max-width:560px){
 .calendar-panel{width:calc(100% + 32px);margin-left:-16px;padding:8px}
 .calendar-grid{gap:2px}
 .calendar-empty,.calendar-day{min-height:110px}
}
.events-list{display:grid;gap:18px;border-top:0}
.event-row{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:10px}
@media(max-width:560px){.events-list{gap:16px}.event-row{padding:20px 15px}}
@media(max-width:560px){
 .event-row{column-gap:18px;row-gap:12px}
 .event-photo-gallery{margin:4px 0 0}
 .event-row .program-details{margin-top:4px}
 .event-row .event-location,.event-row .program-link{margin-top:0}
}
