/* Skypine V24 — readable project application and responsive form layout.
   Scoped to the existing application grid; header, authentication and server validation unchanged. */
.site-page .form-layout{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.42fr);
  align-items:start;
  gap:clamp(24px,3.3vw,54px);
  min-width:0;
}
.site-page .form-layout > aside,
.site-page .form-layout > .request-form{min-width:0;max-width:100%}
.site-page .form-layout > aside > .eyebrow{
  font-size:13px;letter-spacing:.12em;margin-bottom:16px;
}
.site-page .form-layout > aside > h2{
  font-size:clamp(32px,3.4vw,50px);margin-bottom:19px;
}
.site-page .form-layout > aside > p:not(.eyebrow){
  font-size:16.5px;line-height:1.68;color:#344c58;margin:0 0 17px;
}
.site-page .form-layout > aside > .notice-card{
  margin:19px 0 0;max-width:none;
}
.site-page .form-layout .notice-card{
  padding:17px 19px;min-width:0;border-color:#bbc9ca;
  overflow-wrap:anywhere;
}
.site-page .form-layout .notice-card > strong{
  display:block;font-size:18px;line-height:1.42;font-weight:750;color:#203a47;
}
.site-page .form-layout .notice-card > p{
  font-size:16.5px;line-height:1.64;color:#324855;margin:8px 0 0;
}
.site-page .form-layout .notice-card p strong{font-size:inherit;font-weight:750;color:inherit}
.site-page .form-layout > aside > .notice-card + p{margin-top:18px!important}
.site-page .request-form{
  padding:clamp(18px,2.25vw,31px);min-width:0;
}
.site-page .request-form .form-kicker{
  font-size:13.5px;line-height:1.5;letter-spacing:.09em;
  margin-bottom:20px;color:#435e59;
}
.site-page .request-form label:not(.form-consent){
  font-size:16.5px;line-height:1.46;font-weight:650;
  margin-bottom:17px;min-width:0;max-width:100%;
}
.site-page .request-form .form-row{
  grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;
}
.site-page .request-form :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select){
  display:block;box-sizing:border-box;width:100%;max-width:100%;
  min-height:43px;height:auto;padding:8px 12px;
  font-size:16.5px;line-height:1.4;color:#243c4a;
}
.site-page .request-form textarea{
  display:block;box-sizing:border-box;width:100%;max-width:100%;
  min-height:91px;padding:10px 12px;font-size:16.5px;
  line-height:1.5;color:#243c4a;resize:vertical;
}
.site-page .request-form :is(input,textarea)::placeholder{
  color:#637581;opacity:1;
}
.site-page .request-form small{
  display:block;font-size:14px;line-height:1.55;
  margin-top:5px;color:#4f626b;overflow-wrap:anywhere;
}
.site-page .request-form input[type="file"]{
  box-sizing:border-box;width:100%;max-width:100%;min-height:0;
  padding:9px 8px;font-size:15.5px;line-height:1.5;
  overflow:hidden;white-space:normal;
}
.site-page .request-form input[type="file"]::file-selector-button{
  max-width:100%;padding:6px 8px;margin-right:8px;
  border:1px solid #9cafb7;background:#f8faf9;border-radius:3px;
  color:#1e3a48;font:inherit;cursor:pointer;
}
.site-page .request-form fieldset{
  min-width:0;max-width:100%;margin:18px 0 22px!important;
}
.site-page .request-form fieldset legend{
  font-size:17.5px;line-height:1.48;font-weight:750!important;
}
.site-page .request-form fieldset > p{
  font-size:15.5px;line-height:1.55;color:#4d626d;
  margin:6px 0 13px;
}
.site-page .request-form fieldset > div{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))!important;
  gap:10px 13px!important;min-width:0;
}
.site-page .request-form fieldset label{
  display:flex;align-items:flex-start;min-width:0;gap:10px;
  font-size:16px;line-height:1.5;font-weight:500!important;
  overflow-wrap:anywhere;
}
.site-page .request-form fieldset input[type="checkbox"]{
  width:22px!important;height:22px!important;min-width:22px;
  min-height:22px;flex:0 0 22px;margin:1px 0 0;
}
.site-page .request-form .form-consent{
  font-size:16.3px;line-height:1.65;gap:13px;
  padding:17px;margin:20px 0 18px;
  overflow-wrap:anywhere;
}
.site-page .request-form .form-consent-copy{
  min-width:0;font-size:inherit;line-height:inherit;
}
.site-page .request-form .form-consent-copy strong{
  font-size:17px;line-height:1.45;margin-bottom:7px;
}
.site-page .request-form .button[type="submit"]{
  font-size:16px;min-height:44px;max-width:100%;
  white-space:normal;line-height:1.4;padding:11px 20px;
}
.site-page .form-layout :is(p,label,legend,small,span){overflow-wrap:break-word}
@media(max-width:1100px){
  .site-page .form-layout{grid-template-columns:minmax(0,1fr);gap:30px}
  .site-page .form-layout > aside .notice-card{max-width:none}
  .site-page .request-form{width:100%}
}
@media(max-width:700px){
  .site-page .form-layout{gap:24px}
  .site-page .form-layout > aside > h2{font-size:clamp(31px,7vw,43px)}
  .site-page .form-layout > aside > p:not(.eyebrow){font-size:16px}
  .site-page .form-layout .notice-card{padding:15px 16px}
  .site-page .form-layout .notice-card > p{font-size:16px}
  .site-page .form-layout .notice-card > strong{font-size:17.5px}
  .site-page .request-form{padding:19px 17px}
  .site-page .request-form .form-row{grid-template-columns:minmax(0,1fr);gap:0}
  .site-page .request-form label:not(.form-consent){font-size:16px}
  .site-page .request-form .form-consent{font-size:16px;padding:14px;gap:11px}
  .site-page .request-form .form-consent-copy strong{font-size:16.5px}
}
@media(max-width:360px){
  .site-page .request-form{padding:16px 12px}
  .site-page .form-layout .notice-card{padding:14px}
  .site-page .request-form .form-consent{padding:12px;gap:10px}
  .site-page .request-form .form-kicker{font-size:12.5px}
}

@media(min-width:1024px){
  .site-page .site-header .main-nav > details.nav-dropdown:nth-of-type(2) > .nav-dropdown-panel{
    left:auto;right:0;
  }
}
@media(min-width:1024px) and (max-width:1199px){
  .site-page .site-header .main-nav > details.nav-dropdown:first-of-type > .nav-dropdown-panel{
    left:auto;right:0;
  }
}
