:root {
	--hp-navy:#082c42;
	--hp-blue:#16709d;
	--hp-blue-dark:#10496a;
	--hp-sky:#e9f5fa;
	--hp-orange:#e87924;
	--hp-cream:#fbf8f1;
	--hp-ink:#17313f;
}

#hurricane-preparedness-landing { overflow:hidden; background:#fff; color:var(--hp-ink); font-family:Arial,Helvetica,sans-serif; }
#hurricane-preparedness-landing * { box-sizing:border-box; }
.hp-shell { width:min(1160px,92%); margin:0 auto; }
.hp-eyebrow { margin:0 0 12px; color:var(--hp-orange); font-size:13px; font-weight:700; letter-spacing:1.7px; text-transform:uppercase; }
#hurricane-preparedness-landing h1,#hurricane-preparedness-landing h2,#hurricane-preparedness-landing h3 { margin-top:0; color:var(--hp-navy); line-height:1.12; }
#hurricane-preparedness-landing h1 { max-width:720px; margin-bottom:20px; color:#fff; font-size:clamp(43px,5.2vw,72px); letter-spacing:-2px; }
#hurricane-preparedness-landing h2 { margin-bottom:18px; font-size:clamp(31px,3.4vw,46px); letter-spacing:-1px; }
#hurricane-preparedness-landing h3 { margin-bottom:10px; font-size:22px; }
#hurricane-preparedness-landing p { line-height:1.65; }
.hp-hero { position:relative; display:flex; min-height:650px; align-items:center; padding:78px 0 70px; background:#061924; isolation:isolate; }
.hp-hero:after { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(2,14,22,.86) 0%,rgba(3,20,29,.68) 36%,rgba(3,20,29,.18) 64%,rgba(3,20,29,.06) 100%); content:''; pointer-events:none; }
.hp-hero-scenes,.hp-hero-scene,.hp-lightning-flash { position:absolute; inset:0; }
.hp-hero-scenes { z-index:-2; overflow:hidden; }
.hp-hero-scene { background-position:center center; background-repeat:no-repeat; background-size:cover; transition:opacity .7s ease; }
.hp-hero-scene-on { opacity:1; background-image:url('/images/hurricane/lights-on.png'); }
.hp-hero-scene-out { opacity:0; background-image:url('/images/hurricane/lights-out.png'); }
.hp-hero.is-lights-out .hp-hero-scene-on { opacity:0; }
.hp-hero.is-lights-out .hp-hero-scene-out { opacity:1; }
.hp-lightning-flash { opacity:0; background:#eaf8ff; mix-blend-mode:screen; pointer-events:none; }
.hp-hero.is-lightning .hp-lightning-flash { animation:hp-lightning-strike .72s linear both; }
@keyframes hp-lightning-strike {
	0%,100% { opacity:0; }
	7% { opacity:.92; }
	15% { opacity:.12; }
	22% { opacity:.72; }
	31% { opacity:.08; }
	42% { opacity:.4; }
	58% { opacity:0; }
}
.hp-hero-grid { display:grid; grid-template-columns:minmax(0,690px) 1fr; align-items:center; gap:60px; }
.hp-hero-copy { position:relative; z-index:2; }
.hp-hero .hp-eyebrow { color:#f6aa67; }
.hp-hero-title,.hp-hero-description { transition:opacity .16s ease,transform .22s ease; }
.hp-hero.is-lightning .hp-hero-title,.hp-hero.is-lightning .hp-hero-description { animation:hp-copy-flicker .72s linear both; }
@keyframes hp-copy-flicker {
	0%,18% { opacity:1; transform:translateY(0); }
	25%,44% { opacity:.18; transform:translateY(2px); }
	52%,100% { opacity:1; transform:translateY(0); }
}
.hp-lead { max-width:690px; margin:0 0 30px; color:#edf8fc; font-size:20px; line-height:1.6 !important; }
.hp-hero-actions { display:flex; flex-wrap:wrap; gap:14px; }
.hp-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 26px; border:2px solid transparent; border-radius:24px; font-size:15px; font-weight:700; line-height:20px; text-align:center; text-decoration:none; transition:background .18s,border-color .18s,color .18s,transform .18s; }
.hp-button:hover { text-decoration:none; transform:translateY(-1px); }
.hp-button-primary { border-color:var(--hp-orange); background:var(--hp-orange); color:#fff; }
.hp-button-primary:hover { border-color:#cd5f0c; background:#cd5f0c; color:#fff; }
.hp-button-secondary { border-color:rgba(255,255,255,.75); background:transparent; color:#fff; }
.hp-button-secondary:hover { border-color:#fff; background:#fff; color:var(--hp-navy); }
.hp-trust-list { display:flex; flex-wrap:wrap; gap:12px 24px; margin:30px 0 0; padding:0; color:#fff; list-style:none; }
.hp-trust-list li:before { margin-right:8px; color:#77c6e6; content:'\2713'; font-weight:700; }
.hp-intro { padding:95px 0 105px; text-align:center; }
.hp-intro > p:not(.hp-eyebrow),.hp-section-lead { max-width:760px; margin:0 auto 45px; color:#526773; font-size:18px; }
.hp-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:45px; text-align:left; }
.hp-benefits article { min-height:240px; padding:32px; border:1px solid #d8e8ef; border-radius:16px; background:#fff; box-shadow:0 12px 34px rgba(7,57,82,.07); }
.hp-benefits article p { margin-bottom:0; color:#58707c; }
.hp-icon { display:flex; width:45px; height:45px; align-items:center; justify-content:center; margin-bottom:23px; border-radius:50%; background:var(--hp-sky); color:var(--hp-blue); font-size:13px; font-weight:700; }
.hp-bundles { padding:94px 0 105px; background:var(--hp-cream); text-align:center; }
.hp-bundle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:24px; margin-top:45px; text-align:left; }
.hp-bundle-card { position:relative; display:flex; min-width:0; flex-direction:column; padding:29px 25px 25px; border:1px solid #dce4e7; border-radius:18px; background:#fff; box-shadow:0 10px 28px rgba(23,49,63,.06); }
.hp-bundle-featured { border:2px solid var(--hp-blue); box-shadow:0 14px 34px rgba(22,112,157,.14); transform:translateY(-8px); }
.hp-bundle-label { align-self:flex-start; margin-bottom:18px; padding:6px 11px; border-radius:14px; background:var(--hp-sky); color:var(--hp-blue-dark); font-size:11px; font-weight:700; letter-spacing:.8px; text-transform:uppercase; }
.hp-bundle-featured .hp-bundle-label { background:var(--hp-blue); color:#fff; }
.hp-bundle-card > p { min-height:78px; margin:0 0 20px; color:#5e717b; font-size:14px; }
.hp-bundle-products { flex:1; border-top:1px solid #e4eaed; }
.hp-bundle-product { display:grid; grid-template-columns:62px minmax(0,1fr); align-items:center; gap:12px; padding:14px 0; border-bottom:1px solid #e4eaed; color:var(--hp-navy); text-decoration:none; }
.hp-bundle-product:hover strong { color:var(--hp-blue); }
.hp-bundle-image { display:flex; width:62px; height:62px; align-items:center; justify-content:center; padding:5px; border-radius:10px; background:#f7f8f8; }
.hp-bundle-image img { display:block; max-width:100%; max-height:100%; object-fit:contain; }
.hp-bundle-product strong,.hp-bundle-product small { display:block; }
.hp-bundle-product strong { overflow:hidden; font-size:14px; line-height:18px; }
.hp-bundle-product small { margin-top:4px; color:#788890; font-size:11px; }
.hp-bundle-product .hp-bundle-attributes { color:#405762; font-size:13px; font-weight:600; line-height:17px; }
.hp-bundle-product .hp-bundle-sku { color:#788890; font-size:11px; }
.hp-bundle-quantity { display:inline-flex; margin-top:7px; padding:3px 8px; border-radius:11px; background:var(--hp-sky); color:var(--hp-blue-dark); font-size:11px; font-weight:700; }
.hp-bundle-footer { padding-top:22px; text-align:center; }
.hp-bundle-footer > .hp-bundle-price { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:18px; color:#5a6d77; }
.hp-bundle-price-amount { display:flex; flex-direction:column; align-items:flex-end; text-align:right; }
.hp-bundle-price-amount strong { color:var(--hp-navy); font-size:25px; line-height:1; }
.hp-bundle-price-amount small { display:block; margin-top:6px; color:#377348; font-size:12px; font-weight:700; }
.hp-bundle-footer .hp-button { width:100%; cursor:pointer; }
.hp-bundle-footer .hp-add-bundle { border-color:var(--hp-blue); background:var(--hp-blue); color:#fff; }
.hp-bundle-footer .hp-add-bundle:hover { border-color:var(--hp-blue-dark); background:var(--hp-blue-dark); color:#fff; }
.hp-bundle-footer .hp-button:disabled { cursor:wait; opacity:.72; transform:none; }
.hp-bundle-status { min-height:21px; margin:10px 0 -5px; color:#377348; font-size:12px; line-height:1.4 !important; text-align:center; }
.hp-bundle-status.is-error { color:#a02e27; }
.hp-no-bundles { padding:25px; border-radius:12px; background:#fff; }
.hp-checklist { padding:100px 0; background:var(--hp-sky); }
.hp-checklist-grid { display:grid; grid-template-columns:.85fr 1.15fr; align-items:start; gap:80px; }
.hp-checklist-grid > div > p:last-child { color:#4e6875; font-size:17px; }
.hp-checklist ul { margin:0; padding:0; border-radius:18px; background:#fff; box-shadow:0 15px 40px rgba(9,62,87,.1); list-style:none; }
.hp-checklist li { position:relative; padding:23px 28px 23px 65px; border-top:1px solid #e2edf1; }
.hp-checklist li:first-child { border-top:0; }
.hp-checklist li:before { position:absolute; top:25px; left:27px; display:flex; width:24px; height:24px; align-items:center; justify-content:center; border-radius:50%; background:var(--hp-blue); color:#fff; content:'\2713'; font-size:13px; }
.hp-checklist li strong,.hp-checklist li span { display:block; }
.hp-checklist li strong { margin-bottom:5px; color:var(--hp-navy); font-size:17px; }
.hp-checklist li span { color:#60757f; line-height:1.5; }
.hp-safety { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:70px; padding-top:80px; padding-bottom:80px; }
.hp-safety h2 { margin-bottom:0 !important; }
.hp-safety > p { margin:0; padding-left:35px; border-left:3px solid var(--hp-orange); color:#526a76; font-size:16px; }
.hp-final-cta { padding:78px 0; background:var(--hp-blue); color:#fff; text-align:center; }
.hp-final-cta h2 { margin-bottom:14px !important; color:#fff !important; }
.hp-final-cta p { max-width:680px; margin:0 auto 28px; color:#eaf6fa; font-size:18px; }
.hp-button-light { background:#fff; color:var(--hp-blue-dark); }
.hp-button-light:hover { background:var(--hp-orange); color:#fff; }

@media (max-width:900px) {
	.hp-hero { min-height:0; padding:54px 0 64px; }
	.hp-hero-grid { grid-template-columns:1fr; gap:25px; }
	.hp-benefits,.hp-bundle-grid { grid-template-columns:1fr; }
	.hp-bundle-featured { transform:none; }
	.hp-bundle-card > p { min-height:0; }
	.hp-checklist-grid,.hp-safety { grid-template-columns:1fr; gap:35px; }
	.hp-safety > p { padding:0 0 0 22px; }
}

@media (max-width:600px) {
	.hp-shell { width:92%; }
	#hurricane-preparedness-landing h1 { font-size:42px; letter-spacing:-1.3px; }
	#hurricane-preparedness-landing h2 { font-size:31px; }
	.hp-lead { font-size:17px; }
	.hp-hero { min-height:620px; align-items:flex-end; }
	.hp-hero:after { background:linear-gradient(180deg,rgba(2,14,22,.12) 0%,rgba(2,14,22,.3) 42%,rgba(2,14,22,.92) 100%); }
	.hp-hero-scene { background-position:62% center; }
	.hp-hero-grid { grid-template-columns:1fr; }
	.hp-hero-actions { display:grid; }
	.hp-button { width:100%; }
	.hp-trust-list { display:grid; gap:9px; }
	.hp-intro,.hp-bundles,.hp-checklist { padding-top:66px; padding-bottom:70px; }
	.hp-benefits { gap:15px; }
	.hp-benefits article { min-height:0; padding:25px; }
	.hp-bundle-grid { gap:18px; }
	.hp-bundle-card { padding:24px 18px 21px; }
	.hp-safety { padding-top:60px; padding-bottom:60px; }
	.hp-final-cta { padding:60px 0; }
}

@media (prefers-reduced-motion:reduce) {
	.hp-hero-scene,.hp-hero-title,.hp-hero-description { transition:none; }
	.hp-hero.is-lightning .hp-lightning-flash,.hp-hero.is-lightning .hp-hero-title,.hp-hero.is-lightning .hp-hero-description { animation:none; }
}
