/* The calculator is an editorial service menu beside a live project receipt. */
.desktop-nav{gap:22px;margin-left:0}
.pricing-main{padding:38px var(--page) 110px;max-width:1700px;margin:auto}
.pricing-intro{border-bottom:1px solid var(--ink);padding-bottom:38px;display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:end}
.pricing-intro>.eyebrow{grid-column:1/-1}
.pricing-intro h1{font:600 clamp(46px,5.6vw,92px)/.98 var(--display);letter-spacing:-.055em}
.pricing-intro h1 em{font-family:Georgia,serif;font-weight:400}
.pricing-intro>p:last-child{font-size:14px;line-height:1.8;padding-bottom:6px}
.calculator-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:5vw;margin-top:45px;align-items:start}
.calculator-section-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}
.calculator-section-title h2{font:600 29px var(--display);letter-spacing:-.04em}
.calculator-section-title>span{font-size:10px;color:var(--muted)}
.pricing-group{margin-bottom:35px}
.pricing-group>h3{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-bottom:12px}
.pricing-service{display:grid;grid-template-columns:minmax(160px,1fr) 180px 112px;align-items:center;gap:12px;padding:17px 10px;border-bottom:1px solid var(--line);transition:background .2s}
.pricing-service:first-of-type{border-top:1px solid var(--line)}
.pricing-service.is-selected{background:#ef692f10}
.service-choice{display:flex;align-items:center;gap:12px;font:600 19px/1.2 var(--display);cursor:pointer}
.service-choice input{width:18px;height:18px;accent-color:var(--yellow);flex-shrink:0;cursor:pointer}
.delivery-choice select{width:100%;font:500 10px var(--body);padding:9px 7px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.delivery-choice>span{font-size:10px;color:var(--muted)}
.service-price{font:600 13px var(--body);text-align:right;white-space:nowrap}
.estimate-panel{position:sticky;top:95px;background:var(--yellow);padding:28px 28px 24px;box-shadow:8px 10px 0 var(--ink)}
.estimate-panel>h2{font:600 36px/1.05 var(--display);letter-spacing:-.045em;margin:17px 0 25px}
.estimate-panel>h2 em{font-family:Georgia,serif;font-weight:400}
.estimate-empty{font-size:12px;line-height:1.7;padding:18px 0;border-top:1px solid #25292340;border-bottom:1px solid #25292340}
.estimate-item{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #25292330;font-size:11px}
.estimate-item>div{flex:1}.estimate-item strong{display:block;font-size:12px}.estimate-item span{display:block;font-size:9px;margin-top:5px;opacity:.75}
.estimate-item>b{font-weight:600;white-space:nowrap}.estimate-item>button{border:0;background:transparent;font-size:20px;padding:5px;cursor:pointer}
.estimate-total{margin-top:22px;padding-bottom:16px;border-bottom:1px solid #25292355}
.estimate-total>span{font-size:11px}.estimate-total strong{display:block;font:600 clamp(32px,3.4vw,53px) var(--display);letter-spacing:-.04em;margin:8px 0}.estimate-total small{font:600 13px var(--body);letter-spacing:0}
#estimate-status{font-size:10px;line-height:1.6}.estimate-panel>.text-link{font-size:10px;margin-top:14px;min-height:28px}
.estimate-panel>.text-link:disabled{opacity:.35;cursor:default}
.estimate-request-title{font:600 18px var(--display);margin:26px 0 19px}
.estimate-panel input,.estimate-panel textarea{background:#ffffffa8;border:1px solid #25292345;padding:10px 12px;border-radius:0;width:100%;min-height:43px}
.estimate-panel .field{margin-bottom:14px}.estimate-panel label{font-size:10px}.estimate-panel label>span{opacity:.6}
.estimate-panel .button{width:100%;margin-top:6px;background:#111;color:#fff;border-color:#111;font-size:12px}
.estimate-panel .button:hover{background:#111;color:#fff;transform:none}
.estimate-panel .button:disabled{opacity:.45;cursor:not-allowed}
.estimate-panel .form-note{font-size:9px;line-height:1.7;margin-top:13px}
/* Supplied logos keep their original colors and appear once per repeat group. */
.used-by-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:26px 0 20px}
.used-by-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--page) 12px}
.used-by-heading h2{font:500 20px var(--display);letter-spacing:-.025em}
.logo-motion-toggle{display:none;width:30px;height:30px;background:transparent;border:1px solid var(--line);border-radius:50%;font-size:13px;cursor:pointer}
.used-by-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center}
.used-by-list li{flex:0 0 200px;padding:10px 15px}
.used-by-list img{display:block;width:170px;height:75px;object-fit:contain}
.used-by-list.logo-copy{display:none}
.logos-ready .logo-motion-toggle{display:block}
.logos-ready .used-by-window{overflow:hidden}
.logos-ready .used-by-track{display:flex;width:max-content;animation:logo-loop 45s linear infinite;animation-play-state:paused}
.logos-ready .used-by-list{flex-wrap:nowrap;flex-shrink:0;justify-content:flex-start}
.logos-ready .used-by-list.logo-copy{display:flex}
.logos-ready .logos-visible .used-by-track{animation-play-state:running}
.logos-ready .logos-paused .used-by-track,.motion-paused .used-by-track,.document-hidden .used-by-track{animation-play-state:paused!important}
@keyframes logo-loop{to{transform:translateX(-50%)}}
@media(max-width:1200px){.pricing-service{grid-template-columns:minmax(130px,1fr) 145px 100px;gap:8px}.service-choice{font-size:17px}.estimate-panel{padding:24px}.calculator-layout{gap:4vw}}
@media(max-width:1050px){.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:10px}.mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;padding:24px var(--page);gap:18px;background:var(--paper);border-bottom:1px solid var(--line)}.calculator-layout{grid-template-columns:1fr;gap:22px}.estimate-panel{position:relative;top:0;max-width:650px;width:100%;justify-self:center}.pricing-service{grid-template-columns:minmax(140px,1fr) 180px 112px}.pricing-intro{gap:22px}}
@media(max-width:700px){.pricing-main{padding-top:18px;padding-bottom:75px}.pricing-intro{grid-template-columns:1fr;gap:23px;padding-bottom:28px}.pricing-intro h1{font-size:clamp(43px,11.5vw,65px)}.pricing-intro>p:last-child{font-size:12px}.calculator-layout{margin-top:30px}.calculator-section-title{align-items:flex-start;gap:8px}.calculator-section-title h2{font-size:25px}.calculator-section-title>span{font-size:8px;max-width:100px;line-height:1.6;text-align:right}.pricing-service{grid-template-columns:1fr 105px;padding:17px 0;gap:10px}.service-choice{font-size:18px;grid-column:1/-1}.delivery-choice{grid-column:1}.service-price{grid-column:2;font-size:12px}.estimate-panel{padding:25px 20px;box-shadow:6px 8px 0 var(--ink)}.estimate-panel>h2{font-size:34px}.used-by-heading h2{font-size:18px}.used-by-list li{flex-basis:165px;padding:10px 10px}.used-by-list img{width:145px;height:65px}.logos-ready .used-by-track{animation-duration:35s}}
@media(prefers-reduced-motion:reduce){.logos-ready .used-by-track{animation:none;transform:none}.logos-ready .used-by-list.logo-copy{display:none}.logos-ready .used-by-list{flex-wrap:wrap;justify-content:center}.logos-ready .used-by-track{width:100%}.used-by-window{overflow:visible}}

.estimate-panel{max-height:calc(100svh - 115px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#25292355 transparent}
.mobile-estimate-bar{display:none}
@media(max-width:1050px){.estimate-panel{max-height:none;overflow:visible}.mobile-estimate-bar:not([hidden]){display:flex;position:fixed;z-index:24;bottom:18px;left:var(--page);right:88px;gap:15px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);padding:14px 16px;box-shadow:0 4px 16px #0003}.mobile-estimate-bar span{font-size:14px;font-weight:600}.mobile-estimate-bar a{font-size:10px;border-bottom:1px solid currentColor;white-space:nowrap}.pricing-page #estimate-title{scroll-margin-top:95px}}
/* A hanging paper sheet: controls stay still while only its lower edge catches the breeze. */
.service-description{display:block;font:400 10px/1.65 var(--body);color:var(--muted);margin-top:7px;max-width:260px}
.selection-note{font-size:11px;line-height:1.7;color:#9c3f17;margin-bottom:18px;min-height:0}
.selection-note:empty{display:none}
.estimate-cadence{font-size:10px;line-height:1.65;margin-top:10px;max-width:280px}
.parchment-stage{position:relative;padding:39px 23px 32px;background:transparent;box-shadow:none;isolation:isolate}
.parchment-stage::before{content:'';position:absolute;z-index:3;left:11px;right:11px;top:27px;height:18px;border-radius:3px;background:linear-gradient(#d1bd85,#f0e1b7 30%,#a99560 80%,#73603b);box-shadow:0 5px 7px #38200944;pointer-events:none}
.parchment-sheet{background-color:#e8d9b0;background-image:url('assets/web/parchment-grain.svg'),linear-gradient(90deg,#ad95532b,transparent 9%,#fff5 48%,transparent 91%,#8e71392b);position:relative;border:1px solid #ab935e66;box-shadow:4px 8px 15px #532b2240;color:#29251d}
.parchment-stage::after{content:'';position:absolute;z-index:2;left:23px;right:23px;bottom:23px;height:15px;background:#e8d9b0 url('assets/web/parchment-grain.svg');clip-path:polygon(0 0,100% 0,100% 60%,97% 75%,93% 54%,90% 89%,86% 66%,82% 86%,78% 60%,74% 95%,70% 67%,66% 84%,62% 64%,58% 90%,54% 71%,50% 91%,46% 66%,42% 87%,38% 61%,34% 85%,30% 65%,26% 94%,22% 76%,18% 91%,14% 60%,10% 80%,6% 67%,3% 85%,0 63%);transform-origin:50% 0;animation:paper-breeze 7s ease-in-out infinite;pointer-events:none}
@keyframes paper-breeze{0%,100%{transform:perspective(400px) rotateX(0) skewX(0)}35%{transform:perspective(400px) rotateX(-16deg) skewX(.7deg)}65%{transform:perspective(400px) rotateX(9deg) skewX(-.5deg)}}
.estimate-scroll{position:sticky;top:95px;min-width:0}
.estimate-scroll .estimate-panel{position:relative;top:0;padding:30px 23px 26px;max-height:calc(100svh - 190px);overflow:auto;scrollbar-gutter:stable;scrollbar-color:#8e784b66 transparent}
.estimate-panel>h2{font-family:Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-.045em}
.registration-scroll{min-width:0;align-self:start}
.registration-scroll .registration-panel{padding:34px 30px 30px}
.registration-scroll .registration-panel::before{display:none}
.registration-panel input,.registration-panel select,.estimate-panel input,.estimate-panel textarea{background:#fff8}
.registration-panel .button{background:#29251d;color:#fff;border-color:#29251d}
.parchment-stage.offscreen::after,.motion-paused .parchment-stage::after,.document-hidden .parchment-stage::after{animation-play-state:paused}
@media(max-width:1200px){.pricing-service{grid-template-columns:minmax(125px,1fr) 140px 118px}.service-price{font-size:11px}.calculator-layout{gap:3vw;grid-template-columns:minmax(0,1.4fr) minmax(345px,1fr)}}
@media(max-width:1050px){.calculator-layout{grid-template-columns:1fr;gap:36px}.estimate-scroll{position:relative;top:0;max-width:650px;width:100%;justify-self:center}.estimate-scroll .estimate-panel{max-height:none;overflow:visible;scrollbar-gutter:auto}.pricing-service{grid-template-columns:minmax(140px,1fr) 180px 130px}}
@media(max-width:700px){.parchment-stage{padding:35px 16px 28px}.parchment-stage::before{left:7px;right:7px;top:23px;height:17px}.parchment-stage::after{left:16px;right:16px;bottom:19px}.estimate-scroll .estimate-panel,.registration-scroll .registration-panel{padding:28px 18px 25px}.pricing-service{grid-template-columns:1fr 135px}.service-price{font-size:12px}.service-description{font-size:11px;max-width:none}.estimate-panel>h2{font-size:32px}.estimate-item{flex-wrap:wrap}.estimate-item>div{min-width:90px}.estimate-item>b{font-size:10px}}
@media(prefers-reduced-motion:reduce){.parchment-stage::after{animation:none}}

/* Client refinement: leave the hanging parchment free of its orange frame. */
.parchment-stage{background:transparent;box-shadow:none}
