/* Image-led service tiles: all controls remain visible, including on touch. */
.area-control{display:flex;align-items:center;gap:10px;margin-top:7px;max-width:238px}.area-pictogram{display:flex;align-items:center;justify-content:center;color:#c9a86b;flex:0 0 34px}.area-pictogram svg{width:32px;height:32px}.area-control .area-stepper{flex:1;min-width:0;margin-top:0}.area-control .area-stepper button{flex-basis:30px}.calculator-page .area-control input{font-size:18px;padding:9px 2px}.source-choices{display:flex;gap:8px;max-width:280px}.source-choices button{display:flex;align-items:center;gap:9px;flex:1;min-width:0;padding:9px 10px;border:1px solid #655d4d;border-radius:2px;background:#211e18;color:#e2c894;cursor:pointer}.source-choices svg{width:29px;height:29px;flex-shrink:0}.source-choices span{font-size:14px}.source-choices b{margin-left:auto;font-size:16px;font-weight:400}.source-choices button[aria-pressed=true]{background:#3a352b;border-color:#c9a86b;box-shadow:inset 0 0 0 1px #c9a86b;color:#f4e6ca}.property-setup{grid-template-columns:minmax(205px,.65fr) minmax(330px,1.6fr) minmax(250px,1fr)}
.area-stepper{display:flex;align-items:center;gap:0;border:1px solid #7d735f;border-radius:2px;margin-top:7px;background:#191712;overflow:hidden}.area-stepper button{flex:0 0 36px;align-self:stretch;border:0;background:#2e2a22;color:#e2c894;cursor:pointer;font-size:22px!important}.calculator-page .area-stepper input{flex:1;width:0;min-width:0;border:0;text-align:center;background:transparent;border-radius:0;appearance:textfield}.area-stepper input::-webkit-inner-spin-button{appearance:none}.area-stepper>span{font-size:12px;color:#c9a86b;margin-right:10px}.source-radios{display:flex;flex-wrap:wrap;gap:7px;padding:0;border:0;margin:0;min-width:0}.source-radios legend{font-size:12px;color:#c9a86b;margin-bottom:7px}.calculator-page .source-radios label{display:flex;align-items:center;gap:7px;border:1px solid #615949;border-radius:2px;padding:9px 10px;cursor:pointer;background:#201d17;font-size:12px}.source-radios input{accent-color:#c9a86b;margin:0}.source-radios label:has(input:checked){border-color:#c9a86b;background:#363229;color:#f2e6cc}.model-scale{flex:0 0 112px;min-width:0}.model-scale>span{display:block;font-size:9px;color:#c9a86b;margin-bottom:4px}.scale-switch{display:flex;align-items:center;border:1px solid #c9a86b;border-radius:2px;background:rgba(22,20,16,0.8);overflow:hidden}.calculator-page .scale-switch button{font-size:23px;line-height:1;padding:4px 6px;border:0;border-radius:0;color:#e2c894;flex:0 0 27px;min-height:32px;background:transparent}.scale-switch output{font-size:12px;flex:1;text-align:center;white-space:nowrap;color:#efeae1}.calculator-page .calc-card:has(.model-scale){min-width:0}.calculator-page .calc-card:has(.model-scale) .card-purchase{flex-wrap:wrap}.calculator-page .calc-card:has(.model-scale) .card-pricing{flex-basis:60px}
.calculator-page .calc-card{position:relative;isolation:isolate;min-height:228px;display:flex;align-items:stretch;background:#191611;border-radius:2px}
.calculator-page .calc-card .calc-card-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;margin:0;overflow:hidden;z-index:-2}
.calculator-page .calc-card .calc-card-photo img{width:100%;height:100%;object-fit:cover;border-radius:0}
.calculator-page .calc-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,8,6,.06) 0%,rgba(9,8,6,.15) 25%,rgba(9,8,6,.82) 56%,rgba(9,8,6,.96) 100%);pointer-events:none}
.calculator-page .calc-card.is-selected{border:2px solid #e2c894;box-shadow:0 0 0 1px #c9a86b}
.calculator-page .calc-card.is-selected::after{background:linear-gradient(180deg,rgba(19,17,13,0.031) 0%,rgba(19,17,13,0.125) 25%,rgba(30,27,21,0.851) 56%,rgba(30,27,21,0.98) 100%)}
.calculator-page .calc-card-copy{width:100%;min-width:0;padding:76px 13px 13px;display:flex;flex-direction:column;justify-content:flex-end;gap:5px}
.calculator-page .calc-card h3{font-size:17px;line-height:1.2;margin:0;color:#f9f7f2;text-shadow:0 1px 8px #0008}
.calculator-page .calc-card p{min-height:0;margin:0 0 4px;font-size:11px;line-height:1.4;color:#e2c894}
.calculator-page .calc-card-copy .card-purchase{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:8px;margin:0}
.calculator-page .calc-card-copy .card-pricing{display:grid;gap:3px;margin:0;min-width:0;flex:1}
.calculator-page .card-pricing small{font-size:10px;color:#c9a86b;line-height:1.25}
.calculator-page .card-pricing strong{font-size:17px;color:#f1ede5;line-height:1.25;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.calculator-page .card-purchase .card-stepper{flex:0 0 96px;grid-template-columns:28px minmax(0,1fr) 28px!important;background:rgba(20,18,15,0.8);border:1px solid #c9a86b}
.calculator-page .card-stepper button,.calculator-page .card-stepper input{background:transparent!important;min-height:34px;padding:4px 0!important;color:#f1ede5!important}
.calculator-page .card-stepper input{font-size:13px}
.calculator-page .calc-card button.card-add{width:36px;height:36px;flex:0 0 36px;border-radius:50%;font-size:23px;padding:0;line-height:1;background:#e2c894;color:#1e1b16}
.calculator-page .calc-card button.card-film-example{position:absolute;top:9px;right:9px;background:rgba(20,18,14,0.8)!important;border:1px solid rgba(201,168,107,0.376)!important;border-radius:2px;color:#f2e5cf!important;text-decoration:none;font-size:10px;padding:6px 9px;backdrop-filter:blur(8px)}
.calculator-page .calc-card .card-selected-label{position:absolute;top:10px;left:9px;font-size:10px;padding:5px 7px;margin:0;max-width:calc(100% - 18px);white-space:normal}
.calculator-page .calc-card:has(.card-film-example) .card-selected-label{max-width:calc(100% - 105px)}
.calculator-page .card-purchase>label{font-size:9px;gap:3px;flex:0 0 68px;color:#e2c894}
.calculator-page .card-purchase select{padding:5px 2px;font-size:11px;width:68px;background:rgba(23,21,17,0.867)}
.calculator-page .calc-card:has(.calc-card-photo.portrait){aspect-ratio:9/16;min-height:280px;max-width:240px;width:100%;justify-self:center}
.calculator-page .calc-card:has(.calc-card-photo.square){aspect-ratio:1;min-height:228px}
.calculator-page .calc-cards{align-items:stretch}
@media(max-width:760px){.calculator-page .calc-card{min-height:214px}.calculator-page .calc-card-copy{padding:65px 9px 10px;gap:5px}.calculator-page .calc-card h3{font-size:15px}.calculator-page .calc-card p{font-size:10px;line-height:1.35}.calculator-page .card-pricing strong{font-size:13px}.calculator-page .card-pricing small{font-size:9px}.calculator-page .card-purchase .card-stepper{flex-basis:78px;grid-template-columns:24px minmax(0,1fr) 24px!important}.calculator-page .card-stepper input{font-size:11px}.calculator-page .calc-card-copy .card-purchase{gap:4px}.calculator-page .calc-card button.card-add{height:32px;width:32px;flex-basis:32px;font-size:21px}.calculator-page .calc-card:has(.calc-card-photo.portrait){min-height:265px}.calculator-page .calc-card:has(.calc-card-photo.square){min-height:214px}.calculator-page .calc-card:has([data-scale]){grid-column:1/-1}.calculator-page .calc-card:has([data-scale]) .card-purchase{justify-content:flex-start}.calculator-page .calc-card:has([data-scale]) .card-pricing{flex:1}.calculator-page .calc-card .card-selected-label{font-size:9px}.calculator-page .calc-card button.card-film-example{font-size:9px;padding:5px 7px}}

.clip-duration>label{margin-bottom:3px}.duration-stepper{display:flex;align-items:center;border:1px solid #867c67;border-radius:2px;background:#171511;overflow:hidden}.calculator-page .duration-stepper button{flex:0 0 27px;min-height:32px;padding:2px 5px;border:0;background:transparent;color:#e2c894;font-size:23px;line-height:1;cursor:pointer}.calculator-page .duration-stepper input{width:0;flex:1;min-width:0;text-align:center;padding:5px 0;border:0;border-radius:0;background:transparent;appearance:textfield}.duration-stepper input::-webkit-inner-spin-button{appearance:none}

/* Perforated film strip marks the clip drop zone. */
.calculator-page .film-timeline{position:relative;isolation:isolate;padding:30px 12px;min-height:174px;border-block:1px solid #786e5a;border-radius:2px;background-color:#13110e;background-image:repeating-linear-gradient(90deg,transparent 0 9px,#c9a86b 9px 19px,transparent 19px 29px),repeating-linear-gradient(90deg,transparent 0 9px,#c9a86b 9px 19px,transparent 19px 29px);background-size:29px 9px;background-position:left 8px,left calc(100% - 8px);background-repeat:repeat-x;box-shadow:inset 0 0 0 1px #27231b}
.calculator-page .film-timeline .timeline-clip{background:#2a261f;border-color:#685f4e;border-radius:2px;box-shadow:0 0 0 3px #13110e}
.calculator-page .film-timeline .calc-empty{border:1px dashed #7b715d;border-radius:2px;min-height:90px;flex:1;display:flex;align-items:center;justify-content:center;padding:16px;color:#e2c894;background:rgba(33,30,23,0.4)}
.calculator-page .film-timeline.drag-over{background-color:#2b2821!important;background-image:repeating-linear-gradient(90deg,transparent 0 9px,#c9a86b 9px 19px,transparent 19px 29px),repeating-linear-gradient(90deg,transparent 0 9px,#c9a86b 9px 19px,transparent 19px 29px)!important;outline-offset:-2px}
.duration-stepper .duration-unit{font-size:11px;color:#c9a86b;padding-right:4px;line-height:1;flex-shrink:0}.calculator-page .duration-stepper button{flex-basis:24px}.calculator-page .duration-stepper input{padding-left:4px}
.calculator-page .duration-stepper input{text-align:right;padding-right:4px}.calculator-page .duration-stepper input:focus-visible{outline:none}.duration-stepper:focus-within{outline:2px solid #e2c894;outline-offset:2px}
/* Portrait clips use compact columns instead of centered cards in wide tracks. */
.calculator-page .calc-cards:has(.calc-card-photo.portrait){grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;align-items:start}
.calculator-page .calc-cards:has(.calc-card-photo.portrait) .calc-card{max-width:none;justify-self:stretch;min-height:0;aspect-ratio:9/16}
@media(max-width:760px){.calculator-page .calc-cards:has(.calc-card-photo.portrait){grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.calculator-page .calc-cards:has(.calc-card-photo.portrait) .calc-card{min-height:265px}}
@media(max-width:1100px){.property-setup{grid-template-columns:minmax(205px,.8fr) minmax(330px,1.6fr)}.source-choices{min-width:250px}}@media(max-width:760px){.property-setup{grid-template-columns:1fr}.source-choices{min-width:0;width:100%}.area-control{max-width:238px}}
.calculator-page .area-stepper input:focus-visible{outline:none}.area-stepper:focus-within{outline:2px solid #e2c894;outline-offset:2px}

/* One aligned setup row: title, control and helper share common baselines. */
.calculator-page .property-setup{grid-template-columns:minmax(190px,238px) minmax(330px,520px) minmax(230px,280px);justify-content:start;align-items:start;gap:24px}
.calculator-page .property-setup>div{display:grid;grid-template-rows:20px 58px auto;row-gap:8px;column-gap:0;grid-column:auto;align-items:stretch;min-width:0}
.calculator-page .property-setup h2{grid-row:1;margin:0;font-size:14px;line-height:20px;white-space:nowrap}
.calculator-page .property-setup .area-control,.calculator-page .property-setup .scope-options,.calculator-page .property-setup .source-choices{grid-row:2;margin:0;width:100%;max-width:none;min-width:0;height:58px}
.calculator-page .property-setup .area-stepper{height:58px}
.calculator-page .property-setup .scope-options button,.calculator-page .property-setup .source-choices button{height:58px}
.calculator-page .property-setup>div>small,.calculator-page .property-setup #property-price{grid-row:3;margin:0;font-size:11px;line-height:1.5}
.calculator-page .property-setup .scope-options svg{width:40px}
@media(max-width:900px){.calculator-page .property-setup{grid-template-columns:1fr;gap:20px}.calculator-page .property-setup .property-area{max-width:280px}.calculator-page .property-setup .property-scope{max-width:520px}.calculator-page .property-setup .property-source{max-width:280px}.calculator-page .property-setup .scope-options button{gap:7px}.calculator-page .property-setup .scope-options svg{width:34px}}

/* Location, county and address form one aligned row. */
.calculator-page #onsite-address{padding:14px 16px}
.calculator-page #onsite-address .travel-location{display:grid;grid-template-columns:minmax(170px,230px) minmax(240px,1fr);gap:14px;margin:0;align-items:start}
.calculator-page #onsite-address .travel-location:has(#county-field:not([hidden])){grid-template-columns:minmax(160px,.85fr) minmax(190px,1fr) minmax(240px,1.7fr)}
.calculator-page #onsite-address .travel-field{display:grid;grid-template-rows:24px 42px;gap:7px;min-width:0}
.travel-label{display:flex;align-items:center;gap:8px;color:#e2c894;font-size:12px}.travel-label svg{width:21px;height:21px;flex-shrink:0;color:#c9a86b}
.calculator-page #onsite-address .travel-field input,.calculator-page #onsite-address .travel-field select{width:100%;height:42px;font-size:13px;padding:9px 10px}
.calculator-page #onsite-address>p{margin:10px 0 0;font-size:11px}
@media(max-width:1150px){.calculator-page #onsite-address .travel-location:has(#county-field:not([hidden])){grid-template-columns:minmax(140px,1fr) minmax(160px,1fr)}.calculator-page #onsite-address .travel-location:has(#county-field:not([hidden])) .address-field{grid-column:1/-1}}
@media(max-width:600px){.calculator-page #onsite-address{padding:12px}.calculator-page #onsite-address .travel-location,.calculator-page #onsite-address .travel-location:has(#county-field:not([hidden])){grid-template-columns:minmax(0,1fr);gap:12px}.calculator-page #onsite-address .address-field{grid-column:auto}}

.project-incentive{grid-column:1/-1;border:1px solid #5b5445;border-radius:2px;background:linear-gradient(120deg,#2c2821,#211e17);padding:13px 16px;align-self:stretch}.incentive-label{display:flex;align-items:center;gap:8px;color:#c9a86b;font-size:9px;letter-spacing:.09em;margin-bottom:7px}.incentive-label svg{width:22px;height:22px;flex-shrink:0}#incentive-title{font-size:15px;line-height:1.35;font-weight:500;color:#f5e7ca}#incentive-copy{font-size:11px;line-height:1.5;color:#c9a86b;margin:7px 0}#incentive-progress{display:flex;gap:5px;margin-top:9px;max-width:230px}#incentive-progress span{height:3px;flex:1;background:#575041;border-radius:2px}#incentive-progress .filled{background:#c9a86b}#incentive-action{background:none;border:0;border-bottom:1px solid #827762;color:#e2c894;padding:7px 0 4px;cursor:pointer;font-size:11px}#incentive-offer{display:block;margin-top:8px;color:#c9a86b;font-size:11px}.project-incentive.is-earned{border-color:#c9a86b;background:linear-gradient(120deg,#403420,#24211a)}
@media(min-width:1400px){.calculator-page .property-setup{grid-template-columns:210px minmax(330px,1.4fr) 245px minmax(260px,1fr);gap:20px}.project-incentive{grid-column:4;grid-row:1;padding:12px 14px}.calculator-page .property-setup .source-choices button{gap:6px;padding:9px 8px}}

.project-materials{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin:18px 0 12px;align-items:stretch}.calculator-page .project-description-field{display:flex;flex-direction:column;gap:9px;min-width:0}.calculator-page .project-description-field textarea{flex:1;min-height:230px;height:100%;resize:vertical;background:#1a1712;border-radius:2px}.project-upload-field{display:flex;flex-direction:column;gap:9px;min-width:0}.upload-field-label{font-size:12px;color:#c9a86b}.calculator-page .project-upload-field .project-file-drop{flex:1;min-height:230px;margin:0;padding:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed #c9a86b;border-radius:2px;background:linear-gradient(145deg,#2c2821,#211e17);gap:7px;transition:background-color .15s,border-color .15s}.upload-symbol{width:30px;height:30px;color:#c9a86b}.project-file-drop>strong{font-size:15px;color:#e2c894}.upload-or{font-size:11px;color:#c9a86b}.calculator-page .upload-button{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #c9a86b;border-radius:2px;background:#c9a86b;color:#211e17;padding:10px 17px;margin:3px 0;font-size:13px;cursor:pointer;min-height:42px}.upload-button svg{width:20px;height:20px}.calculator-page .upload-button:hover{background:#e2c894}.calculator-page .project-file-drop p{margin:0;font-size:10px;line-height:1.5;color:#c9a86b}.calculator-page .project-upload-field .project-file-drop.drag-over{border:2px solid #e2c894;background:#4b3d26!important;outline:2px solid #c9a86b;outline-offset:3px}.project-file-drop.drag-over .upload-symbol{color:#fff0ca}
@media(max-width:700px){.project-materials{grid-template-columns:1fr;gap:16px}.calculator-page .project-description-field textarea{min-height:145px}.calculator-page .project-upload-field .project-file-drop{min-height:215px}}

/* Distinct service families within the ordered menu. */
.calc-tabs .calc-tab-section-start{margin-inline-start:22px;position:relative}.calc-tabs .calc-tab-section-start::before{content:"";position:absolute;inset-inline-start:-15px;top:20%;height:60%;width:1px;background:var(--line,#645c4b);pointer-events:none}@media(max-width:600px){.calc-tabs .calc-tab-section-start{margin-inline-start:14px}.calc-tabs .calc-tab-section-start::before{inset-inline-start:-10px}}

/* Quiet planning cards: diagram rather than portfolio photograph. */
.calculator-page .calc-card.design-service-card{display:flex;align-items:center;gap:16px;min-height:155px;padding:20px;background:#211e18;border:1px solid #554e40;box-shadow:none}
.calculator-page .calc-card.design-service-card::after{display:none}
.calculator-page .calc-card.design-service-card.is-selected{border-color:#c9a86b;background:#28251e;box-shadow:none}
.design-service-icon{flex:0 0 80px;color:#c9a86b}.design-service-icon svg{display:block;width:80px;height:80px}
.calculator-page .design-service-card .calc-card-copy{padding:0;gap:5px;flex:1}
.calculator-page .design-service-card h3{text-shadow:none;font-size:19px;color:#e2c894}
.calculator-page .design-service-card p{min-height:0}
.design-service-status{font-size:10px;color:#c9a86b}
.calculator-page .design-service-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #6d6453;border-radius:2px;background:transparent;color:#c9a86b;font-size:11px;cursor:pointer}
.calculator-page .design-service-toggle:hover{background:#ffffff08;border-color:#c9a86b}.design-service-toggle .design-lock{width:15px;height:15px}
.calculator-page .calc-tabs [data-group=base]{background:transparent;color:#c9a86b;border-color:#655d4d}
.calculator-page .calc-tabs [data-group=base][aria-pressed=true]{background:#353128;color:#e2c894;border-color:#c9a86b}
@media(max-width:760px){.calculator-page .calc-card.design-service-card{gap:10px;padding:14px;flex-direction:column;align-items:flex-start}.design-service-icon{flex-basis:auto}.design-service-icon svg{width:54px;height:54px}.calculator-page .design-service-card h3{font-size:16px}.calculator-page .design-service-card .card-purchase{flex-wrap:wrap;gap:10px}}

.calculator-page .design-service-card .calc-card-copy .design-service-toggle{background:transparent!important;color:#c9a86b!important;border:1px solid #6d6453!important;box-shadow:none!important}
