@import "tailwindcss";
@import "tw-animate-css";
@import "../vendor/shadcn-tailwind-4.13.0.css";

@utility scrollbar-thin {
  scrollbar-width: thin;
}

@utility scrollbar-none {
  scrollbar-width: none;

  &::-webkit-scrollbar {
    display: none;
  }
}

@utility scrollbar-gutter-stable {
  scrollbar-gutter: stable;
}

:root {
  --background: #ffffff;
  --foreground: #171717;
  --card: #ffffff;
  --card-foreground: #171717;
  --popover: #ffffff;
  --popover-foreground: #171717;
  --primary: #171717;
  --primary-foreground: #fafafa;
  --secondary: #f5f5f5;
  --secondary-foreground: #171717;
  --muted: #f5f5f5;
  --muted-foreground: #737373;
  --accent: #f5f5f5;
  --accent-foreground: #171717;
  --destructive: #e7000b;
  --border: #e5e5e5;
  --input: #e5e5e5;
  --ring: #a1a1a1;
  --chart-1: #f54900;
  --chart-2: #009689;
  --chart-3: #104e64;
  --chart-4: #ffb900;
  --chart-5: #fe9a00;
  --radius: 0.625rem;
  --sidebar: #fafafa;
  --sidebar-foreground: #171717;
  --sidebar-primary: #171717;
  --sidebar-primary-foreground: #fafafa;
  --sidebar-accent: #f5f5f5;
  --sidebar-accent-foreground: #171717;
  --sidebar-border: #e5e5e5;
  --sidebar-ring: #a1a1a1;
}

@theme inline {
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-card: var(--card);
  --color-card-foreground: var(--card-foreground);
  --color-popover: var(--popover);
  --color-popover-foreground: var(--popover-foreground);
  --color-primary: var(--primary);
  --color-primary-foreground: var(--primary-foreground);
  --color-secondary: var(--secondary);
  --color-secondary-foreground: var(--secondary-foreground);
  --color-muted: var(--muted);
  --color-muted-foreground: var(--muted-foreground);
  --color-accent: var(--accent);
  --color-accent-foreground: var(--accent-foreground);
  --color-destructive: var(--destructive);
  --color-border: var(--border);
  --color-input: var(--input);
  --color-ring: var(--ring);
  --color-chart-1: var(--chart-1);
  --color-chart-2: var(--chart-2);
  --color-chart-3: var(--chart-3);
  --color-chart-4: var(--chart-4);
  --color-chart-5: var(--chart-5);
  --color-sidebar: var(--sidebar);
  --color-sidebar-foreground: var(--sidebar-foreground);
  --color-sidebar-primary: var(--sidebar-primary);
  --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
  --color-sidebar-accent: var(--sidebar-accent);
  --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
  --color-sidebar-border: var(--sidebar-border);
  --color-sidebar-ring: var(--sidebar-ring);
  --radius-sm: calc(var(--radius) - 4px);
  --radius-md: calc(var(--radius) - 2px);
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) + 4px);
  --font-sans: Arial, Helvetica, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
}

