:root{--ink:#18201f;--paper:#f6f5f0;--gold:#ad8b63;--muted:#5e6663}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}.wrap{width:min(100% - 80px,1380px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:10px;background:#fff;color:#111;padding:8px;z-index:100}.skip-link:focus{top:10px}h1,h2,p{margin-top:0}h1,h2{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-.055em;line-height:1.08}h1 em,h2 em{font-style:normal;color:#b79a75}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.18em;color:#8b7053;margin-bottom:30px}.eyebrow.light{color:#d5c2a7}.site-header{height:94px;background:#f7f6f1;display:flex;align-items:center;justify-content:space-between;padding:0 max(40px,calc((100vw - 1380px)/2));position:relative;z-index:10}.brand{display:flex;align-items:center;gap:14px;line-height:1.1}.brand-mark{font-family:Manrope,sans-serif;font-weight:500;font-size:28px;letter-spacing:-.15em;display:inline-flex;align-items:end;position:relative;width:43px;height:43px}.mark-rule{width:34px;height:1px;background:currentColor;position:absolute;bottom:2px;left:0;transform:rotate(-25deg);transform-origin:left}.brand-name{font-family:Manrope,sans-serif;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.13em;display:flex;flex-direction:column;gap:5px;white-space:nowrap}.brand-name small{font-size:10px;font-weight:600;letter-spacing:.43em}.site-header nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.site-header nav a:hover,.underlined-link:hover,.footer-main a:hover{color:#a17b53}.nav-contact{border:1px solid #a59c8e;padding:13px 18px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{height:min(790px,calc(100svh - 94px));min-height:600px;background:#28322e;color:#fff;position:relative;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%;position:absolute;inset:0}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,17,17,.85),rgba(9,17,17,.52) 47%,rgba(9,17,17,.08)),linear-gradient(0deg,rgba(9,17,17,.48),transparent 28%)}.hero-content{position:relative;z-index:1;padding-top:clamp(110px,17vh,200px)}h1{font-size:clamp(3.8rem,7.4vw,8.2rem);margin-bottom:30px;max-width:1000px}.hero-intro{max-width:530px;color:#e9e8e4;font-size:1.1rem;line-height:1.75}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:35px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:48px;padding:17px 22px;font-weight:700;font-size:14px;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#f4f3ef;color:#1a201e}.button-light:hover{background:#d9c9b4}.text-link{font-weight:700;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:6px}.hero-bottom{position:absolute;bottom:27px;left:0;right:0;display:flex;justify-content:space-between;z-index:1;font-size:.7rem;letter-spacing:.15em;font-weight:700;color:#ddd}.section-pad{padding-top:130px;padding-bottom:130px}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:end}.intro h2,.gallery-heading h2,.areas h2,.contact h2{font-size:clamp(2.8rem,5.2vw,5.8rem);margin-bottom:0}.intro-copy{max-width:550px}.intro-copy p{font-size:1.25rem;line-height:1.75;color:#444d49;margin-bottom:36px}.underlined-link{font-weight:700;padding-bottom:8px;border-bottom:1px solid var(--ink)}.underlined-link span{margin-left:36px}.feature{background:#1b2321;color:#e5e1d9}.feature-image{width:100%;height:min(720px,58vw);min-height:390px;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover;object-position:center}.feature-caption{max-width:1380px;margin:auto;padding:20px 40px 24px;display:flex;justify-content:space-between;font-size:.72rem;letter-spacing:.16em}.gallery-section{background:#eeeee8}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}.gallery-heading p:last-child{max-width:350px;color:var(--muted);line-height:1.8;margin-bottom:8px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-item{position:relative;padding:0;border:0;background:#c9c7bb;overflow:hidden;aspect-ratio:1.2;text-align:left}.gallery-item.wide{grid-column:span 2;aspect-ratio:2.45}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.045)}.gallery-item:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.52));pointer-events:none}.gallery-item span{position:absolute;z-index:1;bottom:20px;left:22px;color:#fff;font-weight:700;font-size:.95rem}.gallery-note{font-size:.8rem;color:#666;margin-top:22px;margin-bottom:0}.areas{background:#1b2523;color:#f2f0e9;padding:120px 0}.areas-inner{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.areas-right p{font-size:1.1rem;color:#c8cfca;max-width:370px}.area-list{margin-top:30px;border-top:1px solid #68716d}.area-list span{display:block;font-family:Manrope,sans-serif;font-size:clamp(1.6rem,2.5vw,2.7rem);padding:11px 0;border-bottom:1px solid #68716d}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-heading>p:not(.eyebrow){font-size:1.1rem;color:var(--muted);margin:35px 0}.contact-phone{display:block;font-family:Manrope,sans-serif;font-size:1.7rem;font-weight:600;margin-bottom:10px}.contact-email{display:block;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.contact-form{display:flex;flex-direction:column;align-items:stretch;padding-top:25px}.contact-form label{font-size:.85rem;font-weight:700;margin-bottom:9px}.contact-form input,.contact-form textarea{background:transparent;border:1px solid #b7bbb6;border-radius:0;padding:13px 15px;margin-bottom:24px;color:var(--ink);outline-offset:3px}.contact-form textarea{resize:vertical}.button-dark{background:var(--ink);color:#fff;width:fit-content;min-width:220px}.button-dark:hover{background:#415049}.form-note{font-size:.85rem;color:var(--muted);margin-top:13px}footer{background:#111a18;color:#edece7;padding:55px 0 25px}.footer-main,.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-main{padding-bottom:65px}.footer-main>a:not(.brand){font-size:.9rem}.footer-bottom{border-top:1px solid #4b5551;padding-top:22px;color:#b2bab6;font-size:.75rem}dialog{max-width:min(92vw,1100px);max-height:94vh;border:0;padding:0;background:#151b19;color:#fff;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#000c}dialog img{display:block;max-height:83vh;width:auto;max-width:100%;margin:auto}dialog p{margin:8px 20px 14px;font-size:.85rem}.viewer-close{position:absolute;top:8px;right:10px;background:#111b;border:0;border-radius:50%;color:#fff;font-size:30px;width:42px;height:42px;line-height:1}a:focus-visible,button:focus-visible{outline:3px solid #bb945f;outline-offset:3px}
@media(max-width:900px){.wrap{width:min(100% - 44px,1380px)}.site-header{padding:0 22px;height:78px}.menu-toggle{display:flex;width:44px;height:44px;border:0;background:none;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{width:24px;height:2px;background:var(--ink)}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 12px 22px #0002;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:12px 0}.site-header nav .nav-contact{padding:12px;margin-top:12px;text-align:center}.hero{height:720px;min-height:570px}.hero-content{padding-top:120px}.hero>img{object-position:50%}.hero-shade{background:linear-gradient(90deg,#101716c9,#10171645),linear-gradient(0deg,#10171690,transparent 30%)}.section-pad{padding-block:90px}.intro,.areas-inner,.contact{gap:40px}.intro-copy p{font-size:1.1rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item.wide{grid-column:span 2}}
@media(max-width:620px){.brand-name{font-size:10px}.brand-name small{font-size:9px}.hero{height:calc(100svh - 78px);min-height:650px}.hero-content{padding-top:clamp(95px,15vh,150px)}h1{font-size:clamp(3.4rem,13vw,5.3rem)}.hero-intro{font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom span:last-child{display:none}.section-pad{padding-block:80px}.intro,.areas-inner,.contact{grid-template-columns:1fr;gap:32px}.intro h2,.gallery-heading h2,.areas h2,.contact h2{font-size:clamp(2.9rem,10vw,4.5rem)}.intro-copy p{font-size:1.06rem}.feature-image{height:380px;min-height:0}.feature-caption{padding-inline:22px}.gallery-heading{display:block;margin-bottom:35px}.gallery-heading p:last-child{margin-top:25px}.gallery-grid{gap:10px}.gallery-item,.gallery-item.wide{grid-column:auto;aspect-ratio:.9}.gallery-item:nth-child(5n+1){grid-column:span 2;aspect-ratio:1.6}.gallery-item span{bottom:12px;left:13px;font-size:.8rem}.areas{padding:85px 0}.contact-form{padding-top:0}.footer-main,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-main{padding-bottom:42px}.footer-bottom{gap:7px}.gallery-note{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Supplied Christopher Anthony Homes logo */
.site-header{height:118px;background:#050505;color:#f5f2e9}
.site-header .brand{height:100%;align-items:center}
.brand-logo{display:block;width:104px;height:106px;flex:none}
.site-header nav a:hover{color:#f8d578}
.site-header .nav-contact{border-color:#bda66d}
.footer-brand .brand-logo{width:150px;height:154px}
footer{background:#050505}
@media(max-width:900px){.site-header{height:102px}.site-header nav{top:102px;background:#050505;color:#f5f2e9}.menu-toggle span{background:#f5f2e9}}
@media(max-width:620px){.site-header{height:94px}.site-header nav{top:94px}.site-header .brand-logo{width:88px;height:90px}.footer-brand .brand-logo{width:142px;height:146px}}

.custom-media{background:#111a18;color:#f6f5f0}
.custom-media .gallery-heading p:last-child{color:#c0c8c3}
.custom-media .gallery-item{background:#35251c}

.integration{background:#e9e8e1}
.integration .integration-group{border-top:1px solid #aeb3ae;padding-top:20px;margin-bottom:24px;display:flex;align-items:baseline;justify-content:space-between;gap:24px}
.integration-group.second{margin-top:75px}
.integration-group h3{font-family:Manrope,sans-serif;font-size:clamp(1.45rem,2vw,2.1rem);font-weight:600;letter-spacing:-.035em;margin:0}
.integration-group p{color:#5e6663;margin:0;max-width:390px}
@media(max-width:1120px){.site-header .menu-toggle{display:flex;width:44px;height:44px;border:0;background:none;align-items:center;justify-content:center;flex-direction:column;gap:6px}.site-header .menu-toggle span{width:24px;height:2px;background:#f5f2e9}.site-header nav{display:none;position:absolute;top:118px;left:0;right:0;background:#050505;color:#f5f2e9;padding:24px;box-shadow:0 12px 22px #0002;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:12px 0}.site-header nav .nav-contact{padding:12px;margin-top:12px;text-align:center}}
@media(max-width:900px){.site-header nav{top:102px}}
@media(max-width:620px){.site-header nav{top:94px}.integration .integration-group{display:block}.integration-group p{margin-top:8px}.integration-group.second{margin-top:55px}}

.projects-section{background:#f7f6f1}
.projects-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:54px}
.projects-heading h2{font-size:clamp(2.8rem,5.2vw,5.8rem);margin:0}
.projects-heading>p{max-width:400px;color:var(--muted);line-height:1.8;margin:0 0 8px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.project-card{background:#eeeee8;min-width:0}
.project-image{height:clamp(230px,27vw,390px);display:block;position:relative;overflow:hidden;background:#303734}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.project-image:hover img,.project-image:focus-visible img{transform:scale(1.045)}
.project-number{position:absolute;left:18px;top:18px;color:#fff;background:#101715c9;padding:8px 12px;font-size:.75rem;font-weight:700;letter-spacing:.12em}
.project-copy{padding:27px 27px 30px}
.project-kicker{font-size:.7rem;font-weight:700;letter-spacing:.16em;color:#8b7053;margin:0 0 12px}
.project-copy h3{font-family:Manrope,sans-serif;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.2;letter-spacing:-.04em;font-weight:600;margin:0 0 14px}
.project-copy>p:not(.project-kicker){min-height:78px;color:#525c57;line-height:1.7;margin-bottom:24px}
.project-copy .underlined-link{display:inline-block;font-size:.9rem;padding-bottom:5px}
.project-copy .underlined-link span{margin-left:20px}
@media(max-width:900px){.projects-heading{gap:30px}.project-grid{grid-template-columns:1fr 1fr}.project-image{height:340px}}
@media(max-width:620px){.projects-heading{display:block;margin-bottom:34px}.projects-heading>p{margin-top:22px}.project-grid{grid-template-columns:1fr;gap:15px}.project-image{height:300px}.project-copy{padding:23px 22px 26px}.project-copy>p:not(.project-kicker){min-height:0;margin-bottom:20px}}

/* Hiwassee page + 4th project card */
.page-hero{height:min(640px,calc(100svh - 118px));min-height:480px;background:#28322e;color:#fff;position:relative;overflow:hidden}
.page-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 45%;position:absolute;inset:0}
.page-hero .hero-content{position:relative;z-index:1;padding-top:clamp(90px,14vh,160px)}
.page-hero h1{font-size:clamp(3.4rem,6.5vw,6.8rem);margin-bottom:24px}
.page-hero .hero-bottom{position:absolute;bottom:27px;left:0;right:0;display:flex;justify-content:space-between;z-index:1;font-size:.7rem;letter-spacing:.15em;font-weight:700;color:#ddd}
.page-cta{display:flex;flex-wrap:wrap;gap:28px;align-items:center;margin-top:48px}
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.page-hero{height:560px;min-height:440px}}
@media(max-width:620px){.page-hero{height:calc(100svh - 94px);min-height:520px}.page-hero h1{font-size:clamp(3rem,12vw,4.6rem)}.page-cta{flex-direction:column;align-items:flex-start}.project-grid{grid-template-columns:1fr}}
nav a[aria-current="page"]{color:#f8d578}
