:root{
  --deep:#073b66;
  --blue:#0877b8;
  --sky:#dff4ff;
  --white:#ffffff;
  --soft:#f7fbff;
  --orange:#ff8a24;
  --orange-dark:#db6411;
  --ink:#132f44;
  --muted:#5d7180;
  --line:#d8ebf4;
  --shadow:0 20px 50px rgba(7,59,102,.16);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--soft);color:var(--ink);line-height:1.58;overflow-x:hidden;font-size:18px}
a{color:inherit}
.ocean-art{position:fixed;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(180deg,#ffffff 0%,#eef9ff 42%,#fff8f1 100%)}
.ocean-art:before{content:"";position:absolute;inset:-20% -10% auto -10%;height:72%;background:radial-gradient(circle at 80% 18%,rgba(255,138,36,.22),transparent 19rem),radial-gradient(circle at 8% 8%,rgba(8,119,184,.18),transparent 22rem);filter:blur(1px);animation:softGlow 10s ease-in-out infinite alternate}
.sun{position:absolute;right:7vw;top:98px;width:145px;height:145px;border-radius:50%;background:radial-gradient(circle,#ffb35f 0 42%,#ff8a24 43% 63%,rgba(255,138,36,.16) 64%);box-shadow:0 0 70px rgba(255,138,36,.32);animation:sunFloat 8s ease-in-out infinite}
.wave{position:absolute;left:-12vw;width:125vw;border-radius:50%;background:transparent;border-top:5px solid rgba(8,119,184,.14);transform:rotate(-2deg);animation:waveDrift 12s ease-in-out infinite alternate}.wave-one{height:260px;top:210px}.wave-two{height:320px;top:265px;border-top-color:rgba(255,138,36,.16);transform:rotate(2deg);animation-duration:15s}.wave-three{height:420px;top:350px;border-top-color:rgba(8,119,184,.12);animation-duration:18s}
.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,119,184,.12)}.nav{max-width:1160px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:15px 22px;gap:18px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900;color:var(--deep);font-size:1.05rem}.brand-mark{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--deep));color:white;box-shadow:0 10px 22px rgba(8,119,184,.26);position:relative}.brand-mark:after{content:"";position:absolute;right:-4px;bottom:6px;width:15px;height:15px;border-radius:999px;background:var(--orange);box-shadow:0 0 0 4px #fff}.nav-links{display:flex;align-items:center;gap:18px;font-weight:750;color:var(--deep)}.nav-links a{text-decoration:none;transition:color .2s ease,transform .2s ease}.nav-links a:hover{color:var(--orange-dark);transform:translateY(-1px)}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--orange);color:white;text-decoration:none;font-weight:900;padding:15px 25px;box-shadow:0 14px 28px rgba(255,138,36,.28);cursor:pointer;font-size:1rem;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}.button:hover{background:var(--orange-dark);transform:translateY(-3px);box-shadow:0 0 0 5px rgba(255,138,36,.16),0 18px 34px rgba(255,138,36,.38)}.button:active{transform:translateY(-1px)}.button.secondary{background:white;color:var(--deep);border:2px solid rgba(8,119,184,.2);box-shadow:none}.button.secondary:hover{background:#f8fdff;border-color:rgba(8,119,184,.5);box-shadow:0 0 0 5px rgba(8,119,184,.13),0 16px 30px rgba(8,119,184,.13)}.button.small{padding:10px 16px;font-size:.94rem}
.hero{max-width:1160px;margin:auto;display:grid;grid-template-columns:1.14fr .86fr;gap:42px;align-items:center;padding:88px 22px 56px}.hero-copy h1{font-size:clamp(3rem,6.2vw,5.8rem);line-height:.96;margin:8px 0 24px;color:var(--deep);letter-spacing:-.065em}.lead{font-size:1.34rem;color:#425b6c;max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--blue);font-weight:950;font-size:.78rem;margin:0 0 10px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 14px}.trust-note{color:var(--muted);font-weight:800}.hero-panel{background:rgba(255,255,255,.88);border:1px solid rgba(8,119,184,.16);border-radius:34px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden;transition:transform .24s ease,box-shadow .24s ease}.hero-panel:hover{transform:translateY(-4px);box-shadow:0 26px 58px rgba(7,59,102,.2)}.hero-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(8,119,184,.12),transparent 48%,rgba(255,138,36,.16));z-index:0}.hero-panel>*{position:relative;z-index:1}.panel-wave{height:70px;margin:-8px -10px 18px;background:linear-gradient(135deg,var(--blue),var(--deep));border-radius:24px;position:relative;overflow:hidden}.panel-wave:after{content:"";position:absolute;left:-10%;right:-10%;bottom:-28px;height:58px;border-radius:50%;background:white;box-shadow:0 -18px 0 rgba(255,138,36,.9)}.panel-label{margin:0 0 12px;color:var(--orange-dark);font-weight:950;text-transform:uppercase;letter-spacing:.09em}.hero-panel ul{padding-left:24px;margin:0}.hero-panel li{margin:13px 0;font-size:1.12rem;font-weight:820;color:var(--deep)}
.section{max-width:1160px;margin:auto;padding:62px 22px}.section-heading{max-width:830px}.section h2{font-size:clamp(2.1rem,3.5vw,3.3rem);line-height:1.05;color:var(--deep);letter-spacing:-.045em;margin:0 0 24px}.section-heading p,.intro-card p,.service-area p,.request p,.reassurance p{color:var(--muted);font-size:1.08rem}.reveal{animation:fadeUp .7s ease both}.intro-card{display:grid;grid-template-columns:180px 1fr;gap:34px;align-items:center;background:white;border:1px solid var(--line);border-radius:34px;box-shadow:0 14px 35px rgba(7,59,102,.08);margin-top:16px;position:relative;overflow:hidden}.intro-card:after{content:"";position:absolute;right:-60px;bottom:-92px;width:240px;height:240px;border-radius:50%;border:32px solid rgba(255,138,36,.18)}.portrait-placeholder{width:150px;height:150px;border-radius:38px;background:linear-gradient(135deg,var(--deep),var(--blue));display:grid;place-items:center;color:white;font-size:4rem;font-weight:950;box-shadow:0 20px 38px rgba(7,59,102,.22);position:relative}.portrait-placeholder:after{content:"";position:absolute;right:-10px;bottom:18px;width:35px;height:35px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 8px white}.common-problems{padding-top:50px}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.problem{background:white;border:2px solid rgba(8,119,184,.12);border-radius:20px;padding:18px 18px 18px 52px;color:var(--deep);font-weight:850;box-shadow:0 10px 24px rgba(7,59,102,.06);position:relative;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.problem:hover{transform:translateY(-3px);border-color:rgba(255,138,36,.55);box-shadow:0 16px 30px rgba(7,59,102,.12)}.problem:before{content:"";position:absolute;left:18px;top:23px;width:16px;height:16px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(255,138,36,.16)}.reassurance{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center;background:linear-gradient(135deg,#fff,var(--sky));border-radius:32px;border:1px solid var(--line);box-shadow:0 14px 34px rgba(7,59,102,.08)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 10px 26px rgba(7,59,102,.07);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.card:hover{transform:translateY(-4px);border-color:rgba(8,119,184,.28);box-shadow:0 18px 36px rgba(7,59,102,.13)}.icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--sky);color:var(--deep);font-weight:950;margin-bottom:14px}.card h3{font-size:1.28rem;margin:0 0 10px;color:var(--deep)}.card p{margin:0;color:var(--muted)}
.pricing{background:linear-gradient(135deg,var(--deep),#0b5d91);color:white;border-radius:38px;margin-top:28px;position:relative;overflow:hidden}.pricing:before{content:"";position:absolute;inset:auto -10% -95px -10%;height:220px;background:radial-gradient(ellipse at center,rgba(255,138,36,.62),transparent 65%)}.pricing .section-heading,.price-cards,.rate-banner,.pricing-footnote{position:relative}.pricing h2,.pricing .eyebrow{color:white}.pricing .section-heading p{color:#d9f0fb}.rate-banner{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);border-radius:30px;padding:24px;margin:28px 0;backdrop-filter:blur(8px)}.big-rate{font-size:clamp(2rem,4vw,3.4rem);line-height:1;margin:0 0 10px;font-weight:950;color:white}.rate-note{margin:0;color:#d9f0fb}.rate-plus{font-size:2.2rem;font-weight:950;color:var(--orange)}.price-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{background:rgba(255,255,255,.96);color:var(--ink);border-radius:26px;padding:24px;border:1px solid rgba(255,255,255,.4);transition:transform .22s ease,box-shadow .22s ease}.price-card:hover{transform:translateY(-4px);box-shadow:0 20px 38px rgba(0,0,0,.14)}.price-card.featured{box-shadow:0 18px 40px rgba(0,0,0,.16);border:3px solid var(--orange)}.price-label{margin:0 0 8px!important;color:var(--orange-dark)!important;font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem!important}.pricing .price-label{color:#ffd3b1!important}.price-card .price-label{color:var(--orange-dark)!important}.price-card h3{margin:0 0 8px;color:var(--deep)}.price{font-size:1.45rem!important;font-weight:950;color:var(--blue)!important;margin:0 0 12px!important}.price-card p:last-child{margin:0;color:var(--muted)}.pricing-footnote{color:#e7f6fd;font-weight:800;margin:24px 0 0;max-width:820px}
.service-area{background:white;border:1px solid var(--line);border-left:10px solid var(--orange);border-radius:30px;box-shadow:0 14px 35px rgba(7,59,102,.08)}.faq{background:rgba(255,255,255,.74);border:1px solid var(--line);border-radius:34px}.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:24px}.faq-item{background:white;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 12px 26px rgba(7,59,102,.08);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.faq-item:hover{transform:translateY(-3px);border-color:rgba(255,138,36,.42);box-shadow:0 18px 34px rgba(7,59,102,.12)}.faq-item h3{margin:0 0 10px;color:var(--deep);font-size:1.2rem}.faq-item p{margin:0;color:var(--muted)}.privacy-note{margin:24px 0 0;background:linear-gradient(135deg,#fff,var(--sky));border-left:8px solid var(--orange);border-radius:22px;padding:18px;color:var(--deep)!important;font-weight:750}.thanks-page{min-height:100vh;display:flex;flex-direction:column}.thanks-main{max-width:900px;margin:auto;padding:88px 22px}.thanks-card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:38px;box-shadow:var(--shadow);padding:clamp(30px,6vw,58px);position:relative;overflow:hidden}.thanks-card:before{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,36,.35),transparent 70%)}.thanks-card h1{font-size:clamp(2.6rem,6vw,4.8rem);line-height:.98;margin:10px 0 22px;color:var(--deep);letter-spacing:-.06em}.thanks-card p{font-size:1.18rem;color:var(--muted);max-width:680px}.request{display:grid;grid-template-columns:.82fr 1fr;gap:30px}.contact-note{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;color:var(--deep);box-shadow:0 10px 24px rgba(7,59,102,.07)}.contact-note a{color:var(--blue);font-weight:900}.contact-form{background:white;border:1px solid var(--line);border-radius:30px;padding:26px;box-shadow:var(--shadow);display:grid;gap:16px}.contact-form label{display:grid;gap:8px;font-weight:900;color:var(--deep)}input,textarea,select{width:100%;border:2px solid #c9e3ef;border-radius:16px;padding:15px 15px;font:inherit;color:var(--ink);background:#fbfdff}select{appearance:auto}input:focus,textarea:focus,select:focus{outline:4px solid rgba(255,138,36,.18);border-color:var(--orange)}.form-note{margin:0;color:var(--muted);font-size:.96rem}.footer{border-top:1px solid var(--line);padding:28px 22px;text-align:center;color:var(--muted);background:white}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes sunFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes waveDrift{from{transform:translateX(0) rotate(-2deg)}to{transform:translateX(22px) rotate(-1deg)}}@keyframes softGlow{from{opacity:.82}to{opacity:1}}
@media(max-width:860px){body{font-size:17px}.nav{align-items:flex-start}.nav-links{display:none}.hero,.request,.intro-card,.reassurance,.rate-banner{grid-template-columns:1fr}.portrait-placeholder{width:118px;height:118px;border-radius:30px;font-size:3rem}.hero{padding-top:54px}.cards,.price-cards,.problem-grid,.faq-grid{grid-template-columns:1fr}.rate-plus{display:none}.section{padding:44px 18px}.hero-panel,.intro-card,.pricing,.service-area,.reassurance,.faq{border-radius:26px}.sun{width:110px;height:110px;right:2vw;top:86px;opacity:.75}.button{width:100%;padding:16px 20px}.hero-actions{flex-direction:column}.hero-copy h1{font-size:clamp(2.8rem,13vw,4.1rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
