:root{color:#1d2b21;font-synthesis:none;background:#f3f6f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 0 0,#81aa772e,#0000 30%),linear-gradient(#f8faf6,#edf3eb);min-width:320px;margin:0}a{color:inherit}.site-header{z-index:50;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0e2d19f0;border-bottom:1px solid #ffffff1f;align-items:center;gap:28px;min-height:76px;padding:14px 5%;display:flex;position:sticky;top:0}.company-name{color:#fff;margin-right:auto;font-size:1.18rem;font-weight:850;text-decoration:none}.navigation{gap:24px;display:flex}.navigation a{color:#ffffffe6;font-weight:650;text-decoration:none}.navigation a:hover{color:#dcecaa}.language-buttons{background:#ffffff1a;border-radius:999px;gap:6px;padding:4px;display:flex}.language-buttons button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 13px}.language-buttons button.active{color:#17361f;background:#dcecaa;font-weight:800}.hero{color:#fff;background-image:linear-gradient(90deg,#071c0feb,#12371eab 54%,#122d1a2e),url(/images/pavers/paver%20west%20vancouver1.png);background-position:50%;background-repeat:no-repeat;background-size:cover;align-items:center;min-height:680px;padding:80px 7%;display:flex}.hero-content{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c23144d;border:1px solid #ffffff26;border-radius:22px;max-width:760px;padding:42px}.hero h1{color:#fff;text-shadow:0 3px 14px #00000073;margin:8px 0 20px;font-size:clamp(2.6rem,5vw,4.9rem);line-height:1.05}.hero-content>p:not(.small-heading){color:#fffffff0;max-width:650px;font-size:1.2rem;line-height:1.7}.small-heading,.section-label{color:#dcecaa;letter-spacing:2px;font-size:.82rem;font-weight:850}.estimate-button{color:#17361f;background:#dcecaa;border-radius:9px;margin-top:20px;padding:15px 25px;font-weight:850;text-decoration:none;transition:transform .25s,background-color .25s;display:inline-block;box-shadow:0 8px 22px #0003}.estimate-button:hover{background:#ecf7ca;transform:translateY(-3px)}.section{max-width:1200px;margin:70px auto;padding:76px 34px}.section h2{color:#173f27;margin:0 0 16px;font-size:clamp(2rem,4vw,3rem)}.services-section{background:radial-gradient(circle at 8% 15%,#78a56926,#0000 24%),linear-gradient(145deg,#fffffffa,#eff6ecf7);border:1px solid #2b54341c;border-radius:26px;box-shadow:0 16px 45px #1b3c2317}.services-section .section-label{color:#56834f}.section-intro{color:#5c695f;margin:0 0 38px;font-size:1.08rem}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.service-card{color:#fff;text-align:left;cursor:default;background:linear-gradient(150deg,#315f3b,#173621);border:0;border-radius:17px;align-items:flex-end;min-height:300px;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:0 9px 26px #1b3c2329}.service-card:before{content:"";background-image:linear-gradient(180deg, #08190d0d, #08190ded), var(--card-image);background-position:50%;background-size:cover;transition:transform .35s;position:absolute;inset:0}.service-card.has-gallery{cursor:pointer}.service-card.has-gallery:hover:before{transform:scale(1.045)}.service-card-content{z-index:1;flex-direction:column;gap:10px;width:100%;padding:25px;display:flex;position:relative}.service-title{font-size:1.35rem;font-weight:850}.service-description{color:#ffffffd1;line-height:1.55}.service-link{color:#dcecaa;margin-top:5px;font-weight:850}.about-section{color:#fff;background-image:linear-gradient(90deg,#0c2f19f2,#174825b8),url(/images/allan-block/allan-block%20west%20vancouver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:26px;align-items:center;min-height:430px;display:flex;box-shadow:0 16px 42px #163d2233}.about-section div{max-width:760px}.about-section h2,.about-section p{color:#fff;text-shadow:0 2px 8px #0006}.about-section p{font-size:1.15rem;line-height:1.8}.contact-section{text-align:center;background:linear-gradient(135deg,#fffdf8,#edf5eb);border:1px solid #d8e5d5;border-radius:26px;box-shadow:0 14px 36px #1941241a}.contact-information{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:800px;margin:34px auto 0;display:grid}.contact-information a{color:#1f6135;background:#fff;border:1px solid #d7e4d4;border-radius:14px;flex-direction:column;gap:8px;padding:22px;text-decoration:none;display:flex}.contact-information span{color:#465349;overflow-wrap:anywhere}footer{color:#ffffffbf;text-align:center;background:#102d1a;padding:30px 20px}.gallery-modal,.image-viewer{z-index:100;display:none;position:fixed;inset:0}.gallery-modal.open,.image-viewer.open{display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#030d07d1;position:absolute;inset:0}.modal-panel{background:#f7faf5;border-radius:22px;width:min(1120px,100% - 32px);max-height:calc(100vh - 48px);margin:auto;padding:36px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #0006}.modal-panel h2{color:#173f27;margin:0 55px 26px 0}.modal-close,.viewer-close{z-index:3;color:#fff;cursor:pointer;background:#173f27;border:0;border-radius:50%;width:44px;height:44px;font-size:2rem;line-height:1;position:absolute;top:16px;right:18px}.modal-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.gallery-image-button{cursor:zoom-in;background:#dfe7dc;border:0;border-radius:13px;padding:0;overflow:hidden;box-shadow:0 6px 18px #14321c1f}.gallery-image-button img{object-fit:cover;width:100%;height:250px;transition:transform .3s;display:block}.gallery-image-button:hover img{transform:scale(1.04)}.image-viewer{z-index:150;cursor:zoom-out;background:#000000f0;justify-content:center;align-items:center;padding:30px}.image-viewer img{object-fit:contain;cursor:default;border-radius:8px;max-width:94vw;max-height:90vh;box-shadow:0 25px 70px #00000080}.viewer-close{background:#ffffff29;position:fixed}@media (width<=900px){.site-header{flex-wrap:wrap;gap:12px 20px}.navigation{order:3;width:100%;padding-top:5px;overflow-x:auto}.service-grid,.modal-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.site-header{padding:14px 18px;position:relative}.company-name{width:calc(100% - 150px)}.navigation{gap:18px}.hero{background-position:63%;min-height:610px;padding:55px 18px}.hero-content{padding:28px 22px}.hero h1{font-size:2.55rem}.section{border-radius:19px;margin:28px 12px;padding:48px 20px}.service-grid,.modal-gallery,.contact-information{grid-template-columns:1fr}.service-card{min-height:280px}.modal-panel{width:calc(100% - 20px);max-height:calc(100vh - 20px);padding:24px 16px}.gallery-image-button img{height:260px}}body.modal-open{overflow:hidden}.contact-quote-button{color:#fff;min-height:54px;font:inherit;cursor:pointer;background:#0b5d4d;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0 26px;font-size:16px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex;box-shadow:0 10px 25px #0b5d4d33}.contact-quote-button:hover{background:#08483c;transform:translateY(-2px)}.quote-modal{z-index:5000;background:#f3f7f5;display:none;position:fixed;inset:0;overflow-y:auto}.quote-modal.open{display:block}.quote-modal-backdrop{background:linear-gradient(135deg,#073028f7,#0e5b4bf0);position:fixed;inset:0}.quote-modal-panel{z-index:1;background:#fff;border:1px solid #ffffff4d;border-radius:18px;width:min(1120px,100% - 40px);min-height:calc(100vh - 40px);margin:20px auto;position:relative;overflow:hidden;box-shadow:0 30px 90px #0000004d}.quote-form-heading{color:#fff;background:linear-gradient(135deg,#073f35 0%,#0b5d4d 100%);padding:44px 70px 40px;position:relative}.quote-form-company{color:#e6bf64;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:14px;font-size:13px;font-weight:800}.quote-form-heading h2{color:#fff;margin:0;font-size:clamp(30px,4vw,48px);line-height:1.08}.quote-form-heading p{color:#ffffffd1;max-width:700px;margin:16px 0 0;font-size:16px;line-height:1.7}.quote-modal-close{z-index:5;color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:50%;place-items:center;width:46px;height:46px;padding:0;font-size:25px;transition:background .2s,transform .2s;display:grid;position:absolute;top:25px;right:28px}.quote-modal-close:hover{background:#ffffff3d;transform:rotate(4deg)}.quote-form{background:#fff;padding:48px 70px 60px}.quote-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 28px;display:grid}.quote-form label{color:#17352e;flex-direction:column;gap:9px;min-width:0;font-size:14px;font-weight:750;display:flex}.quote-form label>span{display:block}.quote-form label small{color:#71827e;font-size:12px;font-weight:500;line-height:1.5}.quote-form input,.quote-form select,.quote-form textarea{color:#17352e;width:100%;min-height:54px;font:inherit;background:#fbfcfc;border:1px solid #cfdbd7;border-radius:8px;outline:none;padding:14px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}.quote-form textarea{resize:vertical;min-height:130px;line-height:1.6}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{background:#fff;border-color:#0b705b;box-shadow:0 0 0 4px #0b705b1f}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#9aa8a4}.quote-form-full{grid-column:1/-1}.upload-section{border-top:1px solid #e1e8e5;grid-column:1/-1;margin-top:8px;padding-top:30px}.upload-section h3{color:#17352e;margin:0 0 8px;font-size:21px}.upload-section>p{color:#71827e;margin:0 0 20px;font-size:14px;line-height:1.6}.upload-box{color:#0b5d4d;text-align:center;cursor:pointer;background:#f3faf7;border:2px dashed #9fc8bd;border-radius:10px;justify-content:center;align-items:center;min-height:126px;padding:24px;transition:border-color .2s,background .2s;display:flex;position:relative}.upload-box:hover{background:#eaf6f1;border-color:#0b705b}.upload-box input[type=file]{min-height:auto;box-shadow:none;cursor:pointer;background:0 0;border:0;padding:10px}.selected-file-list{color:#52635f;gap:8px;margin-top:12px;font-size:13px;display:grid}.quote-privacy-note{color:#615638;background:#fff9eb;border-left:4px solid #d4aa4d;border-radius:4px;grid-column:1/-1;margin:4px 0 0;padding:16px 18px;font-size:13px;line-height:1.6}.quote-form-status{border-radius:7px;grid-column:1/-1;margin:0;padding:14px 16px;font-size:14px;font-weight:650;display:none}.quote-form-status:not(:empty){display:block}.quote-form-status.sending{color:#245e95;background:#edf5ff}.quote-form-status.success{color:#17633f;background:#e8f7ef}.quote-form-status.error{color:#a6342b;background:#fff0ef}.quote-submit-button{color:#fff;min-height:58px;font:inherit;cursor:pointer;background:#0b5d4d;border:0;border-radius:8px;grid-column:1/-1;justify-content:center;align-items:center;padding:0 30px;font-size:17px;font-weight:800;transition:background .2s,transform .2s;display:inline-flex;box-shadow:0 12px 28px #0b5d4d38}.quote-submit-button:hover:not(:disabled){background:#08483c;transform:translateY(-2px)}.quote-submit-button:disabled{cursor:wait;opacity:.65}@media (width<=760px){.quote-modal-panel{border:0;border-radius:0;width:100%;min-height:100vh;margin:0}.quote-form-heading{padding:70px 24px 32px}.quote-modal-close{top:17px;right:18px}.quote-form{padding:32px 20px 45px}.quote-form-grid{grid-template-columns:1fr;gap:20px}.quote-form-full,.upload-section,.quote-privacy-note,.quote-form-status,.quote-submit-button{grid-column:auto}.quote-form input,.quote-form select,.quote-form textarea{font-size:16px}}.quote-form input:not([type=file]),.quote-form select{box-sizing:border-box!important;width:100%!important;height:54px!important;min-height:54px!important;padding:0 16px!important}.quote-form textarea{box-sizing:border-box!important;width:100%!important;min-height:105px!important;padding:14px 16px!important}.quote-form-grid{row-gap:20px!important}.quote-form label{gap:7px!important}.quote-form-heading{padding-top:35px!important;padding-bottom:34px!important}.quote-form{padding-top:36px!important}.quote-form input[type=file]{height:auto!important;min-height:auto!important}@media (width<=760px){.quote-form-heading{padding-top:70px!important}.quote-form{padding-top:28px!important}}.project-items-section{border-top:1px solid #e1e8e5;width:100%;margin-top:8px;padding-top:28px}.project-items-heading{margin-bottom:20px}.project-items-heading h3{color:#17352e;margin:0 0 7px;font-size:22px}.project-items-heading p{color:#71827e;margin:0;font-size:14px;line-height:1.6}#projectItems{gap:20px;display:grid}.project-item{background:#f8fbfa;border:1px solid #d8e3df;border-radius:12px;padding:24px;box-shadow:0 6px 18px #1443370f}.project-item-header{border-bottom:1px solid #dfe8e5;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:14px;display:flex}.project-item-header strong{color:#0b5d4d;font-size:18px}.project-item-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.project-item-grid label{flex-direction:column;gap:7px;min-width:0;display:flex}.project-item-grid label>span{color:#17352e;font-size:14px;font-weight:700}.project-item-grid input,.project-item-grid select{box-sizing:border-box;background:#fff;border:1px solid #cddbd6;border-radius:7px;font-size:15px;width:100%!important;height:50px!important;min-height:50px!important;padding:0 14px!important}.project-item-grid textarea{box-sizing:border-box;resize:vertical;background:#fff;border:1px solid #cddbd6;border-radius:7px;font-size:15px;width:100%!important;min-height:86px!important;padding:12px 14px!important}.project-type-field,.custom-project-field{grid-column:span 2}.custom-project-field[hidden]{display:none!important}.project-notes-field{grid-column:1/-1}.add-project-button{color:#0b5d4d;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #0b5d4d;border-radius:7px;justify-content:center;align-items:center;margin-top:18px;padding:0 22px;font-size:15px;font-weight:750;transition:color .2s,background .2s,transform .2s;display:inline-flex}.add-project-button:hover{color:#fff;background:#0b5d4d;transform:translateY(-1px)}.remove-project-button{color:#a33c32;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d9a09a;border-radius:6px;padding:0 15px;font-size:13px;font-weight:700}.remove-project-button:hover{background:#fff0ef}@media (width<=900px){.project-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-type-field,.custom-project-field{grid-column:1/-1}}@media (width<=600px){.project-item{padding:18px 15px}.project-item-grid{grid-template-columns:1fr;gap:15px}.project-type-field,.custom-project-field,.project-notes-field{grid-column:auto}.project-item-header strong{font-size:16px}.add-project-button{width:100%}}
