*{box-sizing:border-box;}
body{margin:0;background:#FBFAF7;font-family:'Hanken Grotesk',sans-serif;color:#14132E;}
::selection{background:#0C0152;color:#fff;}
.lnk:hover{color:#0C0152 !important;}
.btn-primary:hover{background:#1a0a78 !important;}
.svc:hover, .opt:hover, .chip:hover{border-color:#0C0152 !important;}
.svc{transition:.18s;}
.svc:hover{transform:translateY(-3px);}
.it{font-style:italic;font-weight:500;color:#0C0152;}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* layout containers */
.container{max-width:1200px;margin:0 auto;padding:0 40px;}
.section-pad{padding:76px 40px;}
.narrow{max-width:820px;margin:0 auto;padding:76px 40px;}

/* header / nav */
.nav-bar{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.9);backdrop-filter:blur(10px);border-bottom:1px solid #EBE6DC;}
.nav-inner{max-width:1200px;margin:0 auto;padding:14px 40px;display:flex;align-items:center;justify-content:space-between;}
.nav-links{display:flex;align-items:center;gap:26px;font-size:14.5px;font-weight:500;color:#46475F;}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;margin:-8px;}
.hamburger span{display:block;width:22px;height:2px;background:#0C0152;margin:5px 0;}
.mobile-nav{display:none;flex-direction:column;background:#FBFAF7;border-bottom:1px solid #EBE6DC;padding:6px 20px 16px;}
.mobile-nav.open{display:flex;}
.mobile-nav a{padding:13px 2px;text-decoration:none;color:#14132E;font-weight:600;font-size:15px;border-bottom:1px solid #EBE6DC;}
.mobile-nav a.active{color:#0C0152;}
.mobile-nav a:last-child{border-bottom:none;}

/* grids */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;}
.grid-opt-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.grid-opt-5{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}
.grid-opt-6{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;}
.split-maison{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center;}
.split-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px;}
.field-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}

@media (max-width: 900px){
  .nav-links{display:none;}
  .hamburger{display:block;}
  .grid-3, .grid-4{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .split-maison, .split-contact{grid-template-columns:1fr;}
  .split-maison img{height:280px !important;}
}
@media (max-width: 640px){
  .container, .section-pad, .narrow, .nav-inner{padding-left:20px;padding-right:20px;}
  .section-pad{padding-top:48px;padding-bottom:48px;}
  .narrow{padding-top:40px;padding-bottom:40px;}
  .grid-2, .grid-3, .grid-4{grid-template-columns:1fr;}
  .grid-5{grid-template-columns:repeat(2,1fr);}
  .grid-opt-3{grid-template-columns:1fr;}
  .grid-opt-5, .grid-opt-6{grid-template-columns:repeat(3,1fr);}
  .footer-grid{grid-template-columns:1fr;}
  .field-2{grid-template-columns:1fr;}
}
