/* Featherwork additions on top of the reference design (site.css). */
.brand-mark { width: 34px; height: 34px; display: block; transform: rotate(-8deg); }
.brand-mark .logo-mark { width: 100%; height: 100%; }
.logo .logo-mark .vane { fill: var(--ink); }
.logo .logo-mark .spine { stroke: var(--cream); stroke-width: 2.2; stroke-linecap: round; }
.logo:hover .brand-mark { transform: rotate(-20deg); transition: transform .4s; }

.sw-citrus { background: #ff6748; } .sw-electric { background: #c8ff43; } .sw-berry { background: #a77bf8; }

.hero-buttons .btn { cursor: pointer; }
.link-button { background: none; border: 0; padding: 0; font-weight: 900; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }

/* The big voice button opens the Scout voice session */
.voice-main { background: var(--primary); width: 170px; height: 170px; }
.voice-main:hover { background: var(--contrast); }
.voice-mic-icon { display: grid; place-items: center; }
.voice-mic-icon svg { width: 66px; height: 66px; }
.voice-main::after { content: ''; position: absolute; inset: -14px; border-radius: 50%; border: 2px solid var(--primary); opacity: 0; animation: voiceRing 2.8s ease-out infinite; pointer-events: none; }
@keyframes voiceRing { 0% { transform: scale(.9); opacity: .55; } 100% { transform: scale(1.35); opacity: 0; } }
.voice-state-text { font-family: 'Space Grotesk', sans-serif; font-size: 26px; font-weight: 700; letter-spacing: -1px; }

/* Live brief on the page */
.feasibility-pill.good { background: #2f7a4f; color: #fff; }
.feasibility-pill.ok { background: #d6f27d; color: #221726; }
.feasibility-pill.warn { background: #ffc24b; color: #221726; }
.feasibility-pill.bad { background: #ff7b6b; color: #221726; }
.proposal-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 10px 0; }
.proposal-prices small { display: block; font-size: 10px; font-weight: 900; letter-spacing: .08em; color: #6d5f60; }
.proposal-prices strong { font-family: 'Space Grotesk', sans-serif; font-size: 28px; letter-spacing: -1px; }
.proposal-heading { display: flex; justify-content: space-between; gap: 8px; font-size: 10px; font-weight: 900; letter-spacing: .08em; }

/* Pricing model */
.model-price { margin-top: 8px !important; font-size: 13px !important; }
.model-price strong { font-family: 'Space Grotesk', sans-serif; font-size: 17px; }
.model-note { font-size: 12px; font-weight: 700; color: var(--muted); margin: 4px 4px 0; }

/* Contact form */
.contact-form .consent { display: flex; gap: 10px; align-items: flex-start; font-size: 12px; font-weight: 700; margin: 16px 0 18px; }
.contact-form .consent input { width: 18px !important; height: 18px; padding: 0 !important; margin-top: 1px; flex: none; accent-color: var(--primary); }
.form-attach { font-size: 12px; font-weight: 800; color: #236b41; margin: 12px 0 0; }
.form-message.info { color: var(--ink); background: var(--soft); border: 2px solid var(--ink); border-radius: 10px; padding: 10px 12px; }
.form-message .p-btn-inline { margin-top: 8px; display: inline-block; background: var(--ink); color: var(--cream); border: 0; border-radius: 99px; padding: 8px 14px; font-weight: 800; cursor: pointer; }

/* Privacy page */
.legal { max-width: 800px; margin: 55px auto 110px; padding: 0 24px; }
.legal h1 { font-size: clamp(40px, 6vw, 65px); letter-spacing: -3px; }
.legal h2 { font-size: 23px; letter-spacing: -.04em; margin-top: 35px; }
.legal p { font-size: 15px; line-height: 1.85; color: var(--muted); }
.legal .draft { border: 2px solid var(--ink); background: var(--contrast); color: var(--ink); padding: 18px; border-radius: 12px; font-size: 14px; }
.legal a { text-decoration: underline; }

