/* ===== A.T.I. Golf Services — shared stylesheet (moodboard v3: forest / cream / gold) ===== */
:root{
  --bg:#0D1B14; --bg-card:#132118; --bg-lift:#192d1f;
  --text:#EDF1EE; --text-muted:#8A9A8E;
  --accent:#B89642; --accent-soft:#C4A265;
  --border:rgba(184,150,66,0.18);
  --iron:#566072; --forest:#1A3320;
  --radius:6px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
html,body{overflow-x:clip;max-width:100%;width:100%;}
body{background:var(--bg);color:var(--text);font-family:'Inter',sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;}
img,video{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1100px;margin:0 auto;padding:0 40px;}

/* ===== BUTTONS ===== */
.btn-primary{display:inline-block;background:var(--accent);color:#0D1B14;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:13px 26px;border-radius:3px;border:none;cursor:pointer;transition:opacity .2s;}
.btn-primary:hover{opacity:.86;}
.btn-outline{display:inline-block;border:1px solid var(--accent);color:var(--accent);background:transparent;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:13px 26px;border-radius:3px;cursor:pointer;transition:background .2s,color .2s;}
.btn-outline:hover{background:var(--accent);color:#0D1B14;}
.btn-secondary{display:inline-block;border:1px solid rgba(184,150,66,.4);color:var(--text-muted);background:transparent;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:13px 26px;border-radius:3px;cursor:pointer;transition:border-color .2s,color .2s;}
.btn-secondary:hover{border-color:var(--accent);color:var(--text);}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;}
.gold-rule{width:42px;height:1px;background:var(--accent);margin:0 0 26px;}
.todo{color:var(--accent-soft);font-style:italic;}

/* ===== UTILITY BAR ===== */
#util-bar{background:var(--bg);border-bottom:1px solid var(--border);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);}
.util-inner{max-width:1100px;margin:0 auto;padding:8px 40px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.util-inner .util-right{display:flex;gap:22px;}
.util-inner a:hover{color:var(--accent);}

/* ===== NAV ===== */
#nav{position:sticky;top:0;z-index:100;background:rgba(13,27,20,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;max-width:1100px;margin:0 auto;padding:0 40px;}
.nav-logo{display:flex;align-items:center;gap:11px;min-width:0;}
.logo-img{height:42px;width:auto;display:block;flex:none;}
.lock-brand{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:600;letter-spacing:.05em;color:var(--accent);white-space:nowrap;line-height:1;}
.nav-links{display:flex;align-items:center;gap:30px;list-style:none;}
.nav-links a{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);transition:color .2s;}
.nav-links a:hover{color:var(--text);}
.nav-links a.active{color:var(--accent);}
.nav-toggle{display:none;background:none;border:none;color:var(--text);cursor:pointer;flex-direction:column;gap:5px;padding:6px;}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--accent);transition:.25s;}
/* collapse nav to hamburger early so it never crowds the logo (tablets, folded phones) */
@media(max-width:860px){
  #util-bar{display:none;}
  .nav-toggle{display:flex;}
  .lock-brand{font-size:18px;}
  .logo-img{height:38px;}
  .nav-links{position:absolute;top:74px;left:0;right:0;background:rgba(13,27,20,.99);border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:0;padding:8px 22px 18px;display:none;}
  .nav-links.open{display:flex;}
  .nav-links li{width:100%;}
  .nav-links a{display:block;padding:13px 0;font-size:13px;border-bottom:1px solid rgba(184,150,66,.08);width:100%;}
  .nav-links a.btn-outline{border:1px solid var(--accent);text-align:center;margin-top:12px;padding:12px;}
}

