/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--spacing:.25rem;--default-font-family:Arial, Helvetica, sans-serif;--default-mono-font-family:"Courier New", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#f5f3ef;--foreground:#171717;--ink:#171717;--muted:#66625c;--panel:#fff;--line:#ded9d0;--red:#b21f24;--red-dark:#811418;--steel:#29323d;--warm:#d8c8ad}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}main{min-height:100vh;overflow:hidden}.portfolio-shell{--portfolio-bg:#f7f4ee;--portfolio-ink:#151719;--portfolio-muted:#626862;--portfolio-line:#d8d7cd;--portfolio-red:#a51e22;--portfolio-green:#527a5d;--portfolio-blue:#385b75;background:radial-gradient(circle at 88% 8%, #385b752e, transparent 30%), linear-gradient(180deg, #fbfaf6 0%, var(--portfolio-bg) 44%, #f0eee7 100%);color:var(--portfolio-ink);font-family:Arial,Helvetica,sans-serif}.portfolio-header{justify-content:space-between;align-items:center;gap:24px;padding:22px clamp(18px,5vw,72px);display:flex}.portfolio-brand{align-items:center;gap:12px;min-width:0;display:inline-flex}.portfolio-brand span{background:var(--portfolio-ink);color:#fff;justify-content:center;align-items:center;width:42px;height:42px;font-weight:900;display:inline-flex}.portfolio-brand strong{white-space:nowrap;font-size:1rem;font-weight:850}.portfolio-nav{color:var(--portfolio-muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 24px;font-size:.94rem;font-weight:750;display:flex}.portfolio-nav a:hover{color:var(--portfolio-red)}.portfolio-hero{grid-template-columns:minmax(0,.82fr) minmax(320px,.78fr);align-items:center;gap:clamp(30px,6vw,84px);min-height:calc(100vh - 86px);padding:clamp(46px,7vw,92px) clamp(18px,5vw,72px) clamp(54px,7vw,96px);display:grid}.hero-copy-block{max-width:760px}.portfolio-kicker{color:var(--portfolio-red);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:900}.portfolio-shell h1,.portfolio-shell h2,.portfolio-shell h3,.portfolio-shell p{margin-top:0}.portfolio-shell h1{color:var(--portfolio-ink);letter-spacing:0;margin-bottom:24px;font-size:clamp(3rem,8.4vw,7.25rem);font-weight:950;line-height:.92}.portfolio-shell h2{color:var(--portfolio-ink);letter-spacing:0;margin-bottom:20px;font-size:clamp(2.15rem,5.4vw,4.85rem);font-weight:920;line-height:.98}.portfolio-shell h3{color:var(--portfolio-ink);letter-spacing:0;font-size:1.2rem;font-weight:850;line-height:1.18}.hero-copy-block>p:not(.portfolio-kicker),.approach-section>div>p,.contact-section>p,.featured-copy>p{color:var(--portfolio-muted);margin-bottom:28px;font-size:clamp(1.03rem,1.8vw,1.22rem);line-height:1.7}.portfolio-actions{flex-wrap:wrap;gap:12px;display:flex}.portfolio-button{border:1px solid var(--portfolio-ink);justify-content:center;align-items:center;min-height:48px;padding:13px 18px;font-weight:850;display:inline-flex}.portfolio-button.primary{background:var(--portfolio-red);border-color:var(--portfolio-red);color:#fff}.portfolio-button.secondary{color:var(--portfolio-ink);background:0 0}.hero-showcase{background:#111;border:1px solid #1517192e;overflow:hidden;box-shadow:0 28px 80px #1517192e}.hero-showcase img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.portfolio-strip{background:var(--portfolio-ink);color:#fff;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.portfolio-strip p{background:#ffffff0b;min-height:116px;margin:0;padding:30px clamp(18px,3vw,34px);font-weight:800;line-height:1.35}.featured-project,.approach-section,.contact-section,.portfolio-section{padding:clamp(58px,9vw,118px) clamp(18px,5vw,72px)}.featured-project{background:#fff;grid-template-columns:minmax(0,.85fr) minmax(0,.7fr);align-items:center;gap:clamp(28px,6vw,72px);display:grid}.featured-media{aspect-ratio:16/11;background:#e7e2d6;overflow:hidden}.featured-media img,.project-image img{object-fit:cover;width:100%;height:100%}.feature-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:28px;display:grid}.feature-stats div{border:1px solid var(--portfolio-line);background:#f3f0e8;gap:7px;min-height:116px;padding:18px;display:grid}.feature-stats strong{color:var(--portfolio-red);font-size:1.15rem}.feature-stats span{color:var(--portfolio-muted);font-size:.92rem;font-weight:720;line-height:1.42}.portfolio-section-heading{max-width:760px}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:38px;display:grid}.project-card{border:1px solid var(--portfolio-line);background:#fff;grid-template-rows:auto 1fr;min-height:470px;display:grid;overflow:hidden}.project-image{aspect-ratio:4/3;background:#e7e2d6}.project-card-copy{gap:12px;padding:22px;display:grid}.project-card-copy span{color:var(--portfolio-blue);letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;font-weight:900}.project-card-copy p{color:var(--portfolio-muted);margin-bottom:8px;line-height:1.58}.project-card-copy strong{color:var(--portfolio-green);align-self:end;line-height:1.35}.approach-section{background:#e9ece6;grid-template-columns:minmax(0,.72fr) minmax(0,.8fr);align-items:start;gap:clamp(28px,6vw,72px);display:grid}.timeline{gap:14px;display:grid}.timeline article{border:1px solid var(--portfolio-line);background:#fff;grid-template-columns:64px 1fr;gap:18px;padding:22px;display:grid}.timeline span{color:var(--portfolio-red);font-size:1.4rem;font-weight:950}.timeline h3{margin-bottom:8px}.timeline p{color:var(--portfolio-muted);margin-bottom:0;line-height:1.58}.contact-section{background:var(--portfolio-ink);color:#fff;grid-template-columns:minmax(0,.65fr) minmax(320px,.72fr);align-items:start;gap:clamp(24px,5vw,56px);display:grid}.contact-section h2{color:#fff;margin-bottom:0}.contact-section p{color:#ffffffb8;margin-bottom:18px}.contact-section .request-form{box-shadow:0 24px 70px #0000002e}.site-header{z-index:20;background:#f5f3efeb;border-bottom:1px solid #17171714;justify-content:space-between;align-items:center;gap:24px;padding:14px clamp(18px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.brand{letter-spacing:0;white-space:nowrap;align-items:center;gap:10px;font-weight:800;display:inline-flex}.brand-logo{object-fit:contain;background:#fff;border:1px solid #1717171f;width:36px;height:44px;padding:3px}.nav-links{color:#37342f;align-items:center;gap:24px;font-size:.94rem;display:flex}.nav-links a,.header-call{transition:color .16s,background .16s,border-color .16s}.nav-links a:hover{color:var(--red)}.header-call{border:1px solid var(--ink);padding:10px 14px;font-size:.9rem;font-weight:700}.header-call:hover{background:var(--ink);color:#fff}.hero{align-items:end;min-height:94vh;padding:124px clamp(18px,5vw,70px) 44px;display:grid;position:relative}.hero-image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:1;background:linear-gradient(90deg,#0c0c0cdb 0%,#0c0c0cad 34%,#0c0c0c14 76%),linear-gradient(#0c0c0c00 58%,#0c0c0c85 100%);position:absolute;inset:0}.hero-content{color:#fff;z-index:2;max-width:760px;position:relative}.eyebrow{color:var(--red);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:800}.hero .eyebrow{color:#ffb2b5}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;max-width:900px;margin-bottom:24px;font-size:clamp(3.2rem,9vw,7.8rem);font-weight:900;line-height:.9}h2{color:var(--ink);letter-spacing:0;margin-bottom:20px;font-size:clamp(2rem,5vw,4.25rem);font-weight:900;line-height:.98}h3{color:var(--ink);margin-bottom:12px;font-size:1.22rem;font-weight:850;line-height:1.2}.hero-copy{color:#ffffffd6;max-width:640px;margin-bottom:30px;font-size:clamp(1rem,2vw,1.22rem);line-height:1.6}.hero-actions,.cta-actions{flex-wrap:wrap;gap:12px;display:flex}.button{justify-content:center;align-items:center;min-height:48px;padding:14px 20px;font-weight:800;display:inline-flex}.button.primary{background:var(--red);color:#fff}.button.primary:hover{background:var(--red-dark)}.button.secondary{color:#fff;border:1px solid #ffffffb8}.button.secondary.dark{border-color:#ffffff80}.contact-card{color:var(--ink);z-index:2;background:#ffffffeb;justify-self:end;gap:7px;max-width:360px;padding:22px;display:grid;position:relative}.contact-card span{color:var(--red);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.contact-card strong{font-size:1.05rem;line-height:1.35}.contact-card a{color:var(--red);font-weight:850}.section{padding:clamp(64px,9vw,120px) clamp(18px,5vw,70px)}.intro{grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);align-items:start;gap:clamp(30px,6vw,80px);display:grid}.intro p:last-child,.crew-copy p,.process-copy p,.area-panel p,.cta p{color:var(--muted);font-size:1.08rem;line-height:1.7}.section-heading{max-width:780px}.crew{color:#fff;background:#171717;grid-template-columns:minmax(0,.95fr) minmax(0,.75fr);align-items:center;gap:clamp(28px,6vw,76px);display:grid}.crew-photo{aspect-ratio:16/11;background:#2b2b2b;overflow:hidden}.crew-photo img{object-fit:cover;width:100%;height:100%}.crew-copy h2{color:#fff}.crew-copy p{color:#ffffffc2;max-width:560px}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:36px;display:grid}.service-card{background:var(--panel);border:1px solid var(--line);min-height:420px;overflow:hidden}.service-image{aspect-ratio:4/3;background:#ddd6ca;margin-bottom:24px;position:relative}.service-image img{object-fit:cover;width:100%;height:100%}.service-card h3,.service-card p,.service-card ul{padding-left:24px;padding-right:24px}.service-card p{color:var(--muted);margin-bottom:24px;line-height:1.65}.service-card ul{gap:10px;margin:0 0 26px;padding-top:0;padding-bottom:0;list-style:none;display:grid}.service-card li{color:#312f2b;align-items:center;gap:10px;font-weight:700;display:flex}.service-card li:before{background:var(--red);content:"";width:8px;height:8px;display:inline-block}.testimonials{background:#fff}.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;display:grid}.testimonial-card,.testimonial-form{border:1px solid var(--line);background:var(--panel)}.testimonial-card{gap:18px;min-height:280px;padding:24px;display:grid}.testimonial-photo{aspect-ratio:4/3;border:1px solid var(--line);object-fit:cover;background:#ddd6ca;width:100%}.testimonial-stars{color:var(--red);letter-spacing:.08em;font-size:1.05rem}.testimonial-card p{color:#312f2b;margin:0;font-size:1.05rem;line-height:1.65}.testimonial-card footer{align-self:end;gap:5px;display:grid}.testimonial-card footer span,.testimonial-empty{color:var(--muted);line-height:1.5}.testimonial-empty{border:1px solid var(--line);grid-column:1/-1;margin:0;padding:24px}.testimonial-form{gap:16px;margin-top:22px;padding:24px;display:grid}.testimonial-form h3{margin-bottom:0}.testimonial-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.testimonial-form label{color:var(--muted);text-transform:uppercase;gap:8px;font-size:.82rem;font-weight:900;display:grid}.testimonial-form input,.testimonial-form select,.testimonial-form textarea{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#fbfaf7;padding:12px}.testimonial-form button{background:var(--ink);border:1px solid var(--ink);color:#fff;cursor:pointer;justify-self:start;padding:12px 16px;font-weight:900}.testimonial-upload-preview{border:1px solid var(--line);background:#f5f3ef;align-items:center;gap:14px;padding:12px;display:flex}.testimonial-upload-preview img{aspect-ratio:4/3;object-fit:cover;width:min(190px,44vw)}.testimonial-upload-preview button{color:var(--ink);background:#fff;justify-self:auto}.testimonial-message,.testimonial-error{margin:0;padding:11px;font-weight:850;line-height:1.45}.testimonial-message{color:#20582d;background:#eaf5ec}.testimonial-error{color:var(--red-dark);background:#fee8e9}.testimonial-honeypot{display:none}.proof-band{background:var(--steel);color:#fff;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.proof-band div{background:#ffffff0d;align-items:center;gap:14px;min-height:112px;padding:28px clamp(18px,3vw,36px);display:flex}.proof-band span{background:var(--red);width:5px;height:34px}.proof-band p{margin:0;font-size:1rem;font-weight:800;line-height:1.3}.split{grid-template-columns:minmax(0,.75fr) minmax(0,1fr);align-items:start;gap:clamp(34px,7vw,90px);display:grid}.steps{gap:16px;display:grid}.step{background:#ebe5da;grid-template-columns:70px 1fr;align-items:start;gap:18px;padding:24px;display:grid}.step>span{color:var(--red);font-size:1.5rem;font-weight:900}.step p{color:var(--muted);margin-bottom:0;line-height:1.62}.area{background:#fff;grid-template-columns:minmax(0,.95fr) minmax(300px,.7fr);align-items:stretch;gap:24px;display:grid}.area-panel{border-left:8px solid var(--red);padding-left:clamp(20px,4vw,44px)}.area-list{flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;list-style:none;display:flex}.area-list li{border:1px solid var(--line);color:var(--ink);background:#f1eee8;padding:10px 14px;font-weight:800}.map-card{border:1px solid var(--line);background:#d8d3c8;min-height:430px;position:relative;overflow:hidden}.map-card iframe{filter:saturate(.82)contrast(1.04);border:0;width:100%;height:100%;position:absolute;inset:0}.map-caption{background:var(--ink);color:#fff;gap:4px;max-width:calc(100% - 44px);margin:0;padding:12px 14px;display:grid;position:absolute;bottom:22px;left:22px}.map-caption strong{font-size:.92rem}.map-caption span{color:#ffffffb8;font-size:.82rem;line-height:1.4}.cta{background:var(--ink);color:#fff;grid-template-columns:minmax(0,.72fr) minmax(320px,.52fr);align-items:start;gap:30px;padding:clamp(52px,7vw,86px) clamp(18px,5vw,70px);display:grid}.cta h2{color:#fff;max-width:790px}.cta p{color:#ffffffb8;max-width:620px;margin-bottom:24px}.request-form{color:var(--ink);background:#fff;gap:15px;padding:clamp(20px,4vw,34px);display:grid}.request-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.request-form label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:.8rem;font-weight:900;display:grid}.request-form input,.request-form select,.request-form textarea{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#f8f6f1;width:100%;padding:12px}.request-form textarea{resize:vertical}.request-form .button{cursor:pointer;border:0;width:100%}.request-error{background:#fee8e9;padding:12px;font-weight:850;color:var(--red-dark)!important;max-width:none!important;margin:0!important}.request-note{color:var(--muted)!important;max-width:none!important;margin:0!important;font-size:.9rem!important;line-height:1.5!important}.site-footer{color:#ffffffc2;background:#0e0e0e;justify-content:space-between;align-items:center;gap:20px;padding:30px clamp(18px,5vw,70px);display:flex}.site-footer p{color:#fff;margin:0;font-weight:900}.site-footer address{text-align:right;font-style:normal;line-height:1.5}.site-footer a{color:#fff;font-weight:800}.employee-shell{background:#f5f3ef;min-height:100vh}.employee-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:18px;padding:16px clamp(18px,4vw,56px);display:flex}.employee-brand,.employee-nav{align-items:center;gap:14px;display:flex}.employee-brand{font-weight:900}.employee-brand img{border:1px solid var(--line);object-fit:contain;background:#fff;width:38px;height:46px;padding:3px}.employee-nav a{border:1px solid var(--line);padding:10px 13px;font-weight:800}.employee-nav a:last-child{background:var(--ink);border-color:var(--ink);color:#fff}.employee-hero{grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);align-items:end;gap:24px;padding:clamp(52px,8vw,90px) clamp(18px,5vw,70px);display:grid}.employee-hero h1{color:var(--ink);max-width:950px;font-size:clamp(2.7rem,8vw,6.2rem)}.employee-hero p{color:var(--muted);max-width:680px;font-size:1.1rem;line-height:1.7}.employee-account{border:1px solid var(--line);background:#fff;gap:8px;padding:22px;display:grid}.employee-account span{color:var(--red);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:900}.employee-account strong{font-size:1.04rem}.employee-account p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}.employee-auth,.employee-session{margin:0 clamp(18px,5vw,70px) clamp(42px,6vw,70px)}.employee-auth{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,.9fr) minmax(280px,.48fr);align-items:start;gap:clamp(24px,5vw,70px);padding:clamp(24px,5vw,52px);display:grid}.auth-copy h2{font-size:clamp(2rem,5vw,4rem)}.auth-copy p{color:var(--muted);max-width:620px;font-size:1.05rem;line-height:1.7}.auth-form{border:1px solid var(--line);background:#f5f3ef;gap:15px;padding:20px;display:grid}.auth-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.auth-tabs button,.auth-submit,.employee-session button{border:1px solid var(--ink);cursor:pointer;padding:12px 14px;font-weight:900}.auth-tabs button[aria-selected=true],.auth-submit,.employee-session button{background:var(--ink);color:#fff}.auth-form label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:.82rem;font-weight:900;display:grid}.auth-form input{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#fff;padding:12px}.auth-error{color:var(--red-dark);background:#fee8e9;margin:0;padding:12px;font-weight:800;line-height:1.5}.auth-submit:disabled{cursor:wait;opacity:.7}.employee-session{border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;display:flex}.employee-session span{color:var(--red);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-size:.75rem;font-weight:900;display:block}.employee-session strong{display:block}.employee-session p{color:var(--muted);margin:4px 0 0}.employee-workspace-tabs{flex-wrap:wrap;gap:10px;margin:0 clamp(18px,5vw,70px) clamp(34px,5vw,56px);display:flex}.employee-workspace-tabs button{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;min-height:44px;padding:11px 15px;font-weight:900}.employee-workspace-tabs button[aria-pressed=true]{background:var(--ink);color:#fff}.job-dashboard{padding:0 clamp(18px,5vw,70px) clamp(42px,6vw,70px)}.job-dashboard-heading{grid-template-columns:minmax(0,1fr) minmax(170px,.2fr);align-items:end;gap:20px;margin-bottom:20px;display:grid}.job-dashboard-heading h2{margin-bottom:0}.job-dashboard-stat{background:var(--red);color:#fff;gap:4px;padding:18px;display:grid}.job-dashboard-stat span,.jobsite-card span,.estimate-history span{letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:900}.job-dashboard-stat strong{font-size:2rem}.jobsite-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.jobsite-card{border:1px solid var(--line);background:#fff;gap:20px;padding:20px;display:grid}.jobsite-card span,.estimate-history span{color:var(--red)}.jobsite-card h3{margin:8px 0 10px}.jobsite-card p{color:var(--muted);margin:4px 0 0;line-height:1.5}.jobsite-card dl{border-top:1px solid var(--line);gap:8px;margin:0;padding-top:14px;display:grid}.jobsite-card dl div,.estimate-history article{justify-content:space-between;gap:16px;display:flex}.jobsite-card dt{color:var(--muted);font-weight:850}.jobsite-card dd{text-align:right;margin:0;font-weight:900}.estimate-history{border:1px solid var(--line);background:#fff;gap:0;margin-top:16px;display:grid}.estimate-history h3{border-bottom:1px solid var(--line);margin:0;padding:18px 20px}.estimate-history article{border-bottom:1px solid var(--line);align-items:start;padding:16px 20px}.estimate-history article:last-child{border-bottom:0}.estimate-history p{color:var(--muted);margin:5px 0 0}.estimate-workspace{padding:0 clamp(18px,5vw,70px) clamp(64px,8vw,100px)}.invoice-workspace{background:#f5f7f8;border-top:4px solid #1f4f63;padding-top:clamp(34px,5vw,58px)}.invoice-workspace .eyebrow,.invoice-workspace .estimate-sheet-header span,.invoice-workspace .estimate-parties span,.invoice-workspace .estimate-line-card-header span{color:#1f4f63}.invoice-workspace .print-button{background:#1f4f63;border-color:#1f4f63!important}.estimate-toolbar{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.estimate-toolbar h2{margin-bottom:0}.estimate-toolbar-actions{flex-wrap:wrap;gap:10px;display:flex}.estimate-toolbar button,.estimate-table button{border:1px solid var(--ink);cursor:pointer;padding:10px 14px;font-weight:850}.print-button{background:var(--red);color:#fff;border-color:var(--red)!important}.estimate-layout{grid-template-columns:minmax(280px,.33fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.estimate-form,.estimate-sheet{border:1px solid var(--line);background:#fff}.estimate-form{gap:16px;padding:22px;display:grid}.estimate-form label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:.82rem;font-weight:850;display:grid}.estimate-form input,.estimate-form select,.estimate-form textarea,.estimate-table input{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fbfaf7;width:100%;padding:10px}.estimate-form-readonly{border:1px solid var(--line);color:var(--ink);text-transform:none;background:#f1eee8;padding:10px;font-weight:900;display:block}.print-field-value{display:none}.estimate-active-document{color:var(--muted);margin:8px 0 0;font-weight:800}.estimate-dirty-state{text-transform:uppercase;margin:10px 0 0;padding:7px 9px;font-size:.78rem;font-weight:900;display:inline-block}.estimate-dirty-state.dirty{color:#6f4e00;background:#fff3cd}.estimate-dirty-state.saved{color:#20582d;background:#eaf5ec}.estimate-validation-message{color:var(--red-dark);background:#fee8e9;margin:-10px 0 22px;padding:12px 14px;font-weight:900;line-height:1.45}.estimate-save-message,.estimate-file-note{color:var(--muted);background:#f1eee8;margin:0;padding:11px;font-weight:850;line-height:1.45}.estimate-number-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.estimate-sheet{padding:clamp(22px,4vw,42px)}.estimate-sheet-header{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:start;gap:20px;padding-bottom:20px;display:flex}.estimate-sheet-header img{object-fit:contain;width:72px;height:86px}.estimate-sheet-header p{color:var(--muted);margin:8px 0 0;font-weight:800}.estimate-sheet-header span{color:var(--red);letter-spacing:.12em;text-align:right;text-transform:uppercase;font-size:.85rem;font-weight:900;display:block}.estimate-sheet-header strong{text-align:right;margin-top:5px;font-size:1.35rem;display:block}.estimate-parties{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:24px 0;display:grid}.estimate-parties div{background:#f5f3ef;padding:16px}.estimate-parties span{color:var(--red);text-transform:uppercase;margin-bottom:8px;font-size:.75rem;font-weight:900;display:block}.estimate-parties strong{margin-bottom:6px;display:block}.estimate-parties p{color:var(--muted);margin:0;line-height:1.45}.estimate-table-wrap{overflow-x:auto}.estimate-table{border-collapse:collapse;width:100%;min-width:760px}.estimate-table th{background:var(--ink);color:#fff;text-align:left;text-transform:uppercase;padding:11px;font-size:.82rem}.estimate-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px}.estimate-table td:nth-child(2),.estimate-table td:nth-child(4),.estimate-table td:nth-child(5),.estimate-table td:nth-child(2) input,.estimate-table td:nth-child(4) input{text-align:right}.estimate-mobile-lines{display:none}.estimate-line-card{border:1px solid var(--line);background:#f5f3ef;gap:13px;padding:14px;display:grid}.estimate-line-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.estimate-line-card-header span{color:var(--red);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:900}.estimate-line-card label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:850;display:grid}.estimate-line-card input{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#fff;width:100%;padding:10px}.estimate-line-grid{grid-template-columns:minmax(72px,.7fr) minmax(72px,.7fr) minmax(0,1fr);gap:10px;display:grid}.estimate-line-card button{border:1px solid var(--ink);cursor:pointer;justify-self:start;padding:9px 11px;font-weight:850}.estimate-email-panel{border:1px solid var(--line);background:#f5f3ef;gap:14px;padding:16px;display:grid}.estimate-email-panel h3{margin:2px 0 0;font-size:1.08rem}.estimate-email-actions{flex-wrap:wrap;gap:10px;display:flex}.estimate-email-actions button{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;padding:10px 12px;font-weight:850}.estimate-email-actions button:first-child{background:var(--ink);color:#fff}.estimate-email-status{color:#20582d;background:#eaf5ec;margin:0;padding:11px;font-weight:850;line-height:1.45}.estimate-email-setup{color:var(--muted);background:#f1eee8;margin:0;padding:11px;font-weight:850;line-height:1.45}.estimate-email-setup.ready{color:#20582d;background:#eaf5ec}.estimate-email-setup.missing{color:var(--red-dark);background:#fee8e9}.estimate-history-panel{border:1px solid var(--line);background:#fff;gap:14px;margin-bottom:22px;padding:18px;display:grid}.estimate-history-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.estimate-history-heading h3{margin:2px 0 0;font-size:1.15rem}.estimate-history-heading button,.estimate-history-list button,.estimate-history-filters button{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;padding:9px 11px;font-weight:850}.estimate-history-filters{flex-wrap:wrap;gap:8px;display:flex}.estimate-history-filters button[aria-pressed=true]{background:var(--ink);color:#fff}.estimate-history-search{color:var(--muted);text-transform:uppercase;gap:7px;font-size:.82rem;font-weight:850;display:grid}.estimate-history-search input{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#fbfaf7;width:100%;padding:10px}.estimate-history-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.estimate-history-list article{border:1px solid var(--line);background:#f7f4ef;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px;display:grid}.estimate-history-list strong,.estimate-history-list b{display:block}.estimate-history-list strong{margin-top:8px;font-size:1.05rem}.estimate-history-list p{color:var(--ink);margin:6px 0 0;font-weight:800;line-height:1.35}.estimate-history-list small{color:var(--muted);margin-top:6px;font-weight:750;line-height:1.35;display:block}.estimate-history-list article>div:last-child{justify-items:end;gap:10px;display:grid}.estimate-history-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:220px;display:flex}.estimate-history-list b{font-size:1.08rem}.estimate-history-empty{color:var(--muted);background:#f7f4ef;margin:0;padding:14px;font-weight:800;line-height:1.45}.estimate-status{letter-spacing:.1em;text-transform:uppercase;padding:5px 7px;font-size:.7rem;font-weight:950;display:inline-block}.estimate-status.draft{color:var(--muted);background:#eee9df}.estimate-status.sent{color:#214d82;background:#e8f0fb}.estimate-status.approved{color:#20582d;background:#eaf5ec}.estimate-status.declined{color:var(--red-dark);background:#fee8e9}.estimate-status.paid{color:#20582d;background:#eaf5ec}.estimate-status.overdue{color:var(--red-dark);background:#fee8e9}.estimate-summary{grid-template-columns:minmax(0,1fr) minmax(260px,.36fr);align-items:start;gap:24px;margin-top:28px;display:grid}.estimate-notes{background:#f5f3ef;padding:18px}.estimate-notes p{color:var(--muted);margin:8px 0 0;line-height:1.6}.invoice-payment-details{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.invoice-payment-details p{color:var(--ink);font-weight:850}.estimate-summary dl{gap:10px;margin:0;display:grid}.estimate-summary dl div{justify-content:space-between;gap:16px;display:flex}.estimate-summary dt{color:var(--muted);font-weight:800}.estimate-summary dd{margin:0;font-weight:900}.estimate-summary .grand-total{border-top:2px solid var(--ink);padding-top:12px;font-size:1.35rem}.jobsite-form{border:1px solid var(--line);background:#fff;gap:15px;margin-bottom:22px;padding:22px;display:grid}.jobsite-form h3{margin-bottom:0}.jobsite-form label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:.82rem;font-weight:900;display:grid}.jobsite-form input,.jobsite-form select{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:none;background:#fbfaf7;width:100%;padding:10px}.jobsite-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.jobsite-form button{background:var(--ink);border:1px solid var(--ink);color:#fff;cursor:pointer;justify-self:start;min-height:44px;padding:11px 15px;font-weight:900}.jobsite-form button:disabled{cursor:wait;opacity:.7}.portal-empty{color:var(--muted);margin:0;padding:22px}.print-only{display:none}.moderation-workspace{padding:0 clamp(18px,5vw,70px) clamp(64px,8vw,100px)}.moderation-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.moderation-heading h2{margin-bottom:10px}.moderation-heading p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.6}.moderation-heading button,.moderation-actions button{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;padding:10px 12px;font-weight:850}.moderation-summary{background:var(--red);color:#fff;gap:3px;margin-bottom:18px;padding:14px 18px;display:inline-grid}.moderation-summary strong{font-size:1.8rem}.moderation-summary span{color:#ffffffb8;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:900}.moderation-list{gap:14px;display:grid}.moderation-card{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:20px;display:grid}.moderation-card h3{margin:8px 0 6px}.moderation-card p{color:var(--muted);margin:8px 0 0;line-height:1.55}.moderation-photo{aspect-ratio:16/10;border:1px solid var(--line);object-fit:cover;width:100%;max-width:420px;margin-top:12px}.moderation-card small{color:var(--red-dark);margin-top:10px;font-weight:850;display:block}.moderation-meta{font-weight:850}.review-status{letter-spacing:.1em;text-transform:uppercase;padding:5px 7px;font-size:.72rem;font-weight:900;display:inline-block}.review-status.pending{color:#6f5600;background:#fff4cc}.review-status.approved{color:#20582d;background:#eaf5ec}.review-status.flagged{color:var(--red-dark);background:#fee8e9}.review-status.hidden{color:var(--muted);background:#eee9df}.moderation-actions{align-content:start;gap:8px;min-width:120px;display:grid}@media (width<=900px){.portfolio-header{flex-direction:column;align-items:flex-start}.portfolio-nav{justify-content:flex-start}.portfolio-hero,.featured-project,.approach-section,.contact-section{grid-template-columns:1fr}.portfolio-hero{min-height:auto}.portfolio-strip,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-stats{grid-template-columns:1fr}.site-header{flex-wrap:wrap;align-items:start}.nav-links{order:3;width:100%}.hero{min-height:auto;padding-top:150px}.hero-content,.contact-card{justify-self:start}.contact-card{margin-top:36px}.intro,.crew,.split,.area,.cta{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-grid{grid-template-columns:1fr}.proof-band{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-hero,.employee-auth,.job-dashboard-heading,.jobsite-grid,.estimate-layout,.estimate-history-list,.estimate-summary,.estimate-parties{grid-template-columns:1fr}.cta-actions{justify-content:start}}@media (width<=620px){.portfolio-header{padding-top:18px}.portfolio-brand strong{white-space:normal}.portfolio-nav{gap:10px 18px}.portfolio-shell h1{font-size:clamp(2.55rem,15vw,4.35rem)}.portfolio-actions,.portfolio-button{width:100%}.portfolio-strip,.project-grid{grid-template-columns:1fr}.portfolio-strip p{min-height:auto}.timeline article{grid-template-columns:1fr}.site-header{position:absolute}.header-call{width:100%}.nav-links{justify-content:space-between;gap:16px}h1{font-size:clamp(2.55rem,15vw,4.4rem)}.hero{padding-bottom:28px}.hero-overlay{background:linear-gradient(90deg,#0c0c0ce6,#0c0c0c61)}.button,.hero-actions,.cta-actions{width:100%}.request-form-grid,.proof-band,.service-grid,.step{grid-template-columns:1fr}.employee-session{flex-direction:column;align-items:stretch}.jobsite-form,.jobsite-form-grid,.estimate-history-list article,.testimonial-form-grid,.moderation-card{grid-template-columns:1fr}.estimate-history-heading{flex-direction:column;align-items:stretch}.estimate-history-list article>div:last-child{justify-items:start}.moderation-heading{flex-direction:column;align-items:stretch}.moderation-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-table-wrap{display:none}.estimate-mobile-lines{gap:12px;display:grid}.estimate-sheet{padding:18px}.estimate-sheet-header{display:grid}.estimate-sheet-header span,.estimate-sheet-header strong{text-align:left}.estimate-line-grid{grid-template-columns:1fr}.map-card{min-height:360px}.site-footer{flex-direction:column;align-items:start}.site-footer address{text-align:left}}@media print{@page{margin:.45in;size:letter}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{color:#111;background:#fff}.no-print,.employee-header,.employee-hero,body.estimate-printing .employee-session,body.estimate-printing .employee-workspace-tabs,body.estimate-printing .job-dashboard,body.estimate-printing .moderation-workspace,body.estimate-printing .estimate-history-panel,body.estimate-printing .estimate-form{display:none!important}.employee-shell,.estimate-workspace,.estimate-layout{padding:0;display:block}.print-only{display:none!important}.estimate-sheet{box-shadow:none;border:0;padding:0}.estimate-sheet-header{border-bottom:2px solid #111;gap:18px;margin-bottom:18px;padding-bottom:16px}.estimate-sheet-header img{width:58px;height:68px}.estimate-parties{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 0 18px}.estimate-parties div,.estimate-notes{background:#f4f2ee;padding:12px}.estimate-table-wrap{overflow:visible}.estimate-table{min-width:0}.estimate-table th{color:#fff;background:#111;padding:8px;font-size:.72rem}.estimate-table td{padding:7px 8px}.estimate-table input{color:#111;background:0 0;border:0;padding:0}.estimate-table .screen-edit-field{display:none!important}.estimate-table .print-field-value{display:inline!important}.estimate-table th:last-child,.estimate-table td:last-child{display:none}.estimate-summary,.estimate-parties{break-inside:avoid}.estimate-summary{grid-template-columns:minmax(0,1fr) minmax(220px,.34fr);gap:18px;margin-top:18px}.estimate-summary .grand-total{font-size:1.12rem}}
