  body {
    margin: 0;
    background-color: #fff;
  }

  :root{
  --accent: #f87c14;
  --heading-color: rgba(47,62,73,0.95);
  --body-color: rgba(47,62,73,0.85);
  --serif: "Playfair Display", Georgia, serif;
  --ui: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }

  header{
    margin:0;
    padding:60px 20px 20px 20px;
    background-color:white;
    position:relative;
    background-size:auto;
    background-repeat:repeat;
    color:#373F51;
    width:100%;
    box-sizing:border-box;
    transition:all var(--transition-speed) ease;
    z-index:1000;
  }

  .header-logo{
    position:absolute;
    top:10px;
    left:20px;
    max-width:180px;
    width:20%;
    height:auto;
    transform:translateY(0);
    transition:transform var(--transition-speed) ease,opacity var(--transition-speed) ease,visibility var(--transition-speed) ease;
  }

  header h1{
    font-size:36px;
    font-family:"Playfair Display Flex",serif;
    letter-spacing:2px;
    margin:0;
    font-weight:bold;
    text-align:center;
    padding-bottom:67px;
    transition:all var(--transition-speed) ease;
    color:#373F51;
  }

  .desktop-nav{
    margin-top:20px;
    text-align:center;
    transition:all var(--transition-speed) ease;
  }

  .desktop-nav ul{
    list-style:none;
    padding:0;
    margin:0;
    display:inline-flex;
    gap:30px;
    align-items:center;
  }

  .desktop-nav ul li{
    font-size:20px;
  }

  .desktop-nav ul li a{
    text-decoration:none;
    transition:color 0.3s ease;
    color:#707786;
  }

  .desktop-nav ul li a.active{
    color:#ff6600;
  }

  .desktop-nav ul li a:hover{
    color:#A7ABB5;
  }

  .nav-toggle{
    background:transparent;
    border:0;
    color:inherit;
    position:absolute;
    right:20px;
    top:18px;
  }

  .nav-toggle__box{display:inline-block}

  .nav-toggle__bar{display:block;width:22px;height:2px;margin:4px 0;background:#ddd}

  @media (max-width:768px){
    .header-logo{max-width:120px;left:10px;top:50%;transform:translateY(-50%)}
    header h1{font-size:28px;padding-bottom:40px}
  }

  @media (max-width:480px){
    .header-logo{max-width:40px;height:auto;position:absolute;top:50%;left:10px;transform:translateY(-50%)}
    .desktop-nav{display:none}
    header{
      position:fixed;
      top:0;
      left:0;
      width:100%;
      padding:10px 20px;
      box-sizing:border-box;
    }
    header h1{font-size:20px;line-height:24px;padding:0;margin:0;text-align:center}
  }

  @media (min-width:769px){
    header.scrolled{
      position:fixed;
      top:0;
      left:0;
      width:100%;
      height:var(--scrolled-height);
      padding:8px 20px;
      box-shadow:0 4px 12px rgba(0,0,0,0.08);
      transition:all var(--transition-speed) ease;
    }

    header.scrolled .header-logo{
      opacity:0;
      transform:translateY(-20px) scale(.95);
      visibility:hidden;
      pointer-events:none;
    }

    header.scrolled h1{
      opacity:0;
      height:0;
      padding:0;
      margin:0;
      overflow:hidden;
      transform:translateY(-10px);
    }

    header.scrolled .desktop-nav{
      margin-top:0;
      display:flex;
      align-items:center;
      justify-content:center;
      height:100%;
    }

    header.scrolled .nav-toggle{
      display:none;
    }
  }

  @media (max-width:480px){
    header.scrolled .desktop-nav{display:flex !important}
  }

  #header-spacer{
    height:0;
    transition:height var(--transition-speed) ease;
  }

  .about-section {
  padding: 48px 20px 8px;
  text-align: center;
  font-family: "Playfair Display", Georgia, serif; 
  background: transparent;
  }

  .about-title {
  font-weight: 400;
  font-size: clamp(32px, 5vw, 56px);
  color: rgba(47,62,73,0.95);
  margin: 0;
  line-height: 1.05;
  }

  .title-underline {
  width: 72px;
  height: 6px;
  background: #f87c14;  
  border-radius: 4px;
  margin: 14px auto 0;
  }

  @media (max-width: 480px) {
  .about-section { padding: 28px 12px 6px;}
  .about-title { font-size: 28px; }
  .title-underline { width: 56px; height: 5px; margin-top: 10px; }
  }

  .contact-section { font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: rgba(47,62,73,0.88); background: #fff; padding: 36px 20px; }
  .contact-inner { max-width: 1200px; margin: 0 auto; }

  .contact-info { display: flex; gap: 36px; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; }
  .info-item { flex: 1 1 30%; min-width: 220px; color: rgba(47,62,73,0.92); }
  .info-icon { width: 28px; height: 28px; color: #f87c14; margin-bottom: 8px; display:block; }
  .info-item h4 { margin: 0; color: #f87c14; font-weight: 600; font-family: "Playfair Display", Georgia, serif; font-size: 18px; }
  .muted { color: rgba(47,62,73,0.6); font-size: 14px; margin-top: 6px; margin-bottom: 6px; }
  .contact-link { color: rgba(47,62,73,0.95); text-decoration: none; display: inline-block; font-weight: 600; margin-top: 6px; }

  .divider { height: 1px; background: rgba(16,24,32,0.06); margin: 26px 0; border-radius: 2px; }

  .contact-grid { display: grid; grid-template-columns: 1fr 420px; gap: 36px; align-items: start; }
  .map-wrap { border-radius: 12px; overflow: hidden; box-shadow: 0 10px 30px rgba(16,24,32,0.06); }

  .form-wrap { padding: 8px 6px; }
  .form-wrap h3 { font-family: "Playfair Display", Georgia, serif; font-weight: 400; font-size: 28px; margin: 6px 0 10px; color: rgba(47,62,73,0.95); }
  .form-intro { color: rgba(47,62,73,0.75); line-height: 1.7; margin-bottom: 18px; max-width: 420px; }

  .site-form { display:flex; flex-direction: column; gap: 12px; }
  .site-form label { display:block; }
  .label-text { display:block; font-size: 13px; color: rgba(47,62,73,0.6); margin-bottom: 6px; }
  .site-form input[type="text"],
  .site-form input[type="email"],
  .site-form textarea {
  width:100%; box-sizing:border-box; padding: 12px 14px; border-radius: 6px; border:1px solid rgba(16,24,32,0.08); font-size:15px;
  background: #fff; color: rgba(47,62,73,0.9);
  }
  .site-form textarea { resize: vertical; min-height: 120px; }

  .submit-btn {
  display: inline-flex; align-items:center; gap:10px; border:0; background: transparent; cursor:pointer; padding:0;
  }
  .submit-btn img { height:48px; display:block; }
  .submit-fallback { display:inline-block; background:#fdeee0; color:#1c1c1c; padding:14px 24px; border-radius:40px; box-shadow:0 8px 0 rgba(0,0,0,0.06); }

  .form-note { margin-top: 10px; font-size: 14px; color: rgba(47,62,73,0.6); }

  @media (max-width: 920px) {
  .contact-grid { grid-template-columns: 1fr; }
  .contact-info { gap: 18px; }
  .info-item { min-width: 160px; flex:1 1 100%; }
  .map-wrap { min-height: 300px; }
  .form-wrap { order: 2; }
  }