
  :root{
    --bg:#FAF8F4; --warm:#EDE8DF; --dark:#17140F;
    --text:#15130F; --text-dim:#5F5B54; --text-dim-2:#6B675F;
    --accent:#C8452E; --accent-dim:#F7E2DC;
    --green:#3F6E52; --green-dim:#E3EDE6;
    --border:rgba(21,19,15,0.10); --border-2:rgba(21,19,15,0.16);
    --radius:20px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0; background:var(--bg); font-family:'Plus Jakarta Sans',-apple-system,sans-serif; color:var(--text);}
  h1,h2,h3{margin:0; letter-spacing:-0.01em;}
  p{margin:0;}
  a{color:var(--text); text-decoration:none;}
  img{max-width:100%; display:block;}
  button{font-family:inherit; cursor:pointer; border:none; background:none;}
  a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
  .card{background:#fff; border:1px solid var(--border); border-radius:var(--radius);}
  .btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:13px 24px; border-radius:999px; font-size:13.5px; font-weight:700; transition:transform .15s ease, box-shadow .15s ease;}
  .btn:hover{transform:translateY(-1px);}
  .btn-accent{background:var(--accent); color:#fff; width:100%;}
  .btn-accent:hover{box-shadow:0 10px 20px -10px rgba(226,84,60,0.55);}
  .spinner{width:15px; height:15px; border-radius:999px; border:2px solid rgba(255,255,255,0.4); border-top-color:#fff; animation:spin .7s linear infinite; display:none;}
  .btn-accent.loading .spinner{display:inline-block;}
  @keyframes spin{to{transform:rotate(360deg);}}

  /* --- Nav --- */
  .topbar{background:var(--dark); color:#fff; text-align:center; padding:11px 20px; font-size:13.5px; font-weight:600;}
  .nav{position:sticky; top:0; z-index:50; background:#fff; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px max(20px, calc((100vw - 1216px) / 2 + 20px)); border-bottom:1px solid var(--border);}
  @media (min-width:900px){ .nav{padding:18px max(32px, calc((100vw - 1216px) / 2 + 32px));} }
  .logo{font-weight:800; font-size:16px;}
  .navright a{font-size:13.5px; font-weight:600; color:var(--text-dim);}
  .navright a:hover{color:var(--text);}

  .container{max-width:1216px; margin:0 auto; padding:0 20px;}
  @media (min-width:900px){ .container{padding:0 32px;} }

  .chead{text-align:center; padding:56px 0 8px;}
  .chead h1{font-size:clamp(28px,4.4vw,42px); font-weight:800;}
  .chead p{font-size:15px; color:var(--text-dim); margin-top:14px; max-width:480px; margin-left:auto; margin-right:auto; line-height:1.6;}

  .clayout{display:grid; grid-template-columns:1fr; gap:28px; padding:44px 0 72px;}
  @media (min-width:900px){ .clayout{grid-template-columns:1fr 1.3fr;} }

  .info-list{display:flex; flex-direction:column; gap:16px;}
  .info-item{padding:20px; display:flex; gap:14px; align-items:flex-start;}
  .info-icon{width:42px; height:42px; border-radius:12px; background:var(--warm); color:var(--text); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
  .info-title{font-size:13.5px; font-weight:700;}
  .info-text{font-size:13px; color:var(--text-dim); margin-top:4px; line-height:1.5;}
  .info-text a{color:var(--accent); font-weight:600;}
  .social-row{display:flex; gap:10px; margin-top:6px;}
  .social-btn{width:36px; height:36px; border-radius:999px; border:1.5px solid var(--border-2); display:flex; align-items:center; justify-content:center; color:var(--text-dim); transition:background .15s ease, color .15s ease;}
  .social-btn:hover{background:var(--warm); color:var(--text);}

  .form-card{padding:28px;}
  @media (min-width:700px){ .form-card{padding:36px;} }
  .field{margin-top:18px;}
  .field:first-child{margin-top:0;}
  .field label{display:block; font-size:12.5px; font-weight:700; color:var(--text-dim); margin-bottom:7px;}
  .field input, .field select, .field textarea{width:100%; padding:12px 14px; border:1.5px solid var(--border-2); border-radius:12px; font-size:14px; font-family:inherit; color:var(--text); background:var(--bg); transition:border-color .15s ease; appearance:none;}
  .field select{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="%236E6A62" stroke-width="2.5"><path d="M6 9l6 6 6-6"/></svg>'); background-repeat:no-repeat; background-position:right 14px center;}
  .field textarea{resize:vertical; min-height:110px; line-height:1.6;}
  .field input:focus, .field select:focus, .field textarea:focus{border-color:var(--text); outline:none;}
  .field-2col{display:grid; grid-template-columns:1fr; gap:14px;}
  @media (min-width:560px){ .field-2col{grid-template-columns:1fr 1fr;} }

  .form-success{text-align:center; padding:20px 0;}
  .form-success-icon{width:56px; height:56px; border-radius:999px; background:var(--green-dim); color:var(--green); display:flex; align-items:center; justify-content:center; margin:0 auto 16px;}
  .form-success h3{font-size:17px; font-weight:800;}
  .form-success p{font-size:13.5px; color:var(--text-dim); margin-top:8px;}

  /* --- Footer --- */
  .footer{background:var(--warm); padding:48px 20px 24px;}
  @media (min-width:900px){ .footer{padding:56px 32px 28px;} }
  .footer .container{max-width:1216px; margin:0 auto; padding:0 20px;}
  @media (min-width:900px){ .footer .container{padding:0 32px;} }
  .footer-top{display:flex; flex-direction:column; gap:32px;}
  @media (min-width:700px){ .footer-top{flex-direction:row; justify-content:space-between; gap:40px;} }
  .footer-brand{font-weight:800; font-size:17px;}
  .footer-tag{font-size:12.5px; color:var(--text-dim); margin-top:10px; max-width:220px; line-height:1.6;}
  .footer-cols{display:grid; grid-template-columns:repeat(2,1fr); gap:28px; font-size:13.5px;}
  @media (min-width:520px){ .footer-cols{grid-template-columns:repeat(3,1fr);} }
  @media (min-width:700px){ .footer-cols{display:flex; gap:56px;} }
  .footer-col{display:flex; flex-direction:column; gap:9px;}
  .footer-col-title{font-weight:700; margin-bottom:2px;}
  .footer-col a{color:var(--text-dim); transition:color .15s ease;}
  .footer-col a:hover{color:var(--text);}
  .footer .container.footer-bottom{margin-top:36px; padding-top:20px; border-top:1px solid var(--border-2); display:flex; justify-content:space-between; align-items:center; font-size:12px; color:var(--text-dim-2); flex-wrap:wrap; gap:10px;}
  .contact-form-error{margin-top:14px; font-size:13.5px; color:#b42318; line-height:1.5;}
  .contact-form-privacy{margin-top:12px; font-size:12.5px; color:var(--text-dim); line-height:1.55;}
  .contact-form-privacy a{color:inherit; text-decoration:underline;}
