/* Web layout; the print version uses its own stylesheet and the same catalogue. */
.s-price .price-layout{gap:36px}
.price-intro{align-items:start}
.price-intro h2{font-size:clamp(64px,8vw,112px);letter-spacing:-.06em}
.price-copy{padding-top:9px}
.price-copy .price-pending{font-weight:400;font-size:13px}
.price-categories{display:grid;gap:44px}
.price-category{scroll-margin-top:28px}
.price-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.price-service{min-width:0;background:var(--paper);padding:26px 28px;border-radius:18px;overflow-wrap:anywhere}
.price-service h4{font-size:26px;line-height:1.15;font-weight:600;letter-spacing:-.035em;margin-bottom:10px}
.price-service header>p{font-size:14px;line-height:1.6;max-width:540px}
.price-service header>p+p{margin-top:8px}
.price-service .price-coat{font-weight:600}
.price-service--sizes{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.5fr);gap:18px 36px;align-items:center}
.price-service--sizes .price-table{min-width:0}
.price-service .price-table thead,.price-service--single .price-table tbody th{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.price-service .price-table small{display:block;font-size:12px;line-height:1.5;font-weight:400;letter-spacing:0;margin-top:6px}
.price-service .price-table td>span{font-weight:600;font-variant-numeric:tabular-nums}
.price-service--sizes .price-table tbody{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:12px 8px}
.price-service--sizes .price-table tr{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;gap:12px}
.price-service--sizes .price-table tbody th[scope="row"]{display:grid;place-items:center;min-width:38px;min-height:38px;padding:6px 10px;margin:0;background:var(--ice);border:0;border-radius:30px;font-size:14px;line-height:1.25;letter-spacing:0;font-weight:600}
.price-service--sizes .price-table td{border:0;width:auto;padding:0;font-size:clamp(17px,1.7vw,23px);line-height:1.3;text-align:center;letter-spacing:-.04em}
.price-service--sizes .price-table td>span{display:block}
.price-service--single{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.75fr);align-items:start;gap:12px 22px}
.price-service--single .price-table{width:100%;align-self:center}
.price-service--single .price-table td{padding:0;border:0;width:100%;font-size:24px;line-height:1.3;letter-spacing:-.04em}
.price-service--single:only-child{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(160px,.45fr)}
.price-service .price-table .catalogue-missing{width:auto;font-size:14px;letter-spacing:0}
.price-draft{grid-column:1/-1;font-size:12px;line-height:1.5;border-left:2px solid var(--blue);padding-left:12px;margin-top:8px}
.price-service--sizes .price-draft{grid-row:2}
.price-service .price-awaiting{font-size:14px;line-height:1.6;align-self:center}
.price-service-grid--coats{grid-template-columns:repeat(3,minmax(0,1fr))}
.price-service-grid--coats .price-service{display:block;grid-column:auto;background:transparent;border:1px solid var(--line);padding:24px}
.price-service-grid--coats .price-service h4{font-size:23px}
.price-service-grid--coats .price-service .price-awaiting{margin-top:16px;font-weight:600}
.price-service-grid--coats .price-table{margin-top:20px}
.price-service-grid--coats .price-table tbody{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}
.price-shared-notes{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px 40px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.price-size-guide h3{font-size:16px;font-weight:600;letter-spacing:0;margin:0 0 7px}
.price-size-guide p,.price-time-note{font-size:13px;line-height:1.6;max-width:650px}
.price-size-guide p+p{margin-top:8px}
.price-size-guide dl{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0}
.price-size-guide dl>div{display:flex;gap:8px;font-size:14px;line-height:1.6}
.price-size-guide dt{font-weight:600}.price-size-guide dd{margin:0}
.price-time-note{align-self:center}
.price-size-details{font-size:13px;margin-top:8px}
.price-size-details summary{text-decoration:underline;text-underline-offset:4px;padding-block:5px}
.price-size-details p{font-size:13px;margin-top:10px}
.price-footer{padding-top:28px;border-top:1px solid var(--line)}
.price-footer .price-actions{flex-wrap:wrap}
.price-print-link{font-size:14px;align-self:center;text-decoration:underline;text-underline-offset:5px;padding-block:10px}
@media(max-width:1100px){
  .price-service--sizes{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:20px}
  .price-service{padding:24px}
  .price-service--sizes .price-table tbody{grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}
  .price-service--single{grid-template-columns:1fr}
  .price-service--single .price-table td{text-align:left}
  .price-service-grid--coats{grid-template-columns:1fr}
}
@media(max-width:760px){
  .price-intro h2{font-size:76px}
  .price-copy{padding-top:0}
  .price-service-grid{grid-template-columns:1fr}
  .price-service--sizes{grid-template-columns:1fr;gap:22px}
  .price-service--sizes .price-table tbody{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 5px}
  .price-service--sizes .price-table td{font-size:18px}
  .price-service--sizes .price-draft{grid-row:auto}
  .price-service--single:only-child{grid-template-columns:1fr}
  .price-service h4{font-size:25px}
  .price-shared-notes{grid-template-columns:1fr;gap:14px;padding-block:18px}
  .price-categories{gap:34px}
  .price-print-link{align-self:flex-start}
}
@media(max-width:430px){
  .price-service{padding:22px 18px}
  .price-service--sizes .price-table tbody{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px}
  .price-service--sizes .price-table td{font-size:18px}
  .price-service--sizes .price-table tbody th[scope="row"]{min-height:32px;min-width:34px}
}
@media(max-width:360px){.price-service--sizes .price-table tbody{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* A short category chooser replaces the former fully expanded price list. */
.s-price .price-layout{gap:24px}
.price-intro h2{font-size:clamp(64px,6vw,88px)}
.price-browser{display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px;align-items:start}
.price-choices{display:grid;gap:10px}
.price-choice{display:grid;grid-template-columns:44px minmax(0,1fr) 18px;gap:13px;align-items:center;min-height:95px;padding:18px 16px;background:var(--paper);border:1px solid transparent;border-radius:18px;transition:background .2s,color .2s,border-color .2s}
.price-choice-icon{display:grid;place-items:center;width:44px;height:52px}
.price-choice-icon svg{width:48px;height:48px}
.price-choice-copy{display:grid;gap:7px}
.price-choice-copy strong{font-size:19px;line-height:1.1;font-weight:600;letter-spacing:-.035em}
.price-choice-copy>span{font-size:12px;line-height:1.4}
.price-choice-arrow{align-self:start;padding-top:2px;font-size:20px;line-height:1;transition:transform .2s}
.price-choice:hover{border-color:var(--blue)}
.price-choice:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.price-choice:hover .price-choice-arrow{transform:translate(2px,-2px)}
.price-choice[aria-selected="true"]{background:var(--blue);color:var(--pink)}
.price-choice[aria-selected="true"] .price-choice-icon{transform:rotate(-7deg)}
.price-choice[aria-selected="true"] .price-choice-arrow{transform:rotate(45deg)}
.price-panels{min-width:0}
.price-panel{display:grid;gap:10px;scroll-margin-top:28px;min-width:0}
.price-panel[hidden]{display:none!important}
.price-panel:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:18px}
.price-browser:not([data-enhanced]) .price-panel+.price-panel{margin-top:14px}
.price-category--fold{min-width:0;border:1px solid var(--line);background:var(--paper);border-radius:18px;overflow:clip}
.price-category--fold[open]{border-color:var(--blue)}
.price-category-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;min-height:64px;list-style:none}
.price-category-summary h3{font-size:23px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0}
.price-fold-symbol{position:relative;display:block;width:32px;height:32px;flex:0 0 32px;background:var(--ice);border-radius:50%;transition:transform .2s,background .2s}
.price-fold-symbol::before,.price-fold-symbol::after{content:'';position:absolute;left:9px;top:15px;width:14px;height:1.5px;background:currentColor}
.price-fold-symbol::after{transform:rotate(90deg)}
.price-category--fold[open] .price-fold-symbol{transform:rotate(45deg);background:var(--pink)}
.price-category-body{padding:0 22px 22px}
.price-category-description{font-size:13px;line-height:1.6;margin-bottom:18px;max-width:650px}
.price-panel .price-service-grid,.price-panel .price-service-grid--coats{display:grid;grid-template-columns:1fr;gap:0}
.price-panel .price-service{padding:18px 0;background:transparent;border:0;border-radius:0;border-top:1px solid var(--line)}
.price-panel .price-service:first-child{padding-top:0;border-top:0}
.price-panel .price-service:last-child{padding-bottom:0}
.price-panel .price-service--sizes{display:block;grid-column:auto}
.price-panel .price-service h4{font-size:20px;line-height:1.2;margin-bottom:7px}
.price-panel .price-service header>p{font-size:13px;line-height:1.55;max-width:640px}
.price-panel .price-service--sizes .price-table{margin-top:18px}
.price-panel .price-service--sizes .price-table tbody{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px 6px}
.price-panel .price-service--sizes .price-table td{font-size:20px}
.price-panel .price-service--single,.price-panel .price-service--single:only-child{grid-template-columns:minmax(0,1fr) minmax(90px,.45fr);gap:12px 20px}
.price-panel .price-service--single .price-table{grid-column:2;grid-row:1;align-self:start}
.price-panel .price-service--single .price-table td{text-align:right;font-size:23px}
.price-panel .price-service .price-draft{grid-column:1/-1;grid-row:2;font-size:12px;margin-top:12px}
.price-panel .price-service-grid--coats .price-service .price-awaiting{font-size:13px;margin-top:12px}
.price-information{border-block:1px solid var(--line)}
.price-information>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;font-size:14px;min-height:48px}
.price-information>summary>span{font-size:23px;transition:transform .2s}
.price-information[open]>summary>span{transform:rotate(45deg)}
.price-information .price-shared-notes{border:0;padding-top:8px;padding-bottom:20px}
.price-footer{padding-top:0;border-top:0}
.price-footer>p{font-size:13px}
@media(max-width:1100px){.price-browser{grid-template-columns:245px minmax(0,1fr);gap:18px}.price-choice{grid-template-columns:34px minmax(0,1fr) 14px;gap:10px;padding:17px 13px}.price-choice-icon,.price-choice-icon svg{width:36px}.price-choice-copy strong{font-size:18px}.price-panel .price-service--sizes .price-table td{font-size:18px}}
@media(max-width:760px){
  .price-browser{grid-template-columns:1fr;gap:18px}
  .price-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .price-choice{grid-template-columns:minmax(0,1fr) 27px;align-items:start;gap:10px;padding:15px;min-height:128px}
  .price-choice-icon{grid-column:2;grid-row:1;width:27px;height:30px}
  .price-choice-icon svg{width:34px;height:34px}
  .price-choice-copy{grid-column:1/-1;grid-row:2;gap:6px}
  .price-choice-copy strong{font-size:20px;max-width:160px}
  .price-choice-copy>span{font-size:11px}
  .price-choice-arrow{grid-column:1;grid-row:1;font-size:20px}
  .price-category-summary{padding:17px 18px;min-height:70px}
  .price-category-summary h3{font-size:22px}
  .price-category-body{padding:0 18px 20px}
  .price-panel .price-service--sizes .price-table td{font-size:19px}
}
@media(max-width:430px){
  .price-choice{padding:13px;min-height:126px}
  .price-choice-copy strong{font-size:18px}
  .price-panel .price-service--sizes .price-table tbody{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 8px}
  .price-panel .price-service--sizes .price-table td{font-size:17px}
  .price-panel .price-service--single,.price-panel .price-service--single:only-child{grid-template-columns:1fr;gap:10px}
  .price-panel .price-service--single .price-table{grid-column:1;grid-row:auto}
  .price-panel .price-service--single .price-table td{text-align:left;font-size:22px}
  .price-category-summary h3{font-size:20px}
}
@media(max-width:360px){.price-panel .price-service--sizes .price-table tbody{grid-template-columns:repeat(2,minmax(0,1fr))}}

