.office-hero{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;padding:40px 0 60px;align-items:center}.office-hero h1{font-size:clamp(2.8rem,4.5vw,4rem)}.office-hero .button{margin-top:24px}.office-plan-link{display:block;margin-top:18px;font-size:.9rem}.office-visual{margin:0;border-radius:9px;overflow:hidden;background:#f4f0e8}.office-visual img{aspect-ratio:3/2;object-fit:cover}.office-hero .office-visual img{aspect-ratio:4/5;object-position:60%}.office-visual figcaption{font-size:.72rem;padding:10px 14px;color:#58686d}.floorplan{margin:0;background:#f7f5ef;border:1px solid #e3ded3;border-radius:10px;padding:20px}.floorplan img{object-fit:contain}.floorplan figcaption{font-size:.8rem;color:#58686d;padding:10px;max-width:850px}.office-booking-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:white;padding:35px;border-radius:8px}.office-booking-strip strong,.office-booking-strip span,.office-booking-strip small{display:block}.office-booking-strip strong{font-size:1.7rem}.office-booking-strip small{max-width:530px;margin-top:10px;color:#c6d2d4}.booking-head{padding:45px 0}.booking-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px}.booking-layout aside>h2{font-size:1.8rem}.booking-steps{padding-left:24px;margin:30px 0}.booking-steps li{padding:0 0 25px 12px}.booking-steps p{font-size:.95rem;color:var(--muted);margin-top:6px}.booking-intro{margin-bottom:28px;color:var(--muted)}.booking-summary{margin-top:25px;padding:24px;background:#f0f3e6;border:1px solid #dce3bf;border-radius:8px}.booking-summary .eyebrow{margin-bottom:10px}#booking-price{font-size:1.3rem;font-weight:700;line-height:1.5}#booking-period{font-size:.95rem}.booking-layout .contact-form{min-width:0}.office-hero .helper{margin-top:12px}.booking-layout .notice{margin-bottom:20px}@media(max-width:850px){.office-hero{gap:25px;grid-template-columns:1fr 1fr}.booking-layout{gap:30px;grid-template-columns:1fr}.booking-steps{display:flex;gap:35px}.booking-steps li{flex:1}.office-booking-strip{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.office-hero{grid-template-columns:1fr;padding-top:15px}.office-hero .office-visual img{aspect-ratio:3/2}.booking-head h1{font-size:2.7rem}.booking-steps{display:block}.floorplan{padding:3px}.floorplan figcaption{font-size:.72rem}.office-booking-strip{padding:25px}.office-booking-strip .button{width:100%}}
