@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#46b33e;--forest:#153e2b;--ink:#23382c;--cream:#f6f5ef;--line:#dce1d7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:5px}img{max-width:100%;display:block}p{margin:0 0 22px}h1,h2,h3{margin:0;font-weight:400;line-height:1.08}h1,h2{font-family:'Libre Caslon Display',Georgia,serif}h2{font-size:clamp(36px,3.6vw,52px)}h3{font-size:23px}em{font-style:normal;color:#ffb36c}.wrap{max-width:1220px;width:calc(100% - 100px);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;line-height:1.6;margin-bottom:20px}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:10px}.skip:focus{top:5px}header{position:relative;z-index:10;background:#fff}.nav-wrap{max-width:1220px;width:calc(100% - 100px);margin:auto;height:104px;display:flex;align-items:center;justify-content:space-between}.brand{align-self:flex-start;position:relative;z-index:11;margin-top:12px;box-shadow:0 0 0 7px white}.brand img{width:136px;height:136px}nav{display:flex;align-items:center;gap:34px}nav a{font-size:13px;font-weight:600;padding:11px 0}nav a[aria-current]{color:#237522;border-bottom:2px solid var(--green)}nav a:last-child{border:1px solid var(--line);padding:10px 20px}.menu-toggle{display:none}.hero{position:relative;min-height:680px;background:#24362a;color:white;isolation:isolate}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,27,21,.86),rgba(20,27,21,.48) 45%,rgba(20,27,21,.06)),url('_images/fairfield-hero.jpg') center/cover;z-index:-1}.hero-content{padding-top:96px;padding-bottom:92px}.hero h1{font-size:clamp(66px,6.7vw,98px);letter-spacing:-2px;line-height:.99;max-width:680px}.hero-content>p:not(.eyebrow){font-size:15px;max-width:530px;margin-top:27px;color:#f2f3ee;line-height:1.8}.hero .eyebrow{color:#d6e6d2}.actions{display:flex;align-items:center;gap:32px;margin-top:30px}.button{background:var(--green);color:#0b2d16;display:inline-flex;justify-content:space-between;gap:36px;align-items:center;padding:15px 23px;font-size:13px;font-weight:700}.button:hover{background:#62c557;text-decoration:none}.button span,.text-link span,.green-link span{margin-left:10px}.text-link{font-size:13px}.hero-foot{border-top:1px solid #ffffff30;padding:20px 50px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#d5ded4}.intro{padding:91px 0 95px}.intro>.eyebrow,.section-head .eyebrow{color:#327c33}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro-grid p{color:#5b655d;font-size:15px}.green-link{color:#245f30;font-weight:600;font-size:13px;display:inline-block}.portfolio-section{background:var(--cream);padding:85px 0 92px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:43px;gap:30px}.hotel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.hotel-card{background:white}.hotel-card>img{width:100%;height:250px;object-fit:cover}.hotel-details{padding:28px 26px 30px}.hotel-details .eyebrow{font-size:9px;letter-spacing:1.3px;color:#52734c;margin-bottom:12px}.hotel-details h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:29px;margin-bottom:15px}.hotel-details p:not(.eyebrow){font-size:13px;color:#657063;margin-bottom:14px}.hotel-details a{font-size:13px;color:#245f30}.development{display:grid;grid-template-columns:1fr 1.65fr;gap:80px;padding-top:82px;padding-bottom:82px;align-items:center}.outline-number{font-family:Georgia,serif;font-size:110px;line-height:1.2;color:#dce7d5}.development .large{font-size:22px;color:#50684f;margin-top:15px}.development p:not(.eyebrow){font-size:14px}.career-strip{background:var(--forest);color:white;padding:65px 0}.career-strip>.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.career-strip .eyebrow{color:#9add8f}.career-strip h2{font-size:42px}.career-strip p:last-child{color:#c4d2c5;margin:15px 0 0;font-size:14px}.light{background:#fff;color:var(--forest)}footer{background:#edf0e8;padding:60px 0 0}.footer-top{display:grid;grid-template-columns:1.7fr 1.2fr 1fr;gap:70px}.footer-top h3{font-size:13px;font-weight:600;margin-bottom:20px}.footer-top p,.footer-top a{font-size:12px}.footer-top>div>a{display:block;margin-bottom:8px}.footer-top img{margin-bottom:20px}.copyright{border-top:1px solid #d2dacd;font-size:10px;color:#677361;padding:20px 0;margin-top:38px;display:flex;justify-content:space-between}.page-banner{background:var(--forest);color:white;padding:85px 0 60px}.page-banner .eyebrow{color:#9bdd8e}.page-banner h1{font-size:clamp(48px,5.6vw,76px)}.page-banner p:last-child:not(.eyebrow){color:#d0ddcd;margin:20px 0 0}.portfolio-intro{padding-top:60px;max-width:950px}.portfolio-intro p{color:#5b655d}.all-hotels{padding-top:30px;padding-bottom:30px}.all-hotels .hotel-card{border:1px solid var(--line)}.property-placeholder{background:#edf0e8;height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#305c39;font-size:27px;letter-spacing:2px}.property-placeholder small{font-size:13px}.two{color:#338535;font-weight:700;font-size:40px}.bio{display:grid;grid-template-columns:1fr 2fr;gap:90px;padding:58px 0;border-bottom:1px solid var(--line)}.bio:last-child{border-bottom:0}.bio h2{margin-bottom:24px}.bio .eyebrow{color:#327c33}.bio p:not(.eyebrow){font-size:15px;color:#5b655d}.team-list{padding:15px 0 55px}.careers-content,.contact-content{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;padding-top:85px;padding-bottom:95px}.careers-content .eyebrow{color:#327c33}.careers-content p:not(.eyebrow),.contact-content p{color:#5b655d}.contact-content h2{margin-bottom:30px}.contact-panel{background:var(--cream);padding:40px}.contact-panel h3{line-height:1.5;margin-bottom:25px}.contact-panel a{overflow-wrap:anywhere}.contact-panel hr{border:0;border-top:1px solid var(--line);margin:30px 0}.contact-panel p{font-size:14px} @media(min-width:1600px){.hero{min-height:740px}.hero-content{padding-top:120px}}@media(max-width:1000px){nav{gap:20px}.wrap,.nav-wrap{width:calc(100% - 60px)}.intro-grid{gap:40px}.hotel-grid{gap:18px}.hotel-card>img{height:190px}.hotel-details{padding:20px}.development{gap:35px}.careers-content,.contact-content{gap:40px}.bio{gap:35px}}@media(max-width:760px){.wrap,.nav-wrap{width:calc(100% - 40px)}.nav-wrap{height:83px}.brand img{width:96px;height:96px}.brand{margin-top:10px;box-shadow:0 0 0 5px white}.menu-toggle{display:block;border:1px solid var(--line);background:white;padding:10px 14px;font:inherit;font-size:13px}.menu-toggle span{margin-left:12px}nav{display:none;position:absolute;top:83px;left:0;right:0;background:white;padding:40px 25px 20px;box-shadow:0 8px 14px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:6px}nav a{padding:10px 0}nav a:last-child{padding:10px}.hero{min-height:650px}.hero-content{padding-top:80px;padding-bottom:65px}.hero h1{font-size:68px}.hero-content>p:not(.eyebrow){max-width:450px;font-size:14px}.hero-image{background-position:65% center}.hero-foot{padding:20px;font-size:8px;gap:16px}.hero-foot span{max-width:125px;text-align:right}.actions{gap:20px}.button{gap:16px;padding:14px 18px}.intro{padding:65px 0}.intro-grid,.development,.bio,.careers-content,.contact-content{grid-template-columns:1fr;gap:30px}.intro-grid h2{font-size:42px}.portfolio-section{padding:60px 0}.section-head{display:block}.section-head>a{margin-top:25px}.hotel-grid{grid-template-columns:1fr}.hotel-card>img{height:270px}.hotel-details{padding:25px}.development{padding-top:60px;padding-bottom:60px}.outline-number{font-size:80px}.development-label{display:flex;justify-content:space-between;align-items:center}.career-strip>.wrap{display:block}.career-strip .button{margin-top:28px}.career-strip h2{font-size:38px}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:first-child{display:flex;gap:22px;align-items:center}.footer-top img{margin:0}.copyright{display:block}.copyright span{display:block;margin-top:10px}.page-banner{padding:75px 0 45px}.bio{padding:40px 0}.careers-content,.contact-content{padding-top:55px;padding-bottom:55px}.contact-panel{padding:25px}.portfolio-intro{padding-top:45px}.all-hotels{padding-top:10px}}