/* ===== HERO (homepage) ===== */
#hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(13,27,20,.74) 0%,rgba(13,27,20,.88) 100%),linear-gradient(135deg,#1f3a26 0%,#0D1B14 72%);background-size:cover;background-position:center;}
#hero .hero-watermark{position:absolute;right:-30px;top:50%;transform:translateY(-50%);font-family:'Cormorant Garamond',serif;font-size:clamp(16rem,40vw,38rem);font-weight:600;line-height:1;color:rgba(184,150,66,.05);pointer-events:none;user-select:none;white-space:nowrap;}
.hero-inner{position:relative;z-index:2;max-width:1100px;margin:0 auto;padding:58px 40px 64px;}
.hero-headline{margin-bottom:20px;}
.hero-subhead{margin-bottom:30px;}
.hero-headline{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(2.8rem,6vw,5rem);line-height:1.05;color:var(--text);margin-bottom:26px;max-width:16ch;}
.hero-headline em{font-style:italic;color:var(--accent);}
.hero-subhead{font-size:16px;line-height:1.75;color:var(--text-muted);max-width:560px;margin-bottom:38px;}
.hero-ctas{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
/* hero legibility on bright imagery */
#hero .eyebrow{text-shadow:0 1px 10px rgba(13,27,20,.65);}
.hero-headline{text-shadow:0 2px 22px rgba(13,27,20,.55),0 1px 4px rgba(13,27,20,.4);}
.hero-headline em{color:#DCBE78;}
.hero-subhead{color:rgba(241,245,241,.95);text-shadow:0 1px 16px rgba(13,27,20,.7);}
#hero .btn-primary{box-shadow:0 10px 28px rgba(13,27,20,.48);}
#hero .btn-secondary{border-color:rgba(255,255,255,.6);color:#fff;}
#hero .btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:rgba(255,255,255,.08);}

/* ===== PAGE HERO (inner pages) ===== */
.page-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(13,27,20,.72) 0%,rgba(13,27,20,.9) 100%),linear-gradient(135deg,#1f3a26 0%,#0D1B14 74%);}
.page-hero .hero-watermark{position:absolute;right:-30px;top:50%;transform:translateY(-50%);font-family:'Cormorant Garamond',serif;font-size:clamp(12rem,32vw,26rem);font-weight:600;line-height:1;color:rgba(184,150,66,.05);pointer-events:none;user-select:none;white-space:nowrap;}
.page-hero-inner{position:relative;z-index:2;max-width:1100px;margin:0 auto;padding:96px 40px 80px;}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.06;color:#FFFFFF;margin-bottom:20px;max-width:20ch;text-shadow:0 2px 4px rgba(13,27,20,.9),0 2px 26px rgba(13,27,20,.75);}
.page-hero h1 em{color:#E4C982;}
.page-hero h1 em{font-style:italic;color:var(--accent);}
.page-hero p.lead{font-size:16px;line-height:1.75;color:#EDF2EE;max-width:620px;text-shadow:0 1px 3px rgba(13,27,20,.9),0 1px 18px rgba(13,27,20,.72);}
.page-hero .eyebrow{text-shadow:0 1px 10px rgba(13,27,20,.85);}
.hero-watermark{display:none !important;}
/* Memberships & Affiliations */
#affiliations .affil-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:36px;}
.affil-card{border:1px solid var(--border);border-radius:8px;padding:34px 26px;text-align:center;background:var(--bg-card);transition:transform .3s ease,border-color .3s ease;}
.affil-card:hover{border-color:var(--accent);transform:translateY(-3px);}
.affil-mark{display:block;font-family:'Cormorant Garamond',serif;font-size:40px;line-height:1;letter-spacing:.06em;color:var(--accent);font-weight:600;}
.affil-name{margin-top:12px;font-size:13px;line-height:1.65;color:var(--text-muted);letter-spacing:.02em;}
@media(max-width:640px){#affiliations .affil-grid{grid-template-columns:1fr;gap:16px;}}
.showcase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
@media(max-width:760px){.showcase-grid{grid-template-columns:1fr;gap:18px;}.showcase-grid > div{aspect-ratio:4/3 !important;}.projects-grid{grid-template-columns:1fr !important;}#services .services-grid{grid-template-columns:1fr !important;}}
.page-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,27,20,.30) 0%,rgba(13,27,20,.12) 42%,rgba(13,27,20,.46) 100%);pointer-events:none;}

/* ===== CREDIBILITY ===== */
#credibility{background:var(--bg);border-bottom:1px solid var(--border);padding:46px 0;}
#credibility .cred-lead{text-align:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:26px;}
.arch-strip{display:flex;align-items:center;justify-content:center;gap:14px 30px;flex-wrap:wrap;max-width:920px;margin:0 auto;}
.arch-strip span{font-family:'Cormorant Garamond',serif;font-size:1.28rem;color:var(--text);opacity:.85;white-space:nowrap;}
.arch-strip span.dot{color:var(--accent);opacity:.7;}

/* ===== SECTIONS ===== */
section{padding:92px 0;border-bottom:1px solid var(--border);}
.section-title{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.12;color:var(--text);margin-bottom:14px;}
.section-title em{font-style:italic;color:var(--accent);}
.section-lead{font-size:15px;line-height:1.7;color:var(--text-muted);max-width:660px;margin-bottom:52px;}

/* ===== SERVICES (home two categories) ===== */
#services .services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.service-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;}
.service-card-img{aspect-ratio:16/9;border-bottom:1px solid var(--border);display:flex;align-items:flex-end;padding:14px;font-size:10px;color:rgba(237,241,238,.55);letter-spacing:.05em;background:linear-gradient(180deg,rgba(13,27,20,.15) 0%,rgba(13,27,20,.75) 100%),linear-gradient(135deg,#244a2e 0%,#0D1B14 80%);background-size:cover;background-position:center;}
.service-card-body{padding:30px 30px 32px;display:flex;flex-direction:column;flex:1;}
.service-card-eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;}
.service-card h3{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:400;line-height:1.2;color:var(--text);margin-bottom:14px;}
.service-card p{font-size:14px;line-height:1.72;color:var(--text-muted);margin-bottom:22px;flex:1;}
.service-card-link{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:6px;}
.service-card-link::after{content:'\2192';}

/* ===== SERVICES PAGE (detail blocks) ===== */
.svc-block{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:74px 0;border-bottom:1px solid var(--border);}
.svc-block:last-of-type{border-bottom:none;}
.svc-block.rev .svc-media{order:2;}
.svc-media{aspect-ratio:4/3;border:1px solid var(--border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;font-size:11px;color:rgba(237,241,238,.5);background:linear-gradient(135deg,#21422a 0%,#0D1B14 85%);}
.svc-copy h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(1.7rem,3vw,2.4rem);color:var(--text);margin-bottom:16px;line-height:1.15;}
.svc-copy p{font-size:14.5px;color:var(--text-muted);margin-bottom:22px;line-height:1.75;}
.svc-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:9px 24px;margin-bottom:26px;}
.svc-list li{font-size:13.5px;color:var(--text);padding-left:18px;position:relative;}
.svc-list li::before{content:'';position:absolute;left:0;top:9px;width:6px;height:6px;background:var(--accent);border-radius:1px;transform:rotate(45deg);}

/* ===== PROJECTS (home top 3) ===== */
#projects{background:var(--bg-lift);}
#projects .section-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:48px;flex-wrap:wrap;gap:20px;}
#projects .section-header .section-title{margin-bottom:0;}
.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;}
.project-card-img{aspect-ratio:4/3;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:10px;color:rgba(237,241,238,.5);text-align:center;padding:16px;background:linear-gradient(180deg,rgba(13,27,20,.1) 0%,rgba(13,27,20,.55) 100%),linear-gradient(135deg,#21422a 0%,#0D1B14 85%);background-size:cover;background-position:center;}
.project-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;}
.project-card-body .tag{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;}
.project-card-body h4{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:var(--text);margin-bottom:5px;line-height:1.2;}
.project-card-body p{font-size:12.5px;color:var(--text-muted);margin-bottom:16px;flex:1;}
.project-card-link{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:6px;}
.project-card-link::after{content:'\2192';}

/* ===== PROJECTS PAGE (full list) ===== */
.proj-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.proj-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;}
.proj-item-img{aspect-ratio:16/10;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;font-size:10px;color:rgba(237,241,238,.5);background:linear-gradient(135deg,#21422a 0%,#0D1B14 85%);background-size:cover;background-position:center;}
.proj-item-body{padding:24px 26px 26px;}
.proj-item-body .tag{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;}
.proj-item-body h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400;color:var(--text);line-height:1.2;margin-bottom:8px;}
.proj-item-body .meta{font-size:12.5px;color:var(--text-muted);margin-bottom:12px;}
.proj-item-body .scope{font-size:13.5px;color:var(--text);line-height:1.6;}
.roster-note{margin-top:44px;padding:24px 26px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);}
.roster-note h4{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:500;color:var(--text);margin-bottom:10px;}
.roster-note p{font-size:13.5px;color:var(--text-muted);line-height:1.7;}

/* ===== ABOUT ===== */
#about .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;}
#about .about-image{aspect-ratio:3/4;border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;background:linear-gradient(135deg,#21422a 0%,#0D1B14 85%);}
#about .about-image p{font-size:12px;color:rgba(237,241,238,.55);}
#about .about-content .section-title{margin-bottom:20px;}
.body-copy{font-size:15px;line-height:1.78;color:var(--text-muted);margin-bottom:22px;}
.stat-row{display:flex;gap:48px;flex-wrap:wrap;margin-bottom:36px;}
.stat-number{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:var(--accent);line-height:1;margin-bottom:4px;}
.stat-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);}

/* ===== TEAM ===== */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:6px;}
.team-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
.team-photo{aspect-ratio:4/5;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;font-size:10px;color:rgba(237,241,238,.5);background:linear-gradient(135deg,#21422a 0%,#0D1B14 85%);}
.team-body{padding:22px 22px 24px;}
.team-body .role{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;}
.team-body h3{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:500;color:var(--text);margin-bottom:10px;}
.team-body p{font-size:13px;color:var(--text-muted);line-height:1.65;}

/* ===== CLIENTS ===== */
#clients{background:var(--forest);}
#clients .section-title{margin-bottom:14px;}
.clients-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:44px;}
.client-chip{border:1px solid var(--border);border-radius:var(--radius);padding:20px 16px;text-align:center;background:rgba(13,27,20,.45);}
.client-chip span{font-family:'Cormorant Garamond',serif;font-size:1.08rem;color:var(--text);line-height:1.25;}
.clients-note{font-size:12px;color:var(--text-muted);margin-top:26px;font-style:italic;}
.testi-block{margin-top:54px;padding:40px 36px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);text-align:center;}
.testi-block .q{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.5rem;color:var(--text);line-height:1.4;max-width:720px;margin:0 auto 14px;}
.testi-block .attr{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);}
/* testimonial cards */
.testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px;align-items:start;}
.testi-card{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);padding:32px 34px 30px;background:var(--bg-card);display:flex;flex-direction:column;}
.testi-card.feature{grid-column:1 / -1;}
.testi-card .mark{font-family:'Cormorant Garamond',serif;font-size:3.6rem;line-height:.4;color:var(--accent);opacity:.6;height:28px;}
.testi-card .quote{font-family:'Cormorant Garamond',serif;font-size:1.34rem;font-style:italic;font-weight:500;line-height:1.55;color:var(--text);margin:16px 0 22px;}
.testi-card.feature .quote{font-size:1.7rem;}
.testi-card .who{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-top:auto;}
.testi-card .role{font-size:13px;color:var(--text-muted);margin-top:5px;}

