*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#f5f5f2;color:#222226;font-family:Arial,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}a:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #c73143;outline-offset:4px}p{line-height:1.9;color:#66636a}h1,h2,h3{line-height:1.4}h1{font-size:clamp(29px,4vw,44px);letter-spacing:-.04em;margin:12px 0 15px}h2{font-size:26px;margin:8px 0 18px}small{font-size:11px}.site-header{background:white;border-top:3px solid #ba394a;border-bottom:1px solid #dededb}.topline{background:#f4eeee;color:#7a6167;display:flex;justify-content:space-between;gap:12px;padding:8px max(24px,calc((100% - 1160px)/2));font-size:11px;line-height:1.6}.brand-row{max-width:1160px;margin:auto;display:flex;align-items:center;gap:28px;padding:22px 0 18px}.logo{display:inline-flex;flex-direction:column;align-items:center;color:#141418;flex-shrink:0}.logo-mark{display:block;font-size:43px;line-height:1.03;font-weight:900;font-style:italic;letter-spacing:-2.5px;transform:skew(-2deg)}.logo-mark>span{color:#d52232}.logo small{margin-top:4px;font-size:10px;color:#49464c;font-weight:700;letter-spacing:.03em}.current-store{border-left:1px solid #ddd5d5;padding-left:22px;display:flex;gap:3px;flex-direction:column}.current-store>small{font-size:10px;color:#93838a}.current-store strong{font-size:16px}.current-store details{position:relative;font-size:11px;color:#a73546}.current-store summary{cursor:pointer}.current-store details>div{position:absolute;top:24px;min-width:170px;background:#fff;border:1px solid #ddd;padding:12px;z-index:12}.current-store details a{display:block;padding:8px}.contact-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:#c32d41;color:#fff;padding:14px 22px;border:1px solid #c32d41;font-size:13px;white-space:nowrap}.contact-button:hover{background:#a52134}.brand-row>.contact-button{margin-left:auto}.main-nav{position:relative;display:flex;max-width:1160px;margin:auto;padding:0 0 8px;align-items:center;gap:0}.main-nav>a,.nav-dropdown>a{display:block;font-size:14px;font-weight:600;padding:12px 27px;position:relative;white-space:nowrap}.main-nav>a:after,.nav-dropdown:after{content:'';height:14px;width:1px;position:absolute;right:0;top:17px;background:#e1dbdb}.main-nav>a{position:relative}.nav-dropdown{position:relative}.main-nav>a:hover,.nav-dropdown>a:hover,.nav-dropdown>a.active{color:#c42d42}.nav-dropdown>a.active:before,.nav-dropdown:hover>a:before,.nav-dropdown.is-open>a:before{content:'';position:absolute;left:27px;right:27px;bottom:4px;height:2px;background:#d52232}.nav-panel{display:none;position:absolute;top:100%;left:0;width:min(650px,85vw);background:#fff;box-shadow:0 12px 26px #2d1d2420;border:1px solid #e8dddd;border-top:2px solid #c42d42;padding:20px;z-index:10;gap:22px;max-height:65vh;overflow:auto}.nav-dropdown:hover>.nav-panel,.nav-dropdown:focus-within>.nav-panel,.nav-dropdown.is-open>.nav-panel{display:flex}.nav-panel>div{flex:1;min-width:120px}.nav-panel strong{font-size:12px;color:#a73546;display:block;margin:0 0 10px}.nav-panel a{display:block;font-size:12px;padding:7px 3px;border-bottom:1px solid #f3efef}.nav-panel a:hover{color:#c42d42}.repair-menu{width:440px;flex-wrap:wrap;gap:6px 24px}.repair-menu>a{flex:1 0 42%}.wrap{max-width:1160px;margin:auto;padding:0 0 40px}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:17px 0;color:#8b7c81;font-size:11px;line-height:1.6}.breadcrumbs li+li:before{content:'›';margin-right:9px;color:#b6aaad}.breadcrumbs a:hover{color:#bd2d42}.page-title{max-width:760px;padding:20px 0 32px}.page-title p{margin-bottom:0;font-size:14px}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:#c32d41}.group-title{display:flex;align-items:baseline;gap:18px;border-bottom:1px solid #d8d4d2;padding-bottom:10px;margin-bottom:20px}.group-title>span{color:#bf3446;font-size:12px}.group-title h2{margin:0;font-size:29px}.catalog-group{margin:0 0 42px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.product-card{background:#fff;border:1px solid #dfdcd8;padding:26px;display:flex;flex-direction:column;gap:8px;min-height:225px;transition:transform .15s,border-color .15s}.product-card:hover{border-color:#c42d42;transform:translateY(-3px)}.product-card h3{font-size:23px;margin:0 0 13px}.product-card>small{color:#8f8186}.text-link{color:#b52b40;font-size:12px;font-weight:600;margin-top:auto}.text-link b{float:right}.device-icon{display:block;width:27px;height:38px;border:2px solid #363238;border-radius:4px;margin-bottom:12px;position:relative}.device-icon:after{content:'';position:absolute;bottom:3px;left:8px;width:7px;height:2px;background:#c42d42}.device-icon.tablet{width:38px}.device-icon.computer{width:48px;height:30px;border-radius:2px}.device-icon.switch{width:54px;height:29px;border-left:8px solid #c42d42;border-right:8px solid #363238}.device-icon.switch:after{display:none}.model-jump{background:#fff;border-left:3px solid #c32d41;padding:20px 24px;display:flex;gap:24px;align-items:center;margin-bottom:18px}.model-jump label{font-size:13px;font-weight:600}.model-jump select{border:1px solid #d8cdd0;background:white;color:#333;padding:12px 14px;min-width:280px;max-width:100%}.model-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:25px}.model-quick-links a{font-size:11px;border:1px solid #d9d2d3;padding:7px 10px;background:#fff}.model-quick-links a:hover{border-color:#bc3447;color:#bc3447}.pricing-notes{padding:4px 0 12px}.pricing-notes p{font-size:12px;margin:5px 0}.card{background:#fff;border:1px solid #dfdad8;padding:26px}.model-prices{margin:24px 0;scroll-margin-top:20px}.model-prices h2{font-size:24px;margin:4px 0 8px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.section-heading>a{font-size:11px;color:#967d85}.model-number{font-size:11px;color:#98888e;overflow-wrap:anywhere;display:block;line-height:1.7;margin:4px 0 10px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;margin:12px 0 0;text-align:left}th{font-size:11px;white-space:nowrap;color:#918187;background:#faf7f6;font-weight:500}th,td{border-bottom:1px solid #ede6e5;padding:16px 14px}td{font-size:13px;line-height:1.7;vertical-align:top}th:first-child{width:28%}td:nth-child(2){white-space:nowrap}td:nth-child(3){min-width:125px}.price{color:#be2b40;font-size:16px;font-weight:700}.repair-link{font-weight:600;text-decoration:underline;text-decoration-color:#dbb4bb;text-underline-offset:4px}.repair-link:hover{color:#c42d42}.offer-note{font-size:11px;color:#8a7f83;white-space:pre-line;display:block;max-width:390px;overflow-wrap:anywhere}.service-label,.preview-label{display:inline-block;font-size:10px;background:#f8ecef;color:#9e4d5e;padding:3px 6px;margin:4px 0}.repair-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.repair-card{background:#fff;border:1px solid #dfdad8;display:flex;flex-direction:column}.repair-card:hover{border-color:#c42d42}.repair-card img{width:100%;height:165px;object-fit:contain;background:#f8f6f3;border-bottom:1px solid #eee8e3}.repair-card>div{padding:22px;flex:1;display:flex;flex-direction:column}.repair-card h2{font-size:20px;margin:0 0 12px}.repair-card p{font-size:12px;margin:0 0 20px}.repair-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;padding:24px 0 34px;align-items:center}.repair-description{white-space:pre-line;font-size:14px;line-height:2}.repair-hero figure{margin:0}.repair-hero img{width:100%;height:auto;display:block}.repair-hero figcaption{font-size:10px;color:#95868c;margin-top:9px}.before-repair{border-left:3px solid #c42d42;padding:18px 24px;background:#eeedeb;margin:8px 0 24px}.before-repair h2{font-size:16px;margin:0 0 8px}.before-repair p{font-size:12px;margin:0}.compact{padding-bottom:10px}.empty-state{background:white;border:1px solid #e4dada;padding:45px;margin:10px 0 45px}.empty-state h2{font-size:23px}.empty-state p{font-size:14px}footer{border-top:1px solid #ddd3d3;max-width:1160px;margin:auto;padding:38px 0 45px;display:flex;gap:40px;justify-content:space-between}footer h2{font-size:23px}footer p{font-size:12px}.footer-links{display:flex;flex-direction:column;gap:18px;font-size:12px}.footer-links small{color:#9e8b91}.preview-banner{padding:12px 24px;display:flex;align-items:center;justify-content:center;gap:18px;background:#38222c;color:#fff;font-size:12px}.preview-banner>a{text-decoration:underline}.preview-banner>span{color:#e5cad3}
@media(max-width:1220px){.brand-row,.main-nav,.wrap,footer{margin-left:28px;margin-right:28px}.topline{padding-left:28px;padding-right:28px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.topline{padding:7px 18px;font-size:10px}.topline>span:last-child{display:none}.brand-row,.main-nav,.wrap,footer{margin-left:18px;margin-right:18px}.brand-row{gap:13px;flex-wrap:wrap;padding:17px 0 12px}.logo-mark{font-size:34px}.logo small{font-size:8px}.current-store{padding-left:13px}.current-store strong{font-size:13px}.brand-row>.contact-button{font-size:10px;padding:11px 12px;gap:8px}.main-nav{flex-wrap:wrap;justify-content:flex-start;padding-bottom:6px}.main-nav>a,.nav-dropdown>a{font-size:12px;padding:11px 16px}.main-nav>a:after,.nav-dropdown:after{top:15px}.nav-dropdown>a.active:before,.nav-dropdown:hover>a:before,.nav-dropdown.is-open>a:before{left:16px;right:16px}.nav-dropdown{position:static}.nav-panel{left:0;right:0;top:100%;width:100%;gap:15px;flex-wrap:wrap;padding:18px}.nav-panel>div{min-width:110px}.breadcrumbs ol{padding:12px 0;font-size:10px}.page-title{padding-top:15px;padding-bottom:25px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{padding:19px;min-height:210px}.product-card h3{font-size:21px}.model-jump{flex-direction:column;align-items:flex-start;gap:12px;padding:18px}.model-jump select{min-width:0;width:100%}.model-prices.card{padding:18px 12px}.section-heading{align-items:flex-start}.section-heading>a{white-space:nowrap;font-size:10px}.model-prices h2{font-size:21px}th,td{padding:13px 9px}.model-prices table{min-width:0}.repair-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.repair-card>div{padding:17px}.repair-card h2{font-size:18px}.repair-card img{height:130px}.repair-hero{grid-template-columns:1fr;gap:25px}.repair-hero figure{max-width:480px}.preview-banner{justify-content:flex-start;flex-wrap:wrap;gap:7px 12px;font-size:11px}footer{flex-direction:column}.footer-links{flex-direction:row;flex-wrap:wrap}}
@media(max-width:410px){.brand-row{flex-wrap:nowrap;gap:8px;margin-left:12px;margin-right:12px}.brand-row .logo-mark{font-size:28px}.brand-row .logo small{font-size:7px}.brand-row .current-store{padding-left:8px;flex-shrink:0}.brand-row .current-store strong{font-size:11px}.brand-row .current-store>small{font-size:8px}.brand-row>.contact-button{width:auto;margin-top:0;padding:10px 8px;font-size:9px;gap:4px;flex-shrink:0}.repair-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-card{transition:none}}

.home-wrap{padding-top:32px}.home-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding:15px 0 30px}.home-hero h1{font-size:clamp(36px,4.3vw,58px);letter-spacing:-.05em;line-height:1.35;margin:20px 0}.home-hero h1 em{font-style:normal;color:#c42d42}.home-hero p{font-size:14px}.home-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 15px}.home-secondary{background:#fff;border:1px solid #d5cbcd;padding:14px 20px;font-size:13px}.home-devices{font-size:11px!important;color:#9b898f;letter-spacing:.02em;margin-top:24px}.home-art{height:390px;position:relative;background:radial-gradient(ellipse at 70% 30%,#50222a,transparent 65%),#19191e;border-bottom:5px solid #d52232;overflow:hidden;display:grid;place-items:center}.art-heading,.art-caption{position:absolute;left:25px;font-size:10px;letter-spacing:.2em;color:#ddb7c0}.art-heading{top:26px}.art-caption{bottom:25px}.circuit-board{position:relative;width:195px;height:245px;border:7px solid #626268;border-radius:7px;transform:rotate(-15deg);box-shadow:24px 22px 0 #0004;background:repeating-linear-gradient(90deg,transparent 0 17px,#ffffff09 18px 19px),repeating-linear-gradient(0deg,#343438 0 17px,#56565b 18px 19px)}.board-chip{position:absolute;left:43px;top:58px;width:100px;height:100px;background:#1b1b20;border:7px double #acacb3;box-shadow:0 0 0 8px #24242b;display:grid;place-items:center;color:#ed7c8f;font-size:10px}.board-component{position:absolute;left:30px;bottom:20px;width:46px;height:30px;background:#1b1b20;border:4px solid #9c9ca7}.board-ring{position:absolute;width:320px;height:320px;border:1px solid #c9445755;border-radius:50%}.home-strengths{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dad4d4;border-bottom:1px solid #dad4d4;padding:25px 0;gap:25px;margin:18px 0 45px}.home-strengths strong{display:block;font-size:20px}.home-strengths span{font-size:11px;color:#94848a;display:block;margin-top:7px}.home-section{margin:45px 0}.home-section-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.home-section-title h2{margin-bottom:0}.home-device-group{margin-bottom:25px}.home-device-group>h3{font-size:17px;color:#7f6a73;border-left:3px solid #c42d42;padding-left:12px}.home-banner{background:#202024;border-left:5px solid #d52232;padding:32px 36px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:white;margin:45px 0}.home-banner .eyebrow{color:#f78594}.home-banner h2{margin-top:12px}.home-banner p{color:#d0c1c6;font-size:13px;margin-bottom:0}.home-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.home-flow>div{padding:24px;background:#fff;border-top:2px solid #343038}.home-flow span{font-size:12px;color:#c42d42;font-weight:bold}.home-flow h3{font-size:18px}.home-flow p{font-size:12px}.home-access{display:grid;grid-template-columns:1fr 1.3fr;gap:25px;background:white;border:1px solid #dfdad8;padding:25px}.home-access h3{font-size:22px}.home-access p{font-size:13px}.home-access iframe{width:100%;height:330px;border:0}.home-hero .text-link{display:inline-block}
@media(max-width:760px){.home-wrap{padding-top:20px}.home-hero{grid-template-columns:1fr;gap:24px;padding-top:4px}.home-hero h1{font-size:38px}.home-hero p{font-size:13px}.home-art{height:300px}.home-strengths{gap:13px;padding:20px 0;margin:12px 0 32px}.home-strengths strong{font-size:14px}.home-strengths span{font-size:10px;line-height:1.7}.home-section{margin:32px 0}.home-section-title{align-items:flex-start;flex-direction:column;gap:10px}.home-section-title h2{font-size:24px}.home-banner{padding:24px;flex-direction:column;align-items:flex-start}.home-flow,.home-access{grid-template-columns:1fr}.home-flow{gap:12px}.home-access{padding:18px}.home-access iframe{height:280px}}

/* Three-column pricing stays readable without horizontal scrolling on phones. */
.model-prices table{table-layout:fixed;min-width:0}
.model-prices th:first-child{width:42%}
.model-prices th:nth-child(2){width:26%}
.model-prices th:nth-child(3){width:32%}
.model-prices td{overflow-wrap:anywhere}
.model-prices td:nth-child(3){min-width:0}
.model-prices .service-label{display:block;width:fit-content}
@media(max-width:760px){
  .model-prices th,.model-prices td{padding:12px 7px}
  .model-prices th{white-space:normal;line-height:1.6;font-size:10px}
  .model-prices td{font-size:12px}
  .model-prices td:nth-child(2){white-space:normal}
  .model-prices .price{font-size:14px}
  .model-prices .model-number{font-size:10px}
}

.ipad-family-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:0 0 26px}
.ipad-family-nav>a{display:flex;flex-direction:column;align-items:center;gap:12px;padding:23px 12px;background:#fff;border:1px solid #ded8d7;border-bottom:3px solid #c32d41;transition:border-color .15s,transform .15s}
.ipad-family-nav>a:hover{border-color:#c32d41;transform:translateY(-2px)}
.ipad-family-nav strong{font-size:20px}.ipad-family-nav small{color:#8e7c82;font-size:11px}
.ipad-family-icon{display:block;width:37px;height:49px;border:2px solid #494149;border-radius:5px;box-shadow:inset 0 0 0 3px #fff;background:#f2e4e7}
.ipad-family-icon.air{background:#e5edf0;border-width:1px}.ipad-family-icon.mini{width:30px;height:40px;margin:5px 0 4px;background:#ede8f1}.ipad-family-icon.pro{width:40px;background:#e1dfe5;border-color:#242128}
.ipad-family{margin:38px 0 48px;scroll-margin-top:20px}.ipad-family-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid #d7cdce;padding-bottom:14px;margin-bottom:20px}.ipad-family-heading h2{margin:7px 0 0;font-size:30px}.ipad-family-heading>a{font-size:11px;color:#a33549}.ipad-family .model-jump{padding:17px 20px}.ipad-family-empty{background:#efedeb;border:1px dashed #d7ccce;padding:26px}.ipad-family-empty strong{font-size:16px}.ipad-family-empty p{font-size:12px;margin:10px 0 17px}
@media(max-width:760px){.ipad-family-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ipad-family-nav>a{padding:18px 10px;gap:9px}.ipad-family-nav strong{font-size:18px}.ipad-family-heading h2{font-size:25px}.ipad-family-heading>a{font-size:10px}.ipad-family{margin-top:28px}.ipad-family-empty{padding:20px}}

.ipad-pricing .section-heading{flex-wrap:wrap}
.ipad-pricing .section-heading>a{margin-left:auto;color:#a33549}
.ipad-reselect{display:none}
@media(max-width:760px){
  .ipad-reselect:not([hidden]){display:flex;align-items:center;gap:12px;position:fixed;right:14px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:20;padding:11px 15px;background:#fff;border:1px solid #d2b6bd;border-radius:4px;box-shadow:0 3px 14px #33212a1c;color:#a62d42;font-size:12px;font-weight:600}
  .ipad-pricing .section-heading>a{font-size:11px}
  .ipad-pricing{padding-bottom:80px}
}

/* Product illustrations share a frame while retaining distinct hardware silhouettes. */
.product-card .device-art{display:block;width:100%;height:142px;object-fit:contain;margin:0 0 8px;background:linear-gradient(135deg,#f7f8fa,#efeff2);border-radius:5px;transition:transform .18s ease}
.product-card:hover .device-art{transform:translateY(-2px)}
.product-card h3{font-size:20px;overflow-wrap:anywhere}
@media(max-width:760px){.product-card{padding:14px;gap:7px}.product-card .device-art{height:100px;margin-bottom:4px}.product-card h3{font-size:17px;line-height:1.45}.product-card .text-link{font-size:10px}}
@media(prefers-reduced-motion:reduce){.product-card .device-art{transition:none}.product-card:hover .device-art{transform:none}}

/* Read all items down the left column, then continue down the right column. */
.repair-menu{flex-wrap:nowrap;align-items:flex-start}.repair-menu>.repair-menu-column{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px}.repair-menu-column>a{overflow-wrap:anywhere}

/* Consecutive model groups share one compact table; grades retain their own prices. */
.compact-repair-table table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.compact-repair-table tbody{border-top:2px solid #d5d6da}
.compact-repair-table tbody.tone-light{background:#f7f7f8}
.compact-repair-table th,.compact-repair-table td{padding:10px 12px;white-space:normal;overflow-wrap:anywhere;vertical-align:middle;text-align:left}
.compact-repair-table .model-cell{background:transparent;font-weight:700;text-transform:none;letter-spacing:normal}
.compact-repair-table .model-number{font-weight:400;font-size:10px;line-height:1.5;color:#757780;margin-top:4px}
.compact-repair-table .grade-cell{font-size:12px;line-height:1.5}
.compact-repair-table .price{font-size:16px}
.compact-repair-table.with-grades .model-column{width:30%}
.compact-repair-table.with-grades .grade-column{width:32%}
.compact-repair-table.with-grades .price-column{width:20%}
.compact-repair-table.with-grades .time-column{width:18%}
.compact-repair-table.single-grades .model-column{width:50%}
.compact-repair-table.single-grades .price-column{width:27%}
.compact-repair-table.single-grades .time-column{width:23%}
@media(max-width:760px){
  .compact-repair-table th,.compact-repair-table td{padding:9px 6px;font-size:11px}
  .compact-repair-table .grade-cell{font-size:10px}
  .compact-repair-table .price{font-size:12px;white-space:normal}
  .compact-repair-table.with-grades .model-column{width:25%}
  .compact-repair-table.with-grades .grade-column{width:30%}
  .compact-repair-table.with-grades .price-column{width:25%}
  .compact-repair-table.with-grades .time-column{width:20%}
}

/* Booking: shares the site's editorial red/black palette, isolated from pricing tables. */
.booking-page{max-width:1120px;margin:auto;padding:0 24px 65px}.booking-intro{padding:32px 0 20px}.booking-intro h1{font-size:36px;letter-spacing:.02em;margin:12px 0}.booking-intro p{font-size:14px;color:#776b70;line-height:1.9}.booking-steps{display:flex;gap:0;list-style:none;padding:0;margin:8px 0 28px;border-bottom:1px solid #d9d1d2}.booking-steps li{flex:1;font-size:12px;padding:14px 8px;color:#95535e;border-bottom:2px solid #bd3045}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.booking-card{background:white;border:1px solid #e4dcdd;padding:28px;margin-bottom:22px}.booking-section-head{display:flex;align-items:center;gap:16px;margin:0 0 16px}.booking-section-head>span{font-size:28px;font-weight:800;color:#d8b6be}.booking-section-head small{font-size:9px;letter-spacing:.14em;color:#ac3c50}.booking-section-head h2{font-size:21px;margin:4px 0}.booking-muted{font-size:12px;color:#85757b;line-height:1.9}.booking-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.booking-calendar>strong{text-align:center;font-size:11px;color:#8f7e85;padding:10px 0}.booking-calendar>a,.booking-calendar>.calendar-closed{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 2px;border:1px solid #e8dddf;min-height:70px;text-decoration:none}.booking-calendar small{font-size:9px;color:#9e8c91}.booking-calendar b{font-size:17px}.booking-calendar a>span{font-size:13px;color:#ab2942}.booking-calendar a:hover,.booking-calendar a.selected{border-color:#b82a42;background:#fbf0f2}.calendar-closed{background:#f4f3f2;color:#b9b1b4}.booking-legend{font-size:10px;color:#88767e;margin-top:16px}.booking-selected-date{font-size:24px;letter-spacing:.02em;color:#ab2942;margin:14px 0}.booking-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.booking-times>a,.slot-unavailable{display:grid;grid-template-columns:1fr auto;align-items:center;padding:12px 9px;border:1px solid #e1d5d8;text-decoration:none}.booking-times small{grid-column:1/-1;font-size:9px;margin-top:4px;color:#927a83}.booking-times a>span{color:#b02d46}.booking-times a:hover{background:#fbf0f2;border-color:#b52d40}.slot-unavailable{background:#f5f3f3;color:#b1a8ab}.booking-notice{padding:20px 24px;background:#f1e9e9;border-left:3px solid #b97683;font-size:12px;line-height:1.9;margin:20px 0}.booking-notice p{margin:8px 0}.booking-error{background:#fbe5e9;color:#a51f39;padding:16px}.booking-appointment-summary{display:flex;gap:20px;align-items:center;flex-wrap:wrap;border-left:3px solid #b52d40;background:#eee8e8;padding:18px;margin-bottom:24px}.booking-appointment-summary a{margin-left:auto;font-size:12px;color:#a52d42}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0 30px}.booking-form-grid label{font-size:13px;font-weight:600}.booking-form-grid .wide{grid-column:1/-1}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{display:block;width:100%;min-width:0;box-sizing:border-box;margin-top:8px;padding:12px;border:1px solid #d9cfd2;background:#fff;font:inherit;border-radius:2px}.booking-form small{display:block;font-size:11px;font-weight:400;color:#927f87}.booking-form em{font-style:normal;font-size:10px;color:#b52d40;margin-left:6px}.booking-consent{font-size:12px;line-height:1.9;background:#f7f4f3;padding:20px}.booking-consent input{accent-color:#b52d40}.booking-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:26px}.booking-actions>a{font-size:12px;color:#93707a}.booking-button{display:inline-block;border:0;background:#b52d40;color:white;padding:15px 26px;font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;border-radius:2px}.booking-button:hover{background:#922037}.booking-review{display:grid;grid-template-columns:160px 1fr;font-size:14px;margin:0}.booking-review dt,.booking-review dd{margin:0;padding:17px 12px;border-bottom:1px solid #eee7e8}.booking-review dt{color:#947e86;font-size:12px}.booking-pre{white-space:pre-wrap;overflow-wrap:anywhere}.booking-complete{text-align:center}.booking-check{display:inline-flex;justify-content:center;align-items:center;width:58px;height:58px;background:#f5e4e8;color:#b52d40;border-radius:50%;font-size:30px}.booking-form :focus-visible,.booking-calendar :focus-visible,.booking-times :focus-visible{outline:3px solid #d69aa8;outline-offset:2px}#booking-times{scroll-margin-top:20px}
@media(max-width:760px){.booking-page{padding:0 14px 35px}.booking-intro{padding-top:24px}.booking-intro h1{font-size:27px}.booking-layout{grid-template-columns:1fr;gap:0}.booking-card{padding:20px 16px}.booking-form-grid{grid-template-columns:1fr}.booking-form-grid .wide{grid-column:auto}.booking-review{grid-template-columns:100px 1fr}.booking-review dt,.booking-review dd{padding:13px 7px;font-size:12px}.booking-actions{align-items:stretch;flex-direction:column-reverse}.booking-actions .booking-button{text-align:center}.booking-steps li{font-size:10px;padding:12px 3px}.booking-complete h2{font-size:19px}}

/* Clear distinction between today, selected date and availability symbols. */
.booking-current-time{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#eef2f3;border-left:3px solid #718b94;padding:10px 12px;margin:0 0 14px;font-size:11px;color:#516970}.booking-current-time strong{font-size:14px;font-variant-numeric:tabular-nums}.booking-calendar .is-today{border:2px solid #718b94;background:#eef3f5}.booking-calendar .calendar-today-label{font-size:10px;font-weight:800;color:#456575;letter-spacing:.05em}.booking-calendar a.selected,.booking-calendar a.selected:hover{background:#b52d40;border-color:#b52d40;box-shadow:0 0 0 2px #edc2ca;color:#fff}.booking-calendar a.selected small,.booking-calendar a.selected>.booking-status-symbol{color:#fff}.booking-calendar .booking-status-symbol{display:block;font-size:25px;line-height:1.2;font-weight:700;min-height:30px}.booking-calendar .calendar-closed>.booking-status-symbol{font-size:23px;font-weight:500;color:#969093}.booking-calendar b{font-size:20px}.booking-times .booking-status-symbol{display:block;font-size:27px;font-weight:700;line-height:1.1;min-width:30px;text-align:center}.booking-times>a{border-color:#d6bec4;background:#fffafb}.booking-times>a:hover{border-color:#b52d40;background:#f9e8ec}.booking-times b{font-size:16px}.booking-selected-caption{font-size:11px;font-weight:700;color:#8c5965;margin:16px 0 2px}.booking-selected-caption+.booking-selected-date{display:inline-block;background:#f8e7eb;border-left:4px solid #b52d40;padding:9px 13px;margin:4px 0 10px}.booking-appointment-summary>strong{font-size:22px;color:#a5243c;letter-spacing:.03em}.booking-summary-label{font-size:11px;font-weight:700;color:#8b525f}.booking-appointment-summary{border-left-width:5px;background:#f8e8ec}.booking-appointment-summary .booking-summary-label{flex-basis:100%}
@media(max-width:760px){.booking-calendar .booking-status-symbol{font-size:23px;min-height:28px}.booking-times .booking-status-symbol{font-size:25px}.booking-appointment-summary{gap:10px}.booking-appointment-summary>strong{font-size:20px}}

/* Repair journal */
.article-page{padding-bottom:70px}.journal-heading{display:flex;align-items:center;justify-content:space-between;padding:38px 0 32px;border-bottom:2px solid #242424;margin-bottom:25px}.journal-heading h1{font-size:clamp(28px,4vw,42px);margin:12px 0}.journal-heading p{color:#6b6263;line-height:1.9}.journal-heading-mark{font-size:42px;font-weight:900;letter-spacing:-2px;color:#e5dddd;transform:rotate(-5deg)}.journal-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:20px;background:#f0eceb;border-radius:8px;margin-bottom:35px}.journal-filters label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#6b6263;flex:1 1 140px;min-width:0}.journal-filters input,.journal-filters select{width:100%;min-height:40px;box-sizing:border-box;padding:8px;border:1px solid #ded7d6;background:white;border-radius:4px;font:inherit;font-size:13px}.journal-filters>a{font-size:12px;padding:12px 0}.journal-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;align-items:start}.journal-results-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.journal-results-heading h2{font-size:19px}.journal-results-heading>span{font-size:11px;color:#888}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.journal-layout .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-card{background:white;border:1px solid #e7e0df;border-radius:8px;overflow:hidden;transition:transform .18s,box-shadow .18s}.journal-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #3020200d}.journal-card-image{display:block;aspect-ratio:3/2;overflow:hidden;background:#eee8e6}.journal-card-image img{width:100%;height:100%;object-fit:cover}.journal-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,#f5f1ef,#e7dedb);position:relative}.journal-placeholder:before{content:'';width:34px;height:3px;background:#bb1832;margin-bottom:14px}.journal-placeholder>span{letter-spacing:4px;font-size:11px;color:#95847e}.journal-placeholder b{font-size:23px;margin:8px 0}.journal-placeholder small{font-size:9px;letter-spacing:2px;color:#a43845}.journal-card-copy{padding:20px}.journal-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#897c78;align-items:center}.journal-meta a{color:#9a3948}.journal-card h3{font-size:17px;line-height:1.6;margin:12px 0;overflow-wrap:anywhere}.journal-card-copy>p{font-size:12px;line-height:1.8;color:#7b706e;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.journal-read{display:flex;justify-content:space-between;border-top:1px solid #eee6e4;margin-top:18px;padding-top:14px;font-size:11px;font-weight:700}.journal-read span{color:#b31a32}.journal-calendar-panel{padding:22px;background:white;border:1px solid #e7e0df;border-radius:8px}.journal-calendar-panel h2{font-size:18px;margin:10px 0 22px}.journal-calendar-month{display:flex;justify-content:space-between;align-items:center;margin:15px 0}.journal-calendar-month a{padding:6px;color:#ad2439}.journal-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.journal-calendar>b{font-size:10px;color:#998c87;padding-bottom:8px}.journal-calendar>a,.journal-calendar>span{min-height:33px;display:flex;flex-direction:column;justify-content:center;font-size:11px;border-radius:4px}.journal-calendar>a{background:#f7e8eb;color:#a51d35}.journal-calendar>a.selected{background:#ad2037;color:white}.journal-calendar small{font-size:8px}.journal-calendar-panel>p,.journal-calendar-panel>.text-link{font-size:10px;color:#8c7c77;line-height:1.7}.journal-sidebar-contact{padding:26px 20px;margin-top:22px;border-top:3px solid #b71c35;background:#ede7e4;border-radius:4px}.journal-sidebar-contact h2{font-size:22px;line-height:1.5}.journal-sidebar-contact p{font-size:12px;color:#82706b}.journal-pagination{display:flex;justify-content:center;gap:24px;margin:35px 0;font-size:12px}.journal-empty{padding:60px 25px;background:white;border:1px dashed #d9cdca;text-align:center}.journal-empty h2{font-size:21px}.journal-empty p{font-size:13px;color:#867976}.journal-preview{padding:18px;background:#fff0d6;border:1px solid #dec38c;font-size:13px;line-height:1.7}.journal-article{max-width:900px;margin:30px auto;background:white;border:1px solid #e6dfdc;padding:clamp(22px,5vw,65px)}.journal-article-header h1{font-size:clamp(25px,3.5vw,37px);line-height:1.5;overflow-wrap:anywhere;margin:20px 0}.journal-article-header>.journal-meta{margin-top:18px}.journal-lead{font-size:15px;color:#83716c;line-height:1.9}.journal-tags{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.journal-tags a{background:#f2ecea;padding:7px 10px;font-size:11px;border-radius:3px;color:#795a54}.journal-cover{margin:30px 0}.journal-cover img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}.journal-body{line-height:2;font-size:15px;overflow-wrap:anywhere;margin:35px 0}.journal-body h2{font-size:23px;border-left:3px solid #b41d34;padding-left:16px;margin-top:40px}.journal-body h3{font-size:18px;margin-top:30px}.journal-body img{max-width:100%;height:auto;display:block}.journal-body figure{margin:26px 0}.journal-body figcaption,.journal-gallery figcaption{font-size:12px;color:#8d7c75;margin-top:8px}.journal-body a{color:#ab2037;text-decoration:underline}.journal-body blockquote{margin:22px 0;padding:15px 22px;background:#f7f3f1;border-left:3px solid #d7c8c2}.journal-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:30px 0}.journal-gallery figure{margin:0}.journal-gallery img{width:100%;height:auto}.journal-repair-links{background:#f5f0ee;border-top:3px solid #aa1e34;padding:25px;margin-top:40px}.journal-repair-links h2{font-size:20px}.journal-repair-links p{font-size:12px;line-height:1.8;color:#8a746d}.journal-article-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;border-top:1px solid #e8dfdc;padding-top:24px;margin-top:32px;font-size:12px}.journal-case-link{display:inline-block;font-size:10px!important;color:#ac243a!important;margin:4px 0 0 8px;white-space:nowrap}
@media(max-width:900px){.journal-layout{grid-template-columns:minmax(0,1fr)}.journal-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.journal-sidebar-contact{margin-top:0}.journal-grid{gap:15px}.journal-heading-mark{font-size:30px}}@media(max-width:600px){.journal-heading{padding-top:20px}.journal-heading-mark{display:none}.journal-heading p{font-size:13px}.journal-grid,.journal-layout .journal-grid{grid-template-columns:minmax(0,1fr)}.journal-filters{padding:14px;gap:10px}.journal-filters label{flex-basis:calc(50% - 10px)}.journal-sidebar{grid-template-columns:minmax(0,1fr)}.journal-card{display:grid;grid-template-columns:110px minmax(0,1fr)}.journal-card-image{height:100%;aspect-ratio:auto;min-height:160px}.journal-placeholder b{font-size:15px}.journal-placeholder>span{font-size:8px;letter-spacing:1px}.journal-placeholder small{font-size:6px;letter-spacing:0}.journal-card-copy{padding:14px}.journal-card h3{font-size:15px;margin:8px 0}.journal-card-copy>p{font-size:11px;-webkit-line-clamp:2}.journal-meta{font-size:10px;gap:6px}.journal-read{margin-top:10px;padding-top:10px}.journal-article{padding:22px 17px;margin-top:18px}.journal-body{font-size:14px}.journal-gallery{gap:10px}.journal-repair-links{padding:18px}.journal-repair-links h2{font-size:18px}.journal-case-link{margin-left:0;display:block}}

/* Inquiry / Q&A: independent layout, shared brand palette. */
.qa-page{padding-bottom:56px}.qa-intro{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:22px 0 30px}.qa-intro h1{font-size:clamp(26px,3.5vw,39px)}.qa-intro p{font-size:14px}.qa-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;align-items:start}.qa-card{padding:32px;background:#fff;border:1px solid #e5dede;margin-bottom:24px;min-width:0}.qa-side{padding:26px;background:#edeae7;border-top:3px solid #ba2941}.qa-side h2{font-size:18px}.qa-side ol{padding-left:20px;font-size:13px;line-height:2.8}.qa-side p{font-size:12px}.qa-section-title{display:flex;align-items:center;gap:12px;margin:0 0 20px}.qa-section-title:not(:first-of-type){margin-top:32px}.qa-section-title>span{color:#b52a40;font-size:12px;font-weight:700}.qa-section-title h2{font-size:18px;margin:0}.qa-section-title small{font-size:11px;font-weight:400;color:#777}.qa-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.qa-fields label,.qa-filter label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700}.qa-fields input,.qa-fields select,.qa-fields textarea,.qa-filter input,.qa-filter select,.qa-challenge input{width:100%;min-width:0;background:#fff;border:1px solid #d7d1d1;border-radius:3px;padding:11px;font:inherit}.qa-fields textarea{resize:vertical;font-weight:400;line-height:1.7}.qa-fields small{font-size:11px;line-height:1.7;color:#80777a;font-weight:400}.qa-fields em,.qa-challenge em{font-size:10px;color:#b52a40;font-style:normal}.qa-wide{grid-column:1/-1}.qa-upload{border:1px dashed #c9babc;padding:18px;background:#faf8f6}.qa-upload input{border:0;padding:0;background:transparent}.qa-visibility{border:1px solid #e4dddd;padding:18px;margin:0 0 16px}.qa-visibility legend{font-size:13px;font-weight:700}.qa-visibility label{display:block;margin:10px 0;font-size:14px}.qa-visibility small{display:block;margin:5px 0 0 24px;color:#756b70;font-size:12px;line-height:1.7}.qa-notice{background:#f7f3f1;padding:20px;font-size:12px;line-height:1.8}.qa-notice p{font-size:12px}.qa-check{display:flex;align-items:start;gap:8px}.qa-check input{margin-top:5px;flex:none}.qa-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.qa-challenge{display:flex;gap:12px;align-items:center;margin-top:22px;font-size:12px;flex-wrap:wrap}.qa-challenge input{max-width:80px}.qa-actions{display:flex;align-items:center;gap:20px;margin-top:26px;flex-wrap:wrap;font-size:13px}.qa-actions>span{font-size:11px;color:#8a7c80}.qa-actions button{border:0;cursor:pointer}.qa-actions button:disabled{opacity:.6}.qa-contact{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;border-top:1px solid #eee;padding-top:22px;margin-top:26px;font-size:14px}.qa-contact dd{margin:0;overflow-wrap:anywhere}.qa-contact dt{color:#84767d}.qa-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95;font-size:14px;color:#39343a}.qa-chip{display:inline-block;background:#f4e9eb;color:#9b2d40;padding:6px 10px;font-size:12px}.qa-muted{color:#82747a;font-size:12px;line-height:1.8}.qa-received{max-width:780px;margin:32px auto}.qa-received h1{font-size:28px}.qa-receipt{display:block;padding:16px;background:#f7f2ef;color:#b52a40;font-size:23px}.qa-filter{display:flex;flex-wrap:wrap;gap:14px;align-items:end;background:#eeece8;padding:22px;margin-bottom:22px}.qa-filter label{flex:1;min-width:160px}.qa-filter .contact-button{border:0;cursor:pointer}.qa-filter>a{font-size:12px;padding:12px 0}.qa-question-card{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:14px;padding:26px;background:#fff;border:1px solid #e1dada;margin-bottom:14px}.qa-question-card:hover{border-color:#ba2941}.qa-question-card h2{font-size:19px;margin:10px 0}.qa-question-card p{font-size:13px;overflow-wrap:anywhere}.qa-q{font-size:27px;color:#ba2941;font-weight:700;line-height:1.4}.qa-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:11px;color:#7a6f76}.qa-meta span{background:#f3f0ee;padding:4px 7px}.qa-answer-status{font-size:11px;color:#9a3547}.qa-answer-status span{color:#8a7f84;margin-left:10px}.qa-pagination{display:flex;justify-content:center;gap:28px;margin-top:26px;font-size:13px}.qa-detail-title{display:flex;gap:18px;align-items:start;margin:24px 0}.qa-detail-title h1{font-size:26px;margin:0;overflow-wrap:anywhere}.qa-answer{display:flex;gap:18px;margin:32px 0 18px;padding:26px;background:#f7f3f0;border-left:3px solid #b52a40}.qa-answer>div{min-width:0}.qa-answer strong{font-size:14px}.qa-answer small{display:block;font-size:11px;color:#84777c;margin:8px 0 16px}.qa-gallery{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.qa-gallery a{max-width:30%;min-width:0}.qa-gallery img{max-width:100%;max-height:200px;object-fit:contain}.qa-private-banner{padding:16px;background:#f4e4e9;color:#922b40;font-size:13px;margin-bottom:20px}
@media(max-width:800px){.qa-layout{grid-template-columns:1fr}.qa-side{order:2}.qa-intro{align-items:start;flex-direction:column;gap:8px}.qa-intro h1{font-size:28px}.qa-card{padding:22px}.qa-fields{grid-template-columns:1fr}.qa-question-card{padding:20px 16px;grid-template-columns:32px minmax(0,1fr);gap:8px}.qa-question-card>span:last-child{display:none}.qa-question-card h2{font-size:17px}.qa-answer{padding:18px 14px;gap:12px}.qa-detail-title h1{font-size:23px}.qa-filter{padding:16px}.qa-filter label{min-width:130px}.qa-gallery a{max-width:45%}.qa-challenge{gap:8px}}

.qa-nav-short{display:none}@media(max-width:760px){.qa-nav-full{display:none}.qa-nav-short{display:inline}}

@media(max-width:760px){.main-nav>a,.nav-dropdown>a{padding-left:12px;padding-right:12px}.nav-dropdown>a.active:before,.nav-dropdown:hover>a:before,.nav-dropdown.is-open>a:before{left:12px;right:12px}}

/* Keep the pricing mega-menu inside the viewport as the catalog grows. */
#service-menu{display:none;grid-template-columns:repeat(3,minmax(0,1fr));width:min(800px,calc(100vw - 36px));max-height:min(60dvh,calc(100dvh - 260px));overflow-y:auto;overscroll-behavior:contain;gap:22px 30px}
.nav-dropdown:hover>#service-menu,.nav-dropdown:focus-within>#service-menu,.nav-dropdown.is-open>#service-menu{display:grid}
#service-menu>div{min-width:0}#service-menu a{white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){#service-menu{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(45dvh,calc(100dvh - 340px));gap:18px}}

.pricing-menu-group+.pricing-menu-group{margin-top:22px;padding-top:18px;border-top:1px solid #eee6e8}

.notice-banner{background:#752e42;color:#fff;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px 18px;padding:10px 20px;font-size:13px}.notice-banner a{color:inherit;text-decoration:underline}.notice-list{padding:30px 0}.notice-list article{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid #e5dce0}.notice-list time{font-size:12px;color:#777;white-space:nowrap}.notice-body{white-space:pre-wrap;line-height:1.9}.notice-detail{padding:30px 0 60px}

/* Shared compact search entrance and grouped search results. */
.site-search-bar{display:flex;align-items:center;gap:18px;max-width:1160px;margin:0 auto;padding:10px 24px 16px}
.site-search-bar label{font-size:13px;font-weight:700;white-space:nowrap}.site-search-bar>div{display:flex;max-width:620px;flex:1;min-width:0;border:1px solid #d5cccc;border-radius:6px;overflow:hidden;background:#fff}
.site-search-bar input[type=search]{width:100%;min-width:0;border:0;padding:11px 14px;font:inherit;background:transparent}.site-search-bar button{border:0;background:#9b293d;color:white;padding:10px 22px;white-space:nowrap;font:inherit;font-weight:700;cursor:pointer}.site-search-bar input:focus-visible{outline:2px solid #9b293d;outline-offset:-3px}
.search-page{padding-bottom:40px}.search-page>.breadcrumbs{margin-top:18px;margin-bottom:16px}
.search-overview{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 22px;background:#fff;border:1px solid #e7dfe1;border-radius:8px;margin:0 0 16px;box-shadow:0 2px 12px #40212a04}
.search-heading{min-width:0}.search-title-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px}.search-heading h1{font-size:25px;margin:0;letter-spacing:.01em;white-space:nowrap}.search-keyword{font-size:17px;font-weight:700;color:#9b293d;overflow-wrap:anywhere}
.search-store-context{font-size:12px;margin:9px 0 0;line-height:1.7;color:#82727a}.search-store-context strong{color:#473940}.search-store-context>span{display:inline-block;margin-left:12px}
.search-counts{display:flex;flex:none;gap:10px}.search-counts>a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:105px;padding:9px 14px;border:1px solid #eee5e8;border-radius:6px;background:#fbf8f8}.search-counts>a:hover{border-color:#b55267;background:#f8edef}.search-counts strong{font-size:25px;line-height:1.15;color:#9b293d}.search-counts span{font-size:11px;color:#74636b}
.search-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}.search-tabs a{padding:9px 16px;background:#fff;border:1px solid #e4dadd;border-radius:5px;text-decoration:none;color:#65535d;font-size:13px;font-weight:700}.search-tabs a:hover{border-color:#b55267}.search-tabs a[aria-current=page]{background:#932a3d;border-color:#932a3d;color:white}.search-tabs.compact{margin:0 0 14px}.search-tabs.compact a{font-size:12px;padding:6px 12px}
.search-section{margin-top:22px}.search-section-title{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}.search-section-title h2{font-size:20px;margin:0}.search-section-title small{display:inline-block;font-size:12px;font-weight:400;color:#776a6e;background:#eae5e5;border-radius:20px;padding:3px 9px;margin-left:8px;vertical-align:middle}.search-section-title>a{font-size:12px;color:#9b293d}
.search-model-grid,.search-article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.search-model-card,.search-article-card{border:1px solid #e3dadd;border-radius:7px;padding:18px 20px;background:white;min-width:0;overflow-wrap:anywhere;box-shadow:0 2px 10px #40212a03}.search-model-card:hover,.search-article-card:hover{border-color:#cba0aa;box-shadow:0 4px 16px #40212a08}.search-model-card h3,.search-article-card h3{font-size:20px;margin:6px 0 10px}.search-model-card h3 a,.search-article-card h3 a{color:inherit;text-decoration:none}.search-model-card h3 a:hover,.search-article-card h3 a:hover{color:#9b293d}
.search-model-card ul{list-style:none;padding:0;margin:10px 0 12px}.search-model-card li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-top:1px solid #f0eaec;padding:9px 0;font-size:13px}.search-model-card li .price{white-space:nowrap;font-size:15px}.search-model-card .search-card-link,.search-article-card>.text-link{display:inline-block;font-size:12px;padding-top:3px}.search-help{font-size:12px;color:#86757e;line-height:1.7;margin:12px 0 0}.search-empty{padding:18px;background:#fff;border:1px dashed #d9cbd0;border-radius:6px;font-size:14px;line-height:1.8}
.search-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:24px 0;font-size:13px}.search-pagination a{padding:8px 14px;border:1px solid #ded1d6;border-radius:5px;background:#fff}
.search-contact{display:flex;flex-wrap:wrap;align-items:center;gap:6px 24px;margin-top:26px;padding:18px 22px;background:#eee7e8;border-radius:7px}.search-contact h2{font-size:16px;margin:0}.search-contact p{font-size:12px;flex:1;margin:0;min-width:180px}.search-contact .booking-button{padding:11px 16px;font-size:12px}.search-article-card .muted,.search-model-card .muted{font-size:11px;color:#897780;margin:0;line-height:1.7}.search-article-card>p:not(.muted){font-size:13px;line-height:1.8;margin:10px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@media(max-width:700px){.search-overview{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.search-heading h1{font-size:22px}.search-keyword{font-size:16px}.search-store-context>span{display:block;margin-left:0}.search-counts>a{flex:1;min-width:0;flex-direction:row;gap:10px;padding:8px 12px}.search-counts strong{font-size:22px}.search-tabs{gap:5px}.search-tabs a{padding:8px 11px;font-size:12px}.search-model-grid,.search-article-grid{grid-template-columns:1fr}.search-model-card,.search-article-card{padding:16px}.search-model-card li{flex-wrap:wrap;gap:4px 12px}.search-section-title h2{font-size:18px}.search-contact{padding:16px;display:block}.search-contact p{margin:8px 0 12px}.search-contact .booking-button{display:inline-block}}

/* One-row desktop header; search occupies its own row only when space is limited. */
.brand-row{display:grid;grid-template-columns:auto minmax(90px,160px) minmax(220px,1fr) auto;gap:24px}
.brand-row>.current-store{min-width:0;overflow-wrap:anywhere}.brand-row>.contact-button{margin-left:0}
.brand-row .site-search-bar{display:block;margin:0;padding:0;min-width:0;width:100%;max-width:none}
.brand-row .site-search-bar>div{max-width:none;width:100%}
.site-search-bar .search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.brand-row .site-search-bar button{padding:10px 14px;display:flex;align-items:center;justify-content:center;flex:none}
.brand-row .site-search-bar input[type=search]{font-size:14px;padding:11px 12px}
.home-notices{margin:16px 0 30px;padding:20px 24px;background:#fff;border:1px solid #e4dddf;border-left:3px solid #a93348;border-radius:3px}
.home-notices-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.home-notices-heading h2{margin:0;font-size:20px}.home-notices-heading>a{font-size:12px;white-space:nowrap}
.home-notices ul{list-style:none;margin:0;padding:0}.home-notices li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;align-items:baseline;border-top:1px solid #eee7e9;padding:11px 0}.home-notices time{font-size:12px;color:#897980}.home-notices li a{font-size:14px;overflow-wrap:anywhere}.home-notices li a:hover{text-decoration:underline}
@media(max-width:1000px){.brand-row{grid-template-columns:auto minmax(0,1fr) auto;gap:14px}.brand-row>.logo{grid-column:1;grid-row:1}.brand-row>.current-store{grid-column:2;grid-row:1}.brand-row>.contact-button{grid-column:3;grid-row:1}.brand-row .site-search-bar{grid-column:1/-1;grid-row:2}.brand-row .site-search-bar input[type=search]{font-size:16px}}
@media(max-width:480px){.brand-row{gap:10px 8px}.home-notices{padding:16px;margin-bottom:24px}.home-notices li{grid-template-columns:1fr;gap:4px}.home-notices-heading h2{font-size:18px}}

/* Customer feedback and sharing */
.community-panel,.customer-login-panel{margin:32px 0;padding:28px;border:1px solid #e4e0dc;border-radius:12px;background:#fff}.customer-login-panel{max-width:720px;margin:36px auto}.community-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.community-heading h2{font-size:21px;margin:8px 0}.helpful-count{color:#8f2943;font-weight:700;font-size:13px}.reaction-actions,.share-actions{display:flex;flex-wrap:wrap;gap:8px}.reaction-actions button,.share-actions a,.share-actions button,.community-panel form button,.customer-login-panel button{border:1px solid #d8d2d1;border-radius:6px;background:#fff;padding:9px 13px;font:inherit;cursor:pointer;color:#443d3f;text-decoration:none}.reaction-actions .selected,.community-primary,.community-panel form .community-primary{background:#952a46;color:#fff;border-color:#952a46}.community-primary{display:inline-block;padding:10px 15px;border-radius:6px;text-decoration:none}.share-panel{padding:18px 0;margin:20px 0;border-top:1px solid #eee5e5;border-bottom:1px solid #eee5e5}.share-panel strong{display:block;font-size:13px;margin-bottom:10px}.share-panel [data-share=line]{color:#067e3e}.share-panel [data-share=facebook]{color:#2459a1}.share-panel [data-share=hatena]{color:#007d9f}.community-comment{padding:22px 0;border-bottom:1px solid #e8e4e1}.comment-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:#746c6d}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.staff-comment{background:#f5f2f0;padding:16px;border-left:3px solid #952a46}.community-notice{font-size:13px;padding:13px;background:#f7f5f0;line-height:1.8}.pending-badge{background:#fff0cf;padding:2px 7px;border-radius:4px}.community-panel textarea{width:100%;min-height:100px;margin:10px 0;padding:12px;box-sizing:border-box}.comment-form{margin-top:22px}.community-pages{display:flex;gap:15px;margin-top:16px}.community-error{color:#a21e37}.symptom-list{display:flex;flex-wrap:wrap;gap:8px}.symptom-tag{border-radius:5px;background:#f4ecee;padding:8px 12px}.symptom-description{font-size:14px;color:#665b60}.community-panel small{display:block;margin-top:9px;color:#776d70}
@media(max-width:600px){.community-panel,.customer-login-panel{padding:18px;margin:20px 0}.community-heading{align-items:flex-start}.share-actions{gap:6px}.share-actions a,.share-actions button{font-size:12px;padding:8px 10px}}

/* Keep contact validation focus visible even after a pointer click. */
.booking-form input[aria-invalid=true]:focus{outline:3px solid #b52d40;outline-offset:3px;scroll-margin-block:100px}

.booking-field-error{display:block;margin:8px 0 0;font-weight:400}.booking-field-error[hidden]{display:none}.booking-form [aria-invalid=true]:focus{outline:3px solid #b52d40;outline-offset:3px}.booking-layout{scroll-margin-top:24px}

/* Customer account and article interaction surfaces */
.topline{display:flex;align-items:center;gap:12px;justify-content:space-between;overflow:visible}.customer-controls{display:flex;align-items:center;gap:18px;margin-left:auto;flex-shrink:0}.customer-login-link,.customer-menu>summary{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 12px;background:#922640;color:#fff;border-radius:5px;font-size:12px;font-weight:700;cursor:pointer}.customer-menu{position:relative}.customer-menu>summary{list-style:none}.customer-menu>summary::-webkit-details-marker{display:none}.customer-menu>div{position:absolute;right:0;top:calc(100% + 8px);z-index:100;width:220px;background:#fff;color:#302a2c;border:1px solid #e0d5d5;box-shadow:0 12px 30px #2e172022;border-radius:8px;padding:8px}.customer-menu a,.customer-menu form button{display:block;width:100%;text-align:left;padding:12px;border:0;background:transparent;color:inherit;font:inherit;font-size:13px}.customer-menu a:hover,.customer-menu button:hover{background:#f8eff2}.customer-menu form{margin:0}.customer-menu [data-customer-name]{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.article-page>.community-panel{max-width:900px;margin:30px auto;padding:clamp(22px,5vw,65px);border-radius:0;border-color:#e6dfdc}.community-panel form.reaction-actions button{background:#f5e7ec;border-color:#d7a4b4;color:#7d203b;font-weight:700;min-height:44px}.community-panel form.reaction-actions button.selected{background:#922640;color:#fff;border-color:#922640;box-shadow:0 0 0 2px #edd0d9}.community-panel form.reaction-actions button[value=no].selected{background:#3c4149;border-color:#3c4149}.community-panel form.reaction-actions button.quiet{background:#eee9e8;border-color:#d8d2d1;color:#554b4d}.share-actions a,.share-actions button{font-weight:700;min-height:42px;display:inline-flex;align-items:center;justify-content:center;border:0!important;color:#fff!important;background:#5d5157;box-shadow:0 2px 0 #0002}.share-actions [data-share=line]{background:#06c755}.share-actions [data-share=x]{background:#111}.share-actions [data-share=facebook]{background:#0866ff}.share-actions [data-share=hatena]{background:#008fde}.share-actions [data-copy]{background:#69505b}.share-actions [data-native]{background:#5a6572}.share-actions [hidden]{display:none}.share-actions a:hover,.share-actions button:hover{filter:brightness(.92)}.community-panel button:disabled,.customer-page button:disabled{opacity:.55;cursor:wait}.community-status{color:#8d2440;font-size:13px;line-height:1.7}.community-status:empty{display:none}.community-panel form .community-danger,.customer-page .community-danger{background:#fbe7e8;border:1px solid #d9a5a9;color:#9c2435}.community-comment details summary{cursor:pointer;font-size:13px;color:#922640;padding:8px 0}.comment-state{font-size:12px;padding:3px 8px;border-radius:4px;background:#f2e9ec}.customer-page{max-width:960px;padding-top:35px;padding-bottom:65px}.customer-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.customer-tabs a{background:#922640;color:#fff;padding:12px 16px;border-radius:6px}.customer-section{background:#fff;border:1px solid #e4dada;padding:28px;margin:25px 0;scroll-margin-top:24px}.customer-section h2{font-size:22px;margin-top:0}.customer-page textarea{width:100%;min-height:110px;padding:12px;margin:12px 0;box-sizing:border-box;font:inherit}.customer-page button{font:inherit;cursor:pointer;padding:10px 15px;border-radius:6px;border:1px solid #d4bec6}.customer-page label{display:block}.customer-page input[name=nickname]{display:block;width:min(100%,400px);padding:12px;margin:10px 0 16px;border:1px solid #d5c8cb;font:inherit}.customer-reaction{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.customer-section a{color:#922640}.customer-section .community-primary{background:#922640;color:#fff}.customer-reaction span{font-size:12px}
@media(max-width:1000px){.topline-slogan{display:none}.customer-controls{gap:8px}}@media(max-width:600px){.topline>span:first-child{max-width:45%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.customer-login-link,.customer-menu>summary{font-size:11px;padding:6px 9px}.customer-menu [data-customer-name]{max-width:125px}.article-page>.community-panel{margin:24px auto;padding:22px}.customer-section{padding:20px 16px}.customer-tabs a{padding:10px;font-size:12px}.comment-meta{gap:8px}}
/* The tagline follows the wordmark width without expanding the logo column. */
.brand-row .logo .logo-tagline{position:relative;align-self:stretch;height:12px;margin-top:4px;letter-spacing:0}.logo-tagline svg{position:absolute;inset:0;display:block;width:100%;height:100%;fill:currentColor;overflow:hidden}@media(max-width:760px){.brand-row .logo .logo-tagline{height:10px}}
/* Homepage copy and the supplied 4:3 repair photographs. */
.home-hero{grid-template-columns:1.05fr 1fr;gap:42px;align-items:center}
.home-hero h1{font-size:clamp(32px,3.5vw,46px);line-height:1.32;margin:16px 0}
.home-intro>p{line-height:1.85;margin:13px 0;font-size:13px}
.home-intro .home-hero-lead{font-size:19px;font-weight:700;color:#343038;line-height:1.6}
.home-intro .home-hero-promise{font-weight:700;color:#9d2537;font-size:14px}
.home-intro .home-hero-note{font-size:10px;color:#79737a;line-height:1.7}
.home-strengths strong{font-size:18px;line-height:1.5}
.home-strengths span{line-height:1.8}
.home-slideshow{min-width:0;align-self:center;background:#18191d;border:1px solid #30262a;border-radius:8px;overflow:hidden;box-shadow:0 16px 34px #25212b14;touch-action:pan-y}
.home-slides{aspect-ratio:4/3;position:relative;background:#18191d}
.home-slide{display:block;width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.home-slide[hidden],.home-slide-controls[hidden]{display:none}
.home-slide-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;background:#232126}
.home-slide-controls button{cursor:pointer;border:1px solid #76626b;border-radius:5px;background:#3b3037;color:#fff;min-width:32px;min-height:32px;font-size:21px;line-height:1}
.home-slide-controls button:hover{background:#67404b}
.home-slide-dots{display:flex;gap:8px}
.home-slide-dots button{padding:0;min-width:20px;min-height:28px;border:0;background:transparent;position:relative}
.home-slide-dots button:before{content:'';position:absolute;width:8px;height:8px;border-radius:50%;left:6px;top:10px;background:#aaa0a5}
.home-slide-dots button[aria-pressed=true]:before{background:#ec4964;box-shadow:0 0 0 3px #ec496428}
.home-slide-controls .home-slide-pause{font-size:11px;padding:7px 9px;min-width:64px}
@media(max-width:760px){.home-hero{grid-template-columns:1fr;gap:25px}.home-hero h1{font-size:34px}.home-intro .home-hero-lead{font-size:18px}.home-strengths{grid-template-columns:1fr;gap:16px}.home-strengths>div+div{border-top:1px solid #e6dfe0;padding-top:16px}.home-strengths strong{font-size:16px}.home-slide-controls{gap:8px}.home-slide-controls button{min-height:36px}.home-slide-dots button{min-width:21px}}
/* Matched primary and secondary homepage actions and store information. */
.home-actions .home-action,.home-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:13px 16px;border:1px solid #3e3940;border-radius:5px;background:#3e3940;color:#fff;font-size:12px;font-weight:700;line-height:1.5;text-align:center;transition:background .15s,border-color .15s}
.home-action:hover{background:#56505a;border-color:#56505a}
.home-actions .home-action-primary,.home-action-primary{background:#be2d43;border-color:#be2d43}
.home-action-primary:hover{background:#982438;border-color:#982438}
.home-hero .home-actions{gap:9px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}
.home-hero .home-action{padding:13px 8px;font-size:11px;min-height:48px}
.home-shop-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;background:white;border:1px solid #e0d8da;border-left:4px solid #be2d43;padding:28px}
.home-shop-summary h2{font-size:23px}.home-shop-summary p{font-size:13px}.home-shop-summary .home-actions{margin:0}
.footer-staff{display:flex;flex-wrap:wrap;gap:15px;padding-top:14px;border-top:1px solid #dfd7da;color:#888087;font-size:10px}
.shop-page{padding-bottom:30px}.shop-overview{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;align-items:start}
.shop-card{background:white;padding:28px;border:1px solid #e1dbdd;border-top:3px solid #ba3045;margin:0 0 24px;border-radius:5px}
.shop-card h2{font-size:23px}.shop-card p{font-size:13px}.shop-facts{display:grid;grid-template-columns:95px minmax(0,1fr);margin:0;font-size:13px;line-height:1.8}.shop-facts dt,.shop-facts dd{margin:0;padding:12px 0;border-bottom:1px solid #eee8ea}.shop-facts dt{font-weight:700;color:#776a71}.shop-facts a{color:#9b293e;overflow-wrap:anywhere}
.shop-hours{width:100%;font-size:13px;border-collapse:collapse}.shop-hours th,.shop-hours td{padding:10px 12px;text-align:left}.shop-hours small{display:block;color:#80757b;margin-top:5px}
.shop-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.shop-route-grid article+article{border-left:1px solid #e6dfe2;padding-left:24px}.shop-route-grid h3{font-size:17px}.shop-route-grid strong{font-size:14px;color:#b12d42}.shop-card .shop-note{font-size:11px;color:#887b83;line-height:1.7}.shop-map{display:block;width:100%;height:370px;border:0;background:#eee}
@media(max-width:760px){.home-hero .home-actions{grid-template-columns:1fr}.home-hero .home-action{font-size:13px}.home-shop-summary{flex-direction:column;align-items:stretch;padding:21px}.shop-overview,.shop-route-grid{grid-template-columns:1fr}.shop-card{padding:20px}.shop-route-grid{gap:15px}.shop-route-grid article+article{border-left:0;border-top:1px solid #e6dfe2;padding:15px 0 0}.shop-facts{grid-template-columns:76px minmax(0,1fr)}.shop-map{height:290px}.shop-card .home-actions{display:grid;grid-template-columns:1fr}.shop-card .home-action{width:100%}}

/* Desktop keeps the original header; compact tools are mobile-only. */
.mobile-header-content { display:none; }
.desktop-header-content { display:contents; }
.desktop-header-content .logo-wordmark { display:block;width:218px;height:auto; }
@media(min-width:761px) and (max-width:1000px) {
  .desktop-header-content .logo-wordmark { width:205px; }
}
@media(max-width:760px) {
  .desktop-header-content { display:none; }
  .mobile-header-content { display:contents; }
/* Compact shared header: keep store context beside the fixed wordmark. */
.site-header .brand-row {
  display:flex;
  position:relative;
  align-items:center;
  gap:20px;
}
.site-header .brand-row>.logo { grid-column:auto;grid-row:auto; }
.logo-wordmark { display:block;width:240px;height:auto; }
.site-header .current-store { grid-column:auto;grid-row:auto;flex:0 1 auto; }
.header-tools { display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0; }
.header-tools .header-tool {
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;min-width:48px;min-height:48px;padding:4px;
  border:0;border-radius:5px;background:transparent;color:#302a2c;
  font:inherit;font-size:11px;font-weight:600;line-height:1.3;cursor:pointer;list-style:none;
}
.header-tools .header-tool::-webkit-details-marker { display:none; }
.header-tool svg { display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.header-tools .header-tool:hover,.header-tools details[open]>.header-tool { background:#f5eeee;color:#a32b42; }
.header-tools [hidden],.header-search-heading [hidden] { display:none; }
.header-tools .customer-controls { display:block; }
.header-search-panel {
  position:absolute;top:calc(100% - 5px);right:0;width:min(520px,100%);z-index:25;
  background:#fff;border:1px solid #e1d7da;border-radius:8px;padding:16px;
  box-shadow:0 12px 30px #2e172022;
}
.header-search-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:13px; }
.header-search-heading button { border:0;background:transparent;color:#7a6167;min-height:36px;cursor:pointer;font:inherit;font-size:12px; }
.site-header .site-search-bar input[type=search] { font-size:16px; }
.header-customer-name { display:block;padding:10px;overflow-wrap:anywhere;font-size:12px; }
.header-tools .customer-menu>div { z-index:25;max-width:calc(100vw - 24px); }
.site-header.header-enhanced .main-nav { display:none; }
.site-header.header-enhanced.nav-expanded .main-nav { display:flex; }
.site-header .topline>span { display:block; }
.notice-banner.notice-ticker { flex-wrap:nowrap;gap:8px;padding:0 max(18px,calc((100% - 1160px)/2));font-size:12px; }
.notice-viewport { flex:1;min-width:0;overflow:auto;scrollbar-width:none; }
.notice-viewport::-webkit-scrollbar { display:none; }
.notice-track { display:flex;width:max-content; }
.notice-group { display:flex;align-items:center;flex-shrink:0;gap:32px;padding:9px 32px 9px 0;white-space:nowrap; }
.notice-group a+a:before { content:'•';display:inline-block;margin-right:32px;text-decoration:none; }
.notice-group a { line-height:1.5; }
.notice-pause { align-self:stretch;flex-shrink:0;min-width:32px;border:0;background:transparent;color:#fff;cursor:pointer;font-size:13px; }
.notice-pause[hidden] { display:none; }
.notice-ticker.is-scrolling .notice-viewport { overflow:hidden; }
.notice-ticker.is-scrolling .notice-track { animation:notice-scroll var(--notice-duration,30s) linear infinite; }
.notice-ticker:hover .notice-track,.notice-ticker:focus-within .notice-track,.notice-ticker.is-paused .notice-track { animation-play-state:paused; }
.notice-ticker:focus-within .notice-viewport { overflow:auto; }
.notice-ticker:focus-within .notice-track { animation:none; }
@keyframes notice-scroll { to { transform:translateX(-50%); } }
@media(max-width:1000px) {
  .site-header .brand-row { gap:16px; }
  .logo-wordmark { width:210px; }
}
@media(max-width:760px) {
  .site-header .brand-row { flex-wrap:nowrap;gap:12px;margin-left:12px;margin-right:12px;padding:14px 0; }
  .logo-wordmark { width:170px; }
  .site-header .brand-row .current-store { padding-left:10px;flex-shrink:0;gap:5px; }
  .header-tools { gap:2px; }
  .header-tools .header-tool { min-width:44px;min-height:44px;font-size:10px; }
  .site-header .topline { padding:7px 12px;font-size:10px; }
  .site-header .brand-row .logo .logo-tagline { height:10px; }
  .notice-banner.notice-ticker { padding:0 12px; }
}
@media(max-width:440px) {
  .site-header .brand-row { gap:8px; }
  .logo-wordmark { width:135px; }
  .site-header .brand-row .current-store { padding-left:8px; }
  .site-header .brand-row .current-store strong { font-size:11px; }
  .current-store details { font-size:10px; }
  .header-tools { gap:0; }
  .site-header .brand-row .logo .logo-tagline { height:8px; }
}
@media(max-width:370px) {
  .site-header .brand-row { flex-wrap:wrap; }
  .header-tools { flex-basis:100%;justify-content:flex-end;margin-top:0; }
}
@media(prefers-reduced-motion:reduce) {
  .notice-ticker.is-scrolling .notice-track { animation:none; }
  .notice-ticker.is-scrolling .notice-viewport { overflow:auto; }
  .notice-group[aria-hidden] { display:none; }
}

.notice-group[hidden] { display:none; }

.site-header .current-store details>div { right:0;max-width:calc(100vw - 24px); }

}

/* Phone-only vertical navigation, retaining all existing catalog links. */
.mobile-nav-toggle,.nav-panel .mobile-nav-all { display:none; }
@media(max-width:760px) {
  .site-header.header-enhanced.nav-expanded .main-nav { display:block; }
  .site-header .main-nav { padding:0 0 8px;border-bottom:2px solid #b92a42; }
  .site-header .main-nav>a,.site-header .mobile-nav-toggle {
    display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;
    gap:12px;padding:12px 4px;border:0;border-bottom:1px solid #e8e1e2;background:transparent;
    color:inherit;text-align:left;font:inherit;font-size:14px;font-weight:700;cursor:pointer;
    white-space:normal;line-height:1.5;
  }
  .site-header .main-nav>a:after { content:'›';position:static;width:auto;height:auto;background:none;font-size:20px;color:#89767d; }
  .site-header .nav-dropdown { position:static;width:100%; }
  .site-header.header-enhanced .nav-dropdown>[data-menu] { display:none; }
  .site-header .nav-dropdown:after,.site-header .nav-dropdown>a:before { display:none; }
  .site-header .mobile-nav-toggle:after { content:'';width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 8px 4px;flex-shrink:0; }
  .site-header .nav-dropdown.is-open>.mobile-nav-toggle { color:#b92a42;border-bottom-color:transparent; }
  .site-header .nav-dropdown.is-open>.mobile-nav-toggle:after { transform:rotate(225deg);margin-bottom:-4px; }
  .site-header .nav-panel {
    display:none;position:static;width:100%;max-height:none;overflow:visible;
    padding:10px 12px 4px;margin:0 0 4px;box-shadow:none;background:#faf5f6;
    border:0;border-top:2px solid #b92a42;
  }
  .site-header .nav-dropdown:hover>.nav-panel,.site-header .nav-dropdown:focus-within>.nav-panel { display:none; }
  .site-header .nav-dropdown.is-open>.nav-panel,.site-header:not(.header-enhanced) .nav-panel { display:block; }
  #site-main-nav #service-menu,#site-main-nav #repair-menu {
    display:none;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;
    max-height:none;overflow:visible;gap:10px 18px;
  }
  #site-main-nav .nav-dropdown.is-open>#service-menu,
  #site-main-nav .nav-dropdown.is-open>#repair-menu,
  .site-header:not(.header-enhanced) #site-main-nav #service-menu,
  .site-header:not(.header-enhanced) #site-main-nav #repair-menu { display:grid; }
  #site-main-nav #service-menu>.pricing-menu-column,
  #site-main-nav #repair-menu>.repair-menu-column { display:block;min-width:0; }
  #site-main-nav #service-menu>.pricing-menu-column[data-menu-column="2"] { grid-column:1 / -1; }
  #site-main-nav #service-menu>.pricing-menu-column[data-menu-column="2"] .pricing-menu-group {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;
    padding-top:10px;border-top:1px solid #e8e1e2;
  }
  #site-main-nav #service-menu>.pricing-menu-column[data-menu-column="2"] .pricing-menu-group>strong { grid-column:1 / -1; }
  .site-header .nav-panel a {
    display:flex;align-items:center;justify-content:flex-start;min-height:36px;padding:7px 0;
    font-size:12px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;border:0;
  }
  .site-header .nav-panel a:after { content:none; }
  #site-main-nav #repair-menu a,
  #site-main-nav #service-menu>.pricing-menu-column[data-menu-column="2"] a { min-height:40px; }
  .site-header .nav-panel .mobile-nav-all {
    display:flex;grid-column:1 / -1;min-height:40px;margin-top:7px;
    border-top:1px solid #e8e1e2;font-weight:700;color:#b92a42;font-size:12px;
  }
  .site-header .pricing-menu-group strong { padding-top:4px;margin-bottom:4px;font-size:12px;color:#b92a42; }
  .site-header .pricing-menu-group+.pricing-menu-group { margin-top:10px;padding-top:0;border-top:0; }
}

/* Pricing actions share the quote row on both layouts. */
.quote-actions{display:flex;align-items:center;justify-content:flex-end;white-space:nowrap;gap:7px;font-size:12px;font-weight:700;line-height:1.4}
.quote-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;color:#a12640;text-decoration:none;border-radius:4px}
.quote-actions a:hover,.quote-actions a:focus-visible{background:#f9eaf0;text-decoration:underline}
.quote-divider{color:#d1bdc4;font-weight:400}
.model-prices .quote-table th.repair-column{width:auto}
.model-prices .quote-table th.price-column{width:22%}
.model-prices .quote-table th.time-column{width:18%}
.model-prices .quote-table th.action-column{width:18%}
.model-prices .quote-table td{vertical-align:middle}
.model-prices .action-cell{padding-top:2px;padding-bottom:2px}
.quote-time{font-variant-numeric:tabular-nums}
.quote-table tbody tr:hover{background:#fcf9fa}
.compact-repair-table.with-grades .model-column{width:25%}
.compact-repair-table.with-grades .grade-column{width:auto}
.compact-repair-table.single-grades .model-column{width:auto}
.compact-repair-table .price-column,.compact-repair-table.single-grades .price-column{width:140px}
.compact-repair-table .time-column,.compact-repair-table.single-grades .time-column{width:100px}
.compact-repair-table .action-column{width:150px}
.mobile-model-heading,.mobile-single-name{display:none}
.quote-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0 0 24px;padding:16px 20px;border:1px solid #e6d5db;border-left:3px solid #b12440;border-radius:6px;background:#fff}
.quote-summary[hidden]{display:none}
.quote-summary-label{width:100%;color:#9b2940;font-size:11px;font-weight:700}
.quote-summary small{width:100%;color:#73717a;font-size:11px}
.search-model-card li{align-items:center;flex-wrap:nowrap;gap:10px;padding:0;min-height:44px}
.search-model-card li>span:first-child{flex:1;min-width:0}
.search-model-card li>.price{flex-shrink:0}
.search-model-card li>.quote-actions{flex-shrink:0;margin-left:auto;font-size:11px;gap:4px}
.search-model-card .quote-desktop{display:none}
@media(max-width:760px){
 .quote-desktop{display:none}
 .quote-actions{gap:0;font-size:11px}
 .quote-actions a{min-width:32px;min-height:44px}
 .quote-divider{margin:0 1px}
 .model-prices .quote-table th.price-column{width:80px}
 .model-prices .quote-table th.time-column{width:58px}
 .model-prices .quote-table th.action-column{width:76px}
 .model-prices .quote-table th,.model-prices .quote-table td{padding-left:5px;padding-right:5px}
 .model-prices .quote-table td{padding-top:9px;padding-bottom:9px}
 .model-prices .quote-table td.action-cell{padding:0 3px}
 .model-prices .quote-table .price{font-size:13px;white-space:nowrap}
 .quote-table .quote-time{font-size:10px;line-height:1.5}
 .compact-repair-table .model-column,.compact-repair-table .model-cell{display:none}
 .compact-repair-table .mobile-model-heading{display:table-row}
 .compact-repair-table .mobile-model-heading th{font-size:13px;font-weight:700;padding:10px 6px;background:#f3f2f3}
 .compact-repair-table .mobile-model-heading .model-number{display:inline;margin-left:10px}
 .compact-repair-table .mobile-single-name{display:table-cell;width:auto;font-size:10px}
 .compact-repair-table.with-grades .grade-column{width:auto}
 .compact-repair-table.with-grades .price-column,.compact-repair-table.single-grades .price-column{width:80px}
 .compact-repair-table.with-grades .time-column,.compact-repair-table.single-grades .time-column{width:58px}
 .compact-repair-table .action-column{width:76px}
 .compact-repair-table .action-cell{padding:0 3px}
 .compact-repair-table .price{white-space:nowrap}
 .compact-repair-table .time-cell{font-size:10px}
 .model-prices .quote-table .price-unset,.compact-repair-table .price-unset,.search-model-card li .price-unset{font-size:11px;white-space:normal;line-height:1.5;display:inline-block}
 .search-model-card li{font-size:11px;gap:6px}
 .search-model-card li .price{font-size:13px}
 .search-model-card li>.price-unset{max-width:74px}
 .search-model-card li>.quote-actions{gap:0}
 .quote-summary{gap:5px 10px;padding:12px;margin-bottom:18px;font-size:12px}
 .quote-summary strong,.quote-summary>span:not(.quote-summary-label){width:100%}
}
@media(max-width:360px){
 main.wrap:has(.model-prices){margin-left:10px;margin-right:10px}
 .model-prices.card{padding-left:8px;padding-right:8px}
}

/* Mobile: use the full slogan width and show repair photos before the introduction. */
@media(max-width:760px) {
  .mobile-header-content .topline>span:first-child {
    width:100%;max-width:none;min-width:0;white-space:normal;
    overflow:visible;text-overflow:clip;overflow-wrap:anywhere;
  }
  .home-hero>.home-slideshow { grid-row:1; }
  .home-hero>.home-intro { grid-row:2; }
}

/* Keep the homepage actions compact on mobile without changing desktop labels. */
.home-hero .home-action-mobile-label { display:none; }
@media(max-width:760px) {
  .home-hero .home-actions { grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
  .home-hero .home-action { min-width:0;padding:12px 4px;white-space:nowrap; }
  .home-hero .home-action-desktop-label { display:none; }
  .home-hero .home-action-mobile-label { display:inline; }
  .home-hero .home-action:not(.home-action-primary) { background:#fff;color:#3e3940;border-color:#d5d0d3; }
  .home-hero .home-action:not(.home-action-primary):hover { background:#f4eeee;border-color:#bcb2b7; }
}

.qa-upload{margin:10px 0;padding:20px;border:1px solid #e4dfe1;border-radius:8px;background:#faf8f7}.qa-upload>label{display:block;font-weight:700;margin-bottom:8px}.qa-upload>p{font-size:14px;line-height:1.7}.qa-photo-drop{display:flex;flex-direction:column;gap:10px;padding:24px;border:2px dashed #c9a9b3;border-radius:8px;background:#fff}.qa-photo-drop span{font-size:13px;color:#776b72}.qa-photo-drop.is-dragover{border-color:#be2d43;background:#fff0f3}.qa-photo-drop input{max-width:100%;font:inherit}.qa-photo-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.qa-photo-previews figure{margin:0;padding:10px;border:1px solid #e4dfe1;background:#fff;border-radius:6px;min-width:0}.qa-photo-previews img{width:100%;height:140px;object-fit:contain;background:#f5f4f2}.qa-photo-previews figcaption{font-size:12px;overflow-wrap:anywhere;margin:6px 0}.qa-photo-remove{padding:6px 15px;border:1px solid #c9a9b3;background:#fff;color:#8c243a;border-radius:5px;cursor:pointer;min-height:40px}.qa-photo-remove:disabled{opacity:.5;cursor:wait}[data-photo-status]{white-space:pre-wrap;color:#842438}[data-photo-upload][aria-busy=true]{opacity:.85}@media(max-width:600px){.qa-photo-previews{grid-template-columns:repeat(2,minmax(0,1fr))}.qa-photo-drop{padding:16px}.qa-upload{padding:14px}}

.qa-photo-drop button{align-self:flex-start;border:1px solid #b52a40;background:#b52a40;color:#fff;border-radius:5px;padding:10px 18px;font:inherit;cursor:pointer;min-height:44px}.qa-photo-drop button:disabled{opacity:.5;cursor:wait}.qa-photo-drop input[hidden]{display:none}.qa-photo-previews figure{overflow:hidden}

.qa-field-error{display:block!important;color:#c01835!important;font-size:14px!important;font-weight:700!important;margin:8px 0 0!important;line-height:1.6!important}.qa-form [aria-invalid=true]{border:2px solid #c01835!important;background:#fff6f7!important}.qa-photo-full{padding:14px;color:#85243a;background:#f8e8ec;border-left:3px solid #b52a40;font-size:14px;line-height:1.7}.qa-upload [hidden]{display:none!important}.qa-actions button.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #b52a40;border-radius:5px;background:#b52a40;color:#fff;padding:13px 20px;font:inherit;font-weight:700;cursor:pointer}.qa-actions button.contact-button:hover{background:#942037}.qa-actions button.contact-button:disabled{opacity:.6;cursor:wait}

.qa-review{max-width:1100px}.qa-review-intro{margin:30px 0}.qa-review-intro h1{margin:10px 0 14px}.qa-review-intro>p{font-size:14px;color:#756b70;line-height:1.8}.qa-review-steps{display:flex;gap:12px;margin-top:26px;padding-bottom:16px;border-bottom:1px solid #ded6da;justify-content:space-between;font-size:12px;color:#91858c}.qa-review-steps strong{color:#af2741}.qa-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.qa-review-card{min-width:0;background:#fff;border:1px solid #e1dadd;border-radius:8px;padding:26px;box-shadow:0 3px 10px #33202b04}.qa-review-heading{display:flex;align-items:center;gap:12px;padding-bottom:17px;border-bottom:1px solid #eee7ea;margin-bottom:20px}.qa-review-heading>span{color:#ae2942;font-size:13px;font-weight:700}.qa-review-heading h2{font-size:19px;margin:0}.qa-review-heading small{margin-left:auto;color:#8b7781;font-size:11px}.qa-review-details{margin:0;display:grid;grid-template-columns:110px minmax(0,1fr);gap:0}.qa-review-details dt,.qa-review-details dd{padding:13px 0;border-bottom:1px solid #eee8eb;margin:0;font-size:14px;line-height:1.8;overflow-wrap:anywhere}.qa-review-details dt{color:#86737d;font-size:12px}.qa-review-title{font-weight:700}.qa-review-body{margin-top:22px;padding:18px;background:#f8f6f4;border:1px solid #eae3e6;border-radius:6px}.qa-review-body>span{font-size:11px;color:#7f6d76}.qa-review-body p{margin:10px 0 0;white-space:pre-wrap;font-size:15px;line-height:1.9;overflow-wrap:anywhere}.qa-review-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.qa-review-photos figure{margin:0;min-width:0}.qa-review-photos a{display:flex;align-items:center;justify-content:center;background:#f5f3f0;border:1px solid #e6dfe2;border-radius:6px;padding:7px;height:170px}.qa-review-photos img{max-width:100%;max-height:100%;object-fit:contain}.qa-review-photos figcaption{font-size:11px;color:#8a7b83;text-align:center;margin:8px 0}.qa-review-muted{font-size:12px;color:#86747d;line-height:1.9;margin:16px 0 0}.qa-review-visibility{background:#fbf0f3;border-left:3px solid #b52a40;padding:14px 16px;color:#93253d;font-size:14px;font-weight:700}.qa-review-submit{margin:26px 0 44px;padding:24px;background:#fff;border:1px solid #e1dadd;border-radius:8px}.qa-review-submit>p{color:#83717a;font-size:12px;margin:0 0 20px}.qa-review-actions{display:flex;justify-content:space-between;align-items:center;gap:20px}.qa-review-actions>a,.qa-review-actions>button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;border-radius:5px;padding:14px 24px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer}.qa-review-back{border:1px solid #c6acb6;background:#fff;color:#85283e}.qa-review-actions>button{border:1px solid #b52a40;background:#b52a40;color:#fff}.qa-review-actions>button:disabled{opacity:.6;cursor:wait}@media(max-width:760px){.qa-review-grid{grid-template-columns:1fr;gap:16px}.qa-review-card{padding:20px}.qa-review-details{grid-template-columns:95px minmax(0,1fr)}.qa-review-photos a{height:125px}.qa-review-actions{gap:10px;align-items:stretch}.qa-review-actions>a,.qa-review-actions>button{width:50%;padding:12px 8px;font-size:12px}.qa-review-submit{padding:18px}.qa-review-steps{gap:6px;font-size:10px}}

/* Compact article photography, with explicit per-image display sizes. */
.journal-body img,.article-rich-editor img{display:block;width:auto;height:auto;max-width:min(100%,320px);max-height:320px;object-fit:contain;margin:12px auto;cursor:zoom-in}
.journal-body img[data-display-size=medium],.article-rich-editor img[data-display-size=medium]{max-width:min(100%,560px);max-height:560px}
.journal-body img[data-display-size=large],.article-rich-editor img[data-display-size=large]{max-width:100%;max-height:800px}
.journal-cover{max-width:320px!important;margin:24px auto!important}.journal-cover img{width:100%;height:auto!important;max-height:320px;object-fit:contain!important;cursor:zoom-in}
.qa-gallery a{width:150px;max-width:calc(50% - 6px)}.qa-gallery img{width:100%;height:120px;object-fit:contain;border:1px solid #e5dede;border-radius:6px;cursor:zoom-in}
.repair-image-viewer{border:0;background:#171419;color:white;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:70px 20px 30px;margin:0;box-sizing:border-box}.repair-image-viewer::backdrop{background:#171419}.repair-image-viewer img{display:block;width:100%;height:calc(100% - 40px);object-fit:contain}.repair-image-viewer button{position:absolute;right:20px;top:16px;padding:10px 18px;border:1px solid #ffffff88;border-radius:6px;background:#fff;color:#782a3d;font:inherit;font-weight:bold;cursor:pointer}.repair-image-viewer p{text-align:center;margin:8px;color:#eee;font-size:13px}.repair-image-viewer:focus-visible{outline:0}

.journal-gallery{display:flex;flex-wrap:wrap;gap:18px}.journal-gallery figure{width:min(100%,320px);margin:0}.journal-gallery img{display:block;max-width:100%;width:auto;height:auto;max-height:240px;object-fit:contain;cursor:zoom-in}

.article-consultation{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:20px}.article-consultation label{display:flex;flex-direction:column;gap:6px;font-size:13px;flex:1 1 200px}.article-consultation select{padding:10px;border:1px solid #d4ceca;border-radius:6px;font:inherit;background:#fff;max-width:100%}.article-consultation .booking-button{font:inherit;cursor:pointer;border:0}.article-consultation p{flex-basis:100%;font-size:12px}

.comment-edit-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:16px}.comment-edit-actions button{min-height:44px;padding:10px 20px;border-radius:6px}.comment-edit-actions .community-danger{margin-left:auto;background:#fff;border:1px solid #cf8c98;color:#9b2840}.reaction-actions .community-login-action{display:inline-flex;align-items:center;border:1px solid #d9c6cc;border-radius:6px;background:white;color:#75293b;padding:12px 16px;text-decoration:none;font-size:13px}.journal-article>.share-panel{margin:20px 0 28px}

/* Compact sharing and consistent article entry actions. */
.share-panel{display:flex;align-items:center;gap:10px;padding:10px 0;position:relative}.share-panel strong{margin:0;flex:none;font-size:12px}.share-actions{flex-wrap:nowrap;gap:5px;min-width:0;overflow-x:auto}.share-actions a,.share-actions button{flex:none;white-space:nowrap;font-size:12px;padding:6px 8px;min-height:32px}.share-panel [data-share-status]:not(:empty){position:absolute;top:100%;font-size:12px;background:#fff}.article-consultation{display:grid;grid-template-columns:1fr 1fr;gap:12px}.article-consultation button{margin:0;border-radius:6px;min-height:46px;text-align:center;justify-content:center;font:inherit;cursor:pointer}.article-consultation .contact-button{background:#fff;color:#952a46;border:1px solid #952a46}.article-consultation p{grid-column:1/-1;margin:0}.search-article-image{display:flex;align-items:center;justify-content:center;aspect-ratio:3/2;overflow:hidden;background:#f1e9e9;border-radius:6px;color:#952a46;font-weight:800;text-decoration:none;margin-bottom:14px}.search-article-image img{width:100%;height:100%;object-fit:cover}.privacy-policy{max-width:860px;margin:24px auto 60px;line-height:1.9}.privacy-policy section{padding:22px 0;border-bottom:1px solid #e5dedb}.privacy-policy h2{font-size:20px}.privacy-policy a{color:#952a46;overflow-wrap:anywhere}@media(max-width:420px){.share-panel{gap:6px}.share-actions a,.share-actions button{padding:5px 6px;font-size:11px}.article-consultation button{font-size:13px;padding:12px 6px}}

.search-article-image{float:left;width:132px;height:100px;aspect-ratio:auto;margin:0 16px 12px 0}.search-article-card:after{content:"";display:block;clear:both}@media(max-width:700px){.search-article-image{width:96px;height:80px;margin:0 12px 10px 0}.search-article-card h3{font-size:17px}}

.article-consultation{align-items:stretch}.article-consultation .booking-button,.article-consultation .contact-button{display:flex;align-items:center;white-space:nowrap;font-size:14px;box-sizing:border-box;height:48px;min-width:0}@media(max-width:420px){.article-consultation .booking-button,.article-consultation .contact-button{font-size:12px}}
