@font-face{font-family:Manrope;src:url('/static/manrope.ttf') format('truetype');font-style:normal;font-weight:400 800;font-display:swap}
:root{--ink:#1b2d3a;--muted:#53616a;--orange:#ee783b;--orange-hover:#e87535;--paper:#f7f7f3;--line:#e0e3de;--white:#fff;--soft:#edf0eb;--radius:8px;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15}h1{font-size:60px;letter-spacing:-2.8px;font-weight:800}h2{font-size:38px;letter-spacing:-1.5px;font-weight:750}h3{font-size:21px;letter-spacing:-.6px;font-weight:750}p{line-height:1.8}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}input:focus,textarea:focus,select:focus{outline:2px solid var(--orange);outline-offset:1px}::selection{background:#f9bb97;color:var(--ink)}[hidden]{display:none!important}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.muted{color:var(--muted)}.eyebrow{display:block;font-size:13px;letter-spacing:1.7px;font-weight:800;color:#88451f;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:14px 23px;border:1px solid transparent;border-radius:5px;font-weight:750;font-size:15px;line-height:1.4;transition:background .18s,transform .18s}.btn svg{width:19px;height:19px}.btn:hover{transform:translateY(-2px)}.btn-orange{background:var(--orange);color:#182a38}.btn-orange:hover{background:var(--orange-hover);color:#182a38}.btn-dark{background:var(--ink);color:white}.btn-dark:hover{background:#30495a}.btn-outline{border-color:#d6dbd5;background:transparent}.btn-outline:hover{background:white;border-color:#9ea9a9}.btn-small{min-height:44px;padding:11px 18px;font-size:14px;gap:22px}.full{width:100%}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid transparent;border-radius:5px;padding:7px;transition:background .15s}.icon-btn svg{width:21px;height:21px}.icon-btn:hover{background:var(--soft)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:14px;font-weight:800;background:none;border:0;padding:0}.text-link svg{width:20px;height:20px;transition:transform .18s}.text-link:hover svg{transform:translateX(4px)}.text-link:hover{color:#ae4d1c}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:white;padding:12px}.skip-link:focus{top:12px}
.utility{background:#edf0eb;border-bottom:1px solid #e5e7e1;color:#53616a;font-size:13px}.utility-inner{display:flex;justify-content:space-between;align-items:center;height:33px}.utility a{display:flex;align-items:center;gap:6px}.utility svg{width:12px;height:12px}.site-header{background:var(--paper)}.header-inner{height:99px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.logo-window{position:relative;display:block;overflow:hidden;width:59px;height:59px;flex-shrink:0;border-radius:3px}.logo-window img{position:absolute;top:-58.2%;left:0;width:100%;max-width:none;height:auto}.brand-type{font-size:27px;font-weight:800;letter-spacing:-1px;line-height:1.1;white-space:nowrap}.brand-type small{display:block;font-size:12px;letter-spacing:1.25px;font-weight:750;margin-top:7px}.main-nav{display:flex;align-items:center;gap:31px;align-self:stretch;font-size:14px;font-weight:650}.main-nav a{display:flex;align-items:center;position:relative}.main-nav a[aria-current=page]:after{content:"";position:absolute;height:3px;background:var(--orange);bottom:23px;width:17px;border-radius:2px}.main-nav a:hover{color:#98481e}.header-actions{display:flex;align-items:center;gap:10px}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:54px;padding-bottom:49px}.hero-copy{padding-top:9px;padding-bottom:8px}.availability{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:750;letter-spacing:1.6px;margin-bottom:22px}.availability>span{width:6px;height:6px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 4px #f4e8de}.hero h1{font-size:clamp(52px,4.9vw,70px);line-height:1.06;letter-spacing:-3px}.hero h1 em{font-style:normal;color:#b64d20}.hero-description{font-size:16px;color:#53616a;margin-top:23px;line-height:1.85}.hero-actions{display:flex;gap:12px;margin-top:27px}.hero-note{display:flex;gap:10px;align-items:center;font-size:13px;color:#53616a;margin-top:24px}.mini-rule{width:22px;height:1px;background:var(--orange)}.hero-visual{position:relative;min-height:510px;overflow:hidden;border-radius:7px 7px 42px 7px;background:#455159}.hero-photo{width:100%;height:100%;position:absolute;object-fit:cover;object-position:62% center}.hero-visual:after{content:"";position:absolute;inset:auto 0 0;height:6px;background:var(--orange)}.photo-topline{position:absolute;top:21px;left:24px;right:21px;display:flex;align-items:center;justify-content:space-between;color:white;font-size:12px;font-weight:750;letter-spacing:1.9px;text-shadow:0 1px 8px #192a3a}.photo-topline svg{width:25px;height:25px}.photo-caption{position:absolute;bottom:49px;left:24px;right:24px;padding:21px 22px;background:rgba(255,255,255,.96);border-radius:4px;display:flex;align-items:center;gap:17px;font-size:19px;font-weight:750;letter-spacing:-.4px;line-height:1.35}.caption-icon{display:flex;align-items:center;justify-content:center;width:49px;height:49px;color:#b95623;background:#fcf0e7;border-radius:4px}.caption-icon svg{width:27px;height:27px}.caption-plus{margin-left:auto;color:var(--orange);font-size:36px;font-weight:400}.photo-label{position:absolute;bottom:19px;left:26px;font-size:12px;letter-spacing:1.5px;color:#fff;text-shadow:0 1px 5px #111}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:25px}.principles>div{display:flex;align-items:center;gap:16px;padding-left:33px;border-left:1px solid var(--line)}.principles>div:first-child{padding-left:0;border-left:0}.principles>div>svg{width:27px;height:27px;color:#ae653e}.principles strong{font-size:14px;display:block}.principles small{font-size:13px;display:block;color:var(--muted);margin-top:3px}.section{padding-block:75px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:30px}.section-heading h2{margin-top:11px}.section-heading>.text-link{padding-bottom:7px}.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.direction-card{background:white;border:1px solid var(--line);border-radius:7px;padding:27px 25px 0;transition:transform .2s,border-color .2s;display:flex;flex-direction:column}.direction-card:hover{transform:translateY(-4px);border-color:#dc9a74}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.service-symbol{color:#a95c32;background:#fcf1e8;display:grid;place-items:center;width:47px;height:47px;border-radius:5px}.service-symbol svg{width:27px;height:27px}.card-number{font-size:14px;color:#53616a;letter-spacing:1px}.direction-card h3{font-size:20px;margin-bottom:14px}.direction-card>p{font-size:14px;color:var(--muted);min-height:43px;line-height:1.8}.mini-services{margin-top:26px;flex:1}.mini-services>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;border-top:1px solid #edf0ec;padding:11px 0}.mini-services>div>span{max-width:70%}.mini-services strong{font-size:13px;white-space:nowrap;font-weight:750}.card-bottom{border-top:1px solid var(--line);margin-top:9px;padding:17px 0;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:800}.card-bottom>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f1f3ee}.card-bottom svg{width:15px;height:15px}.price-note{color:#53616a;font-size:13px;margin-top:20px;line-height:1.8}.process-section{background:#eef0eb;border-top:1px solid #e7eae3;border-bottom:1px solid #e7eae3}.section-aside{font-size:14px;color:var(--muted);padding-bottom:3px}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;gap:40px}.steps article{position:relative;padding-top:23px;border-top:1px solid #cdd4cb}.steps article:before{content:"";width:6px;height:6px;border-radius:50%;position:absolute;top:-4px;left:0;background:var(--orange)}.steps article>span{display:block;font-size:15px;color:#88451f;margin-bottom:20px;font-weight:750}.steps h3{font-size:18px;letter-spacing:-.4px}.steps p{color:var(--muted);font-size:14px;margin-top:13px;line-height:1.8}.workshop-teaser{display:grid;grid-template-columns:1fr 1fr;gap:80px}.workshop-teaser h2{margin-top:13px}.workshop-teaser p{color:var(--muted);font-size:15px}.workshop-teaser .text-link{margin-top:22px}.cta{position:relative;background:#f5ad7f;border:1px solid #eea271;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:43px 45px;overflow:hidden;border-radius:7px}.cta .eyebrow{color:#653819}.cta h2{font-size:34px;margin-top:10px;position:relative;z-index:1}.cta p{font-size:14px;color:#513c2d;margin-top:16px;position:relative;z-index:1}.cta>.btn{position:relative;z-index:1;flex-shrink:0}.visit-strip{display:flex;align-items:center;gap:20px;padding-block:50px}.visit-icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid #d5dcd4;border-radius:50%}.visit-icon svg{color:#a66036}.visit-strip h3{font-size:17px;margin-top:5px}.visit-strip p{font-size:14px;color:var(--muted);margin-top:5px}.visit-strip>.text-link{margin-left:auto}.footer{border-top:1px solid var(--line);background:#f0f2ec;padding-top:36px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:32px}.footer-top .logo-window{width:46px;height:46px}.footer-top .brand-type{font-size:23px}.footer-top .brand-type small{font-size:12px}.footer-top p{font-size:14px;color:#53616a;line-height:1.7}.footer-top nav{display:flex;gap:24px;font-size:14px}.footer-top>.text-link{font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dfe4db;padding:20px 0;color:#53616a;font-size:12px}.footer-bottom a:hover{text-decoration:underline}
.breadcrumbs{display:flex;gap:11px;font-size:13px;color:#53616a;margin-bottom:37px}.breadcrumbs a:hover{color:#88451f}.page-intro{padding-top:28px}.page-intro h1{font-size:51px;margin-top:11px;letter-spacing:-2px}.page-description{display:flex;align-items:center;justify-content:space-between;margin-top:25px;margin-bottom:40px;font-size:16px;color:var(--muted)}.soft-note{padding:12px 18px;border-left:2px solid var(--orange);background:#f1eee6;font-size:14px}.group-nav{display:flex;flex-wrap:wrap;gap:10px;border-bottom:1px solid var(--line);padding-bottom:27px}.group-nav a{padding:11px 16px;background:white;border:1px solid var(--line);border-radius:5px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:25px}.group-nav svg{width:17px;height:17px;color:#b56235}.group-nav a:hover{border-color:var(--orange)}.services-catalog{padding-bottom:50px}.catalog-group{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:50px 0;border-bottom:1px solid var(--line);scroll-margin-top:35px}.catalog-group-heading h2{font-size:27px;margin-top:10px;letter-spacing:-.7px}.catalog-group-heading p{font-size:14px;color:var(--muted);margin-top:14px}.service-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;border-top:1px solid var(--line)}.service-row:first-child{border-top:0;padding-top:5px}.service-row h3{font-size:16px;letter-spacing:-.3px}.service-row p{font-size:14px;color:var(--muted);margin-top:9px;max-width:440px}.service-row-action{display:flex;align-items:center;gap:22px;flex-shrink:0}.service-price{font-size:16px;font-weight:800;white-space:nowrap}.service-price small{font-size:15px;color:#53616a}.service-row .icon-btn{border:1px solid var(--line);border-radius:50%;width:38px;height:38px}.service-row .icon-btn:hover{background:var(--orange);border-color:var(--orange)}.services-catalog+.cta{margin-bottom:70px}.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:45px 75px;align-items:center}.about-brand{background:white;border:1px solid var(--line);border-radius:8px;padding:20px 35px 32px;text-align:center;position:relative}.about-brand .logo-window{width:100%;height:auto;aspect-ratio:1}.about-brand>span{display:block;font-size:12px;letter-spacing:1.5px;color:#53616a;line-height:1.8;margin-top:15px}.about-intro h2{font-size:39px;margin-top:15px}.about-intro p{margin-top:20px;color:var(--muted);font-size:15px}.about-intro .btn{margin-top:25px}.about-text{white-space:pre-line}.about-values article>svg{color:#a76239;width:29px;height:29px;margin-bottom:20px}.about-photo-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-photo-section>img{border-radius:8px;aspect-ratio:1.3;object-fit:cover;object-position:65% center}.about-photo-section h2{margin-top:15px}.about-photo-section p{margin-top:22px;color:var(--muted);max-width:400px;font-size:15px}.about-photo-section .text-link{margin-top:25px}.about-photo-section small{display:block;font-size:12px;margin-top:28px}.about-photo-section+.cta{margin-bottom:70px}.contacts-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:75px;padding-bottom:60px}.contact-item{display:flex;gap:18px;padding-bottom:24px}.contact-icon{width:40px;height:40px;display:grid;place-items:center;background:#eeefe8;border-radius:6px;color:#a56036;flex-shrink:0}.contact-icon svg{width:21px;height:21px}.contact-item .eyebrow{color:#53616a;font-size:12px;letter-spacing:1.3px}.contact-item h2{font-size:24px;margin-top:7px;letter-spacing:-.6px}.contact-item p:not(.contact-value){font-size:14px;color:var(--muted);margin-top:10px;max-width:300px}.contact-value{display:block;font-size:16px;font-weight:650;line-height:1.6;margin-top:5px}.contact-callout{border-top:1px solid var(--line);padding-top:26px;margin-top:8px}.contact-callout h3{font-size:17px;letter-spacing:-.4px}.contact-callout p{color:var(--muted);font-size:14px;margin-top:9px;margin-bottom:20px}.map-frame{height:470px;border:1px solid var(--line);border-radius:8px;overflow:hidden;position:relative;background:#e5e9df}.map-frame iframe{border:0;width:100%;height:100%;display:block}.map-plate{position:absolute;bottom:56px;left:22px;right:22px;pointer-events:none;display:flex;align-items:center;gap:14px;border-radius:5px;background:rgba(255,255,255,.97);padding:16px 18px;box-shadow:0 5px 25px #162c3d15}.map-marker{display:grid;place-items:center;background:var(--orange);width:41px;height:41px;border-radius:50%;color:white}.map-marker svg{width:21px;height:21px}.map-plate strong{display:block;font-size:16px;font-weight:800}.map-plate div>span{display:block;color:var(--muted);font-size:14px;margin-top:2px}.map-plate>a{margin-left:auto;pointer-events:auto;padding:8px}.route-link{margin-top:19px;font-size:14px}.map-note{font-size:13px;color:var(--muted);margin-top:13px}.arrival-note{display:flex;align-items:center;gap:23px;border-top:1px solid var(--line);padding-block:30px;margin-bottom:40px}.arrival-note>svg{color:#aa633a;width:32px;height:32px}.arrival-note h3{font-size:16px;letter-spacing:-.3px}.arrival-note p{color:var(--muted);font-size:14px;margin-top:7px}.arrival-note>.text-link{margin-left:auto}.legal-copy{max-width:820px;padding-block:40px 70px}.legal-copy h2{font-size:24px;margin-block:30px 15px;letter-spacing:-.7px}.legal-copy p{font-size:16px;color:#6a746f}.legal-copy a{text-decoration:underline;text-underline-offset:3px}.legal-copy>.text-link{margin-top:30px}.not-found{padding-block:85px}.not-found h1{margin-top:20px}.not-found p{color:var(--muted);margin-block:25px}.not-found .btn{margin-top:10px}
dialog{padding:30px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper);max-height:calc(100dvh - 35px);overflow-y:auto;box-shadow:0 20px 120px #102b3c30}dialog::backdrop{background:#0f233463;backdrop-filter:blur(5px)}.request-dialog{width:min(540px,calc(100% - 30px))}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.dialog-top>.icon-btn{margin-right:-10px;margin-top:-10px}.dialog-top .eyebrow{font-size:12px}.request-dialog h2{font-size:35px;letter-spacing:-1.3px;margin-bottom:14px}.request-dialog .muted{font-size:14px;line-height:1.8;margin-bottom:24px}form label{display:block;font-size:14px;font-weight:750;margin-bottom:17px}input,textarea,select{width:100%;border:1px solid #d8ded5;background:white;border-radius:5px;padding:12px 13px;line-height:1.5;font-size:14px;color:var(--ink);margin-top:7px;min-width:0}input::placeholder,textarea::placeholder{color:#53616a;font-weight:400}input[type=checkbox]{width:16px;height:16px;padding:0;accent-color:var(--orange);margin:2px 0 0;flex-shrink:0}.optional{color:#53616a;font-weight:400;margin-left:4px;font-size:12px}textarea{resize:vertical;min-height:80px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;line-height:1.65}.checkbox-label a{text-decoration:underline;text-underline-offset:2px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{font-size:14px;line-height:1.7;color:#ad3d28;margin-bottom:14px}.form-error:empty{display:none}.form-footnote{font-size:12px;text-align:center;color:#53616a;margin-top:13px}.success-panel{text-align:center;padding:40px 0}.success-icon{display:grid;place-items:center;border-radius:50%;width:66px;height:66px;background:#deebdf;color:#3f7b50;margin:0 auto 25px}.success-icon svg{width:32px;height:32px}.success-panel h2{font-size:30px}.success-panel p{font-size:14px;color:var(--muted);margin-top:14px}.success-panel .btn{margin-top:18px}
.login-body{min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;padding:40px 20px 80px;background:radial-gradient(ellipse at 20% 10%,#f5e7db,transparent 45%),var(--paper)}.login-panel{max-width:430px;width:100%;padding:35px;background:white;border:1px solid var(--line);border-radius:9px}.login-panel>.brand{margin-bottom:36px}.login-panel h1{font-size:30px;letter-spacing:-1.2px;margin-top:11px}.login-panel>.muted{font-size:14px;margin-top:12px}.login-panel form{margin-top:25px}.login-icon{width:42px;height:42px;border-radius:7px;background:#fcf0e7;color:#a95e30;display:grid;place-items:center;margin-bottom:20px}.login-back{display:block;margin-top:25px;text-align:center;font-size:14px;color:var(--muted)}.login-bottom{position:absolute;bottom:22px;font-size:12px;color:#53616a;letter-spacing:1.5px}.admin-body{background:#f5f6f2}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:white;border-right:1px solid var(--line);padding:29px 22px;display:flex;flex-direction:column;z-index:10}.admin-sidebar .brand{gap:8px}.admin-sidebar .logo-window{width:47px;height:47px}.admin-sidebar .brand-type{font-size:23px}.admin-sidebar .brand-type small{font-size:12px;letter-spacing:.9px}.sidebar-label{font-size:12px;letter-spacing:1.6px;color:#53616a;margin-top:44px;margin-bottom:15px;padding-left:11px;font-weight:750}.admin-sidebar nav{display:flex;flex-direction:column;gap:6px}.admin-sidebar nav>a{padding:12px 11px;border-radius:5px;display:flex;align-items:center;gap:12px;font-size:14px;font-weight:650;color:#53616a}.admin-sidebar nav svg{width:19px;height:19px}.admin-sidebar nav>a[aria-current=page]{background:#fbede1;color:#9b512b}.admin-sidebar nav>a:hover{background:#f3f4ee}.count-badge{background:white;padding:0 6px;border-radius:4px;margin-left:auto;font-size:13px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:16px}.sidebar-bottom a,.sidebar-bottom button{display:flex;align-items:center;gap:10px;font-size:13px;background:none;border:0;padding:0 10px;text-align:left;color:#53616a}.sidebar-bottom a svg{margin-left:auto}.sidebar-bottom svg{width:17px;height:17px}.admin-main{margin-left:245px;padding:25px 45px 60px;max-width:1700px}.admin-topline{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;letter-spacing:1.2px;color:#53616a;padding-bottom:23px;border-bottom:1px solid var(--line)}.admin-topline>span>span{margin:0 10px;color:#53616a}.admin-secure{display:flex;align-items:center;gap:6px;font-size:12px;letter-spacing:0;font-weight:400}.admin-secure svg{width:13px;height:13px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:38px 30px}.admin-heading h1{font-size:36px;letter-spacing:-1.5px;margin-top:7px}.admin-heading p{font-size:14px;color:var(--muted);margin-top:12px}.heading-count{font-size:18px;letter-spacing:-.6px;color:#53616a;margin-left:8px;font-weight:500}.new-count{background:#f9e9dc;color:#85431f;font-size:13px;border-radius:5px;padding:7px 13px}.admin-notice{display:flex;align-items:center;gap:12px;background:#f7efe2;border:1px solid #ebdfc9;border-radius:5px;padding:15px 17px;font-size:13px;color:#6e542e;margin-bottom:24px}.admin-notice>svg{width:21px;height:21px}.admin-notice a{text-decoration:underline;font-weight:650}.admin-notice.compact{margin-bottom:0;align-items:flex-start}.leads-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-block:6px 20px}.filter-tabs{display:flex;gap:4px}.filter-tabs>button{background:transparent;border:1px solid transparent;padding:8px 13px;border-radius:4px;font-size:13px;color:#53616a}.filter-tabs>button.active{background:white;border-color:#dfe3d9;color:var(--ink);font-weight:750}.leads-toolbar>input{max-width:220px;margin:0;font-size:13px;padding:10px 12px}.lead-list{display:flex;flex-direction:column;gap:10px}.lead-card{display:flex;align-items:center;gap:20px;text-align:left;width:100%;border:1px solid var(--line);background:white;border-radius:6px;padding:20px 18px;transition:border-color .15s}.lead-card:hover{border-color:#e8b68f}.lead-id{font-size:13px;color:#53616a;min-width:26px}.lead-contact{min-width:130px;max-width:200px}.lead-contact strong,.lead-subject strong{display:block;font-size:14px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-contact>span,.lead-subject>span{font-size:13px;color:#53616a;display:block;margin-top:5px}.lead-subject{flex:1;min-width:0}.lead-subject>span{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-time{font-size:12px;color:#53616a;text-align:right;white-space:nowrap}.lead-time>small{display:block;font-size:12px;margin-top:6px}.notify-sent{color:#3d6939}.notify-failed{color:#9b4328}.status-pill{display:inline-flex;padding:4px 9px;border-radius:4px;font-size:12px;white-space:nowrap}.status-new{background:#fbecdf;color:#85431f}.status-in_progress{background:#e7eef2;color:#315d75}.status-done{background:#e8f0e4;color:#3d6939}.lead-card>svg{width:16px;height:16px;color:#9ca694}.empty-state{padding:65px 20px;border:1px dashed #d3dace;border-radius:7px;text-align:center;color:#53616a;background:#f9faf6}.empty-state>svg{width:36px;height:36px;margin-bottom:20px}.empty-state h2{font-size:25px;letter-spacing:-.7px;color:var(--ink)}.empty-state p{font-size:14px;margin-top:12px}.empty-state .btn{margin-top:24px}.admin-footnote{font-size:12px;color:#53616a;margin-top:20px}.admin-group{border:1px solid var(--line);background:white;border-radius:7px;margin-bottom:20px;overflow:hidden}.admin-group-header{display:flex;align-items:center;gap:14px;padding:20px;background:#fcfcf9;border-bottom:1px solid var(--line)}.sort-buttons{display:flex;flex-direction:column;flex-shrink:0;gap:2px}.sort-buttons .icon-btn{width:25px;height:21px;padding:2px;border:1px solid #e4e8de;background:white;border-radius:3px;color:#53616a}.sort-buttons .icon-btn svg{width:14px;height:14px}.sort-buttons .icon-btn:hover{background:#faf0e5;color:#a05b2f}.sort-buttons .icon-btn:disabled{opacity:.25;cursor:default}.group-title{flex:1;min-width:0}.group-title h2{font-size:18px;letter-spacing:-.5px}.group-title h2>small{font-size:13px;color:#53616a;margin-left:8px}.group-title p{font-size:13px;color:var(--muted);margin-top:7px}.admin-group .icon-btn{flex-shrink:0}.danger{color:#53616a}.danger:hover{background:#fbebe4;color:#a7492d}.admin-service{display:flex;gap:15px;align-items:center;padding:19px 20px;border-bottom:1px solid #edf0e7}.service-description{flex:1;min-width:0}.service-description>strong{display:block;font-size:14px;font-weight:650}.service-description p{font-size:13px;color:#53616a;margin-top:5px;max-width:500px}.admin-price{font-size:14px;font-weight:750;white-space:nowrap;margin-right:10px}.add-service{width:100%;background:transparent;border:0;padding:16px 25px;text-align:left;font-size:13px;font-weight:700;color:#88451f;display:flex;align-items:center;gap:10px}.add-service svg{width:16px;height:16px}.add-service:hover{background:#fff7f0}.settings-form{max-width:1000px}.settings-section{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;border-top:1px solid var(--line);padding-block:30px}.settings-section h2{font-size:20px;letter-spacing:-.6px;margin-top:8px}.settings-section>div>p{font-size:13px;color:#53616a;margin-top:13px;max-width:235px}.settings-fields{background:white;padding:25px;border:1px solid var(--line);border-radius:6px}.settings-fields>label:last-child{margin-bottom:0}.settings-fields .text-link{font-size:13px}.settings-fields input,.settings-fields textarea,.settings-fields select{font-size:14px}.settings-save{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--line);position:sticky;bottom:0;background:#f5f6f2f5;z-index:2}.settings-save>span{font-size:14px;color:#3d6939}.settings-save .btn{margin-left:auto}.editor-dialog{width:min(490px,calc(100% - 30px))}.editor-dialog h2{font-size:28px;letter-spacing:-1px;margin-bottom:25px}.field-hint{font-size:12px;color:#53616a;margin-top:-10px;margin-bottom:20px}.toast{position:fixed;bottom:30px;left:calc(50% + 100px);transform:translateX(-50%);padding:14px 25px;border:1px solid #d7dfce;border-radius:5px;box-shadow:0 4px 30px #1c2e3b17;background:#fff;font-size:14px;z-index:100}.toast.error{color:#a6482c;border-color:#d6a18a}.lead-links{display:flex;flex-wrap:wrap;gap:10px 25px;margin-bottom:15px;font-size:15px}.lead-links a{text-decoration:underline;text-underline-offset:4px}.lead-dialog>.muted{font-size:13px}.lead-message{background:#edf0e8;padding:17px;border-radius:5px;margin-block:22px}.lead-message p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;margin-top:12px}.lead-message .eyebrow{font-size:12px;letter-spacing:.5px}.lead-notify{padding:12px 0;border-top:1px solid var(--line);margin-bottom:15px;font-size:13px;display:flex;justify-content:space-between;gap:15px}.lead-notify .text-link{font-size:12px;gap:5px}.lead-notify svg{width:15px;height:15px}
@media(min-width:1450px){.hero h1{font-size:73px}.hero-visual{min-height:540px}.hero{padding-top:60px;gap:75px}.hero-description{font-size:16px}.hero-actions{margin-top:31px}.hero-note{margin-top:28px}}
@media(max-width:1180px){.container{width:calc(100% - 64px)}.main-nav{gap:20px}.brand-type{font-size:24px}.brand-type small{font-size:12px}.logo-window{width:53px;height:53px}.header-inner{gap:20px}.hero{gap:30px}.hero h1{font-size:58px}.hero-visual{min-height:490px}.hero-actions{gap:9px}.hero-actions .btn{padding-inline:17px;font-size:14px;gap:14px}.principles>div{padding-left:20px;gap:12px}.direction-card{padding-inline:20px}.direction-card h3{font-size:18px}.mini-services>div{font-size:12px}.mini-services strong{font-size:12px}.contacts-layout{gap:45px}.admin-main{padding-inline:28px}.admin-sidebar{width:220px;padding-inline:18px}.admin-main{margin-left:220px}.lead-card{gap:13px;padding-inline:14px}.lead-contact{min-width:110px}.lead-subject{display:none}.admin-group-header{gap:10px}.settings-section{grid-template-columns:1fr 1.8fr;gap:25px}}
@media(max-width:950px){.header-inner{height:85px}.main-nav{gap:17px;font-size:14px}.header-actions .btn{font-size:13px;padding-inline:13px;gap:12px}.hero h1{font-size:52px;letter-spacing:-2.5px}.hero-description{font-size:14px}.hero-visual{min-height:470px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .btn{min-width:190px}.photo-caption{left:16px;right:16px;padding:16px;font-size:16px;gap:12px}.caption-icon{width:38px;height:38px}.photo-label{font-size:12px;left:17px}.principles strong{font-size:13px}.principles small{font-size:12px}.principles>div{gap:10px;padding-left:16px}.principles>div>svg{width:22px;height:22px}.section{padding-block:60px}h2{font-size:32px}.direction-grid{gap:12px}.direction-card{padding:22px 16px 0}.direction-card h3{font-size:17px;min-height:40px}.mini-services>div{flex-direction:column;gap:3px}.mini-services>div>span{max-width:100%}.direction-card>p{min-height:60px}.direction-card .card-top{margin-bottom:22px}.footer-top p{display:none}.footer-top nav{gap:15px}.catalog-group{gap:35px;grid-template-columns:1fr 1.8fr}.service-row{gap:17px}.service-row-action{gap:12px}.service-price{font-size:16px}.service-row h3{font-size:16px}.about-intro{gap:40px}.about-intro h2{font-size:32px}.about-brand{padding:20px}.about-photo-section{gap:40px}.contacts-layout{grid-template-columns:1fr 1.2fr;gap:30px}.map-frame{height:430px}.map-plate{left:12px;right:12px;padding:12px;gap:10px}.admin-sidebar{width:190px;padding-inline:12px}.admin-sidebar .brand-type{font-size:19px}.admin-sidebar .logo-window{width:40px;height:40px}.admin-sidebar .brand-type small{font-size:12px}.admin-main{margin-left:190px;padding-inline:24px}.admin-heading{align-items:flex-start}.admin-heading h1{font-size:29px}.admin-heading .btn{font-size:13px;padding-inline:12px;gap:7px;min-height:42px}.settings-section{grid-template-columns:1fr;gap:20px}.settings-section>div>p{max-width:100%}.admin-service{gap:10px;padding:16px 12px}.admin-price{margin-right:0;font-size:13px}.admin-service .icon-btn:not(.sort-buttons .icon-btn){width:29px;height:29px;padding:5px}.service-description p{font-size:12px}.leads-toolbar{align-items:flex-start;flex-direction:column}.leads-toolbar>input{max-width:100%}.lead-card{flex-wrap:wrap}.lead-contact{flex:1;max-width:none}.lead-time{order:5;width:100%;text-align:left;display:flex;justify-content:space-between;padding-left:37px}.lead-time>small{margin:0}.toast{left:calc(50% + 75px)}}
@media(max-width:760px){.container{width:calc(100% - 40px)}.utility-inner{height:29px}.utility-inner>span{font-size:12px;max-width:70%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.utility-inner>a{font-size:12px}.header-inner{height:81px;position:relative;gap:12px}.brand-type{font-size:24px}.brand-type small{font-size:12px}.logo-window{width:46px;height:46px}.brand{gap:8px}.menu-toggle{display:inline-flex}.header-actions .btn{display:none}.main-nav{display:none;position:absolute;top:80px;left:-20px;right:-20px;background:var(--paper);z-index:30;padding:15px 20px 20px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #20384b0d;font-size:16px}.main-nav.open{display:flex;flex-direction:column;gap:0;align-items:stretch}.main-nav a{padding:11px 0}.main-nav a[aria-current=page]:after{bottom:8px;height:2px;width:15px}.hero{grid-template-columns:1fr;padding-top:31px;gap:29px;padding-bottom:30px}.hero-copy{padding:0}.availability{font-size:12px;letter-spacing:1.4px;margin-bottom:18px}.hero h1{font-size:59px;letter-spacing:-3px;line-height:1.02}.hero-description{font-size:15px;margin-top:21px}.hero-actions{flex-direction:row;flex-wrap:wrap;gap:10px;margin-top:23px}.hero-actions .btn{padding-inline:17px;font-size:14px;min-width:0;min-height:48px;gap:15px}.hero-note{margin-top:20px;font-size:12px}.hero-visual{height:370px;min-height:0;border-bottom-right-radius:30px}.hero-photo{object-position:65% center}.photo-caption{left:17px;right:17px;bottom:42px;padding:16px 18px;font-size:19px;max-width:310px}.photo-topline{top:18px;left:19px;right:19px;font-size:12px}.photo-label{bottom:16px;left:20px;font-size:12px;letter-spacing:1.5px}.principles{grid-template-columns:1fr;padding-block:5px}.principles>div,.principles>div:first-child{padding:17px 4px;gap:17px;border-left:0;border-bottom:1px solid var(--line)}.principles>div:last-child{border-bottom:0}.principles strong{font-size:14px}.principles small{font-size:13px;margin-top:2px}.principles>div>svg{width:25px;height:25px}.section{padding-block:45px}.section-heading{align-items:flex-start;margin-bottom:24px}.section-heading h2{margin-top:9px;font-size:30px;letter-spacing:-1.1px}.section-heading>.text-link{font-size:12px;gap:6px;margin-top:32px;white-space:nowrap}.section-heading>.text-link svg{width:16px;height:16px}.eyebrow{font-size:12px;letter-spacing:1.4px}.direction-grid{grid-template-columns:1fr;gap:15px}.direction-card{padding:24px 24px 0}.card-top{margin-bottom:22px}.direction-card h3{font-size:23px;min-height:0}.direction-card>p{font-size:14px;min-height:0}.mini-services{margin-top:23px}.mini-services>div{flex-direction:row;font-size:14px;padding:12px 0}.mini-services>div>span{max-width:70%}.mini-services strong{font-size:13px}.card-bottom{font-size:14px;margin-top:8px;padding:16px 0}.price-note{font-size:12px}.section-aside{display:none}.steps{grid-template-columns:1fr;gap:25px;margin-top:28px}.steps article{padding-top:20px}.steps article>span{font-size:14px;margin-bottom:12px}.steps h3{font-size:20px}.steps p{font-size:14px;margin-top:11px}.steps p br{display:none}.workshop-teaser{grid-template-columns:1fr;gap:22px}.workshop-teaser h2{font-size:32px}.workshop-teaser p{font-size:15px}.cta{flex-direction:column;align-items:flex-start;padding:30px 24px;gap:23px}.cta h2{font-size:29px;letter-spacing:-1px}.cta p{font-size:14px;margin-top:15px;max-width:250px}.cta>.btn{min-height:48px;font-size:14px}.visit-strip{padding-block:35px;flex-wrap:wrap;gap:15px}.visit-icon{width:45px;height:45px}.visit-strip>.text-link{margin-left:60px;font-size:14px}.visit-strip h3{font-size:18px}.footer{padding-top:28px}.footer-top{flex-wrap:wrap;gap:25px;align-items:flex-start;padding-bottom:25px}.footer-top>.brand{width:100%}.footer-top nav{font-size:14px;gap:20px}.footer-top>.text-link{font-size:13px;margin-left:auto;gap:8px}.footer-bottom{font-size:12px;flex-wrap:wrap;gap:8px 25px;padding-block:18px}.footer-bottom>span:nth-child(2){width:100%;order:3}.breadcrumbs{margin-bottom:28px;font-size:12px;gap:9px}.page-intro{padding-top:22px}.page-intro h1{font-size:38px;letter-spacing:-1.7px}.page-description{align-items:flex-start;gap:22px;flex-direction:column;margin-top:20px;margin-bottom:28px;font-size:14px}.soft-note{font-size:13px;width:100%}.soft-note br{display:none}.group-nav{gap:8px;padding-bottom:22px}.group-nav a{font-size:13px;padding:10px 12px;gap:12px}.group-nav svg{width:14px;height:14px}.catalog-group{grid-template-columns:1fr;gap:25px;padding:33px 0}.catalog-group-heading h2{font-size:27px}.catalog-group-heading p{font-size:14px;margin-top:10px}.service-row{padding:20px 0;align-items:flex-start;gap:15px}.service-row h3{font-size:16px}.service-row p{font-size:13px}.service-row-action{flex-direction:column;align-items:flex-end;gap:14px}.service-price{font-size:15px}.service-row .icon-btn{width:30px;height:30px}.service-row .icon-btn svg{width:17px;height:17px}.services-catalog{padding-bottom:35px}.services-catalog+.cta{margin-bottom:40px}.about-intro{grid-template-columns:1fr;gap:30px;padding-block:30px 45px}.about-brand{max-width:420px;width:100%;padding:15px 30px 28px}.about-brand .logo-window{max-width:330px;margin:auto}.about-intro h2{font-size:35px}.about-intro p{font-size:15px}.about-values article>svg{margin-bottom:17px}.about-photo-section{grid-template-columns:1fr;gap:28px}.about-photo-section>img{aspect-ratio:1.3}.about-photo-section h2{font-size:33px}.about-photo-section+.cta{margin-bottom:40px}.contacts-layout{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.contact-item{padding-bottom:23px}.contact-item h2{font-size:25px}.contact-callout{margin-top:0}.map-frame{height:410px}.map-plate{bottom:55px;left:15px;right:15px;max-width:330px}.arrival-note{align-items:flex-start;flex-wrap:wrap;gap:16px;padding-block:25px;margin-bottom:20px}.arrival-note>svg{width:25px;height:25px}.arrival-note>div{width:calc(100% - 41px)}.arrival-note h3{font-size:16px;line-height:1.4}.arrival-note p{font-size:14px}.arrival-note>.text-link{margin-left:41px}.legal-copy{padding-block:15px 40px}.legal-copy h2{font-size:22px}.legal-copy p{font-size:14px}.not-found{padding-block:50px}.not-found h1{font-size:48px}.not-found p{font-size:15px}dialog{padding:24px 21px;max-height:calc(100dvh - 24px)}.request-dialog h2{font-size:31px}.request-dialog .muted{font-size:14px}.form-grid{gap:11px}.form-grid label{font-size:13px}.optional{font-size:12px;margin-left:0;display:block;line-height:1.3}.form-grid input{font-size:14px}.checkbox-label{font-size:12px}.login-panel{padding:27px}.login-panel>.brand{margin-bottom:27px}.login-panel h1{font-size:29px}.admin-sidebar{position:static;width:100%;padding:15px 20px;border-right:0;border-bottom:1px solid var(--line);display:block}.admin-sidebar .brand-type{font-size:22px}.admin-sidebar .brand-type small{font-size:12px}.sidebar-label,.sidebar-bottom{display:none}.admin-sidebar nav{flex-direction:row;gap:5px;margin-top:17px}.admin-sidebar nav>a{flex:1;font-size:12px;padding:9px 8px;gap:6px;white-space:nowrap}.admin-sidebar nav svg{width:15px;height:15px}.count-badge{font-size:12px;padding:0 4px}.admin-main{margin:0;padding:18px 20px 35px}.admin-topline{font-size:12px;padding-bottom:15px}.admin-secure{font-size:12px}.admin-heading{padding-block:25px;gap:12px}.admin-heading h1{font-size:28px;letter-spacing:-1px}.admin-heading .eyebrow{font-size:12px;letter-spacing:1px}.admin-heading p{font-size:13px;max-width:270px}.admin-heading .btn{font-size:12px;gap:6px;padding-inline:10px;min-height:38px;align-self:flex-end;flex-shrink:0}.admin-heading .btn svg{width:14px;height:14px}.new-count{font-size:12px;padding:5px 9px;white-space:nowrap}.admin-notice{padding:12px;font-size:12px;gap:10px}.admin-notice>svg{width:18px;height:18px}.filter-tabs{width:100%;justify-content:space-between}.filter-tabs>button{font-size:12px;padding:7px 11px}.lead-card{padding:15px 12px;gap:10px}.lead-contact>strong{font-size:14px}.lead-id{font-size:12px;min-width:22px}.lead-contact>span{font-size:13px}.status-pill{font-size:12px;padding:4px 6px}.lead-card>svg{width:13px;height:13px}.lead-time{padding-left:32px;font-size:12px}.lead-time>small{font-size:12px}.admin-group-header{padding:17px 12px;gap:8px}.group-title h2{font-size:16px;line-height:1.35}.group-title p{font-size:12px;line-height:1.6}.admin-group-header>.icon-btn{width:27px;height:27px;padding:5px}.admin-service{gap:9px;flex-wrap:wrap;padding:15px 12px}.service-description{min-width:calc(100% - 45px);flex:1}.service-description strong{font-size:14px}.service-description p{font-size:12px}.admin-service>.admin-price{margin-left:34px;margin-right:auto}.admin-service>.sort-buttons{align-self:flex-start}.settings-section{padding-block:23px;gap:15px}.settings-fields{padding:19px 16px}.settings-fields .form-grid{grid-template-columns:1fr;gap:0}.settings-section h2{font-size:22px}.settings-section>div>p{font-size:13px}.settings-save{padding:15px 0;flex-wrap:wrap;gap:10px}.settings-save .btn{font-size:14px;min-height:45px}.settings-save>span{font-size:13px}.toast{left:50%;bottom:20px;max-width:calc(100% - 40px);width:max-content;font-size:14px}.lead-notify{flex-direction:column;gap:8px}.editor-dialog h2{font-size:26px}}
@media(max-width:760px){.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{min-width:0}.hero h1{font-size:clamp(42px,12.8vw,59px);letter-spacing:-2px}.contacts-layout,.about-intro,.about-photo-section,.direction-grid{grid-template-columns:minmax(0,1fr)}.page-intro h1{font-size:clamp(30px,9vw,38px);overflow-wrap:anywhere}}
@media(max-width:360px){.footer-top>.text-link{margin-left:0}.hero-actions .btn{font-size:13px;padding-inline:14px}.brand-type{font-size:22px}.brand-type small{font-size:12px}.arrival-note h3{font-size:16px}.admin-heading{flex-wrap:wrap}.admin-heading .btn{margin-left:0}.admin-sidebar nav>a{padding-inline:6px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.delete-lead{display:block;margin:18px auto 0;background:none;border:0;font-size:13px;color:#98452d;padding:5px}.delete-lead:hover{text-decoration:underline}.map-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px 25px 120px;color:#53616a;gap:10px;z-index:0}.map-placeholder>svg{width:31px;height:31px;color:#bd8057}.map-placeholder>strong{font-size:16px}.map-placeholder>span{font-size:13px;line-height:1.8}.map-frame iframe{position:relative;z-index:1}.map-plate{z-index:2}

/* Readability: shared type and backgrounds for public pages, forms and admin. */
.brand-type small,.footer-top .brand-type small{font-size:10px;letter-spacing:.8px}
.admin-sidebar .brand-type small{font-size:9px;letter-spacing:.3px}
.utility-inner{min-height:37px;height:auto;padding-block:7px;gap:20px}
.utility-inner>span{line-height:1.5}
.utility-inner>a{flex-shrink:0}
.main-nav{gap:25px}
.header-inner{gap:24px}
.hero-actions{flex-wrap:wrap}
.hero-copy,.hero-visual,.workshop-teaser>div,.catalog-group-heading,.service-list,
.about-intro>div,.about-photo-section>div,.contact-details,.map-column,.settings-fields{min-width:0}
.hero h1{font-size:clamp(50px,4.5vw,70px)}
.hero-description{line-height:1.8}
.hero-note{align-items:flex-start;line-height:1.7}
.hero-note .mini-rule{margin-top:10px;flex-shrink:0}
.photo-topline{padding:8px 11px;background:rgba(27,45,58,.92);border-radius:4px;font-size:12px;letter-spacing:1px;text-shadow:none}
.photo-label{right:24px;width:fit-content;max-width:calc(100% - 48px);padding:5px 8px;background:rgba(27,45,58,.92);border-radius:3px;font-size:12px;letter-spacing:.5px;line-height:1.5;text-shadow:none;bottom:13px}
.photo-caption{bottom:62px}
.caption-plus{color:#9b4921}
.direction-card>p{min-height:0}
.mini-services>div{gap:10px;line-height:1.65}
.mini-services>div>span{max-width:none;min-width:0}
.mini-services strong{flex-shrink:0}
.section-heading{flex-wrap:wrap;align-items:center}
.section-heading>.text-link{margin-top:0}
.footer-top{flex-wrap:wrap;gap:24px}
.footer-bottom{flex-wrap:wrap;align-items:center;line-height:1.7}
.footer-bottom>span,.footer-bottom>a{min-width:0}
.service-row-action{gap:16px}
.service-row h3{line-height:1.45}
.map-plate div{min-width:0}
.map-plate div>span{overflow-wrap:anywhere}
.map-plate>a{flex-shrink:0}
.form-grid{align-items:start}
form label{line-height:1.6}
input,textarea,select,.settings-fields input,.settings-fields textarea,.settings-fields select{font-size:16px;line-height:1.55}
input::placeholder,textarea::placeholder{color:#657079;opacity:1}
.optional{display:inline;font-size:12px;color:#53616a}
.checkbox-label{font-size:13px;line-height:1.7}
.form-footnote,.field-hint,.admin-footnote{font-size:13px;line-height:1.75}
.checkbox-label input{margin-top:4px}
.success-panel .btn{margin-top:22px}
.admin-sidebar{width:260px}
.admin-main{margin-left:260px}
.admin-sidebar nav>a{font-size:14px;padding-inline:10px}
.sidebar-bottom a,.sidebar-bottom button{min-height:32px}
.admin-topline{gap:20px;line-height:1.6}
.admin-heading{flex-wrap:wrap}
.admin-heading p{max-width:650px}
.settings-section>div>p{max-width:none}
.admin-notice{line-height:1.75}
.admin-notice a{text-underline-offset:3px}
.group-title h2,.service-description strong{line-height:1.45}
.admin-group-header,.admin-service{gap:12px}
.sort-buttons .icon-btn{width:30px;height:28px}
.sort-buttons .icon-btn svg{width:17px;height:17px}
.lead-card{flex-wrap:wrap}
.lead-contact{min-width:155px}
.lead-subject{min-width:200px}
.lead-time{white-space:normal;min-width:135px}
.lead-links a{overflow-wrap:anywhere}
.empty-state .btn{color:var(--ink)}
.settings-save>span{font-size:14px}
.settings-save .btn{max-width:100%}
.login-bottom{position:static;display:block;text-align:center;margin-top:24px;font-size:12px}
.login-body{flex-direction:column}
.login-panel{max-width:480px}

@media(max-width:1180px){
  .header-inner{gap:18px}.brand-type small{font-size:10px}
  .hero-actions .btn{padding-inline:18px;gap:14px}
  .principles>div{align-items:flex-start;padding-left:18px}
  .admin-sidebar{width:240px}.admin-main{margin-left:240px;padding-inline:28px}
  .lead-subject{display:none}
}
@media(max-width:1080px){
  .header-inner{position:relative}
  .menu-toggle{display:inline-flex}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:30;padding:16px 20px;border:1px solid var(--line);box-shadow:0 15px 20px #20384b0d;font-size:16px;align-self:auto}
  .main-nav.open{display:flex;flex-direction:column;gap:0;align-items:stretch}
  .main-nav a{padding:12px 0}
  .main-nav a[aria-current=page]:after{bottom:8px;height:2px;width:18px}
  .direction-grid{grid-template-columns:1fr}
  .direction-card{padding:26px 28px 0}
  .direction-card h3{font-size:24px;min-height:0}
  .direction-card>p{font-size:16px;min-height:0}
  .mini-services>div{flex-direction:row;font-size:14px}
  .mini-services>div>span{max-width:none}
  .mini-services strong{font-size:14px}
  .card-bottom{font-size:14px}
  .cta{flex-wrap:wrap}
  .catalog-group{grid-template-columns:1fr;gap:24px}
  .service-row p{max-width:none}
}
@media(max-width:950px){
  .hero h1{font-size:clamp(40px,5.6vw,52px);letter-spacing:-2px}
  .hero-actions{flex-direction:column;align-items:flex-start}
  .principles{grid-template-columns:1fr;padding-block:6px}
  .principles>div,.principles>div:first-child{padding:19px 0;border-left:0;border-bottom:1px solid var(--line);gap:16px}
  .principles>div:last-child{border-bottom:0}
  .principles strong{font-size:16px}.principles small{font-size:14px}
  .workshop-teaser,.about-intro,.about-photo-section,.contacts-layout{grid-template-columns:minmax(0,1fr);gap:30px}
  .about-brand{max-width:500px}
  .contact-item p:not(.contact-value){max-width:none}
  .admin-sidebar{width:220px}.admin-main{margin-left:220px;padding-inline:24px}
  .admin-sidebar nav>a{font-size:13px;gap:8px}
  .admin-sidebar .brand-type small{font-size:8px}
  .lead-time{width:100%;min-width:0}
}
@media(max-width:760px){
  .brand-type small,.footer-top .brand-type small{font-size:9px;letter-spacing:.45px}
  .utility-inner{gap:12px}.utility-inner>span{font-size:12px;max-width:none;flex:1}
  .utility-inner>a{font-size:12px}.utility-inner>a svg{display:none}
  .hero h1{font-size:clamp(40px,11.8vw,59px);letter-spacing:-1.8px}
  .hero-description,.workshop-teaser p,.about-intro p,.about-photo-section p{font-size:16px}
  .hero-actions{flex-direction:row;align-items:stretch;gap:12px}
  .hero-actions .btn{font-size:14px;min-height:50px;padding-inline:18px}
  .hero-note{font-size:13px}
  .hero-visual{height:400px}
  .photo-topline{font-size:12px;left:16px;right:16px;padding:8px}
  .photo-label{font-size:12px;left:16px;right:16px;max-width:calc(100% - 32px);bottom:14px}
  .photo-caption{bottom:78px}
  .section-heading h2{font-size:30px}
  .section-heading>.text-link{font-size:14px;white-space:normal;margin-top:0}
  .direction-card{padding-inline:22px}
  .mini-services>div{font-size:14px;align-items:flex-start}
  .mini-services>div>span{max-width:65%}
  .mini-services strong{font-size:13px}
  .section-aside{display:block;font-size:14px}
  .steps p{font-size:16px}
  .cta h2{font-size:29px}
  .cta p{font-size:15px;max-width:none}
  .cta>.btn{font-size:14px}
  .visit-strip>.text-link{font-size:14px;margin-left:0}
  .footer-top nav{flex-wrap:wrap;font-size:14px;gap:18px}
  .footer-top>.text-link{font-size:14px;margin-left:0}
  .footer-bottom{font-size:12px;gap:12px}
  .page-description{font-size:16px}
  .group-nav a{font-size:14px;line-height:1.5}
  .service-row{flex-direction:column;gap:15px;padding-block:24px}
  .service-row h3{font-size:18px}.service-row p{font-size:15px}
  .service-row-action{flex-direction:row;align-items:center;justify-content:space-between;width:100%}
  .service-price{font-size:18px}.service-price small{font-size:16px}
  .service-row .icon-btn{width:40px;height:40px}
  .contact-item .eyebrow{font-size:12px}
  .contact-item p:not(.contact-value),.contact-callout p{font-size:15px}
  .route-link{font-size:14px;line-height:1.6;align-items:flex-start}
  .arrival-note p,.legal-copy p{font-size:16px}
  .legal-copy h2{line-height:1.4}
  .form-grid{grid-template-columns:1fr;gap:0}
  .form-grid label{font-size:14px}
  .form-grid input{font-size:16px}
  .checkbox-label{font-size:13px}
  .request-dialog .muted{font-size:15px}
  .request-dialog h2{font-size:30px}
  .admin-sidebar{width:100%}.admin-main{margin-left:0;padding-inline:20px}
  .admin-sidebar .brand-type small{font-size:9px}
  .admin-sidebar nav{flex-wrap:wrap;gap:6px}
  .admin-sidebar nav>a{font-size:13px;flex:auto;padding:10px;white-space:normal;line-height:1.5}
  .admin-topline{flex-wrap:wrap;gap:8px;font-size:12px}
  .admin-heading .eyebrow{font-size:12px;letter-spacing:.8px}
  .admin-heading p{font-size:14px;max-width:none}
  .admin-heading .btn{font-size:14px;min-height:48px;padding-inline:15px;gap:10px}
  .admin-notice{font-size:13px}
  .filter-tabs{flex-wrap:wrap;justify-content:flex-start}
  .filter-tabs>button{font-size:13px;min-height:40px}
  .leads-toolbar>input{font-size:16px}
  .lead-contact>strong{font-size:16px}.lead-contact>span{font-size:14px}
  .lead-time,.lead-time>small{font-size:13px;gap:12px;flex-wrap:wrap;padding-left:0}
  .status-pill{font-size:13px}
  .group-title h2{font-size:18px}.group-title p{font-size:14px}
  .admin-group-header{flex-wrap:wrap;gap:10px}
  .group-title{min-width:calc(100% - 50px)}
  .admin-group-header>.icon-btn{width:36px;height:36px}
  .admin-service{gap:12px;padding:18px 14px}
  .service-description{min-width:calc(100% - 46px)}
  .service-description>strong{font-size:16px}.service-description p{font-size:14px}
  .admin-price{font-size:14px}.admin-service>.admin-price{margin-left:42px}
  .add-service{font-size:14px;padding:16px}
  .settings-section>div>p{font-size:14px}
  .settings-save .btn{font-size:14px;min-height:48px}
  .settings-save{position:static}
  .lead-notify,.lead-notify .text-link{font-size:13px}
}

/* Keep text and focus indicators legible in interactive states. */
.optional{margin-left:6px}
button:focus-visible,a:focus-visible,input:focus,textarea:focus,select:focus{outline-color:#98481e}
@media(max-width:760px){.request-dialog h2{font-size:clamp(22px,7vw,30px);line-height:1.25;letter-spacing:-.8px}}

/* Give visitors a clear choice between a direct call and a request. */
.header-actions{gap:20px}
.header-phone{display:flex;align-items:center;gap:10px;flex-shrink:0;padding-block:8px}
.header-phone>svg{width:21px;height:21px;color:#88451f}
.header-phone small{display:block;color:var(--muted);font-size:12px;line-height:1.5;font-weight:500}
.header-phone strong{display:block;font-size:16px;line-height:1.6;font-weight:800;white-space:nowrap}
.header-phone:hover strong{color:#88451f;text-decoration:underline;text-underline-offset:4px}
.header-request-short{display:none}
.contact-phone .contact-value{font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1.5}
.contact-phone .contact-value:hover{color:#88451f;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1180px){.header-actions{gap:14px}.header-phone strong{font-size:15px}}
@media(max-width:760px){
  .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;gap:12px;padding-block:16px}
  .header-inner>.brand{grid-column:1;grid-row:1;min-width:0}
  .header-actions{display:contents}
  .header-actions>.menu-toggle{grid-column:2;grid-row:1;justify-self:end}
  .header-phone{grid-column:1;grid-row:2;gap:9px;padding:3px 0}
  .header-phone>svg{width:19px;height:19px}
  .header-phone strong{font-size:16px}
  .header-phone small{font-size:12px}
  .header-actions>.header-request{display:inline-flex;grid-column:2;grid-row:2;justify-self:end;font-size:14px;min-height:44px;padding:10px 12px;gap:8px}
  .header-request-label{display:none}.header-request-short{display:inline}
  .header-request svg{width:16px;height:16px}
  .contact-phone .contact-value{font-size:clamp(21px,6vw,26px)}
}
@media(max-width:360px){.header-phone>svg{display:none}}

/* Shared scroll-to-top control, including administration pages. */
.back-to-top{position:fixed;right:28px;bottom:28px;z-index:40;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #344b5a;border-radius:50%;background:var(--ink);color:white;box-shadow:0 4px 18px #152b3826;cursor:pointer;transition:background .18s,transform .18s}
.back-to-top:hover{background:#344b5a;transform:translateY(-2px)}
@media(max-width:760px){.back-to-top{right:18px;bottom:18px}.admin-body:has(.settings-save) .back-to-top{bottom:86px}}

/* Compact home page: actionable directions and direct contact. */
/* Stronger text strokes and darker secondary copy on light surfaces. */
:root{--muted:#3d4e59}
body{font-weight:500}
.hero-description,.hero-note,.utility,.direction-card>p,.catalog-group-heading p,
.service-row p,.page-description,.steps p,.workshop-teaser p,.about-intro p,
.about-photo-section p,.contact-item p:not(.contact-value),.contact-callout p,
.arrival-note p,.legal-copy p,.visit-strip p,.footer-top p,.footer-bottom,
.breadcrumbs,.price-note,.section-aside,.map-note,.map-plate div>span,
.form-footnote,.field-hint,.optional,.login-back,.login-bottom,
.admin-heading p,.group-title p,.service-description p,.settings-section>div>p,
.admin-footnote,.sidebar-label,.sidebar-bottom a,.sidebar-bottom button,
.admin-topline,.header-phone small{color:var(--muted);font-weight:500}
.hero-description,.direction-card>p,.catalog-group-heading p,.service-row p,
.page-description,.about-text{font-weight:550}
.utility{font-weight:550}
input,textarea,select{font-weight:500}
input::placeholder,textarea::placeholder{color:#52616c;font-weight:500}
/* Construction tape separates service directions, not individual service rows. */
.services-catalog .catalog-group{position:relative;border-bottom:0}
.services-catalog .catalog-group::before{content:"";position:absolute;top:0;left:0;right:0;height:7px;border-radius:2px;background:repeating-linear-gradient(135deg,#ee783b 0,#ee783b 13px,#fffaf5 13px,#fffaf5 26px)}
.group-nav{border-bottom:0}
#directions .direction-card{padding-top:24px}
#directions .direction-card>p{margin-bottom:24px;flex:1}
#directions .card-top{margin-bottom:20px}
.home-contact-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:24px;margin-left:auto}
.visit-strip[data-sal]{border-top:1px solid var(--line);margin-bottom:25px}
[data-sal]{--sal-slide:18px;--sal-easing:cubic-bezier(.2,.65,.3,1)}
@media(max-width:760px){.home-contact-actions{width:100%;justify-content:flex-start;margin-left:0;gap:20px}.hero-visual{height:300px}.hero .photo-label{bottom:16px}}
@media(prefers-reduced-motion:reduce){[data-sal]{opacity:1!important;transform:none!important}}

/* High-contrast reading text across all light page surfaces. */
:root{--muted:#243746}
.hero-description,.hero-note,.utility,.direction-card>p,.catalog-group-heading p,
.service-row p,.page-description,.steps p,.workshop-teaser p,.about-intro p,
.about-photo-section p,.contact-item p:not(.contact-value),.contact-callout p,
.arrival-note p,.legal-copy p,.visit-strip p,.footer-top p,.footer-bottom,
.breadcrumbs,.price-note,.section-aside,.map-note,.map-plate div>span,
.form-footnote,.field-hint,.optional,.login-back,.login-bottom,
.admin-heading p,.group-title p,.service-description p,.settings-section>div>p,
.admin-footnote,.sidebar-label,.sidebar-bottom a,.sidebar-bottom button,
.admin-topline,.header-phone small,.map-placeholder{color:#243746}
input::placeholder,textarea::placeholder{color:#3d4e59}

/* Neutral black typography; hierarchy comes from size and weight. */
/* Taller contact map with a compact side plate. */
.map-frame{height:590px}
.map-plate{left:20px;right:auto;bottom:58px;width:260px;max-width:calc(100% - 40px);padding:14px;gap:12px}
.map-plate>a{margin-left:auto}
@media(max-width:950px){.map-frame{height:560px}}
@media(max-width:760px){.map-frame{height:510px}.map-plate{left:14px;right:auto;bottom:58px;width:230px;max-width:calc(100% - 28px);padding:12px;gap:10px}}
/* Minimal dark footer, with explicit contrast over the global black type. */
body .footer{background:#000;color:#fff;border-top:0;padding-top:38px}
body .footer .footer-top{padding-bottom:30px}
body .footer :is(.brand,.brand-type,.brand-type small,nav,a,.text-link){color:#fff}
body .footer .footer-top p,body .footer .footer-bottom{color:#c5cbcf}
body .footer .footer-bottom{border-top:1px solid #383e42;padding-block:22px}
body .footer .footer-bottom :is(a,span){color:#c5cbcf}
body .footer a:hover,body .footer .text-link:hover{color:#f5ad7f}
body .footer .logo-window{border-radius:4px}
body .footer .footer-top nav{gap:25px}
@media(max-width:760px){body .footer{padding-top:30px}body .footer .footer-top{gap:24px;padding-bottom:27px}body .footer .footer-top nav{gap:20px}}
/* Industrial linework fades toward the copy, behind the CTA content. */
.cta::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url('/static/industrial-pattern.svg');background-size:420px 260px;background-position:right center;opacity:.5;-webkit-mask-image:linear-gradient(to right,transparent 22%,#000 100%);mask-image:linear-gradient(to right,transparent 22%,#000 100%)}
.cta>div,.cta>.btn{position:relative;z-index:1}
@media(max-width:760px){.cta::before{background-size:330px 204px;opacity:.32;-webkit-mask-image:linear-gradient(to right,transparent 15%,#000 100%);mask-image:linear-gradient(to right,transparent 15%,#000 100%)}}
@media print{[data-sal]{opacity:1!important;transform:none!important;transition:none!important}.back-to-top{display:none!important}}
/* Service prices use the same light card treatment as the home directions. */
.services-catalog .service-list{display:flex;flex-direction:column;gap:14px}
.services-catalog .service-row,.services-catalog .service-row:first-child{background:#fff;border:1px solid var(--line);border-radius:7px;padding:25px 24px}
@media(max-width:760px){.services-catalog .service-row,.services-catalog .service-row:first-child{padding:22px 20px}}
/* Navigation tabs use a filled active state instead of an indicator line. */
.main-nav{gap:8px;align-items:center}
.main-nav a{padding:10px 14px;border-radius:6px;line-height:1.5;transition:background .18s}
.main-nav a[aria-current=page]{background:#f9e3d4;color:#000;font-weight:800}
.main-nav a[aria-current=page]::after{display:none}
.main-nav a:hover{background:#eeeae2;color:#000}
.main-nav a[aria-current=page]:hover{background:#f5d5bf}
@media(max-width:1080px){.main-nav.open{gap:6px}.main-nav a{padding:12px 14px}.main-nav a[aria-current=page]::after{display:none}}
:root{--ink:#000;--muted:#000}
body{color:#000}
body :is(h1,h2,h3,h4,p,a,button,label,input,textarea,select,span,small,strong,em,div,nav,article,section,code){color:inherit}
body :is(.eyebrow,.hero-description,.hero-note,.utility,.direction-card>p,.catalog-group-heading p,.service-row p,.page-description,.steps p,.workshop-teaser p,.about-intro p,.about-photo-section p,.contact-item p,.contact-callout p,.arrival-note p,.legal-copy p,.visit-strip p,.footer-top p,.footer-bottom,.breadcrumbs,.price-note,.section-aside,.map-note,.map-plate div>span,.form-footnote,.field-hint,.optional,.login-back,.login-bottom,.admin-heading p,.group-title p,.service-description p,.settings-section>div>p,.admin-footnote,.sidebar-label,.admin-topline,.header-phone small,.map-placeholder,.hero h1 em,.cta .eyebrow,.cta p,.soft-note,.card-number,.service-price small){color:#000}
body :is(a:hover,button:hover){color:#000}
body :is(.btn-dark,.btn-dark:hover,.back-to-top,.back-to-top:hover,.photo-topline,.photo-label,.map-marker){color:#fff}
body :is(.btn-orange,.btn-orange:hover,.btn-outline,.text-link){color:#000}
body input::placeholder,body textarea::placeholder{color:#000;opacity:1}
body :is(.admin-sidebar nav>a,.sidebar-bottom a,.sidebar-bottom button,.filter-tabs>button,.lead-id,.lead-contact>span,.lead-subject>span,.lead-time,.status-pill,.notify-sent,.notify-failed,.new-count,.heading-count,.admin-notice,.empty-state,.add-service,.delete-lead,.form-error,.toast.error,.settings-save>span,.lead-notify){color:#000}

/* Smaller motifs in diagonal rows; the fade remains aligned to the panel. */
.cta::before{inset:-220px;background-size:250px 155px;background-position:center;transform:rotate(-24deg);-webkit-mask-image:none;mask-image:none;opacity:.48}
.cta{isolation:isolate}
.cta::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(to right,#f5ad7f 20%,rgba(245,173,127,.78) 43%,rgba(245,173,127,0) 100%)}
.cta>div,.cta>.btn{z-index:1}
@media(max-width:760px){.cta::before{background-size:210px 130px;opacity:.32}}

/* Matched images and top-aligned copy on the workshop page. */
.about-intro,.about-photo-section{align-items:start}
.about-intro .about-brand{height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 30px}
.about-intro .about-brand .logo-window{width:min(100%,330px);height:auto;aspect-ratio:1;flex-shrink:1}
.about-intro .about-brand>span{flex-shrink:0}
.about-photo-section>img{width:100%;height:430px;aspect-ratio:auto;object-fit:cover}
.about-photo-reversed>div{grid-column:1;grid-row:1}
.about-photo-reversed>img{grid-column:2;grid-row:1}
@media(max-width:950px){
 .about-intro .about-brand{max-width:none}
 .about-photo-reversed>div,.about-photo-reversed>img{grid-column:auto;grid-row:auto}
 .about-photo-reversed>div{order:0}.about-photo-reversed>img{order:1}
}
@media(max-width:760px){
 .about-intro .about-brand,.about-photo-section>img{height:340px}
 .about-intro .about-brand{padding:18px 25px}
 .about-intro .about-brand .logo-window{width:min(100%,260px)}
}

.services-description{margin-top:38px;margin-bottom:36px}
@media(max-width:760px){.services-description{margin-top:28px;margin-bottom:30px}}

.about-intro .about-brand{background:transparent;border:0;border-radius:0;box-shadow:none}

.pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:14px}.pagination>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pagination a{display:grid;place-items:center;min-width:40px;height:40px;padding:8px;border:1px solid var(--line);background:white;border-radius:5px}.pagination a[aria-current=page]{background:#000;color:#fff}.pagination a:hover{background:#f9e3d4;color:#000}

/* Mobile usability: explicit search, accessible controls and account actions. */
.lead-search-form{display:flex;align-items:center;gap:8px;max-width:390px;width:100%}
.lead-search-form input{margin:0}.lead-search-form .btn{min-height:44px;padding:10px 15px}
@media(max-width:950px){.lead-search-form{max-width:none}}
@media(max-width:760px){
 .admin-sidebar .sidebar-bottom{display:flex;flex-direction:row;flex-wrap:wrap;margin-top:12px;padding-top:10px;gap:8px 16px}
 .sidebar-bottom a,.sidebar-bottom button{min-height:44px;font-size:13px;padding-inline:8px}
 .admin-sidebar nav>a{min-height:44px}
 .admin-group-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;gap:10px}
 .admin-group-header>.sort-buttons{grid-column:1;grid-row:1;align-self:start}
 .admin-group-header>.group-title{grid-column:2/5;grid-row:1;min-width:0;overflow-wrap:anywhere}
 .admin-group-header>[data-edit-group]{grid-column:3;grid-row:2}
 .admin-group-header>[data-delete-group]{grid-column:4;grid-row:2}
 .admin-service{display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;gap:10px;padding:18px 12px}
 .admin-service>.sort-buttons{grid-column:1;grid-row:1;align-self:start}
 .admin-service>.service-description{grid-column:2/5;grid-row:1;min-width:0;overflow-wrap:anywhere}
 .admin-service>.admin-price{grid-column:1/3;grid-row:2;margin:0}
 .admin-service>[data-edit-service]{grid-column:3;grid-row:2}
 .admin-service>[data-delete-service]{grid-column:4;grid-row:2}
 .admin-group-header>.icon-btn,.admin-service>.icon-btn,.sort-buttons .icon-btn{width:44px!important;height:44px!important;padding:10px!important}
 .sort-buttons{gap:6px}
 .sort-buttons .icon-btn svg{width:20px;height:20px}
 .pagination{align-items:flex-start;flex-direction:column}.pagination a{min-width:44px;height:44px}
 .filter-tabs>button{min-height:44px}
 .settings-save{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
 dialog{overscroll-behavior:contain;max-height:calc(100dvh - 24px)}
 .footer nav a,.footer .text-link{min-height:44px;display:inline-flex;align-items:center}
 .back-to-top{bottom:calc(18px + env(safe-area-inset-bottom))}
}
