@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#09243f;--aqua:#4ed6dc;--blue:#007baf;--ink:#15334a;--muted:#5d6c76;--pale:#edf5f5;--cream:#f8f8f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,.button{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{max-width:100%;display:block}.wrap{max-width:1240px;margin:auto;padding-inline:40px}.topbar{background:var(--navy);color:#dce9ee;font-size:12px;letter-spacing:.04em;padding:8px 40px;display:flex;justify-content:space-between}.topbar a{font-weight:700}header{position:sticky;top:0;background:rgba(255,255,255,.97);z-index:10;border-bottom:1px solid #e3eaed}.nav{display:flex;align-items:center;justify-content:space-between;min-height:100px}.brand img{width:230px;height:auto}.nav nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav nav>a:not(.button):hover{color:var(--blue)}.button{display:inline-flex;gap:36px;align-items:center;justify-content:space-between;background:var(--aqua);color:var(--navy);font-weight:800;padding:17px 25px;border:0;cursor:pointer;border-radius:3px;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#80e5e8;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.button.small{padding:13px 20px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white;min-height:660px}.hero-copy{padding:70px max(40px,calc((100vw - 1160px)/2));padding-right:45px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.13em;margin-bottom:25px;color:var(--blue)}.hero .eyebrow{color:var(--aqua);display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;border-radius:50%;background:var(--aqua)}h1{font-size:clamp(54px,5.5vw,82px);line-height:1.05;letter-spacing:-.06em;margin:0 0 26px;font-weight:800}em{font-style:normal;color:var(--blue)}.hero em{color:var(--aqua)}.hero p{color:#c2d2dc;max-width:470px;font-size:16px;line-height:1.8}.actions{display:flex;align-items:center;gap:26px;margin-top:34px}.call{font-size:12px;color:#c2d2dc;line-height:1.6;white-space:nowrap}.call strong{display:block;color:white;font-size:15px}.hero-foot{display:flex;gap:25px;font-size:11px;color:#a7c3cf;margin-top:45px}.hero-foot span:before{content:'✓';color:var(--aqua);margin-right:8px}.hero-photo{position:relative;min-height:640px;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:65% center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#09243f65,transparent 50%);pointer-events:none}.photo-note{position:absolute;bottom:70px;left:30px;right:30px;background:#fff;color:var(--navy);display:flex;align-items:center;gap:20px;padding:22px 25px;z-index:1;font-size:10px;letter-spacing:.08em;box-shadow:0 14px 40px #051a2830}.photo-note strong{font-size:17px;letter-spacing:-.02em}.mini-wave{font-size:60px;color:var(--blue);line-height:.8}.photo-credit{position:absolute;bottom:23px;left:30px;color:white;z-index:1;font-size:9px;letter-spacing:.12em}.ticker{display:flex;align-items:center;justify-content:space-around;padding:22px 25px;background:var(--aqua);color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.07em;gap:20px}.ticker b{font-size:22px}.section{padding-top:100px;padding-bottom:100px}.section-head{display:grid;grid-template-columns:1.25fr 1fr;gap:80px;align-items:end;margin-bottom:50px}.section-head p{max-width:380px;color:var(--muted);margin-bottom:6px}h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.05em;line-height:1.13;margin:0;font-weight:800}h3{font-size:20px;line-height:1.3;letter-spacing:-.03em}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dbe4e7;border-left:1px solid #dbe4e7}.services article{position:relative;padding:35px;border-right:1px solid #dbe4e7;border-bottom:1px solid #dbe4e7;transition:background .2s}.services article:hover{background:var(--pale)}.number{position:absolute;right:25px;top:25px;font-size:11px;color:#7e919d}.service-icon{font-size:40px;line-height:1;color:var(--blue);height:50px;display:block}.services p{font-size:14px;color:var(--muted);min-height:70px}.services a{font-size:12px;font-weight:700}.results{background:var(--cream)}.text-link{display:inline-block;font-weight:700;font-size:13px;border-bottom:1px solid var(--blue);padding-bottom:6px;margin-top:18px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.work{border:0;padding:0;background:white;text-align:left;color:var(--navy);cursor:pointer;overflow:hidden}.work img{width:100%;aspect-ratio:1;object-fit:contain;transition:transform .35s}.work:hover img{transform:scale(1.025)}.work span{display:flex;justify-content:space-between;padding:20px;font-size:14px;font-weight:700;border-top:1px solid #eef0eb}.work b{color:var(--blue);font-size:22px}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about p{color:var(--muted)}.about-art{padding:40px;background:var(--pale);min-height:360px;display:flex;flex-direction:column;justify-content:space-between}.about-art>img{mix-blend-mode:multiply;width:100%;margin:30px 0}.location{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.06em;border-top:1px solid #cbdfe1;padding-top:20px}.location span{font-size:26px}.process{background:var(--navy);color:white}.process .eyebrow{color:var(--aqua)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.steps>div{border-top:1px solid #416074;padding-top:24px}.steps span{color:var(--aqua);font-size:10px;font-weight:700;letter-spacing:.1em}.steps p{font-size:14px;color:#bed1dc}.quote{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.quote>div>p{max-width:330px;color:var(--muted);margin-top:25px}.big-phone{font-family:Manrope,sans-serif;font-size:27px;font-weight:800;display:block;margin-top:35px;letter-spacing:-.04em}.email{display:block;font-size:14px;margin-top:8px;overflow-wrap:anywhere}.contact-note{margin-top:45px;font-size:13px;color:var(--muted);border-left:3px solid var(--aqua);padding-left:20px}.contact-note strong{color:var(--ink)}form{background:var(--pale);padding:35px;border-radius:4px}form h3{margin:0 0 25px;font-size:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:12px;font-weight:700;margin-bottom:18px}input,select,textarea{display:block;width:100%;border:1px solid #c9dade;border-radius:3px;background:white;color:var(--navy);padding:12px;margin-top:7px;min-width:0;font-size:14px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.form-privacy{font-size:11px;color:var(--muted);line-height:1.6}.form-privacy a{text-decoration:underline}form .button{width:100%}.form-status{font-size:13px;margin-bottom:0}.hidden{display:none}.faq{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #e2eaed;padding-top:70px}details{border-bottom:1px solid #d9e4e7;padding:20px 0}summary{font-weight:700;cursor:pointer;font-size:15px}details p{font-size:14px;color:var(--muted)}details a{text-decoration:underline}footer{background:var(--navy);color:white;padding-top:60px}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:30px;padding-bottom:45px}.footer-brand{font-size:28px;letter-spacing:.07em;font-weight:800;line-height:1.1}.footer-brand span{display:block;color:var(--aqua);font-size:11px;letter-spacing:.4em}.footer-top p{font-size:12px;color:#b2c8d2}.footer-top>div:nth-child(2){display:grid;gap:9px;font-size:13px}.footer-bottom{padding-block:20px;display:flex;justify-content:space-between;font-size:11px;color:#b2c8d2;border-top:1px solid #2a465d}.mobile-call{display:none}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}dialog{border:0;border-radius:5px;padding:35px 20px 15px;width:min(800px,95vw);background:var(--cream);color:var(--navy)}dialog::backdrop{background:#051a2be8}dialog img{max-height:75vh;margin:auto;object-fit:contain}dialog p{text-align:center;font-size:13px}.close-lightbox{position:absolute;right:8px;top:0;background:none;border:0;font-size:28px;cursor:pointer;color:var(--navy)}.simple-page{max-width:800px;margin:70px auto;padding:30px}.simple-page h1{font-size:46px}.simple-page p{color:var(--muted)}
@media(min-width:1600px){.hero-copy{padding-left:calc((100vw - 1160px)/2);padding-right:70px}.hero{min-height:740px}}@media(max-width:1000px){.wrap{padding-inline:28px}.nav nav{gap:18px}.brand img{width:190px}.hero-copy{padding:50px 28px}.actions{gap:20px;flex-wrap:wrap}.hero-photo{min-height:620px}.section{padding-block:70px}.section-head{gap:40px}.services article{padding:28px}.quote{gap:45px}.about{gap:45px}.ticker{font-size:10px}.ticker b{font-size:15px}}
@media(max-width:720px){html{scroll-padding-top:90px}.topbar{padding:9px 20px;font-size:10px;justify-content:center}.topbar a{display:none}.nav{min-height:82px}.brand img{width:185px}.menu{display:flex;gap:14px;align-items:center;background:none;border:1px solid #dbe4e7;padding:8px 11px;border-radius:3px;color:var(--navy);font-size:12px}.nav nav{display:none;position:absolute;left:0;right:0;top:82px;background:white;padding:25px;box-shadow:0 15px 25px #09243f15}.nav nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 25px}.hero h1{font-size:65px}.hero p{font-size:15px}.hero-foot{margin-top:30px}.hero-photo{min-height:370px;height:370px}.hero-photo>img{object-position:center 65%}.photo-note{bottom:55px;left:24px;right:24px;padding:16px 20px}.photo-note strong{font-size:15px}.photo-credit{left:25px;bottom:17px}.ticker{justify-content:center;flex-wrap:wrap;gap:10px 17px;padding:18px;font-size:9px}.ticker b{font-size:12px}.ticker b:nth-of-type(3){display:none}.section-head{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;margin-bottom:18px}h2{font-size:39px}.wrap{padding-inline:24px}.section{padding-block:60px}.services{grid-template-columns:1fr 1fr}.services article{padding:24px 20px}.services h3{font-size:18px}.services p{min-height:100px;font-size:13px}.services a{font-size:11px}.service-icon{font-size:34px}.gallery{grid-template-columns:1fr;gap:23px}.work img{max-height:460px}.about{grid-template-columns:1fr;gap:35px}.about-art{min-height:280px;padding:30px}.steps{grid-template-columns:1fr;gap:20px;margin-top:35px}.quote{grid-template-columns:1fr;gap:35px}.contact-note{margin-top:25px}form{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.faq{grid-template-columns:1fr;gap:20px}.footer-top{flex-wrap:wrap}.footer-top>.button{width:100%}.footer-bottom{flex-wrap:wrap;gap:15px;padding-bottom:85px}.footer-brand{font-size:23px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;background:var(--aqua);color:var(--navy);padding:15px;z-index:9;font-size:14px;font-weight:800;box-shadow:0 -3px 20px #09243f15}.simple-page{margin:30px auto}.simple-page h1{font-size:38px}}
@media(max-width:380px){.services{grid-template-columns:1fr}.services p{min-height:0}.hero h1{font-size:56px}.brand img{width:155px}.big-phone{font-size:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Site-native comparisons crop away the social-post borders and typography. */
.gallery{display:grid;grid-template-columns:1fr;gap:52px}.project{border-top:1px solid #d6e0df;padding-top:27px}.project-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:23px}.project-heading .eyebrow{margin-bottom:10px}.project-heading h3{font-size:29px;margin:0;letter-spacing:-.04em}.project-heading p{font-size:14px;color:var(--muted);max-width:330px;margin:0}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px}.comparison-photo{position:relative;overflow:hidden;aspect-ratio:var(--ratio);background:var(--navy);border-radius:3px}.comparison-photo img{position:absolute;max-width:none;width:var(--image-width);height:auto;left:var(--image-left);top:var(--image-top)}.comparison-label{position:absolute;left:18px;bottom:18px;padding:7px 16px;background:var(--navy);color:white;border-radius:2px;font-size:11px;font-weight:700;letter-spacing:.06em}.comparison-label.after{background:var(--aqua);color:var(--navy)}
@media(max-width:720px){.project-heading{display:block}.project-heading h3{font-size:25px}.project-heading p{margin-top:12px}.comparison{gap:9px}.comparison-label{left:9px;bottom:9px;padding:5px 11px;font-size:10px}.gallery{gap:35px}}

.service-icon{display:flex;align-items:center;justify-content:center;width:66px;height:66px;margin-bottom:24px;border-radius:14px;background:#eaf5f6;color:var(--navy)}.service-icon svg{display:block;width:44px;height:44px}.service-icon .accent{stroke:var(--blue)}.services article:hover .service-icon{background:#d9eff0}@media(max-width:720px){.service-icon{width:58px;height:58px;margin-bottom:21px;border-radius:12px}.service-icon svg{width:39px;height:39px}}

.service-icon{background:transparent;border-radius:0;width:44px;height:44px;margin-bottom:24px;justify-content:flex-start}.service-icon img{width:34px;height:34px;opacity:.9;filter:invert(14%) sepia(24%) saturate(1515%) hue-rotate(168deg) brightness(91%) contrast(97%)}.services article:hover .service-icon{background:transparent}@media(max-width:720px){.service-icon{width:40px;height:40px}.service-icon img{width:32px;height:32px}}
.reviews{background:var(--navy);color:white}.reviews .eyebrow{color:var(--aqua)}.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.reviews-layout>div>p{color:#bed1dc;max-width:380px}.review-panel{border:1px solid #3b586e;padding:35px;border-radius:4px}.review-platform{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--aqua)}.review-panel h3{font-size:25px;margin:22px 0 15px}.review-panel p{font-size:14px;color:#bed1dc}.review-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:25px}.review-write{font-size:12px;text-decoration:underline;text-underline-offset:5px}@media(max-width:720px){.reviews-layout{grid-template-columns:1fr;gap:25px}.review-panel{padding:25px}}
.reviews .section-head p{color:#bed1dc}.review-rating{font:800 30px/1.2 Manrope,sans-serif;color:var(--aqua);letter-spacing:-.04em}.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-card{margin:0;padding:30px;background:#12324c;border:1px solid #355169;border-radius:4px;display:flex;flex-direction:column}.review-recommend{color:var(--aqua);font-size:11px;font-weight:700}.review-card blockquote{margin:25px 0 30px;font-size:18px;line-height:1.65;flex:1}.review-card figcaption strong{display:block;font-size:15px}.review-card figcaption span{display:block;font-size:10px;color:#bed1dc;margin-top:5px}.review-card>a{font-size:11px;color:#bed1dc;margin-top:20px;text-decoration:underline;text-underline-offset:4px}.review-source-note{font-size:10px;color:#a7bfcd;margin-top:24px}@media(max-width:720px){.review-cards{grid-template-columns:1fr}.review-card{padding:25px}.review-card blockquote{font-size:17px}.review-rating{font-size:27px}}

.services article{display:flex;flex-direction:column}.services article h3{min-height:52px;margin-top:0}.services article p{min-height:0;flex:1;margin-top:0}.services article>a{margin-top:16px}.project-heading{display:block;margin-bottom:22px}.project-caption{font-size:14px;line-height:1.6;color:var(--muted);margin:16px 0 0;max-width:760px}.project-heading .eyebrow{margin-bottom:8px}@media(max-width:720px){.services{grid-template-columns:1fr}.services article{padding:27px}.services article h3{min-height:0;font-size:21px}.services article p{font-size:14px;max-width:440px}.project-caption{font-size:13px;margin-top:12px}}

.instagram-gallery{grid-template-columns:1fr 1fr;gap:40px 28px}.instagram-gallery>.project:not(.instagram-project){grid-column:1/-1}.instagram-project .project-heading h3{font-size:25px}.instagram-project .comparison{gap:9px}.instagram-project .comparison-label{left:10px;bottom:10px;padding:5px 10px;font-size:10px}.about-portrait{position:relative;max-width:440px;width:100%;margin:auto}.about-portrait>img{width:100%;height:auto;border-radius:3px}.portrait-caption{position:absolute;left:20px;right:20px;bottom:20px;background:var(--navy);color:white;padding:16px 20px}.portrait-caption strong{display:block;font-size:16px}.portrait-caption span{display:block;font-size:11px;color:var(--aqua);margin-top:3px}@media(max-width:720px){.instagram-gallery{grid-template-columns:1fr}.instagram-gallery>.project:not(.instagram-project){grid-column:auto}}

.ticker{justify-content:center;flex-wrap:wrap;gap:12px 19px;padding:24px max(25px,calc((100vw - 1160px)/2));font-size:10px;line-height:1.5}.ticker b{font-size:16px}.slideshow{outline-offset:8px}.slideshow .project{margin:0;border-top:1px solid #d6e0df}.slideshow .project[hidden]{display:none!important}.slideshow .project-heading h3{font-size:29px}.slideshow .comparison{max-width:100%;gap:18px}.slideshow .comparison-photo{aspect-ratio:4/3}.slideshow .comparison-photo img{top:var(--image-top);height:auto}.slideshow .instagram-project .comparison-photo{aspect-ratio:1}.slideshow .instagram-project .comparison{max-width:720px;margin:auto}.slideshow .instagram-project .project-caption{max-width:720px;margin:16px auto 0}.slideshow-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #d6e0df;margin-top:27px;padding-top:22px}.slide-dots{display:flex;gap:9px}.slide-dots button{border:0;padding:0;width:10px;height:10px;background:#bacbd0;border-radius:50%;cursor:pointer}.slide-dots button[aria-current=true]{background:var(--blue);width:28px;border-radius:10px}.slide-count{font-size:12px;color:var(--muted)}.slide-buttons{display:flex;gap:8px}.slide-buttons button{background:white;color:var(--navy);border:1px solid #cbdadd;min-height:43px;min-width:43px;padding:8px 13px;cursor:pointer;border-radius:3px}.slide-buttons button:hover{background:var(--aqua)}.slide-prev,.slide-next{font-size:21px}.slide-play{font-size:12px;font-weight:700}@media(max-width:720px){.ticker{font-size:9px;gap:9px 12px}.ticker b:nth-of-type(3){display:block}.slideshow .comparison{gap:9px}.slideshow .project-heading h3{font-size:24px}.slideshow-controls{flex-wrap:wrap;gap:15px}.slide-count{margin-left:auto}.slide-buttons{margin-left:auto}.slideshow .comparison-label{padding:5px 9px;font-size:10px;left:8px;bottom:8px}}
.slideshow .comparison-photo{aspect-ratio:var(--ratio)}.slideshow .comparison{max-width:1000px;margin-inline:auto}.slideshow .instagram-project .comparison{max-width:720px}
/* Fixed slide geometry keeps navigation stationary between projects. */
.slideshow .project-heading{height:84px;margin-bottom:18px;overflow:hidden}
.slideshow .project-heading h3{font-size:27px;line-height:1.25;margin:0}
.slideshow .project-heading .eyebrow{margin:0 0 10px}
.slideshow .comparison,.slideshow .instagram-project .comparison{width:100%;max-width:1000px;margin:0 auto;gap:18px}
.slideshow .comparison-photo,.slideshow .instagram-project .comparison-photo{aspect-ratio:4/3}
/* Crop coordinates are measured against the source crop width, independent of frame height. */
.slideshow .comparison-photo img{top:calc(var(--image-top) * 4 / 3 / (var(--crop-ratio,1)))}
.slideshow .project-caption,.slideshow .instagram-project .project-caption{height:48px;margin:16px auto 0;max-width:1000px;font-size:14px;line-height:1.6;overflow:hidden}
.slideshow-controls{margin-top:22px;min-height:66px}
@media(max-width:720px){.slideshow .project-heading{height:78px;margin-bottom:15px}.slideshow .project-heading h3{font-size:23px}.slideshow .comparison,.slideshow .instagram-project .comparison{gap:9px}.slideshow .project-caption,.slideshow .instagram-project .project-caption{height:64px;font-size:13px;margin-top:12px}.slideshow-controls{display:grid;grid-template-columns:1fr auto;margin-top:17px;min-height:100px}.slide-buttons{grid-column:1/-1;justify-self:end}.slide-count{margin:0}}
.slideshow .comparison-photo,.slideshow .instagram-project .comparison-photo{aspect-ratio:3/2}.slideshow .comparison-photo img{top:calc(var(--image-top) * 1.5 / var(--crop-ratio,1))}
