/*
Theme Name: Варнава — детский сад
Description: Акварельная главная страница с анонсами, новостями и мягкой анимацией.
Version: 1.1.14
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: varnava-garden
License: GPL v2 or later
*/
.page-id-47 .entry-content article h2{font-family:Arial,sans-serif;font-size:clamp(19px,1.35vw,23px);font-weight:600;line-height:1.45;letter-spacing:0;color:#465438;background:#eef0e5;border-radius:12px;padding:14px 20px;margin:36px 0 16px}.page-id-47 .entry-content article .vgd-section-nav+h2{margin-top:28px}.page-id-47 .entry-content article h2:has(+.vgd-files){display:none}.hero .hero-copy .dedication{font-size:clamp(23px,2.2vw,33px);color:#356039}@media(max-width:720px){.hero .hero-copy .dedication{font-size:25px}}.single-post .entry-content article>h1{text-align:center;margin-inline:auto;margin-bottom:32px;text-wrap:balance}.entry-content .wp-block-gallery figure.wp-block-image img,.entry-content .gallery .gallery-icon img{border-radius:12px}.entry-content .wp-block-gallery figure.wp-block-image>a{border-radius:12px;overflow:hidden}/* Responsive layout repair */body .nav-inner>*{min-width:0}body .entry-content{overflow-wrap:anywhere}body .entry-content iframe,body .entry-content video{max-width:100%}body .entry-content table{width:100%;table-layout:fixed}body .entry-content td,body .entry-content th{overflow-wrap:anywhere}body .wp-block-table{max-width:100%;overflow-x:auto}body .news-grid>*,body .about-grid>*,body .parents>*,body .announcements-split>*{min-width:0}@media(max-width:1200px){body .nav-shell .mobile-menu{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:14px 6%;border:0;background:transparent;color:white;font-size:16px}body .nav-shell .nav-inner{display:none;width:100%;min-height:0;padding:0 6% 20px;max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;align-items:stretch;gap:0}body .nav-shell.open .nav-inner{display:flex;flex-direction:column}body .nav-inner>a,body .nav-inner>details>summary{display:block;white-space:normal;padding:13px 0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}body .nav-inner details div{position:static;width:100%;max-height:none;box-shadow:none;border-radius:12px;padding:8px 16px}body .nav-inner details a{white-space:normal;overflow-wrap:anywhere}body .nav-inner .wp-nav{display:block;width:100%}body .nav-inner .wp-nav a{white-space:normal;padding:12px 0}body .nav-inner .wp-nav .sub-menu{position:static;width:100%;max-height:none;display:block;border-radius:12px}body.admin-bar .nav-shell{top:32px}}@media(max-width:1000px){body .hero{height:auto;min-height:0;aspect-ratio:auto;background-size:100% auto;background-position:center bottom}body .hero .hero-copy{width:100%;padding:36px 6% calc(50vw + 28px);background:none}body .hero h1{font-size:clamp(28px,8.2vw,58px);line-height:1.12;letter-spacing:-.7px;max-width:100%}body .hero .hero-copy .dedication{font-size:clamp(23px,3.4vw,30px);max-width:620px}body .hero .motto{white-space:normal;max-width:100%;font-size:clamp(18px,2.5vw,23px)}body .hero .dove{top:auto;bottom:29vw;left:52%;width:clamp(34px,6vw,60px)}body .hero .dove.second{top:auto;bottom:25vw;left:87%;width:clamp(26px,4vw,40px)}body .contact-grid{flex-wrap:wrap}body .footer-grid{flex-wrap:wrap}}@media(max-width:782px){body.admin-bar .nav-shell{top:46px}}@media(max-width:600px){body.admin-bar .nav-shell{top:0}body .hero .hero-location{font-size:10px;letter-spacing:1.2px}body .hero .actions{gap:10px}body .hero .actions .button{padding:11px 16px;font-size:13px;gap:12px}body .entry-content h1{font-size:clamp(27px,7vw,38px);line-height:1.2}body .entry-content{margin:30px auto;padding-inline:18px}body .entry-content td,body .entry-content th{padding:10px 8px;font-size:14px}body .section-head{flex-wrap:wrap;align-items:flex-start}body .values{flex-wrap:wrap}body .photo-viewer{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:12px}body .photo-viewer-bar{gap:12px}body .photo-viewer-label{min-width:0;overflow-wrap:anywhere}body .photo-viewer>img{max-height:calc(100dvh - 165px)}}@media(max-width:1000px){body.home .hero{background-size:170% auto;background-position:right bottom}body.home .hero .hero-copy{padding-bottom:calc(85vw + 28px)}body.home .hero .dove{left:18%;bottom:50vw}body.home .hero .dove.second{left:84%;bottom:44vw}}:root{--paper:#fffcf5;--ink:#33402b;--muted:#6e735f;--green:#465438;--line:#dedecf;--red:#973f26;--orange:#bc5833;--gold:#b49959}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h2{font-size:clamp(34px,3.4vw,48px);letter-spacing:-1px;margin-bottom:18px}h3{font-size:27px}p{color:var(--muted)}.wrap{width:min(1180px,88%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:2.4px;font-size:12px;font-weight:600;color:#667051;margin-bottom:15px}.topline{padding:10px 5%;display:flex;justify-content:space-between;align-items:center;font-size:12px;background:#f2f0e5;gap:20px}.topline a{text-decoration:underline;text-underline-offset:4px}.hero{height:min(680px,49vw);min-height:520px;position:relative;background:#fcf7e8 url('assets/hero.png') center top/cover no-repeat;overflow:hidden}.hero-copy{position:relative;z-index:2;width:51%;padding:95px 0 60px 6.5%}.hero h1{font-size:clamp(40px,4.1vw,65px);color:#86371e;letter-spacing:-1.7px;margin:0 0 22px}.hero .eyebrow{font-size:13px;letter-spacing:3px}.town{display:flex;align-items:center;gap:16px;font-size:16px;letter-spacing:4px;margin-bottom:18px}.town:before{content:'';height:1px;width:34px;background:#869073}.motto{font:italic 26px/1.3 Georgia,serif;color:#38492c;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{border:1px solid var(--green);border-radius:30px;padding:12px 24px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-size:14px;background:transparent;color:var(--ink);transition:background .2s,transform .2s}.button:hover{background:#edf0e4;transform:translateY(-2px)}.button.primary{background:var(--orange);border-color:var(--orange);color:white}.button.primary:hover{background:var(--red)}.actor{width:105px;aspect-ratio:1;position:absolute;pointer-events:none;z-index:1}.actor:after{content:'';display:block;width:100%;height:100%;background:url('assets/characters.webp') no-repeat;background-size:200% 100%;animation:float 6s ease-in-out infinite}.dove:after{background-position:right center}.angel:after{background-position:left center}.hero .dove{top:12%;left:51%;width:90px}.hero .dove.second{top:45%;left:88%;width:66px}.hero .second:after{animation-delay:-3s}.motion-button{position:absolute;right:22px;bottom:15px;z-index:4;background:#fffdf0df;border:1px solid #d5d3ba;border-radius:20px;padding:5px 12px;color:var(--ink);font-size:12px}.nav-shell{background:#465438;color:#fff;position:sticky;top:0;z-index:15;box-shadow:0 5px 20px #3442270d}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:3px;min-height:76px}.nav-inner>a,.nav-inner>details>summary{padding:20px 8px;font-size:13px;line-height:1.45;list-style:none;cursor:pointer}.nav-inner>a:hover,.nav-inner>details>summary:hover{color:#eed8a6}.nav-inner details{position:relative}.nav-inner details[open]>summary{color:#eed8a6}.nav-inner details div{position:absolute;top:100%;left:0;width:310px;max-height:65vh;overflow:auto;background:var(--paper);color:var(--ink);padding:15px 22px;box-shadow:0 15px 35px #24351c25;border-radius:0 0 12px 12px}.nav-inner details a{display:block;border-bottom:1px solid var(--line);padding:11px 0;font-size:14px}.mobile-menu{display:none}.section{padding:75px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-head h2{margin:0}.textlink{font-size:14px;border-bottom:1px solid #a7ae99;padding-bottom:4px;white-space:nowrap}.announcements{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.event{position:relative;overflow:hidden;border:1px solid #dfdecc;border-radius:18px;background:#f2f0e1;padding:32px;min-height:235px}.event h3{max-width:340px;margin-bottom:13px;font-size:32px}.event p{max-width:320px;font-size:15px;margin-bottom:18px}.event .eyebrow{color:#7c673e}.event .angel{right:20px;bottom:15px;width:140px}.event.main{padding-right:160px;background:#eeefdf}.event .textlink{position:relative;z-index:3}.event:nth-child(2){background:#f7eee0}.small-label{font-size:12px;color:#797b6c}.section-note{font-size:12px;color:#777e6c;margin-top:16px}.news-section{background:#f3f3e9;border-top:1px solid #e9e9dc;border-bottom:1px solid #e9e9dc}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.news-card{background:#fffdf7;border-radius:16px;overflow:hidden;border:1px solid #e3e3d6;transition:transform .25s}.news-card:hover{transform:translateY(-5px)}.news-card>a{display:block}.news-photo{height:225px;position:relative;overflow:hidden}.news-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.news-card:hover img{transform:scale(1.035)}.news-photo .badge{position:absolute;bottom:12px;left:15px;background:#fffdf4e8;padding:4px 11px;font-size:11px;border-radius:20px}.news-body{padding:25px}.news-body h3{font-size:26px;margin:12px 0}.news-body p{font-size:14px;margin-bottom:16px}.news-body .read{font-size:13px;color:var(--red)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-photo{position:relative}.about-photo img{width:100%;height:400px;object-fit:cover;border-radius:100px 14px 100px 14px}.caption{position:absolute;bottom:20px;left:20px;right:20px;background:#fffdf4ed;padding:12px 20px;font:italic 18px Georgia;border-radius:8px}.about p{font-size:17px}.values{display:flex;gap:20px;margin-top:28px;padding-top:25px;border-top:1px solid var(--line)}.values span{font:19px Georgia;color:#5d684b}.kindness{position:relative;background:#e9eddf;border-radius:22px;padding:52px 240px 52px 52px;overflow:hidden}.kindness p{max-width:610px}.kindness .angel{width:205px;right:35px;top:23px}.kindness h2{font-size:42px}.parents{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{padding:22px 30px 22px 0;font-size:17px;cursor:pointer;position:relative;list-style:none}.faq summary:after{content:'+';position:absolute;right:2px;font-size:22px;color:#67784e;top:16px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;padding:0 20px 15px 0}.contact{border-top:1px solid var(--line);padding:42px 0;background:#eeeee2}.contact-grid{display:flex;justify-content:space-between;align-items:center;gap:35px}.contact h2{font-size:34px;margin-bottom:10px}.contact p{margin:0}.footer{background:#37452e;color:#efeee1;padding:40px 0 24px}.footer-grid{display:flex;justify-content:space-between;gap:40px}.footer strong{font:24px/1.3 Georgia;max-width:450px;display:block}.footer p{color:#cbd0bf;font-size:13px;margin-top:13px}.footer a{font-size:13px;display:block;margin-bottom:9px}.footer-bottom{margin-top:32px;padding-top:20px;border-top:1px solid #687357;color:#c3cbb7;font-size:12px;display:flex;justify-content:space-between}.skip{position:fixed;top:-100px}.skip:focus{top:0;background:white;z-index:100;padding:10px}.demo-notice{padding:8px 5%;font-size:12px;background:#ede5d5;color:#5c614f;text-align:center}.no-motion *,.no-motion *:after{animation:none!important;transition:none!important}.no-motion{scroll-behavior:auto}.entry-content{max-width:780px;margin:60px auto;padding:0 24px}.entry-content img{max-width:100%;height:auto}.entry-content a{text-decoration:underline}.entry-content h1{font-size:44px}body.readable{font-size:20px}.readable p,.readable a,.readable summary{font-size:1em}.readable .hero{height:auto;min-height:700px}.readable .hero-copy{width:60%;background:#fffdf3e8}.readable .nav-inner{flex-wrap:wrap}.readable .topline{font-size:16px}@keyframes float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-14px) rotate(3deg)}}@media(min-width:1600px){.hero-copy{padding-left:max(6.5%,calc((100vw - 1390px)/2))}}@media(max-width:1000px){.hero{height:580px;background-position:58% top}.hero-copy{width:57%;padding-top:90px}.hero h1{font-size:46px}.nav-inner>a,.nav-inner>details>summary{font-size:12px;padding:20px 5px}.event h3{font-size:28px}.about-grid,.parents{gap:40px}.news-photo{height:190px}.event.main{padding-right:100px}.event .angel{width:95px;right:3px}}@media(max-width:720px){.topline{font-size:11px}.topline>span{max-width:180px}.hero{height:auto;min-height:760px;background-size:auto 440px;background-position:72% bottom;background-repeat:no-repeat;background-color:#fcf7e8}.hero-copy{padding:44px 7% 320px;width:100%;background:linear-gradient(#fffaf0 0%,#fffaf0 47%,transparent 65%)}.hero h1{font-size:43px;max-width:500px}.hero .eyebrow{font-size:11px;letter-spacing:2px}.motto{font-size:23px}.hero .dove{top:63%;left:14%;width:72px}.hero .dove.second{top:71%;left:77%;width:50px}.button{padding:12px 19px}.mobile-menu{display:flex;justify-content:space-between;width:100%;background:transparent;color:white;border:0;padding:17px 6%;font-size:16px}.nav-inner{display:none;width:100%;padding:5px 6% 20px;align-items:stretch}.nav-shell.open .nav-inner{display:flex;flex-direction:column}.nav-inner>a,.nav-inner>details>summary{display:block;padding:11px 0;font-size:15px}.nav-inner details div{position:static;width:100%;max-height:35vh}.section{padding:48px 0}.section-head{align-items:start}.section-head h2{font-size:35px}.section-head .textlink{font-size:12px;margin-top:9px}.announcements,.news-grid,.about-grid,.parents{grid-template-columns:1fr}.event{padding:25px;min-height:220px}.event.main{padding-right:130px}.event .angel{width:120px;right:5px}.event h3{font-size:29px}.news-photo{height:240px}.news-body{padding:22px}.about-grid{gap:30px}.about-photo img{height:310px}.about-copy{grid-row:1}.kindness{padding:30px 26px 190px}.kindness h2{font-size:35px}.kindness .angel{width:165px;top:auto;bottom:5px;right:25px}.parents{gap:15px}.contact-grid,.footer-grid{display:block}.contact .button{margin-top:20px}.footer-grid>div+div{margin-top:26px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.values{gap:17px}.values span{font-size:17px}.readable .hero-copy{width:100%}.readable .hero{min-height:850px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:after{animation:none!important;transition:none!important}}

.wp-nav{list-style:none;display:flex;justify-content:space-between;padding:0;margin:0;gap:20px;align-items:center;width:100%}.wp-nav>li{position:relative}.wp-nav a{font-size:14px;display:block;padding:20px 0}.wp-nav .sub-menu{position:absolute;top:100%;left:0;background:#fffdf5;color:#33402b;list-style:none;padding:15px;width:300px;display:none;max-height:60vh;overflow:auto}.wp-nav li:hover>.sub-menu,.wp-nav li:focus-within>.sub-menu{display:block}.wp-nav .sub-menu a{padding:8px}.event-image{max-width:100%;height:150px;object-fit:cover;border-radius:12px;margin-bottom:16px}@media(max-width:720px){.wp-nav{display:block}.wp-nav .sub-menu{position:static;display:block;width:100%}.wp-nav a{padding:8px 0}}
/* Preserve the entire illustration instead of cropping either edge. */
@media(min-width:721px){.hero{width:100%;max-width:1774px;margin-inline:auto;height:auto;min-height:520px;aspect-ratio:2 / 1;background-size:contain;background-position:center bottom}.hero-copy{padding-left:6.5%}.readable .hero{min-height:700px}}
@media(max-width:720px){.hero{height:auto;min-height:0;background-size:100% auto;background-position:center bottom}.hero-copy{padding-bottom:calc(50vw + 40px);background:none}.hero .dove{top:auto;bottom:19vw;left:56%;width:45px}.hero .dove.second{top:auto;bottom:9vw;left:87%;width:30px}.motion-button{bottom:7px;font-size:11px;padding:3px 9px}}

.hero .eyebrow{font-size:clamp(16px,1.4vw,22px);font-weight:700;letter-spacing:2.4px;text-transform:uppercase}@media(max-width:720px){.hero .eyebrow{font-size:16px;letter-spacing:1.6px}}

/* Lead with the institution; the dedication is secondary. */
.hero h1{font-size:clamp(36px,3.5vw,60px);font-weight:600;line-height:1.13;letter-spacing:-.8px;margin-bottom:22px}.hero .dedication{font:400 clamp(23px,2vw,30px)/1.35 Georgia,'Times New Roman',serif;color:#4b553f;margin:0 0 28px;max-width:510px}@media(max-width:720px){.hero h1{font-size:clamp(27px,8.1vw,48px);line-height:1.2;letter-spacing:-.4px;margin-bottom:18px}.hero .dedication{font-size:22px;margin-bottom:25px}}

/* 1.1 — balanced title and rotating announcement cards */
.hero-copy{width:54%;padding-top:clamp(55px,6vw,100px)}
.hero-location{display:flex;gap:14px;align-items:center;font:600 12px/1.5 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#667051;margin-bottom:24px}
.hero-location span{color:#b49959}
.hero h1{font-weight:400;font-size:clamp(46px,5.1vw,78px);line-height:1.05;letter-spacing:-2px;margin-bottom:24px}
.hero h1 span{display:block;font:inherit!important;letter-spacing:inherit!important;text-transform:none;margin-bottom:0;color:inherit}@media(min-width:721px){.hero .dove.second{top:25%;left:89%;width:76px}}@media(max-width:720px){.hero .dove.second{top:auto;bottom:24vw;left:86%;width:38px}}
.hero .dedication{font-size:clamp(20px,2vw,29px);line-height:1.4;max-width:460px;margin-bottom:24px;text-wrap:balance}
.hero .motto{font-size:19px;line-height:1.5;margin-bottom:28px;color:#6e735f}
.announcements{display:block}.event-carousel{width:100%}.event-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.event-track .event{min-width:0;min-height:285px;padding:36px 40px;background:linear-gradient(125deg,#f1efdf,#faf8ef);border:1px solid #dedecf;border-radius:22px;display:flex;flex-direction:column;align-items:flex-start}.event-track .event:nth-child(even){background:linear-gradient(125deg,#f6e9dc,#fcf8f0)}.event-track .event h3{font-size:clamp(27px,3vw,38px);max-width:430px}.event-track .event .textlink{margin-top:auto}.event-track .event[hidden]{display:none}.carousel-controls{display:flex;gap:16px;align-items:center;justify-content:flex-end;margin-top:20px}.carousel-controls[hidden]{display:none}.carousel-controls button{border:1px solid #d6d7c7;background:transparent;border-radius:30px;padding:9px 17px;color:var(--green)}.carousel-controls button:hover{background:#ecefdf}.carousel-controls span{font-size:13px;color:var(--muted)}
.news-photo img{width:100%;height:100%;object-fit:cover}.news-body h3{line-height:1.25}
@media(max-width:720px){.hero-copy{width:100%;padding-top:42px}.hero-location{font-size:10px;letter-spacing:1.3px;margin-bottom:22px}.hero h1{font-size:clamp(42px,11vw,68px);letter-spacing:-1px}.hero h1 span{font-size:12px;letter-spacing:2.7px}.hero .dedication{font-size:23px;max-width:350px}.hero .motto{font-size:17px}.event-track{grid-template-columns:1fr}.event-track .event{padding:28px;min-height:310px}.carousel-controls{justify-content:center;gap:12px}}

/* Fixed introduction beside a single rotating announcement. */
.announcements-split{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:stretch}
.welcome-card{position:relative;background:#eeefdf;border:1px solid #dedecf;border-radius:22px;padding:36px 40px;min-height:360px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}
.welcome-card h3{font-size:clamp(29px,3vw,38px);line-height:1.15;max-width:440px;margin-bottom:22px}
.welcome-description{max-width:360px;padding-right:45px;margin-bottom:30px}
.welcome-card .textlink{margin-top:auto;position:relative;z-index:1;max-width:calc(100% - 100px)}
.welcome-card .angel{width:130px;right:12px;bottom:12px}.welcome-card .angel:after{animation:none}
.announcements-split .event-carousel{min-width:0;display:flex;flex-direction:column;background:#f7eedf;border:1px solid #e3ddcd;border-radius:22px;padding:36px 32px 22px}
.announcements-split .event-track{grid-template-columns:1fr;gap:0;flex:1}
.announcements-split .event-track .event{padding:0;border:0;background:transparent;border-radius:0;min-height:270px}
.announcements-split .carousel-ready .event-track .event{grid-area:1/1}
.announcements-split .carousel-ready .event-track .event[hidden]{display:flex;visibility:hidden;pointer-events:none}
.announcements-split .carousel-controls{justify-content:flex-start;margin-top:24px;gap:12px}
@media(max-width:720px){.announcements-split{grid-template-columns:1fr;gap:18px}.welcome-card{padding:28px;min-height:340px}.welcome-description{padding-right:55px}.welcome-card .angel{width:100px;right:5px}.welcome-card .textlink{max-width:calc(100% - 70px)}.announcements-split .event-carousel{padding:28px}.announcements-split .event-track .event{min-height:260px}}
.carousel-controls [data-counter]{white-space:nowrap;flex-shrink:0}.carousel-controls button{white-space:nowrap}@media(max-width:420px){.announcements-split .carousel-controls{gap:8px}.announcements-split .carousel-controls button{padding:8px 12px;font-size:13px}}

.event-poster{display:block;width:100%;margin-bottom:22px}.event-poster img{display:block;width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:10px}.entry-content .attachment-large{display:block;max-width:100%;height:auto}

.entry-back{margin-bottom:28px;font:14px/1.5 Arial,sans-serif}.entry-content .entry-back a{color:var(--muted);text-decoration:none}.entry-back a:hover{text-decoration:underline}.topline .site-home{text-decoration:none}@media(max-width:720px){.topline .site-home{max-width:180px}}

/* Edge-to-edge image and compact caption. */
.announcements-split{align-items:start}
.announcements-split .welcome-card{min-height:390px}
.announcements-split .event-carousel{padding:0;overflow:hidden}
.announcements-split .event-track{flex:initial}
.announcements-split .event-track .event{min-height:0;align-items:stretch}
.announcements-split .event-poster{width:100%;aspect-ratio:16/9;margin:0;overflow:hidden;display:block}
.announcements-split .event-poster img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;border-radius:0}
.announcements-split .event-caption{padding:20px 26px 12px}
.announcements-split .event-caption h3{font-size:clamp(23px,2.1vw,29px);line-height:1.2;margin:0 0 14px;max-width:none}
.announcements-split .event-caption .textlink{font-size:14px;margin:0}
.announcements-split .carousel-controls{margin:0;padding:8px 26px 18px;gap:10px}
.announcements-split .carousel-controls button{font-size:12px;padding:6px 12px}
.event-poster-placeholder{background:linear-gradient(120deg,#eeefdf,#f5dfc7);position:relative}
.event-poster-placeholder span{position:absolute;left:28px;bottom:28px;font:italic 26px Georgia,serif;color:#6e735f}
@media(max-width:720px){.announcements-split .welcome-card{min-height:340px}.announcements-split .event-caption{padding:20px 24px 12px}.announcements-split .carousel-controls{padding:8px 24px 20px}.announcements-split .event-caption h3{font-size:25px}}

/* Matching cards with a gently floating angel. */
.announcements-split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.welcome-card .angel{width:160px;right:14px;bottom:16px}
.welcome-card .angel:after{animation:welcome-float 5s ease-in-out infinite;transform-origin:50% 75%}
.welcome-card .textlink{max-width:calc(100% - 125px)}
@keyframes welcome-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
@media(max-width:720px){.announcements-split{grid-template-columns:1fr}.welcome-card .angel{width:120px;right:7px;bottom:12px}.welcome-card .textlink{max-width:calc(100% - 90px)}}
@media(prefers-reduced-motion:reduce){.welcome-card .angel:after{animation:none}}

.column-heading{align-self:end;padding-bottom:4px}.column-heading h2{font-size:clamp(29px,3vw,40px);margin-bottom:12px}.column-heading .eyebrow{margin-bottom:14px}.column-heading .textlink{font-size:14px}.welcome-heading{grid-column:1;grid-row:1}.events-heading{grid-column:2;grid-row:1}.announcements-split .welcome-card{grid-column:1;grid-row:2}.announcements-split .event-carousel{grid-column:2;grid-row:2}
@media(max-width:720px){.welcome-heading{grid-column:1;grid-row:1}.announcements-split .welcome-card{grid-column:1;grid-row:2}.events-heading{grid-column:1;grid-row:3;margin-top:18px}.announcements-split .event-carousel{grid-column:1;grid-row:4}.column-heading h2{font-size:32px}}
.column-heading{align-self:stretch}

/* Photo story: readable text, rounded tiles and accessible full-size viewer. */
.entry-content{max-width:1100px}.entry-content article>p{max-width:none}.entry-content h1{font-size:clamp(30px,4vw,48px);line-height:1.15;text-wrap:balance}.entry-cover{margin:28px 0 36px}.entry-cover img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;border-radius:12px}
.entry-content .wp-block-gallery.has-nested-images,.entry-content .gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0 36px;padding:0}
.entry-content .wp-block-gallery.has-nested-images figure.wp-block-image,.entry-content .gallery .gallery-item{width:auto!important;min-width:0;margin:0!important;float:none}
.entry-content .wp-block-gallery figure>a,.entry-content .gallery-icon>a{display:block;overflow:hidden;border-radius:12px;aspect-ratio:4/3}
.entry-content .wp-block-gallery figure>a>img,.entry-content .gallery-icon>a>img{width:100%;height:100%;object-fit:cover;display:block;border:0!important;transition:transform .25s ease}
.entry-content .wp-block-gallery figure>a:hover>img{transform:scale(1.025)}
.photo-viewer{padding:18px;border:0;border-radius:16px;background:#fffcf5;color:#33402b;width:min(1120px,94vw);max-width:94vw;max-height:94vh}.photo-viewer::backdrop{background:#162017df}.photo-viewer img{display:block;width:100%;height:auto;max-height:72vh;object-fit:contain}.photo-viewer-bar{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:12px}.photo-viewer button{border:1px solid #dedecf;border-radius:22px;background:transparent;padding:8px 16px;color:inherit}.photo-viewer-nav{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:12px}.photo-viewer-label{margin:0;font-size:14px}
@media(max-width:720px){.entry-content .wp-block-gallery.has-nested-images,.entry-content .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entry-content{padding:0 20px;margin:36px auto}.photo-viewer{padding:12px}.photo-viewer-label{font-size:12px}}
@media(max-width:380px){.entry-content .wp-block-gallery.has-nested-images,.entry-content .gallery{grid-template-columns:1fr}}

/* Round the actual photo rather than a wide contain box. */
.entry-content .entry-cover img{display:block;width:auto;max-width:100%;height:auto;max-height:560px;object-fit:initial;border-radius:12px;margin-inline:auto}

.news-card[hidden]{display:none}.news-card>a{display:flex;flex-direction:column;height:100%}.news-body{display:flex;flex-direction:column;flex:1}.news-body .read{margin-top:auto;padding-top:14px}.news-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:28px}.news-controls[hidden]{display:none}.news-controls button{padding:9px 18px;border-radius:30px;border:1px solid #d6d7c7;background:transparent;color:var(--green)}.news-controls button:hover{background:#e5e8da}.news-controls span{font-size:14px;color:var(--muted)}.news-pagination{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:35px}.news-pagination a,.news-pagination span{padding:8px 14px;border:1px solid #dedecf;border-radius:12px}.news-pagination .current{background:var(--green);color:white}
@media(min-width:721px) and (max-width:1000px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.news-section .section-head{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.news-section .section-head .button{margin-bottom:12px}}

/* Keep every news page in the same grid row so the tallest card sets a stable height. */
.news-ready .news-card[hidden]{display:block;visibility:hidden;pointer-events:none}

/* Compact carousel cards: two title lines and three summary lines. */
[data-news-carousel] .news-body{height:282px;flex:none;min-width:0}
[data-news-carousel] .news-body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:2.5em;flex-shrink:0}
[data-news-carousel] .news-body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;max-height:4.95em;margin-bottom:0;flex-shrink:0}
[data-news-carousel] .news-body .read{flex-shrink:0}

/* Announcement link shares the bottom row with the carousel arrows. */
.announcements-split .event-carousel{position:relative}
.announcements-split .event-caption{padding-bottom:76px}
.announcements-split .event-track .event{position:static}
.announcements-split .event-caption .textlink{position:absolute;right:26px;bottom:24px;margin:0}
.announcements-split .carousel-controls{position:absolute;left:26px;bottom:18px;padding:0;max-width:52%}
.information-links{display:grid;gap:12px;margin:28px 0}
.information-links a{display:block;padding:16px 20px;border:1px solid var(--line);border-radius:12px;text-decoration:none!important}
.information-links a:hover{background:#eeefdf}
@media(max-width:420px){.announcements-split .carousel-controls{left:16px;gap:6px}.announcements-split .event-caption .textlink{right:16px;font-size:13px}}
