.contact-page .contact-hero{background:var(--paper)}.contact-page .contact-hero>.editorial-width{align-items:center;gap:var(--editorial-gap);grid-template-columns:repeat(2,minmax(0,1fr));padding-block:48px;display:grid}.contact-page .contact-hero-copy{min-width:0;padding-block:24px}.contact-page .contact-hero-copy h1{font-size:clamp(40px,4.5vw,64px);line-height:1.2}.contact-page .contact-hero-copy>p:last-child{color:var(--muted);margin-top:24px;font-size:16px}.contact-page .contact-hero-photo{aspect-ratio:4/3;margin:0;overflow:hidden}.contact-page .contact-hero-photo img,.contact-page .contact-preparation figure img{object-fit:cover;width:100%;height:100%;display:block}.contact-page .contact-workspace{align-items:start;gap:var(--editorial-gap);grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);padding-block:80px;display:grid}.contact-page .contact-workspace>*{min-width:0}.contact-page .contact-preparation{position:sticky;top:32px}.contact-page .contact-preparation figure{aspect-ratio:4/3;margin:0 0 32px;overflow:hidden}.contact-page .contact-preparation h2{font-size:24px;line-height:1.4}.contact-page .contact-preparation ul{margin:24px 0 32px;padding:0;list-style:none}.contact-page .contact-preparation li{border-top:1px solid var(--line);padding-block:16px}.contact-page .contact-preparation strong{margin-bottom:8px;font-size:14px;display:block}.contact-page .contact-preparation li p{color:var(--muted);font-size:14px}.contact-page .contact-preparation .text-link{align-items:center;gap:24px;min-height:44px;display:inline-flex}.contact-page .project-form{min-width:0}.contact-page .project-step-note{color:var(--muted);margin:-8px 0 24px;font-size:14px}.contact-page .project-step{border:0;min-inline-size:0;margin:0 0 48px;padding:0}.contact-page .project-step legend,.contact-page .project-step-heading{align-items:baseline;gap:16px;width:100%;margin-bottom:24px;padding:0;font-size:24px;font-weight:600;line-height:1.4;display:flex}.contact-page .project-step legend>span,.contact-page .project-step-heading>span{color:var(--muted);flex:0 0 32px;font:14px monospace}.contact-page .project-step-heading h2{font-size:24px;line-height:1.4}.contact-page .service-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.contact-page .service-choice,.contact-page .product-choice{border:2px solid var(--line);background:var(--canvas);cursor:pointer;flex-direction:column;min-width:0;display:flex;position:relative}.contact-page .service-choice input,.contact-page .product-choice input{z-index:1;width:20px;height:20px;accent-color:var(--ink);cursor:pointer;margin:0;position:absolute;top:12px;right:12px}.contact-page .service-choice img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.contact-page .service-choice-copy{flex-direction:column;flex:1;gap:8px;padding:20px 16px;display:flex}.contact-page .service-choice-copy strong{font-size:20px;line-height:1.3;display:block}.contact-page .service-choice-copy small{color:var(--muted);font-size:12px;line-height:1.6;display:block}.contact-page .service-alternatives{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.contact-page .service-alternatives label{border:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;min-height:48px;padding:12px 16px;font-size:14px;display:inline-flex}.contact-page .service-alternatives input{width:20px;height:20px;accent-color:var(--ink);margin:0}.contact-page .product-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.contact-page .product-choice img{aspect-ratio:1;object-fit:cover;width:100%;height:auto}.contact-page .product-choice strong{flex:1;padding:16px 12px;font-size:16px;line-height:1.4;display:block}.contact-page .service-choice:has(input:checked){border-color:var(--ink);background:var(--paper)}.contact-page .product-choice:has(input:checked){border-color:var(--ink);background:var(--paper)}.contact-page .service-alternatives label:has(input:checked){border-color:var(--ink);background:var(--paper)}.contact-page .service-choice:focus-within,.contact-page .product-choice:focus-within,.contact-page .service-alternatives label:focus-within{outline:2px solid var(--ink);outline-offset:4px}.contact-page .project-form .form-grid,.contact-page .project-form .field{min-width:0}.contact-page .project-form .field input,.contact-page .project-form .field select,.contact-page .project-form .field textarea{border-color:var(--line);background:var(--canvas);min-width:0}.contact-page .project-form .field label{font-size:14px}.contact-page .project-form .consent{margin-block:32px}.contact-page .project-form .consent input{width:20px;height:20px;accent-color:var(--ink);flex:0 0 20px}.contact-page .project-form button[type=submit]{min-height:48px}.contact-page .project-form .form-error,.contact-page .form-success{overflow-wrap:anywhere}@media (width<=1100px){.contact-page .contact-hero-copy h1{font-size:40px}.contact-page .contact-preparation h2{font-size:20px}.contact-page .service-choice-grid{gap:12px}.contact-page .service-choice-copy{padding:16px 12px}}@media (width<=900px){.contact-page .contact-workspace{grid-template-columns:1fr;gap:48px;padding-block:48px}.contact-page .contact-preparation{grid-template-columns:1fr 1.5fr;align-items:start;column-gap:32px;display:grid;position:static}.contact-page .contact-preparation figure{grid-row:1/4;margin:0}.contact-page .contact-preparation h2{font-size:24px}.contact-page .contact-preparation ul{margin:16px 0}.contact-page .contact-preparation .text-link{justify-self:start}}@media (width<=600px){.contact-page .contact-hero>.editorial-width{grid-template-columns:1fr;gap:24px;padding-block:32px}.contact-page .contact-hero-copy{padding-block:0}.contact-page .contact-hero-copy .eyebrow{margin-bottom:16px;font-size:12px}.contact-page .contact-hero-copy>p:last-child{margin-top:16px}.contact-page .contact-hero-photo{aspect-ratio:3/2}.contact-page .contact-workspace{gap:40px;padding-block:40px}.contact-page .contact-preparation{grid-template-columns:1fr;gap:0}.contact-page .contact-preparation figure{aspect-ratio:2;grid-row:auto;margin-bottom:24px}.contact-page .contact-preparation h2{font-size:24px}.contact-page .project-step{margin-bottom:40px}.contact-page .project-step legend,.contact-page .project-step-heading{gap:12px;font-size:20px}.contact-page .project-step legend>span,.contact-page .project-step-heading>span{flex-basis:24px}.contact-page .project-step-heading h2{font-size:20px}.contact-page .service-choice-grid{grid-template-columns:1fr;gap:12px}.contact-page .service-choice{grid-template-columns:112px minmax(0,1fr);align-items:stretch;display:grid}.contact-page .service-choice img{aspect-ratio:1;object-fit:cover;height:100%}.contact-page .service-choice input{left:12px;right:auto}.contact-page .service-choice-copy{justify-content:center;padding:16px}.contact-page .service-choice-copy strong{font-size:20px}.contact-page .service-choice-copy small{font-size:12px}.contact-page .service-alternatives{gap:8px}.contact-page .service-alternatives label{flex:1;padding:12px}.contact-page .product-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-page .project-form .form-grid{grid-template-columns:1fr}.contact-page .project-form .consent{font-size:12px}}@media (width>=901px){.contact-page .project-form{grid-area:1/2}.contact-page .contact-preparation{grid-area:1/1}}
