@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700&family=Outfit:wght@300;400;500;600&display=swap";:root{--black:#070707;--coal:#101010;--charcoal:#1b1b1b;--graphite:#272727;--light-gray:#bdbdbd;--mist:#e6e6e6;--white:#f8f8f8;--accent:#8e8e8e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--mist);background:radial-gradient(circle at 10% -10%, #353535 0%, transparent 42%), radial-gradient(circle at 90% 0%, #252525 0%, transparent 30%), var(--black);margin:0;font-family:Outfit,sans-serif;position:relative}body:before{content:"";opacity:.16;pointer-events:none;z-index:0;background-image:url(/coast-logo.png);background-position:50%;background-repeat:no-repeat;background-size:clamp(420px,64vw,860px);position:fixed;inset:0}#app{z-index:1;min-height:100vh;position:relative}.top-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000;border-bottom:1px solid #2f2f2f;position:sticky;top:0}.logo-wrap{align-items:center;gap:.8rem;max-width:1150px;margin:0 auto;padding:.2rem 1rem;display:flex}.brand-logo{object-fit:contain;border-radius:14px;width:clamp(230px,31vw,440px);height:clamp(125px,17vw,220px);box-shadow:0 14px 28px #00000073}.brand-copy{padding-top:.1rem}.header-phone{color:var(--mist);letter-spacing:.05em;white-space:nowrap;border:1px solid #6a6a6a;border-radius:999px;margin-left:auto;padding:.7rem 1rem;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;text-decoration:none;transition:background-color .24s,color .24s,border-color .24s}.header-phone:hover{color:#111;background:#ededed;border-color:#ededed}.eyebrow{color:var(--light-gray);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.75rem}.brand-copy h1{text-transform:uppercase;letter-spacing:.03em;margin:.25rem 0 0;font-family:Barlow Condensed,sans-serif;font-size:clamp(1.8rem,3vw,2.8rem)}.brand-slogan{letter-spacing:.05em;text-transform:uppercase;color:#d5d5d5;margin:.35rem 0 0;font-size:clamp(.86rem,1.2vw,1rem)}.hero-video{border-bottom:1px solid #2e2e2e;min-height:78vh;max-height:900px;position:relative;overflow:hidden}.hero-video video{object-fit:cover;filter:grayscale(.4)contrast(1.08)brightness(.72);width:100%;height:100%;display:block}.hero-overlay{background:linear-gradient(#0000000a,#0000009e 55%,#000000db),repeating-linear-gradient(-63deg,#ffffff08,#ffffff08 6px,#00000003 6px 12px);align-content:end;gap:1rem;padding:clamp(1.2rem,4vw,3rem);display:grid;position:absolute;inset:0}.hero-kicker{color:#d7d7d7;letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.9rem}.hero-overlay h2{text-transform:uppercase;letter-spacing:.02em;max-width:900px;margin:0;font-family:Barlow Condensed,sans-serif;font-size:clamp(2rem,6vw,4.5rem);line-height:.95}.hero-overlay p{color:#cecece;max-width:640px;margin:0;font-size:clamp(1rem,1.6vw,1.2rem)}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:.5rem;display:flex}.btn{border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.3rem;font-size:.95rem;text-decoration:none;transition:transform .25s,background-color .25s,border-color .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{color:var(--black);background:var(--mist);border:1px solid var(--mist)}.btn-secondary{color:var(--mist);background:0 0;border:1px solid #7a7a7a}main{gap:2.4rem;max-width:1150px;margin:0 auto;padding:3.3rem 1.2rem 2.2rem;display:grid}section{background:linear-gradient(160deg,#161616,#0d0d0d);border:1px solid #2a2a2a;border-radius:22px;padding:1.6rem}.section-head h3,.contact h3,.quote-copy h3{letter-spacing:.01em;text-transform:uppercase;margin:.25rem 0 0;font-family:Barlow Condensed,sans-serif;font-size:clamp(1.7rem,4vw,2.4rem)}.services-subline{color:#d2d2d2;letter-spacing:.06em;text-transform:uppercase;margin:.45rem 0 0;font-size:.98rem}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.service-card{background:linear-gradient(#232323,#171717);border:1px solid #313131;border-radius:16px;padding:.8rem;transition:transform .28s,border-color .28s,box-shadow .28s;overflow:hidden}.service-card:hover{border-color:#6f6f6f;transform:translateY(-4px);box-shadow:0 14px 26px #00000059}.service-media{aspect-ratio:16/10;border:1px solid #3a3a3a;border-radius:12px;margin:0 0 .8rem;position:relative;overflow:hidden}.service-media img{object-fit:cover;filter:saturate(.76)contrast(1.04)brightness(.66);width:100%;height:100%;transition:transform .35s,filter .35s;display:block}.service-card:hover .service-media img{filter:saturate(.84)contrast(1.06)brightness(.78);transform:scale(1.05)}.service-hover{opacity:0;background:linear-gradient(#00000014 30%,#000000eb);align-content:end;gap:.4rem;margin:0;padding:.9rem;transition:transform .28s,opacity .28s;display:grid;position:absolute;inset:0;transform:translateY(100%)}.service-card:hover .service-hover,.service-card:focus-within .service-hover{opacity:1;transform:translateY(0)}.service-hover h5{text-transform:uppercase;letter-spacing:.02em;margin:0;font-family:Barlow Condensed,sans-serif;font-size:1.2rem}.service-hover p{color:#dfdfdf;margin:0;font-size:.92rem;line-height:1.35}.why-intro{color:#d4d4d4;max-width:920px;margin:.9rem 0 0;font-size:1.05rem}.why-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-top:1rem;display:grid}.why-grid article{background:linear-gradient(#ffffff0f,#00000026);border:1px solid #363636;border-radius:14px;padding:.95rem}.why-grid h4{text-transform:uppercase;letter-spacing:.02em;margin:0;font-family:Barlow Condensed,sans-serif;font-size:1.24rem}.why-grid p{color:#d0d0d0;margin:.55rem 0 0}.service-grid h4{text-transform:uppercase;margin:0;font-family:Barlow Condensed,sans-serif;font-size:1.4rem}.service-grid p{color:#d0d0d0;margin:.6rem 0 0}.service-brief{min-height:3.4rem}.benefit-list{color:#d6d6d6;gap:.75rem;margin:1rem 0 0;padding-left:1.1rem;display:grid}.quote{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}.quote-copy p{color:#d4d4d4}.quote-copy ul{color:#cfcfcf;margin:1rem 0 0;padding-left:1.1rem}.quote-form{background:#121212;border:1px solid #323232;border-radius:16px;gap:.8rem;padding:1rem;display:grid}.hp-field{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.quote-form label{color:#ccc;gap:.35rem;font-size:.9rem;display:grid}.quote-form input,.quote-form select,.quote-form textarea{width:100%;color:var(--white);font:inherit;background:#0a0a0a;border:1px solid #3e3e3e;border-radius:10px;padding:.72rem}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:#888;outline:2px solid #888}.btn-submit{cursor:pointer;border:0;width:100%}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.form-note{color:#d7ffd7;min-height:1.2rem;margin:0;font-size:.9rem}.contact{grid-template-columns:1.2fr 1fr;gap:1rem;display:grid}.contact p{color:#cecece}.contact-card{background:#000;border:1px solid #2f2f2f;border-radius:16px;justify-self:start;gap:.2rem;width:fit-content;min-width:210px;padding:.55rem .75rem;display:grid}.contact-card p{margin:0}.contact-mini-logo{width:min(280px,90%);height:auto;margin:0 auto .1rem;display:block}.contact-card a{color:#f0f0f0;letter-spacing:.04em;font-family:Barlow Condensed,sans-serif;font-size:clamp(1.55rem,2.6vw,2.05rem);font-weight:700;text-decoration:none}.site-footer{text-align:center;color:#bcbcbc;border-top:1px solid #2b2b2b;margin-top:1.4rem;padding:1.4rem 1rem}.phone-below-footer{text-align:center;padding:.3rem 1rem 1.2rem}.phone-below-footer a{color:#f4f4f4;letter-spacing:.05em;font-family:Barlow Condensed,sans-serif;font-size:1.8rem;text-decoration:none}.side-tab{writing-mode:vertical-rl;z-index:40;color:#f0f0f0;letter-spacing:.18em;cursor:pointer;background:#0f0f0f;border:1px solid #5b5b5b;border-radius:12px 12px 0 0;padding:.75rem .45rem;font-family:Barlow Condensed,sans-serif;position:fixed;top:42%;right:.5rem;transform:rotate(180deg)}.side-nav{z-index:45;background:linear-gradient(#181818,#090909);border-left:1px solid #2a2a2a;width:min(300px,86vw);height:100%;padding:1rem;transition:transform .28s;position:fixed;top:0;right:0;transform:translate(100%)}.side-nav.open{transform:translate(0)}.close-nav{color:#ececec;cursor:pointer;background:0 0;border:1px solid #4c4c4c;border-radius:8px;width:42px;height:34px}.side-nav nav{gap:.65rem;margin-top:1rem;display:grid}.side-nav a{color:#efefef;letter-spacing:.05em;text-transform:uppercase;border:1px solid #343434;border-radius:10px;padding:.7rem .9rem;font-family:Barlow Condensed,sans-serif;font-size:1.25rem;text-decoration:none}.side-nav a:hover{background:#232323}.nav-call{color:#000;background:#f3f3f3}.menu-overlay{opacity:0;pointer-events:none;z-index:42;background:#00000094;transition:opacity .28s;position:fixed;inset:0}.menu-overlay.show{opacity:1;pointer-events:auto}@keyframes revealUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-overlay,.services,.why-choose,.benefits,.quote,.contact{animation:.6s both revealUp}.services{animation-delay:60ms}.why-choose{animation-delay:.12s}.benefits{animation-delay:.18s}.quote{animation-delay:.24s}.contact{animation-delay:.3s}@media (width<=900px){.logo-wrap{flex-wrap:wrap;align-items:flex-start}.brand-logo{width:clamp(205px,58vw,340px);height:clamp(110px,31vw,170px)}.header-phone{margin-top:.2rem;margin-left:0;padding:.6rem .9rem;font-size:1.05rem}.service-grid,.why-grid,.quote,.contact{grid-template-columns:1fr}.contact-card{width:100%}body:before{opacity:.14;background-size:clamp(280px,78vw,560px)}.service-hover{opacity:1;background:linear-gradient(#0000002e 34%,#000000d6);transform:translateY(0)}.hero-video{min-height:68vh}.side-tab{top:auto;bottom:18px}}
