:root{--navy:#0a3146;--blue:#08617b;--orange:#ffa666;--paper:#f4f6f5;--cloud:#dce9eb;--muted:#4c626c;--line:#a9bcc4;--white:#fff;--head:'Teko',sans-serif;--body:'Libre Franklin',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--body);font-size:16px;line-height:1.7}body,button,input,select,textarea{font-family:var(--body)}button,input,select,textarea{font-size:1rem}a{color:inherit;text-underline-offset:5px}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--head);font-weight:600;line-height:1}h1{font-size:clamp(5rem,8.7vw,8.5rem);letter-spacing:-.015em}h2{font-size:clamp(3rem,5vw,5.1rem)}h3{font-size:2.2rem}p{max-width:65ch}[hidden]{display:none!important}.skip{position:fixed;left:20px;top:-100px;z-index:20;padding:12px;background:var(--white)}.skip:focus{top:12px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 4vw;background:var(--white)}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--head);font-size:2rem;font-weight:600;line-height:.9;flex-shrink:0}.brand-number{font-size:4.8rem;line-height:.78;border-right:2px solid;padding-right:10px}.brand>span:last-child>span{display:block;font:600 .7rem/1.4 var(--body);letter-spacing:.08em;margin-top:5px}.header-location{font-size:.75rem;letter-spacing:.07em;font-weight:600}.header-location span{display:block;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:3px}.header-phone{text-align:right;text-decoration:none;font-weight:600;font-size:1.05rem}.header-phone span{display:block;font-size:.75rem;letter-spacing:.06em;font-weight:400}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--white)}.hero-copy{padding:60px 4vw 64px}.eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.12em;line-height:1.5}.hero h1{margin:24px 0}.hero h1 span{color:var(--orange)}.hero-copy>p:not(.eyebrow){max-width:410px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:15px 24px;min-height:54px;border:1px solid transparent;border-radius:7px;text-decoration:none;font-weight:600;font-size:.95rem}.orange{background:var(--orange);color:var(--navy)}.orange:hover{background:#ffb87f}.hero .button{margin-top:30px}.hero a:focus-visible{outline-color:var(--orange)}.hero-visual{background:var(--cloud);color:var(--navy);display:flex;flex-direction:column;justify-content:center;padding:30px 0 20px;min-width:0;overflow:hidden}.hero-visual img{aspect-ratio:1.5;object-fit:contain}.hero-caption{display:flex;justify-content:space-between;gap:14px;background:var(--orange);padding:19px 30px;font-size:.8rem;font-weight:600;letter-spacing:.1em;margin-top:20px}.hero-visual .photo-note{padding:12px 30px 0}.photo-note{font-size:.75rem;color:var(--muted);max-width:none}.navigation-bar{position:sticky;top:0;z-index:10;background:var(--white);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 4vw;min-height:76px;gap:30px}.nav-label{font-size:.75rem;letter-spacing:.08em;font-weight:600}nav{display:flex;gap:38px}nav a{font-size:.95rem;font-weight:500;text-decoration:none;padding:24px 0}nav a:hover{color:var(--blue);text-decoration:underline}.menu-toggle{display:none;background:none;border:0;color:var(--navy);min-height:50px;padding:8px 0;font-weight:600}.menu-toggle span{margin-left:20px}.section-shell{padding:100px 4vw}.company{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.company h2{margin:22px 0}.company-copy>p:not(.eyebrow){margin:18px 0}.text-link{display:inline-flex;gap:35px;align-items:center;margin-top:15px;font-weight:600;font-size:.9rem}.city-figure img{aspect-ratio:1.6;object-fit:cover;border-radius:0 55px 0 0}.city-figure figcaption{font-size:.75rem;color:var(--muted);margin-top:15px}.city-figure figcaption strong{display:block;color:var(--navy);margin-bottom:7px;letter-spacing:.05em}.services{background:var(--cloud);display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.section-heading h2{margin:22px 0}.section-heading>p:last-child{max-width:300px}.service-row{display:grid;grid-template-columns:45px 1fr 48px;gap:18px;padding:26px 0;border-top:1px solid #728d99;align-items:start}.service-row:last-child{border-bottom:1px solid #728d99}.service-index{font-size:.8rem;padding-top:6px;color:var(--muted)}.service-row p{margin-top:8px;font-size:1rem}.service-link{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--navy);border-radius:50%;font-size:1.6rem;text-decoration:none}.service-link:hover{color:var(--white);background:var(--navy)}.gallery-heading{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:38px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gallery-grid img{aspect-ratio:4/5;object-fit:cover}.gallery-grid figure:nth-child(2){padding-top:60px}.gallery-grid figure:nth-child(3){padding-top:120px}.gallery-grid figcaption{padding-top:20px}.gallery-grid figcaption>span{font-size:.75rem;letter-spacing:.1em;font-weight:600;color:var(--muted)}.gallery-grid h3{margin-top:9px;font-size:2rem}.gallery>.photo-note{margin-top:35px}.contact{background:var(--orange)}.contact-top{display:grid;grid-template-columns:1fr 1fr;gap:15px 50px;align-items:end;margin-bottom:40px}.contact-top>.eyebrow{grid-column:1/-1}.contact-top h2{font-size:clamp(4rem,7vw,7rem)}.contact-top>p:last-child{max-width:460px;margin-bottom:7px}.direct-prompt{background:var(--paper);padding:30px}.contact-lines{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #895939;margin-top:35px;padding-top:28px}.contact-lines a{font-size:clamp(1rem,2vw,1.5rem);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.contact-lines a:hover{text-decoration:underline}.contact-lines span{display:block;font-size:.75rem;letter-spacing:.1em;margin-bottom:4px;font-weight:400}.footer{display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:center;padding:45px 4vw;background:var(--navy);color:var(--white)}.footer-brand p{font-size:.8rem;margin-top:22px;color:var(--cloud)}address{font-style:normal;font-size:.95rem}.footer .text-link{margin:0}.footer a:focus-visible{outline-color:var(--orange)}.legal{grid-column:1/-1;border-top:1px solid #6d8795;padding-top:25px;font-size:.75rem;color:var(--cloud)}
@media(min-width:1600px){.hero-copy{padding-top:85px;padding-bottom:85px}.section-shell{padding-left:max(4vw,calc((100vw - 1450px)/2));padding-right:max(4vw,calc((100vw - 1450px)/2))}}
@media(max-width:1050px){.header-location{display:none}.hero-copy{padding-top:42px;padding-bottom:42px}.hero h1{font-size:clamp(4.5rem,9vw,6.8rem)}.hero-caption{font-size:.7rem;padding:16px}.company{gap:5vw}.services{grid-template-columns:1fr;gap:40px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:15px 35px;align-items:end}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{margin:0}.section-heading>p:last-child{max-width:400px}.gallery-heading{display:block}.gallery-heading h2{margin-top:20px}.footer{grid-template-columns:1fr auto}.footer>.text-link{grid-column:2;grid-row:2}.footer .legal{grid-column:1/-1}.gallery-grid{gap:18px}}
@media(max-width:700px){html{scroll-padding-top:78px}.masthead{padding:24px 6vw}.brand{font-size:1.6rem}.brand-number{font-size:4rem}.brand>span:last-child>span{font-size:.6rem}.header-phone{font-size:.85rem}.header-phone span{font-size:.6rem}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 6vw 45px}.hero h1{font-size:clamp(5.2rem,16vw,7rem)}.hero-copy>p:not(.eyebrow){max-width:460px}.hero-visual{padding-top:0}.hero-visual img{aspect-ratio:1.5}.hero-caption{margin-top:0;padding:20px 6vw;font-size:.75rem}.hero-visual .photo-note{padding-left:6vw}.navigation-bar{padding:0 6vw;min-height:68px;flex-wrap:wrap;gap:0}.menu-toggle{display:block}nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding:5px 0 20px}nav a{padding:10px 0}.js nav{display:none}.js nav.is-open{display:grid}.section-shell{padding:65px 6vw}.company{grid-template-columns:1fr;gap:35px}.company h2{font-size:3.7rem}.city-figure img{aspect-ratio:1.7}.section-heading{display:block}.section-heading h2{margin:20px 0}.service-row{grid-template-columns:25px 1fr 40px;gap:12px;padding:26px 0}.service-row h3{font-size:2rem}.service-link{width:40px;height:40px;font-size:1.3rem}.gallery-grid{grid-template-columns:1fr;gap:38px}.gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(3){padding-top:0}.gallery-grid img{aspect-ratio:4/3}.gallery-grid figcaption{padding-top:14px}.gallery-grid h3{font-size:2rem}.contact-top{grid-template-columns:1fr;gap:24px}.contact-top>.eyebrow{grid-column:auto}.contact-top h2{font-size:5rem}.contact-lines{grid-template-columns:1fr;gap:20px}.contact-lines a{font-size:1.15rem}.footer{grid-template-columns:1fr;padding:40px 6vw;gap:28px}.footer>.text-link{grid-column:1;grid-row:auto;justify-self:start}.footer .legal{grid-column:1}.footer-brand p{margin-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.gallery-grid figure:nth-child(1) img{object-position:50% 75%}.gallery-grid figure:nth-child(2) img{object-position:58% 45%}
.gallery-grid img{aspect-ratio:3/2}.inquiry-card{background:var(--white);padding:40px;border-radius:12px}.service-choice{border:0;padding:0;margin:0 0 28px;min-width:0}.service-choice legend{font-weight:600;font-size:.95rem;margin-bottom:14px}.choice-options{display:flex;flex-wrap:wrap;gap:10px}.choice-options label{display:flex;align-items:center;gap:8px;border:1px solid #637b88;border-radius:5px;padding:10px 13px;cursor:pointer;font-size:.875rem}.choice-options label:has(input:checked){background:var(--navy);color:var(--white);border-color:var(--navy)}.choice-options input{margin:0;width:17px;height:17px;accent-color:var(--blue);flex-shrink:0}.choice-options input:focus-visible{outline-color:var(--orange)}.route-fields{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--line);border:1px solid var(--line);margin-bottom:28px}.route-fields>div{background:var(--cloud);padding:25px}.route-fields>div:nth-child(2){background:var(--paper)}.route-fields label{font-family:var(--head);font-size:2.5rem;font-weight:600;line-height:1}.route-fields label span{font-family:var(--body);font-weight:400;font-size:.875rem;display:block;margin-top:5px;line-height:1.5}.inquiry-card label:not(.choice-options label){display:block;margin-bottom:9px}.request-field>label,.sender-fields label{font-size:.95rem;font-weight:600}.request-field label span,.sender-fields label span{font-weight:400;font-size:.85rem;color:var(--muted)}.inquiry-card input:not([type=radio]),.inquiry-card textarea{width:100%;min-width:0;max-width:100%;border:1px solid #637b88;border-radius:4px;background:var(--white);color:var(--navy);padding:13px 14px;line-height:1.5;min-height:50px}.inquiry-card textarea{resize:vertical}.inquiry-card input::placeholder,.inquiry-card textarea::placeholder{color:var(--muted);opacity:1}.sender-fields{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:22px}.form-actions{display:flex;gap:30px;align-items:center;margin-top:26px}.navy{background:var(--navy);color:var(--white)}.navy:hover{background:var(--blue)}.form-actions p,.draft-help{font-size:.8rem;color:var(--muted)}.draft-panel{border-top:1px solid var(--line);padding-top:30px;margin-top:35px}.draft-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:12px}.draft-heading h3{font-size:2.2rem}.draft-heading h3:focus{outline:none}.plain-button{background:none;border:0;padding:12px 0;color:var(--navy);text-decoration:underline;text-underline-offset:4px;font-size:.875rem;flex-shrink:0}.draft-label{font-size:.875rem;font-weight:600;margin-top:20px}.draft-panel>p{font-size:.875rem}.draft-actions{display:flex;flex-wrap:wrap;gap:15px;margin:20px 0 15px}.outline{background:var(--white);color:var(--navy);border-color:var(--navy)}.outline:hover{background:var(--cloud)}.form-status{font-size:.875rem;margin-top:12px;color:var(--navy)}.form-status:empty{display:none}
@media(max-width:700px){.inquiry-card{padding:24px 18px}.route-fields{grid-template-columns:1fr}.route-fields>div{padding:18px}.sender-fields{grid-template-columns:1fr;gap:18px}.form-actions{display:block}.form-actions p{margin-top:14px}.form-actions .button{width:100%}.choice-options{gap:8px}.choice-options label{padding:10px;font-size:.875rem}.draft-heading{align-items:start;flex-direction:column;gap:0}.draft-actions{flex-direction:column}.draft-actions .button{width:100%}.draft-panel>p{overflow-wrap:anywhere}.gallery-grid img{aspect-ratio:4/3}}
.choice-options input:focus-visible{outline-color:var(--blue)}.choice-options label:has(input:checked) input:focus-visible{outline-color:var(--orange)}.brand>span:last-child>span{font-size:.75rem}.hero-caption{font-size:.75rem}
@media(max-width:700px){.masthead{gap:12px}.header-phone{font-size:.875rem}.header-phone span{font-size:.75rem}}
@media(max-width:700px){.hero h1{font-size:clamp(3.9rem,14vw,6rem)}}
