:root{background:#fff;color:#000;font-family:Arial,Helvetica,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.wix-strip{align-items:center;color:#000;display:flex;font-size:14px;height:34px;justify-content:center}.site-header{align-items:center;background:#fff;display:flex;gap:24px;justify-content:space-between;padding:52px 45px 54px 30px}.brand{align-items:center;display:flex;font-size:29px;gap:14px;line-height:1}.brand strong{font-weight:800}.brand-mark{display:block;height:49px;object-fit:contain;width:32px}.menu-button{background:transparent;border:0;cursor:pointer;display:grid;gap:13px;order:3;padding:0;width:44px}.menu-button span{background:#000;display:block;height:4px;width:44px}.header-actions{align-items:center;display:flex;gap:10px;margin-left:auto;order:2}.header-action{border:1px solid #000;border-radius:999px;font-size:14px;line-height:1;padding:11px 14px;white-space:nowrap}.header-action:hover,.header-action.is-whatsapp{background:#000;color:#fff}.menu-drawer{inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .26s ease;z-index:40}.menu-drawer.is-open{opacity:1;pointer-events:auto}.menu-backdrop{background:#eeeeee;inset:0;position:absolute}.menu-panel{align-content:start;background:#fff;bottom:0;display:grid;justify-items:end;padding:55px 41px 0 48px;position:absolute;right:0;top:0;transform:translate(100%);transition:transform .36s cubic-bezier(.645,.045,.355,1);width:min(432px,34vw)}.menu-drawer.is-open .menu-panel{transform:translate(0)}.menu-close{background:transparent;border:0;cursor:pointer;height:32px;padding:0;position:relative;width:32px}.menu-close span{background:#000;display:block;height:2px;left:0;position:absolute;top:15px;width:32px}.menu-close span:first-child{transform:rotate(45deg)}.menu-close span:last-child{transform:rotate(-45deg)}.menu-links{display:grid;gap:30px;justify-items:end;margin-top:46px}.menu-info{align-self:end;border-top:1px solid #000;display:grid;gap:22px;justify-items:end;margin-top:clamp(72px,18vh,180px);padding-top:24px;text-align:right}.menu-info p{font-size:18px;line-height:1.25;margin:0}.menu-cta{border-bottom:2px solid #000;font-size:20px;font-weight:800;padding-bottom:4px}.menu-cta.secondary{border:1px solid #000;border-radius:999px;padding:12px 18px;text-decoration:none}.menu-drawer a{color:#000;font-size:16px;line-height:1;text-transform:uppercase}.menu-drawer a.is-active,.menu-drawer a:hover{text-decoration:underline;text-underline-offset:2px}.hero{background:#fff;display:grid;gap:0 16px;grid-template-columns:minmax(420px,40.4fr) minmax(240px,24fr) minmax(240px,24fr) minmax(180px,12fr);padding:0 25px}.hero-title{padding-top:49px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(68px,5.25vw,104px);font-weight:400;letter-spacing:-4px;line-height:.96;margin-bottom:78px;max-width:700px}.hero-hours,.hero-address,.quote-link{font-size:clamp(18px,1.12vw,22px);line-height:1.25;padding-top:46px}.hero-hours p,.hero-address p{color:#000;line-height:1.25;margin:0}.quote-link{display:block;font-weight:700;text-align:right;text-decoration:underline;text-underline-offset:2px}.hero-media{height:clamp(360px,27.3vw,525px);overflow:hidden}.hero-media img{display:block;height:100%;object-fit:cover;width:100%}.hero-media-main{grid-column:1 / span 2}.hero-media-side{grid-column:3 / span 2}.hero-note{color:#000;font-size:clamp(24px,2.35vw,46px);grid-column:1 / span 2;letter-spacing:-1px;line-height:1.05;margin:60px 0 0;max-width:620px}.section,.page,.services-section,.works-section,.testimonials-section,.offer-section{padding:88px 25px}.intro-grid{align-items:start;display:grid;gap:36px;grid-template-columns:58fr 42fr;padding-top:110px}.eyebrow{color:#9d2f20;font-size:13px;font-weight:800;letter-spacing:0;margin-bottom:28px;text-transform:uppercase}h2{font-size:clamp(48px,5vw,94px);font-weight:400;letter-spacing:-3px;line-height:.98;margin-bottom:22px}h3{font-size:clamp(30px,2.65vw,52px);font-weight:400;letter-spacing:-1px;line-height:1;margin-bottom:18px}p{color:#1e1e1e;font-size:18px;line-height:1.35}.service-grid,.post-grid,.proof,.admin-list{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 25px 92px}.service-grid.wide,.showcase-grid,.admin-list{padding-left:0;padding-right:0}.service-card{border-top:1px solid #000;min-height:260px;padding-top:28px}.service-card p{max-width:360px}.services-section{background:#efefef;padding:88px 30px 130px}.service-layout{display:grid;column-gap:4.55vw;row-gap:92px;grid-template-columns:repeat(2,minmax(0,1fr))}.service-item{display:grid;gap:28px;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);min-height:484px;padding:0}.service-item h2,.service-item h3{font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,1.85vw,36px);font-weight:400;letter-spacing:-1px;line-height:1.1;margin-bottom:16px}.service-item p{font-family:Georgia,Times New Roman,serif;font-size:clamp(19px,1.12vw,22px);line-height:1.24;margin-bottom:0}.service-item strong{font-weight:700}.service-item img{aspect-ratio:1 / 1;display:block;object-fit:cover;width:100%}.service-outro{align-items:end;display:grid;gap:30px;grid-template-columns:minmax(0,.72fr) auto;margin-top:95px}.service-outro p{font-size:clamp(26px,2.4vw,46px);letter-spacing:-1px;line-height:1.08;margin:0}.quote-link.inline{padding:0;text-align:left}.order-section{background:#fff;display:grid;gap:clamp(34px,4vw,76px);grid-template-columns:minmax(300px,.45fr) minmax(0,1fr);padding:clamp(82px,7vw,132px) 25px}.order-heading{display:grid;align-content:start}.order-heading h2{max-width:620px}.order-heading>p:last-child{font-size:clamp(21px,1.4vw,27px);line-height:1.25;max-width:520px}.order-steps{display:grid;gap:0}.order-steps article{border-top:1px solid #000;display:grid;gap:28px;grid-template-columns:88px minmax(240px,.42fr) minmax(0,1fr);padding:28px 0 32px}.order-steps article:last-child{border-bottom:1px solid #000}.order-steps span{color:#9d2f20;font-size:18px;font-weight:900}.order-steps h3{font-size:clamp(28px,2.2vw,42px);margin:0}.order-steps p{font-size:clamp(19px,1.2vw,23px);line-height:1.28;margin:0}.order-section .button{grid-column:2;justify-self:start}.proof{align-items:start;background:#fff;color:#000;display:grid;gap:7.5vw;grid-template-columns:minmax(280px,36.5vw) minmax(0,1fr);padding:clamp(92px,11vw,210px) 25px clamp(96px,12vw,220px)}.proof-image{align-self:end;display:block;margin-top:clamp(260px,31vw,600px);max-width:553px;object-fit:cover;width:100%}.proof-content{display:grid;width:100%}.proof-heading{margin-bottom:clamp(70px,6.6vw,128px)}.proof h2,.proof h3,.proof p{color:#000;font-family:Georgia,Times New Roman,serif}.proof h2{font-size:clamp(62px,5.15vw,99px);font-weight:400;letter-spacing:-2px;line-height:.98;margin-bottom:clamp(82px,6.7vw,130px)}.proof-heading p{font-size:clamp(22px,1.25vw,24px);line-height:1.35;margin:0;max-width:1000px}.proof article{border-top:1px solid #7c7c7c;padding:clamp(34px,2.2vw,42px) 0 clamp(58px,5vw,96px)}.proof article:last-child{padding-bottom:0}.number{color:#000;font-size:clamp(18px,1.12vw,22px);font-style:italic;line-height:1;margin-bottom:clamp(24px,1.75vw,34px)}.proof h3{font-size:clamp(32px,2.1vw,40px);font-weight:400;letter-spacing:-1px;line-height:1.1;margin-bottom:clamp(18px,1.3vw,26px)}.proof article p:not(.number){font-size:clamp(22px,1.25vw,24px);line-height:1.35;margin:0}.section-title{align-items:end;display:flex;gap:24px;justify-content:space-between;margin-bottom:34px}.section-title a{font-size:20px;text-decoration:underline}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.works-section{padding-top:104px}.work-preview{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.work-preview p{border-top:1px solid #000;font-size:clamp(24px,2vw,38px);letter-spacing:-1px;line-height:1.05;padding-top:20px}.media-row{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.media-row img{aspect-ratio:1 / 1;display:block;object-fit:cover;width:100%}.works-copy{font-size:clamp(26px,2.4vw,46px);letter-spacing:-1px;line-height:1.08;margin:58px 0 0 auto;max-width:740px}.testimonials-section{background:#000;color:#fff;padding:clamp(92px,6.25vw,120px) 35px clamp(78px,5vw,96px)}.testimonials-section h2{color:#fff;font-size:clamp(62px,4.8vw,92px);font-weight:400;letter-spacing:-3px;line-height:1;margin-bottom:clamp(110px,8vw,155px)}.testimonial-grid{display:grid;gap:clamp(60px,4vw,78px);grid-template-columns:repeat(3,minmax(0,1fr))}blockquote{margin:0}blockquote:before{background:#fff;border-radius:50%;content:"";display:block;height:34px;margin-bottom:clamp(48px,3vw,58px);width:34px}blockquote p{color:#fff;font-size:clamp(38px,2.55vw,49px);letter-spacing:-2px;line-height:1.08;margin-bottom:clamp(60px,3.55vw,68px)}cite{border-top:1px solid rgba(255,255,255,.75);color:#fff;display:block;font-size:clamp(18px,1.2vw,23px);font-style:normal;letter-spacing:.1em;line-height:1.2;padding-top:24px;text-transform:uppercase}.offer-section{align-items:center;display:flex;justify-content:space-between}.post-card{overflow:hidden}.post-card[hidden]{display:none}.lightbox-trigger{background:transparent;border:0;cursor:zoom-in;display:block;padding:0;text-align:inherit;width:100%}.post-card img{aspect-ratio:4 / 3;display:block;object-fit:cover;transition:transform .42s cubic-bezier(.645,.045,.355,1);width:100%}.post-card:hover img{transform:scale(1.035)}.post-card div{padding-top:18px}.post-card span{color:#9d2f20;display:inline-block;font-size:13px;font-weight:800;margin-bottom:12px;text-transform:uppercase}.post-card-link{color:#000;display:inline-block;font-weight:800;margin-top:12px;text-decoration:underline;text-underline-offset:3px}.inner-page{background:#fff;padding:0 20px 96px}.page-brand{display:none}.services-hero,.gallery-hero,.contact-hero{display:grid;gap:5vw;grid-template-columns:minmax(0,.72fr) minmax(300px,.32fr);padding:0 0 44px}.services-hero h1,.gallery-hero h1,.contact-hero h1{font-size:clamp(78px,7.1vw,112px);font-weight:400;letter-spacing:-4px;line-height:.93;margin-bottom:0}.services-hero p,.contact-hero p,.gallery-hero p,.page-cta p{font-size:clamp(17px,1.25vw,20px);letter-spacing:0;line-height:1.18;max-width:340px}.services-hero p,.gallery-hero p{justify-self:end;padding-top:18px}.wide-service-image{aspect-ratio:1847 / 674;display:block;margin-bottom:86px;object-fit:cover;width:100%}.project-hero{align-items:end;display:grid;gap:36px;grid-template-columns:minmax(0,.58fr) minmax(320px,.42fr);padding-bottom:70px}.project-hero h1{font-size:clamp(58px,6vw,112px);font-weight:400;letter-spacing:-4px;line-height:.94;margin:0}.project-hero p:not(.eyebrow){font-size:clamp(18px,1.5vw,24px);line-height:1.18;max-width:640px}.project-hero img{aspect-ratio:4 / 3;object-fit:cover;width:100%}.project-content{border-top:1px solid #000;display:grid;gap:22px;margin-left:auto;max-width:820px;padding-top:34px}.project-facts{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.project-facts p{border-top:1px solid #000;font-size:18px;line-height:1.25;padding-top:14px}.project-facts span{color:#9d2f20;display:block;font-size:12px;font-weight:900;margin-bottom:8px;text-transform:uppercase}.project-content p{font-size:clamp(20px,1.5vw,26px);line-height:1.25;margin:0}.section-title.compact{align-items:end;display:flex;justify-content:space-between;margin-bottom:38px}.numbered-service-grid,.process-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.numbered-service-grid article,.process-grid article{border-top:1px solid #000;padding-top:24px}.numbered-service-grid span,.process-grid span{display:inline-block;font-size:18px;font-style:italic;margin-bottom:26px}.small-label{font-size:17px;font-weight:800;margin-bottom:8px;text-transform:uppercase}.process-section{padding:120px 0}.process-intro{display:grid;gap:36px;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);margin-bottom:48px}.process-media{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:54px}.process-media img{aspect-ratio:4 / 5;display:block;object-fit:cover;width:100%}.page-cta{align-items:end;border-top:1px solid #000;display:grid;gap:30px;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) auto;padding-top:42px}.gallery-hero{align-items:end;grid-template-areas:"title copy" "controls controls";padding-bottom:96px}.gallery-hero h1{grid-area:title}.gallery-hero p{grid-area:copy}.gallery-controls{align-items:center;display:none;flex-wrap:wrap;gap:18px;grid-area:controls;justify-content:center;margin-top:82px}.gallery-layout{display:block}.gallery-grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-filter{display:flex;flex-wrap:wrap;gap:10px;grid-column:1 / -1;margin-bottom:12px}.portfolio-filter button{background:#fff;border:1px solid #000;cursor:pointer;font-weight:800;min-height:42px;padding:9px 14px}.portfolio-filter button.is-active,.portfolio-filter button:hover{background:#000;color:#fff}.gallery-grid figure{margin:0}.gallery-grid img{aspect-ratio:443 / 550;display:block;object-fit:cover;width:100%}.gallery-grid figcaption{font-size:18px;margin-top:20px}.contact-hero{align-items:start;background:#fff;grid-template-columns:minmax(0,.9fr) minmax(460px,.82fr);padding:54px 0 72px}.contact-hero h1{font-size:clamp(76px,6.7vw,104px);margin:22px 0 20px}.contact-hero p{max-width:520px}.contact-hero img{aspect-ratio:834 / 705;display:block;object-fit:cover;width:100%}.contact-layout{background:#000;color:#fff;display:grid;gap:80px;grid-template-columns:minmax(480px,650px) minmax(485px,830px);justify-content:space-between;min-height:848px;margin:0 -20px;padding:68px 30px 120px}.contact-copy h2{color:#fff;font-size:clamp(70px,5vw,96px);font-weight:400;letter-spacing:-3px;line-height:.96;margin-bottom:38px}.contact-copy p,.contact-details p,.contact-details span,.contact-layout label{color:#fff}.contact-copy>p{font-size:clamp(20px,1.2vw,24px);line-height:1.28;max-width:650px}.contact-quick-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.contact-quick-actions .button{border-color:#fff;color:#fff;width:auto}.contact-quick-actions .button.primary{background:#fff;color:#000;width:auto}.contact-quick-actions .button:not(.primary){background:transparent}.contact-quick-actions .button:not(.primary):hover{background:#fff;color:#000}.contact-details{display:grid;gap:38px;grid-template-columns:1fr;margin-top:60px;max-width:360px}.contact-details span{display:block;font-size:22px;font-weight:800;margin-bottom:14px;text-transform:uppercase}.contact-details p{font-size:23px;line-height:1.25}.contact-layout .contact-form{align-self:start;border:0;gap:22px;padding:4px 0 0}.contact-form-help{color:#fff;font-size:18px;line-height:1.25;margin:0 0 8px}.contact-layout input{appearance:none;background:#000;border:0;border-bottom:1px solid #fff;color:#fff;min-height:44px;padding:6px 0 10px}.contact-layout textarea{background:#000;border:0;border-bottom:1px solid #fff;color:#fff;line-height:1.35;min-height:124px;padding:6px 0 10px}.contact-layout input::placeholder,.contact-layout textarea::placeholder{color:#ffffff85}.contact-layout label small{color:#ffffffad;font-size:13px;font-weight:400;line-height:1.25}.contact-layout .primary{background:#fff;border:0;border-radius:999px;color:#000;font-weight:400;justify-content:center;min-height:42px;width:100%}.contact-layout .primary:disabled{cursor:wait;opacity:.65}.form-status{color:#fff;font-size:14px;min-height:20px}.form-status.is-error{color:#ff9a8e}.map-link{border-bottom:1px solid #fff;color:#fff;display:inline-block;font-size:16px;font-weight:700;margin-top:8px;padding-bottom:3px}.contact-faq{background:#fff;display:grid;gap:clamp(28px,5vw,80px);grid-template-columns:minmax(260px,.72fr) minmax(420px,1fr);margin:0 -20px;padding:clamp(42px,6vw,92px) 30px}.contact-faq h2{font-size:clamp(44px,4.8vw,82px);font-weight:400;letter-spacing:-2px;line-height:.98;margin-bottom:0}.faq-list{border-top:1px solid #000}.faq-list details{border-bottom:1px solid #000;padding:22px 0}.faq-list summary{cursor:pointer;font-size:clamp(20px,1.5vw,28px);font-weight:700;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";float:right;font-weight:400}.faq-list details[open] summary:after{content:"\2212"}.faq-list p{font-size:18px;line-height:1.4;margin:16px 0 0;max-width:760px}.floating-whatsapp{background:#25d366;border:1px solid rgba(0,0,0,.18);border-radius:999px;bottom:22px;box-shadow:0 18px 44px #00000038;color:#071d0d;font-size:15px;font-weight:800;padding:14px 18px;position:fixed;right:22px;z-index:35}.quote-calculator{background:#f2efe8;display:grid;gap:clamp(28px,5vw,80px);grid-template-columns:minmax(260px,.72fr) minmax(420px,1fr);margin:0 -20px;padding:clamp(42px,6vw,92px) 30px}.quote-calculator h2{font-size:clamp(44px,4.8vw,82px);font-weight:400;letter-spacing:-2px;line-height:.98;margin-bottom:22px}.quote-calculator p:not(.eyebrow){font-size:20px;line-height:1.3;max-width:520px}.quote-calculator-form{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.quote-calculator-form label{color:#000;display:grid;font-size:14px;font-weight:700;gap:8px;text-transform:uppercase}.quote-calculator-form input,.quote-calculator-form select,.quote-calculator-form textarea{background:#fff;border:1px solid rgba(0,0,0,.18);color:#000;min-height:48px;padding:12px 14px;text-transform:none}.quote-calculator-notes,.quote-calculator-actions{grid-column:1 / -1}.quote-calculator-form textarea{min-height:96px;resize:vertical}.quote-calculator-actions{display:flex;flex-wrap:wrap;gap:12px}.contact-site-footer{background:#fff;color:#000;margin:0 -20px;min-height:280px;padding:38px 26px 48px;position:relative}.contact-footer-brand{display:inline-block;font-size:clamp(34px,2vw,44px);font-weight:900;line-height:1;margin-bottom:42px;position:relative}.contact-footer-brand span:before,.contact-footer-brand span:after{background:#000;content:"";position:absolute}.contact-footer-brand span:before{height:26px;right:-34px;top:-20px;width:2px}.contact-footer-brand span:after{height:2px;right:-48px;top:-7px;width:26px}.contact-footer-grid{display:grid;gap:32px;grid-template-columns:minmax(280px,1fr) minmax(280px,.9fr) minmax(280px,.9fr) minmax(300px,.85fr)}.contact-footer-grid p,.contact-footer-grid div,.contact-footer-grid a,.contact-footer-grid span{color:#000}.contact-footer-grid p,.contact-footer-grid div{font-size:clamp(17px,.95vw,20px);line-height:1.25;margin:0;text-transform:uppercase}.contact-footer-grid a,.contact-footer-grid span{display:block;margin-top:4px}.contact-footer-grid a:hover{text-decoration:underline}.page-title{margin-bottom:54px;max-width:1120px}.contact-grid{display:grid;gap:36px;grid-template-columns:minmax(0,.85fr) minmax(360px,.65fr)}.contact-form,.admin-card,.admin-login{border:1px solid #000;display:grid;gap:16px;padding:24px}label{color:#000;display:grid;font-weight:700;gap:8px}input,textarea{border:1px solid #000;min-height:44px;padding:10px 12px;width:100%}textarea{min-height:120px;resize:vertical}.button{background:#fff;border:1px solid #000;cursor:pointer;display:inline-flex;font-weight:700;min-height:46px;padding:12px 18px;transition:background-color .18s ease,color .18s ease,transform .18s ease}.button:hover{transform:translateY(-1px)}.primary{background:#000;color:#fff}.primary:hover{background:#9d2f20;border-color:#9d2f20;color:#fff}.danger{color:#9d2f20}.checkbox{align-items:center;display:flex}.checkbox input{min-height:auto;width:auto}.admin-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page{background:#f5f5f2;min-height:calc(100vh - 117px);padding:clamp(48px,6vw,92px) 24px}.admin-workspace{align-items:start;display:grid;gap:28px;grid-template-columns:260px minmax(0,1fr)}.admin-main-header{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-bottom:28px}.admin-main-header h1{font-size:clamp(42px,4.2vw,72px);letter-spacing:-2px;line-height:.98;margin:0;max-width:760px}.admin-main-header .button{flex:0 0 auto}.admin-sidebar{background:#111;display:grid;align-content:start;gap:18px;padding:14px;position:sticky;top:96px}.admin-sidebar-group{border-bottom:1px solid rgba(255,255,255,.14);display:grid;gap:4px;padding-bottom:14px}.admin-sidebar-group:last-child{border-bottom:0;padding-bottom:0}.admin-sidebar-group-title{color:#ffffff8c;font-size:11px;font-weight:900;letter-spacing:.08em;margin:0 0 4px;padding:0 14px;text-transform:uppercase}.admin-sidebar button{background:transparent;border:0;color:#fff;cursor:pointer;font-size:15px;font-weight:800;padding:12px 14px;text-align:left}.admin-sidebar button:hover,.admin-sidebar button.is-active{background:rgba(255,255,255,.12)}.admin-sidebar button.is-active{outline:1px solid rgba(255,255,255,.28)}.admin-content{display:grid;gap:22px}.admin-notice{border:1px solid #111;font-size:16px;font-weight:800;margin-top:-18px;padding:14px 18px}.admin-page>.admin-notice{box-shadow:0 16px 36px #00000029;margin:0;max-width:min(520px,calc(100vw - 32px));position:fixed;right:24px;top:24px;transition:opacity .22s ease,transform .22s ease;z-index:90}.admin-page>.admin-notice.is-leaving{opacity:0;transform:translateY(-10px)}.admin-notice.is-success{background:#eaf7ed;border-color:#1d7f3b;color:#0e4f23}.admin-notice.is-error{background:#fff0ee;border-color:#9d2f20;color:#9d2f20}.app-modal{align-items:center;display:grid;inset:0;justify-items:center;padding:24px;position:fixed;z-index:80}.app-modal-backdrop{background:rgba(0,0,0,.62);inset:0;position:absolute}.confirm-dialog,.lightbox-content{background:#f5f5f2;border:1px solid #000;color:#000;position:relative;width:min(620px,100%);z-index:1}.confirm-dialog{display:grid;gap:18px;padding:clamp(26px,3vw,40px)}.confirm-dialog h2{font-size:clamp(34px,4vw,56px);font-weight:400;letter-spacing:-2px;line-height:1;margin:0}.confirm-dialog p:not(.admin-kicker){font-size:18px;line-height:1.35;margin:0}.modal-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.danger-solid{background:#9d2f20;border-color:#9d2f20;color:#fff}.lightbox-modal{background:rgba(0,0,0,.2)}.lightbox-content{background:#000;border-color:#ffffff52;color:#fff;max-height:calc(100vh - 48px);overflow:hidden;width:min(1040px,100%)}.lightbox-content img{display:block;max-height:calc(100vh - 126px);object-fit:contain;width:100%}.lightbox-caption{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:14px 18px 18px}.lightbox-caption p{color:#fff;font-size:16px;margin:0}.lightbox-caption span{color:#ffffffb8;font-size:14px;white-space:nowrap}.lightbox-close,.lightbox-nav{align-items:center;background:#fff;border:0;color:#000;cursor:pointer;display:grid;font-size:32px;height:44px;justify-items:center;line-height:1;position:absolute;right:12px;top:12px;width:44px;z-index:2}.lightbox-nav{border-radius:999px;font-size:44px;height:56px;line-height:.8;opacity:.88;top:50%;transform:translateY(-50%);width:56px}.lightbox-prev{left:14px;right:auto}.lightbox-next{right:14px}.admin-panel{background:#fff;border:1px solid rgba(0,0,0,.12);gap:18px;padding:26px;scroll-margin-top:110px}.admin-section{display:none}.admin-section.is-active{display:grid}.admin-panel h2{font-size:clamp(28px,2.3vw,42px);letter-spacing:-1px;margin-bottom:0}.admin-panel h3{font-size:26px;margin-bottom:0}.admin-panel-title{align-items:center;display:flex;gap:16px;justify-content:space-between}.admin-panel-title.compact-title{margin-top:8px}.admin-kicker{color:#9d2f20;font-size:12px;font-weight:900;margin-bottom:6px;text-transform:uppercase}.admin-page .admin-card{background:#fafafa;border:1px solid rgba(0,0,0,.12);gap:14px}.admin-page input,.admin-page textarea{background:#fff;border:1px solid rgba(0,0,0,.18)}.admin-page textarea{min-height:96px}.admin-page .button{align-items:center;justify-content:center}.admin-order-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.admin-order-actions .button{min-height:36px;padding:8px 12px}.admin-order-actions .button:disabled{cursor:not-allowed;opacity:.35}.admin-list-entry{background:#fff;border:1px solid rgba(0,0,0,.14)}.admin-list-entry summary{align-items:center;cursor:pointer;display:grid;gap:14px;grid-template-columns:auto auto minmax(0,1fr) auto auto;list-style:none;padding:16px 18px}.admin-list-entry summary::-webkit-details-marker{display:none}.admin-list-entry summary:after{border-bottom:2px solid #000;border-right:2px solid #000;content:"";height:10px;justify-self:end;transform:rotate(45deg);transition:transform .18s ease;width:10px}.admin-list-entry[open] summary:after{transform:rotate(225deg)}.admin-list-entry.is-hidden-item{opacity:.68}.status-badge{border:1px solid currentColor;font-size:12px;font-weight:900;justify-self:end;padding:6px 8px;text-transform:uppercase;white-space:nowrap}.status-badge.is-live{color:#1d7f3b}.status-badge.is-hidden{color:#9d2f20}.admin-list-index{background:#111;color:#fff;font-size:13px;font-weight:900;padding:8px 10px}.admin-list-thumb{background:#eee;display:block;height:44px;object-fit:cover;width:56px}.admin-list-thumb.is-empty{background:transparent}.admin-list-summary-text{display:grid;gap:4px;min-width:0}.admin-list-summary-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-list-summary-text small{color:#777;font-size:13px;font-weight:800;text-transform:uppercase}.admin-list-entry .admin-card{border:0;border-top:1px solid rgba(0,0,0,.1)}.seo-form{gap:18px}.seo-fieldset{border:1px solid rgba(0,0,0,.16);display:grid;gap:14px;margin:0;padding:18px}.seo-fieldset legend{color:#9d2f20;font-size:13px;font-weight:900;padding:0 8px;text-transform:uppercase}.admin-panel .admin-list{padding:0}.admin-note{background:#f4f1ea;border:1px solid rgba(0,0,0,.1);display:grid;gap:6px;padding:16px}.admin-note code,.media-asset code{background:#fff;border:1px solid rgba(0,0,0,.1);display:inline-block;font-size:13px;padding:6px 8px;word-break:break-all}.admin-counter{background:#111;color:#fff;font-size:13px;font-weight:800;padding:8px 10px}.submissions-list{grid-template-columns:1fr}.submission-card{gap:18px}.submission-card-header{align-items:start;display:flex;gap:16px;justify-content:space-between}.submission-card-header h3{font-size:24px;margin:0 0 4px}.submission-card-header span,.submission-meta{color:#666;font-size:14px}.submission-meta{display:flex;flex-wrap:wrap;gap:12px}.submission-meta a{color:#000;font-weight:800}.admin-image-field{background:#fff;border:1px solid rgba(0,0,0,.12);display:grid;gap:12px;padding:12px}.admin-image-field.is-uploading{opacity:.72}.image-url-field{gap:6px}.image-url-field[hidden]{display:none}.image-field-actions{display:flex;flex-wrap:wrap;gap:10px}.image-upload{align-items:center;background:#f4f1ea;border:1px dashed rgba(0,0,0,.28);cursor:pointer;display:inline-flex;font-weight:800;min-height:44px;padding:10px 14px}.image-upload input{height:1px;opacity:0;overflow:hidden;padding:0;position:absolute;width:1px}.admin-image-preview{align-items:center;display:grid;gap:12px;grid-template-columns:104px minmax(0,1fr);min-height:104px}.admin-image-preview img{background:#eee;border:1px solid rgba(0,0,0,.1);height:92px;object-fit:cover;width:92px}.admin-image-preview strong{display:block;margin-bottom:6px}.admin-image-preview span{color:#555;font-size:13px;overflow-wrap:anywhere}.media-library{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.media-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.media-toolbar input{max-width:520px}.media-asset{background:#fafafa;border:1px solid rgba(0,0,0,.12);display:grid;gap:12px;padding:12px}.media-asset img{aspect-ratio:4 / 3;background:#eee;height:auto;object-fit:cover;width:100%}.media-asset div{display:grid;gap:8px}.contact-field-settings{display:grid;gap:12px}.contact-field-setting{align-items:center;background:#fff;border:1px solid rgba(0,0,0,.12);display:grid;gap:12px;grid-template-columns:110px repeat(3,minmax(0,1fr)) auto auto;padding:12px}.history-card{gap:8px}.history-card p{margin:0}.admin-login{background:#f5f5f2;gap:clamp(20px,2.3vw,28px);margin:0 auto;max-width:720px;padding:clamp(28px,4vw,48px);width:min(720px,100%)}.admin-login h1{font-size:clamp(48px,5.8vw,86px);letter-spacing:-2px;line-height:1;margin-bottom:12px;max-width:100%}.admin-login .contact-form{border:0;padding:0}.admin-login .admin-notice{margin:0}.hint{color:#777;font-size:15px}.error{outline:2px solid #9d2f20}.footer{align-items:center;background:#000;color:#fff;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;padding:26px 25px}.footer span{color:#fff}.site-footer-rich{align-items:start;display:grid;gap:30px;grid-template-columns:minmax(220px,1.2fr) minmax(180px,.8fr) minmax(240px,1fr) minmax(160px,.7fr);padding:42px 25px}.site-footer-rich strong{display:block;font-size:20px;margin-bottom:16px}.site-footer-rich span{display:block;font-size:12px;font-weight:900;margin-bottom:14px;text-transform:uppercase}.site-footer-rich p,.site-footer-rich a{color:#fff;display:block;font-size:17px;line-height:1.32;margin:0 0 6px}.site-footer-rich a:hover{text-decoration:underline}.site-footer-rich .social-links span,.site-footer-rich .social-links a{font-size:17px;font-weight:400;margin:0 0 6px;text-transform:none}.reveal{clip-path:polygon(0% 20%,100% 20%,100% 100%,0% 100%);opacity:0;transform:translateY(58px);transition:clip-path 1s cubic-bezier(.645,.045,.355,1) var(--reveal-delay, 0ms),opacity 1s cubic-bezier(.645,.045,.355,1) var(--reveal-delay, 0ms),transform 1s cubic-bezier(.645,.045,.355,1) var(--reveal-delay, 0ms);will-change:clip-path,opacity,transform}.reveal.is-visible{clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%);opacity:1;transform:translateY(0)}.image-reveal{clip-path:inset(0 100% 0 0);opacity:1;transform:translate(-14px);transition:clip-path 1.15s cubic-bezier(.645,.045,.355,1) var(--reveal-delay, 0ms),opacity .6s ease var(--reveal-delay, 0ms),transform 1.15s cubic-bezier(.645,.045,.355,1) var(--reveal-delay, 0ms);will-change:clip-path,opacity,transform}.image-reveal.reveal-from-right{clip-path:inset(0 0 0 100%);transform:translate(14px)}.image-reveal.is-visible{clip-path:inset(0 0 0 0);opacity:1;transform:translate(0)}@media (prefers-reduced-motion: reduce){.reveal,.image-reveal{clip-path:none;opacity:1;transform:none;transition:none}}@media (max-width: 980px){.site-header{padding:34px 24px}.menu-panel{padding:34px 26px 0;width:min(360px,72vw)}.hero,.services-hero,.gallery-hero,.contact-hero,.numbered-service-grid,.process-intro,.process-media,.process-grid,.order-section,.order-steps article,.project-facts,.page-cta,.gallery-layout,.gallery-grid,.contact-layout,.contact-details,.contact-footer-grid,.project-hero,.intro-grid,.contact-grid,.admin-workspace,.service-grid,.service-layout,.service-outro,.post-grid,.work-preview,.media-row,.contact-field-setting,.testimonial-grid,.proof,.quote-calculator,.contact-faq,.admin-list,.media-library{grid-template-columns:1fr}.order-section .button{grid-column:1}.site-footer-rich{grid-template-columns:1fr 1fr}.header-actions{display:none}.hero{padding:0 24px}.inner-page{padding:0 24px 72px}h1{font-size:64px;letter-spacing:-2px;margin-bottom:34px}.services-hero h1,.gallery-hero h1,.contact-hero h1{font-size:64px;letter-spacing:-2px}.services-hero,.gallery-hero,.contact-hero{grid-template-areas:none;padding-top:28px}.gallery-hero h1,.gallery-hero p,.gallery-controls{grid-area:auto}.services-hero p,.gallery-hero p{justify-self:start;padding-top:0}.gallery-hero{padding-bottom:60px}.contact-layout{gap:52px;min-height:auto;padding:54px 24px 78px}.quote-calculator,.contact-faq{margin:0 -24px;padding-inline:24px}.contact-copy h2{font-size:64px;letter-spacing:-2px}.contact-site-footer{min-height:0;padding:36px 24px 48px}.contact-footer-brand{margin-bottom:34px}.gallery-controls{justify-content:flex-start;margin-top:20px}.contact-hero img{min-width:0}.page-brand{margin-bottom:22px}.section-title.compact{align-items:flex-start;flex-direction:column}.process-section{padding:74px 0}.hero-hours,.hero-address,.quote-link{padding-top:0;text-align:left}.hero-media-main,.hero-media-side{grid-column:auto}.hero-media{height:360px;margin-top:18px}.hero-note{grid-column:auto;margin-top:36px}.service-item{min-height:auto}.offer-section{align-items:flex-start;flex-direction:column;gap:20px}.admin-main-header{align-items:flex-start;flex-direction:column}.admin-main-header h1{font-size:48px;letter-spacing:-1px}.admin-sidebar{position:static}.admin-panel-title{align-items:flex-start;flex-direction:column}}@media (max-width: 640px){.menu-panel{width:100%}.admin-page>.admin-notice{left:16px;right:16px;top:16px}.site-footer-rich{grid-template-columns:1fr}.order-steps article{gap:12px}.quote-calculator-form{grid-template-columns:1fr}.lightbox-nav{height:44px;width:44px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.floating-whatsapp{bottom:14px;right:14px}}