.s-price .price-copy .price-lead{font-size:14px;line-height:1.6;max-width:550px}
.s-price .price-footer>p{max-width:230px}
.s-price .price-footer .price-actions{flex-direction:row;align-items:center;justify-content:flex-end;flex-shrink:1;gap:12px 20px}
.price-phone-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;padding-block:10px}
@media(min-width:761px) and (max-width:1100px){.price-panel .price-service--sizes .price-table td{font-size:16px}.s-price .price-footer{gap:20px}.s-price .price-footer .price-actions{max-width:480px}}
@media(max-width:760px){.s-price .price-footer>p{max-width:350px}.s-price .price-footer .price-actions{justify-content:flex-start}.price-copy .price-pending{font-size:12px}}
.price-inclusions-detail{font-size:13px;line-height:1.6;margin-bottom:16px}
@media(max-width:760px){
  .s-price .price-copy .price-lead{display:none}
  .price-copy .price-pending{margin-top:0}
  .price-inclusions-detail{display:block;font-size:13px;line-height:1.6;margin-bottom:16px}
  .price-choice{grid-template-columns:minmax(0,1fr) 28px;align-items:center;min-height:82px;padding:13px;gap:10px}
  .price-choice-copy{grid-column:1;grid-row:1}
  .price-choice-copy strong{font-size:18px}
  .price-choice-icon{grid-column:2;grid-row:1}
  .price-choice-copy>span,.price-choice-arrow{display:none}
}
