body.shp-homepage-active .site-header,
body.shp-homepage-active .site-footer,
body.shp-homepage-active .entry-header { display:none !important; }
body.shp-homepage-active { background:#fff; }
body.shp-homepage-active #content,
body.shp-homepage-active .site-content,
body.shp-homepage-active .site-content .wrap,
body.shp-homepage-active .content-area,
body.shp-homepage-active .site-main { float:none; width:100%; max-width:none; margin:0; padding:0; }
body.shp-homepage-active .site-content .wrap { max-width:none; }
body.shp-homepage-active .site-content .wrap article { margin:0; padding:0; }
.shp-header,.shp-homepage-active .shp-header { box-sizing:border-box; width:100%; min-height:88px; padding:12px max(24px,calc((100vw - 1280px)/2)); display:flex; align-items:center; justify-content:space-between; gap:28px; background:#fff; position:relative; z-index:20; }
.shp-brand { display:inline-flex; align-items:center; flex:0 0 auto; }
.shp-brand img { display:block; width:220px; max-width:36vw; height:auto; }
.shp-toggle { display:none; border:1px solid #d7e4f5; border-radius:8px; color:#0b2343; background:#fff; padding:9px 12px; font-size:22px; cursor:pointer; }
.shp-nav ul { list-style:none; margin:0; padding:0; }
.shp-nav > ul { display:flex; align-items:center; gap:6px; }
.shp-nav li { position:relative; }
.shp-nav a { display:block; padding:12px 13px; color:#102845; text-decoration:none; font:600 15px/1.3 Arial,sans-serif; border-radius:7px; }
.shp-nav a:hover,.shp-nav a:focus { color:#0866ce; background:#f0f6ff; }
.shp-nav .menu-item-has-children > a:after { content:'⌄'; margin-left:7px; }
.shp-nav .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:210px; padding:8px; background:#fff; border:1px solid #e1eaf5; border-radius:10px; box-shadow:0 12px 32px rgba(7,28,54,.15); }
.shp-nav li:hover > .sub-menu,.shp-nav li:focus-within > .sub-menu { display:block; }
.shp-hero { padding:58px max(24px,calc((100vw - 1280px)/2)); background:#071a33; color:#fff; }
.shp-hero-grid { align-items:center; gap:40px; margin:0; }
.shp-hero .wp-block-column { min-width:0; }
.shp-eyebrow { margin:0 0 15px; color:#8fc8ff; font-size:14px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; }
.shp-hero h1 { max-width:720px; margin:0 0 20px; color:#fff; font:800 clamp(38px,5vw,68px)/1.04 Arial,sans-serif; letter-spacing:-1.7px; }
.shp-hero .shp-subheading { margin:0 0 12px; color:#d7e8fb; font:700 clamp(22px,2.5vw,32px)/1.2 Arial,sans-serif; }
.shp-hero p:not(.shp-eyebrow) { max-width:650px; color:#e0eaf6; font:400 19px/1.6 Arial,sans-serif; }
.shp-hero .shp-hero-image { margin:0; }
.shp-hero .shp-hero-image img { display:block; width:100%; height:auto; border-radius:16px; box-shadow:0 18px 50px rgba(0,0,0,.28); }
.shp-actions { margin-top:24px; gap:12px; }
.shp-actions .wp-block-button__link { border-radius:999px; padding:13px 22px; background:#1685df; color:#fff; font:700 15px/1.2 Arial,sans-serif; text-decoration:none; }
.shp-actions .is-style-outline .wp-block-button__link { border:1px solid rgba(255,255,255,.55); background:transparent; }
.shp-section { padding:76px max(24px,calc((100vw - 1180px)/2)); }
.shp-section > h2,.shp-contact h2 { color:#0a2342; font:800 clamp(30px,3.4vw,44px)/1.12 Arial,sans-serif; margin:0 auto 14px; }
.shp-section-intro { max-width:800px; margin:0 auto 38px; color:#52647a; font:400 18px/1.6 Arial,sans-serif; }
.shp-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 0 20px; }
.shp-cards .wp-block-column { min-width:0; }
.shp-card { height:100%; box-sizing:border-box; padding:25px; border:1px solid #dce7f3; border-radius:16px; background:#fff; box-shadow:0 10px 28px rgba(11,31,58,.055); }
.shp-card .shp-icon { display:grid; place-items:center; width:56px; height:56px; margin:0 0 18px; border-radius:14px; background:#eaf4ff; color:#0866ce; font:800 22px/1 Arial,sans-serif; }
.shp-card h3 { margin:0 0 12px; color:#0a2342; font:700 22px/1.25 Arial,sans-serif; }
.shp-card p:not(.shp-icon) { margin:0; color:#42546a; font:400 17px/1.55 Arial,sans-serif; }
.shp-contact { margin:18px auto 0; padding:52px max(24px,calc((100vw - 1180px)/2)); background:#071a33; color:#fff; }
.shp-contact h2 { color:#fff; }
.shp-contact > p { color:#dce9f8; font-size:18px; }
.shp-contact-image { margin:25px auto 0; max-width:960px; }
.shp-contact-image img { display:block; width:100%; height:auto; border-radius:14px; }
.shp-copyright { margin:0; padding:18px 24px; background:#061326; color:#dce8f7; text-align:center; font-size:14px; }
@media (max-width:900px) {
 .shp-header { flex-wrap:wrap; gap:10px; }
 .shp-toggle { display:block; margin-left:auto; }
 #shp-main-menu { display:none; flex:0 0 100%; }
 #shp-main-menu.is-open { display:block; }
 .shp-nav > ul { display:flex; align-items:stretch; flex-direction:column; gap:0; }
 .shp-nav a { padding:11px 12px; }
 .shp-nav .sub-menu { position:static; min-width:0; padding:0 0 0 16px; border:0; border-radius:0; box-shadow:none; }
 .shp-nav li.shp-submenu-open > .sub-menu { display:block; }
 .shp-nav li:hover > .sub-menu { display:none; }
 .shp-nav li.shp-submenu-open:hover > .sub-menu { display:block; }
 .shp-hero { padding-top:42px; padding-bottom:42px; }
 .shp-hero-grid { gap:25px; }
 .shp-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
 .shp-brand img { width:180px; }
 .shp-hero { padding-top:34px; padding-bottom:34px; }
 .shp-hero h1 { font-size:40px; }
 .shp-section { padding-top:52px; padding-bottom:52px; }
 .shp-cards { grid-template-columns:1fr; }
 .shp-card { padding:22px; }
 .shp-contact { padding-top:38px; padding-bottom:38px; }
}
