/* Existing live-site composition with the mock’s shorter copy. */
.about.wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:6%;align-items:center;margin-top:60px;padding:85px 0 100px}
.about-studio{width:100%;max-width:720px}
.about-studio img{display:block;width:100%;height:auto;object-fit:contain;border-radius:4px}
.about-copy h2{font-size:clamp(38px,4.5vw,68px);line-height:1.1;letter-spacing:-.045em;font-weight:400;margin:20px 0 26px}
.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;margin:0 0 18px}
.about-copy .about-location{font-size:13px;color:var(--muted)}
.toolkit{margin-top:32px;padding-top:22px;border-top:1px solid var(--line)}
.toolkit-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 14px}
.tool-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.tool{display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 7px;border:1px solid var(--line);border-radius:14px;background:#fbfaf6;font-size:14px;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .25s}
.tool:hover{transform:translateY(-3px);border-color:var(--ink);box-shadow:0 8px 18px #24251f14}
.tool-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--bg);color:var(--fg);font:700 14px/1 Arial,sans-serif;letter-spacing:-.02em;box-shadow:inset 0 0 0 1.5px var(--fg);transition:transform .25s;flex-shrink:0}
.tool:hover .tool-icon{transform:rotate(-8deg) scale(1.06)}
.about-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.btn{display:inline-flex;align-items:center;gap:14px;padding:8px 8px 8px 24px;border-radius:99px;font-size:15px;line-height:1;text-decoration:none;transition:background .25s,color .25s,border-color .25s}
.btn-arrow{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:16px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.btn-primary{background:#5B3FB0;color:#fff;border:1px solid #5B3FB0}
.btn-primary .btn-arrow{background:#fff;color:#5B3FB0}
.btn-primary:hover{background:#4a3196}
.btn-primary:hover .btn-arrow{transform:rotate(45deg)}
.btn-ghost{border:1px solid var(--ink);color:var(--ink)}
.btn-ghost .btn-arrow{background:var(--ink);color:var(--paper)}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn-ghost:hover .btn-arrow{background:var(--paper);color:var(--ink);transform:translateX(3px)}
.btn:focus-visible,.site-footer a:focus-visible{outline:3px solid var(--violet);outline-offset:4px}
.contact { display:grid; grid-template-columns:1fr 1.25fr; gap:8%; border-top:1px solid var(--line); padding:90px 0 100px; }
.contact h2 { font-size:clamp(38px,4.5vw,68px); font-weight:400; letter-spacing:-.045em; line-height:1.1; margin:20px 0 28px; }
.contact h2 em { font-family:Georgia,serif; color:var(--violet,#5B3FB0); font-weight:400; }
.contact-copy > p:last-child { font-size:16px; color:var(--muted,#62635a); max-width:420px; line-height:1.6; }
.contact-field { margin-bottom:28px; }
.contact-field label { display:block; font-size:var(--fs-meta,13px); font-weight:500; color:#5b5c55; text-transform:none; letter-spacing:normal; margin-bottom:6px; }
.contact-field input, .contact-field textarea { display:block; box-sizing:border-box; width:100%; border:0; border-bottom:1px solid var(--ink); border-radius:0; background:transparent; color:var(--ink); font:inherit; font-size:var(--fs-body,17px); padding:12px 0; outline:none; }
.contact-field textarea { resize:vertical; }
.contact-field input:focus, .contact-field textarea:focus { border-bottom-color:#5B3FB0; box-shadow:0 1px 0 0 #5B3FB0; }
.contact-field input:focus-visible, .contact-field textarea:focus-visible { outline:3px solid rgba(91,63,176,.22); outline-offset:6px; border-radius:4px; }
.contact-field input[aria-invalid="true"], .contact-field textarea[aria-invalid="true"] { border-bottom-color:#b3261e; box-shadow:0 1px 0 0 #b3261e; }
.contact .field-error { margin:6px 0 0; font-size:12px; color:#b3261e; }
.contact .field-error:empty { display:none; }
.contact .hp { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.contact-submit { border:0; background:#5B3FB0; color:#fff; border-radius:99px; padding:16px 28px; font:inherit; cursor:pointer; }
.contact-submit span { display:inline-block; margin-left:12px; transition:transform .2s; }
.contact-submit:hover { background:#4a3196; }
.contact-submit:hover span { transform:translateX(4px); }
.contact-submit:disabled { opacity:.6; cursor:wait; }
.contact .contact-privacy { font-size:12px; color:var(--muted,#62635a); margin-top:16px; }
.contact .form-status { font-size:14px; color:#b3261e; margin-top:16px; }
.form-status a{color:var(--violet);text-decoration:underline;text-underline-offset:3px}
.contact-success { padding:24px 0; }
.contact-success svg { display:block; height:56px; width:auto; margin-bottom:24px; }
.contact-success h3 { font-family:Georgia,serif; font-style:italic; font-size:32px; font-weight:400; color:#5B3FB0; margin:0 0 16px; }
.contact-success p { font-size:16px; line-height:1.6; }
.contact-again { background:none; border:0; border-bottom:1px solid currentColor; padding:4px 0; margin-top:20px; font:inherit; color:#5B3FB0; cursor:pointer; }
.contact-mark path { stroke:#5B3FB0; stroke-width:3; stroke-dasharray:1; stroke-dashoffset:0; animation:contact-draw 1.4s ease both; }
@keyframes contact-draw { 0% { stroke-dashoffset:1; fill:transparent; } 70% { stroke-dashoffset:0; fill:transparent; } 100% { fill:#5B3FB0; } }
html.motion-paused .contact-mark path { animation:none; }
@media (prefers-reduced-motion:reduce) { .contact-mark path { animation:none; } .contact-submit span { transition:none; } }
@media (max-width:899px) { .contact { grid-template-columns:1fr; gap:36px; padding:55px 0 70px; } }

.about-copy > p a, .contact-copy a { text-decoration:underline; text-underline-offset:4px; }

.contact.wrap{margin-top:0}
.contact-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;margin:0 0 22px}
.contact-copy .location{display:block;margin-top:30px}
.contact h2{letter-spacing:-.045em}
.contact-submit:focus-visible{outline:3px solid var(--violet);outline-offset:5px}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:899px){.about.wrap{gap:5%;padding:55px 0 65px}}
@media(max-width:620px){.about.wrap{grid-template-columns:1fr;gap:32px;margin-top:42px;padding:40px 0}.about-studio{max-width:520px;margin:auto}.about-copy h2{font-size:43px}.about-copy>p:not(.eyebrow){font-size:15px}.contact.wrap{padding:40px 0 55px;gap:28px}.contact h2{font-size:43px}.tool{font-size:12px;padding-right:10px}.about-actions{margin-top:26px}}
@media(prefers-reduced-motion:reduce){.tool,.tool-icon,.btn,.btn-arrow{transition:none}.tool:hover,.tool:hover .tool-icon,.btn:hover .btn-arrow{transform:none}}
html.motion-paused .tool,html.motion-paused .tool-icon,html.motion-paused .btn-arrow{transition:none}
