/*
Theme Name: Φιλοθέη — Ο πολιτισμός μάς ενώνει
Theme URI: https://pasfilotheis.gr/
Author: Πολιτιστικός Σύλλογος Φιλοθέης
Description: Ελαφρύ ελληνικό θέμα με δυναμικές εκδηλώσεις, ανακοινώσεις, τμήματα, συνεργάτες και κάθετο ετήσιο timeline.
Version: 1.2.15
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pasfilotheis
*/
:root{--paper:#f8f9fc;--white:#fff;--ink:#172b4a;--green:#17498e;--muted:#52647d;--line:#d9e2ee;--wine:#2678c9;--pale:#edf3fc;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--wine);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.14;font-weight:500}h1,h2{font-family:var(--serif)}h1{font-size:clamp(2.4rem,5.2vw,5rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.3vw,3.2rem);letter-spacing:-.035em}h3{font-size:1.35rem}em{font-weight:400;color:var(--wine)}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.topbar{background:var(--green);color:white;font-size:.72rem;letter-spacing:.06em}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:34px}.socials{display:flex;gap:22px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:112px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand-name{display:block;line-height:1.3}.brand-name span{font-size:.6rem;font-weight:600;letter-spacing:.09em}.brand-name strong{display:block;font-family:var(--serif);font-size:2.1rem;font-weight:500;letter-spacing:-.025em}.custom-logo{width:65px;max-height:80px;object-fit:contain}.menu{list-style:none;display:flex;gap:18px;align-items:center;margin:0;padding:0;font-size:.76rem;font-weight:600}.menu>li{position:relative;display:flex;align-items:center}.menu a{display:block;padding:12px 0}.submenu-toggle{background:none;border:0;color:inherit;padding:8px 3px;font-size:.85rem}.sub-menu{display:none;position:absolute;top:100%;left:0;width:245px;background:var(--paper);box-shadow:0 12px 24px #172b4a20;list-style:none;margin:0;padding:12px 20px;border:1px solid var(--line);font-weight:400}.sub-menu a{padding:8px 0}.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu,.menu .submenu-open>.sub-menu{display:block}.menu-toggle{display:none;border:1px solid var(--green);padding:8px 14px;background:transparent;color:var(--ink)}.skip-link{position:absolute;top:-100px;left:15px;z-index:100;background:white;padding:10px}.skip-link:focus{top:8px}.hero{padding:62px 0 0}.hero-heading{display:grid;grid-template-columns:1.2fr 1fr;column-gap:70px;align-items:end}.eyebrow{font-size:.66rem;letter-spacing:.14em;font-weight:700;text-transform:uppercase;line-height:1.7}.hero-heading>.eyebrow{grid-column:1/-1;margin-bottom:20px}.hero h1{margin-bottom:34px;line-height:1.04;font-size:clamp(3.6rem,6.7vw,6.25rem)}.hero-aside{padding:0 0 38px;justify-self:end;font-size:.93rem}.text-link{font-size:.8rem;font-weight:650;display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link span{margin-left:15px}.hero-image{overflow:hidden;aspect-ratio:2.1;background:var(--pale)}.hero-image img{width:100%;height:100%;object-fit:cover}.photo-caption{display:flex;justify-content:space-between;font-size:.65rem;color:var(--muted);padding-top:12px;letter-spacing:.07em}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head h2{margin-bottom:0}.section-head>.text-link{white-space:nowrap}.section-head>p{font-size:.85rem;margin:0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.card{min-width:0;border-bottom:1px solid var(--line)}.card-picture:empty{display:none}.card-picture{display:block;overflow:hidden}.card-image{width:100%;aspect-ratio:1.5;object-fit:cover}.card-body{padding:24px 0}.card-body p:not(.eyebrow){color:var(--muted);font-size:.88rem}.card h3{margin-bottom:18px;line-height:1.4}.card .eyebrow{font-size:.62rem;color:var(--muted)}.event-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.event-cards .card-picture{background:var(--pale);padding:22px;display:flex;align-items:center;justify-content:center;min-height:160px}.event-cards .card-image{width:min(240px,100%);height:auto;aspect-ratio:auto;object-fit:contain}.upcoming{background:var(--pale);margin-top:60px}.empty{padding:28px 0;color:var(--muted);border-top:1px solid var(--line);font-size:.95rem}.departments{background:var(--green);color:white}.departments .section-head>p{color:#cadbf1}.department-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #ffffff45}.department{padding:30px 22px 12px;position:relative;border-right:1px solid #ffffff45}.department:first-child{padding-left:0}.department:last-child{border-right:0}.department-number{font-family:var(--serif);display:block;color:#b6d2f6;font-size:1.2rem;margin-bottom:60px}.department h3{font-family:var(--serif);font-size:1.65rem;line-height:1.24}.department p{font-size:.82rem;line-height:1.8;color:#dbe9fc}.department img{width:100%;aspect-ratio:1.5;object-fit:cover;margin-bottom:20px}.department-arrow{display:block;font-size:1.5rem;margin-top:22px}.about{border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.about h2{font-size:3.4rem}.lead{font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.65;letter-spacing:-.02em}.annual{padding-bottom:120px}.annual-heading{text-align:center;max-width:850px;margin:0 auto 75px}.annual-heading h2{font-size:clamp(2.5rem,4.5vw,4.2rem)}.annual-heading p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.timeline{position:relative;max-width:1080px;margin:auto}.timeline:before{content:'';position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--line)}.timeline-item{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;margin-bottom:62px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-item:before{content:'';position:absolute;left:calc(50% - 5px);top:50%;height:11px;width:11px;border-radius:50%;background:var(--green);box-shadow:0 0 0 7px var(--paper)}.timeline-photo{display:block;overflow:hidden}.timeline-photo img{width:100%;aspect-ratio:1.5;object-fit:cover}.timeline-copy h3{font-family:var(--serif);font-size:2rem}.timeline-copy .eyebrow{color:var(--wine)}.timeline-copy p{font-size:.87rem}.timeline-item:nth-child(even) .timeline-photo{grid-column:2;grid-row:1}.timeline-item:nth-child(even) .timeline-copy{grid-column:1;grid-row:1;text-align:right}.site-footer{background:#10294c;color:#f5f8ff;padding:65px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .6fr;gap:70px}.site-footer h2{font-size:2.7rem}.site-footer h3{font-size:.85rem;margin-bottom:24px}.site-footer p{font-size:.8rem;color:#c4d3e8}.site-footer a{display:block;font-size:.83rem;margin-bottom:9px}.footer-socials{display:flex;flex-wrap:wrap;gap:20px;margin-top:25px}.footer-bottom{border-top:1px solid #ffffff30;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.66rem}.footer-bottom a{font-size:.66rem}.page-heading{margin-bottom:45px;max-width:1000px}.page-heading h1{overflow-wrap:anywhere}.prose{max-width:800px;line-height:1.9;overflow-wrap:anywhere}.prose a{text-decoration:underline;text-underline-offset:3px}.prose h2,.prose h3{margin-top:1.7em}.prose table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.prose td,.prose th{padding:10px;border:1px solid var(--line)}.prose iframe{max-width:100%}.article{max-width:1050px}.article-image img{max-height:650px;object-fit:contain;margin-bottom:40px}.event-detail-image img{max-width:650px;max-height:none;height:auto;margin:0 auto 40px}.details{display:flex;gap:40px;flex-wrap:wrap;border-block:1px solid var(--line);padding:22px 0;margin:25px 0 40px}.details dt{font-weight:700;font-size:.75rem}.details dd{margin:0}.partners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.partner{padding:30px;background:white;border:1px solid var(--line)}.partner img{height:130px;width:100%;object-fit:contain;margin-bottom:25px}.partner h2{font-size:1.5rem}.contact-panel{background:var(--pale);padding:45px;max-width:900px}.contact-email{font-size:clamp(1rem,3vw,2rem);overflow-wrap:anywhere}.contact-panel h2{font-size:2.5rem}.button{display:inline-block;background:var(--green);color:white;padding:12px 22px}.pagination,.nav-links{display:flex;flex-wrap:wrap;gap:15px;margin-top:35px}.page-numbers{padding:5px 12px;border:1px solid var(--line)}.page-numbers.current{background:var(--green);color:white}
@media(min-width:1101px){.menu>li:last-child>.sub-menu,.menu>li:nth-last-child(2)>.sub-menu{left:auto;right:0}}
@media(max-width:1200px){.header-inner{gap:12px}.menu{gap:10px;font-size:.7rem}.brand-name strong{font-size:1.8rem}.brand-name span{font-size:.52rem}}
@media(max-width:1280px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:90px;flex-wrap:wrap}.menu-toggle{display:block}#primary-navigation{display:none;width:100%;padding-bottom:20px}#primary-navigation.is-open{display:block}.menu{display:block;font-size:.95rem}.menu>li{display:flex;flex-wrap:wrap;border-top:1px solid var(--line)}.menu>li>a{flex:1;padding:12px 0}.submenu-toggle{padding:12px 18px}.sub-menu{position:static;width:100%;box-shadow:none;border:0;background:var(--pale);padding:8px 18px}.menu li:hover>.sub-menu{display:none}.menu li:focus-within>.sub-menu,.menu .submenu-open>.sub-menu{display:block}.hero-heading{column-gap:30px}.hero-aside{font-size:.8rem}.department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.department{border-bottom:1px solid #ffffff45;padding:25px!important}.department:nth-child(even){border-right:0}.department-number{margin-bottom:35px}.footer-grid{gap:35px}.timeline-item{gap:65px}.hero h1{font-size:4.6rem}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.topbar .wrap{font-size:.6rem;gap:12px}.socials{gap:12px;font-size:.58rem}.header-inner{min-height:86px}.custom-logo{width:48px}.hero{padding-top:38px}.hero-heading{display:block}.hero h1{font-size:3.65rem;margin-bottom:24px}.hero-aside{padding:0 0 28px;font-size:.88rem}.hero-image{width:100%;aspect-ratio:2.1}.photo-caption{font-size:.55rem}.section{padding:55px 0}.section-head{display:block;margin-bottom:28px}.section-head>.text-link,.section-head>p{margin-top:20px}.cards,.event-cards{grid-template-columns:1fr;gap:28px}.event-cards .card-image{width:min(240px,100%)}.event-cards .card-picture{padding:18px}.department h3{font-size:1.45rem}.department{padding:25px 15px!important}.department p{font-size:.78rem}.department-number{margin-bottom:30px}.about-grid{grid-template-columns:1fr;gap:15px}.about h2{font-size:2.8rem}.annual-heading{text-align:left;margin-bottom:40px}.annual-heading h2{font-size:2.75rem}.annual-heading br:not(h2 br){display:none}.timeline:before{left:5px}.timeline-item{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding-left:30px;margin-bottom:40px}.timeline-item:before{left:0;top:20px}.timeline-copy h3{font-size:1.7rem;margin-bottom:0}.timeline-item:nth-child(even) .timeline-copy{text-align:left}.timeline-photo img{aspect-ratio:1.5}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-grid h2{font-size:2.6rem}.footer-bottom{flex-direction:column;gap:8px;margin-top:30px}.partners{grid-template-columns:1fr}.contact-panel{padding:25px}.page-heading h1{font-size:2.7rem}.event-detail-image img{width:100%}.details{gap:20px}.upcoming{margin-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.contact-map{margin-top:30px}.contact-map iframe{display:block;width:100%;height:400px;max-width:100%;border:0}@media(max-width:650px){.contact-map iframe{height:300px}}

.timeline-photo-pending{aspect-ratio:1.5;display:flex;align-items:center;justify-content:center;background:var(--pale);color:var(--muted);font-size:.8rem;text-align:center;padding:24px}

/* Keep Santa's face visible in the Christmas timeline photograph. */
.timeline-photo img[src*="14-christougenna"]{object-position:center top}

/* 1.1 — A blue editorial identity with individually coloured department art. */
.custom-logo{width:80px;height:80px;max-height:none;object-fit:contain;flex:none}
.footer-logo{margin-bottom:22px}.footer-logo .custom-logo{width:92px;height:92px}
.hero{background:linear-gradient(160deg,#f8f9fc 55%,#e8f1ff);padding-bottom:24px}
.hero-image{border-radius:4px}.hero h1 em{color:#286db9}
.news .cards:has(>.card:only-child){grid-template-columns:minmax(0,700px)}
.post-cards .card-picture{background:#eaf1fb}.post-cards .card-image{aspect-ratio:auto;max-height:400px;object-fit:contain}
.departments{background:#eaf1fb;color:var(--ink)}.departments .section-head>p{color:var(--muted)}
.department-grid{gap:20px;border:0}.department{display:flex;flex-direction:column;background:white;border:1px solid var(--line)!important;border-radius:8px;padding:0 0 25px!important;overflow:hidden;box-shadow:0 8px 24px #14346208}
.department-number{order:1;font-family:var(--sans);font-size:.65rem;letter-spacing:.12em;font-weight:700;color:var(--muted);margin:22px 22px 10px}
.department img{order:0;width:100%;aspect-ratio:1.5;object-fit:contain;margin:0;background:#fff}
.department h3{order:2;margin:0 22px 15px;font-size:1.5rem}.department p{order:3;margin:0 22px;color:var(--muted);font-size:.8rem}
.department-arrow{order:4;margin:20px 22px 0;color:var(--green)}.department:hover{transform:translateY(-3px);text-decoration:none;box-shadow:0 12px 30px #14346216}
.contact-phones{margin:20px 0}.contact-phones a{display:block;margin-bottom:10px;font-weight:600}.contact-phones span{display:block;font-size:.72rem;font-weight:400;color:inherit;opacity:.8}
.board-term{color:var(--muted);margin-bottom:35px}.board-list{margin:0}.board-list>div{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:25px}.board-list dt{font-size:.85rem;color:var(--muted)}.board-list dd{margin:0;font-weight:600;font-size:1.05rem}
.prose .sponsor-board{width:100%;height:auto}.timeline-full-image .timeline-photo img{aspect-ratio:auto;object-fit:contain;height:auto}
.partner img{aspect-ratio:auto}.partners{margin-top:36px}.partner h2{line-height:1.3}.partners .partner:nth-child(-n+2){border-top:4px solid var(--green)}
.details dd{max-width:540px}.prose table{display:table;width:100%;font-size:.9rem}.prose th{text-align:left;background:var(--pale)}
.department-list .card-image{object-fit:contain;aspect-ratio:1.5}.department-list .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.custom-logo{width:60px;height:60px}.brand-name strong{font-size:1.6rem}.brand-name span{font-size:.46rem}.department-grid{gap:12px}.department h3{font-size:1.25rem;margin-inline:14px}.department p{margin-inline:14px}.department-number{margin-inline:14px}.department-arrow{margin-inline:14px}.board-list>div{grid-template-columns:1fr;gap:6px}.prose table{font-size:.76rem}.prose td,.prose th{padding:8px 6px}.department-list .cards{grid-template-columns:1fr}}

.timeline-santa .timeline-photo img{object-position:center top}

/* 1.2 — Compact sticky navigation, readable Greek sans and nested event menu. */
:root{--sans:'Segoe UI',Arial,sans-serif;--serif:'Segoe UI',Arial,sans-serif}
body{font-family:var(--sans)}h1,h2,h3{font-family:var(--sans);font-weight:650;letter-spacing:-.025em}em{font-style:normal}
html{scroll-padding-top:96px}.site-header{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 3px 16px #10294c0a}
.admin-bar .site-header{top:32px}.header-inner{min-height:76px;gap:20px;width:min(1320px,calc(100% - 48px))}
.brand{gap:10px}.brand .custom-logo{width:52px;height:52px}.brand-name span{font-size:.57rem;letter-spacing:.065em}.brand-name strong{font-family:var(--sans);font-size:1.27rem;line-height:1.35;font-weight:700;letter-spacing:-.025em}
#primary-navigation{margin-left:auto}.menu{gap:16px;font-size:.8rem;font-weight:600}.menu a{padding:15px 0}.submenu-toggle{font-size:.82rem;padding:9px 4px;line-height:1}
.header-socials,.footer-socials{display:flex;align-items:center;gap:12px}.social-icon{display:inline-flex!important;align-items:center;justify-content:center;width:28px;height:30px;padding:3px;margin:0!important;color:inherit;border-radius:4px;flex:none;--social-play:#fff}.social-icon svg{display:block;width:21px;height:21px}.social-icon:hover{color:#2678c9;text-decoration:none}.footer-socials .social-icon{--social-play:#10294c}
.header-socials{color:#17498e}.site-footer .footer-socials{gap:16px}.contact-panel .footer-socials{gap:16px}
.sub-menu{width:258px;background:#fff;padding:8px 14px;border-radius:4px;box-shadow:0 10px 28px #172b4a20}
.sub-menu li{position:relative;display:flex;align-items:center}.sub-menu li>a{flex:1;padding:10px 4px;line-height:1.45}.sub-menu .submenu-toggle{flex:none;padding:12px 4px}.sub-menu .sub-menu{top:-9px;left:100%;right:auto;margin-left:13px}
.sub-menu .sub-menu:before{content:'';position:absolute;width:15px;left:-15px;top:0;bottom:0}
.sub-menu li:hover>.sub-menu,.sub-menu li:focus-within>.sub-menu,.sub-menu .submenu-open>.sub-menu{display:block}
.hero h1{font-size:clamp(2.8rem,5vw,4.8rem);font-weight:700;letter-spacing:-.045em;line-height:1.12}.hero-heading>.eyebrow{margin-bottom:16px}.hero{padding-top:42px}.section h2{font-weight:650}.annual-heading h2{font-size:clamp(2.3rem,4vw,3.6rem)}.timeline-copy h3{font-size:1.65rem;line-height:1.3;margin-bottom:14px;font-weight:650}.timeline-copy p:not(.eyebrow){font-size:.92rem;line-height:1.8;color:var(--muted);margin-bottom:0}.timeline-copy .eyebrow:empty{display:none}
.department h3{font-family:var(--sans);font-size:1.35rem;font-weight:650}.site-footer h2{font-weight:650;font-size:2.2rem}.about h2{font-size:2.7rem}.lead{font-size:1.35rem}
@media(min-width:1101px){.menu>li:nth-last-child(-n+3) .sub-menu .sub-menu{left:auto;right:100%;margin-left:0;margin-right:13px}.menu>li:nth-last-child(-n+3) .sub-menu .sub-menu:before{left:auto;right:-15px}}
@media(max-width:1200px) and (min-width:1101px){.header-inner{gap:12px}.menu{gap:10px;font-size:.75rem}.header-socials{gap:6px}.brand-name strong{font-size:1.15rem}.brand-name span{font-size:.51rem}.brand .custom-logo{width:46px;height:46px}}
@media(max-width:1280px){.header-inner{display:grid;grid-template-columns:1fr auto auto;gap:14px;min-height:70px;padding-block:8px}.menu-toggle{grid-column:3;grid-row:1;padding:7px 10px;font-size:.82rem}.header-socials{grid-column:2;grid-row:1;gap:6px}#primary-navigation{grid-column:1/-1;grid-row:2;margin:0;max-height:calc(100dvh - 110px);overflow-y:auto;padding-bottom:8px}.menu{font-size:.92rem}.menu>li{display:flex}.sub-menu{background:#f1f5fc;border-radius:0;box-shadow:none;padding:5px 14px}.sub-menu li{flex-wrap:wrap}.sub-menu .sub-menu{position:static;margin:0;width:100%;padding-left:20px;background:#e7eef9}.sub-menu .sub-menu:before{display:none}.sub-menu li:hover>.sub-menu{display:none}.sub-menu li:focus-within>.sub-menu,.sub-menu .submenu-open>.sub-menu{display:block}.brand-name strong{font-size:1.2rem}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}.header-inner{width:calc(100% - 28px);gap:8px}.brand .custom-logo{width:44px;height:44px}.brand-name span{font-size:.44rem}.brand-name strong{font-size:1.05rem}.brand{gap:7px}.header-socials{gap:2px}.header-socials .social-icon{width:23px;height:28px}.header-socials svg{width:18px;height:18px}.menu-toggle{font-size:.75rem;padding:7px}.hero{padding-top:30px}.hero h1{font-size:2.9rem}.timeline-copy h3{font-size:1.45rem}.timeline-copy p:not(.eyebrow){font-size:.88rem}.department h3{font-size:1.15rem}.lead{font-size:1.15rem}.page-heading h1{font-size:2.2rem}}
@media(max-width:360px){.brand-name strong{font-size:.95rem}.brand .custom-logo{width:38px;height:38px}.header-socials .social-icon{width:20px}.header-inner{gap:6px}}
@media(max-width:1280px){.menu li:focus-within>.sub-menu{display:none}.menu .submenu-open>.sub-menu{display:block}}

/* 1.2.1 — Deep blue header with clear white navigation and social marks. */
.site-header{background:#153f78;color:#fff;border-bottom:1px solid #ffffff24;box-shadow:0 3px 16px #10294c20}
.header-socials{color:#fff}.header-socials .social-icon{--social-play:#153f78}.header-socials .social-icon:hover{color:#c4e2ff}
.menu-toggle{color:#fff;border-color:#ffffff70}.sub-menu{color:var(--ink)}
.site-header a:focus-visible,.site-header button:focus-visible{outline-color:#bfe1ff}
@media(max-width:1280px){.menu>li{border-top-color:#ffffff35}.menu .sub-menu{color:var(--ink)}.menu .sub-menu li{border-color:var(--line)}}

/* Preview 1.2.9 — Stage photograph above the sticky navigation. */
.home-masthead{position:relative;isolation:isolate;background:#07172d;color:#fff;min-height:480px;height:clamp(480px,37vw,620px);overflow:hidden}
.masthead-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 48%}
.home-masthead:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,23,46,.86),rgba(5,23,46,.57) 32%,rgba(5,23,46,.16) 70%),linear-gradient(180deg,rgba(5,23,46,.5),transparent 55%);pointer-events:none}
.masthead-brand-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:23px;border-bottom:1px solid #ffffff30}
.masthead-brand-row .brand-name span{font-size:.62rem;letter-spacing:.04em}.masthead-brand-row .brand-name strong{font-size:1.8rem;font-weight:650}.masthead-brand-row .custom-logo{width:74px;height:74px;object-fit:contain}.masthead-brand-row .header-socials{margin:0;gap:17px}
.masthead-copy{padding-top:48px;padding-bottom:30px}.masthead-copy h1{font-size:clamp(2.6rem,4vw,4rem);font-weight:650;line-height:1.1;letter-spacing:-.035em;margin:0 0 20px;color:#fff}.masthead-copy p{font-size:1rem;line-height:1.75;margin-bottom:22px;color:#eff5ff}.masthead-link{display:inline-flex;gap:28px;align-items:center;border-bottom:1px solid #ffffff70;padding-bottom:6px;font-size:.87rem;font-weight:650}.masthead-link:hover{text-decoration:none;border-color:#fff}
.home .site-header .brand-name{display:none}.home .site-header .header-inner{min-height:64px;justify-content:space-between}.home .site-header #primary-navigation{margin:0}.home .site-header .menu{gap:20px;font-size:.82rem}
@media(max-width:1280px){.home .site-header .header-inner{display:grid;grid-template-columns:1fr auto auto;gap:12px}.home .site-header .menu-toggle{display:block}.home .site-header #primary-navigation{flex-basis:100%}.home .site-header .menu{font-size:.92rem}.masthead-brand-row .brand-name strong{font-size:1.4rem}.masthead-copy{padding-top:44px}}
@media(max-width:650px){.home-masthead{height:auto;min-height:510px}.masthead-photo{object-position:57% center}.home-masthead:after{background:linear-gradient(90deg,rgba(5,23,46,.86),rgba(5,23,46,.46)),linear-gradient(180deg,rgba(5,23,46,.2),transparent)}.masthead-brand-row{padding-block:18px;gap:10px}.masthead-brand-row .custom-logo{width:53px;height:53px}.masthead-brand-row .brand-name strong{font-size:1.15rem}.masthead-brand-row .brand-name span{font-size:.46rem}.masthead-brand-row .header-socials{gap:6px}.masthead-copy{padding-top:62px;padding-bottom:36px}.masthead-copy h1{font-size:2.7rem}.masthead-copy p{font-size:.9rem}.home .site-header .header-inner{min-height:56px}}

/* 1.2.10 — Slightly deeper, continuous shadow across the upper stage. */
.home-masthead:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 12%,rgba(0,0,0,.17) 27%,rgba(0,0,0,.17) 42%,transparent 65%)}

/* 1.2.11 — Association name and larger navigation lettering. */
.home .site-header .brand-name{display:block}.home .site-header .brand-name span{font-size:.57rem;letter-spacing:.035em}.home .site-header .brand-name strong{font-size:1.35rem;font-weight:650}.home .site-header .header-inner{width:min(1640px,calc(100% - 48px));gap:20px;min-height:70px}.home .site-header .menu{font-size:.95rem;gap:18px}
@media(max-width:1280px){.home .site-header .header-inner{gap:12px}.home .site-header .menu{font-size:1rem}}
@media(max-width:600px){.home .site-header .header-inner{width:calc(100% - 28px);gap:8px;min-height:62px}.home .site-header .brand-name span{font-size:.44rem}.home .site-header .brand-name strong{font-size:1.05rem}.home .site-header .menu{font-size:.98rem}}
@media(max-width:360px){.home .site-header .brand-name strong{font-size:.95rem}}

/* 1.2.12 — Small left adjustment of desktop navigation. */
@media(min-width:1281px){.home .site-header #primary-navigation{position:relative;left:-24px}}

/* 1.2.13 — A further small increase in navigation text. */
.home .site-header .menu{font-size:1.02rem}
@media(max-width:1280px){.home .site-header .menu{font-size:1.06rem}}

/* 1.2.14 — Warm neutral surfaces and restrained gold details around the blue identity. */
:root{--paper:#fbfaf7;--line:#e1e1da;--pale:#f0f3f7;--accent:#d2bd87;--accent-ink:#796239}
.site-header{background:linear-gradient(105deg,#14376a,#1b4777);border-bottom:2px solid #b9a374}
.header-socials .social-icon{--social-play:#173e70}.header-socials .social-icon:hover{color:var(--accent)}
.masthead-link{border-bottom-color:var(--accent)}.masthead-link span{color:var(--accent)}
.news{background:var(--paper)}.about{background:#f2eee6}.departments{background:#eef2f6}.annual{background:#fff}
.section-head .eyebrow,.about .eyebrow,.annual-heading .eyebrow,.timeline-copy .eyebrow{color:var(--accent-ink)}
.department-arrow{color:var(--accent-ink)}.card{border-bottom-color:#c8b68e}.department{box-shadow:0 7px 22px #263b4a07}
.timeline:before{background:#ded9ce}.timeline-item:before{background:#ad9360;box-shadow:0 0 0 7px #fff}
.site-footer{border-top:2px solid #b9a374}.site-footer .social-icon:hover{color:var(--accent)}

/* 1.2.15 — Bound event poster space independently of uploaded image dimensions. */
.event-cards{align-items:start}
.event-cards .card{min-width:0;align-self:start}
.event-cards .card-picture{display:flex;align-items:center;justify-content:center;height:456px;min-height:0;max-height:456px;padding:18px;aspect-ratio:auto;overflow:hidden}
.event-cards .card-picture .card-image{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;aspect-ratio:auto;object-fit:contain;contain-intrinsic-size:none;margin:0}
.event-cards .card-body{padding-top:20px}.event-cards .card-body h3{margin-bottom:16px}
@media(max-width:650px){.event-cards .card-picture{height:416px;max-height:416px;padding:12px}}
