/* ===========================================================================
   Green Design Sydney — service landing page enquiry block
   Added 4 October 2026 (local patch, not deployed).

   A separate stylesheet on purpose: css/main.css is left byte-for-byte
   identical to production so that this patch provably touches nothing outside
   the four advertised landing pages. Every selector below is scoped to markup
   that only exists on those four pages.

   Colour note: the brand bronze (#B4915E) is 2.6:1 against the warm white
   (#F6F2EA), below the 4.5:1 that small text needs. --qe-bronze is 5.5:1 and
   reads as the same colour family. It is defined here, not in main.css, so it
   applies only to this block.
   =========================================================================== */

:root{ --qe-bronze:#7A5C2E; }

/* ---------- credential strip ---------- */
.trust-strip{ display:flex; flex-wrap:wrap; gap:10px 22px; align-items:center; margin-top:22px;
  font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.09em; text-transform:uppercase; }
.trust-strip span{ display:flex; align-items:center; gap:7px; opacity:.92; }
.trust-strip span::before{ content:""; width:5px; height:5px; border-radius:50%; background:var(--qe-bronze); flex:none; }
.at-hero .trust-strip span::before, .luxury-hero .trust-strip span::before,
.project-hero .trust-strip span::before{ background:var(--bronze); }
.ts-result{ text-transform:none; letter-spacing:.02em; font-family:'Inter',sans-serif; font-size:13px; opacity:.8; }
@media(max-width:640px){ .trust-strip{ gap:8px 16px; font-size:10px; } }

/* ---------- short enquiry form ---------- */
.qe-sec{ background:var(--warm-white); color:var(--warm-ink); padding:clamp(40px,5vw,64px) 0; }
.qe-sec.tight{ padding-top:clamp(28px,3.5vw,44px); }
.qe-inner{ max-width:820px; }
.qe-sec h2{ font-family:'Fraunces',serif; font-weight:300; letter-spacing:-0.01em;
  font-size:clamp(23px,2.9vw,33px); line-height:1.2; margin:6px 0 10px; }
.qe-sec .qe-eyebrow{ font-family:'JetBrains Mono',monospace; font-weight:500; letter-spacing:.14em;
  text-transform:uppercase; font-size:10.5px; color:var(--qe-bronze); }
.qe-sec .qe-lede{ font-size:15.5px; line-height:1.7; color:var(--warm-dim); max-width:62ch; margin:0 0 6px; }
.qe{ margin-top:24px; display:grid; gap:16px; }
.qe .qe-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media(max-width:700px){ .qe .qe-row{ grid-template-columns:1fr; } }
.qe label{ display:block; font-size:13.5px; color:var(--warm-ink); line-height:1.5; }
.qe label .req{ color:var(--qe-bronze); }
.qe input, .qe textarea{ font:inherit; font-size:15px; padding:13px 14px; border:1px solid var(--warm-line);
  border-radius:3px; background:#fff; color:var(--warm-ink); min-height:48px; width:100%; margin-top:6px; }
.qe textarea{ min-height:96px; resize:vertical; }
.qe input:focus-visible, .qe textarea:focus-visible{ outline:2px solid var(--qe-bronze); outline-offset:1px; border-color:var(--qe-bronze); }
.qe .qe-hint{ font-size:12.5px; line-height:1.65; color:var(--warm-dim); }
.qe .qe-actions{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.qe button[type="submit"]{ font:inherit; font-size:15px; font-weight:500; padding:14px 30px;
  border:1px solid var(--qe-bronze); background:var(--qe-bronze); color:#fff; border-radius:3px;
  cursor:pointer; min-height:48px; }
.qe button[type="submit"]:hover{ background:#6E5228; border-color:#6E5228; }
.qe button[type="submit"][disabled]{ opacity:.6; cursor:default; }
.qe .qe-alt{ font-size:13.5px; color:var(--warm-dim); }
.qe .qe-alt a{ color:var(--warm-ink); border-bottom:1px solid var(--warm-line); }
.qe-trap{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.qe-reply{ font-size:13.5px; line-height:1.7; color:var(--warm-dim); margin-top:-4px; }
.qe-msg{ margin-top:18px; font-size:15px; line-height:1.7; padding:16px 18px;
  border-left:3px solid var(--qe-bronze); background:rgba(122,92,46,.07); max-width:70ch; }
.qe-msg.bad{ border-left-color:#B4552F; background:rgba(180,85,47,.07); }
.qe-docs{ font-size:13px; line-height:1.7; color:var(--warm-dim); }
.qe-docs a{ color:var(--warm-ink); border-bottom:1px solid var(--warm-line); }

/* The triage form on /bic-unauthorised-works sets its legends to #9C7A45 inline,
   which is 3.56:1 on this background. Same colour family, AA-compliant. */
#tri-form .tri-block legend{ color:var(--qe-bronze); }

/* ---------- mobile action bar ---------- */
.mobile-bar{ display:none; }
@media(max-width:860px){
  .mobile-bar{ display:grid; grid-template-columns:repeat(3,1fr); position:fixed; left:0; right:0; bottom:0;
    z-index:60; background:var(--ink-raised); border-top:1px solid var(--line);
    padding-bottom:env(safe-area-inset-bottom); }
  .mobile-bar a{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    padding:10px 6px; min-height:56px; color:var(--paper);
    font-family:'JetBrains Mono',monospace; font-size:9.5px; letter-spacing:.12em; text-transform:uppercase; }
  .mobile-bar a + a{ border-left:1px solid var(--line); }
  .mobile-bar a svg{ width:19px; height:19px; }
  .mobile-bar a:active{ background:rgba(180,145,94,.18); }
  body.has-mobile-bar{ padding-bottom:62px; }
  .mobile-bar[hidden]{ display:none; }
}
@media print{ .mobile-bar{ display:none !important; } }
