/* Shared layout, form and navigation for the Orbit homepage. */
.design-page{--paper:#f3f1eb;--ink:#22251f;--muted:#64685e;--line:#c8c9bc;--accent:#284c38;--panel:#e8e9df;--button:#284c38;--button-ink:#fff;--radius:0px;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.6}
.design-page *{box-sizing:border-box}
.design-page a{color:inherit}
.design-page h1,.design-page h2,.design-page h3{margin:0;line-height:1.08;letter-spacing:-.055em;font-weight:700}
.design-page h1{font-size:clamp(64px,7vw,106px)}
.design-page h2{font-size:clamp(36px,4.2vw,62px)}
.design-page h3{font-size:29px;letter-spacing:-.035em}
.design-page p{line-height:1.85}
.design-page p+p{margin-top:16px}
.design-page :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.design-page a:hover{text-decoration:underline;text-underline-offset:5px}
.design-page :where(a:has(>span[aria-hidden])){display:inline-flex;align-items:center;justify-content:space-between;gap:24px}
.design-page a>span[aria-hidden]{font:32px/1 Manrope,sans-serif;flex-shrink:0}
.design-page .link-arrow{display:inline-block;max-width:100%;vertical-align:middle}
.design-logo{display:block;width:270px;max-width:100%}
.design-logo svg{display:block;width:100%;height:auto;aspect-ratio:1945/266}
.design-nav{display:flex;gap:28px;font-size:12px;align-items:center}
.design-page .menu-button{display:none;background:none;color:var(--ink);border:0;width:44px;height:44px;padding:10px;flex-shrink:0}
.design-page .menu-button span{display:block;width:24px;height:1px;background:currentColor;margin:6px 0}
.design-mobile{position:absolute;top:100%;left:0;right:0;padding:24px;background:var(--paper);border:1px solid var(--line);z-index:100;box-shadow:0 15px 35px #0002}
.design-mobile a{display:block;padding:12px}
.design-mobile[hidden]{display:none}
.section-label{font:500 10px/1.6 Manrope,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:22px;color:var(--muted)}
.design-page .design-cta{background:var(--button);color:var(--button-ink);padding:18px 24px;font-size:13px;font-weight:700;border-radius:var(--radius);text-decoration:none;min-height:60px}
.design-page .design-cta:hover{filter:brightness(1.1)}
.item-number{font:12px/1.4 ui-monospace,monospace;color:var(--muted);letter-spacing:.12em}
.item-lead{font-weight:700}
.design-page :is(section,footer)[id]{scroll-margin-top:30px}
.design-faq{padding-block:90px;border-top:1px solid var(--line)}
.design-faq h2{margin-bottom:40px}
.design-faq details{border-bottom:1px solid var(--line);padding:0}
.design-faq summary{padding:24px 36px 24px 0;cursor:pointer;position:relative;font-size:16px;list-style:none}
.design-faq summary::-webkit-details-marker{display:none}
.design-faq summary:after{content:'+';position:absolute;right:4px;font-size:24px;top:17px}
.design-faq details[open] summary:after{content:'−'}
.design-faq details p{padding:0 40px 24px 0;max-width:800px;color:var(--muted);font-size:14px}
.design-contact{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-block:90px;border-top:1px solid var(--line)}
.contact-copy h2{margin-bottom:32px}
.contact-copy>p{max-width:390px;color:var(--muted);font-size:15px}
.direct-contact{margin-top:30px;font-size:14px;text-decoration:underline;text-underline-offset:6px}
.design-page .brief-form{display:flex;flex-direction:column;gap:24px;min-width:0;margin:0;color:var(--ink);font-size:13px}
.design-page .brief-form fieldset{min-width:0;border:0;padding:0;margin:0}
.design-page .brief-form legend{font-size:12px;font-weight:700;margin-bottom:14px}
.design-page .brief-form .choices{display:flex;flex-wrap:wrap;gap:8px}
.design-page .choices label{margin:0}
.design-page .choices input{position:absolute;opacity:0;width:1px;height:1px}
.design-page .choices label span{display:block;padding:11px 14px;border:1px solid var(--line);color:var(--ink);border-radius:var(--radius);cursor:pointer;font-size:11px}
.design-page .choices input:checked+span{background:var(--button);border-color:var(--button);color:var(--button-ink)}
.design-page .choices input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}
.design-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.design-page .brief-form label{display:block;font-size:12px;font-weight:500}
.design-page .brief-form :is(input:not([type=radio]):not([type=checkbox]),textarea,select){display:block;min-width:0;width:100%;margin-top:10px;padding:13px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:14px/1.6 Manrope,sans-serif;outline-offset:4px}
.design-page .brief-form :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
.design-page .brief-form textarea{resize:vertical}
.design-page .brief-form .btn{background:var(--button);color:var(--button-ink);border:0;border-radius:var(--radius);padding:20px;min-height:60px;font-size:14px;justify-content:center;font-family:inherit}
.design-page .brief-form .btn:disabled{opacity:.5;cursor:not-allowed}
.design-page .brief-form .form-note{margin:0;color:var(--muted);font-size:11px;line-height:1.7}
.design-page .brief-form .brief-captcha{border:1px solid var(--line);padding:16px}
.design-page .brief-captcha .captcha-controls{display:flex;align-items:center;gap:18px}
.design-page .brief-captcha input#captcha-answer{width:88px;margin:0;border:1px solid var(--line);padding:10px}
.design-page .brief-captcha .captcha-refresh{color:var(--ink)}
.design-page .form-consent input[type=checkbox]{position:static;opacity:1;width:20px;height:20px;margin:0;flex:0 0 20px;accent-color:var(--button)}
.design-page .form-consent .consent-label{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.7}
.design-page .form-result{background:var(--panel);border:1px solid var(--line);padding:24px;color:var(--ink)}
.design-page .form-result[hidden]{display:none}
.design-page #copy-brief{display:block;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:12px;margin:18px 0;font:inherit}
.design-page dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);max-width:600px;width:calc(100% - 40px);padding:36px;border-radius:var(--radius)}
.design-page dialog h2{font-size:30px;margin-bottom:25px}
.design-footer{width:min(1280px,calc(100% - 80px));margin:auto;border-top:1px solid var(--line);padding:28px 0 40px;display:flex;align-items:center;flex-wrap:wrap;gap:24px;font-size:12px}
.design-footer>button{background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.design-footer nav{display:flex;gap:12px 25px;flex-wrap:wrap;flex-basis:100%;font-size:10px;color:var(--muted)}

@media(max-width:1100px){.design-nav{gap:18px}.design-logo{width:230px}.design-contact{gap:45px}}
@media(max-width:800px){.design-page .design-nav{display:none}.design-page .menu-button{display:block}.design-logo{width:230px}.design-contact{grid-template-columns:1fr;gap:40px}}
@media(max-width:550px){.design-page .design-contact{padding-block:50px}.design-page .contact-copy>p{font-size:13px}.design-page .form-row{grid-template-columns:1fr;gap:22px}.design-page .brief-form .choices label span{font-size:10px;padding:9px 11px}.design-page .brief-captcha .captcha-controls{gap:12px}.design-page .captcha-refresh{font-size:10px}.design-page .design-faq{padding-block:50px}.design-faq h2{font-size:34px;margin-bottom:24px}.design-faq summary{font-size:14px;padding-block:20px}.design-faq details p{font-size:13px}.design-footer{width:calc(100% - 40px);gap:18px;font-size:10px}.design-footer nav{flex-direction:column;gap:15px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.design-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
