:root{font-family:var(--pc-font);color:#30372f;background:#f7f5ef;font-synthesis:none;--red:#232b2b;--ink:#30372f;--muted:#73796e;--line:#dfdfd5;--cream:#f7f5ef;--green:#232b2b}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #bf9554;outline-offset:4px}.site-header{min-height:94px;display:flex;justify-content:space-between;align-items:center;padding:20px max(5vw,24px);gap:24px;background:var(--cream);border-bottom:1px solid var(--line)}.logo{font-family:var(--pc-display);font-size:38px;letter-spacing:-2px;color:var(--red);font-weight:bold;display:flex;align-items:center;gap:21px}.logo span{font-family:var(--pc-font);font-weight:500;color:var(--ink);font-size:10px;letter-spacing:2.4px;padding:10px 0 10px 20px;border-left:1px solid #c9c9be}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav a:hover{color:var(--red)}.nav-login{border:1px solid #b9bdb0;padding:11px 17px;border-radius:5px}.account{display:flex;align-items:center;gap:10px}.account-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-button{border:0;background:transparent;padding:5px 0;color:var(--muted);font-size:12px;text-decoration:underline}.site-footer{margin:0 max(5vw,24px);padding:24px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}.separator{margin:0 10px;color:#b1b6a7}.site-footer a{color:var(--red)}.hero{display:grid;grid-template-columns:46% 54%;min-height:525px;padding:40px max(5vw,24px) 32px;gap:0}.hero-copy{padding:45px 30px 28px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:bold;color:var(--red);margin:0 0 20px}.hero h1{font-family:var(--pc-display);font-weight:normal;font-size:clamp(38px,4.5vw,66px);line-height:1.08;letter-spacing:-2px;margin:0 0 24px}.hero h1 em{color:var(--red);font-style:normal}.hero p{max-width:370px;font-size:14px;color:var(--muted);line-height:1.8;margin:0 0 28px}.hero-image{position:relative;min-height:440px;border-radius:90px 6px 6px 6px;overflow:hidden;isolation:isolate}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#333a2866)}.hero-caption{position:absolute;bottom:23px;left:25px;color:white;font-size:11px;letter-spacing:1px;z-index:1}.color-stack{position:absolute;right:20px;top:20px;display:flex;gap:6px;z-index:2}.color-stack span{height:38px;width:32px;border:3px solid #faf8efcc;border-radius:3px}.c-sage{background:#899583}.c-ivory{background:#e2e0d0}.c-charcoal{background:#323735}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;min-height:46px;padding:13px 21px;font-size:13px;border-radius:5px;border:1px solid transparent;text-align:center}.button.primary{background:var(--red);color:white}.button.primary:hover{background:#92142d}.button.secondary{border-color:#b8bead;background:transparent;color:var(--ink)}.button.danger{background:var(--red);color:white}.button.small{padding:9px 14px;min-height:37px;font-size:12px}.button.light{background:#fff;color:var(--ink)}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.home-actions{padding:5px max(5vw,24px) 42px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.action-card{padding:25px;background:#eeeee5;border-radius:7px;display:flex;flex-direction:column;align-items:flex-start;position:relative;min-height:190px;border:1px solid transparent}.action-card:hover{border-color:#c6cebb}.action-card.first{background:#232b2b;color:#fff}.action-card .num{font-size:10px;letter-spacing:2px;opacity:.6}.action-card h2{font-family:var(--pc-display);font-size:25px;font-weight:normal;margin:18px 0 10px}.action-card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0;max-width:260px}.action-card.first p{color:#d6dfce}.action-card .arrow{position:absolute;right:23px;top:22px;font-size:21px}.tag{font-size:9px;letter-spacing:1px;border:1px solid #c7cbbb;padding:4px 7px;border-radius:3px;margin-left:8px;vertical-align:middle}.page{max-width:1260px;margin:auto;padding:45px max(5vw,24px) 60px;min-height:65vh}.breadcrumb{color:var(--muted);font-size:12px;margin-bottom:30px;display:flex;gap:10px}.breadcrumb a{text-decoration:underline}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:35px}.page-heading h1,.auth h1,.state-page h1{font-family:var(--pc-display);font-size:42px;font-weight:normal;letter-spacing:-1px;margin:0 0 12px}.page-heading p,.intro-text{color:var(--muted);font-size:14px;line-height:1.7;max-width:520px;margin:0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-card{display:block;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fcfbf7;transition:transform .2s}.category-card:hover{transform:translateY(-4px)}.category-image{height:230px;position:relative;overflow:hidden}.category-image img{width:100%;height:100%;object-fit:cover}.category-image.exterior{background:#d9ded1}.category-image.coating{background:#d6c3a9}.category-image .category-word{position:absolute;bottom:23px;left:23px;right:20px;font-family:var(--pc-display);font-size:35px;color:#4f5d4a;line-height:1.2}.category-image.coating .category-word{color:#70563e}.category-image .category-number{font-size:80px;opacity:.13;font-family:var(--pc-display);position:absolute;right:20px;top:16px}.category-info{padding:23px}.category-info h2{font-size:18px;font-weight:500;margin:0 0 10px;display:flex;justify-content:space-between;gap:10px}.category-info p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 20px}.status-label{color:var(--green);font-size:11px}.status-label.pending{color:var(--muted)}.room-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.room-card,.project-card{border:1px solid var(--line);background:#fcfbf7;border-radius:8px;overflow:hidden}.room-card img,.project-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.room-info,.project-info{padding:20px}.room-info h2,.project-info h2{font-size:18px;font-weight:500;margin:0 0 10px}.room-info p,.project-info p{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 18px}.project-actions{display:flex;gap:9px;align-items:center;justify-content:space-between}.editor-page{padding:25px max(3vw,16px) 38px;max-width:1540px;margin:auto}.editor-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.editor-title{display:flex;flex-direction:column;gap:7px}.editor-title h1{font-family:var(--pc-display);font-size:25px;font-weight:normal;margin:0}.editor-title small{font-size:11px;color:var(--muted)}#editor-frame{width:100%;border:0;display:block;min-height:620px;background:var(--cream);border-radius:12px}.draft-note{font-size:12px;color:var(--muted);margin-top:15px;line-height:1.6}.auth{max-width:1050px;margin:55px auto 65px;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden;min-height:530px}.auth-photo{position:relative;background:#deddd2}.auth-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.auth-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#283326c9)}.auth-photo-copy{position:absolute;bottom:35px;left:35px;right:35px;z-index:1;color:#fff}.auth-photo-copy h2{font-family:var(--pc-display);font-size:33px;font-weight:normal;line-height:1.2}.auth-photo-copy p{font-size:12px;line-height:1.8;color:#e6e9dc}.auth-form{padding:40px;background:#fcfbf7}.auth h1{font-size:34px}.auth p{font-size:13px;line-height:1.7;color:var(--muted)}.auth form{margin-top:25px}.auth label,dialog label{display:block;font-size:12px;font-weight:500;margin:16px 0 0}.auth input,dialog input{display:block;width:100%;padding:12px;border:1px solid #cfd2c6;border-radius:5px;background:#fff;color:var(--ink);margin-top:8px;font-size:14px}.auth form .button{width:100%;margin-top:16px}.auth .switch{font-size:12px;text-align:center;margin-top:24px}.auth .switch a{color:var(--red);text-decoration:underline}.form-error{font-size:12px;color:#a21731!important;min-height:0;margin:12px 0 0;line-height:1.6}.form-success{font-size:12px;color:#35663f!important}.auth-dev{background:#eeeee4;padding:13px;border-radius:5px;font-size:11px!important;margin-top:20px}.auth-dev a{text-decoration:underline;color:var(--red)}.state-page{max-width:650px;margin:65px auto 80px;padding:0 24px;min-height:45vh}.state-page p{color:var(--muted);font-size:14px;line-height:1.8}.state-page .button-row{margin-top:26px}.state-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#e6ebdd;color:#45613d;font-size:24px;margin-bottom:25px}.mail-list{display:grid;gap:15px}.mail-item{border:1px solid var(--line);padding:22px;border-radius:7px;background:#fcfbf7;word-break:break-word}.mail-item h2{font-size:16px;margin:0 0 9px}.mail-item p{font-size:12px;color:var(--muted);margin:8px 0}.mail-banner{background:#ece4d3;color:#6e5a39;padding:16px 20px;border-radius:6px;font-size:13px;line-height:1.7;margin-bottom:26px}.empty{border:1px dashed #bfc6b3;padding:55px 25px;text-align:center;border-radius:8px}.empty h2{font-family:var(--pc-display);font-size:28px;font-weight:normal}.empty p{font-size:13px;line-height:1.8;color:var(--muted);max-width:450px;margin:0 auto 24px}.loading{padding:90px 24px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);max-width:calc(100vw - 32px);padding:14px 22px;background:#2f4434;color:white;border-radius:7px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:10}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:0;border-radius:10px;padding:0;background:#fcfbf7;color:var(--ink);width:min(460px,calc(100vw - 30px));box-shadow:0 20px 80px #0003}dialog::backdrop{background:#252c2666;backdrop-filter:blur(3px)}dialog form,.dialog-content{padding:34px;position:relative}dialog h2{font-family:var(--pc-display);font-weight:normal;font-size:30px;margin:0 0 12px}dialog p{font-size:13px;line-height:1.7;color:var(--muted)}dialog form>.button{margin-top:18px;width:100%}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:25px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:950px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-top:25px}.hero-image{min-height:390px}.hero h1{font-size:44px}.category-grid,.room-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.category-grid .category-card:last-child{grid-column:1/-1}.category-grid .category-card:last-child .category-image{height:160px}.auth{margin:35px 24px}.auth-form{padding:28px}.logo{font-size:32px}.logo span{display:none}nav{gap:19px}}@media(max-width:650px){.site-header{padding:16px 20px;min-height:78px;gap:12px}.logo{font-size:30px}nav{gap:12px;font-size:11px}nav>a:first-child{display:none}.nav-login{padding:9px 12px}.account-name{max-width:85px}.hero{grid-template-columns:1fr;padding:30px 20px;gap:25px}.hero-copy{padding:5px 0 0}.hero h1{font-size:46px}.hero-image{min-height:330px;border-radius:65px 5px 5px 5px}.home-actions{grid-template-columns:1fr;padding:0 20px 35px;gap:12px}.action-card{min-height:155px;padding:22px}.action-card h2{margin-top:10px}.site-footer{margin:0 20px;font-size:10px;line-height:1.8}.page{padding:30px 20px 40px}.page-heading{flex-direction:column;align-items:flex-start;gap:18px}.page-heading h1{font-size:36px}.category-grid,.room-grid,.project-grid{grid-template-columns:1fr}.category-grid .category-card:last-child{grid-column:auto}.category-image,.category-grid .category-card:last-child .category-image{height:190px}.auth{grid-template-columns:1fr;margin:25px 20px}.auth-photo{min-height:180px}.auth-photo-copy{bottom:15px;left:25px}.auth-photo-copy h2{font-size:27px;margin-bottom:8px}.auth-photo-copy p{margin-bottom:0}.auth-form{padding:28px 24px}.auth-photo-copy br{display:none}.editor-page{padding:18px 10px 30px}.editor-toolbar{padding:0 7px}.editor-title h1{font-size:23px}.editor-toolbar .button-row{width:100%}.editor-toolbar .button-row .button{flex:1}.editor-toolbar .button-row .button.small{font-size:11px;padding:10px}#editor-frame{min-height:950px}.state-page{margin-top:45px}.site-footer span:nth-child(2){width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:400px){.account-name{display:none}.site-header nav{gap:10px}.site-header .account{gap:0}}
.auth-single{grid-template-columns:minmax(0,1fr)}
@media(min-width:651px){.auth-single{max-width:560px;margin-inline:auto}}
.forgot-link{display:block;margin:-6px 0 14px auto;font-size:12px}
