@font-face{font-family:Lato;font-weight:300;src:url(../fonts/lato-light.woff2) format("woff2");font-display:swap}
@font-face{font-family:Lato;font-weight:400;src:url(../fonts/lato-regular.woff2) format("woff2");font-display:swap}
@font-face{font-family:Lato;font-weight:700;src:url(../fonts/lato-bold.woff2) format("woff2");font-display:swap}
@font-face{font-family:Lato;font-style:italic;src:url(../fonts/lato-italic.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Architects Daughter";src:url(../fonts/architects-daughter.woff2) format("woff2");font-display:swap}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:Lato,sans-serif;font-size:17px;line-height:30px;color:#888;background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:#385880}
h2{color:#292e3e;text-transform:uppercase;letter-spacing:1px;font-size:23px;font-weight:400;line-height:1.4;margin:0 0 20px}
.splash-page h2{text-align:center}
h2.left{text-align:left}
h2 a{text-decoration:none;color:#385880}
hr{border:0;border-top:1px solid #dcdcdc;margin:40px 0}
.wrap{max-width:1024px;margin:0 auto;padding:0 20px}
.center{text-align:center}.left{text-align:left}
.clearfix::after{content:"";display:table;clear:both}
/* header / nav */
.site-header{background:#071b34;width:100%;z-index:50;top:0}
.hwrap{max-width:1064px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:relative}
.title{font-family:"Architects Daughter",cursive;font-style:italic;color:#fff;font-size:28px;text-decoration:none;padding:16px 0;white-space:nowrap}
.menu{list-style:none;margin:0;padding:0;display:flex}
.menu>li{position:relative}
.menu a{display:block;color:#fff;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:2px;padding:24px 20px;line-height:1}
.menu a:hover{color:#9fb6d6}.menu .active>a{background:rgba(255,255,255,.06)}
.sub{list-style:none;margin:0;padding:0;position:absolute;left:0;top:100%;background:#071b34;min-width:160px;display:none}
.menu li:hover>.sub,.menu li:focus-within>.sub{display:block}
.sub a{padding:14px 20px}
.hamburger{display:none;background:none;border:0;padding:10px;cursor:pointer}
.hamburger span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}
.banner-page .site-header.fixed{position:fixed;left:0}
.splash-page .site-header,.plain-page .site-header{position:relative}
/* banners */
.banner{position:relative;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;height:410px;padding:60px 20px}
.banner::before{content:"";position:absolute;inset:0;background:rgba(7,27,52,.55)}
.banner-inner{position:relative}
.banner.home{height:616px}
.banner h2{color:#fff;font-size:54px;font-weight:700;letter-spacing:5px;line-height:1.2;margin:0}
.banner p{font-size:13px;text-transform:uppercase;letter-spacing:5px;margin:10px 0 0}
.content{padding:60px 0}
.img-block{margin:0 auto}.img-block img{margin:0 auto}
figcaption{font-size:15px;text-align:center;padding-top:8px}
.btn{display:inline-block;background:#c4c4c4;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:3px;font-size:12px;line-height:1;padding:14px 26px;margin:10px 0 20px}
.btn.hl{background:#385880}.btn.hl:hover{background:#304c6e}.btn:hover{background:#b0b0b0}
.row{display:flex;gap:30px;align-items:center;margin:30px 0}.col{flex:1;min-width:0}
.large{font-size:26px;line-height:1.4;color:#292e3e}
.float-left{float:left;margin:0 30px 20px 0;max-width:45%}
.note{color:#d5d5d5}
.site-footer{border-top:2px solid #dcdcdc;text-align:center;font-size:13px;padding:30px 20px}
/* splash */
.splash-page{background:#071b34;color:#fff}
.splash-page::before{content:"";position:fixed;inset:0;background:linear-gradient(rgba(5,20,39,.7),rgba(5,20,39,.7)),url(../images/bg/1992243719.jpg) center/cover;z-index:-1}
.splash-page h2{color:#fff}.splash-page hr{border-top-color:rgba(255,255,255,.3)}
/* galleries */
.gallery{display:grid;gap:10px;margin-bottom:10px}
.cols1{grid-template-columns:1fr}.cols2{grid-template-columns:repeat(2,1fr)}.cols3{grid-template-columns:repeat(3,1fr)}.cols4{grid-template-columns:repeat(4,1fr)}
.gallery a{display:block;overflow:hidden}
.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .3s}
.cols1 img{aspect-ratio:auto;object-fit:contain}
.gallery a:hover img{transform:scale(1.04)}
.hero{width:100%;max-width:1066px;margin:0 auto}
.stack a{display:block;margin:0 0 20px}.stack img{max-width:100%;width:auto}
.pdf{width:100%;height:80vh;border:0}
/* lightbox */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:100;display:flex;align-items:center;justify-content:center}
.lightbox[hidden]{display:none}
.lightbox figure{margin:0;max-width:92vw;max-height:90vh}
.lightbox img{max-width:92vw;max-height:82vh;margin:0 auto}
.lightbox figcaption{color:#ddd}
.lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:48px;cursor:pointer;padding:10px 16px;line-height:1}
.lb-close{top:10px;right:10px}.lb-prev{left:5px;top:50%;transform:translateY(-50%)}.lb-next{right:5px;top:50%;transform:translateY(-50%)}
@media (max-width:800px){
 .hamburger{display:block}
 .site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#071b34}
 .site-header.open nav{display:block}
 .menu{flex-direction:column}.sub{position:static;display:block;padding-left:20px}
 .menu a{padding:16px 20px}
 .banner{height:260px}.banner.home{height:340px}
 .banner h2{font-size:32px;letter-spacing:3px}
 .row{flex-direction:column}
 .cols3,.cols4{grid-template-columns:repeat(2,1fr)}
 .float-left{float:none;max-width:100%;margin:0 0 20px}
}