/* Hotel photos, booking links and accessible past-project disclosure. */
.hero em{color:#ffb36c}.property-gallery{position:relative;overflow:hidden;background:#e8ece4}.property-gallery>img{width:100%;height:250px;object-fit:cover}.gallery-controls{position:absolute;bottom:14px;right:14px;display:flex;align-items:center;background:#153e2be8;color:white;border-radius:3px}.gallery-controls button{border:0;background:transparent;color:white;font:inherit;font-size:20px;line-height:1;padding:12px 15px;cursor:pointer;min-width:44px;min-height:44px}.gallery-controls button:hover{background:#ffffff25}.gallery-controls button:focus-visible{outline:2px solid white;outline-offset:-3px}.gallery-count{font-size:11px;min-width:38px;text-align:center}.gallery-caption{position:absolute;bottom:18px;left:15px;color:white;font-size:11px;background:#153e2bde;padding:5px 10px}.hotel-details{display:flex;flex-direction:column;flex:1}.hotel-card{display:flex;flex-direction:column}.booking-link{display:flex!important;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-weight:600}.booking-link span{font-size:17px}.property-phone{margin-bottom:18px;display:block}.past-projects{padding-top:15px;padding-bottom:85px}.past-projects details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.past-projects summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:30px 0;list-style:none;gap:25px}.past-projects summary::-webkit-details-marker{display:none}.past-projects summary .eyebrow{display:block;margin:0 0 8px;color:#327c33}.past-title{font-family:'Libre Caslon Display',Georgia,serif;font-size:38px;line-height:1.15}.expand-mark{position:relative;width:36px;height:36px;border:1px solid var(--line);flex-shrink:0}.expand-mark:before,.expand-mark:after{content:'';position:absolute;top:17px;left:10px;width:14px;height:1px;background:var(--forest)}.expand-mark:after{transform:rotate(90deg)}details[open] .expand-mark:after{transform:rotate(0)}.past-content{padding:5px 0 25px}.past-content ul{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;list-style:none;padding:0;margin:0}.past-content li{border-left:2px solid var(--green);padding:8px 20px}.past-content h3{font-size:17px;font-weight:500;margin-bottom:8px}.past-content p{font-size:13px;color:#657063;margin:0}@media(max-width:1000px){.property-gallery>img{height:190px}.gallery-caption{bottom:68px}}@media(max-width:760px){.property-gallery>img{height:270px}.gallery-caption{bottom:18px}.past-content ul{grid-template-columns:1fr}.past-projects{padding-bottom:60px}.past-title{font-size:32px}.hero-image{background-position:58% center}}
