@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{--ink:#2c2d29;--cream:#eeeae1;--blue:#3e75a7;--white:#f8f7f3;--serif:'Libre Baskerville',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.75}.site-header{height:94px;background:var(--cream);display:flex;align-items:center;justify-content:center;padding:0 3vw;position:relative;z-index:3}.main-nav{position:absolute;left:3vw;display:flex;gap:25px}.main-nav a,.text-link{color:var(--ink);text-decoration:none}.main-nav a:hover,.text-link:hover{color:var(--blue)}.main-nav .active{border-bottom:1px solid}.wordmark{font:600 30px var(--sans);letter-spacing:.015em;color:var(--ink);text-decoration:none}.menu-toggle{display:none}.hero{height:440px;background:linear-gradient(#f2eee866,#eeeae166),url('assets/photo-14.jpg') center 47%/cover;display:grid;place-items:start center;text-align:center}.hero-copy{padding:53px 20px 0}.hero h1{font:600 clamp(38px,5vw,64px)/1.16 var(--sans);margin:0 0 36px}.hero p{font-size:21px;margin:0}.hero-logo{display:block;width:150px;height:auto;margin:58px auto 0}.services-home{background:var(--ink);color:var(--white);padding:78px 3vw 60px}.services-home h2{text-align:center;font:600 42px var(--sans);margin:0 0 84px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 12px}.service-card{height:390px;display:grid;place-items:center;text-align:center;text-decoration:none;color:white;background:linear-gradient(#0002,#0005),var(--image) center/cover;transition:filter .2s,transform .2s}.service-card:hover{filter:brightness(1.12);transform:translateY(-2px)}.service-card span{font:600 clamp(24px,3vw,38px)/1.2 var(--sans);text-shadow:0 2px 10px #0008}.about-band{background:var(--cream);text-align:center;padding:85px 12vw 95px}.about-band h2{font:400 20px var(--serif);margin:0 0 28px}.about-band p{font:400 clamp(20px,2.2vw,27px)/1.8 var(--serif);max-width:1000px;margin:0 auto 22px}.text-link{border-bottom:1px solid}.quote-section{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;min-height:700px}.quote-image{background:url('assets/photo-15.png') center/cover}.quote-form-wrap{padding:65px clamp(30px,7vw,110px) 85px}.quote-form-wrap h2{font:600 43px var(--sans);margin:0 0 35px}.quote-form-wrap form{display:grid;gap:20px}.quote-form-wrap label{display:grid;gap:8px}.quote-form-wrap em{font-style:normal;color:#73736f;font-size:13px}.name-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-form-wrap input,.quote-form-wrap select,.quote-form-wrap textarea{font:16px var(--serif);background:transparent;border:0;border-bottom:1px solid #89877f;padding:12px 4px;color:var(--ink);width:100%;border-radius:0}.quote-form-wrap textarea{border:1px solid #aaa69a;resize:vertical}.button{display:inline-block;background:var(--blue);border:0;color:white;text-decoration:none;padding:14px 30px;font:600 15px var(--sans);text-align:center;cursor:pointer}.button:hover{background:#2f5d86}.form-note{font-size:12px;color:#686761;margin:0}.site-footer{background:var(--ink);color:var(--white);padding:55px 3vw 35px;display:grid;grid-template-columns:1.1fr 1.2fr .8fr;gap:35px;align-items:start}.site-footer h2{font:600 39px/1.2 var(--sans);max-width:340px;margin:0 0 18px}.site-footer h3{font:600 24px var(--sans);margin:0 0 20px}.site-footer p{margin:10px 0 20px}.site-footer .button{width:100%;max-width:270px}.site-footer small{grid-column:1/-1;margin-top:28px}.site-footer a:not(.button){color:#82a8cb}.social{display:flex;gap:15px}.page-hero{text-align:center;padding:70px 20px;background-color:var(--cream)}.page-hero h1,.contact-hero h1{font:600 clamp(38px,5vw,60px)/1.15 var(--sans);margin:0}.page-hero p{font-size:18px}.about-hero{background:linear-gradient(#e9e4dbd0,#e9e4dbd0),url('assets/photo-12.jpg') center/cover;padding:145px 20px}.team-section{padding:80px 8vw 100px}.eyebrow{font:600 13px var(--sans);letter-spacing:.15em}.team-section>.eyebrow{text-align:center;margin:0 0 48px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:1100px;margin:auto}.team-card img{width:100%;height:400px;object-fit:cover}.team-card h2,.location-band h2{font:600 28px var(--sans)}.team-card p{max-width:600px}.credential{color:#666;font-style:italic}.location-band{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;align-items:center}.location-band img{width:100%;height:440px;object-fit:cover}.location-band>div{padding:45px 8vw}.services-hero{background:linear-gradient(#292a2888,#292a2888),url('assets/photo-16.jpg') center/cover;color:white;padding:125px 20px}.service-list{padding:35px 6vw 75px}.service-list article{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;padding:35px 0;border-bottom:1px solid #d9d4c9;scroll-margin-top:20px}.service-list article:nth-child(even) img{order:2}.service-list img{width:100%;height:290px;object-fit:cover}.service-list h2{font:600 29px var(--sans)}.service-list p{font-size:17px}.learn-band{text-align:center;background:var(--cream);padding:60px 20px}.contact-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);align-items:center}.contact-hero>div{padding:60px 9vw}.contact-hero img{width:100%;height:460px;object-fit:cover}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:80px 8vw}.contact-details article{border-left:2px solid var(--blue);padding-left:20px}.contact-details a{color:var(--ink)}.map-panel{height:370px}.map-panel iframe{border:0;width:100%;height:100%}
@media(max-width:760px){.site-header{height:76px;justify-content:flex-end;padding-right:20px}.wordmark{font-size:18px}.menu-toggle{display:block;position:absolute;left:18px;border:0;background:none;font-size:24px;color:var(--ink);cursor:pointer}.main-nav{display:none;position:absolute;left:0;right:0;top:76px;padding:20px;background:var(--cream);flex-direction:column;gap:12px}.main-nav.open{display:flex}.hero{height:390px}.hero-copy{padding-top:55px}.hero h1{font-size:39px}.hero p{font-size:16px}.hero-logo{width:125px;margin-top:45px}.services-home{padding:55px 15px 35px}.services-home h2{margin-bottom:45px;font-size:34px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{height:285px}.about-band{padding:65px 8vw}.quote-section{grid-template-columns:1fr}.quote-image{height:240px}.quote-form-wrap{padding:50px 8vw}.quote-form-wrap h2{font-size:34px}.site-footer{grid-template-columns:1fr;gap:18px;padding:42px 7vw}.site-footer small{grid-column:auto}.page-hero{padding:55px 18px}.about-hero,.services-hero{padding:105px 18px}.team-section{padding:55px 7vw}.team-grid{grid-template-columns:1fr;gap:42px}.team-card img{height:340px}.location-band,.contact-hero{grid-template-columns:1fr}.location-band img{height:270px}.location-band>div{padding:40px 8vw}.service-list{padding:20px 7vw 55px}.service-list article{grid-template-columns:1fr;gap:12px;padding:25px 0}.service-list article:nth-child(even) img{order:0}.service-list img{height:230px}.contact-hero>div{padding:55px 8vw 35px}.contact-hero img{height:280px}.contact-details{grid-template-columns:1fr;padding:50px 8vw;gap:14px}.map-panel{height:280px}.name-row{grid-template-columns:1fr}}
