:root{
  --cream:#f7f3eb;
  --cream-2:#fcfaf6;
  --green:#163126;
  --green-2:#214236;
  --gold:#caa75e;
  --gold-2:#e4cea0;
  --text:#173127;
  --muted:#5d6f67;
  --white:#ffffff;
  --line:#ddd3c3;
  --shadow:0 12px 34px rgba(23,49,39,.08);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,var(--cream-2),var(--cream));color:var(--text);line-height:1.65}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 32px));margin:0 auto}
.topbar{background:var(--green);color:#f4e8c9;text-align:center;padding:10px 16px;font-size:.92rem}
.site-header{position:sticky;top:0;z-index:50;background:rgba(252,250,246,.95);border-bottom:1px solid rgba(23,49,39,.08);backdrop-filter:blur(10px)}
.nav{min-height:90px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.brand{display:flex;align-items:center;gap:16px}
.brand img{width:72px;height:72px;object-fit:cover;border-radius:22px;box-shadow:var(--shadow)}
.brand-text strong{display:block;font-size:1.45rem;line-height:1.08}
.brand-text span{display:block;margin-top:6px;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.14em}
.menu{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.menu a{font-weight:600}
.menu-btn{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#2b220d;padding:12px 18px;border-radius:999px;font-weight:800}
.section{padding:56px 0}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:26px;align-items:stretch}
.card-light,.card-dark,.industry-card,.service-box{border-radius:var(--radius);box-shadow:var(--shadow)}
.card-light{background:var(--white);border:1px solid var(--line);padding:36px}
.card-dark{background:linear-gradient(180deg,var(--green),#1c3a2f);color:#fff;padding:34px}
.eyebrow{display:inline-block;padding:8px 14px;border-radius:999px;background:#f1e8d7;font-size:.9rem;font-weight:700;margin-bottom:16px}
.hero h1,.section-head h2,.subhead,.content-box h2,.cta-card h2,.panel-title,.site-footer h3,.site-footer h4{font-family:"Cormorant Garamond", Georgia, serif}
.hero h1{font-size:clamp(2.7rem,5vw,5rem);line-height:.98;margin:0 0 18px}
.hero p,.section-head p,.content-box p,.service-box p,.industry-card p,.feature-card p{color:var(--muted)}
.card-dark p,.card-dark li,.card-dark a,.detail-item,.panel-label{color:#edf2ef}
.hero-points{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.hero-points span{padding:8px 12px;border-radius:999px;background:#f4ede0;border:1px solid var(--line);font-size:.92rem}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:800;border:none;cursor:pointer}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#2b220d}
.btn-green{background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff}
.hero-panel{display:flex;flex-direction:column;justify-content:flex-start}
.hero-logo{width:112px;height:112px;object-fit:cover;border-radius:26px;margin:0 0 18px}
.panel-title{font-size:2.45rem;line-height:1.04;margin:0 0 4px}
.panel-label{margin:0 0 18px;font-size:1.2rem;font-weight:700}
.detail-list{display:grid;gap:12px;margin:8px 0 18px}
.detail-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09)}
.detail-item .icon{width:22px;flex:0 0 22px;text-align:center}
.hero-card-note{margin-top:auto;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09)}
.section-head{max-width:860px;margin:0 auto 28px;text-align:center}
.section-head h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 12px}
.grid{display:grid;gap:20px}
.grid.two{grid-template-columns:1fr 1fr}
.grid.four{grid-template-columns:repeat(4,1fr)}
.feature-card{padding:24px}
.feature-num{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#f3e8cb;font-weight:800;margin-bottom:14px}
.alt{background:rgba(255,255,255,.42);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.industries{background:#d3d0ca}
.service-groups{display:grid;gap:32px}
.subhead{text-align:center;font-size:2rem;margin:0 0 18px}
.service-box{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;background:#dbd8d1;padding:18px}
.service-icon,.industry-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#fff;font-size:1.45rem;font-weight:700}
.service-box h4,.industry-card h4,.feature-card h3{margin:0 0 8px}
.industry-card{background:#f7f3eb;text-align:center;padding:20px 18px}
.industry-icon{margin:0 auto 12px}
.content-box{padding:32px}
.check-list,.light-list{margin:18px 0 0 20px;padding:0}
.check-list li,.light-list li{margin:8px 0}
.cta-card{padding:36px}
.quote-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:start;margin-top:20px}
.contact-summary{display:grid;gap:12px}
.contact-pill{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.quote-form{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:22px}
.field{margin-bottom:14px}
.field label{display:block;margin:0 0 8px;color:#f2e6c8;font-weight:700}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:14px 15px;border-radius:14px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);color:#fff;font:inherit}
.quote-form textarea{min-height:130px;resize:vertical}
.quote-form input::placeholder,.quote-form textarea::placeholder{color:#d5ddd7}
.site-footer{background:var(--green);color:#fff;margin-top:30px;padding-top:36px}
.footer-grid{display:grid;grid-template-columns:1.15fr .8fr .9fr;gap:26px;align-items:start}
.footer-brand{display:flex;gap:16px;align-items:center}
.footer-brand img{width:74px;height:74px;object-fit:cover;border-radius:22px}
.footer-brand h3{font-size:2rem;line-height:1.05;margin:0 0 8px}
.footer-brand p{margin:0 0 8px}
.site-footer h4{font-size:1.45rem;margin:6px 0 14px}
.site-footer p,.site-footer a{color:#edf2ef;margin:0 0 10px}
.muted{color:#d5dfd8}
.footer-bottom{padding:18px 0 24px;margin-top:18px;border-top:1px solid rgba(255,255,255,.08);text-align:center;color:#d5dfd8}
@media (max-width:1000px){
  .hero-grid,.grid.four,.quote-layout,.footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .nav,.menu{display:block}
  .menu{margin-top:14px}
  .menu a,.menu-btn{display:inline-block;margin:0 12px 10px 0}
  .hero-grid,.grid.two,.grid.four,.quote-layout,.footer-grid,.form-row{grid-template-columns:1fr}
  .card-light,.card-dark,.content-box,.cta-card{padding:24px}
  .brand img{width:62px;height:62px}
  .hero h1{font-size:3rem}
  .footer-brand{align-items:flex-start}
}


/* $50K luxury upgrade */
:root{
  --lux-shadow: 0 18px 45px rgba(16,37,30,.10);
  --lux-shadow-soft: 0 10px 24px rgba(16,37,30,.06);
}

body{
  letter-spacing:.01em;
}

.site-header{
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
}

.menu a{
  position:relative;
  transition:.2s ease;
}
.menu a:not(.menu-btn)::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  transform:scaleX(0);
  transform-origin:center;
  transition:.2s ease;
}
.menu a:not(.menu-btn):hover::after{
  transform:scaleX(1);
}

.menu-btn,
.btn{
  box-shadow: var(--lux-shadow-soft);
}
.menu-btn:hover,
.btn:hover{
  transform: translateY(-1px);
}

.section{
  padding:72px 0;
}

.hero-grid{
  gap:34px;
}

.card-light,
.card-dark,
.service-box,
.industry-card,
.contact-pill,
.quote-form{
  box-shadow: var(--lux-shadow);
}

.card-light{
  padding:46px;
  border-radius:32px;
}

.card-dark{
  padding:40px;
  border-radius:32px;
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.07), transparent 28%),
    linear-gradient(180deg,#173529,#214236);
}

.hero h1{
  font-size: clamp(3rem, 5.2vw, 5.5rem);
  max-width: 10ch;
}

.hero-copy p{
  max-width: 60ch;
}

.hero-panel{
  position:relative;
  overflow:hidden;
}
.hero-panel::after{
  content:"";
  position:absolute;
  right:-60px;
  top:-60px;
  width:220px;
  height:220px;
  background: radial-gradient(circle, rgba(228,206,160,.18), transparent 65%);
  pointer-events:none;
}

.hero-logo{
  width:124px;
  height:124px;
  border-radius:28px;
  box-shadow: 0 16px 34px rgba(0,0,0,.18);
}

.panel-title{
  font-size:2.7rem;
}

.panel-label{
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:1rem;
  opacity:.9;
}

.detail-item{
  border-radius:18px;
  padding:14px 16px;
}

.section-head{
  margin-bottom:36px;
}
.section-head h2{
  letter-spacing:.01em;
}

.feature-card{
  min-height: 100%;
  transition:.2s ease;
}
.feature-card:hover,
.service-box:hover,
.industry-card:hover{
  transform: translateY(-3px);
}

.service-groups{
  gap:40px;
}

.service-box{
  padding:22px;
  border-radius:26px;
  border:1px solid rgba(22,49,38,.06);
  background: linear-gradient(180deg,#dfddd6,#d6d2ca);
}

.service-icon,
.industry-icon{
  box-shadow: 0 10px 18px rgba(202,167,94,.20);
}

.industry-card{
  border-radius:26px;
  padding:24px 20px;
  border:1px solid rgba(22,49,38,.06);
}

.content-box{
  border-radius:32px;
  box-shadow: var(--lux-shadow);
}

.cta-card{
  border-radius:34px;
}

.quote-layout{
  gap:28px;
}

.contact-pill{
  border-radius:20px;
}

.quote-form{
  border-radius:26px;
  padding:26px;
}

.quote-form input,
.quote-form select,
.quote-form textarea{
  border-radius:16px;
}

.footer-grid{
  padding-top:4px;
}
.footer-brand img{
  box-shadow: 0 12px 22px rgba(0,0,0,.16);
}

.footer-bottom{
  margin-top:24px;
}

@media (max-width:760px){
  .section{
    padding:56px 0;
  }
  .card-light,
  .card-dark,
  .content-box,
  .cta-card{
    padding:26px;
  }
}
@media (max-width: 768px) {
  html, body {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
  }

  .container,
  .wrapper,
  .section,
  .content,
  .hero,
  .hero-grid,
  .grid,
  .card-light,
  .card-dark,
  .content-box,
  .cta-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }

  .container,
  .wrapper,
  .section,
  .content,
  .hero,
  .content-box,
  .cta-card {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  img {
    max-width: 100%;
    height: auto;
  }
}

​
@media (max-width: 768px) { html, body {
width: 100%;
max-width: 100%;
margin: 0;
padding: 0;
overflow-x: hidden;
}

.container {
width: 100% !important;
max-width: 100% !important;
padding-left: 16px !important;
padding-right: 16px !important;
margin-left: 0 !important;
margin-right: 0 !important;
box-sizing: border-box;
}

.topbar .container,
.site-header .container,
.section .container,
footer .container {
width: 100% !important;
max-width: 100% !important;
padding-left: 16px !important;
padding-right: 16px !important;
margin: 0 auto !important;
box-sizing: border-box;
}

.topbar {
font-size: 12px !important;
text-align: center !important;
padding: 8px 12px !important;
}

.site-header {
position: relative !important;
}

nav {
min-height: auto !important;
flex-wrap: wrap !important;
gap: 12px !important;
justify-content: space-between !important;
}

.brand {
width: 100% !important;
justify-content: flex-start !important;
gap: 12px !important;
}

.brand img {
width: 56px !important;
height: 56px !important;
object-fit: cover !important;
}

.brand-text strong {
font-size: 1.1rem !important;
line-height: 1.15 !important;
display: block !important;
}

.brand-text span {
font-size: 0.72rem !important;
line-height: 1.2 !important;
letter-spacing: 0.08em !important;
}

.menu {
width: 100% !important;
justify-content: flex-start !important;
gap: 10px !important;
flex-wrap: wrap !important;
}

.menu a {
font-size: 0.92rem !important;
}

.menu .btn-gold,
.menu .menu-btn,
.btn,
.btn-gold,
.btn-outline {
width: 100% !important;
text-align: center !important;
justify-content: center !important;
}

.hero-grid,
.two-col,
.services-grid,
.industries-grid,
.feature-grid,
.grid {
display: grid !important;
grid-template-columns: 1fr !important;
gap: 20px !important;
}

.hero,
.card-light,
.card-dark,
.service-box,
.industry-card,
.panel,
.panel-card,
.content-box,
.quote-box,
.contact-card,
.cta-card {
width: 100% !important;
max-width: 100% !important;
margin: 0 !important;
box-sizing: border-box !important;
}

.card-light,
.card-dark,
.content-box,
.quote-box,
.contact-card,
.cta-card {
padding: 20px !important;
border-radius: 22px !important;
}

.hero h1 {
font-size: 2rem !important;
line-height: 1.08 !important;
margin-bottom: 14px !important;
}

.hero p,
.service-box p,
.industry-card p,
.panel p,
.quote-box p,
.contact-card p {
font-size: 1rem !important;
line-height: 1.6 !important;
}

.hero-actions,
.hero-points {
flex-direction: column !important;
align-items: stretch !important;
gap: 12px !important;
}

.hero-actions a,
.hero-actions button {
width: 100% !important;
}

.feature-card,
.service-box,
.industry-card,
.panel,
.mini-card {
min-height: auto !important;
}

img {
max-width: 100% !important;
height: auto !important;
display: block !important;
}

iframe,
video {
max-width: 100% !important;
}

footer .footer-grid,
.footer-grid {
display: grid !important;
grid-template-columns: 1fr !important;
gap: 20px !important;
}

footer {
text-align: left !important;
}
}
/* MOBILE FIX */
@media (max-width: 768px) {

  .container{
    width:100%;
    padding-left:20px;
    padding-right:20px;
    box-sizing:border-box;
  }

  .hero-grid{
    display:block;
  }

  .menu{
    flex-wrap:wrap;
    gap:12px;
  }

  .brand{
    gap:10px;
  }

  .brand img{
    width:55px;
    height:55px;
  }

  h1{
    font-size:28px;
    line-height:1.2;
  }

  .hero-actions{
    flex-direction:column;
    gap:12px;
  }

  .hero-actions a{
    width:100%;
    text-align:center;
  }

  .services-grid,
  .industries-grid{
    grid-template-columns:1fr;
  }

}
