:root{--paper:#f4e5da;--paper-light:#fbf5ed;--rust:#a8502d;--rust-dark:#773b2c;--blue:#6997c5;--blue-pale:#d5e1e9;--ink:#39251f;--muted:#765d52;--line:#ddc7b7;--white:#fffaf4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper-light);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.site-header{height:82px;padding:0 clamp(22px,6vw,86px);display:flex;align-items:center;justify-content:space-between;background:var(--paper-light);position:relative;z-index:5}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--rust-dark);font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:18px;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.brand-emblem{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;overflow:hidden;border:2px solid #38632f;border-radius:50%;background:#38632f}.brand-logo{width:100%;height:100%;object-fit:fill;clip-path:circle(36% at 52% 48%)}.site-nav{display:flex;align-items:center;gap:32px}.site-nav a{font-size:13px;text-decoration:none;color:var(--muted);transition:color .2s}.site-nav a:hover,.site-nav a.active{color:var(--rust);font-weight:700}.menu-toggle{display:none}.hero{height:min(710px,calc(100svh - 82px));min-height:570px;position:relative;display:flex;align-items:center;overflow:hidden;background:#574236;color:#fff}.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-video{object-fit:cover;filter:blur(5px) brightness(.54);transform:scale(1.04);transition:filter .6s,transform .8s}.hero.is-playing .hero-video{z-index:2;filter:none;transform:scale(1)}.hero-shade{background:linear-gradient(90deg,rgba(44,28,22,.72),rgba(52,32,23,.26) 68%,rgba(52,32,23,.18))}.hero-copy{position:relative;z-index:1;max-width:780px;padding:55px clamp(24px,10vw,145px)}.eyebrow,.section-kicker{text-transform:uppercase;color:var(--rust);font-size:11px;font-weight:700;letter-spacing:.18em}.hero .eyebrow{color:#f1b18b}.hero h1,.about-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,7vw,88px);line-height:1.04;letter-spacing:-.045em;font-weight:500;margin:20px 0}.hero h1 span{color:#f3bd94}.hero-copy>p:not(.eyebrow){font-size:17px;color:#f7e8dc}.button{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:0 19px;background:var(--rust);border:1px solid var(--rust);color:#fffaf4;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.03em;transition:background .2s,transform .2s}.button:hover{background:var(--rust-dark);transform:translateY(-2px)}.button-light{margin-top:14px;background:var(--paper-light);border-color:var(--paper-light);color:var(--rust-dark)}.button-light:hover{background:#fff}.video-toggle{position:absolute;z-index:4;top:50%;left:50%;transform:translate(-50%,-50%);width:82px;height:82px;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:rgba(249,237,224,.14);color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:background .2s,opacity .2s}.hero:hover .video-toggle,.hero:focus-within .video-toggle,.hero.is-playing .video-toggle{opacity:1;pointer-events:auto}.video-toggle:hover,.video-toggle:focus-visible{background:var(--rust);outline:2px solid rgba(255,255,255,.7);outline-offset:4px}.play-icon{font-size:22px;margin-left:4px}.video-label{position:absolute;top:calc(100% + 13px);white-space:nowrap;font-size:11px;font-weight:600;text-shadow:0 1px 5px #322}.sound-hint{position:absolute;z-index:2;right:28px;bottom:22px;color:#fff;font-size:11px;text-shadow:0 1px 4px #322}.hero.is-playing .sound-hint{opacity:0}.section-wrap{max-width:1160px;margin:0 auto;padding-left:30px;padding-right:30px}.intro{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-top:105px;padding-bottom:112px}.section-kicker{padding-top:8px}.intro h2,.history h2,.callout h2,.about-story h2,.donate h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em;font-size:clamp(32px,4vw,48px);line-height:1.13;margin:0 0 18px}.lead{max-width:680px;color:var(--muted);font-family:Georgia,'Times New Roman',serif;font-size:20px;line-height:1.8;margin:0 0 22px}.lead strong{color:var(--rust-dark)}.text-link{display:inline-flex;gap:14px;color:var(--rust);text-decoration:none;font-size:13px;font-weight:700}.text-link:hover{text-decoration:underline}.history{padding:90px 0 100px;background:var(--paper)}.history-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:34px}.history-heading h2{max-width:520px;margin-top:15px}.history-heading>p{max-width:440px;color:var(--muted);line-height:1.8;font-size:14px;margin:0 0 6px}.history-grid{max-width:1160px;padding:0 30px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:24px}.history-card{position:relative;min-height:390px;margin:0;overflow:hidden;background:#c7ac98}.history-card img{width:100%;height:100%;min-height:390px;position:absolute;inset:0;object-fit:cover;transition:transform .6s}.history-card:first-child img{object-position:center 57%}.history-card:hover img{transform:scale(1.035)}.history-card::after{position:absolute;content:"";inset:30% 0 0;background:linear-gradient(transparent,rgba(37,24,18,.75))}.card-caption{position:absolute;z-index:1;left:26px;bottom:24px;color:white}.card-caption span{font-size:11px;letter-spacing:.07em;text-transform:uppercase}.card-caption h3{font:500 29px Georgia,'Times New Roman',serif;margin:7px 0 0}.callout{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:85px;padding-bottom:90px}.callout h2{margin:14px 0}.callout p{color:var(--muted);font-size:14px;line-height:1.7;margin:0}.callout .button{flex-shrink:0}.site-footer{padding:48px clamp(24px,6vw,86px) 0;background:#ead4c4;display:grid;grid-template-columns:1.3fr 1fr .7fr;gap:30px}.footer-brand p,.footer-contact p{color:var(--muted);font-size:12px;line-height:1.8}.footer-contact h2,.footer-social h2{margin:4px 0 12px;color:var(--rust-dark);font-size:11px;text-transform:uppercase;letter-spacing:.16em}.footer-contact a,.footer-social a{color:var(--rust-dark);text-decoration:none}.footer-social a{font-size:13px;font-weight:700}.footer-social a:hover,.footer-contact a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1;margin-top:18px;padding:17px 0;border-top:1px solid #d5bca9;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.footer-bottom a{text-decoration:none}.about-main{max-width:1120px;margin:auto;padding:76px 30px 100px}.about-hero{padding:0 0 65px;border-bottom:1px solid var(--line)}.about-hero h1{font-size:clamp(45px,6vw,72px);color:var(--rust-dark);margin:18px 0}.about-hero h1 span{color:#6491b9}.about-story{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;padding:65px 0 78px;border-bottom:1px solid var(--line)}.story-mark{width:min(250px,100%);aspect-ratio:1;display:flex;justify-content:center;align-items:center;border-radius:50%;overflow:hidden;background:#38632f;border:5px solid #38632f}.story-mark img{width:100%;height:100%;object-fit:fill;clip-path:circle(36% at 52% 48%)}.about-story h2{margin-top:15px}.about-story p:not(.section-kicker){max-width:640px;color:var(--muted);line-height:1.9;font-size:15px}.donate{padding:56px 0 0}.donate h2{max-width:690px;margin:14px 0}.donate-name{color:var(--muted);font-size:13px;margin:22px 0 14px}.donate-name strong{color:var(--rust-dark)}.bank-details{max-width:720px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.bank-details p{padding:15px;background:var(--paper);margin:0}.bank-details span,.bank-details strong{display:block}.bank-details span{margin-bottom:8px;color:var(--muted);font-size:11px}.bank-details strong{font-size:13px;color:var(--rust-dark);overflow-wrap:anywhere}.bank-details a{text-decoration:none}.donate-note{color:var(--muted);font-size:12px;margin-top:14px}@media(max-width:720px){.site-header{height:72px;padding:0 20px}.brand{font-size:15px}.brand-emblem{width:41px;height:41px;flex-basis:41px}.menu-toggle{display:block;border:1px solid var(--line);background:transparent;color:var(--rust-dark);padding:8px 12px;font-size:12px}.site-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:16px 22px 20px;background:var(--paper-light);box-shadow:0 8px 12px #39251f12;align-items:flex-start;gap:15px;flex-direction:column}.site-nav.open{display:flex}.hero{height:calc(100svh - 72px);min-height:570px}.hero-copy{padding:48px 25px}.hero h1{font-size:clamp(46px,12vw,67px)}.video-toggle{top:auto;left:auto;right:25px;bottom:62px;transform:none;width:62px;height:62px}.video-label{right:0;top:calc(100% + 8px)}.sound-hint{left:25px;right:90px;bottom:25px;font-size:10px}.intro{grid-template-columns:1fr;gap:16px;padding-top:68px;padding-bottom:72px}.intro h2,.history h2,.callout h2,.about-story h2,.donate h2{font-size:35px}.lead{font-size:18px}.history{padding:68px 0}.history-heading{grid-template-columns:1fr;gap:8px;margin-bottom:25px}.history-grid{grid-template-columns:1fr;padding:0 20px;gap:17px}.history-card,.history-card img{min-height:290px}.card-caption{left:20px;bottom:19px}.callout{align-items:flex-start;flex-direction:column;padding-top:65px;padding-bottom:68px}.site-footer{grid-template-columns:1fr 1fr;padding:38px 22px 0;gap:20px}.footer-brand{grid-column:1/-1}.footer-bottom{margin-top:8px}.about-main{padding:56px 22px 74px}.about-hero{padding-bottom:45px}.about-hero h1{font-size:clamp(42px,10vw,60px)}.about-story{grid-template-columns:1fr;gap:28px;padding:44px 0 52px}.story-mark{justify-content:flex-start}.story-mark{width:155px}.donate{padding-top:42px}.bank-details{grid-template-columns:1fr}.bank-details p{display:flex;justify-content:space-between;gap:16px}.bank-details span{margin:0}}@media(hover:none){.video-toggle{opacity:1;pointer-events:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Current logo and archive presentation */
.brand-emblem{background:#365c2d!important;border:2px solid #365c2d!important;padding:2px;overflow:hidden}
.brand-logo{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;clip-path:none!important;border:0!important;border-radius:50%!important;background:#fff;padding:1px}
.story-mark{width:min(250px,100%);aspect-ratio:1;display:flex;justify-content:center;align-items:center;border-radius:50%;overflow:hidden;background:#365c2d;padding:6px;border:0}
.story-mark img{width:100%;height:100%;object-fit:contain;border:0;border-radius:50%;clip-path:none;background:#fff;padding:3px}
.latest-work{padding:78px 0 84px;background:var(--paper)}
.latest-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.latest-heading h2{max-width:650px;margin:14px 0 0;font:500 clamp(32px,4vw,48px)/1.13 Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.latest-label{margin:0 0 4px;color:var(--rust-dark);font-size:12px;font-weight:700}
.latest-grid{max-width:1160px;margin:0 auto;padding:0 30px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.latest-grid .archive-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#d9c7b7}
.archive-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.archive-photo:hover img{transform:scale(1.045)}
.latest-actions{text-align:center;margin-top:30px}
.history-hero{padding:78px 24px 62px;text-align:center;background:var(--paper)}
.history-hero h1{margin:15px 0 18px;color:var(--rust-dark);font:500 clamp(44px,6.5vw,74px)/1.06 Georgia,'Times New Roman',serif;letter-spacing:-.045em}
.history-hero h1 span{color:#6491b9}
.history-hero>p{max-width:640px;margin:0 auto;color:var(--muted);font:17px/1.8 Georgia,'Times New Roman',serif}
.archive-count{margin-top:22px;color:var(--rust);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.history-archive{max-width:1160px;margin:0 auto;padding:52px 30px 95px}
.year-list{display:grid;gap:24px}
.year-card{padding:30px;background:#fffaf4;border:1px solid var(--line);box-shadow:0 12px 34px rgba(74,43,29,.045)}
.year-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.year-heading h2{margin:0;color:var(--rust-dark);font:500 38px/1 Georgia,'Times New Roman',serif}
.year-meta{color:var(--muted);font-size:11px}
.year-notes{max-width:850px;margin:15px 0 18px;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.8}
.year-preview{margin-top:18px}
.preview-label{margin-bottom:10px;color:var(--rust);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.preview-grid .archive-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#e3d2c4}
.year-details{margin-top:18px;border-top:1px solid var(--line)}
.year-details summary{width:fit-content;padding:14px 0 0;color:var(--rust-dark);font-size:12px;font-weight:700;cursor:pointer;list-style:none}
.year-details summary::-webkit-details-marker{display:none}
.year-details summary::after{content:'＋';margin-left:11px;color:var(--rust);font-size:15px}
.year-details[open] summary::after{content:'−'}
.event-list{display:grid;gap:30px;padding-top:22px}
.event-block{padding-top:18px;border-top:1px solid #eaded3}
.event-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:13px}
.event-heading h3{margin:0;color:var(--ink);font:500 21px Georgia,'Times New Roman',serif}
.event-heading span{color:var(--muted);font-size:11px;white-space:nowrap}
.event-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.event-gallery .archive-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#e3d2c4}
.reveal{opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.loading-state{color:var(--muted);text-align:center;padding:45px}
@media(max-width:720px){.latest-work{padding:62px 0}.latest-heading{align-items:flex-start;flex-direction:column;gap:10px}.latest-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 20px;gap:10px}.history-hero{padding:58px 22px 45px}.history-hero>p{font-size:15px}.history-archive{padding:30px 20px 66px}.year-card{padding:20px 17px}.year-heading h2{font-size:32px}.year-meta{font-size:10px;text-align:right}.year-notes{font-size:12px}.preview-grid,.event-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event-heading h3{font-size:18px}.event-heading span{font-size:10px}}
@media(max-width:420px){.latest-grid{grid-template-columns:1fr 1fr}.year-heading{align-items:flex-start;flex-direction:column}.year-meta{text-align:left}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.archive-photo img{transition:none}}


/* CSS-drawn controls render consistently across fonts. */
.video-toggle .play-icon{display:block;width:0;height:0;margin-left:6px;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:17px solid currentColor}
.video-toggle .play-icon.is-pause{width:16px;height:19px;margin:0;border:0;position:relative}
.video-toggle .play-icon.is-pause::before,.video-toggle .play-icon.is-pause::after{content:'';position:absolute;top:0;width:5px;height:19px;background:currentColor;border-radius:1px}
.video-toggle .play-icon.is-pause::before{left:0}.video-toggle .play-icon.is-pause::after{right:0}

/* Visual polish: refined depth, soft corners, and restrained motion. */
:root{--shadow-soft:0 18px 48px rgba(75,45,31,.10);--shadow-card:0 10px 28px rgba(75,45,31,.08)}
.site-header{position:sticky;top:0;background:rgba(251,245,237,.94);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(119,59,44,.08);transition:box-shadow .25s ease}
.site-nav a{position:relative;padding:10px 0}
.site-nav a::after{position:absolute;content:"";left:0;right:100%;bottom:3px;height:2px;background:var(--rust);transition:right .22s ease}
.site-nav a:hover::after,.site-nav a.active::after{right:0}
.brand-emblem{box-shadow:0 0 0 4px rgba(54,92,45,.10);transition:transform .25s ease,box-shadow .25s ease}
.brand:hover .brand-emblem{transform:rotate(-5deg) scale(1.04);box-shadow:0 0 0 6px rgba(54,92,45,.13)}
.hero{isolation:isolate;background:linear-gradient(120deg,#533b30,#8b5944 60%,#6a583c)}
.hero::before{position:absolute;content:"";z-index:1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 20%,rgba(240,183,137,.2),transparent 42%),linear-gradient(0deg,rgba(42,27,20,.22),transparent 45%)}
.hero-copy{z-index:2;animation:hero-enter .8s cubic-bezier(.2,.7,.2,1) both}
.hero h1{text-shadow:0 4px 24px rgba(30,18,13,.18)}
.hero h1 span,.about-hero h1 span,.history-hero h1 span{ text-shadow:0 5px 22px rgba(119,59,44,.12)}
.button{border-radius:999px;box-shadow:0 8px 18px rgba(119,59,44,.16)}
.button-light{box-shadow:0 8px 20px rgba(28,20,15,.13)}
.button:focus-visible,.site-nav a:focus-visible,.text-link:focus-visible,.year-details summary:focus-visible{outline:3px solid rgba(105,151,197,.7);outline-offset:4px}
.video-toggle{backdrop-filter:blur(8px);box-shadow:0 12px 32px rgba(15,12,10,.24)}
.video-toggle:hover{transform:translate(-50%,-50%) scale(1.06)}
.video-label{padding:8px 13px;border-radius:999px;background:rgba(34,24,19,.64);backdrop-filter:blur(8px)}
.intro{position:relative}
.intro::before{position:absolute;content:"";left:30px;right:30px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}
.intro>div:last-child{padding:clamp(26px,4vw,44px);border:1px solid rgba(221,199,183,.72);border-left:4px solid var(--rust);border-radius:5px 24px 24px 5px;background:linear-gradient(135deg,rgba(255,250,244,.94),rgba(255,255,255,.62));box-shadow:var(--shadow-card)}
.intro h2,.latest-heading h2,.about-story h2,.donate h2{ text-wrap:balance}
.lead{line-height:1.85}
.text-link{align-items:center;padding:8px 0;transition:gap .2s ease,color .2s ease}
.text-link:hover{gap:20px;color:var(--rust-dark);text-decoration:none}
.latest-work{position:relative;background:linear-gradient(180deg,#f1dfd2 0%,#f7ebe1 100%)}
.latest-work::before,.history-hero::after{position:absolute;content:"";pointer-events:none;width:220px;height:220px;border:1px solid rgba(168,80,45,.13);border-radius:50%;right:5%;top:25px;box-shadow:0 0 0 18px rgba(168,80,45,.025),0 0 0 38px rgba(168,80,45,.02)}
.latest-heading,.latest-grid,.latest-actions{position:relative;z-index:1}
.latest-label{padding:11px 16px;border:1px solid rgba(119,59,44,.12);border-radius:999px;background:rgba(255,250,244,.75);box-shadow:0 5px 16px rgba(75,45,31,.05)}
.latest-grid{gap:17px}
.latest-grid .archive-photo,.preview-grid .archive-photo,.event-gallery .archive-photo{border-radius:12px;box-shadow:var(--shadow-card);background:#e8d5c5}
.latest-grid .archive-photo,.preview-grid .archive-photo,.event-gallery .archive-photo{transition:transform .35s ease,box-shadow .35s ease}
.latest-grid .archive-photo:hover,.preview-grid .archive-photo:hover,.event-gallery .archive-photo:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(75,45,31,.16)}
.history-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% -20%,rgba(255,255,255,.75),transparent 65%),linear-gradient(145deg,#f4e5da,#efdbca)}
.history-hero::after{right:-90px;top:auto;bottom:-130px;width:300px;height:300px}
.archive-count{display:inline-flex;padding:10px 16px;border-radius:999px;background:rgba(255,250,244,.72);letter-spacing:.12em}
.year-card{position:relative;overflow:hidden;border-radius:18px;box-shadow:var(--shadow-card);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.year-card::before{position:absolute;content:"";height:4px;left:0;right:0;top:0;background:linear-gradient(90deg,var(--rust),#d58f67,var(--blue))}
.year-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:#d5b49e}
.year-heading h2{display:inline-flex;align-items:center;justify-content:center;min-width:90px;padding:8px 13px;border-radius:999px;background:var(--paper);font-size:30px}
.year-meta{padding:7px 11px;border-radius:999px;background:#f7eee7}
.year-notes li{padding-left:3px;margin:5px 0}
.year-notes li::marker{color:var(--rust)}
.year-preview{padding:16px;border-radius:14px;background:#fbf5ed}
.preview-label{letter-spacing:.08em}
.year-details summary{display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;border-radius:999px;background:var(--paper);transition:background .2s ease,color .2s ease}
.year-details summary:hover{background:var(--rust);color:white}
.year-details summary::after{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(168,80,45,.12);font-size:15px;line-height:1}
.year-details[open] summary::after{content:"−";background:rgba(255,255,255,.2)}
.event-block{padding:20px;border-radius:13px;background:#fffaf4}
.event-heading h3{font-size:23px}
.about-main{position:relative}
.about-hero{position:relative;padding:30px clamp(24px,5vw,60px) 58px;border:1px solid rgba(221,199,183,.7);border-radius:5px 28px 28px 5px;border-left:4px solid var(--rust);background:radial-gradient(ellipse at 90% 10%,rgba(105,151,197,.12),transparent 40%),linear-gradient(135deg,#fffaf4,#f5e8dd)}
.about-hero h1{max-width:850px}
.about-story{align-items:center}
.story-mark{box-shadow:0 16px 36px rgba(54,92,45,.18),0 0 0 10px rgba(54,92,45,.06);transition:transform .35s ease,box-shadow .35s ease}
.story-mark:hover{transform:translateY(-4px) rotate(-2deg);box-shadow:0 22px 40px rgba(54,92,45,.22),0 0 0 13px rgba(54,92,45,.07)}
.donate{padding:clamp(28px,4vw,48px);border-radius:20px;background:linear-gradient(135deg,#fffaf4,#f1dfd2);box-shadow:var(--shadow-card)}
.bank-details p{border:1px solid rgba(221,199,183,.8);border-radius:12px;box-shadow:0 6px 16px rgba(75,45,31,.045);transition:transform .2s ease,box-shadow .2s ease}
.bank-details p:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}
.site-footer{position:relative;background:linear-gradient(135deg,#ead4c4,#f0ded0)}
.site-footer::before{position:absolute;content:"";left:clamp(24px,6vw,86px);right:clamp(24px,6vw,86px);top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(119,59,44,.28),transparent)}
.footer-bottom a:hover{color:var(--rust);text-decoration:underline}
@keyframes hero-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:720px){
 .site-header{box-shadow:0 3px 16px rgba(57,37,31,.07)}
 .site-nav{border-top:1px solid var(--line)}
 .intro>div:last-child{padding:25px 22px}
 .latest-work::before{width:140px;height:140px;right:-30px;top:30px}
 .latest-grid{gap:11px}
 .year-card{border-radius:14px}
 .year-heading h2{min-width:78px;font-size:26px}
 .year-preview{padding:11px}
 .event-block{padding:14px}
 .about-hero{padding:22px 21px 34px}
 .about-story{align-items:start}
 .donate{padding:24px 18px}
 .site-footer::before{left:22px;right:22px}
}
@media(prefers-reduced-motion:reduce){.hero-copy{animation:none}.brand-emblem,.story-mark,.year-card,.archive-photo,.bank-details p{transition:none}}
/* Keep the started showreel above hero lettering; its native controls include fullscreen. */
.hero.is-playing .hero-video{z-index:3}
/* Show the entire source frame after playback starts; contain avoids cropping wide or tall footage. */
.hero.is-playing .hero-video{object-fit:contain;background:#100d0b}
.hero-video:fullscreen,.hero-video:-webkit-full-screen{object-fit:contain;background:#000}
/* Hide the pause overlay while the playing viewer is idle; native player controls remain available. */
.hero.is-playing.is-idle .video-toggle{opacity:0;pointer-events:none}

/* Donation details and expanded social links */
.donation-methods{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:stretch;margin-top:18px}
.donation-methods .bank-details{margin:0;align-content:start}
.upi-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 16px;border:1px solid rgba(221,199,183,.85);border-radius:14px;background:#fffaf4;text-align:center;box-shadow:0 8px 22px rgba(75,45,31,.07)}
.upi-card h3{margin:0 0 13px;color:var(--rust-dark);font:500 23px Georgia,'Times New Roman',serif}
.upi-card img{display:block;width:min(100%,190px);height:auto;aspect-ratio:1;object-fit:contain;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fff}
.upi-card p{margin:14px 0 4px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.upi-card>strong{color:var(--rust-dark);font-size:13px;overflow-wrap:anywhere}
.footer-social{display:grid;align-content:start;justify-items:start;gap:10px}
.footer-social h2{margin-bottom:2px}
.footer-social a{display:inline-flex;align-items:center;gap:8px;padding:5px 0}
.site-nav a[href*="#donate"]{color:var(--rust-dark);font-weight:700}
@media(max-width:720px){.donation-methods{grid-template-columns:1fr;gap:16px}.upi-card{padding:18px}.upi-card img{width:min(65vw,210px)}}

/* UPI expands below the existing bank and GPay cards. */
.donation-methods{display:block;margin-top:18px}
.donation-methods .bank-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;margin:0;gap:14px}
.donation-methods .bank-details p{min-width:0}
.upi-details{margin-top:17px}
.upi-details summary{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:92px;min-height:42px;padding:0 17px;border:1px solid var(--rust);border-radius:999px;background:var(--rust);color:var(--white);font-size:12px;font-weight:700;letter-spacing:.04em;cursor:pointer;list-style:none;transition:background .2s ease,transform .2s ease}
.upi-details summary::-webkit-details-marker{display:none}
.upi-details summary::after{content:"+";font-size:17px;font-weight:400;line-height:1}
.upi-details[open] summary::after{content:"−"}
.upi-details summary:hover{background:var(--rust-dark);transform:translateY(-1px)}
.upi-details summary:focus-visible{outline:3px solid rgba(105,151,197,.7);outline-offset:4px}
.upi-panel{display:flex;align-items:center;gap:20px;width:fit-content;max-width:100%;margin-top:13px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,250,244,.72)}
.upi-panel img{display:block;width:164px;height:164px;object-fit:contain;padding:4px;border:1px solid rgba(119,59,44,.14);border-radius:8px;background:#fff}
.upi-panel p{margin:0 0 6px;color:var(--muted);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.upi-panel strong{color:var(--rust-dark);font-size:14px;overflow-wrap:anywhere}
@media(max-width:720px){.donation-methods .bank-details{grid-template-columns:1fr;gap:10px}.upi-panel img{width:min(42vw,150px);height:min(42vw,150px)}.upi-panel{gap:14px;padding:12px}}
/* Balance the Home introduction label against its text panel. */
.intro{grid-template-columns:minmax(145px,.42fr) minmax(0,1.58fr);gap:clamp(28px,4vw,52px);align-items:center}
.intro>.section-kicker{justify-self:end;align-self:center;width:max-content;max-width:100%;padding:11px 15px;border:1px solid rgba(221,199,183,.85);border-radius:999px;background:rgba(244,229,218,.62);text-align:center;box-shadow:0 5px 14px rgba(75,45,31,.04)}
@media(max-width:720px){.intro{grid-template-columns:1fr;align-items:start}.intro>.section-kicker{justify-self:start;align-self:start;padding:8px 12px;text-align:left}}
/* Stable hero stacking for Edge's composited video layer. */
.hero-video{z-index:0;transform:translate3d(0,0,0) scale(1.04);backface-visibility:hidden}
.hero-shade{z-index:1;pointer-events:none}
.hero-copy{position:relative;z-index:2;transform:translate3d(0,0,0)}
.sound-hint{z-index:2}
.hero.is-playing .hero-video{z-index:3}
/* Give the logo more room while keeping the artwork safely inside its green ring. */
.brand-emblem{width:58px;height:58px;flex-basis:58px;padding:2px}
.brand-logo{padding:3px!important}
@media(max-width:720px){.brand-emblem{width:48px;height:48px;flex-basis:48px}.brand-logo{padding:2px!important}}
/* Slightly reduce the long hero headline so both lines sit comfortably in Edge and Chrome. */
.hero h1{font-size:clamp(44px,5.8vw,76px)}
@media(max-width:720px){.hero h1{font-size:clamp(40px,10vw,58px)}}
/* Page-turn viewer for the study-material PDF. */
.about-brochure-button{margin-top:5px}
.brochure-page{background:linear-gradient(180deg,var(--paper-light),#f2e2d6 62%,var(--paper-light))}
.brochure-intro{padding:54px 22px 24px;text-align:center}
.brochure-intro .section-kicker{padding-top:0}
.brochure-intro h1{margin:13px 0 12px;color:var(--rust-dark);font:500 clamp(38px,5vw,58px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:-.04em}
.brochure-intro h1 span{color:#6491b9}
.brochure-intro>p{margin:0;color:var(--muted);font-size:14px;letter-spacing:.03em}
.flipbook-wrap{width:min(100% - 40px,760px);margin:14px auto 76px;text-align:center}
.book-stage{position:relative;width:min(100%,540px);aspect-ratio:595.276/841.89;margin:0 auto 24px;perspective:1800px;touch-action:pan-y;isolation:isolate}
.book-underlay{position:absolute;inset:0 0 0 5px;border-radius:3px 12px 12px 3px;background:linear-gradient(90deg,#e9dfd1,#fff 3%,#fff 96%,#eadfce);box-shadow:0 22px 54px rgba(57,37,31,.22),7px 0 0 #dfd2c1,12px 0 0 #f8f1e8}
.book-sheet{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:left center;transition:transform .72s cubic-bezier(.22,.7,.15,1);border-radius:3px 12px 12px 3px;box-shadow:0 10px 30px rgba(57,37,31,.15)}
.book-sheet.turn-forward{transform:rotateY(-180deg)}
.book-sheet.turn-backward{transform:rotateY(180deg)}
.book-face{position:absolute;inset:0;overflow:hidden;border:1px solid rgba(90,64,46,.18);border-radius:3px 12px 12px 3px;background:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.book-front{transform:rotateY(0)}
.book-back{transform:rotateY(180deg)}
.book-face img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.book-controls{display:flex;align-items:center;justify-content:center;gap:20px}
.book-button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 17px;border:1px solid var(--rust);border-radius:999px;background:var(--rust);color:var(--white);font:700 12px Arial,Helvetica,sans-serif;cursor:pointer;transition:background .2s ease,transform .2s ease,opacity .2s ease}
.book-button:hover:not(:disabled){transform:translateY(-2px);background:var(--rust-dark)}
.book-button:focus-visible{outline:3px solid rgba(105,151,197,.7);outline-offset:3px}
.book-button:disabled{opacity:.42;cursor:not-allowed}
.book-page-count{min-width:94px;color:var(--rust-dark);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
.book-help{margin:14px 0 8px;color:var(--muted);font-size:12px}
.original-pdf-link{display:inline-block;margin-top:8px;color:var(--rust-dark);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:560px){.brochure-intro{padding:42px 20px 20px}.flipbook-wrap{width:calc(100% - 28px);margin-bottom:54px}.book-stage{width:min(100%,430px);margin-bottom:20px}.book-controls{gap:9px}.book-button{min-height:42px;padding:0 12px}.book-page-count{min-width:78px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.book-sheet,.book-button{transition:none}}
/* More tactile page turns: deeper curl, page-edge shading, and a moving paper sheen. */
.book-stage{perspective:1350px}
.book-sheet{transition:transform .84s cubic-bezier(.2,.76,.16,1),box-shadow .84s ease}
.book-sheet.turn-forward{transform:rotateY(-180deg) rotateZ(-.7deg) scale(.985);box-shadow:-22px 15px 38px rgba(57,37,31,.24)}
.book-sheet.turn-backward{transform:rotateY(180deg) rotateZ(.7deg) scale(.985);box-shadow:22px 15px 38px rgba(57,37,31,.24)}
.book-sheet::before{position:absolute;content:"";z-index:2;left:-4px;top:4px;bottom:4px;width:4px;pointer-events:none;background:repeating-linear-gradient(180deg,#fff 0 3px,#e4d8c9 3px 4px);transform:translateZ(-1px)}
.book-sheet::after{position:absolute;content:"";z-index:3;inset:0;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.38) 48%,rgba(106,76,53,.12) 52%,transparent 66%);background-size:220% 100%;transition:opacity .3s ease,background-position .84s ease}
.book-sheet.turn-forward::after{opacity:1;background-position:100% 0}
.book-sheet.turn-backward::after{opacity:1;background-position:0 0}
.book-front{transition:box-shadow .5s ease}
.book-sheet.turn-forward .book-front{box-shadow:inset -34px 0 42px -34px rgba(54,38,27,.58)}
.book-sheet.turn-backward .book-front{box-shadow:inset 34px 0 42px -34px rgba(54,38,27,.58)}
@media(prefers-reduced-motion:reduce){.book-sheet{transition:none}.book-sheet::after{transition:none}}/* Subtle printed-paper finish for the brochure pages. */
.book-underlay{background:repeating-linear-gradient(180deg,rgba(126,94,67,.13) 0 1px,transparent 1px 4px),linear-gradient(90deg,#e7d9c9,#fbf8f1 4%,#fbf8f1 96%,#e7d9c9)}
.book-face{background:#fbf8f1}
.book-face img{background:#fbf8f1;mix-blend-mode:multiply}
.book-face::after{position:absolute;content:"";z-index:1;inset:0;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(0deg,rgba(117,87,60,.12) 0,rgba(117,87,60,.12) .45px,transparent .45px,transparent 3px),repeating-linear-gradient(90deg,rgba(117,87,60,.08) 0,rgba(117,87,60,.08) .4px,transparent .4px,transparent 4px),radial-gradient(ellipse at 50% 48%,transparent 60%,rgba(127,91,61,.12) 100%);mix-blend-mode:multiply}
@media(prefers-reduced-motion:reduce){.book-face::after{opacity:.12}}
/* A stationary page beneath the lifted leaf gives both directions a real book-like feel. */
.book-underlay{z-index:0;overflow:hidden}
.book-underlay>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#fbf8f1;mix-blend-mode:multiply}
.book-sheet{z-index:1}
/* The leaf flexes through the turn; a moving shadow and highlight suggest a soft curl. */
.book-sheet.turn-forward{animation:paper-curl-forward .88s cubic-bezier(.2,.72,.18,1) both;box-shadow:0 18px 32px rgba(57,37,31,.25)}
.book-sheet.turn-backward{transform:none;animation:paper-curl-backward .88s cubic-bezier(.2,.72,.18,1) both;box-shadow:0 18px 32px rgba(57,37,31,.25)}
.book-sheet.turn-forward .book-front,.book-sheet.turn-backward .book-front{box-shadow:inset -24px 0 38px -24px rgba(54,38,27,.54)}
.book-sheet.turn-forward::after,.book-sheet.turn-backward::after{opacity:1;animation:paper-glint .88s ease both}
@keyframes paper-curl-forward{
  0%{transform:rotateY(0) rotateZ(0) scale(1)}
  36%{transform:rotateY(-68deg) rotateZ(-2.2deg) scale(.975, .99)}
  58%{transform:rotateY(-112deg) rotateZ(-1deg) scale(.94, .99)}
  78%{transform:rotateY(-151deg) rotateZ(.4deg) scale(.975, 1)}
  100%{transform:rotateY(-180deg) rotateZ(0) scale(1)}
}
@keyframes paper-curl-backward{
  0%{transform:rotateY(-180deg) rotateZ(0) scale(1)}
  22%{transform:rotateY(-151deg) rotateZ(-.4deg) scale(.975, 1)}
  42%{transform:rotateY(-112deg) rotateZ(1deg) scale(.94, .99)}
  64%{transform:rotateY(-68deg) rotateZ(2.2deg) scale(.975, .99)}
  100%{transform:rotateY(0) rotateZ(0) scale(1)}
}
@keyframes paper-glint{
  0%{background-position:0 0;opacity:.12}
  45%{opacity:.9}
  100%{background-position:100% 0;opacity:.12}
}
@media(prefers-reduced-motion:reduce){.book-sheet.turn-forward,.book-sheet.turn-backward,.book-sheet.turn-forward::after,.book-sheet.turn-backward::after{animation:none}}
/* Add a soft, flexible bend through the middle of each sheet turn. */
.book-front{position:absolute;overflow:hidden;border-radius:3px 12px 12px 3px}
.book-front::before{position:absolute;content:"";z-index:2;inset:0;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent 0%,rgba(58,39,26,.02) 28%,rgba(58,39,26,.19) 47%,rgba(255,255,255,.48) 52%,rgba(58,39,26,.12) 57%,transparent 76%);background-size:240% 100%;mix-blend-mode:multiply}
.book-sheet.turn-forward .book-front::before{animation:paper-crease-forward .88s ease-in-out both}
.book-sheet.turn-backward .book-front::before{animation:paper-crease-backward .88s ease-in-out both}
@keyframes paper-curl-forward{
  0%{transform:rotateY(0) rotateX(0) rotateZ(0) skewY(0) scaleX(1);border-radius:3px 12px 12px 3px}
  24%{transform:rotateY(-42deg) rotateX(3deg) rotateZ(-1.2deg) skewY(-1deg) scaleX(.99);border-radius:3px 24px 18px 3px}
  43%{transform:rotateY(-78deg) rotateX(7deg) rotateZ(-2.8deg) skewY(-2deg) scaleX(.94);border-radius:5px 38px 28px 4px}
  59%{transform:rotateY(-118deg) rotateX(5deg) rotateZ(-1.4deg) skewY(-1deg) scaleX(.93);border-radius:5px 30px 20px 4px}
  78%{transform:rotateY(-155deg) rotateX(2deg) rotateZ(.5deg) skewY(0) scaleX(.98);border-radius:3px 18px 12px 3px}
  100%{transform:rotateY(-180deg) rotateX(0) rotateZ(0) skewY(0) scaleX(1);border-radius:3px 12px 12px 3px}
}
@keyframes paper-curl-backward{
  0%{transform:rotateY(-180deg) rotateX(0) rotateZ(0) skewY(0) scaleX(1);border-radius:3px 12px 12px 3px}
  22%{transform:rotateY(-155deg) rotateX(2deg) rotateZ(-.5deg) skewY(0) scaleX(.98);border-radius:3px 18px 12px 3px}
  41%{transform:rotateY(-118deg) rotateX(5deg) rotateZ(1.4deg) skewY(1deg) scaleX(.93);border-radius:5px 30px 20px 4px}
  57%{transform:rotateY(-78deg) rotateX(7deg) rotateZ(2.8deg) skewY(2deg) scaleX(.94);border-radius:5px 38px 28px 4px}
  76%{transform:rotateY(-42deg) rotateX(3deg) rotateZ(1.2deg) skewY(1deg) scaleX(.99);border-radius:3px 24px 18px 3px}
  100%{transform:rotateY(0) rotateX(0) rotateZ(0) skewY(0) scaleX(1);border-radius:3px 12px 12px 3px}
}
@keyframes paper-crease-forward{
  0%{opacity:0;background-position:100% 0}
  30%{opacity:.1;background-position:82% 0}
  48%{opacity:.78;background-position:55% 0}
  70%{opacity:.45;background-position:24% 0}
  100%{opacity:0;background-position:0 0}
}
@keyframes paper-crease-backward{
  0%{opacity:0;background-position:0 0}
  30%{opacity:.1;background-position:18% 0}
  52%{opacity:.78;background-position:48% 0}
  72%{opacity:.45;background-position:76% 0}
  100%{opacity:0;background-position:100% 0}
}
@media(prefers-reduced-motion:reduce){.book-front::before{animation:none!important}}
/* True book layout: a half-width cover around full two-page interior spreads. */
.flipbook-wrap{position:relative;width:min(calc(100% - 84px),1200px);margin:14px auto 76px;text-align:center}
.book-stage{width:min(100%,1080px);aspect-ratio:1.42;margin:0 auto 18px;perspective:1700px;isolation:isolate;overflow:visible}
.book-underlay{inset:0;border-radius:2px 8px 8px 2px;box-shadow:0 22px 48px rgba(57,37,31,.22),7px 0 0 #dfd2c1,12px 0 0 #f8f1e8;background:repeating-linear-gradient(180deg,rgba(126,94,67,.13) 0 1px,transparent 1px 4px),linear-gradient(90deg,#e7d9c9,#fbf8f1 4%,#fbf8f1 96%,#e7d9c9)}
.book-underlay>img{width:100%;height:100%;object-fit:contain;left:0;right:auto}
.book-stage.is-cover .book-underlay>img{width:50%;left:auto;right:0}
.book-stage.back-cover .book-underlay>img{left:0;right:auto}
.book-sheet{inset:0 0 0 auto;left:auto;width:50%;height:100%;z-index:2;opacity:0;pointer-events:none;transform-origin:left center;border-radius:2px 8px 8px 2px;box-shadow:0 12px 30px rgba(57,37,31,.18)}
.book-sheet.leaf-left{left:0;right:auto;transform-origin:right center;border-radius:8px 2px 2px 8px}
.book-sheet.turn-forward,.book-sheet.turn-backward{opacity:1}
.book-face{border-radius:inherit;background:#fbf8f1}
.book-front{transform:rotateY(0)}
.book-back{transform:rotateY(180deg)}
.book-face img{position:absolute;top:0;left:0;display:block;width:200%;max-width:none;height:100%;object-fit:contain;background:#fbf8f1;mix-blend-mode:multiply}
.book-face.is-spread.crop-right img{left:-100%}
.book-face.is-spread.crop-left img{left:0}
.book-face.is-cover img{left:0;width:100%;object-fit:contain}
.book-sheet::before{left:-3px;width:3px;background:repeating-linear-gradient(180deg,#fff 0 3px,#e4d8c9 3px 4px)}
.book-sheet.leaf-left::before{left:auto;right:-3px}
.book-sheet.turn-forward{animation:spread-leaf-forward .92s cubic-bezier(.2,.72,.18,1) both;box-shadow:0 17px 36px rgba(57,37,31,.28)}
.book-sheet.turn-backward{animation:spread-leaf-backward .92s cubic-bezier(.2,.72,.18,1) both;box-shadow:0 17px 36px rgba(57,37,31,.28)}
.book-sheet.turn-forward .book-front,.book-sheet.turn-backward .book-front{box-shadow:inset -28px 0 38px -25px rgba(54,38,27,.6)}
.book-sheet.turn-forward::after,.book-sheet.turn-backward::after{opacity:1;animation:paper-glint .92s ease both}
@keyframes spread-leaf-forward{
  0%{transform:rotateY(0) rotateX(0) rotateZ(0) scaleX(1)}
  24%{transform:rotateY(-42deg) rotateX(2deg) rotateZ(-1.3deg) scaleX(.99)}
  44%{transform:rotateY(-82deg) rotateX(6deg) rotateZ(-2.7deg) scaleX(.93)}
  58%{transform:rotateY(-116deg) rotateX(5deg) rotateZ(-1.5deg) scaleX(.92)}
  80%{transform:rotateY(-155deg) rotateX(2deg) rotateZ(.4deg) scaleX(.98)}
  100%{transform:rotateY(-180deg) rotateX(0) rotateZ(0) scaleX(1)}
}
@keyframes spread-leaf-backward{
  0%{transform:rotateY(0) rotateX(0) rotateZ(0) scaleX(1)}
  20%{transform:rotateY(38deg) rotateX(2deg) rotateZ(1deg) scaleX(.98)}
  42%{transform:rotateY(82deg) rotateX(6deg) rotateZ(2.7deg) scaleX(.93)}
  60%{transform:rotateY(118deg) rotateX(5deg) rotateZ(1.5deg) scaleX(.92)}
  80%{transform:rotateY(156deg) rotateX(2deg) rotateZ(-.4deg) scaleX(.98)}
  100%{transform:rotateY(180deg) rotateX(0) rotateZ(0) scaleX(1)}
}
.book-controls{position:absolute;inset:0;display:block;pointer-events:none}
.book-button{position:absolute;top:50%;display:grid;place-items:center;width:48px;height:48px;min-height:0;padding:0;border:1px solid rgba(119,59,44,.22);border-radius:50%;background:rgba(255,250,244,.92);color:var(--rust-dark);font:400 28px/1 Arial,Helvetica,sans-serif;box-shadow:0 5px 18px rgba(57,37,31,.13);pointer-events:auto;transform:translateY(-50%);transition:background .2s,transform .2s,opacity .2s}
.book-button:hover:not(:disabled){background:#fff;color:var(--rust);transform:translateY(-50%) scale(1.07)}
.book-button:focus-visible{outline:3px solid rgba(105,151,197,.7);outline-offset:3px}
.book-button:disabled{opacity:.28;cursor:not-allowed}
.book-previous{left:14px}.book-next{right:14px}
.book-page-count{display:block;margin:0 auto;color:var(--rust-dark);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
.book-help{margin:12px 0 8px}
@media(max-width:720px){.flipbook-wrap{width:calc(100% - 28px);margin-bottom:54px}.book-stage{width:100%;aspect-ratio:1.12}.book-button{width:42px;height:42px;font-size:25px}.book-previous{left:7px}.book-next{right:7px}.book-page-count{font-size:11px}}
@media(prefers-reduced-motion:reduce){.book-sheet.turn-forward,.book-sheet.turn-backward,.book-sheet.turn-forward::after,.book-sheet.turn-backward::after{animation:none}.book-button{transition:none}}
.book-button{z-index:5}
.footer-contact p{overflow-wrap:anywhere}
/* Match the source brochure's landscape PDF page ratio and keep the turn clean. */
.book-stage,.book-stage.is-cover{aspect-ratio:792/612}
@media(max-width:720px){.book-stage,.book-stage.is-cover{aspect-ratio:792/612}}
.book-underlay{background:linear-gradient(90deg,#f3e9dc,#fbf8f1 4%,#fbf8f1 96%,#f3e9dc);box-shadow:0 20px 46px rgba(57,37,31,.2)}
.book-sheet::before{content:none}
.book-face::after{background-image:radial-gradient(ellipse at center,transparent 68%,rgba(127,91,61,.07) 100%);opacity:.1}
.book-sheet.turn-forward{animation:spread-leaf-forward 1.08s cubic-bezier(.25,.68,.25,1) both}
.book-sheet.turn-backward{animation:spread-leaf-backward 1.08s cubic-bezier(.25,.68,.25,1) both}
@keyframes spread-leaf-forward{
  0%{transform:rotateY(0) rotateX(0) rotateZ(0) scaleX(1)}
  26%{transform:rotateY(-38deg) rotateX(1.5deg) rotateZ(-.8deg) scaleX(.99)}
  48%{transform:rotateY(-82deg) rotateX(5deg) rotateZ(-2deg) scaleX(.94)}
  64%{transform:rotateY(-122deg) rotateX(4deg) rotateZ(-1deg) scaleX(.94)}
  84%{transform:rotateY(-158deg) rotateX(1.5deg) rotateZ(.3deg) scaleX(.99)}
  100%{transform:rotateY(-180deg) rotateX(0) rotateZ(0) scaleX(1)}
}
@keyframes spread-leaf-backward{
  0%{transform:rotateY(0) rotateX(0) rotateZ(0) scaleX(1)}
  18%{transform:rotateY(34deg) rotateX(1.5deg) rotateZ(.6deg) scaleX(.99)}
  40%{transform:rotateY(80deg) rotateX(5deg) rotateZ(2deg) scaleX(.94)}
  62%{transform:rotateY(124deg) rotateX(4deg) rotateZ(1deg) scaleX(.94)}
  82%{transform:rotateY(158deg) rotateX(1.5deg) rotateZ(-.3deg) scaleX(.99)}
  100%{transform:rotateY(180deg) rotateX(0) rotateZ(0) scaleX(1)}
}
/* Covers are a single native-size PDF page; spreads expand to two page widths. */
.book-stage{width:min(100%,1080px);aspect-ratio:792/612;transition:width .62s cubic-bezier(.22,.61,.36,1)}
.book-stage.is-cover{width:min(50%,540px);aspect-ratio:792/612}
.book-stage.is-cover .book-underlay>img,.book-stage.back-cover .book-underlay>img{width:100%;height:100%;left:0;right:auto;object-fit:contain}
.book-sheet{transition:none}
.book-sheet.turn-forward{animation:spread-leaf-forward 1.12s cubic-bezier(.24,.62,.28,1) both}
.book-sheet.turn-backward{animation:spread-leaf-backward 1.12s cubic-bezier(.24,.62,.28,1) both}
@media(max-width:720px){.book-stage,.book-stage.is-cover{aspect-ratio:792/612}.book-stage.is-cover{width:min(50%,540px)}}
/* Interior PDFs are two facing pages: make their preview twice the cover width
   while keeping the same physical height. */
.book-stage.is-cover{width:min(50%,540px);aspect-ratio:792/612}
.book-stage:not(.is-cover){width:min(100%,1080px);aspect-ratio:1584/612}
.book-stage.is-cover .book-underlay>img{width:100%;height:100%;object-fit:contain}
.book-stage:not(.is-cover) .book-underlay>img{width:100%;height:100%;object-fit:fill}
.book-face.is-cover img{object-fit:contain}
.book-face.is-spread img{object-fit:fill}
@media(max-width:720px){
  .book-stage.is-cover{width:min(50%,540px);aspect-ratio:792/612}
  .book-stage:not(.is-cover){width:min(100%,1080px);aspect-ratio:1584/612}
}
/* Keep the back cover aligned to the outer/right edge as the book closes. */
.book-stage.back-cover .book-underlay>img{left:auto;right:0}
/* Keep one stable spread-sized frame; covers occupy one leaf of that frame. */
.book-stage,.book-stage.is-cover,.book-stage:not(.is-cover){width:min(100%,1080px);aspect-ratio:1584/612;transition:none}
.book-stage.is-cover .book-underlay>img,.book-stage.back-cover .book-underlay>img{width:50%;height:100%;left:auto;right:0;object-fit:contain}
.book-stage:not(.is-cover) .book-underlay>img{width:100%;height:100%;object-fit:fill}
@media(max-width:720px){.book-stage,.book-stage.is-cover,.book-stage:not(.is-cover){width:100%;aspect-ratio:1584/612}}
/* Treat the back cover as the left leaf and let the empty half blend into the site. */
.book-stage.back-cover .book-underlay>img{left:0;right:auto}
.book-underlay{background:transparent;box-shadow:none}
.book-stage.is-cover .book-underlay{background:transparent;box-shadow:none}
/* Center the single-page covers in the spread-sized viewing area. */
.book-stage.is-cover .book-underlay>img,.book-stage.back-cover .book-underlay>img{left:25%;right:auto}