/* ===== CONTACT ===== */
#contact{text-align:center;}
#contact .section-title{margin-bottom:16px;}
#contact .section-lead{margin:0 auto 18px;text-align:center;}
.contact-split{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;align-items:start;text-align:left;margin-top:8px;}
.contact-info .eyebrow{margin-bottom:14px;}
.contact-info h2{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(1.9rem,3.4vw,2.7rem);color:var(--text);margin-bottom:18px;line-height:1.12;}
.contact-info .body-copy{margin-bottom:26px;}
.contact-line{display:flex;flex-direction:column;gap:2px;margin-bottom:20px;}
.contact-line .k{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);}
.contact-line .v{font-size:14px;color:var(--text);}
.contact-line .v a:hover{color:var(--accent);}
.contact-meta{display:flex;justify-content:center;gap:14px 34px;flex-wrap:wrap;margin-bottom:40px;font-size:13px;color:var(--text-muted);}
.contact-meta a:hover{color:var(--accent);}
.contact-meta strong{color:var(--accent);font-weight:600;}
.contact-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:36px 32px;text-align:left;}
.contact-form.centered{max-width:620px;margin:0 auto;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-row{margin-bottom:16px;}
.form-row.full{grid-column:1 / -1;}
.form-label{display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;}
.form-input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:'Inter',sans-serif;font-size:14px;padding:11px 14px;outline:none;transition:border-color .2s;}
.form-input:focus{border-color:rgba(184,150,66,.55);}
.form-input::placeholder{color:var(--iron);}
select.form-input{appearance:none;}
textarea.form-input{min-height:110px;resize:vertical;}
.form-submit-row{margin-top:22px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.form-note{font-size:12px;color:var(--iron);}
.hp{position:absolute;left:-5000px;}

/* ===== FOOTER ===== */
.footer-cta{background:var(--bg-lift);border-bottom:1px solid var(--border);padding:58px 0;text-align:center;}
.footer-cta h2{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(1.7rem,3vw,2.4rem);color:var(--text);margin-bottom:24px;}
.footer-cta .cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
footer{padding:56px 0 40px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:48px;margin-bottom:46px;}
.footer-brand .footer-logo{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;letter-spacing:.08em;color:var(--text);margin-bottom:14px;}
.footer-tagline{font-size:13px;line-height:1.65;color:var(--text-muted);margin-bottom:20px;max-width:260px;}
.footer-social{display:flex;gap:12px;}
.footer-social a{width:34px;height:34px;border:1px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-muted);transition:border-color .2s,color .2s;}
.footer-social a:hover{border-color:var(--accent);color:var(--accent);}
.footer-col-title{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a,.footer-links li{font-size:13px;color:var(--text-muted);transition:color .2s;}
.footer-links a:hover{color:var(--text);}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:24px;flex-wrap:wrap;gap:12px;}
.footer-bottom p{font-size:12px;color:var(--iron);}

