
:root{
  --navy:#071d2c;
  --navy2:#0c3142;
  --gold:#d39a42;
  --gold2:#efc270;
  --ivory:#f7f3ec;
  --cream:#eee6d8;
  --ink:#12212c;
  --muted:#66727a;
  --white:#ffffff;
  --shadow:0 18px 45px rgba(7,29,44,.13);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--ivory);line-height:1.65}
h1,h2,h3,.brand-name{font-family:Georgia,"Times New Roman",serif}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1160px,92%);margin:auto}
.topbar{position:sticky;top:0;z-index:50;background:rgba(7,29,44,.98);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:42px;height:42px;border:1.6px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:20px}
.brand-name{font-size:19px;line-height:1.05}
.brand small{display:block;font-size:11px;color:#dce5e9;margin-top:4px}
.navlinks{display:flex;align-items:center;gap:25px;font-size:14px}
.navlinks a{color:#eef5f7;position:relative}
.navlinks a:hover,.navlinks a.active{color:var(--gold2)}
.navlinks a.active:after{content:"";position:absolute;height:2px;background:var(--gold);left:0;right:0;bottom:-10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:13px 20px;font-weight:700;transition:.2s}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#102331;box-shadow:0 8px 20px rgba(211,154,66,.25)}
.btn-outline{border:1px solid rgba(255,255,255,.35);color:#fff}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:27px}

.hero{background:
linear-gradient(90deg,rgba(7,29,44,.98) 0%,rgba(7,29,44,.92) 42%,rgba(7,29,44,.46) 67%,rgba(7,29,44,.18) 100%),
radial-gradient(circle at 78% 30%,rgba(239,194,112,.16),transparent 26%),
#0b2635; color:white;overflow:hidden}
.hero-grid{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;align-items:end;gap:20px}
.hero-copy{align-self:center;padding:80px 0 92px}
.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--gold2);font-size:13px;font-weight:800}
.hero h1{font-size:clamp(46px,6vw,78px);line-height:1.02;margin:13px 0 20px;font-weight:500}
.hero h1 span{color:var(--gold)}
.hero p{max-width:610px;color:#e6edf0;font-size:18px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-photo-wrap{position:relative;min-height:600px;display:flex;align-items:flex-end;justify-content:center}
.hero-photo-wrap:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:rgba(211,154,66,.14);filter:blur(1px);bottom:40px}
.hero-photo{position:relative;width:min(520px,100%);max-height:590px;object-fit:cover;object-position:center 12%;border-radius:24px 24px 0 0;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.stats{margin-top:-38px;position:relative;z-index:4}
.stats-grid{background:rgba(5,28,42,.96);border:1px solid rgba(211,154,66,.38);border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);padding:22px;color:#fff;box-shadow:var(--shadow)}
.stat{padding:8px 18px;border-right:1px solid rgba(255,255,255,.1)}
.stat:last-child{border-right:0}
.stat strong{display:block;font-size:18px}.stat span{font-size:13px;color:#d9e2e6}

.section{padding:92px 0}
.section.alt{background:#fff}
.section-title{max-width:680px;margin-bottom:44px}
.section-title h2{font-size:clamp(36px,4vw,54px);line-height:1.08;margin:8px 0 14px;font-weight:500}
.section-title p{color:var(--muted)}
.gold{color:var(--gold)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid #e7e0d5;border-radius:16px;padding:26px;box-shadow:0 10px 30px rgba(7,29,44,.06)}
.card-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#f6ecdc;color:#a66c17;font-size:22px;margin-bottom:17px}
.card h3{font-size:22px;margin:0 0 8px}.card p{color:#617078;margin:0}
.quote{background:var(--navy);color:#fff;padding:24px 30px;border-radius:14px;margin-top:30px;text-align:center}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.photo-card{background:#e9e2d6;border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.photo-card img{border-radius:16px;max-height:600px;width:100%;object-fit:cover;object-position:center 15%}
.list{display:grid;gap:13px;margin:24px 0}
.list-item{display:flex;gap:12px;align-items:flex-start}
.tick{color:var(--gold);font-weight:900}

.page-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:95px 0 70px}
.page-hero h1{font-size:clamp(44px,6vw,72px);font-weight:500;line-height:1.05;margin:8px 0 14px}
.page-hero p{max-width:700px;color:#dbe5e9;font-size:18px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service{background:#fff;border:1px solid #e8e0d3;border-radius:16px;padding:25px}
.service h3{margin:10px 0 6px}
.service p{margin:0;color:#657078}
.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.approach-item{padding:25px;border-radius:16px;background:#fff;border:1px solid #e6dfd3}
.contact-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px}
.contact-panel{background:linear-gradient(145deg,var(--navy),#0d394b);color:#fff;border-radius:22px;padding:34px}
.contact-panel h2{font-size:42px;margin:5px 0 14px}
.contact-row{margin:18px 0;color:#e4edf0}
.contact-row strong{color:var(--gold2)}
.form-card{background:#fff;border-radius:22px;padding:32px;box-shadow:var(--shadow);border:1px solid #e7e0d5}
.form-card input,.form-card textarea{width:100%;padding:14px 15px;border:1px solid #d9d4ca;border-radius:9px;margin:7px 0 13px;font:inherit}
.form-card textarea{min-height:140px;resize:vertical}
.form-note{font-size:12px;color:#7b858b;margin-top:10px}
.footer{background:#061824;color:#c9d5da;padding:28px 0;margin-top:0}
.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#f1e4cf;color:#8b5c17;font-weight:800;font-size:12px}
.notice{background:#fff7e8;border-left:4px solid var(--gold);padding:15px 18px;border-radius:8px;color:#5c4a2d}

@media(max-width:900px){
  .menu-btn{display:block}
  .navlinks{position:absolute;left:0;right:0;top:76px;background:#071d2c;display:none;flex-direction:column;align-items:flex-start;padding:20px 4%;gap:18px}
  .navlinks.open{display:flex}
  .desktop-book{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:auto}
  .hero-copy{padding:70px 0 20px}
  .hero-photo-wrap{min-height:430px}
  .hero-photo{max-height:430px;width:82%}
  .stats{margin-top:0;background:#071d2c;padding:0 0 30px}
  .stats-grid{grid-template-columns:1fr 1fr}
  .stat:nth-child(2){border-right:0}
  .cards,.service-grid,.approach-grid{grid-template-columns:1fr 1fr}
  .two-col,.contact-wrap{grid-template-columns:1fr}
}
@media(max-width:600px){
  .hero h1{font-size:48px}
  .hero p{font-size:16px}
  .hero-photo{width:96%}
  .stats-grid,.cards,.service-grid,.approach-grid{grid-template-columns:1fr}
  .stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .stat:last-child{border-bottom:0}
  .section{padding:68px 0}
  .footer-row{flex-direction:column;align-items:flex-start}
}
