:root{
  --navy:#061a3a;
  --navy2:#0a2348;
  --gold:#e4a522;
  --gold2:#f2bd42;
  --logo-blue:#1f90fe;
  --text:#0b1733;
  --muted:#5a6475;
  --line:#e8edf5;
  --soft:#f7f9fc;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);line-height:1.6;background:#fff}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:10;padding:14px 5vw;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{text-decoration:none;display:flex;flex-direction:column;gap:2px}
.brand img{width:188px;height:auto}
.brand span{color:var(--navy);font-size:.94rem;letter-spacing:.02em}
.nav{display:flex;align-items:center;gap:28px;font-weight:700}
.nav a{text-decoration:none;color:var(--navy)}
.nav-cta{background:var(--navy);color:white!important;padding:14px 22px;border-radius:5px;display:inline-flex;align-items:center;gap:10px}
.hero{min-height:640px;display:grid;grid-template-columns:1fr 1fr;background:#fff}
.hero-copy{padding:94px 5vw 80px;display:flex;flex-direction:column;justify-content:center}
.eyebrow,.section-label{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:.88rem;margin:0 0 14px}
h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.65rem,5vw,5.25rem);line-height:1.04;letter-spacing:-.04em;color:var(--navy);max-width:720px;margin:0}
.subhead{margin:26px 0 34px;max-width:560px;color:#263653;font-size:1.28rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:fit-content;min-height:56px;padding:0 28px;border-radius:5px;text-decoration:none;font-weight:800}
.primary{background:var(--navy);color:#fff;box-shadow:0 16px 38px rgba(6,26,58,.18)}
.gold{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#08172e}
.office-setting{position:relative;overflow:hidden;padding:0;background:#f4f1ec}
.office-setting:before,.office-setting:after{display:none}
.office-card{position:absolute;inset:0;overflow:hidden;background:var(--navy)}
.hero-photo{width:100%;height:100%;object-fit:contain;object-position:center}
.services{padding:70px 5vw 80px;text-align:center}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1120px;margin:10px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-grid article{padding:46px 34px}
.service-grid article+article{border-left:1px solid var(--line)}
.service-icon{margin:0 auto 18px;width:76px;height:76px}
.service-icon img{width:100%;height:100%;object-fit:contain}
.service-grid h2{margin:0 0 10px;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-size:1.55rem}
.service-grid p{margin:0 auto;color:var(--muted);max-width:260px}
.process-service{background:#fbfcff}
.process-label{margin:0 0 10px;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:900}
.process-service ol{display:grid;gap:10px;margin:16px auto 0;padding:0;list-style:none;text-align:left;max-width:230px}
.process-service li{display:flex;align-items:center;gap:10px;color:#273752;font-weight:700;font-size:.92rem;line-height:1.25}
.process-service li span{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:.78rem;font-weight:900}
.about{display:block;padding:48px 5vw 86px;background:var(--soft)}
.about-copy{max-width:1120px;margin:0 auto}
.about-copy:after{content:"";display:block;clear:both}
.about h2{margin:0 0 18px;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,4vw,3.6rem);line-height:1.08}
.signature-name{display:inline-block;font-family:"Brush Script MT","Segoe Script","Snell Roundhand","Lucida Handwriting",cursive;color:var(--logo-blue);font-size:1.12em;font-style:normal;font-weight:400;line-height:.9;letter-spacing:.01em;transform:rotate(-2deg)}
.about p{color:#273752;font-size:1.04rem;margin:0 0 14px}
.quote-image-card{float:right;width:min(46%,560px);margin:0 0 24px 42px;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(6,26,58,.12);border:1px solid var(--line);background:#fff}
.credential-bar{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);max-width:980px;width:100%;margin:20px auto 0;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 34px rgba(6,26,58,.06);overflow:hidden}
.credential-item{display:flex;align-items:center;gap:12px;min-height:96px;padding:18px}
.credential-item+.credential-item{border-left:1px solid var(--line)}
.credential-icon{display:block;flex:0 0 auto;width:34px;height:34px;max-width:34px;max-height:34px}
.credential-item h3{margin:0 0 4px;color:var(--navy);font-size:1rem;line-height:1.2}
.credential-item p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.35}
.vision-band{padding:64px 5vw;text-align:center;background:#fff}
.vision-band h2{margin:0 auto 18px;max-width:760px;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.08}
.vision-band p:not(.section-label){margin:0 auto 12px;max-width:860px;color:#273752;font-size:1.14rem}
.cta-band{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:34px 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cta-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:12px;background:rgba(228,165,34,.12);border:1px solid rgba(228,165,34,.32);flex:0 0 auto}
.cta-copy{flex:1}
.cta-band h2{margin:0;font-size:clamp(1.55rem,3vw,2.35rem)}
.cta-band p{margin:4px 0 0;color:rgba(255,255,255,.82)}
.footer{padding:42px 5vw;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px;border-top:1px solid var(--line)}
.footer img{width:170px;margin-bottom:10px}
.footer h3{color:var(--navy);margin:0 0 10px}
.footer p{margin:6px 0;color:#263653}
.footer a{text-decoration:none;color:#263653}
.copyright{background:var(--navy);color:rgba(255,255,255,.8);text-align:center;padding:16px;font-size:.92rem}
.mini-calendar,.big-calendar{position:relative;display:inline-block;border:2px solid currentColor;border-radius:3px;color:var(--gold)}
.mini-calendar{width:18px;height:18px}
.big-calendar{width:34px;height:34px;color:var(--gold)}
.mini-calendar:before,.big-calendar:before{content:"";position:absolute;left:0;right:0;top:5px;border-top:2px solid currentColor}
.mini-calendar:after,.big-calendar:after{content:"";position:absolute;left:4px;right:4px;bottom:4px;height:3px;background:repeating-linear-gradient(90deg,currentColor 0 3px,transparent 3px 6px)}
.mini-calendar.dark{color:#08172e}
.popup{position:fixed;right:24px;bottom:24px;max-width:340px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 60px rgba(6,26,58,.18);padding:22px;transform:translateY(30px);opacity:0;pointer-events:none;transition:.25s ease;z-index:20}
.popup.show{transform:translateY(0);opacity:1;pointer-events:auto}
.popup-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:24px;cursor:pointer}
.popup h3{margin:0 24px 6px 0;color:var(--navy)}
.popup p{margin:0 0 12px;color:var(--muted)}
.popup a{color:var(--navy);font-weight:800;text-decoration:none;border-bottom:2px solid var(--gold)}
@media(max-width:1100px){
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .service-grid article:nth-child(odd){border-left:0}
  .service-grid article:nth-child(n+3){border-top:1px solid var(--line)}
  .credential-bar{grid-template-columns:repeat(2,1fr)}
  .credential-item+.credential-item{border-left:0}
  .credential-item:nth-child(even){border-left:1px solid var(--line)}
  .credential-item:nth-child(n+3){border-top:1px solid var(--line)}
}
@media(max-width:880px){
  .site-header{position:static;flex-direction:column;align-items:flex-start}
  .nav{width:100%;justify-content:space-between;gap:12px;flex-wrap:wrap}
  .nav-cta{padding:10px 14px}
  .hero{grid-template-columns:1fr}
  .hero-copy{padding-top:54px}
  .office-setting{min-height:420px}
  .office-card{position:absolute;inset:0;width:auto}
  .service-grid,.about,.footer{grid-template-columns:1fr}
  .service-grid article+article{border-left:0;border-top:1px solid var(--line)}
  .service-grid article:nth-child(n+3){border-top:1px solid var(--line)}
  .quote-image-card{float:none;width:100%;margin:0 0 24px}
  .credential-bar{grid-template-columns:1fr}
  .credential-item+.credential-item{border-left:0;border-top:1px solid var(--line)}
  .credential-item:nth-child(even){border-left:0}
  .credential-item:nth-child(n+3){border-top:1px solid var(--line)}
  .cta-band{flex-direction:column;align-items:flex-start}
  .popup{left:16px;right:16px;bottom:16px;max-width:none}
}
