.auth-main{max-width:450px;margin:80px auto;padding:30px;background:#fffefa;border:1px solid #d0d7ca}.auth-main h1{font-size:44px;margin:25px 0}.auth-main label{display:block;margin:20px 0;font-size:13px}.auth-main input{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #c8d2c0;font:inherit}.auth-main .button{width:100%;justify-content:center}.auth-main p{font-size:12px;line-height:1.7}.auth-main .error{color:#a52a14}.logout-form{margin:0}.logout-button{border:0;background:transparent;color:var(--green);font:inherit;font-size:12px;cursor:pointer}@media(max-width:500px){.auth-main{margin:35px 5%}}
.auth-switch a{text-decoration:underline;font-weight:700}.owner-body:has(.auth-main){min-height:100vh;background:linear-gradient(#173f3245,#173f3266),url('/assets/timber-work.webp') center/cover fixed}.owner-body:has(.auth-main)>header{background:#f5f4ede8;max-width:none}.auth-main{background:#fffefaf5;box-shadow:0 20px 70px #09261b24}.logo span{text-transform:uppercase}.photo-wordmark{font-size:25vw;letter-spacing:-1.6vw}.photo-wordmark span{font-size:17vw;letter-spacing:-1.2vw}.tool-image img{width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .5s}.card:hover .tool-image img{transform:scale(1.06)}.tool-placeholder{font-size:21px;font-weight:800;letter-spacing:-1px;color:#7b9380;display:grid;place-items:center;min-height:120px}.project-stories{padding:70px 4%;background:#e9eee4}.project-stories h2{font-size:clamp(30px,3.5vw,53px)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:20px}.story{position:relative;height:430px;overflow:hidden;background:#173f32;color:white}.story::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#0a251cd9)}.story img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.story:hover img{transform:scale(1.04)}.story>div{position:absolute;bottom:30px;left:30px;right:30px;z-index:1}.story h3{font-family:'Manrope',sans-serif;font-size:clamp(23px,2.8vw,40px);font-weight:500;letter-spacing:-1.4px;max-width:400px}.story span{font-size:11px;display:inline-block;margin-top:12px}.closing-cinema::before{background:linear-gradient(#102b227d,#102b227d),url('/assets/concrete-work.webp') center/cover}.account-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:40px;margin-top:35px}.account-main h2,.tools-main h2{font-size:30px;margin-bottom:20px}.profile-card{padding:25px;background:#fffefa;border:1px solid #d0d7ca;margin-bottom:25px;scroll-margin-top:25px}.profile-card label{display:block;font-size:12px;margin:17px 0}.profile-card input:not([type=checkbox]),.profile-card select,.profile-card textarea{display:block;width:100%;padding:12px;border:1px solid #c8d2c0;background:white;color:var(--green);font:inherit;margin-top:7px;min-width:0}.profile-card input[readonly]{background:#eef1e8;color:#70806e}.profile-card .button{width:100%;justify-content:center}.profile-card>p[role=status]{font-size:12px;line-height:1.7}.rental-card{display:flex;gap:22px;background:#fffefa;border:1px solid #d0d7ca;padding:22px;margin-bottom:20px}.rental-card img{width:130px;height:130px;object-fit:contain;background:#e9eee4}.rental-card .eyebrow{font-size:9px}.rental-card h3{font-size:20px}.rental-card p{font-size:12px;line-height:1.7}.rental-card small{display:block;margin-top:8px;font-size:11px;color:#64745e}.my-orders>p{font-size:13px;line-height:1.8}.tools-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;margin-top:35px;align-items:start}.managed-tool{display:flex;gap:22px;background:#fffefa;border:1px solid #d0d7ca;padding:20px;margin-bottom:18px;align-items:center}.managed-tool>img,.managed-tool>.tool-placeholder{width:130px;height:130px;object-fit:contain;background:#e9eee4;flex-shrink:0}.managed-tool h3{font-size:19px}.managed-tool p{font-size:12px}.managed-tool .eyebrow{font-size:9px;letter-spacing:1px}.inline-check{display:flex!important;gap:10px;align-items:center}.inline-check input{accent-color:var(--green)}.plain-button{background:transparent;border:0;padding:10px 0;color:var(--green);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.bulk-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:15px 0 20px}.bulk-controls>span{font-size:12px;color:#64745e}.danger-button{background:#fbe8dd;color:#8d3117;border:1px solid #d98b64;font:inherit;font-size:12px;font-weight:600;padding:12px 18px;cursor:pointer}.danger-button:hover{background:#f6c9ae}.row-action{background:transparent;border:1px solid #d3b5a6;color:#8d3117;width:31px;height:31px;font-size:22px;cursor:pointer}.row-action:hover{background:#fbe8dd}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px}.table-wrap td,.table-wrap th{padding:18px 12px}.delete-dialog{max-width:460px;padding:30px}.delete-dialog h2{font-size:32px}.delete-dialog p{font-size:13px;line-height:1.8}.delete-dialog>div{display:flex;justify-content:flex-end;gap:25px}.owner-main .section-top{gap:22px}.owner-main .section-top .text-link{font-size:12px}.owner-main .bulk-controls .button{padding:12px 18px;font-size:12px}
@media(max-width:900px){.account-columns,.tools-layout{grid-template-columns:1fr}.tools-layout .profile-card{max-width:600px}.story{height:350px}.story>div{left:22px;bottom:22px}.project-stories{padding-block:50px}.owner-main .section-top{flex-wrap:wrap;align-items:center}.managed-tool img{width:110px;height:110px}}@media(max-width:600px){.story-grid{grid-template-columns:1fr;gap:18px}.story{height:350px}.project-stories h2{font-size:35px}.account-main h1,.tools-main h1{font-size:45px}.rental-card{gap:14px;padding:15px}.rental-card img{width:85px;height:100px}.rental-card h3{font-size:17px}.profile-card{padding:20px}.managed-tool{padding:15px;gap:15px}.managed-tool>img,.managed-tool>.tool-placeholder{width:95px;height:110px}.bulk-controls{gap:12px}.auth-main{margin-top:35px}.auth-main h1{font-size:40px}.photo-wordmark{font-size:24vw}.photo-wordmark span{font-size:16.8vw}}@media(prefers-reduced-motion:reduce){.story img,.tool-image img{transition:none}}

/* Text spans must not inherit the decorative seven-pixel eyebrow dot. */
.owner-body .eyebrow span[data-lv]{width:auto;height:auto;background:none;border-radius:0;line-height:1.7}
.auth-main .eyebrow{display:block;margin-bottom:18px}
.auth-main h1{line-height:1.15;margin-top:0}
/* Fit the full uppercase wordmark within the narrower desktop content area. */
body:not(.owner-body) .photo-wordmark,body:not(.owner-body) .photo-wordmark span{font-size:16vw;letter-spacing:-.8vw;line-height:1.2}
.users-main h1{font-size:clamp(40px,5vw,64px)}
.access-note{font-size:14px;line-height:1.8;max-width:850px;margin-top:25px}
.user-search{display:block;font-size:12px;max-width:450px;margin:30px 0 20px}
.user-search input{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #c8d2c0;background:#fffefa;color:var(--green)}
.managed-user{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px;background:#fffefa;border:1px solid #d0d7ca;margin-bottom:15px}
.managed-user h2{font-family:inherit;font-size:20px;margin:8px 0}
.managed-user .eyebrow{font-size:10px;margin-bottom:0}
.managed-user .user-email{font-size:13px;overflow-wrap:anywhere;margin-bottom:0}
.managed-user .button{font-size:12px;padding:12px 18px}
.managed-user>div{min-width:0}
#users-status{font-size:13px;line-height:1.7}
.role-dialog{max-width:560px}.role-dialog h2{font-size:34px}.role-dialog p{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.role-dialog .dialog-actions{display:flex;gap:20px;align-items:center}.role-dialog .dialog-actions .button{width:auto;margin-left:auto;font-size:12px}#role-error{color:#a52a14}
@media(max-width:650px){.managed-user{align-items:flex-start;flex-direction:column;padding:20px}.role-dialog .dialog-actions{flex-wrap:wrap}.role-dialog{padding:25px}}

.profile-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;border:1px solid #173f3240;border-radius:30px;padding:10px 13px;color:var(--green);font-size:12px;min-width:44px;min-height:44px;white-space:nowrap}
.profile-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.profile-link:hover{background:#e5eadf}
body:not(.owner-body)>header .profile-link{margin-left:0;font-size:11px;padding:9px 12px}
.settings-main .section-top{align-items:center}.settings-main h1{font-size:clamp(44px,5vw,64px)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px;align-items:start}.settings-grid h2{font-size:32px}.settings-grid .profile-card{margin-bottom:0}
.role-controls{display:flex;gap:15px;align-items:end;flex-shrink:0}.role-controls label{font-size:12px}.role-controls select{display:block;padding:10px;margin-top:8px;border:1px solid #c8d2c0;background:white;color:var(--green)}
@media(max-width:1100px){.profile-link span{display:none}.profile-link{padding:10px}body:not(.owner-body)>header{gap:16px}}
@media(max-width:760px){.settings-grid{grid-template-columns:1fr}.settings-main .section-top{align-items:start}.owner-body header .website-back{display:none}.owner-body header{padding-inline:4%;gap:12px}.owner-body header .logo{font-size:28px}.owner-body header .logo span{font-size:19px}.role-controls{flex-wrap:wrap}.profile-link{min-width:40px;min-height:40px}.settings-main h1{font-size:44px}}
@media(max-width:650px){body:not(.owner-body)>header>.button{display:none}}
.settings-main{padding-top:30px}.settings-main .section-top h1{margin-block:10px}.settings-grid{margin-top:25px}.settings-grid .profile-card{padding:22px}.settings-grid .profile-card label{margin:12px 0}.settings-grid .profile-card input{padding:10px}

.profile-tabs{display:flex!important;gap:8px;flex-wrap:wrap;margin-top:24px;padding-bottom:12px;border-bottom:1px solid #cdd6c7;font-size:13px}.profile-tabs a{padding:12px 18px;border-radius:24px}.profile-tabs a[aria-current=page]{background:var(--green);color:var(--paper)}.profile-tabs a:hover{background:#e1e7db;color:var(--green)}.personal-orders{margin-top:28px;max-width:900px}.personal-orders h2{font-size:32px}
.receipt-main{max-width:850px;margin:40px auto 70px;padding:0 24px}.receipt-intro{text-align:center;margin-bottom:30px;animation:receipt-rise .6s both}.receipt-intro h1{font-size:clamp(40px,5vw,58px);line-height:1.1;margin:15px 0}.receipt-intro>p:last-child{font-size:14px;color:#6a766d}.receipt-intro .eyebrow{justify-content:center;margin-top:18px}.receipt-intro .eyebrow span{width:auto;height:auto;background:none}.receipt-check{width:78px;height:78px;margin:auto;border-radius:50%;background:#e4ecd9}.receipt-check svg{width:100%;height:100%;fill:none;stroke:var(--green);stroke-width:2.5;stroke-linecap:round}.receipt-check path{stroke-dasharray:55;stroke-dashoffset:55;animation:receipt-check .65s .15s forwards}.receipt-check circle{stroke:#bbceae}.reservation-receipt{background:#fffefa;border:1px solid #ced8c6;box-shadow:0 15px 45px #173f3210;animation:receipt-rise .7s .1s both}.reservation-receipt>header{height:auto;max-width:none;padding:28px;gap:20px;align-items:start}.reservation-receipt h2{font-family:inherit;font-size:28px;margin:6px 0;letter-spacing:-1px}.reservation-receipt header p{font-size:11px;margin-bottom:0}.receipt-reference{text-align:right;max-width:235px}.receipt-reference span,.receipt-reference strong{display:block;font-size:11px;line-height:1.8}.receipt-reference strong{font-size:23px;letter-spacing:2px;margin:4px 0}.reservation-receipt>section{padding:25px 28px;border-bottom:1px dashed #cdd6c7}.reservation-receipt h3{font-size:16px;margin-bottom:16px}.receipt-tool{font-size:24px;font-weight:700}.reservation-receipt dl{margin:0}.reservation-receipt dl>div{display:flex;gap:25px;justify-content:space-between;margin-top:12px;font-size:13px;line-height:1.6}.reservation-receipt dt{color:#64745e}.reservation-receipt dd{margin:0;text-align:right;overflow-wrap:anywhere;min-width:0}.receipt-total{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;padding-top:20px;border-top:1px solid #d5ddcf;font-size:13px}.receipt-total strong{font-size:32px;white-space:nowrap}.reservation-receipt>footer{display:block;padding:25px 28px;margin:0;border-top:0}.reservation-receipt footer p{font-size:12px;line-height:1.8}.reservation-receipt .receipt-id{font-size:10px;color:#7b8975;overflow-wrap:anywhere}.receipt-actions{display:flex;gap:22px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:28px;animation:receipt-rise .7s .3s both}.receipt-actions .button{font-size:13px}
@keyframes receipt-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes receipt-check{to{stroke-dashoffset:0}}
@media(max-width:600px){.receipt-main{padding-inline:16px;margin-top:28px}.reservation-receipt>header{padding:22px;flex-wrap:wrap}.receipt-reference{text-align:left}.reservation-receipt>section,.reservation-receipt>footer{padding:22px}.receipt-total strong{font-size:28px}.profile-tabs a{padding:10px 14px}.receipt-actions{gap:15px}}
@media(prefers-reduced-motion:reduce){.receipt-intro,.reservation-receipt,.receipt-actions,.receipt-check path{animation:none}.receipt-check path{stroke-dashoffset:0}}
@media print{body>header,.receipt-actions,.receipt-intro{display:none!important}.receipt-main{margin:0;max-width:none;padding:0}.reservation-receipt{animation:none;box-shadow:none;border:1px solid #999}.reservation-receipt>header{display:flex!important}.reservation-receipt{break-inside:avoid}body{background:white}.reservation-receipt *{color:#111!important}}
.reservation-receipt .eyebrow span[data-lv]{width:auto;height:auto;background:none;border-radius:0}.receipt-tool{overflow-wrap:anywhere}.profile-card input[type=email]{overflow-wrap:anywhere}
.auth-main .registration-phone{display:flex;align-items:stretch;margin-top:8px;border:1px solid #c8d2c0;background:white}.auth-main .phone-prefix{display:flex;align-items:center;flex-shrink:0;padding:12px;background:#e9eee4;border-right:1px solid #c8d2c0;font-size:14px;color:var(--green)}.auth-main .registration-phone input{margin:0;border:0;min-width:0;flex:1;width:100%;letter-spacing:1px}.auth-main .registration-phone:focus-within{outline:2px solid var(--green);outline-offset:2px}.auth-main .phone-hint{font-size:11px;color:#64745e;margin-top:-10px}

/* Keep each scene legible within the shallow process banners. */
.process-row{min-height:250px}.process-row::before{background-color:#102b22;background-repeat:no-repeat;background-size:563px 100%,auto 150%;background-position:right center,right 25%;opacity:.75}.process-row:hover::before,.process-row:focus-visible::before{opacity:1}
.process-row.process-choose::before{background-image:linear-gradient(90deg,#102b22,#102b2299 30%,#102b2240),url('/assets/process-choose.webp')}.process-row.process-request::before{background-image:linear-gradient(90deg,#102b22,#102b2299 30%,#102b2240),url('/assets/process-request.webp')}.process-row.process-complete::before{background-image:linear-gradient(90deg,#102b22,#102b2299 30%,#102b2240),url('/assets/process-complete.webp')}
@media(max-width:760px){.process-row{min-height:230px}.process-row::before{background-size:518px 100%,auto 150%;background-position:center,center 25%}}

.logo:has(.logo-image){display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.logo-image{display:block;width:180px;height:54px;object-fit:contain;object-position:left center}.owner-body header .logo-image{width:175px;height:52px}body:not(.owner-body)>header .logo-image{width:180px;height:54px}body:not(.owner-body)>footer .logo-image{width:210px;height:63px;filter:brightness(0) invert(1)}.receipt-logo .logo-image{width:170px;height:51px}
@media(max-width:760px){.logo-image,.owner-body header .logo-image,body:not(.owner-body)>header .logo-image{width:130px;height:40px}body:not(.owner-body)>footer .logo-image{width:175px;height:52px}}
