@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--navy:#061f36;--cream:#fbf8ef;--seafoam:#77b7ae;--seafoam2:#4d918b;--text:#071b31;--muted:#4f5c66;--line:rgba(6,31,54,.18);--shadow:0 14px 35px rgba(6,31,54,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--cream);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}
.topbar{min-height:124px;padding:15px 28px 13px;background:linear-gradient(90deg,#061f36,#082844);color:white;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;position:sticky;top:0;z-index:10;box-shadow:0 8px 25px rgba(0,0,0,.16)}
.brand{display:flex;align-items:center;gap:18px}.logo{width:138px;height:138px;object-fit:contain;margin-bottom:-58px;position:relative;z-index:2;filter:drop-shadow(0 10px 18px rgba(0,0,0,.26))}
.brand-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2rem,3.5vw,3.1rem);text-transform:uppercase;letter-spacing:.03em;line-height:.9}.brand-service{margin-top:8px;color:var(--seafoam);text-transform:uppercase;letter-spacing:.5em;font-size:1.15rem;text-align:center}.tagline{margin-top:8px;color:var(--seafoam);font-family:'Cormorant Garamond',Georgia,serif;font-size:1.1rem;font-style:italic;text-align:center}
.nav{display:flex;justify-content:center;gap:31px;font-size:.82rem;font-weight:800;text-transform:uppercase}.nav a{padding:12px 0;border-bottom:3px solid transparent}.nav a:hover{border-bottom-color:var(--seafoam)}
.quote-button,.cta a{background:var(--seafoam);color:white;padding:16px 26px;border-radius:7px;text-transform:uppercase;font-weight:800;letter-spacing:.04em;white-space:nowrap}
.hero{min-height:560px;display:flex;align-items:center;padding:70px 9vw 46px;background:linear-gradient(90deg,rgba(251,248,239,.98) 0%,rgba(251,248,239,.9) 37%,rgba(251,248,239,.13) 67%),url('florida-coastal-home-hero.jpg');background-size:cover;background-position:center right;border-bottom:1px solid var(--line)}
.hero-content{max-width:625px}h1{margin:0;color:var(--navy);font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2.8rem,5vw,4.4rem);line-height:.96;letter-spacing:-.035em}.accent-line{width:56px;height:3px;background:var(--seafoam2);margin:20px 0}.hero p{font-size:1rem;line-height:1.65;margin-bottom:24px;color:#071b31}
.contact-row{display:flex;gap:14px;flex-wrap:wrap}.phone,.email{border-radius:7px;padding:16px 20px;font-weight:800;box-shadow:0 8px 20px rgba(6,31,54,.12)}.phone{background:var(--navy);color:white}.email{background:rgba(255,255,255,.78);border:1px solid var(--navy)}
.promise-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:22px 11vw;background:rgba(255,255,255,.82);border-bottom:1px solid var(--line)}.promise{display:flex;align-items:center;justify-content:center;gap:18px;padding:0 24px;border-right:1px solid var(--line)}.promise:last-child{border-right:0}.promise span{width:54px;height:54px;display:grid;place-items:center;color:white;background:var(--seafoam2);border-radius:18px;font-size:1.4rem}.promise p{margin:0;font-weight:700;line-height:1.35}
.services-area-wrap{display:grid;grid-template-columns:1.55fr 1fr;gap:42px;padding:38px 7vw 28px;background:linear-gradient(rgba(255,255,255,.74),rgba(255,255,255,.74)),radial-gradient(circle at top left,rgba(119,183,174,.28),transparent 38%)}
.section-title{display:flex;align-items:center;gap:17px;margin-bottom:22px}.section-title h2,.section-title h3{margin:0;font-family:'Cormorant Garamond',Georgia,serif;text-transform:uppercase;letter-spacing:.05em;color:var(--navy)}.section-title h2{font-size:1.85rem}.section-title h3{font-size:1.55rem;color:var(--seafoam2)}.section-title i{display:block;width:52px;height:2px;background:var(--seafoam2)}.section-title.stacked{display:block}.section-title.stacked i{margin-top:14px}.section-title.centered{justify-content:center}
.service-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:14px}.service-grid article{background:rgba(255,255,255,.84);border-radius:9px;padding:24px 18px;min-height:210px;text-align:center;box-shadow:var(--shadow);border:1px solid rgba(6,31,54,.08)}.service-grid article div{color:var(--seafoam2);font-size:2.45rem;line-height:1;margin-bottom:16px;font-weight:800}.service-grid h3{margin:0 0 10px;font-size:.9rem;text-transform:uppercase;color:var(--navy)}.service-grid p{margin:0;line-height:1.42;font-size:.88rem}
.area{border-left:1px solid var(--line);padding-left:38px;position:relative}.area p{line-height:1.55}.area ul{list-style:none;padding:0;margin:18px 0 0}.area li{position:relative;padding-left:30px;margin-bottom:12px;line-height:1.48}.area li:before{content:'✓';position:absolute;left:0;top:0;color:white;background:var(--seafoam2);width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:900}.county-mark{position:absolute;right:8px;bottom:0;font-family:'Cormorant Garamond',Georgia,serif;font-size:5rem;color:rgba(77,145,139,.28);font-weight:800}
.about-section{position:relative;padding:58px 6vw 68px;background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.9)),radial-gradient(circle at 85% 18%,rgba(119,183,174,.25),transparent 22%),linear-gradient(180deg,#fff,#f7fbfb);overflow:hidden}.about-section:before{content:'FL';position:absolute;right:7vw;top:70px;font-family:'Cormorant Garamond',Georgia,serif;font-size:14rem;font-weight:700;color:rgba(77,145,139,.13);line-height:.8}.about-section:after{content:'';position:absolute;left:0;right:0;bottom:0;height:170px;background:linear-gradient(rgba(119,183,174,.08),rgba(119,183,174,.2));opacity:.8}.about-heading{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:18px;text-transform:uppercase;letter-spacing:.16em;color:var(--seafoam2);font-weight:800}.about-heading span{width:48px;height:2px;background:var(--seafoam2)}.about-heading p{margin:0}.about-section h2{position:relative;z-index:1;text-align:center;margin:14px auto 10px;font-family:'Cormorant Garamond',Georgia,serif;color:var(--navy);font-size:clamp(2.5rem,5vw,4.3rem);line-height:1}.wave-mark{text-align:center;color:var(--seafoam2);font-size:3rem;line-height:1;margin-bottom:18px}.about-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(310px,.9fr) minmax(380px,1fr);gap:46px;align-items:center;max-width:1380px;margin:0 auto}.family-photo-wrap{position:relative}.family-photo{width:100%;height:620px;object-fit:cover;object-position:center 46%;border-radius:12px;border:6px solid white;box-shadow:var(--shadow)}.family-badge{position:absolute;left:-24px;bottom:-22px;width:160px;height:160px;border-radius:50%;background:#fff;border:4px solid rgba(77,145,139,.65);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--navy);text-transform:uppercase;letter-spacing:.12em}.family-badge strong{font-size:.87rem}.family-badge small{font-size:.75rem;margin-top:7px;color:var(--seafoam2);font-weight:800}.about-copy h3{margin:0;font-family:'Cormorant Garamond',Georgia,serif;color:var(--navy);font-size:2.4rem}.about-copy h4{margin:2px 0 12px;color:var(--seafoam2);font-family:'Cormorant Garamond',Georgia,serif;font-size:1.35rem;font-weight:600}.small-line{width:54px;height:2px;background:var(--seafoam2);margin:0 0 16px}.about-copy p{line-height:1.62;margin:0 0 17px}.about-highlights{display:flex;gap:32px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.about-highlights div{display:flex;align-items:center;gap:12px;color:var(--navy);text-transform:uppercase;font-size:.9rem;letter-spacing:.03em}.about-highlights span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(77,145,139,.14);color:var(--seafoam2);font-weight:900;font-size:1.2rem}
.work{padding:56px 7vw;text-align:center;background:#fff}.work>p{color:var(--muted)}.gallery{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery div{min-height:180px;border-radius:14px;background:linear-gradient(rgba(6,31,54,.18),rgba(6,31,54,.55)),linear-gradient(135deg,#77b7ae,#061f36);color:white;display:flex;align-items:end;padding:22px;font-weight:800}
.cta{padding:28px 12vw;background:linear-gradient(rgba(77,145,139,.86),rgba(77,145,139,.86));color:white;display:flex;align-items:center;justify-content:space-between;gap:28px}.cta h2{margin:0 0 4px;font-family:'Cormorant Garamond',Georgia,serif;font-size:2rem;font-weight:600}.cta p{margin:0}.cta a{background:var(--navy);border:1px solid white}
footer{background:var(--navy);color:white;display:flex;align-items:center;gap:22px;padding:28px 7vw}footer img{width:84px;height:84px;object-fit:contain}footer p{margin:6px 0 0;color:rgba(255,255,255,.75)}
@media(max-width:1160px){.topbar{grid-template-columns:1fr auto}.nav{display:none}.services-area-wrap,.about-grid{grid-template-columns:1fr}.area{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:32px}.service-grid{grid-template-columns:repeat(3,1fr)}.family-photo{height:auto}.about-copy{padding-top:20px}}
@media(max-width:760px){.topbar{display:block;position:relative;padding:16px 20px}.brand{align-items:center}.logo{width:94px;height:94px;margin-bottom:0}.brand-name{font-size:1.9rem}.brand-service{font-size:.85rem;letter-spacing:.35em}.tagline{font-size:.95rem}.quote-button{display:inline-flex;margin-top:16px;width:100%;justify-content:center}.hero{padding:48px 6vw;background:linear-gradient(rgba(251,248,239,.94),rgba(251,248,239,.86)),url('florida-coastal-home-hero.jpg');background-size:cover;background-position:center}h1{font-size:2.65rem}.promise-strip,.service-grid,.gallery{grid-template-columns:1fr}.promise{border-right:0;border-bottom:1px solid var(--line);justify-content:flex-start;padding:18px 0}.promise:last-child{border-bottom:0}.services-area-wrap,.work{padding-left:6vw;padding-right:6vw}.about-section{padding:48px 5vw 56px}.about-section:before{font-size:8rem;right:2vw}.family-badge{width:128px;height:128px;left:8px;bottom:-18px}.about-highlights{flex-direction:column;gap:16px}.cta{padding:34px 6vw;flex-direction:column;align-items:flex-start}.cta a{width:100%;text-align:center}footer{flex-direction:column;align-items:flex-start}}


.contact-section{
  padding:56px 7vw;
  background:linear-gradient(rgba(77,145,139,.9),rgba(77,145,139,.9)),radial-gradient(circle at 80% 20%,rgba(255,255,255,.3),transparent 30%);
  color:white;
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(320px,1.1fr);
  gap:42px;
  align-items:start;
}
.contact-kicker{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:900;
  margin:0 0 14px;
  color:#eaf8f5;
  font-size:.78rem;
}
.contact-intro h2{
  margin:0 0 12px;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(2.4rem,5vw,4rem);
  line-height:1;
}
.contact-intro p{
  margin:0;
  line-height:1.7;
  max-width:560px;
}
.contact-intro a{
  font-weight:900;
  text-decoration:underline;
}
.quote-form{
  background:rgba(255,255,255,.96);
  color:var(--navy);
  border-radius:16px;
  padding:28px;
  box-shadow:var(--shadow);
  display:grid;
  gap:16px;
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.quote-form label{
  display:grid;
  gap:8px;
  font-weight:800;
  font-size:.9rem;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  width:100%;
  border:1px solid rgba(6,31,54,.18);
  border-radius:9px;
  padding:14px;
  font:inherit;
  background:white;
  color:var(--text);
}
.quote-form textarea{
  min-height:140px;
  resize:vertical;
}
.quote-form button{
  border:0;
  background:var(--navy);
  color:white;
  padding:16px 24px;
  border-radius:7px;
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.06em;
  cursor:pointer;
}
.form-note{
  color:var(--muted);
  font-size:.82rem;
  line-height:1.5;
  margin:0;
}
.hidden-field{
  display:none;
}
@media(max-width:900px){
  .contact-section{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
}


/* Version 2.0 accessibility and Hostinger form-result styles */
:focus-visible{outline:3px solid #77b7ae;outline-offset:3px}
.form-result-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#061f36,#0b3656)}
.form-result-card{width:min(680px,100%);background:#fbf8ef;border-radius:18px;padding:38px;text-align:center;box-shadow:0 22px 60px rgba(0,0,0,.28);border-top:8px solid #77b7ae}
.form-result-card.error{border-top-color:#a04b4b}
.form-result-card img{width:130px;height:130px;object-fit:contain}
.form-result-card h1{font-size:clamp(2.4rem,7vw,4rem);margin:12px 0 16px}
.form-result-card p{line-height:1.65}
.result-button{display:inline-block;background:#061f36;color:white;padding:15px 24px;border-radius:8px;font-weight:800;text-transform:uppercase;margin:10px 0 8px}
.result-contact{font-size:.9rem;color:#4f5c66}
.result-contact a{text-decoration:underline;font-weight:700}


/* Launch Edition 2.1 refinements */
.hero-trust{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 22px;
}
.hero-trust span{
  padding:8px 11px;
  border:1px solid rgba(6,31,54,.18);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--navy);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:0 6px 16px rgba(6,31,54,.07);
}
.coastal-expertise{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:48px;
  padding:62px 8vw;
  background:linear-gradient(135deg,#061f36,#0a3150);
  color:white;
  align-items:center;
}
.section-kicker{
  margin:0 0 12px;
  color:var(--seafoam);
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:.78rem;
  font-weight:900;
}
.coastal-copy h2{
  margin:0 0 16px;
  max-width:760px;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(2.25rem,4vw,3.6rem);
  line-height:1.02;
}
.coastal-copy p:last-child{
  margin:0;
  max-width:760px;
  color:rgba(255,255,255,.84);
  line-height:1.7;
}
.coastal-points{
  display:grid;
  gap:12px;
}
.coastal-points div{
  display:grid;
  grid-template-columns:54px 1fr;
  align-items:center;
  gap:14px;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.06);
}
.coastal-points strong{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--seafoam);
  color:white;
}
.coastal-points span{
  font-weight:700;
  line-height:1.45;
}
.quote-button:focus-visible,
.nav a:focus-visible,
.contact-row a:focus-visible,
.quote-form input:focus-visible,
.quote-form select:focus-visible,
.quote-form textarea:focus-visible,
.quote-form button:focus-visible{
  outline:3px solid #f4c96b;
  outline-offset:3px;
}
.quote-form button:hover,
.quote-button:hover,
.cta a:hover{
  filter:brightness(.94);
  transform:translateY(-1px);
}
.quote-form button,
.quote-button,
.cta a{
  transition:filter .2s ease, transform .2s ease;
}
@media(max-width:900px){
  .coastal-expertise{grid-template-columns:1fr;padding:50px 6vw}
}
@media(max-width:760px){
  .hero-trust{gap:7px}
  .hero-trust span{font-size:.68rem;padding:7px 9px}
}

/* Launch Edition 2.1 Revision - remove numbered icons */
.coastal-points div{
  grid-template-columns:1fr;
}
.coastal-points strong{
  display:none;
}
.coastal-points span{
  display:block;
  font-weight:700;
}


/* Saltwater Signature Launch Edition 3.0 — story-led homepage */
.why-us{
  padding:78px 7vw 84px;
  background:#fff;
}
.story-heading{
  max-width:920px;
  margin:0 auto 44px;
  text-align:center;
}
.story-kicker{
  margin:0 0 12px;
  color:var(--seafoam2);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.story-heading h2{
  margin:0 auto 16px;
  max-width:860px;
  color:var(--navy);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(2.5rem,5vw,4.35rem);
  line-height:1;
}
.story-heading>p:last-child{
  max-width:720px;
  margin:0 auto;
  color:var(--muted);
  line-height:1.7;
}
.why-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:1320px;
  margin:0 auto;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.why-grid article{
  position:relative;
  padding:38px 34px 42px;
}
.why-grid article+article{
  border-left:1px solid var(--line);
}
.why-number{
  display:block;
  margin-bottom:22px;
  color:var(--seafoam2);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.15rem;
  font-weight:800;
  letter-spacing:.12em;
}
.why-grid h3{
  margin:0 0 13px;
  color:var(--navy);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:2rem;
  line-height:1.05;
}
.why-grid p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

.preparation-story{
  padding:82px 8vw;
  background:
    radial-gradient(circle at 85% 20%,rgba(119,183,174,.16),transparent 32%),
    linear-gradient(135deg,#061f36,#0a3150);
  color:#fff;
}
.preparation-inner{
  max-width:1180px;
  margin:0 auto;
}
.preparation-inner h2{
  max-width:850px;
  margin:0 0 34px;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(2.55rem,5vw,4.4rem);
  line-height:1;
}
.preparation-copy{
  max-width:980px;
  padding-left:34px;
  border-left:2px solid var(--seafoam);
}
.preparation-copy p{
  margin:0 0 20px;
  color:rgba(255,255,255,.84);
  font-size:1.02rem;
  line-height:1.78;
}
.preparation-copy p:last-child{
  margin-bottom:0;
}

.story-services{
  padding:78px 7vw 88px;
  background:var(--cream);
}
.services-intro{
  max-width:760px;
  margin:-10px auto 36px;
  text-align:center;
  color:var(--muted);
  line-height:1.7;
}
.story-services .service-grid{
  max-width:1320px;
  margin:0 auto;
}
.story-services .service-grid article{
  background:#fff;
  box-shadow:0 14px 35px rgba(6,31,54,.08);
}

.story-area{
  position:relative;
  overflow:hidden;
  padding:72px 8vw 78px;
  background:#f7f2e8;
  text-align:center;
}
.area-inner{
  position:relative;
  z-index:1;
  max-width:1020px;
  margin:0 auto;
}
.story-area> .area-inner > p{
  max-width:820px;
  margin:0 auto 16px;
  color:var(--muted);
  line-height:1.7;
}
.area-cities{
  font-size:.96rem;
}
.story-area .county-mark{
  position:absolute;
  right:-90px;
  bottom:-55px;
  opacity:.055;
  font-size:16rem;
  line-height:1;
  pointer-events:none;
}
.story-area .section-title{
  justify-content:center;
}

@media(max-width:900px){
  .why-grid{
    grid-template-columns:1fr;
  }
  .why-grid article+article{
    border-left:0;
    border-top:1px solid var(--line);
  }
}
@media(max-width:760px){
  .why-us,.preparation-story,.story-services,.story-area{
    padding-left:6vw;
    padding-right:6vw;
  }
  .why-us{padding-top:58px;padding-bottom:62px}
  .why-grid article{padding:30px 22px 34px}
  .preparation-story{padding-top:58px;padding-bottom:62px}
  .preparation-copy{padding-left:20px}
  .story-services{padding-top:58px;padding-bottom:62px}
  .story-area{padding-top:58px;padding-bottom:64px}
}
