
.kp-route-page { background: var(--kp-paper); color: var(--kp-black); }
.kp-route-main { padding-top: calc(var(--kp-countdown-height) + 108px); }
.kp-route-hero { min-height: calc(100svh - var(--kp-countdown-height) - 108px); display:grid; grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr); gap:clamp(44px,7vw,120px); align-items:center; padding:clamp(70px,9vw,140px) var(--gutter); }
.kp-route-hero__copy { max-width:600px; }
.kp-route-eyebrow { margin:0 0 28px; font-size:.7rem; font-weight:500; letter-spacing:.2em; text-transform:uppercase; }
.kp-route-hero h1,.kp-route-form-layout h1 { margin:0; font:400 clamp(4.4rem,7vw,6rem)/var(--kp-title-line-height) "Playfair Display",serif; letter-spacing:-.045em; }
.kp-route-hero h2 { margin:24px 0; max-width:620px; font:400 italic clamp(2rem,3.4vw,3.6rem)/var(--kp-title-line-height) "Playfair Display",serif; color:var(--kp-athena); }
.kp-route-page--fusion .kp-route-hero h2 { color:#70a765; }
.kp-route-page--the-icon .kp-route-hero h2 { color:var(--icon-brick-deep); }
.kp-route-hero__copy>p:not(.kp-route-eyebrow),.kp-route-form-layout>div>p:not(.kp-route-eyebrow) { max-width:560px; font-size:clamp(1rem,1.35vw,1.25rem); line-height:1.65; }
.kp-route-hero__media { height:min(68vw,720px); max-height:72svh; margin:0; overflow:hidden; }
.kp-route-hero__media img { width:100%; height:100%; object-fit:cover; }
.kp-route-button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; margin-top:28px; padding:0 30px; border:1px solid var(--kp-black); background:var(--kp-black); color:#fff; font:500 .72rem/1 "Roboto",sans-serif; letter-spacing:.15em; text-transform:uppercase; cursor:pointer; }
.kp-route-footer { display:flex; align-items:center; gap:30px; min-height:160px; padding:42px var(--gutter); background:var(--kp-black); color:#fff; }
.kp-route-footer img { width:68px; height:68px; object-fit:contain; }
.kp-route-footer p { margin-right:auto; }
.kp-route-footer a { border-bottom:1px solid rgba(255,255,255,.5); }
.kp-route-form-layout { min-height:calc(100svh - var(--kp-countdown-height) - 108px); display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(50px,9vw,150px); padding:clamp(80px,10vw,150px) var(--gutter); }
.kp-route-form-layout address { display:flex; flex-direction:column; gap:12px; margin-top:42px; font-style:normal; }
.kp-route-form { display:grid; grid-template-columns:1fr 1fr; gap:24px 18px; align-content:start; }
.kp-route-form label { display:grid; gap:9px; }
.kp-route-form label span { font-size:.68rem; font-weight:500; letter-spacing:.15em; text-transform:uppercase; }
.kp-route-form input,.kp-route-form textarea { width:100%; border:0; border-bottom:1px solid rgba(22,22,21,.35); border-radius:0; padding:13px 2px; background:transparent; font:inherit; }
.kp-route-form textarea { border:1px solid rgba(22,22,21,.35); padding:14px; resize:vertical; }
.kp-route-form .is-wide { grid-column:1/-1; }
.kp-nav a[aria-current="page"]:not(:last-child)::after { transform:scaleX(1); }
@media(max-width:800px){
  .kp-route-main { padding-top:calc(var(--kp-countdown-height) + 90px); }
  .kp-route-hero,.kp-route-form-layout { grid-template-columns:1fr; min-height:auto; padding-top:70px; }
  .kp-route-hero__media { height:62svh; max-height:620px; }
  .kp-route-form { grid-template-columns:1fr; }
  .kp-route-form .is-wide { grid-column:auto; }
  .kp-route-footer { align-items:flex-start; flex-wrap:wrap; }
  .kp-route-footer p { width:calc(100% - 100px); margin-right:0; }
}
