body.quote-page-body{background:#f4f4f2;color:#111;min-height:100vh}.quote-page{padding:64px 28px 88px}.quote-shell{max-width:860px;margin:0 auto}.quote-intro{max-width:720px;margin-bottom:30px}.quote-eyebrow{display:block;margin-bottom:12px;font-size:11px;font-weight:700;letter-spacing:.16em}.quote-intro h1{margin:0 0 12px;font-size:clamp(38px,5vw,58px);line-height:1.05;letter-spacing:-.04em;font-weight:500}.quote-intro p{margin:0;max-width:690px;font-size:16px;line-height:1.65;color:#666}.quote-form{display:grid;gap:14px}.quote-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:transparent}.quote-mode-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-height:160px;padding:20px 22px;border:1px solid #d2d3d1;border-radius:14px;background:#fff;color:#111;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.quote-mode-button:hover{border-color:#a5a7a5}.quote-option-top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:5px}.quote-select-dot{width:25px;height:25px;border:1.5px solid #878b8d;border-radius:50%;display:grid;place-items:center;flex:0 0 25px;font-size:14px;font-weight:700;line-height:1}.quote-option-icon{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;opacity:.78}.quote-mode-button strong{font-size:17px;font-weight:650;line-height:1.28}.quote-mode-button small{font-size:12px;line-height:1.55;font-weight:400;color:#6d6d6d}.quote-mode-button.is-selected{background:#111;color:#fff;border-color:#111;box-shadow:0 6px 18px rgba(0,0,0,.08)}.quote-mode-button.is-selected small{color:#d3d3d3}.quote-mode-button.is-selected .quote-select-dot{background:#fff;border-color:#fff;color:#111}.quote-mode-button.is-selected .quote-select-dot::after{content:'✓'}.quote-card{background:#fff;border:1px solid #d9d9d6;border-radius:14px;padding:28px}.quote-fields{display:grid;gap:18px}.quote-fields.two-column{grid-template-columns:1fr 1fr}.quote-fields label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}.quote-fields .full-width{grid-column:1/-1}.field-optional{font-weight:400;color:#888}.quote-fields input,.quote-fields textarea,.quote-fields select{width:100%;box-sizing:border-box;border:1px solid #d1d3d4;background:#fff;color:#111;border-radius:9px;padding:14px 15px;font:inherit;font-size:15px;outline:none}.quote-fields textarea{resize:vertical;min-height:126px;line-height:1.55}.quote-fields input:focus,.quote-fields textarea:focus,.quote-fields select:focus{border-color:#111;box-shadow:0 0 0 1px #111}.quote-visit-section{padding:20px;background:#f7f7f6;border:1px solid #d7d9da;border-radius:10px}.visit-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:16px}.visit-heading strong{font-size:15px}.visit-heading span{font-size:12px;line-height:1.45;color:#666}.quote-visit-section>small{display:block;margin-top:12px;color:#777;font-size:11px;line-height:1.45}.week-calendar{background:#fff;border:1px solid #d9d9d6;border-radius:12px;padding:14px}.week-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;margin-bottom:12px}.week-calendar-head strong{text-align:center;font-size:13px}.week-nav{width:42px;height:42px;border:1px solid #d1d3d4;border-radius:9px;background:#fff;color:#111;font-size:24px;line-height:1;cursor:pointer}.week-nav:disabled{opacity:.3;cursor:not-allowed}.week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.week-day{min-width:0;min-height:92px;padding:10px 6px;border:1px solid #d9d9d6;border-radius:9px;background:#fff;color:#111;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit;cursor:pointer}.week-day span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#777}.week-day strong{font-size:20px;font-weight:650}.week-day small{font-size:9px;color:#6d6d6d}.week-day:hover:not(:disabled){border-color:#111}.week-day.is-selected{background:#111;color:#fff;border-color:#111}.week-day.is-selected span,.week-day.is-selected small{color:#ddd}.week-day:disabled{background:#f2f2f1;color:#aaa;cursor:not-allowed}.visit-time-panel{margin-top:14px;padding-top:14px;border-top:1px solid #e3e3e0}.visit-time-title{display:block;margin-bottom:10px;font-size:12px;font-weight:650}.visit-time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.visit-time-slot{min-height:44px;padding:10px;border:1px solid #d1d3d4;border-radius:8px;background:#fff;color:#111;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.visit-time-slot:hover{border-color:#111}.visit-time-slot.is-selected{background:#111;color:#fff;border-color:#111}.visit-selection{margin:12px 0 0;padding:11px 12px;background:#ececea;border-radius:8px;font-size:12px;line-height:1.45;font-weight:600}.quote-file-box{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:74px;padding:16px;border:1px dashed #c3c6c7;border-radius:9px;background:#fafafa;cursor:pointer}.quote-file-box>span{display:flex;flex-direction:column;gap:4px}.quote-file-box strong{font-size:14px}.quote-file-box small{font-size:11px;line-height:1.45;color:#777;font-weight:400}.quote-file-box input{width:auto;max-width:250px;border:0;padding:0;background:transparent;box-shadow:none}.quote-file-error{margin:0;padding:10px 12px;border:1px solid #e2c5c5;border-radius:9px;background:#fff3f3;color:#991b1b;font-size:12px}.quote-submit-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;background:#111;color:#fff;border-radius:12px}.quote-submit-row>span{font-size:12px;color:#cfcfcf}.quote-submit{min-width:160px;padding:14px 20px;border:1px solid #fff;border-radius:8px;background:#fff;color:#111;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.quote-submit:hover{background:#ececec}.quote-honey{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.quote-thanks{max-width:780px;margin:0 auto;padding:120px 40px;text-align:center}.quote-thanks .quote-eyebrow{margin-bottom:18px}.quote-thanks h1{font-size:clamp(42px,6vw,68px);line-height:1.05;font-weight:500;letter-spacing:-.04em;margin:0 0 20px}.quote-thanks p{max-width:620px;margin:0 auto 34px;font-size:17px;line-height:1.7;color:#666}.quote-thanks a{display:inline-flex;padding:16px 26px;border-radius:8px;background:#111;color:#fff;text-decoration:none;font-size:14px;font-weight:600}@media(max-width:700px){.quote-page{padding:44px 18px 64px}.quote-fields.two-column{grid-template-columns:1fr}.quote-fields .full-width{grid-column:auto}.quote-card{padding:22px 18px}.quote-submit-row{flex-direction:column;align-items:stretch}.quote-submit{width:100%}.visit-heading{display:block}.visit-heading span{display:block;margin-top:5px}.quote-file-box{align-items:flex-start;flex-direction:column}.quote-file-box input{max-width:100%}.quote-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-mode-button{min-height:160px;padding:17px 16px}.quote-option-icon{width:36px;height:36px}.quote-mode-button strong{font-size:15px}.quote-mode-button small{font-size:11px}.week-calendar{padding:11px}.week-days{gap:5px}.week-day{min-height:78px;padding:8px 3px}.week-day strong{font-size:18px}.week-day span{font-size:9px}.week-day small{font-size:8px}.visit-time-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.quote-intro h1{font-size:38px}.quote-intro p{font-size:14px}.quote-mode{gap:10px}.quote-mode-button{min-height:164px;padding:15px 14px;border-radius:12px}.quote-select-dot{width:23px;height:23px;flex-basis:23px}.quote-option-icon{width:32px;height:32px}.quote-mode-button strong{font-size:14px}.quote-mode-button small{font-size:10.5px;line-height:1.5}.quote-card{padding:18px 14px;border-radius:12px}.quote-visit-section{padding:14px}.week-calendar-head{grid-template-columns:38px 1fr 38px}.week-nav{width:38px;height:38px}.week-days{grid-template-columns:repeat(7,1fr);gap:3px}.week-day{min-height:70px;border-radius:7px}.week-day strong{font-size:17px}.week-day small{display:none}}
