/* ==========================================================================
   Shore Home & Finish — section styling for the Kadence Blocks build.
   Keyed to .sw-* classes on core blocks; text stays editable.
   ========================================================================== */
:root{
	--sw-midnight:#163a63; --sw-midnight-600:#285a8f;
	--sw-gold:#2372b8; --sw-gold-bright:#4a9bda;
	--sw-cream:#f4f7fb; --sw-cream-2:#e9f0f8; --sw-sand:#e2ebf5;
	--sw-ink:#1e2e3d; --sw-ink-soft:#57687a; --sw-line:#dbe4ee;
	--sw-serif:'Archivo',system-ui,sans-serif; --sw-sans:'Inter',system-ui,sans-serif;
	--wp--preset--color--midnight:#163a63;
	--wp--preset--color--midnight-600:#285a8f;
	--wp--preset--color--gold:#2372b8;
	--wp--preset--color--gold-bright:#4a9bda;
	--wp--preset--color--cream:#f4f7fb;
	--wp--preset--color--cream-2:#e9f0f8;
	--wp--preset--color--sand:#e2ebf5;
	--wp--preset--color--ink:#1e2e3d;
	--wp--preset--color--ink-soft:#57687a;
	--wp--preset--color--line:#dbe4ee;
	--wp--preset--color--white:#ffffff;
}
.has-midnight-background-color{background-color:var(--wp--preset--color--midnight)!important}
.has-midnight-color{color:var(--wp--preset--color--midnight)!important}
.has-gold-background-color{background-color:var(--wp--preset--color--gold)!important}
.has-gold-color{color:var(--wp--preset--color--gold)!important}
.has-cream-background-color{background-color:var(--wp--preset--color--cream)!important}
.has-white-background-color{background-color:#fff!important}
.has-white-color{color:#fff!important}

/* Typography */
body,.entry-content,.wp-block-post-content{font-family:var(--sw-sans);color:var(--sw-ink)}
.wp-block-heading,h1,h2,h3,h4{font-family:var(--sw-serif);font-weight:700;letter-spacing:-.01em;line-height:1.1;color:var(--sw-midnight)}

/* Bits */
.sw-eyebrow{font-family:var(--sw-sans)!important;font-size:.78rem!important;font-weight:700!important;
	letter-spacing:.16em;text-transform:uppercase;color:var(--sw-gold)!important}
.sw-eyebrow::before{content:"";display:inline-block;width:26px;height:2px;background:var(--sw-gold);vertical-align:middle;margin-right:.6em}
.sw-muted{color:var(--sw-ink-soft)!important}
.sw-accent{color:var(--sw-gold)}

/* Buttons -> squared-ish (trades feel) */
.wp-block-button__link{border-radius:8px!important;font-family:var(--sw-sans);font-weight:700;letter-spacing:.01em;
	padding:.9em 1.6em;transition:transform .18s ease,box-shadow .18s ease}
.wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 14px 26px -12px rgba(20,32,45,.55)}
.is-style-outline .wp-block-button__link{border-width:2px}

/* Section rhythm */
.sw-section{padding-top:clamp(56px,8vw,108px)!important;padding-bottom:clamp(56px,8vw,108px)!important}

/* ---------- HERO ---------- */
.sw-hero{background:
	radial-gradient(80% 70% at 85% -10%,rgba(74,155,218,.22),transparent 60%),
	radial-gradient(60% 55% at 8% 115%,rgba(35,114,184,.08),transparent 60%),
	var(--sw-cream)!important}
.sw-hero .wp-block-columns{gap:clamp(28px,5vw,64px)!important}
.sw-hero h1{font-size:clamp(2.4rem,5.4vw,4rem);letter-spacing:-.02em;font-weight:800}
.sw-hero .sw-lead{font-size:1.16rem!important;max-width:46ch}
.sw-hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.sw-tag{display:inline-block;background:#fff;border:1px solid var(--sw-line);border-radius:6px;
	padding:.4em .8em;font-size:.82rem;font-weight:600;color:var(--sw-midnight)}

/* Hero cover (beach-house image + left scrim) */
.sw-herocover{min-height:clamp(440px,64vh,620px)!important}
.sw-herocover .wp-block-cover__background{opacity:1!important;background-color:transparent!important;
	background-image:linear-gradient(90deg,rgba(244,247,251,.97) 0%,rgba(244,247,251,.78) 32%,rgba(244,247,251,.28) 56%,rgba(244,247,251,0) 72%)!important}
.sw-herocover .wp-block-cover__inner-container{width:100%;max-width:1180px;margin-inline:auto;padding-inline:clamp(20px,5vw,64px)}
.sw-herocover .sw-eyebrow{margin-bottom:14px}
.sw-herocover h1{font-size:clamp(2.3rem,5vw,3.9rem);font-weight:800;max-width:15ch;color:var(--sw-midnight);text-shadow:0 1px 0 rgba(255,255,255,.4)}
.sw-herocover .sw-lead{font-size:1.18rem;color:var(--sw-ink);max-width:38ch;margin:18px 0 26px;font-weight:500}
.sw-herocover .wp-block-buttons{gap:12px}
@media(max-width:781px){
	.sw-herocover .wp-block-cover__background{background-image:linear-gradient(175deg,rgba(244,247,251,.94) 30%,rgba(244,247,251,.55) 100%)!important}
	.sw-herocover .wp-block-cover__image-background{object-position:75% center}
}

/* Hero "punch list" card */
.sw-hero-card{background:linear-gradient(165deg,#24568a,var(--sw-midnight))!important;border-radius:16px!important;
	box-shadow:0 40px 80px -32px rgba(20,32,45,.5);position:relative;overflow:hidden}
.sw-hero-card .wp-block-heading{color:#fff;font-size:1.15rem;letter-spacing:.02em;text-transform:uppercase}
.sw-hero-card .wp-block-list{list-style:none;margin:.6em 0 0;padding:0}
.sw-hero-card li{color:#e7edf3;padding:9px 0 9px 30px;position:relative;border-bottom:1px solid rgba(224,165,92,.16);font-size:.98rem}
.sw-hero-card li:last-child{border-bottom:0}
.sw-hero-card li::before{content:"";position:absolute;left:0;top:12px;width:18px;height:18px;background:var(--sw-gold-bright);
	-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat}

/* ---------- SERVICE STRIP (pills row) ---------- */
.sw-strip{position:relative;background:var(--sw-midnight)!important;padding-top:46px!important;padding-bottom:26px!important;margin-top:-1px}
.sw-strip::before{content:"";position:absolute;top:0;left:0;right:0;height:26px;background-repeat:no-repeat;background-size:100% 100%;
	background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40' preserveAspectRatio='none'%3E%3Cpath fill='%23f4f7fb' d='M0,24 C200,44 380,6 600,22 C820,38 1010,4 1200,22 L1200,0 L0,0 Z'/%3E%3C/svg%3E")}
.sw-strip .wp-block-columns{gap:14px!important}
.sw-strip p,.sw-strip .wp-block-heading{color:#eaf0f5!important;margin:0;font-family:var(--sw-serif);font-weight:600;
	text-align:center;font-size:1rem;letter-spacing:.04em;text-transform:uppercase}

/* ---------- CARDS (shared) ---------- */
.wp-block-column:has(> .sw-card){display:flex}
.wp-block-column > .sw-card{width:100%}
.sw-card{background:#fff!important;border:1px solid var(--sw-line)!important;border-radius:14px!important;
	padding:28px 26px!important;transition:transform .2s,box-shadow .2s,border-color .2s;height:100%}
.sw-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px -22px rgba(20,32,45,.28);border-color:#d8c9b0!important}
.sw-card .wp-block-heading{font-size:1.26rem;margin:.2em 0 .45em}
.sw-card p,.sw-card li{color:var(--sw-ink-soft)}
.sw-card ul{list-style:none;margin:.5em 0 0;padding:0}
.sw-card li{position:relative;padding:5px 0 5px 22px;font-size:.92rem}
.sw-card li::before{content:"";position:absolute;left:0;top:11px;width:13px;height:13px;background:var(--sw-gold);
	-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat}

/* Icon boxes */
.sw-ic{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center;
	background:var(--sw-sand);border:1px solid var(--sw-line);margin-bottom:16px}
.sw-ic::before{content:"";width:30px;height:30px;background:var(--sw-midnight);
	-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.sw-ic.dark{background:var(--sw-midnight);border-color:var(--sw-midnight)}
.sw-ic.dark::before{background:var(--sw-gold-bright)}
.ic-carp{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4v15h15'/%3E%3Cpath d='M5 9h3M5 13h3M9 19v-3M13 19v-3'/%3E%3C/svg%3E")}
.ic-dry{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21l4-4'/%3E%3Cpath d='M7 17l7-7 3 3-7 7z'/%3E%3C/svg%3E")}
.ic-paint{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='12' height='6' rx='1'/%3E%3Cpath d='M15 7h4v4h-6v9'/%3E%3C/svg%3E")}
.ic-tile{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='7' height='7' rx='1'/%3E%3Crect x='13' y='4' width='7' height='7' rx='1'/%3E%3Crect x='4' y='13' width='7' height='7' rx='1'/%3E%3Crect x='13' y='13' width='7' height='7' rx='1'/%3E%3C/svg%3E")}
.ic-deck{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18M3 12h18M3 18h18'/%3E%3Cpath d='M9 6v12'/%3E%3C/svg%3E")}
.ic-home{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E")}
.ic-list{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11'/%3E%3Cpath d='M4 6l1 1 2-2M4 12l1 1 2-2M4 18l1 1 2-2'/%3E%3C/svg%3E")}
.ic-shield{--ic:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E")}

/* ---------- PROMISES (why us) ---------- */
.sw-promise{display:flex;gap:14px;align-items:flex-start;padding:6px 0}
.sw-promise .sw-pnum{flex:none;width:34px;height:34px;border-radius:9px;background:var(--sw-midnight);color:var(--sw-gold-bright);
	font-family:var(--sw-serif);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.95rem}
.sw-promise b{display:block;color:var(--sw-midnight);font-weight:700;margin-bottom:2px}
.sw-promise span{color:var(--sw-ink-soft);font-size:.95rem}

/* ---------- SIGNATURE CARDS ---------- */
.sw-sig{background:#fff!important;border:1px solid var(--sw-line)!important;border-top:4px solid var(--sw-gold)!important;
	border-radius:12px!important;padding:28px 26px!important;height:100%}
.wp-block-column:has(> .sw-sig){display:flex}
.wp-block-column > .sw-sig{width:100%}
.sw-sig .sw-badge{display:inline-block;background:var(--sw-sand);color:var(--sw-midnight);border-radius:999px;
	padding:.3em .9em;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.sw-sig .wp-block-heading{font-size:1.3rem;margin-bottom:10px}
.sw-sig .sw-eglabel{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sw-ink-soft);margin:.4em 0}
.sw-sig ul{list-style:none;margin:0;padding:0}
.sw-sig li{position:relative;padding:5px 0 5px 22px;font-size:.93rem;color:var(--sw-ink-soft)}
.sw-sig li::before{content:"";position:absolute;left:0;top:11px;width:12px;height:12px;background:var(--sw-gold);
	-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat}

/* ---------- PROCESS ---------- */
.sw-step .sw-num{font-family:var(--sw-serif);font-size:2.4rem;font-weight:800;color:var(--sw-line);line-height:1;display:block;margin-bottom:6px}
.sw-step .wp-block-heading{font-size:1.14rem}
.sw-step p{color:var(--sw-ink-soft);font-size:.93rem}

/* ---------- BAND ---------- */
.sw-band{background:linear-gradient(150deg,#285a8f,var(--sw-midnight))!important;position:relative;overflow:hidden}
.sw-band::before{content:"";position:absolute;top:0;left:0;right:0;height:26px;background-repeat:no-repeat;background-size:100% 100%;
	background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40' preserveAspectRatio='none'%3E%3Cpath fill='%23e9f0f8' d='M0,24 C200,44 380,6 600,22 C820,38 1010,4 1200,22 L1200,0 L0,0 Z'/%3E%3C/svg%3E")}
.sw-band .wp-block-heading{position:relative;z-index:2;color:#fff;font-size:clamp(1.5rem,3.4vw,2.3rem);font-weight:700;line-height:1.25}
.sw-band .sw-accent{color:var(--sw-gold-bright)}

/* ---------- CTA ---------- */
.sw-cta{background:linear-gradient(135deg,#2372b8,#163a63)!important;border-radius:16px!important;
	box-shadow:0 40px 80px -32px rgba(20,32,45,.5);position:relative;overflow:hidden}
.sw-cta::before{content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.1)}
.sw-cta .wp-block-heading{color:#fff;position:relative}
.sw-cta p{color:rgba(255,255,255,.92);position:relative}
.sw-cta .wp-block-buttons{position:relative}

/* ---------- CONTACT ---------- */
.sw-contactcard{background:#fff!important;border:1px solid var(--sw-line)!important;border-radius:16px!important;
	padding:clamp(24px,4vw,38px)!important;box-shadow:0 2px 8px rgba(20,32,45,.05)}
.sw-contactcard .wp-block-heading{color:var(--sw-midnight)}
.sw-ci{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--sw-line)}
.sw-ci:last-child{border-bottom:0}
.sw-ci .sw-ic{width:44px;height:44px;margin:0;flex:none;border-radius:10px}
.sw-ci .sw-ic::before{width:22px;height:22px}
.sw-ci strong{display:block;color:var(--sw-midnight)}
.sw-ci span,.sw-ci a{color:var(--sw-ink-soft);font-size:.96rem}

/* Kadence header logo tidy */
.custom-logo,.site-branding img,.header-logo img{max-height:62px!important;width:auto!important}
/* Keep header light so the navy logo reads */
.site-header-row-container-inner,.site-main-header-wrap{background:#ffffff}
