
:root{
  --green:#173626;
  --green-dark:#0d2419;
  --green-soft:#294c39;
  --cream:#f5efe2;
  --paper:#fffdf8;
  --gold:#b8954f;
  --ink:#1d211e;
  --muted:#6b706b;
  --shadow:0 18px 45px rgba(9,30,19,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Montserrat",Arial,sans-serif;line-height:1.65}
img{display:block;width:100%;height:auto}
a{color:inherit}
.development-banner{background:var(--gold);color:#111;text-align:center;padding:.55rem 1rem;font-size:.78rem;letter-spacing:.02em}
.development-banner strong{margin-right:.4rem}
.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.1rem,4vw,5rem);background:rgba(255,253,248,.96);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(23,54,38,.12);backdrop-filter:blur(12px)}
.brand{text-decoration:none;color:var(--green);display:flex;flex-direction:column;line-height:1}
.brand-main{font:700 clamp(1.25rem,2.1vw,1.8rem)/1 "Cormorant Garamond",serif;letter-spacing:.13em}
.brand-sub{font-size:.58rem;letter-spacing:.32em;margin-top:.45rem}
.site-nav{display:flex;align-items:center;gap:1.7rem}
.site-nav a{text-decoration:none;font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.site-nav a:hover{color:var(--gold)}
.nav-cta{border:1px solid var(--green);padding:.7rem 1rem}
.menu-button{display:none;background:none;border:1px solid var(--green);padding:.55rem .8rem;color:var(--green)}
.hero{min-height:calc(100vh - 112px);position:relative;display:grid;place-items:center;overflow:hidden}
.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,27,18,.88),rgba(9,27,18,.43) 60%,rgba(9,27,18,.22))}
.hero-content{position:relative;color:white;width:min(1180px,90%);padding:6rem 0}
.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.68rem;font-weight:600;color:var(--gold);margin:0 0 1rem}
.hero h1,.section h2,.feature-band h2,.photo-break h2,.progress-section h2,.contact-section h2{font-family:"Cormorant Garamond",serif;line-height:.98;margin:.15rem 0 1.3rem}
.hero h1{font-size:clamp(3.3rem,7vw,7.2rem);max-width:950px}
.hero-copy{max-width:690px;font-size:clamp(1rem,1.6vw,1.28rem)}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;letter-spacing:.11em;font-size:.7rem;font-weight:700;min-height:50px;padding:.85rem 1.35rem;border:1px solid transparent;cursor:pointer}
.button-primary{background:var(--gold);color:#15140f}
.button-primary:hover{background:#c9aa67}
.button-secondary{border-color:white;color:white;background:rgba(255,255,255,.05)}
.button-outline{border-color:var(--green);color:var(--green);background:transparent}
.section{padding:clamp(5rem,10vw,9rem) clamp(1.2rem,6vw,7rem)}
.section-heading{max-width:850px;margin-bottom:3.5rem}
.section-heading h2,.split-copy h2{font-size:clamp(2.7rem,5vw,5rem);color:var(--green)}
.section-heading>p:last-child{max-width:700px;color:var(--muted)}
.centered{text-align:center;margin-left:auto;margin-right:auto}
.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,6vw,7rem);align-items:center}
.intro-copy{font-family:"Cormorant Garamond",serif;font-size:clamp(1.45rem,2.1vw,2rem);color:#384039}
.intro-copy p:first-child::first-letter{font-size:4.4rem;float:left;line-height:.72;margin:.15rem .6rem 0 0;color:var(--gold)}
.text-link{font-family:"Montserrat",sans-serif;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--green);font-weight:700;text-decoration:none}
.photo-card{margin:0;background:white;padding:.7rem;box-shadow:var(--shadow)}
.photo-card img{aspect-ratio:4/3;object-fit:cover}
.photo-card figcaption{padding:.9rem .4rem .25rem;color:var(--muted);font-size:.78rem}
.feature-band{display:grid;grid-template-columns:1.45fr .75fr;background:var(--green-dark);color:white}
.feature-band-image img{height:100%;min-height:620px;object-fit:cover}
.feature-band-copy{padding:clamp(3rem,7vw,7rem);align-self:center}
.feature-band h2{font-size:clamp(3rem,5vw,5.5rem)}
.feature-band-copy p:not(.eyebrow){color:#d9dfda}
.clean-list{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:.85rem}
.clean-list li{border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:.7rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.info-card{background:white;border:1px solid #e6dfd1;box-shadow:0 12px 30px rgba(14,39,25,.08)}
.info-card img{aspect-ratio:4/3;object-fit:cover}
.info-card div{padding:1.5rem}
.info-card h3{font-family:"Cormorant Garamond",serif;font-size:2rem;color:var(--green);margin:0 0 .6rem}
.info-card p{color:var(--muted);font-size:.9rem}
.card-note{font-size:.76rem!important;line-height:1.5;border-top:1px solid #e6dfd1;margin-top:1rem;padding-top:1rem;color:#777d77!important}
.centered-action{text-align:center;margin-top:2.7rem}
.photo-break{height:72vh;min-height:520px;position:relative;display:flex;align-items:flex-end}
.photo-break>img{position:absolute;inset:0;height:100%;object-fit:cover}
.photo-break:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(8,25,17,.75))}
.photo-break-copy{position:relative;z-index:1;color:white;padding:clamp(2rem,6vw,6rem)}
.photo-break h2{font-size:clamp(3rem,6vw,6rem);max-width:760px}
.split-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,8rem);align-items:center;background:var(--cream)}
.split-copy p:not(.eyebrow){color:#565d57}
.stacked-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.stacked-photos img{height:420px;object-fit:cover}
.stacked-photos img:last-child{margin-top:4rem}
.progress-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;padding:4rem clamp(1.2rem,6vw,7rem);background:var(--green);color:white;align-items:center}
.progress-section h2{font-size:clamp(2.5rem,4vw,4.5rem)}
.progress-section>p{color:#d9dfda;margin:0}
.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,8rem);padding:clamp(5rem,9vw,8rem) clamp(1.2rem,6vw,7rem);background:#101b15;color:white}
.contact-section h2{font-size:clamp(3rem,5vw,5rem)}
.contact-copy>p{color:#cfd7d1}
.contact-lines{display:grid;gap:.7rem;margin-top:2rem}
.contact-lines a,.contact-lines span{text-decoration:none;color:white;font-size:.9rem}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.contact-form label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#cad3cc}
.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:.4rem;padding:.85rem;background:#f8f5ed;border:0;font:inherit;color:#111}
.full{grid-column:1/-1}
.form-note{font-size:.72rem;color:#98a39b;margin:0}
.social-links{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.5rem}
.social-link{display:inline-flex!important;align-items:center;gap:.6rem;border:1px solid rgba(255,255,255,.2);padding:.7rem .9rem;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.social-link:hover{transform:translateY(-2px);border-color:var(--gold);background:rgba(184,149,79,.08)}
.social-link svg,.footer-social svg{width:19px;height:19px;fill:currentColor;flex:0 0 auto}
.site-footer{display:grid;grid-template-columns:1.1fr 1fr auto;gap:2rem;align-items:start;padding:3rem clamp(1rem,5vw,5rem) 1.6rem;background:#08130d;color:#ddd;font-size:.74rem}
.footer-brand{display:flex;flex-direction:column}
.footer-brand strong{font-family:"Cormorant Garamond",serif;letter-spacing:.12em;font-size:1.45rem;color:white}
.footer-brand>span{font-size:.58rem;text-transform:uppercase;letter-spacing:.22em;color:var(--gold)}
.footer-brand em{font-family:"Cormorant Garamond",serif;font-size:1.05rem;margin-top:.8rem;color:#bfc8c1}
.footer-details{display:grid;gap:.5rem}
.footer-details a,.site-footer a{text-decoration:none;color:#ddd;transition:color .2s ease}
.footer-details a:hover,.site-footer a:hover{color:var(--gold)}
.footer-social{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;justify-content:flex-end}
.footer-social>a:not(.back-to-top){display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:transform .2s ease,border-color .2s ease}
.footer-social>a:not(.back-to-top):hover{transform:translateY(-2px);border-color:var(--gold)}
.back-to-top{margin-left:.4rem}
.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:1.2rem;margin:0;color:#98a39b}

@media(max-width:900px){
  .menu-button{display:block}
  .site-nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:1.5rem;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}
  .site-nav.open{display:flex}
  .hero{min-height:78vh}
  .hero-content{padding:4rem 0}
  .intro-grid,.feature-band,.split-section,.progress-section,.contact-section{grid-template-columns:1fr}
  .feature-band-image img{min-height:420px}
  .cards{grid-template-columns:1fr}
  .stacked-photos img{height:320px}
  .stacked-photos img:last-child{margin-top:2rem}
}
@media(max-width:620px){
  .development-banner{font-size:.67rem}
  .site-header{height:74px}
  .brand-main{font-size:1.15rem}
  .site-nav{top:74px}
  .hero{min-height:80vh}
  .hero-overlay{background:linear-gradient(rgba(9,27,18,.62),rgba(9,27,18,.82))}
  .hero h1{font-size:3.2rem}
  .hero-actions{flex-direction:column;align-items:stretch}
  .section{padding:4.2rem 1.2rem}
  .feature-band-copy{padding:3.5rem 1.2rem}
  .photo-break{height:60vh}
  .stacked-photos{grid-template-columns:1fr}
  .stacked-photos img:last-child{margin-top:0}
  .progress-section{gap:1rem}
  .contact-form{grid-template-columns:1fr}
  .site-footer{grid-template-columns:1fr;text-align:center}
  .footer-brand,.footer-details{align-items:center}
  .footer-social{justify-content:center}
  .copyright{grid-column:1}
}
