:root{--orange:#e76503;--orange-l:#fca43c;--tan:#d3c587;--blue:#174fb7;--blue-d:#213143;--plum:#9b0062;--plum-d:#76004a;--cream:#f5f1ec;--offwhite:#fcfcfc;--charcoal:#453f39;--grey:#726d67;--text:#343a40;--sans-w:'Montserrat','Helvetica Neue',Arial,sans-serif;--serif:'EB Garamond',Garamond,'Times New Roman',serif;--sans:'Figtree','Helvetica Neue',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.55;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--orange);text-decoration:none}a:hover{color:var(--orange-l);text-decoration:underline}
:focus-visible{outline:3px dotted var(--tan);outline-offset:4px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 16px;z-index:99}
.wrap{max-width:1340px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.sec{margin-top:clamp(56px,7vw,96px);margin-bottom:clamp(56px,7vw,96px)}
.center{text-align:center;margin-top:48px}
.eyebrow{margin:0 0 12px;font-family:var(--sans-w);font-weight:600;font-size:14px;letter-spacing:1.6px;text-transform:uppercase;color:var(--charcoal)}
.h-serif{margin:0 0 20px;font-family:var(--serif);font-weight:500;font-size:clamp(28px,3vw,38px);line-height:1.2;color:var(--charcoal);text-wrap:balance}
.lead{font-family:var(--serif);font-size:clamp(24px,2.6vw,34px);line-height:1.3;color:var(--charcoal);text-wrap:pretty}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:30px;background:var(--orange);color:#fff;font-family:var(--sans-w);font-weight:700;font-size:15px;letter-spacing:1.2px;text-transform:uppercase;padding:12px 28px 14px;line-height:20px;transition:background-color .15s linear,color .15s linear;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--blue);color:#fff;text-decoration:none}
.btn-sm{font-size:13px;padding:8px 22px}
.btn.on{background:var(--blue)}
.link-arrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans-w);font-weight:700;font-size:15px;letter-spacing:1.2px;text-transform:uppercase;color:var(--charcoal);padding-bottom:4px;text-decoration:none}
.link-arrow::after{content:"";width:32px;height:6px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32.5 5.333'%3E%3Cline x1='0' y1='2.667' x2='30' y2='2.667' stroke='black' stroke-width='1'/%3E%3Cpath d='M28.5 0 32.5 2.667 28.5 5.333Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32.5 5.333'%3E%3Cline x1='0' y1='2.667' x2='30' y2='2.667' stroke='black' stroke-width='1'/%3E%3Cpath d='M28.5 0 32.5 2.667 28.5 5.333Z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .15s linear}
a:hover .link-arrow::after,.link-arrow:hover::after{transform:translateX(6px)}
.link-arrow:hover{color:var(--orange);text-decoration:none}
.btns{display:flex;flex-wrap:wrap;gap:28px;align-items:center}
/* header */
.hdr{background:var(--offwhite);border-bottom:2px solid var(--cream);position:sticky;top:0;z-index:20}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:14px;padding-bottom:14px}
.brand img{height:64px;width:auto}
.nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px)}
.nav-a{position:relative;white-space:nowrap;font-family:var(--sans-w);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--charcoal);text-decoration:none;padding:6px 0}
.nav-a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--orange);opacity:0;transition:opacity .075s linear}
.nav-a:hover,.nav-a.on{color:var(--charcoal);text-decoration:none}.nav-a:hover::after,.nav-a.on::after{opacity:1}
.navt,.burger{display:none}
@media (max-width:940px){
.brand img{height:52px}
.burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:10px;margin-right:-10px}
.burger span{width:26px;height:2px;background:var(--charcoal)}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--offwhite);flex-direction:column;align-items:flex-start;gap:0;padding:8px clamp(20px,4vw,40px) 28px;border-bottom:2px solid var(--cream)}
.nav-a{padding:14px 0;width:100%;border-bottom:1px solid #e1e1e0}
.nav .btn{margin-top:20px}
.navt:checked~.nav{display:flex}
}
/* home hero */
.hero{position:relative;background:var(--cream)}
.hero-img{height:clamp(380px,62vh,680px);overflow:hidden}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.hero-card{position:relative;margin-top:-140px;background:var(--cream);max-width:720px;padding:clamp(28px,4vw,52px) clamp(24px,4vw,56px) clamp(36px,4vw,56px);z-index:2}
.hero-card::before{content:"";position:absolute;left:0;top:0;width:96px;height:2px;background:var(--orange)}
.hero-card h1{margin:0 0 32px;font-family:var(--sans-w);font-weight:500;font-size:clamp(32px,4.4vw,58px);line-height:1.08;letter-spacing:1.5px;text-transform:uppercase;color:var(--charcoal);text-wrap:balance}
.hero+.intro{margin-top:clamp(48px,6vw,80px)}
.intro{max-width:1000px;text-align:center}
.intro .lead{margin:0}
/* stats */
.stats{background:var(--orange);color:#fff}
.stats-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:44px;padding-bottom:44px;text-align:center}
.stats strong{display:block;font-family:var(--sans-w);font-weight:600;font-size:clamp(36px,4vw,52px);line-height:1}
.stats span{display:block;margin-top:10px;font-weight:500;font-size:16px;letter-spacing:.4px}
.stats-in>div+div{border-left:1px solid rgba(255,255,255,.45)}
/* split */
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,96px);align-items:center}
.split-txt p{margin:0 0 28px;font-size:18px;line-height:1.55}
.split-img{position:relative;padding:48px 0 0 0;max-width:480px;justify-self:end;width:100%}
.split-bg{position:absolute;top:0;right:0;width:78%;height:calc(100% - 48px);background:url(../assets/marble.jpeg) center/cover}
.split-dot{position:absolute;right:-28px;top:52%;width:84px;height:84px;border-radius:50%;background:var(--blue);z-index:2}
.arch{position:relative;border-radius:400px 400px 0 0;overflow:hidden;width:78%;aspect-ratio:3/4;z-index:1}
.arch img{width:100%;height:100%;object-fit:cover}
/* lined heading */
.lined{display:flex;align-items:center;gap:clamp(16px,4vw,48px);margin-bottom:48px}
.lined span{flex:1;height:2px;background:var(--tan)}
.lined h2{margin:0;font-family:var(--sans-w);font-weight:500;font-size:clamp(20px,2.2vw,28px);letter-spacing:1.6px;text-transform:uppercase;color:var(--charcoal);text-align:center}
/* pillars */
.pillars{background:var(--cream);padding:clamp(56px,7vw,96px) 0}
.pillars-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,64px);text-align:center}
.pillars-in.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:0 auto}
.pillars-in h3{margin:0;padding-bottom:16px;border-bottom:2px solid var(--orange);font-family:var(--serif);font-weight:500;font-size:clamp(22px,2.2vw,28px);color:var(--charcoal)}
.pillars-in p{margin:16px 0 0;font-size:17px}
/* statement */
.statement{background:url(../assets/marble.jpeg) center/cover;padding:clamp(64px,9vw,120px) 0}
.statement p{max-width:880px;margin:0 auto;text-align:center;font-family:var(--serif);font-style:italic;font-size:clamp(24px,2.8vw,36px);line-height:1.3;color:var(--charcoal);text-wrap:balance}
/* tiles */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,48px)}
.tile{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--charcoal);text-decoration:none}
.tile:hover{text-decoration:none;color:var(--charcoal)}
.tile .tile-img{width:100%;aspect-ratio:1/1;margin-bottom:20px}
.tile h3{width:100%;margin:0 0 18px;padding-bottom:14px;border-bottom:2px solid var(--orange);font-family:var(--serif);font-weight:500;font-size:28px}
.tile:hover .link-arrow{color:var(--orange)}
.tile-pat{background-repeat:repeat;background-size:56px}
.tile-blue{position:relative;background:var(--blue)}.tile-blue::before{content:"";position:absolute;inset:0;background:url(../assets/pattern-blue.png) repeat;background-size:56px;opacity:.3;mix-blend-mode:screen}
.tile-plum{background-color:var(--plum);background-image:url(../assets/pattern-eggplant.png)}
/* quote */
.quote{margin:clamp(56px,7vw,96px) 0}
.quote blockquote{margin:0;display:flex;background:var(--orange);color:#fff}
.quote-strip{flex:0 0 clamp(30px,5vw,60px);background:var(--orange-l) url(../assets/pattern-orange.png) repeat;background-size:60px}
.quote p{margin:0;padding:clamp(40px,6vw,80px) clamp(24px,5vw,72px);font-family:var(--serif);font-size:clamp(24px,3vw,38px);line-height:1.25;text-wrap:pretty}
/* cta */
.cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--cream);padding:clamp(40px,5vw,64px) clamp(28px,7vw,100px) clamp(40px,5vw,64px) clamp(120px,14vw,200px)}
.cta-edge{position:absolute;left:0;top:0;bottom:0;width:clamp(90px,10vw,142px);background:var(--tan)}
.cta-edge::before,.cta-edge::after{content:"";position:absolute;top:0;bottom:0;right:0;left:clamp(20px,3vw,42px)}.cta-edge::before{background:url(../assets/decor-strip.png) repeat-y top/100%}.cta-edge::after{background:var(--plum);mix-blend-mode:multiply}
.cta h2{margin:0 0 10px;font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,34px);color:var(--charcoal)}
.cta p{margin:0;font-size:19px}
.sec+.sec .cta,.cta+.cta{margin-top:0}
/* page hero */
.phero{position:relative;overflow:hidden;color:#fff;background:var(--orange)}
.phero-blue{background:var(--blue)}
.phero .wrap{position:relative;padding-top:clamp(72px,9vw,128px);padding-bottom:50px}
.phero h1{margin:0;font-family:var(--sans-w);font-weight:500;font-size:clamp(40px,6vw,60px);line-height:1;letter-spacing:2px;text-transform:uppercase}
.phero p{margin:14px 0 0;font-size:16px;letter-spacing:.8px}
.phero-mark{position:absolute;right:6%;top:-10px;height:clamp(220px,28vw,380px);width:auto;opacity:.22;pointer-events:none}
/* prose */
.prose{max-width:910px}
.prose p{font-size:19px;line-height:1.6;margin:0 0 22px}
.prose .lead{font-size:clamp(24px,2.6vw,32px);line-height:1.3;margin-bottom:32px}
/* news */
.news{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:40px}
.post{display:flex;flex-direction:column;align-items:flex-start}
.post-img{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;margin-bottom:20px;display:flex;align-items:center;justify-content:center}
.post-img img{width:100%;height:100%;object-fit:cover}
.post-li-icon{position:relative;width:64px!important;height:64px!important;object-fit:contain!important;filter:brightness(0) invert(1)}
.post-date{margin:0 0 8px;font-family:var(--sans-w);font-weight:600;font-size:13px;letter-spacing:1.2px;text-transform:uppercase;color:var(--orange)}
.post h3{margin:0 0 10px;font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.2;color:var(--charcoal)}
.post p{margin:0 0 18px}
/* login */
.login{background:var(--cream) url(../assets/marble.jpeg) center/cover;padding:clamp(56px,9vw,120px) 20px;display:flex;justify-content:center}
.login-card{background:#fff;max-width:520px;width:100%;padding:clamp(32px,5vw,56px);text-align:center;box-shadow:0 10px 10px rgba(0,0,0,.1);border-top:4px solid var(--orange)}
.login-mark{width:84px;height:84px;margin:0 auto 24px}
.login-card p{margin:0 0 28px}
.login-card .small{margin:28px 0 0;font-size:14px;color:var(--grey)}
/* footer */
.ftr{margin-top:clamp(56px,7vw,96px)}
.ftr-strip{height:44px;background:var(--orange) url(../assets/pattern-orange.png) repeat-x;background-size:44px}
.ftr-main{background:var(--blue);color:#fff;padding:56px 0 48px}
.ftr-grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:40px}
.ftr-brand img{width:220px;height:auto;margin-bottom:20px}
.ftr-brand p{margin:0;max-width:320px;font-size:15px;line-height:1.5;opacity:.9}
.ftr h3{margin:0 0 16px;font-family:var(--sans-w);font-weight:600;font-size:13px;letter-spacing:1.6px;text-transform:uppercase}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ftr a{color:#fff;font-size:15px}.ftr a:hover{color:#fff;text-decoration:underline}
.ftr-legal{background:var(--blue-d);color:#fff;font-size:13px}
.ftr-legal-in{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:center;padding-top:18px;padding-bottom:18px}
.ftr-board{margin-left:auto;font-family:var(--sans-w);font-weight:600;font-size:12px!important;letter-spacing:1.2px;text-transform:uppercase;border:1px solid rgba(255,255,255,.6);border-radius:30px;padding:6px 16px}
.ftr-board:hover{background:#fff;color:var(--blue-d)!important;text-decoration:none!important}
@media (max-width:860px){
.split{grid-template-columns:1fr}.split-img{justify-self:center}.split-dot{right:0}
.tiles,.pillars-in,.pillars-in.two{grid-template-columns:1fr}
.cta{flex-direction:column;align-items:flex-start;padding:84px 28px 40px}
.cta-edge{width:100%;height:56px;bottom:auto}.cta-edge::before,.cta-edge::after{left:0;top:0;bottom:14px}
.ftr-grid{grid-template-columns:1fr 1fr}.ftr-brand{grid-column:1/-1}
.ftr-board{margin-left:0}
.hero-card{margin-top:-80px;margin-left:-20px;margin-right:-20px}
}
@media (max-width:520px){.stats-in{grid-template-columns:1fr}.stats-in>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.45);padding-top:24px}}
