.web-hero{background:radial-gradient(ellipse at 4% 90%,#f9edcf,transparent 55%),#fff;padding-top:60px}.web-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.web-hero h1{font-family:var(--serif);font-size:clamp(34px,4vw,55px);font-weight:500;line-height:1.65;margin:25px 0}.web-hero h1 em{color:var(--gold);font-style:normal}.web-lead{font-size:17px;line-height:2.1}.web-small{font-size:14px;color:var(--muted);line-height:1.9}.web-window{margin:0;border:1px solid #d8bf94;border-radius:28px;overflow:hidden;background:white;box-shadow:0 28px 65px #8e6b251a;transform:rotate(2deg)}.web-window img{width:100%;height:auto;display:block}.web-window-bar{display:flex;align-items:center;gap:7px;padding:16px 20px;background:#fffaf0}.web-window-bar i{width:8px;height:8px;border-radius:50%;background:#d5bd8d}.web-window-bar span{margin-left:auto;color:var(--gold);font-size:10px;letter-spacing:.14em}.web-window figcaption{padding:13px 20px;font-size:12px;color:var(--muted)}.web-work-grid,.web-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.web-work{border:1px solid #ddc8a5;border-radius:34px;overflow:hidden;background:#fff;min-width:0}.web-work-image{display:block;position:relative;text-decoration:none;overflow:hidden}.web-work-image img{display:block;width:100%;height:auto;transition:transform .35s}.web-work-image:hover img{transform:scale(1.025)}.web-work-image span{display:block;background:#fffaf0;padding:12px 25px;font-size:14px;color:var(--gold);border-bottom:1px solid #e4d2b2}.web-work-copy{padding:28px 30px}.web-work h3{font:25px/1.8 var(--serif);margin:12px 0}.web-work p{font-size:16px;line-height:2}.web-tags{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:22px 0}.web-tags li,.web-label{border:1px solid #dfc89e;background:#fffcf6;border-radius:50px;padding:6px 13px;font-size:13px;color:var(--gold);line-height:1.7}.web-capabilities{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.web-capability{border:1px solid #dfc89e;border-radius:30px;padding:28px;min-width:0}.web-capability h3{font-family:var(--serif);font-size:23px;line-height:1.8}.web-capability p{font-size:16px;line-height:2}.web-capability .web-label{font-size:12px;display:inline-block;margin:0}.web-note{padding:28px 32px;border:1px solid #dec69b;border-radius:30px;background:#fffdf7;margin-top:28px;min-width:0}.web-note h3{font-family:var(--serif);font-size:23px;line-height:1.8}.web-note p,.web-note li{font-size:16px;line-height:2}.web-note ul{padding-left:22px}.web-brief-layout{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}.web-brief-form{border:1px solid #ddc69c;border-radius:32px;padding:30px}.web-brief-form fieldset{border:0;padding:0;margin:0 0 25px;min-width:0}.web-brief-form legend{font-family:var(--serif);font-size:23px;padding:0;margin-bottom:20px}.web-brief-form label{display:block;font-size:15px;margin:17px 0 8px}.web-brief-form select,.web-brief-form input:not([type=checkbox]),.web-brief-form textarea{font:16px/1.8 var(--sans);background:#fffcf7;border:1px solid #d8c6a5;border-radius:18px;padding:13px 15px;color:var(--ink);width:100%;max-width:100%;box-sizing:border-box}.web-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px}.web-checks label{margin:0;border:1px solid #e2cfad;border-radius:18px;padding:12px;display:flex;align-items:flex-start;gap:10px;line-height:1.7;font-size:14px}.web-checks input{flex:none;accent-color:var(--gold);width:20px;height:20px;margin-top:2px}.web-brief-output{position:sticky;top:calc(var(--header-space,100px) + 20px);padding:32px;border:1px solid #c4a267;border-radius:36px;background:linear-gradient(145deg,#fff,#fff8e9);box-shadow:0 18px 45px #8e6b2510;min-width:0}.web-brief-output h3{font:26px/1.8 var(--serif);margin:14px 0}.web-brief-output pre{white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.95 var(--sans);background:white;border:1px solid #e4d4b8;border-radius:22px;padding:22px;max-height:460px;overflow-y:auto}.web-brief-output .button{white-space:normal}.web-brief-output [hidden],[data-web-import][hidden]{display:none!important}#web-direction,#web-brief-status{font-size:15px;line-height:1.9}#web-brief-status textarea{width:100%;font:16px/1.8 var(--sans);border:1px solid #b99455;border-radius:15px;padding:15px}.web-promo{background:radial-gradient(ellipse at 100% 100%,#f4e5c3,transparent 60%),#fffdf8}.web-promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.web-promo h2{font:clamp(30px,3.5vw,43px)/1.8 var(--serif)}.web-promo img{width:100%;height:auto;border-radius:28px;border:1px solid #d7bd90}.web-promo p{font-size:16px;line-height:2}.web-import{margin-bottom:24px;padding:22px;border:1px solid #cba76a;border-radius:24px;background:#fffaf0}.web-import h3{font:22px/1.8 var(--serif)}.web-import pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.8 var(--sans);max-height:200px;overflow:auto;background:white;padding:15px;border-radius:15px}.web-import p{font-size:14px}.web-import .button{white-space:normal}.web-plan{margin-top:30px}.web-plan .button-row{margin-top:22px}.web-work-image:focus-visible{outline:3px solid #a17a38;outline-offset:-5px}#web-brief-form :focus-visible{outline:3px solid #a17a38;outline-offset:3px}.web-brief-output pre:focus-visible{outline:3px solid #a17a38}
@media(max-width:1000px){.web-capabilities{grid-template-columns:1fr 1fr}.web-hero-grid{gap:30px}.web-window{transform:none}}
@media(max-width:900px){.web-hero-grid,.web-work-grid,.web-detail-grid,.web-brief-layout,.web-promo-grid{grid-template-columns:1fr}.web-hero{padding-top:35px}.web-hero h1{font-size:35px}.web-window{max-width:650px}.web-brief-output{position:static;padding:25px 20px;border-radius:28px}.web-brief-form{padding:25px 20px}.web-work-copy{padding:25px}.web-note{padding:25px 22px}.web-checks{grid-template-columns:1fr}.web-hero .button-row{align-items:stretch}.web-hero .button{white-space:normal}.web-lead{font-size:16px}.web-capability{padding:24px}.web-brief-output pre{font-size:15px;padding:17px}.web-brief-output .button-row{flex-direction:column;align-items:stretch}.web-promo .button{white-space:normal}}
@media(max-width:600px){.web-capabilities{grid-template-columns:1fr}.web-hero h1{font-size:32px}.web-window-bar span{font-size:9px}.web-work h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.web-work-image img{transition:none}.web-work-image:hover img{transform:none}}
