@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";.auth-dialog{width:min(92vw,440px);color:var(--color-text);background:var(--color-surface);border:0;min-height:100vh;max-height:100vh;margin:auto 0 auto auto;padding:0}.auth-dialog::backdrop{background:#0720307a}.auth-panel{padding:clamp(2rem,7vw,4rem)}.auth-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.auth-heading p{color:var(--color-primary);text-transform:uppercase;letter-spacing:.12em;margin:0 0 .4rem;font-size:.74rem;font-weight:700}.auth-heading h2{margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:2.5rem;font-weight:400}.auth-intro{color:var(--color-muted);margin:1rem 0 2rem}.auth-panel form{gap:.65rem;display:grid}.auth-panel label{margin-top:.45rem;font-size:.82rem;font-weight:700}.auth-panel input{border:1px solid var(--color-border);width:100%;min-height:48px;color:var(--color-text);background:var(--color-white);border-radius:0;padding:.75rem}.auth-panel input:focus{border-color:var(--color-primary);outline:3px solid #1678ad24}.password-field{position:relative}.password-field input{padding-right:3rem}.password-field button{width:42px;height:42px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:3px;right:3px}.password-field svg,.login-button svg{width:19px}.login-button{min-height:50px;color:var(--color-white);background:var(--color-primary-dark);cursor:pointer;border:0;justify-content:center;align-items:center;gap:.65rem;margin-top:1rem;font-weight:700;display:inline-flex}.login-button:disabled{cursor:wait;opacity:.65}.auth-message{color:var(--color-primary);margin:.5rem 0 0;font-size:.88rem}@media (width<=800px){.auth-dialog{width:100%}}.site-footer{z-index:10;min-height:var(--footer-height);color:var(--color-white);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d4f76f0;border-top:1px solid #ffffff3d;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem;padding:.85rem 5vw;display:grid;position:fixed;bottom:0;left:0;right:0}.social-navigation{align-items:center;gap:.65rem;display:flex}.social-navigation a{width:40px;height:40px;color:var(--color-white);border:1px solid #ffffff61;place-items:center;text-decoration:none;display:inline-grid}.social-navigation a:hover{color:var(--color-primary-dark);background:var(--color-white)}.social-navigation .youtube-link:hover{color:#f03}.social-navigation .facebook-link:hover{color:#1877f2}.social-navigation svg{width:18px}.copyright{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;margin:0;font-size:.88rem;display:flex}@media (width<=800px){.site-footer{gap:.85rem;padding:.75rem 1rem}.copyright{text-align:right;justify-content:flex-end;font-size:.76rem}}@media (width<=430px){.social-navigation{gap:.4rem}.social-navigation a{width:36px;height:36px}}.site-header{z-index:10;min-height:var(--header-height);border-bottom:1px solid var(--color-border);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5vw;display:grid;position:fixed;top:0;left:0;right:0}.brand{align-items:center;gap:.7rem;width:max-content;font-weight:700;text-decoration:none;display:inline-flex}.brand img{object-fit:contain;width:42px;height:42px}.main-nav{align-items:center;gap:2rem;display:flex}.main-nav a{color:var(--color-text);font-size:.9rem;font-weight:600;text-decoration:none}.main-nav a:hover{color:var(--color-primary)}.header-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.language-switch{border:1px solid var(--color-border);background:#ffffff85;align-items:center;padding:.2rem;display:inline-flex}.language-switch button{min-width:34px;height:32px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;padding:0 .35rem;font-size:.7rem;font-weight:700}.language-switch button.is-active{color:var(--color-white);background:var(--color-primary)}.icon-button{width:42px;height:42px;color:var(--color-primary-dark);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.icon-button svg{width:21px}.mobile-menu-button{display:none}.auth-rail{z-index:15;min-height:48px;color:var(--color-primary-dark);background:var(--color-accent);cursor:pointer;writing-mode:vertical-rl;border:0;align-items:center;gap:.6rem;padding:.85rem .9rem;font-weight:700;display:inline-flex;position:fixed;top:50%;right:0;transform:translateY(-50%)}.auth-rail:hover{background:#f5d276}.auth-rail svg{width:18px;transform:rotate(90deg)}@media (width<=800px){.site-header{min-height:var(--header-height);grid-template-columns:1fr auto;padding:0 1rem}.main-nav{top:var(--header-height);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1rem 1rem;display:none;position:absolute;left:0;right:0}.main-nav.is-open{display:flex}.main-nav a{border-bottom:1px solid var(--color-border);padding:.85rem 0}.mobile-menu-button{display:inline-grid}.language-switch{top:var(--header-height);z-index:2;border-top:0;position:absolute;right:0}}@media (width<=430px){.brand span{display:none}.auth-rail{padding:.7rem .65rem;font-size:.82rem}}.site-shell{isolation:isolate;min-height:100vh;position:relative}.site-shell:before,.site-shell:after{pointer-events:none;content:"";position:fixed;inset:0}.site-shell:before{z-index:-2;background-color:var(--color-primary-pale);background-image:url(/images/church-background.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover}.site-shell:after{z-index:-1;background:var(--color-background-overlay)}.download-page{min-height:calc(100vh - var(--header-height) - var(--footer-height));margin-top:var(--header-height);margin-bottom:var(--footer-height);grid-template-columns:minmax(0,680px) minmax(220px,340px);place-content:center;align-items:center;gap:clamp(2rem,6vw,6rem);padding:clamp(2rem,4vw,3rem) 7vw;display:grid;overflow:hidden}.download-content{width:min(100%,680px)}.download-heading{grid-template-columns:74px minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.download-heading>img{object-fit:contain;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf8fdb3;border:1px solid #1678ad40;width:74px;height:74px;padding:.6rem}.page-eyebrow{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .55rem;font-size:.7rem;font-weight:700}.download-content h1{max-width:560px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(2.15rem,4.5vw,4rem);font-weight:400;line-height:1}.download-intro{max-width:500px;color:var(--color-muted);margin:1rem 0 0;font-size:.92rem;line-height:1.6}.store-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:2rem;margin-left:95px;display:grid}.store-link{min-height:78px;color:var(--color-primary-dark);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#edf8fdc2;border:1px solid #1678ad4d;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.8rem 1rem;text-decoration:none;transition:transform .22s,border-color .22s,box-shadow .22s,background .22s;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 28px #0d4f761a}.store-link:hover,.store-link:focus-visible{border-color:var(--color-primary);background:#ffffffe6;transform:translateY(-4px);box-shadow:0 16px 34px #0d4f762b}.store-link:focus-visible{outline-offset:3px;outline:3px solid #1678ad3d}.store-icon{width:42px;height:42px;color:var(--color-white);background:var(--color-primary);border-radius:50%;place-items:center;transition:transform .25s;display:grid}.store-link:hover .store-icon{transform:scale(1.08)rotate(-4deg)}.store-icon svg{width:22px;height:22px}.store-name{gap:.1rem;min-width:0;display:grid}.store-name small{color:var(--color-muted);font-size:.66rem}.store-name strong{overflow-wrap:anywhere;font-size:.9rem}.store-arrow{width:16px;transition:transform .22s}.store-link:hover .store-arrow{transform:translate(4px)}.app-preview{justify-self:center;margin:0;transition:transform .35s;position:relative;transform:rotate(3deg)}.app-preview:hover{transform:rotate(1deg)translateY(-5px)}.app-preview img{filter:drop-shadow(0 20px 26px #0d4f7633);object-fit:contain;width:auto;max-width:100%;height:min(58vh,540px);display:block}@media (width<=800px){.download-page{grid-template-columns:minmax(0,1fr);place-items:start center;gap:2rem;padding:2rem 1.25rem;overflow-y:auto}.store-links{margin-left:0}.app-preview{transform:rotate(2deg)}.app-preview img{height:min(48vh,430px)}}@media (width<=560px){.download-heading{grid-template-columns:54px minmax(0,1fr);gap:.85rem}.download-heading>img{width:54px;height:54px;padding:.4rem}.store-links{grid-template-columns:1fr;margin-top:1.5rem}.store-link{min-height:68px}}@media (prefers-reduced-motion:reduce){.store-link,.store-icon,.store-arrow,.app-preview{transition:none}}.event-calendar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf8fdb8;border:1px solid #1678ad47;border-radius:8px;align-self:start;padding:1.25rem;position:sticky;top:0;box-shadow:0 14px 34px #0d4f761a}.event-calendar-header{grid-template-columns:38px 1fr 38px;align-items:center;gap:.5rem;margin-bottom:1rem;display:grid}.event-calendar-header h2{color:var(--color-primary-dark);text-align:center;text-transform:capitalize;margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:1.45rem;font-weight:400}.event-calendar-header button{width:38px;height:38px;color:var(--color-primary-dark);cursor:pointer;background:#ffffff73;border:1px solid #1678ad42;border-radius:50%;place-items:center;padding:0;display:grid}.event-calendar-header button:hover{color:var(--color-white);background:var(--color-primary)}.event-calendar-header svg{width:18px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{color:var(--color-muted);text-align:center;text-transform:uppercase;margin-bottom:.35rem;font-size:.66rem;font-weight:700}.calendar-days{gap:.2rem}.calendar-days button,.calendar-empty{aspect-ratio:1}.calendar-days button{color:var(--color-text);cursor:pointer;background:#ffffff42;border:1px solid #0000;border-radius:5px;place-items:center;padding:0;font-size:.78rem;display:grid;position:relative}.calendar-days button:hover{border-color:var(--color-primary)}.calendar-days button.is-today{border-color:var(--color-primary);color:var(--color-primary-dark);font-weight:700}.calendar-days button.is-selected{color:var(--color-white);background:var(--color-primary)}.calendar-days button i{background:var(--color-primary);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.calendar-days button.is-selected i{background:var(--color-white)}.calendar-today{color:var(--color-primary-dark);cursor:pointer;background:0 0;border:0;margin:1rem auto 0;padding:.45rem .8rem;font-size:.75rem;font-weight:700;display:block}.calendar-today:hover{color:var(--color-primary)}@media (width<=800px){.event-calendar{position:static}}.events-page{height:calc(100vh - var(--header-height) - var(--footer-height));margin-top:var(--header-height);margin-bottom:var(--footer-height);grid-template-rows:auto minmax(0,1fr);padding:clamp(1rem,2vw,1.6rem) 6vw;display:grid;overflow:hidden}.events-heading{max-width:760px;margin-bottom:.85rem}.events-heading>p{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .4rem;font-size:.72rem;font-weight:700}.events-heading span{color:var(--color-muted);font-size:.88rem;line-height:1.5;display:block}.events-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:clamp(1.25rem,3vw,2.5rem);min-height:0;display:grid}.events-list{overscroll-behavior:contain;scrollbar-gutter:stable;align-content:start;gap:.85rem;min-width:0;height:100%;min-height:0;padding-right:.65rem;display:grid;overflow:hidden auto}.events-list>*{width:min(100%,720px);margin-left:auto;margin-right:auto}.events-list::-webkit-scrollbar{width:6px}.events-list::-webkit-scrollbar-thumb{background:#1678ad61}.events-list-heading{border-bottom:1px solid #1678ad40;justify-content:space-between;align-items:center;padding-bottom:.55rem;display:flex}.events-list-heading h2{color:var(--color-primary-dark);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.8rem}.events-list-heading span{min-width:28px;height:28px;color:var(--color-white);background:var(--color-primary);border-radius:50%;place-items:center;font-size:.72rem;font-weight:700;display:grid}.church-event{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf8fdad;border:1px solid #1678ad3d;border-radius:8px;grid-template-columns:66px minmax(0,1fr);gap:1rem;padding:1rem;display:grid;box-shadow:0 10px 28px #0d4f7614}.event-date-tile{text-align:center;border:1px solid #1678ad52;border-radius:6px;align-self:start;display:grid;overflow:hidden}.event-date-tile span{color:var(--color-white);background:var(--color-primary);text-transform:uppercase;padding:.25rem;font-size:.6rem;font-weight:700}.event-date-tile strong{color:var(--color-primary-dark);background:#ffffff7a;padding:.35rem;font-family:Libre Caslon Display,Georgia,serif;font-size:1.65rem;font-weight:400;line-height:1}.event-content h3{color:var(--color-primary-dark);margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:1.35rem;font-weight:400}.event-range{color:var(--color-primary);align-items:center;gap:.4rem;margin:.45rem 0 0;font-size:.74rem;font-weight:700;display:flex}.event-range svg{flex:none;width:14px}.event-description{color:var(--color-text);white-space:pre-wrap;margin:.65rem 0 0;font-size:.86rem;line-height:1.5}.events-state{color:var(--color-muted);margin:1rem 0}.events-error{color:var(--color-danger)}@media (width<=800px){.events-page{padding:1.25rem}.events-heading{margin-bottom:.75rem}.events-layout{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}}.give-page{height:calc(100vh - var(--header-height) - var(--footer-height));margin-top:var(--header-height);margin-bottom:var(--footer-height);place-items:center;padding:clamp(2rem,5vw,4rem) 8vw;display:grid;overflow:hidden}.give-content{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#edf8fdb3;border:1px solid #1678ad47;border-radius:8px;width:min(100%,680px);padding:clamp(1.5rem,3vw,2.5rem);box-shadow:0 18px 46px #0d4f761f}.give-heading{color:var(--color-primary);align-items:center;gap:1rem;display:flex}.give-heading>svg{border:1px solid #1678ad4d;border-radius:50%;width:42px;height:42px;padding:.55rem}.give-heading p{letter-spacing:.14em;text-transform:uppercase;margin:0 0 .3rem;font-size:.7rem;font-weight:700}.give-heading h1{color:var(--color-primary-dark);margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:400;line-height:1}.give-intro{max-width:520px;color:var(--color-muted);margin:1rem 0 0;font-size:.9rem;line-height:1.6}.give-content blockquote{border-left:3px solid var(--color-primary);margin:1.5rem 0;padding:1.25rem 0 1.25rem 1.5rem}.give-content blockquote p{color:var(--color-text);margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.5}.give-content cite{color:var(--color-primary-dark);margin-top:.75rem;font-size:.8rem;font-style:normal;font-weight:700;display:block}.give-button{width:min(100%,330px);min-height:52px;color:var(--color-white);background:var(--color-primary-dark);border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.7rem 1rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s;display:grid}.give-button:hover{background:var(--color-primary);transform:translateY(-3px);box-shadow:0 12px 28px #0d4f7633}.give-button svg{width:19px}.give-button svg:last-child{justify-self:end}.give-state{color:var(--color-muted);margin:1.5rem 0}.give-error{color:var(--color-danger)}@media (width<=560px){.give-page{place-items:start center;padding:1.5rem 1.25rem;overflow-y:auto}.give-content{padding:1.25rem}}@media (prefers-reduced-motion:reduce){.give-button{transition:none}}.announcements-list{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:1.15rem;min-height:0;padding:0 .75rem 1.5rem 0;display:flex;overflow:hidden auto}.announcements-list::-webkit-scrollbar{width:6px}.announcements-list::-webkit-scrollbar-thumb{background:#1678ad61}.announcement-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf8fd03;border:1px solid #1678ad47;border-radius:18px;flex:none;align-self:center;gap:.7rem;width:min(100%,580px);padding:clamp(.75rem,1.2vw,1rem);transition:border-color .2s,box-shadow .2s,transform .2s;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 26px #0d4f761a}.announcement-item:hover{border-color:#1678ad6b;transform:translateY(-2px);box-shadow:0 22px 48px #0d4f762b}.announcement-item>h2{color:var(--color-primary);text-wrap:balance;margin:0;padding:0 .15rem;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.35rem,2vw,1.8rem);font-weight:400;line-height:1.08}.announcement-image-button{cursor:zoom-in;background:0 0;border:1px solid #1678ad2e;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.announcement-image-button img{aspect-ratio:16/9;object-fit:cover;width:100%;max-height:300px;transition:transform .35s;display:block}.announcement-image-button>svg{width:32px;height:32px;color:var(--color-white);opacity:0;background:#0d4f76d1;border-radius:50%;padding:.45rem;transition:opacity .2s,transform .2s;position:absolute;bottom:.65rem;right:.65rem;transform:translateY(5px)}.announcement-image-button:hover img{transform:scale(1.025)}.announcement-image-button:hover>svg,.announcement-image-button:focus-visible>svg{opacity:1;transform:translateY(0)}.announcement-image-button:focus-visible{outline-offset:2px;outline:3px solid #1678ad4d}.announcement-body{gap:.8rem;min-width:0;padding:0 .15rem .15rem;display:grid}.announcement-date{color:var(--color-primary-dark);border-bottom:1px solid #1678ad38;align-items:center;gap:.55rem;margin:0;padding-bottom:.85rem;font-size:.82rem;font-weight:700;display:flex}.announcement-date svg{width:15px}.announcement-date span{gap:.1rem;display:grid}.announcement-date small{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:700}.announcement-description{color:var(--color-text);white-space:pre-wrap;margin:0;font-size:.9rem;line-height:1.6}.announcement-body>a{border:1px solid var(--color-primary-dark);width:44px;height:44px;color:var(--color-primary-dark);background:#ffffff5c;justify-self:end;place-items:center;text-decoration:none;display:inline-grid}.announcement-body>a:hover{color:var(--color-white);background:var(--color-primary-dark)}.announcement-body>a svg{width:17px}.announcement-lightbox{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:zoom-out;background:#062639d1;place-items:center;padding:clamp(1rem,4vw,3rem);animation:.2s ease-out lightbox-fade-in;display:grid;position:fixed;inset:0}.announcement-lightbox>img{object-fit:contain;cursor:default;border:1px solid #ffffff6b;border-radius:8px;max-width:min(1180px,92vw);max-height:88vh;animation:.25s ease-out lightbox-image-in;box-shadow:0 28px 80px #00000061}.lightbox-close{z-index:1;width:44px;height:44px;color:var(--color-white);cursor:pointer;background:#0d4f76c2;border:1px solid #ffffff80;border-radius:50%;place-items:center;display:grid;position:fixed;top:1.25rem;right:1.25rem}.lightbox-close:hover{background:var(--color-primary)}.lightbox-close svg{width:22px}@keyframes lightbox-fade-in{0%{opacity:0}}@keyframes lightbox-image-in{0%{opacity:0;transform:scale(.94)}}@media (width<=430px){.announcement-item{grid-template-columns:1fr;gap:1rem}.announcement-image-button img{aspect-ratio:16/10;min-height:0}}@media (prefers-reduced-motion:reduce){.announcement-image-button img,.announcement-image-button>svg,.announcement-lightbox,.announcement-lightbox>img{transition:none;animation:none}}.daily-bible{align-content:start;gap:1.15rem;min-width:0;display:grid}.daily-bible-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#edf8fdb8;border:1px solid #1678ad47;border-radius:8px;padding:clamp(1rem,1.7vw,1.5rem);box-shadow:0 14px 32px #0d4f7617}.daily-bible-heading{color:var(--color-primary);align-items:flex-start;gap:.85rem;display:flex}.daily-bible-heading svg{flex:none;width:22px;height:22px;margin-top:.15rem}.daily-bible-heading p{color:var(--color-muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .2rem;font-size:.7rem;font-weight:700}.daily-bible-heading h2{margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.25rem,1.6vw,1.65rem);font-weight:400;line-height:1.1}.daily-reading-content{grid-template-columns:88px minmax(0,1fr);align-items:center;gap:1rem;margin-top:1rem;display:grid}.calendar-date{text-align:center;background:#ffffff8a;border:1px solid #1678ad57;border-radius:6px;display:grid;overflow:hidden}.calendar-date span{color:var(--color-white);background:var(--color-primary);text-transform:uppercase;padding:.3rem .4rem;font-size:.65rem;font-weight:700}.calendar-date strong{color:var(--color-primary-dark);padding:.4rem;font-family:Libre Caslon Display,Georgia,serif;font-size:2rem;font-weight:400;line-height:1}.daily-reading-content p{color:var(--color-text);margin:0;font-size:.92rem;line-height:1.5}.daily-verse blockquote{margin:1rem 0 0;padding-left:2.85rem}.daily-verse blockquote p{color:var(--color-text);margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.05rem,1.35vw,1.35rem);line-height:1.45}.daily-verse cite{color:var(--color-primary-dark);margin-top:1rem;font-size:.82rem;font-style:normal;font-weight:700;display:block}.daily-bible-state{color:var(--color-muted);margin:1.2rem 0 0 2.85rem;line-height:1.5}@media (width<=800px){.daily-verse blockquote{padding-left:0}.daily-bible-state{margin-left:0}}.home-page{height:calc(100vh - var(--header-height) - var(--footer-height));margin-top:var(--header-height);margin-bottom:var(--footer-height);grid-template-columns:minmax(0,3fr) minmax(360px,2fr);display:grid;overflow:hidden}.announcements-panel,.home-secondary{min-width:0;padding:clamp(2rem,5vw,5rem)}.announcements-panel{background:0 0;grid-template-rows:auto minmax(0,1fr);gap:1.25rem;display:grid;overflow:hidden}.home-secondary{border-left:1px solid #bdd8e7b8;grid-template-rows:auto minmax(0,1fr);gap:1.25rem;padding-left:clamp(1.5rem,3.5vw,3.5rem);padding-right:clamp(2rem,4vw,4rem);display:grid;overflow:hidden}.section-eyebrow{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.announcements-state{color:var(--color-muted);margin:2rem 0}.announcements-error{color:var(--color-danger)}.announcements-error p{margin:0 0 .85rem}.announcements-error button{border:1px solid var(--color-danger);min-height:40px;color:var(--color-danger);cursor:pointer;background:#ffffff9e;padding:.55rem .85rem;font-weight:700}.announcements-error button:hover{color:var(--color-white);background:var(--color-danger)}@media (width<=800px){.home-page{height:auto;min-height:calc(100vh - var(--header-height) - var(--footer-height));flex-direction:column;display:flex;overflow:visible}.announcements-panel,.home-secondary{padding:2rem 1.25rem}.home-secondary{border-bottom:1px solid #bdd8e7b8;border-left:0;order:1;overflow:visible}.announcements-panel{order:2;min-height:70vh;overflow:visible}.announcements-list{overflow:visible}}:root{--color-primary:#1678ad;--color-primary-dark:#0d4f76;--color-primary-soft:#d9f1fc;--color-primary-pale:#edf8fd;--color-surface:#f7fcff;--color-surface-glass:#f7fcffe6;--color-background-overlay:#eef8fdb3;--color-text:#102a3b;--color-muted:#587183;--color-border:#bdd8e7;--color-accent:#f0c45c;--color-white:#fff;--color-danger:#b42318;--header-height:82px;--footer-height:88px;color:var(--color-text);background:var(--color-surface);font-synthesis:none;text-rendering:optimizelegibility;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}@media (width<=800px){:root{--header-height:72px;--footer-height:104px}}