@media (prefers-color-scheme: dark) {
  :root {
    --background: #0a0a0a;
    --foreground: #ededed;
    --card: #171717;
    --card-foreground: #ededed;
    --popover: #171717;
    --popover-foreground: #ededed;
    --primary: #ededed;
    --primary-foreground: #171717;
    --secondary: #262626;
    --secondary-foreground: #ededed;
    --muted: #262626;
    --muted-foreground: #a1a1a1;
    --accent: #262626;
    --accent-foreground: #ededed;
    --destructive: #ff6467;
    --border: #ffffff1a;
    --input: #ffffff26;
    --ring: #737373;
    --chart-1: #8e51ff;
    --chart-2: #00bc7d;
    --chart-3: #fe9a00;
    --chart-4: #ad46ff;
    --chart-5: #ff2056;
    --sidebar: #171717;
    --sidebar-foreground: #ededed;
    --sidebar-primary: #8e51ff;
    --sidebar-primary-foreground: #ededed;
    --sidebar-accent: #262626;
    --sidebar-accent-foreground: #ededed;
    --sidebar-border: #ffffff1a;
    --sidebar-ring: #737373;
  }
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: Arial, Helvetica, sans-serif;
}
:root{--background:#fff;--foreground:#172c22;--primary:#126238;--primary-foreground:#fff;--secondary:#f3f6f3;--secondary-foreground:#172c22;--accent:#f5da35;--accent-foreground:#172c22;--ring:#126238;--green:#126238;--yellow:#f5da35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#193328;background:white}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}.topbar{padding:10px 6%;background:var(--green);color:white;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.03em}.topbar span{display:flex;align-items:center;gap:7px}.header{height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:white;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:10px;color:var(--green)}.brand b{font-size:38px;font-weight:900;letter-spacing:-2px;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:700;margin-top:4px}.brand-dot{color:#c4b021}nav{display:flex;gap:32px;font-size:14px;font-weight:600}.header-phone{display:flex;gap:10px;align-items:center;border:1px solid #dee4dd;padding:13px 18px;font-size:14px;font-weight:700}.menu{display:none}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:570px;background:#f1f4ed}.hero-copy{padding:66px 8% 50px 11%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;margin:0 0 24px;color:var(--green);display:flex;align-items:center;gap:10px}.eyebrow span{width:19px;height:2px;background:var(--green)}h1{font-size:clamp(44px,5.3vw,78px);line-height:1.04;letter-spacing:-3px;margin:0 0 25px;font-weight:750}h1 em,h2 em{font-style:normal;color:var(--green)}.intro{font-size:17px;line-height:1.8;max-width:420px;color:#5b695f}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:29px 0 36px}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;border:0;padding:17px 22px;background:var(--green);color:white;font-weight:700;font-size:14px}.button.yellow{background:var(--yellow);color:#193328}.text-link{font-size:14px;font-weight:600;display:inline-flex;gap:10px;align-items:center}.hero-proof{border-top:1px solid #d9e1d7;padding-top:23px;display:flex;gap:12px;align-items:center;font-size:12px;line-height:1.6;color:#637268}.hero-proof strong{font-weight:500}.hero-photo{position:relative;overflow:hidden;min-height:520px;background:#153827}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 42%;filter:brightness(.72)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#073322b3)}.photo-caption{position:absolute;bottom:83px;left:40px;color:white;z-index:1}.photo-caption span{font-size:10px;letter-spacing:2px}.photo-caption strong{display:block;font-size:35px;line-height:1.2;margin-top:14px;letter-spacing:-1px}.photo-label{position:absolute;right:0;bottom:0;background:var(--yellow);padding:22px 28px;z-index:1;display:flex;gap:35px;align-items:center;font-size:11px;font-weight:bold;letter-spacing:1px}.service-ribbon{padding:23px 6%;background:var(--green);color:white;font-weight:600;font-size:13px;letter-spacing:2px;display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden;white-space:nowrap}.service-ribbon span{color:var(--yellow);font-size:20px}.section{padding:82px 6%;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-heading>p{max-width:350px;color:#67736b;line-height:1.8;font-size:15px}.section .eyebrow{margin-bottom:17px}h2{font-size:42px;line-height:1.14;letter-spacing:-1.5px;margin:0}h3{font-size:21px;letter-spacing:-.5px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dfe5de;border-left:1px solid #dfe5de}.service{padding:30px;position:relative;border-right:1px solid #dfe5de;border-bottom:1px solid #dfe5de;transition:background .2s}.service:hover{background:#f0f5ec}.service>div{display:flex;justify-content:space-between;color:var(--green)}.service>div span{font-size:12px;color:#9ca79f}.service h3{margin:25px 0 8px}.service p{color:#68766b;font-size:14px;line-height:1.65;padding-right:25px}.service-arrow{position:absolute;right:25px;bottom:27px}.about{background:#f1f4ed;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about p:not(.eyebrow){font-size:16px;line-height:1.9;color:#5b6c61;margin-top:0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.project img{width:100%;height:270px;object-fit:cover}.project small{display:block;margin-top:19px;color:var(--green);font-size:12px;text-transform:uppercase;letter-spacing:1px}.project h3{display:flex;justify-content:space-between;margin:10px 0}.empty-projects{display:flex;align-items:center;gap:25px;padding:35px;background:#f5f7f2;border:1px solid #e4e8df}.empty-projects h3{margin:0 0 8px}.empty-projects p{font-size:14px;color:#637267;margin:0}.empty-projects .button{margin-left:auto}.contact{background:var(--green);color:white;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact .eyebrow{color:#c5d8bc}.contact h2{font-size:54px}.contact h2 em{color:var(--yellow)}.contact>div>p:not(.eyebrow){max-width:370px;color:#dfebdf;line-height:1.8;font-size:16px}.contact-phone{display:flex;align-items:center;gap:17px;font-size:29px;font-weight:700;margin:38px 0 15px}.contact-note{display:block;font-size:13px;border-top:1px solid #ffffff30;padding-top:28px;margin-top:35px}.contact form{background:white;color:#203529;padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}label{display:block;font-size:13px;font-weight:600;margin-bottom:17px}input:not([type=checkbox]),textarea,select{display:block;width:100%;border:1px solid #d9e1d7;background:#fafbf8;padding:13px;color:#263c2e;border-radius:2px;margin-top:8px;font-size:14px}textarea{resize:vertical}.consent{display:flex;gap:9px;font-size:12px;line-height:1.6;font-weight:400}.consent input{align-self:start;margin-top:3px}.contact form>small{font-size:11px;line-height:1.6;color:#748071;display:block;margin-top:15px}.contact form>.button{width:100%}.honeypot{display:none!important}footer{padding:38px 6%;display:flex;align-items:center;gap:35px;font-size:13px}footer>.brand{margin-right:auto}footer>small{color:#7a847d}.announcement{text-align:center;background:var(--yellow);padding:14px;font-size:14px}.season{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:30}.season span{position:absolute;top:-50px;color:white;text-shadow:0 1px 4px #315d46;font-size:22px;animation:fall linear infinite}.season.halloween span{font-size:27px}@keyframes fall{to{transform:translate(35px,110vh) rotate(100deg)}}@media(prefers-reduced-motion:reduce){.season{display:none}html{scroll-behavior:auto}}@media(max-width:950px){nav{gap:17px}.header-phone{display:none}.hero-copy{padding:45px 8%}h1{font-size:55px}.hero-photo{min-height:520px}.actions{gap:17px}.contact{gap:35px}.about{gap:35px}.contact h2{font-size:44px}.empty-projects{flex-wrap:wrap}.empty-projects .button{margin-left:0}footer{flex-wrap:wrap}.section{padding:60px 6%}}@media(max-width:650px){.topbar{font-size:10px}.topbar>span:last-child{display:none}.header{height:82px}.brand b{font-size:32px}.menu{display:block;border:0;background:none}.header nav{display:none;position:absolute;left:0;right:0;top:82px;padding:25px;background:white}.header nav.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 6%}h1{font-size:56px}.hero-photo{min-height:340px}.hero-photo>img{object-position:center 42%}.photo-caption{bottom:75px;left:25px}.photo-caption strong{font-size:27px}.section-heading{display:block}.section-heading>p{margin-top:24px}.services{grid-template-columns:1fr 1fr}.service{padding:22px}.service h3{font-size:19px}.service p{padding:0}.service-arrow{display:none}.about,.contact{grid-template-columns:1fr;gap:32px}.project-grid{grid-template-columns:1fr}.contact form{padding:23px}.form-grid{grid-template-columns:1fr}h2{font-size:34px}.contact h2{font-size:43px}.contact-phone{font-size:26px}.empty-projects{padding:25px}footer{gap:25px}.service-ribbon{font-size:11px}footer>.brand{width:100%}}
.admin{background:#f4f6f2;min-height:100vh}.admin-main{max-width:1200px;margin:auto;padding:50px 35px}.admin h1{font-size:43px;margin-bottom:13px}.admin-intro{color:#6b796e;margin-bottom:35px}.admin-tabs{height:auto!important;padding:5px!important;background:#e8eee4!important;margin-bottom:25px;max-width:100%;flex-wrap:wrap}.admin-tabs button{padding:12px 18px;font-size:14px}.admin-tabs button[data-state=active]{background:white!important}.admin-heading{display:flex;justify-content:space-between;align-items:center;margin:20px 0 25px;gap:20px}.admin h2{font-size:27px;margin-bottom:20px}.admin-heading h2{margin:0}.editor{background:white;padding:35px;border:1px solid #dfe5dd;margin:20px 0}.editor h3{margin:28px 0 20px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.admin input[type=color]{height:50px;padding:5px}.editor small{color:#6c796e;font-size:12px;font-weight:400}.upload-zone{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;border:2px dashed #c8d4c4;padding:25px;background:#f7f9f4}.upload-zone input{max-width:100%;font-size:12px}.admin-image{width:100%;height:180px;object-fit:cover;margin-bottom:15px}.secondary{border:1px solid #cbd6c6;background:white;padding:10px 16px;font-size:14px;font-weight:600}.delete{border:0;padding:10px;color:#9f3434;background:#fdf0ed;display:inline-flex;align-items:center;vertical-align:middle}.admin-projects{display:grid;gap:20px}.admin-projects article{display:flex;background:white;border:1px solid #dfe5dd;gap:25px;padding:20px}.admin-projects article img{width:170px;height:130px;object-fit:cover}.admin-projects article h3{margin:12px 0}.status{padding:15px;background:#e5efdc;border-left:3px solid var(--green)}.request{padding:27px;background:white;border:1px solid #dfe5dd;margin-bottom:18px}.request-head{display:flex;justify-content:space-between}.request h3{margin:10px 0}.request p{line-height:1.8}.request small{color:#6b796e}.article{max-width:1000px;margin:auto}.article h1{font-size:50px}.article>img{width:100%;max-height:560px;object-fit:cover;margin:25px 0 35px}.article>.button{margin-top:35px}@media(max-width:650px){.admin-main{padding:35px 18px}.admin h1{font-size:35px}.admin-grid{grid-template-columns:1fr;gap:0}.editor{padding:22px}.admin-heading{align-items:start;flex-direction:column}.admin-tabs button{padding:10px}.admin-projects article{flex-direction:column}.admin-projects article img{width:100%;height:190px}.article h1{font-size:36px}}

.hero-photo>img{object-position:50% 37%}.hero-photo:after{background:linear-gradient(transparent 38%,#073322ed 100%)}
/* ASM identity — poster-inspired composition */
.asm-site{background:#fff url('/assets/asm-background.png') center top/100% auto no-repeat;--green:#086325;--yellow:#ffeb00;overflow-x:clip}.asm-site .topbar{background:#063b19;color:#e8f4dd;padding:10px 5.5%;font-size:12px}.header{height:125px}.brand img{width:153px;height:106px;object-fit:contain;display:block}.asm-site .header{margin:0 4%;padding:0 2%;border-bottom:1px solid #24662922;background:#ffffffb8;backdrop-filter:blur(14px);height:120px}.asm-site nav{gap:34px}.asm-site nav a{position:relative;padding:14px 0}.asm-site nav a:after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:3px;background:var(--green);transition:right .25s}.asm-site nav a:hover:after{right:0}.asm-site .header-phone{background:var(--green);color:white;border:0;box-shadow:6px 6px 0 var(--yellow);padding:15px 22px}.hero-v2{position:relative;min-height:700px;grid-template-columns:1.05fr .95fr;background:transparent;padding:20px 6% 60px;align-items:center;gap:2%}.hero-v2 .hero-copy{padding:40px 0 55px}.hero-v2 .eyebrow{font-size:11px;letter-spacing:1.6px;line-height:1.8;color:#15522d}.hero-v2 h1{font-size:clamp(60px,6.8vw,101px);font-weight:900;letter-spacing:-5px;line-height:.98;color:#123923;max-width:710px}.hero-v2 h1 em{display:inline-block;font-style:italic;position:relative;margin-top:9px;padding-bottom:12px;color:var(--green)}.hero-v2 h1 em:after{content:"";position:absolute;bottom:1px;left:0;width:85%;height:8px;background:var(--yellow);transform:skew(-30deg) rotate(-2deg)}.hero-v2 .intro{font-size:18px;line-height:1.7;max-width:420px;color:#405846;margin-top:27px}.hero-v2 .actions{margin-top:33px;gap:25px}.asm-site .button{padding:19px 25px;border-radius:0;box-shadow:5px 5px 0 #08482724;transition:transform .2s,box-shadow .2s;position:relative}.asm-site .button:hover{transform:translate(-2px,-3px);box-shadow:8px 8px 0 #08482735}.asm-site .button svg{transition:transform .2s}.asm-site .button:hover svg{transform:translate(2px,-2px)}.hero-v2 .hero-proof{border:0;padding-top:0;color:#456148;gap:12px;margin-top:42px;line-height:1.7;font-size:12px}.hero-v2 .hero-proof svg{color:var(--green)}.hero-v2 .hero-proof strong{font-weight:700}.brand-stage{padding:20px 0 35px;text-align:center;position:relative;animation:stage-in .8s ease both}.stage-kicker{letter-spacing:2px;font-size:10px;color:#3c6045;font-weight:700;margin:0 0 5px}.hero-logo{display:block;width:min(100%,440px);height:250px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 17px 12px #06411b12)}.slanted-services{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;max-width:470px;margin:0 auto;transform:rotate(-2deg)}.slanted-service{display:flex;align-items:center;background:#fff;transform:skew(-13deg);min-height:51px;box-shadow:3px 5px 0 #0a4f1b1b;transition:transform .2s,box-shadow .2s;border:1px solid #eef1e9}.slanted-service>span{display:flex;align-items:center;justify-content:center;align-self:stretch;width:48px;background:var(--green);color:white;flex-shrink:0}.slanted-service svg,.slanted-service strong{transform:skew(13deg)}.slanted-service strong{font-size:13px;text-transform:uppercase;color:#12592e;font-weight:800;font-style:italic;margin:0 10px}.slanted-service>svg{margin-left:auto;margin-right:10px;color:#486144}.slanted-service.tone-1>span{background:var(--yellow);color:#294614}.slanted-service.tone-2>span{background:#183d23}.slanted-service:hover{transform:skew(-13deg) translateY(-4px);box-shadow:4px 10px 0 #0a4f1b20}.stage-note{display:block;margin-top:32px;font-family:Georgia,serif;font-style:italic;font-size:19px;color:#153e22}.scroll-hint{position:absolute;left:6%;bottom:30px;font-size:10px;letter-spacing:1.5px;font-weight:bold;color:#4d6854;display:flex;gap:17px;align-items:center}.scroll-hint span{font-size:22px}.asm-site .service-ribbon{padding:21px 0;background:var(--green);color:white;transform:rotate(-1.1deg);width:102%;margin-left:-1%;box-shadow:0 9px 0 var(--yellow);display:block;position:relative;z-index:2;overflow:hidden}.ribbon-track{display:flex;width:max-content;animation:ribbon-travel 50s linear infinite}.ribbon-track>div{display:flex;align-items:center}.asm-site .service-ribbon .ribbon-item{display:flex;gap:34px;padding:0 22px;font-size:14px;color:white;font-weight:800;letter-spacing:2px;text-transform:uppercase}.ribbon-item i{font-style:normal;color:var(--yellow);font-size:19px}.service-ribbon:hover .ribbon-track{animation-play-state:paused}.asm-site .section{padding:105px 7%;}.asm-site .eyebrow{font-size:11px;letter-spacing:1.8px}.asm-site h2{font-size:clamp(35px,4vw,56px);letter-spacing:-2px;line-height:1.1;font-weight:850}.asm-site h2 em{font-style:italic}.asm-site .section-heading{margin-bottom:44px}.asm-site .section-heading>p{font-size:16px;max-width:360px;line-height:1.8}.expertise-section{background:linear-gradient(180deg,#fff9,#fff 90%)}.asm-site .services{grid-template-columns:1.1fr 1fr 1fr;gap:17px;border:0}.asm-site .service{border:1px solid #e0e8dd;padding:30px 27px 32px;background:#f6f8f2;min-height:229px;overflow:hidden;transition:transform .25s,background .25s,box-shadow .25s}.asm-site .service:after{content:"";position:absolute;width:80px;height:5px;background:var(--yellow);right:-12px;top:22px;transform:rotate(-45deg)}.asm-site .service:hover{transform:translateY(-6px);box-shadow:0 18px 25px #0b481015;background:white}.asm-site .service h3{font-size:25px;margin-top:25px;margin-bottom:8px;font-weight:800}.asm-site .service p{font-size:14px;margin-bottom:20px}.asm-site .service>div span{font-size:14px;font-weight:600;color:#799376}.service-more{font-size:11px;letter-spacing:.1px;color:#527057;font-weight:700}.asm-site .service-0{background:var(--green);color:white}.asm-site .service-0:hover{background:#104c23}.asm-site .service-0>div,.asm-site .service-0 p,.asm-site .service-0 .service-more{color:#e8f2dd}.asm-site .service-0>div span{color:#c3e3ad}.asm-site .service-0:after{background:var(--yellow)}.asm-site .service-5{background:#f5f8d6}.asm-site .service-arrow{bottom:26px;right:24px}.asm-site .about{background:#eef4e8 url('/assets/asm-background.png') center/cover;grid-template-columns:.95fr 1.05fr;gap:7%;align-items:center;position:relative}.about-visual{position:relative;padding:18px 0 45px 18px}.fleet-photo{aspect-ratio:1.22;background:url('/assets/asm.jpg') 50% 37%/100% auto no-repeat;background-color:#e6eee0;transform:rotate(-4deg);border:9px solid white;box-shadow:0 20px 40px #153b2724;position:relative;z-index:1}.about-visual:before{content:"";position:absolute;inset:35px -7px 62px 40px;background:var(--green);transform:rotate(3deg)}.local-stamp{position:absolute;left:0;bottom:3px;display:flex;gap:15px;align-items:center;padding:25px 32px;background:var(--yellow);z-index:3;transform:rotate(-4deg);box-shadow:5px 5px 0 #25471820;font-size:13px;line-height:1.5}.local-stamp b{font-size:19px;letter-spacing:-.4px}.photo-bottom{font-size:9px;font-weight:bold;letter-spacing:1.6px;display:block;text-align:right;margin-top:23px;color:#456344}.about-copy h2{margin-bottom:30px}.asm-site .about-copy p:not(.eyebrow){font-size:16px;line-height:1.85;color:#415944}.about-values{display:flex;gap:24px;margin:25px 0 32px;padding-top:20px;border-top:1px solid #94ae862f;font-size:12px;font-weight:600}.about-values>span{display:flex;gap:10px;align-items:center}.asm-site .projects-section{background:white}.asm-site .empty-projects{background:linear-gradient(105deg,#f4f8ef,#edf3e6);border:1px solid #e0e8d9;border-left:6px solid var(--green);padding:40px}.asm-site .project{transition:transform .25s}.asm-site .project:hover{transform:translateY(-5px)}.asm-site .project img{border-bottom:5px solid var(--yellow)}.asm-site .contact{background:#063b1c;gap:9%;position:relative;isolation:isolate;padding-top:95px;padding-bottom:95px}.asm-site .contact:before{content:"";position:absolute;inset:0;background:url('/assets/asm-background.png') center/cover;mix-blend-mode:soft-light;opacity:.3;z-index:-1}.asm-site .contact h2{font-size:clamp(45px,5vw,70px);line-height:1.04;font-weight:850}.asm-site .contact .eyebrow{color:#d1eac2}.asm-site .contact form{transform:rotate(1deg);box-shadow:10px 10px 0 var(--yellow);padding:34px}.asm-site .contact form>*{transform:rotate(-1deg)}.asm-site .contact label{font-size:13px}.asm-site .contact-phone{color:var(--yellow);font-size:31px}.asm-site .contact-note{color:#d2e7c7}.asm-site footer{background:#f7f9f2;padding:30px 6% 50px;gap:32px}.asm-site footer .brand img{width:155px;height:105px}.asm-site footer>span{font-family:Georgia,serif;font-style:italic;font-size:20px}.floating-quote{position:fixed;bottom:24px;right:24px;background:var(--yellow);color:#173c20;display:flex;align-items:center;gap:15px;z-index:20;padding:15px 21px;box-shadow:0 7px 25px #153d2930;border:1px solid #dbc82b}.floating-quote span{font-size:10px;line-height:1.5}.floating-quote strong{display:block;font-size:14px}.reveal{animation:reveal-in .7s ease both;animation-timeline:view();animation-range:entry 0% entry 20%}@keyframes reveal-in{from{opacity:.25;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@keyframes stage-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes ribbon-travel{to{transform:translateX(-50%)}}@media(min-width:1500px){.hero-v2{max-width:1600px;margin:auto}.hero-logo{height:280px}}@media(max-width:1050px){.asm-site .header{margin:0 3%;height:112px}.asm-site nav{gap:24px}.hero-v2{min-height:630px;padding:10px 5% 65px;gap:3%}.hero-v2 h1{font-size:72px;letter-spacing:-4px}.hero-logo{height:210px}.slanted-services{grid-template-columns:1fr;max-width:260px;gap:8px}.slanted-service{min-height:38px}.slanted-service strong{font-size:12px}.brand-stage{padding-top:25px}.stage-kicker{font-size:9px}.stage-note{font-size:16px}.asm-site .section{padding:80px 5%}.asm-site .about{gap:6%}.about-values{flex-direction:column;gap:13px}.asm-site .contact{gap:5%}.asm-site .services{gap:12px}.asm-site .service{padding:25px 22px}.asm-site .service h3{font-size:23px}.asm-site .service p{padding-right:0}.service-more{font-size:10px}.asm-site .service-arrow{width:17px;right:15px}.asm-site footer{gap:22px}.hero-v2 .text-link{font-size:13px}}@media(max-width:650px){.asm-site{background-size:auto 1100px;background-position:center top}.asm-site .header{height:104px;margin:0 4%;padding:0 1%}.brand img{width:135px;height:96px}.asm-site .header nav{top:104px;background:#fff;box-shadow:0 15px 20px #203f251a;padding:25px}.asm-site nav a{padding:8px}.hero-v2{grid-template-columns:1fr;min-height:auto;gap:0;padding:18px 6% 75px}.hero-v2 .hero-copy{padding:22px 0 0}.hero-v2 h1{font-size:clamp(53px,14.5vw,82px);letter-spacing:-3.5px;line-height:1.02}.hero-v2 .eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:22px}.hero-v2 .intro{font-size:16px;line-height:1.7;max-width:95%;margin-top:18px}.hero-v2 .actions{margin:25px 0;gap:19px;align-items:center}.hero-v2 .button{padding:17px 20px}.hero-v2 .hero-proof{margin-top:22px;font-size:11px}.brand-stage{padding:26px 12px 6px}.stage-kicker{display:none}.hero-logo{height:210px;width:330px;max-width:100%;margin-bottom:10px}.slanted-services{grid-template-columns:1fr 1fr;max-width:100%;gap:10px 13px}.slanted-service{min-height:41px}.slanted-service>span{width:35px}.slanted-service>span svg{width:18px}.slanted-service strong{font-size:10px;margin:0 7px}.slanted-service>svg{display:none}.stage-note{font-size:17px;margin-top:23px}.scroll-hint{font-size:8px;bottom:23px;gap:12px}.asm-site .service-ribbon{padding:16px 0}.asm-site .service-ribbon .ribbon-item{font-size:12px;padding:0 15px;gap:24px}.asm-site .section{padding:65px 6%}.asm-site .section-heading>p{font-size:15px}.asm-site h2{font-size:37px;letter-spacing:-1.8px}.asm-site .services{grid-template-columns:1fr 1fr;gap:11px}.asm-site .service{padding:24px 17px;min-height:228px}.asm-site .service h3{font-size:21px;letter-spacing:-.7px}.asm-site .service p{font-size:13px;line-height:1.65;min-height:65px}.service-more{font-size:9px}.asm-site .service>div span{font-size:11px}.asm-site .service>div svg{width:26px}.asm-site .about{grid-template-columns:1fr;gap:35px}.about-visual{max-width:470px;width:100%;margin:auto;padding-bottom:45px}.fleet-photo{aspect-ratio:1.4}.local-stamp{padding:20px 27px}.about-values{flex-direction:row;gap:16px;font-size:11px}.asm-site .about-copy p:not(.eyebrow){font-size:15px}.asm-site .empty-projects{padding:28px 23px;gap:21px}.asm-site .empty-projects h3{font-size:21px}.asm-site .contact{grid-template-columns:1fr;gap:30px;padding-bottom:75px}.asm-site .contact h2{font-size:54px}.asm-site .contact form{padding:24px;transform:rotate(0deg);box-shadow:6px 6px 0 var(--yellow)}.asm-site .contact form>*{transform:none}.asm-site .contact-phone{font-size:29px}.asm-site footer{padding-bottom:100px;gap:23px}.asm-site footer>.brand{width:auto;margin-right:0}.asm-site footer>span{font-size:16px;max-width:120px}.asm-site footer>small{width:100%}.floating-quote{bottom:14px;right:14px;padding:11px 16px;gap:11px}.floating-quote strong{font-size:12px}.floating-quote span{font-size:9px}}@media(prefers-reduced-motion:reduce){.ribbon-track,.brand-stage,.reveal{animation:none}.asm-site *{transition:none!important}.asm-site .service:hover,.asm-site .button:hover{transform:none}}
.photo-editor{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.photo-tile{padding:12px;background:#f5f8f1;border:1px solid #dce4d7}.photo-tile>img{width:100%;height:130px;object-fit:cover;margin-bottom:10px}.photo-tile>strong{display:block;font-size:12px;margin-bottom:12px;color:#126238}.photo-tile label{font-size:12px}.photo-controls{display:flex;flex-wrap:wrap;gap:8px}.photo-controls button{font-size:11px;padding:8px}.project-gallery{margin:30px 0 40px}.gallery-main{display:block;position:relative;width:100%;padding:0;border:0;background:#edf1e9}.gallery-main>img{width:100%;height:min(65vh,560px);object-fit:contain}.gallery-main>span{position:absolute;bottom:14px;right:14px;background:#103b29;color:white;padding:10px 15px;font-size:13px}.gallery-thumbs{display:flex;gap:10px;overflow:auto;padding:12px 0}.gallery-thumbs button{flex:0 0 110px;padding:3px;border:2px solid transparent;background:#eef3eb}.gallery-thumbs button.selected{border-color:#126238}.gallery-thumbs img{width:100%;height:80px;object-fit:cover}.gallery-dialog{width:95vw!important;max-width:1000px!important}.gallery-dialog>img{width:100%;height:65vh;object-fit:contain;background:#f2f4ef}.gallery-navigation{display:flex;justify-content:space-between;gap:15px}@media(max-width:650px){.photo-editor{grid-template-columns:1fr}.photo-tile>img{height:200px}.gallery-main>img{height:350px}.gallery-dialog>img{height:55vh}}
