:root{--navy:#0b2240;--blue:#0077b6;--muted:#526273;--line:#d9e4ed;--bg:#f8f9fa;font-family:'Inter Tight',Arial,sans-serif;color:var(--navy)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}a{color:inherit}button,input,textarea,select{font:inherit}.wrap{width:min(1120px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-80px;left:12px;background:white;padding:12px;z-index:20}.skip:focus{top:8px}.site-header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-size:25px;font-weight:800;text-decoration:none;letter-spacing:-1.5px;white-space:nowrap}.logo span{color:var(--blue)}.logo small{font-size:9px;letter-spacing:0;margin-left:5px}.site-header nav,.site-footer nav{display:flex;gap:21px;flex-wrap:wrap}.site-header nav a,.site-footer nav a{text-decoration:none;font-size:12px;font-weight:600}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--blue)}.intro{background:#f7f9fc;padding:26px 0 84px}.eyebrow-line{display:flex;justify-content:space-between;border-bottom:1px solid #c9dbe9;padding-bottom:15px;font-size:11px;font-weight:700;letter-spacing:1.1px;color:#54718b}.intro-grid{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:64px;padding-top:65px}.kicker{font-size:12px;letter-spacing:1.5px;color:var(--blue);font-weight:800}.intro h1{font-size:clamp(44px,5.6vw,78px);line-height:1.04;letter-spacing:-3.8px;margin:20px 0 0}.intro h1 em,.contact-info h2 em,.outro h2 em{font-style:normal;color:var(--blue)}.intro-grid>p{color:var(--muted);font-size:18px;line-height:1.7;margin:0 0 6px}.contact-section{padding:90px 0 110px}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px}.contact-info h2{font-size:clamp(34px,3.6vw,52px);letter-spacing:-2px;line-height:1.1;margin:16px 0 20px}.intro-copy{color:var(--muted);line-height:1.8;font-size:16px;max-width:400px;margin-bottom:38px}.contact-detail{padding:22px 0;border-top:1px solid var(--line);display:grid;gap:9px}.contact-detail span{font-size:11px;letter-spacing:1px;color:#64809a;font-weight:800}.contact-detail a{font-size:20px;font-weight:650;text-decoration:none}.contact-detail a:hover{color:var(--blue)}.contact-detail address{font-style:normal;line-height:1.65;font-size:16px}.contact-note{background:#edf5fb;padding:19px 20px;border-left:3px solid var(--blue);color:var(--muted);line-height:1.65;font-size:14px;margin-top:25px}.form-panel{border:1px solid #d8e4ed;background:linear-gradient(145deg,#fff 55%,#f2f8fc);border-radius:15px;padding:40px;box-shadow:0 16px 40px rgba(11,34,64,.04)}.form-panel h2{font-size:32px;letter-spacing:-1.2px;margin:10px 0}.form-note{font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:27px}.form-panel form{display:grid;gap:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:13px;font-weight:700;display:grid;gap:9px}label span{color:var(--blue)}input,select,textarea{width:100%;border:1px solid #cbd9e5;border-radius:6px;padding:13px 14px;background:white;color:var(--navy);font-size:15px}textarea{resize:vertical;min-height:125px}input:focus,select:focus,textarea:focus{outline:2px solid #8ac8eb;outline-offset:1px}.form-panel button{border:0;border-radius:6px;background:var(--blue);color:white;font-weight:800;letter-spacing:.5px;padding:17px 20px;display:flex;justify-content:space-between;cursor:pointer}.form-panel button:hover{background:var(--navy)}.form-footnote{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.form-footnote a{color:var(--blue)}.outro{background:var(--navy);color:white;padding:80px 0}.outro-grid{display:grid;grid-template-columns:1fr .65fr;gap:80px;align-items:end}.outro span{font-size:11px;letter-spacing:1.5px;color:#9bd5f6;font-weight:800}.outro h2{font-size:clamp(36px,4.6vw,62px);letter-spacing:-2px;line-height:1.1;margin:18px 0 0}.outro h2 em{color:#66c2f2}.outro p{line-height:1.8;color:#cbd9e6;font-size:16px}.site-footer{background:#f8f9fa;padding:35px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.site-footer small{font-size:11px;color:var(--muted)}

@media(max-width:900px){.wrap{width:min(100% - 40px,720px)}.header-inner{padding:16px 0;align-items:flex-start;flex-direction:column}.site-header nav{gap:14px}.intro-grid{grid-template-columns:1fr;gap:20px;padding-top:42px}.intro{padding-bottom:55px}.intro h1{letter-spacing:-2px}.contact-grid{grid-template-columns:1fr;gap:48px}.contact-section{padding:60px 0}.outro-grid{grid-template-columns:1fr;gap:15px}.footer-inner{flex-wrap:wrap}}
@media(max-width:560px){.wrap{width:calc(100% - 32px)}.site-header nav{gap:10px 14px}.site-header nav a{font-size:11px}.eyebrow-line{font-size:9px;gap:14px}.intro h1{font-size:43px;letter-spacing:-1.9px}.intro-grid>p{font-size:16px}.form-panel{padding:24px 18px}.field-row{grid-template-columns:1fr}.form-panel h2{font-size:27px}.outro{padding:60px 0}.site-footer nav{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Project B, contact: inquiry first, introductory message after form. */
.contact-section{padding-top:36px}
.contact-grid{align-items:start}
.contact-grid .form-panel{order:1;min-width:0}
.contact-grid .contact-info{order:2;min-width:0}
.intro{padding-top:55px;padding-bottom:55px}
.intro .intro-grid h1{font-size:clamp(30px,3.5vw,52px)}
@media(max-width:900px){.contact-section{padding-top:20px}.contact-grid{display:flex;flex-direction:column;gap:30px}.contact-grid .form-panel,.contact-grid .contact-info{width:100%;max-width:100%;box-sizing:border-box}.intro{padding-top:35px;padding-bottom:35px}.intro .intro-grid{display:block}.intro .intro-grid>p{margin-top:18px}}

/* Project B: give the inquiry form priority on desktop. */
@media (min-width: 901px) {
  .contact-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: clamp(28px, 4vw, 65px);
    align-items: start;
  }
  .contact-grid .form-panel,
  .contact-grid .contact-info {
    width: 100%; max-width: none; min-width: 0;
    box-sizing: border-box;
  }
}
