.estimate-page main{background:#fff}.estimate-page .estimate-shell{width:min(1120px,100% - 48px);margin-inline:auto}.estimate-page .estimate-head{text-align:center;margin-top:24px}.estimate-page .estimate-head h1{color:var(--ink);margin:0;font-size:25px;font-weight:600;line-height:1.5}.estimate-page .estimate-head p{margin:8px 0 0;font-size:15px;line-height:1.75}.estimate-steps{margin:34px auto 38px}.estimate-steps ol{grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.estimate-steps li{color:var(--muted);justify-items:center;gap:9px;font-size:14px;line-height:1.5;display:grid;position:relative}.estimate-steps li:not(:last-child):after{content:"";background:var(--line);width:calc(100% - 52px);height:1px;position:absolute;top:14px;left:calc(50% + 26px)}.estimate-steps li:not(:last-child):before{content:"›";z-index:1;color:var(--muted);background:#fff;padding:0 5px;font-size:22px;line-height:28px;position:absolute;top:1px;left:calc(100% - 4px)}.estimate-steps .step-number{z-index:2;color:#fff;background:#a7a7aa;border-radius:50%;place-items:center;width:30px;height:30px;font:500 14px/1 Roboto,sans-serif;display:grid;position:relative}.estimate-steps .is-current,.estimate-steps .is-done{color:var(--ink)}.estimate-steps .is-current .step-number{background:var(--navy)}.estimate-steps .is-done .step-number{background:var(--ink)}.estimate-section{border:1px solid var(--line);background:#fff;margin-top:16px}.estimate-section>h2{margin:0;padding:18px 24px 14px;font-size:20px;font-weight:600;line-height:1.5}.estimate-products{padding:0 24px}.estimate-product{border-top:1px solid var(--line);grid-template-columns:220px minmax(0,1fr) 250px;gap:26px;padding:24px 0;display:grid}.estimate-products .estimate-product:first-child{border-top:0;padding-top:8px}.estimate-empty{text-align:center;justify-items:center;gap:18px;padding:24px;display:grid}.estimate-empty p{margin:0;font-size:16px;font-weight:500}.estimate-empty[hidden]{display:none}.estimate-product-image{background:var(--soft);place-items:center;height:160px;display:grid;position:relative;overflow:hidden}.estimate-product-image img{object-fit:contain;width:100%;height:100%;padding:12px;position:absolute;inset:0}.estimate-product-info h3{margin:0 0 12px;font-size:18px;font-weight:600;line-height:1.5}.estimate-product-info h3 a{color:inherit;text-decoration:none}.estimate-product-info h3 a:hover{color:var(--navy);text-decoration:underline}.estimate-product-info dl,.estimate-summary-list{margin:0}.estimate-product-info div,.estimate-summary-list div{grid-template-columns:112px minmax(0,1fr);gap:10px;margin-top:6px;font-size:14px;line-height:1.6;display:grid}.estimate-product-info dt,.estimate-summary-list dt{font-weight:600}.estimate-product-info dd,.estimate-summary-list dd{margin:0}.estimate-product-controls{border-left:1px solid var(--line);align-content:start;gap:16px;padding-left:24px;display:grid}.estimate-control-row{grid-template-columns:110px 1fr 24px;align-items:center;gap:8px;display:grid}.estimate-control-row label,.estimate-control-row>span:first-child{font-size:14px;font-weight:600}.estimate-page select,.estimate-page input,.estimate-page textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:0;padding:9px 12px;font:500 16px/1.5 Noto Sans JP,sans-serif}.estimate-page textarea{resize:vertical;min-height:128px}.estimate-page select:focus,.estimate-page input:focus,.estimate-page textarea:focus{border-color:var(--navy);outline:3px solid #20457224}.estimate-subtotal{white-space:nowrap;font:700 20px/1.4 Roboto,Noto Sans JP,sans-serif}.estimate-remove{border:1px solid var(--line);min-height:36px;color:var(--ink);cursor:pointer;background:#fff;padding:6px 12px;font-size:14px}.estimate-remove:hover,.estimate-remove:focus-visible{border-color:var(--navy);color:var(--navy)}.estimate-total-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:66px;padding:14px 24px;font-size:18px;font-weight:600;display:flex}.estimate-total-row output,.estimate-total-row strong{font:700 22px/1.4 Roboto,Noto Sans JP,sans-serif}.delivery-details summary{cursor:pointer;align-items:center;min-height:60px;padding:14px 24px;font-size:18px;font-weight:600;list-style:none;display:flex}.delivery-details summary::-webkit-details-marker{display:none}.delivery-details summary:before{content:"+";color:#fff;background:var(--navy);place-items:center;width:26px;height:26px;margin-right:12px;font:500 20px/1 Roboto,sans-serif;display:grid}.delivery-details[open] summary:before{content:"−"}.delivery-body{border-top:1px solid var(--line);padding:24px}.delivery-intro{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.75}.delivery-block+.delivery-block{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.delivery-block h3{align-items:center;gap:10px;margin:0 0 18px;font-size:18px;font-weight:600;display:flex}.section-number{color:#fff;background:var(--navy);border-radius:50%;place-items:center;width:24px;height:24px;font:500 13px/1 Roboto,sans-serif;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px;display:grid}.field,.form-row{min-width:0}.field>label,.field-label,.form-row>label,.form-label{align-items:center;gap:8px;margin-bottom:8px;font-size:16px;font-weight:500;display:flex}.required{color:#fff;background:var(--emphasis);padding:1px 5px;font-size:11px;line-height:18px;display:inline-block}.optional{color:var(--muted);font-size:12px}.field-note{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.6}.choice-list{flex-wrap:wrap;gap:14px 28px;display:flex}.choice-list.stacked{gap:14px;display:grid}.choice-list label,.consent-check{cursor:pointer;align-items:flex-start;gap:10px;font-size:15px;line-height:1.6;display:flex}.estimate-page input[type=radio],.estimate-page input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--navy);flex:none;margin:2px 0 0;padding:0}.choice-description{color:var(--muted);font-size:13px;display:block}.address-fields{grid-template-columns:160px 150px 1fr;gap:10px;display:grid}.address-fields .address-line{grid-column:1/-1}.address-lookup-message{color:var(--emphasis);grid-column:1/-1;margin:0;font-size:13px;line-height:1.5}.address-lookup-message[data-tone=note]{color:var(--muted)}.address-lookup-message:empty{display:none}.subtle-button{border:1px solid var(--navy);min-height:44px;color:var(--navy);cursor:pointer;background:#fff;padding:8px 14px;font-size:14px}.subtle-button:hover,.subtle-button:focus-visible{color:#fff;background:var(--navy)}.subtle-button[aria-busy=true]{cursor:progress;opacity:.7}.delivery-estimate{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin:28px -24px -24px;padding:18px 24px;font-size:18px;font-weight:600;display:flex}.delivery-estimate strong{font:700 22px/1.4 Roboto,Noto Sans JP,sans-serif}.grand-total{padding:24px}.grand-total-grid{grid-template-columns:1fr 36px 1fr 36px 1fr;align-items:center;gap:12px;display:grid}.estimate-section.is-grand-total{border-color:var(--sky-line);background:var(--sky-soft)}.total-box{border:1px solid var(--line);text-align:center;background:#fff;min-height:92px;padding:15px}.total-box span{font-size:14px;font-weight:600;line-height:1.5;display:block}.total-box strong,.total-box output{margin-top:5px;font:700 28px/1.3 Roboto,Noto Sans JP,sans-serif;display:block}.total-box:last-child output{color:var(--navy)}.total-symbol{text-align:center;font:700 24px/1 Roboto,sans-serif}.grand-total-grid.is-two-column{grid-template-columns:1fr 36px 1fr;align-items:stretch}.grand-total-grid.is-two-column .total-box{flex-direction:column;justify-content:flex-start;padding-top:20px;display:flex}.grand-total-grid.is-two-column .total-symbol{align-self:center}.grand-total-grid.is-two-column output{color:var(--navy)}.total-box .total-quote{color:var(--navy);font-family:Noto Sans JP,sans-serif}.total-box .total-box-note{margin-top:6px;font-size:13px;font-weight:400;line-height:1.5}.total-note{text-align:center;margin:12px 0 0;font-size:13px;line-height:1.6}.customer-form{padding:10px 24px 24px}.form-row{grid-template-columns:220px minmax(0,1fr);gap:24px;padding:10px 0;display:grid}.form-row>label,.form-row>.form-label{margin:10px 0 0}.form-address{grid-template-columns:160px 150px 1fr;gap:10px;display:grid}.form-address input:nth-of-type(2),.form-address input:nth-of-type(3){grid-column:1/-1}.form-error{color:var(--emphasis);margin:6px 0 0;font-size:13px;line-height:1.5;display:none}.has-error .form-error,.form-error.is-visible{display:block}.has-error input,.has-error select,.has-error textarea{border-color:var(--emphasis)}.consent-section{border-top:1px solid var(--line);grid-template-columns:220px minmax(0,1fr);gap:24px;padding:20px 24px;display:grid}.consent-section h3{margin:0;font-size:16px;font-weight:600}.consent-section p{margin:0 0 10px;font-size:14px;line-height:1.75}.consent-actions{margin:0 0 12px}.consent-actions .subtle-button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.consent-note{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.is-legal-locked .consent-check{color:var(--muted);cursor:default}.is-legal-locked .consent-check input{cursor:not-allowed}.inline-link{color:var(--navy);text-underline-offset:3px;text-decoration:underline}.form-actions{justify-items:center;gap:12px;margin:28px auto 0;display:grid}.primary-button,.secondary-button{border:1px solid var(--navy);cursor:pointer;justify-content:center;align-items:center;width:min(420px,100%);min-height:48px;padding:10px 42px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:var(--navy);position:relative}.primary-button:after{content:"›";font-size:22px;font-weight:400;position:absolute;right:18px}.primary-button:hover,.primary-button:focus-visible{background:#153557}.primary-button:disabled{opacity:.6;cursor:progress}.submit-error{color:var(--emphasis);text-align:center;margin:16px 0 0;font-size:14px;line-height:1.6}.secondary-button{color:var(--navy);background:#fff}.secondary-button:hover,.secondary-button:focus-visible{color:#fff;background:var(--navy)}.estimate-flow{border:1px solid var(--line);margin:40px auto 50px;padding:22px 28px 26px}.estimate-flow h2{text-align:center;margin:0 0 24px;font-size:20px;font-weight:600}.estimate-flow ol{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.estimate-flow li{text-align:center;align-content:start;justify-items:center;padding:0 18px;display:grid;position:relative}.estimate-flow li:not(:last-child):after{content:"›";font-size:30px;font-weight:400;position:absolute;top:36px;right:-5px}.estimate-flow img{object-fit:contain;width:54px;height:54px}.estimate-flow .flow-number{display:none}.estimate-flow h3{margin:12px 0 6px;font-size:15px;font-weight:600}.estimate-flow p{margin:0;font-size:13px;line-height:1.65}.confirmation-products .estimate-product{grid-template-columns:200px minmax(0,1fr) 230px}.confirmation-products .estimate-product-controls{gap:12px}.confirm-amounts{border:1px solid var(--line);margin:0 24px 24px}.confirm-amount-row{border-top:1px dashed var(--line);justify-content:space-between;gap:24px;padding:16px 18px;display:flex}.confirm-amount-row:first-child{border-top:0}.confirm-amount-row strong{font-size:17px}.confirm-amount-row span{text-align:right;font-size:16px;font-weight:600}.confirm-amount-row small{color:var(--muted);margin-top:5px;font-size:12px;font-weight:400;display:block}.confirmation-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:15px}.confirmation-table th,.confirmation-table td{border:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:12px 16px}.confirmation-table th{background:var(--soft);width:230px;font-weight:600}.confirm-message{text-align:center;margin:28px 0 0;font-size:16px;line-height:1.75}.complete-hero{text-align:center;margin-top:54px}.complete-mark{color:#2f8637;border:3px solid #2f8637;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 24px;font-size:42px;line-height:1;display:grid}.complete-hero h1{margin:0;font-size:30px;font-weight:600;line-height:1.5}.complete-lead{margin:22px auto 0;font-size:16px;line-height:2}.request-number{border:1px solid var(--line);text-align:center;max-width:720px;margin:42px auto 50px;padding:28px}.request-number strong{letter-spacing:.04em;font:600 24px/1.5 Roboto,Noto Sans JP,sans-serif;display:block}.request-number p{margin:12px 0 0;font-size:14px;line-height:1.75}.estimate-flow-complete{border:0;border-top:1px solid var(--line);padding:28px 0 0}.estimate-flow-complete .flow-number{color:#fff;background:var(--muted);border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:18px;font:500 14px/1 Roboto,sans-serif;display:grid}.mail-notice{border:1px solid var(--line);background:var(--soft);grid-template-columns:74px minmax(0,1fr);align-items:center;gap:24px;max-width:860px;margin:48px auto 30px;padding:24px 30px;display:grid}.mail-notice img{width:64px;height:64px}.mail-notice h2{margin:0;font-size:18px;font-weight:600}.mail-notice p{margin:7px 0 0;font-size:14px;line-height:1.7}.complete-actions{margin-bottom:60px}@media (width<=1000px){.estimate-product,.confirmation-products .estimate-product{grid-template-columns:180px minmax(0,1fr)}.estimate-product-controls{border-top:1px solid var(--line);border-left:0;grid-column:2;padding:18px 0 0}.form-row,.consent-section{grid-template-columns:180px minmax(0,1fr)}}@media (width<=640px){.estimate-page .estimate-shell{width:calc(100% - 32px)}.estimate-page .estimate-head{text-align:left;margin-top:20px}.estimate-page .estimate-head h1{font-size:21px}.estimate-page .estimate-head p{font-size:14px}.estimate-steps{margin:26px 0 30px}.estimate-steps li{gap:7px}.estimate-steps li:not(:last-child):before{display:none}.estimate-steps li:not(:last-child):after{width:calc(100% - 38px);left:calc(50% + 19px)}.estimate-steps .step-label{text-align:center;font-size:10px}.estimate-steps .step-number{width:28px;height:28px}.estimate-section>h2{padding:16px 16px 12px;font-size:18px}.estimate-products{padding:0 16px}.estimate-product,.confirmation-products .estimate-product{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:20px 0}.estimate-product-image{height:96px}.estimate-product-image img{padding:8px}.estimate-product-info h3{font-size:16px}.estimate-product-info div,.estimate-summary-list div{grid-template-columns:70px minmax(0,1fr);gap:5px;font-size:12px}.estimate-product-controls{grid-column:1/-1;gap:12px}.estimate-control-row{grid-template-columns:90px 1fr 20px}.estimate-total-row{min-height:60px;padding:12px 16px;font-size:16px}.estimate-total-row output,.estimate-total-row strong{font-size:20px}.delivery-details summary{padding:14px 16px;font-size:16px}.delivery-body,.grand-total,.customer-form{padding:20px 16px}.field-grid,.form-row,.consent-section{grid-template-columns:1fr;gap:16px}.delivery-block h3{font-size:16px}.address-fields,.form-address{grid-template-columns:1fr}.address-fields .address-line,.form-address input:nth-of-type(2),.form-address input:nth-of-type(3){grid-column:auto}.delivery-estimate{margin:24px -16px -20px;padding:16px;font-size:15px}.grand-total-grid,.grand-total-grid.is-two-column{grid-template-columns:1fr}.total-symbol{line-height:20px}.form-row{padding:8px 0}.form-row>label,.form-row>.form-label{margin:0}.consent-section{padding:18px 16px}.consent-actions .subtle-button{width:100%}.primary-button,.secondary-button{min-height:48px;padding-inline:32px}.estimate-flow{margin:36px 0 40px;padding:20px 16px}.estimate-flow h2{font-size:18px;line-height:1.6}.estimate-flow ol{grid-template-columns:1fr;gap:24px}.estimate-flow li{text-align:left;grid-template-rows:auto auto;grid-template-columns:30px 50px minmax(0,1fr);place-items:center start;gap:2px 14px;padding:0}.estimate-flow li:not(:last-child):after{content:"↓";font-size:18px;inset:auto auto -23px 50px}.estimate-flow img{grid-area:1/2/3;width:46px;height:46px}.estimate-flow .flow-number{color:#fff;background:var(--muted);border-radius:50%;grid-area:1/1/3;place-items:center;width:28px;height:28px;margin:0;font:500 13px/1 Roboto,sans-serif;display:grid}.estimate-flow h3,.estimate-flow p{grid-column:3;margin:0}.confirm-amounts{margin:0 16px 16px}.confirm-amount-row{gap:7px;padding:14px;display:grid}.confirm-amount-row span{text-align:left}.confirmation-table,.confirmation-table tbody,.confirmation-table tr,.confirmation-table th,.confirmation-table td{width:100%;display:block}.confirmation-table tr{border:1px solid var(--line);border-bottom:0}.confirmation-table tr:last-child{border-bottom:1px solid var(--line)}.confirmation-table th,.confirmation-table td{border:0;padding:10px 12px}.confirmation-table th{border-bottom:1px solid var(--line)}.confirm-message{text-align:left;font-size:14px}.complete-hero{margin-top:40px}.complete-mark{width:60px;height:60px;font-size:34px}.complete-hero h1{font-size:23px}.complete-lead{font-size:14px;line-height:1.85}.request-number{margin:32px 0 40px;padding:22px 16px}.request-number strong{font-size:18px}.estimate-flow-complete{padding-inline:0}.mail-notice{grid-template-columns:48px minmax(0,1fr);gap:16px;margin-top:36px;padding:20px 16px}.mail-notice img{width:44px;height:44px}.mail-notice h2{font-size:16px}}
