/*
Theme Name: XAVO Institute
Theme URI: https://xavo.institute/
Author: XAVO Institute
Description: Custom institutional WordPress theme for XAVO Institute. Editorial, research-led architecture with XAVO Index and Research Library.
Version: 1.7
License: GPL-2.0-or-later
Text Domain: xavo
*/
:root{--navy:#07131F;--charcoal:#0B1118;--ivory:#F3F1EC;--white:#FAF9F5;--gold:#C49A45;--light-gold:#E0BD70;--gray:#747A80;--line:rgba(7,19,31,.16);--dark-line:rgba(243,241,236,.18);--max:1320px;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--navy);font-family:var(--sans);line-height:1.6}body.admin-bar .site-header{top:32px}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.screen-reader-text,.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:16px;top:-60px;background:var(--gold);color:var(--charcoal);padding:10px 14px;z-index:100}.skip-link:focus{top:16px}.site-header{position:relative;z-index:20;background:var(--charcoal);color:var(--white);border-bottom:1px solid rgba(255,255,255,.1)}.header-inner{min-height:90px;display:flex;align-items:center;gap:34px}.brand{display:inline-flex;flex-direction:column;line-height:.88;letter-spacing:.08em;margin-right:auto}.brand .custom-logo{max-height:58px;width:auto}.brand-word{font-family:var(--serif);font-size:38px;letter-spacing:.12em}.brand-sub{font-size:10px;letter-spacing:.42em;color:var(--light-gold);margin-top:8px}.primary-nav ul{display:flex;gap:31px;list-style:none;margin:0;padding:0}.primary-nav a{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#e9e7e1}.primary-nav a:hover,.primary-nav .current-menu-item>a{color:var(--light-gold)}.menu-toggle{display:none;background:none;border:1px solid var(--dark-line);color:var(--white);padding:8px 10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 20px;border:1px solid var(--gold);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700}.button-primary{background:var(--gold);color:var(--charcoal)}.button-ghost{border-color:rgba(255,255,255,.45);color:var(--white)}.button::after{content:'→';font-size:16px}.button:hover{filter:brightness(1.05)}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:700}.serif{font-family:var(--serif)}.page-hero{background:var(--navy);color:var(--white);padding:82px 0 70px;border-bottom:1px solid rgba(255,255,255,.08)}.page-hero h1{font-family:var(--serif);font-size:clamp(48px,6vw,88px);line-height:.98;font-weight:400;max-width:900px;margin:18px 0}.page-hero p{max-width:720px;color:#c9cbd0;font-size:17px}.section{padding:72px 0}.section-dark{background:var(--navy);color:var(--white)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.section-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4vw,54px);margin:0;line-height:1}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.home-hero{position:relative;overflow:hidden;background:var(--charcoal);color:var(--white);min-height:520px}.hero-field{position:absolute;inset:0;background:radial-gradient(circle at 72% 46%,rgba(72,102,127,.42),transparent 30%),radial-gradient(circle at 80% 54%,rgba(196,154,69,.08),transparent 24%),linear-gradient(110deg,rgba(7,19,31,1) 0%,rgba(7,19,31,.94) 38%,rgba(7,19,31,.45) 65%,rgba(7,19,31,.76) 100%)}.hero-field:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;right:-80px;top:-120px;border:1px solid rgba(224,189,112,.16);box-shadow:0 0 0 80px rgba(224,189,112,.02),0 0 0 160px rgba(224,189,112,.015)}.hero-field:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(224,189,112,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(224,189,112,.07) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,transparent 20%,black 58%,transparent 100%);opacity:.35}.home-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:80px;align-items:center;min-height:520px;padding:70px 0}.hero-copy h1{font-family:var(--serif);font-size:clamp(52px,6vw,84px);font-weight:400;line-height:.98;max-width:780px;margin:17px 0}.hero-copy p{font-size:17px;max-width:600px;color:#d3d5d7}.hero-rule{width:82px;height:2px;background:var(--gold);margin:22px 0}.outlook-panel{border-top:1px solid rgba(196,154,69,.75);border-bottom:1px solid rgba(255,255,255,.15);padding:20px 18px 8px;background:rgba(7,19,31,.46);backdrop-filter:blur(2px)}.outlook-panel ul{list-style:none;margin:18px 0 12px;padding:0}.outlook-panel li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:13px}.outlook-panel li strong{color:var(--light-gold);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.outlook-panel>a{display:flex;justify-content:space-between;padding:14px 0;color:#eee;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.outlook-note{font-size:11px;color:#9ea5aa;margin:8px 0 0}.entry-strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:var(--white)}.entry-cell{min-height:200px;padding:28px 30px;border-right:1px solid rgba(255,255,255,.16);display:flex;gap:18px}.entry-cell:last-child{border-right:0}.entry-icon{font-family:var(--serif);font-size:25px;color:var(--gold)}.entry-cell h2{font-family:var(--serif);font-weight:400;font-size:20px;line-height:1.18;margin:10px 0 18px}.entry-cell a{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--light-gold)}.latest-section{background:var(--white)}.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line)}.publication-card{background:var(--ivory);padding:28px;min-height:300px;display:flex;flex-direction:column}.publication-card:hover{background:#fff}.publication-card .card-image{margin:-28px -28px 24px;overflow:hidden}.publication-card .card-image img{width:100%;height:220px;object-fit:cover;filter:saturate(.55)}.publication-card .type{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700}.publication-card h2{font-family:var(--serif);font-size:28px;line-height:1.08;font-weight:400;margin:14px 0}.publication-card p{color:#5f6468;font-size:14px;margin:0 0 18px}.meta{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6c7175;margin-top:auto}.meta span+span{border-left:1px solid #c5c4be;padding-left:14px}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.tag{font-size:9px;text-transform:uppercase;letter-spacing:.09em;padding:5px 7px;border:1px solid #c8c5bd}.think-section{padding:80px 0}.think-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.think-grid h2{font-family:var(--serif);font-weight:400;font-size:clamp(38px,5vw,65px);line-height:1.02;margin:15px 0}.think-grid p{font-size:17px;color:#c4c8cb;max-width:620px}.single-publication{padding:80px 0}.single-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px}.publication-header h1{font-family:var(--serif);font-size:clamp(48px,6vw,82px);font-weight:400;line-height:1;margin:15px 0 25px}.publication-dek{font-size:20px;color:#555b60;max-width:800px}.publication-aside{border-left:1px solid var(--line);padding-left:28px}.aside-label{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold);font-weight:700}.aside-block{padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.aside-block:last-child{border-bottom:0}.aside-value{font-family:var(--serif);font-size:18px;margin-top:5px}.publication-body{margin-top:60px;max-width:820px}.publication-body h2{font-family:var(--serif);font-weight:400;font-size:34px;margin:48px 0 16px}.publication-body p,.publication-body li{font-family:var(--serif);font-size:18px;line-height:1.75;color:#252b30}.publication-body ul{padding-left:24px}.publication-body .rich-text p{margin:0 0 18px}.citation-box{background:#fff;border:1px solid var(--line);padding:24px;margin-top:44px;font-size:13px}.related-section{margin-top:60px;padding-top:35px;border-top:1px solid var(--line)}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);margin-top:16px}.related-item{background:#fff;padding:22px;display:block}.related-item span{display:block;color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.related-item strong{font-family:var(--serif);font-size:20px;font-weight:400;display:block;margin-top:7px}.forecast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-bottom:40px}.forecast-grid>div{background:#fff;padding:18px}.forecast-grid span{display:block;color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.forecast-grid strong{font-family:var(--serif);font-size:20px;font-weight:400}.narrow-content{max-width:900px}.library-toolbar{background:#fff;border:1px solid var(--line);padding:22px;display:grid;grid-template-columns:minmax(240px,1.7fr) repeat(2,minmax(170px,1fr)) auto;gap:12px;margin-bottom:36px}.field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:7px;color:#535a60}.field input,.field select{width:100%;height:46px;border:1px solid #c9c9c4;background:var(--white);padding:0 12px;color:var(--navy)}.field input:focus,.field select:focus{outline:2px solid var(--gold);outline-offset:1px}.clear-button{height:46px;border:1px solid var(--navy);background:var(--navy);color:var(--white);padding:0 18px;cursor:pointer;text-transform:uppercase;font-size:10px;letter-spacing:.1em}.archive-pagination{margin-top:34px}.archive-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.archive-pagination a,.archive-pagination span{border:1px solid #c6c4bd;padding:8px 11px;font-size:11px}.archive-pagination .current{background:var(--navy);color:var(--white);border-color:var(--navy)}.index-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}.index-intro h1{font-family:var(--serif);font-weight:400;font-size:clamp(54px,7vw,98px);line-height:.93;margin:14px 0}.index-intro p{font-size:18px;color:#bfc4c8;max-width:580px}.index-shell{background:var(--ivory);color:var(--navy);padding:70px 0}.index-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.index-filter{border:1px solid #aaa79e;background:transparent;padding:10px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.index-filter.is-active,.index-filter:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.index-map{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.index-panel{background:#fff;padding:30px}.index-panel h2{font-family:var(--serif);font-size:30px;font-weight:400;margin:0 0 20px}.index-list{display:flex;flex-wrap:wrap;gap:9px}.index-node{display:inline-flex;align-items:center;border:1px solid #c6c4bd;background:#fff;padding:9px 11px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;transition:.15s;cursor:pointer}.index-node:hover,.index-node.is-selected{border-color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold)}.index-results{margin-top:40px}.index-results-head{display:flex;justify-content:space-between;gap:20px;align-items:end}.index-results-head h2{font-family:var(--serif);font-weight:400;font-size:38px;margin:0}.index-result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);margin-top:18px}.index-result{background:#fff;padding:24px}.index-result h3{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.1;margin:10px 0}.index-result p{font-size:13px;color:#5d6266}.empty-state{padding:50px;text-align:center;background:#fff;border:1px solid var(--line);color:#666}.notice{padding:14px 16px;border-left:2px solid var(--gold);background:rgba(196,154,69,.08);font-size:12px;color:#555;margin:20px 0}.site-footer{background:var(--charcoal);color:var(--white);padding:50px 0 0}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.footer-title{font-family:var(--serif);font-size:24px}.site-footer p,.site-footer li{color:#aeb4b9;font-size:13px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:6px 0}.site-footer a:hover{color:var(--light-gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding:18px 0;color:#777f85;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1050px){.primary-nav{display:none}.menu-toggle{display:block}.header-inner{min-height:76px}.primary-nav.is-open{display:block;position:absolute;top:76px;left:0;right:0;background:var(--charcoal);padding:20px}.primary-nav.is-open ul{display:grid;gap:16px}.entry-strip{grid-template-columns:repeat(2,1fr)}.entry-cell:nth-child(2){border-right:0}.entry-cell{border-bottom:1px solid rgba(255,255,255,.16)}.library-toolbar{grid-template-columns:1fr 1fr}.clear-button{grid-column:1/-1}.library-grid{grid-template-columns:repeat(2,1fr)}.single-grid{grid-template-columns:1fr}.publication-aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.index-intro,.index-map{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.home-hero-grid{grid-template-columns:1fr}.outlook-panel{max-width:600px}.think-grid{grid-template-columns:1fr;gap:30px}.forecast-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:min(calc(100% - 34px),var(--max))}.brand-word{font-size:31px}.home-hero-grid{padding:54px 0}.hero-copy h1{font-size:50px}.page-hero{padding:55px 0}.section{padding:54px 0}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:15px}.entry-strip,.library-grid,.index-result-grid,.related-grid{grid-template-columns:1fr}.entry-cell{border-right:0}.library-toolbar{grid-template-columns:1fr}.clear-button{grid-column:auto}.publication-card{min-height:270px}.single-publication{padding:55px 0}.publication-header h1{font-size:50px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:4px 0}.index-results-head{display:block}.index-results-head .field{margin-top:18px}.forecast-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.index-node{transition:none}}

/* v1.4 production refinements */
.publication-card h2 a:hover,.index-result h3 a:hover{color:var(--gold)}
.index-controls{margin-bottom:28px}.index-type-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.index-query-grid{display:grid;grid-template-columns:minmax(240px,1.7fr) minmax(180px,1fr) minmax(180px,1fr) auto auto;gap:12px;align-items:end}.clear-link{height:46px;display:inline-flex;align-items:center;padding:0 10px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#5b6065}.clear-link:hover{color:var(--gold)}.index-state{margin:0;color:#747a80;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.index-result-grid{grid-template-columns:repeat(3,1fr)}.index-result{min-height:260px;display:flex;flex-direction:column}.index-result .meta{margin-top:auto}.dispatch-strip{background:var(--charcoal);color:var(--white);border-top:1px solid rgba(255,255,255,.12);padding:34px 0}.dispatch-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.dispatch-grid h2{font-family:var(--serif);font-size:34px;font-weight:400;margin:8px 0}.dispatch-grid p{margin:0 0 8px;color:#bcc1c5}.dispatch-status{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--light-gold)}.index-preview{background:#fff}.index-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.index-preview-grid>div{background:var(--ivory);padding:28px}.index-preview-grid strong{font-family:var(--serif);font-size:23px;font-weight:400}.index-preview-grid p{color:#5f6468;font-size:13px}.archive-pagination ul{display:flex;gap:7px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.archive-pagination a,.archive-pagination span{display:inline-flex;align-items:center;min-height:36px}.archive-pagination .page-numbers{background:#fff}.archive-pagination .current{background:var(--navy);color:#fff}.copy-citation{border:1px solid var(--navy);background:var(--navy);color:#fff;padding:10px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.copy-citation:hover{background:var(--gold);color:var(--charcoal);border-color:var(--gold)}.rich-text a{color:var(--gold);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.publication-body section+section{margin-top:42px}.publication-body section h2{margin-top:0}.publication-body .rich-text p:last-child{margin-bottom:0}
@media(max-width:1050px){.index-query-grid{grid-template-columns:1fr 1fr}.index-query-grid .field:first-child{grid-column:1/-1}.index-query-grid .clear-button{grid-column:auto}.index-result-grid{grid-template-columns:repeat(2,1fr)}.dispatch-grid,.index-preview-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.index-query-grid{grid-template-columns:1fr}.index-query-grid .field:first-child{grid-column:auto}.index-query-grid .clear-button{grid-column:auto}.index-result-grid,.dispatch-grid,.index-preview-grid{grid-template-columns:1fr}.index-state{margin-top:8px}.index-result{min-height:0}.brand .custom-logo{max-height:48px}}

/* Contact */
.contact-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:70px;align-items:start}.contact-layout .field{margin-bottom:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.xavo-contact-form textarea{width:100%;border:1px solid #c9c9c4;background:var(--white);padding:14px;color:var(--navy);resize:vertical}.xavo-contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.form-notice{padding:18px 20px;margin-bottom:26px;border-left:2px solid var(--gold);background:rgba(196,154,69,.08);font-size:13px}.form-error{border-left-color:#7a2d2d;background:rgba(122,45,45,.07)}.contact-aside{border-left:1px solid var(--line);padding-left:30px}.contact-aside h2{font-family:var(--serif);font-weight:400;font-size:32px;margin:10px 0 16px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.contact-aside{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.form-grid{grid-template-columns:1fr}}


/* v1.6 institutional/about refinements */
.about-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:70px;align-items:start}.about-copy{font-size:17px;line-height:1.8}.about-copy section{margin-top:48px}.about-copy h2{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.1}.about-aside{border-left:1px solid var(--line);padding-left:30px}.about-aside .aside-block{margin-bottom:28px}@media(max-width:900px){.about-grid{grid-template-columns:1fr}.about-aside{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}}