/* ===== LIGHT (cream) SECTIONS — break up the green ===== */
:root{--cream:#F4F1E9;--cream-2:#ECE4D4;--ink:#16281C;--ink-muted:#5D6B60;--ink-border:rgba(22,40,28,.14);--gold-deep:#9A7B2E;}
section.light{background:var(--cream);border-bottom:1px solid var(--ink-border);}
section.light .eyebrow{color:var(--gold-deep);}
section.light .section-title,section.light .svc-copy h2{color:var(--ink);}
section.light .section-title em{color:var(--gold-deep);}
section.light .section-lead,section.light .body-copy,section.light .svc-copy p,section.light .cred-lead{color:var(--ink-muted);}
section.light .gold-rule{background:var(--accent);}
/* cards on cream */
section.light .service-card,section.light .proj-item,section.light .team-card{background:#FFFDF9;border-color:var(--ink-border);}
section.light .service-card h3,section.light .proj-item-body h3,section.light .team-body h3{color:var(--ink);}
section.light .service-card p,section.light .proj-item-body .meta,section.light .proj-item-body .scope,section.light .team-body p{color:var(--ink-muted);}
section.light .service-card-img,section.light .proj-item-img,section.light .svc-media,section.light .team-photo{border-color:var(--ink-border);}
section.light .svc-block{border-color:var(--ink-border);}
section.light .svc-list li{color:var(--ink);}
section.light .stat-number{color:var(--gold-deep);}
section.light .stat-label{color:var(--ink-muted);}
section.light .roster-note{background:#FFFDF9;border-color:var(--ink-border);}
section.light .roster-note h4{color:var(--ink);}
section.light .roster-note p{color:var(--ink-muted);}
section.light .arch-strip span{color:var(--ink);}
section.light .client-chip{background:#FFFDF9;border-color:var(--ink-border);}
section.light .client-chip span{color:var(--ink);}
section.light .clients-note{color:var(--ink-muted);}
section.light .contact-info h2{color:var(--ink);}
section.light .contact-line .v{color:var(--ink);}
section.light .contact-form{background:#FFFDF9;border-color:var(--ink-border);}
section.light .form-label{color:var(--ink-muted);}
section.light .form-input{background:#fff;border-color:var(--ink-border);color:var(--ink);}
section.light .form-input::placeholder{color:#9aa79c;}
section.light .form-note{color:#9aa79c;}
section.light .testi-block{background:#FFFDF9;border-color:var(--ink-border);}
section.light .testi-block .q{color:var(--ink);}
section.light .testi-card{background:#FFFDF9;border-color:var(--ink-border);}
section.light .testi-card .quote{color:var(--ink);}
section.light .testi-card .role{color:var(--ink-muted);}

/* ===== PHOTO / BEFORE-AFTER / VIDEO ===== */
.media-cover{background-size:cover !important;background-position:center !important;}
.proj-item.feature{grid-column:1 / -1;}
.ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;}
.ba-item{position:relative;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background-size:cover;background-position:center;}
.ba-tag{position:absolute;top:12px;left:12px;background:rgba(13,27,20,.82);color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:3px;border:1px solid rgba(184,150,66,.45);}
#motion{border-bottom:1px solid var(--border);padding:70px 0;background:var(--bg);}
#motion .wrap{max-width:1120px;margin:0 auto;padding:0 40px;}
#motion .motion-head{margin-bottom:26px;}
#motion .motion-head .eyebrow{margin-bottom:8px;}
#motion .motion-head h2{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(1.7rem,3vw,2.6rem);color:var(--text);line-height:1.12;max-width:22ch;}
#motion video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#070c09;border:1px solid var(--border);border-radius:var(--radius);}
@media(max-width:640px){.ba-pair{grid-template-columns:1fr;}#motion .motion-cap{padding:26px 22px;}}

/* ===== ANIMATION — scroll reveal + hover pop ===== */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}
.service-card,.project-card,.proj-item,.testi-card,.team-card{transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;}
.service-card:hover,.project-card:hover,.proj-item:hover,.testi-card:hover,.team-card:hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(0,0,0,.30);border-color:rgba(184,150,66,.5);}
.service-card-img,.project-card-img,.proj-item-img,.svc-media,.team-photo,.about-image{transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.service-card:hover .service-card-img,.project-card:hover .project-card-img,.proj-item:hover .proj-item-img{transform:scale(1.05);}
.client-chip{transition:transform .25s ease,border-color .25s ease,background .25s ease;}
.client-chip:hover{transform:translateY(-3px);border-color:rgba(184,150,66,.55);}
.btn-primary,.btn-outline,.btn-secondary{transition:transform .2s ease,opacity .2s ease,background .2s ease,color .2s ease,border-color .2s ease;}
.btn-primary:hover,.btn-outline:hover{transform:translateY(-2px);}

/* ===== SERVICE STRIP + SPLIT ===== */
.svc-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;}
.svc-strip .s{aspect-ratio:4/3;border:1px solid var(--border);border-radius:var(--radius);background-size:cover;background-position:center;overflow:hidden;transition:transform .4s ease;}
.svc-strip .s:hover{transform:scale(1.02);}
section.light .svc-strip .s{border-color:var(--ink-border);}
.svc-head{text-align:center;padding:70px 0 8px;}
.svc-head .big-eyebrow{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;}
.svc-head h2{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.08;color:var(--ink);}
.svc-head h2 em{font-style:italic;color:var(--gold-deep);}
.svc-head .sub{color:var(--ink-muted);max-width:620px;margin:14px auto 0;font-size:15px;}
@media(max-width:640px){.svc-strip{grid-template-columns:1fr 1fr;}}

/* ===== GALLERY ===== */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;grid-auto-rows:250px;}
.gallery-item{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background-size:cover;background-position:center;background-color:#132118;}
.gallery-item.tall{grid-row:span 2;}
.gallery-item.wide{grid-column:span 2;}
.gallery-item::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,27,20,0) 55%,rgba(13,27,20,.55) 100%);opacity:0;transition:opacity .35s;}
.gallery-item:hover::after{opacity:1;}
.gallery-cap{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;font-family:'Cormorant Garamond',serif;font-size:1.08rem;color:#fff;opacity:0;transform:translateY(10px);transition:.35s;z-index:2;pointer-events:none;}
.gallery-item:hover .gallery-cap{opacity:1;transform:none;}
.gallery-item{transition:opacity .7s ease,transform .45s cubic-bezier(.2,.7,.2,1);}
.gallery-item.in:hover{transform:scale(1.015);}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px;}}
@media(max-width:640px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px;}.gallery-item.wide,.gallery-item.tall{grid-column:auto;grid-row:auto;}}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  .hero-inner{padding:92px 40px 80px;}
  #about .about-grid{grid-template-columns:1fr;gap:40px;}
  #about .about-image{aspect-ratio:16/10;}
  #services .services-grid{grid-template-columns:1fr;}
  .projects-grid{grid-template-columns:1fr 1fr;}
  .proj-list{grid-template-columns:1fr;}
  .svc-block{grid-template-columns:1fr;gap:32px;padding:56px 0;}
  .svc-block.rev .svc-media{order:0;}
  .team-grid{grid-template-columns:1fr 1fr;}
  .clients-grid{grid-template-columns:repeat(3,1fr);}
  .contact-split{grid-template-columns:1fr;gap:36px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px){
  .wrap,.util-inner,.nav-inner,.hero-inner,.page-hero-inner{padding-left:22px;padding-right:22px;}
  .logo-img{height:36px;}
  .lock-brand{font-size:16px;}
  section{padding:64px 0;}
  .projects-grid,.footer-grid,.form-grid,.svc-list,.team-grid,.testi-grid{grid-template-columns:1fr;}
  .clients-grid{grid-template-columns:1fr 1fr;}
  #projects .section-header{flex-direction:column;align-items:flex-start;}
  .stat-row{gap:32px;}
}
