/*
Theme Name: Shelby Scale Length
Description: Standalone Shelby inquiry and dealer catalog. Direction B, approved October 5, 2026.
Version: 1.0.10
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: shelby-scale-length
*/
@font-face{font-family:Instrument;src:url(assets/fonts/instrument-sans-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url(assets/fonts/instrument-sans-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Instrument;src:url(assets/fonts/instrument-sans-latin-600-normal.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Newsreader;src:url(assets/fonts/newsreader-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Newsreader;src:url(assets/fonts/newsreader-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Plex;src:url(assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
:root{--cream:#f3ebdc;--pearl:#fbf7ef;--ink:#1e1a17;--wood:#6e2c14;--dark:#3a2620;--secondary:#575d61;--rule:#7c8286;--margin:clamp(20px,5vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:19px/1.6 Newsreader,Georgia,serif}img{max-width:100%;height:auto;display:block}figure,p{margin:0 0 24px}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-color:var(--wood)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--wood);outline-offset:4px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}h1,h2,h3{font-family:Instrument,Arial,sans-serif;font-weight:500;line-height:1.08;margin:0 0 24px;letter-spacing:-.035em}h1{font-size:clamp(42px,5vw,70px)}h2{font-size:clamp(28px,3vw,42px)}h3{font-size:24px;letter-spacing:-.02em}em{font-family:Newsreader,Georgia,serif;font-weight:400}.wrap{max-width:1464px;margin-inline:auto;padding-inline:var(--margin)}.section{padding-block:88px}.narrow,.prose{max-width:850px}.prose{margin-inline:auto}.lede{font-size:clamp(22px,2vw,27px);line-height:1.4}.eyebrow,.label{font:500 12px/1.5 Instrument,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--wood);margin-bottom:22px}.caption,figcaption,.price,.specifications,.back-link{font:13px/1.6 Plex,monospace}.caption,figcaption{color:var(--secondary)}.site-header{display:flex;justify-content:space-between;align-items:center;gap:28px;min-height:124px;border-bottom:1px solid var(--rule)}.brand{display:block;width:172px;flex-shrink:0}.site-header nav{display:flex;gap:clamp(18px,3.2vw,48px);flex-wrap:wrap;font:500 15px/1.4 Instrument,Arial,sans-serif}.site-header nav a{padding-block:14px;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{box-shadow:inset 0 -2px var(--wood)}.skip-link{position:absolute;left:16px;top:-80px;background:var(--pearl);padding:12px;z-index:100}.skip-link:focus{top:12px}.button{display:inline-flex;gap:36px;justify-content:space-between;align-items:center;padding:17px 24px;min-height:52px;color:var(--cream);background:var(--wood);font:500 15px/1.4 Instrument,Arial,sans-serif;text-decoration:none;border:1px solid var(--wood)}.button:hover{background:var(--dark)}.button.light{color:var(--dark);background:var(--cream);border-color:var(--cream)}.text-link{font:500 15px/1.5 Instrument,Arial,sans-serif;display:inline-block;padding-block:10px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-block:52px 64px}.hero h1{font-size:clamp(58px,6.5vw,94px);line-height:.98;letter-spacing:-.055em;margin-bottom:30px}.hero .lede{max-width:420px}.hero-copy{padding-block:30px}.hero-image{position:relative;align-self:stretch;margin:0;background:var(--pearl);display:flex;flex-direction:column;justify-content:center;min-height:640px;padding:24px 24px 58px}.hero-image img{height:600px;max-height:65vh;min-height:380px;width:100%;object-fit:contain;mix-blend-mode:multiply}.hero-image figcaption{position:absolute;bottom:20px;left:24px;right:24px;display:flex;justify-content:space-between;gap:12px;font-size:11px}.fret-rule{width:240px;height:24px;margin:42px 0 12px;border-top:1px solid var(--rule);background:linear-gradient(90deg,transparent 0 23%,var(--rule) 23% 23.4%,transparent 23.4% 44%,var(--rule) 44% 44.4%,transparent 44.4% 62%,var(--rule) 62% 62.4%,transparent 62.4% 78%,var(--rule) 78% 78.4%,transparent 78.4% 92%,var(--rule) 92% 92.4%,transparent 92.4%)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px;border-top:1px solid var(--rule);padding-top:30px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:12px}.model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}.model-link{text-decoration:none}.instrument-plate{position:relative;background:var(--pearl);aspect-ratio:2/3;padding:30px 15px;display:flex;align-items:center;justify-content:center;overflow:hidden}.instrument-plate>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.model-heading{display:flex;gap:14px;justify-content:space-between;margin-top:20px}.model-heading :is(h2,h3){font-size:24px;letter-spacing:-.02em;margin-bottom:9px}.model-description{font-size:17px;line-height:1.35;color:var(--secondary);margin-bottom:10px}.price{margin:0}.price span{font-size:11px;color:var(--secondary);margin-left:6px}.model-link:hover :is(h2,h3){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.unphotographed{align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:24px 6px;text-align:center;width:100%;border-block:1px solid var(--rule)}.unphotographed .label{font-size:10px;margin:0}.unphotographed>span:last-child{font:11px Plex,monospace;color:var(--secondary)}.profile-name{font:400 clamp(22px,2.1vw,32px)/1.15 Newsreader,Georgia,serif}.craft-story{background:var(--pearl);padding-block:88px}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,112px);align-items:center}.split figure{margin:0}.craft-story figure img{width:100%;aspect-ratio:4/5;object-fit:cover}.catalog h1{margin-bottom:22px}.catalog-toolbar{border-block:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:24px;margin:42px 0 36px;padding:14px 0}.catalog-toolbar p{margin:0}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{cursor:pointer;background:transparent;border:1px solid transparent;padding:10px 16px;font:500 14px Instrument,Arial,sans-serif;color:var(--ink);min-height:44px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--cream)}.filters button:hover{border-color:var(--ink)}.back-link{display:inline-block;margin-bottom:30px}.detail-plate{height:680px;aspect-ratio:auto}.detail-plate .profile-name{font-size:44px}.product-copy .price.large{font-size:24px;margin:28px 0}.product-copy .caption{margin:18px 0}.specification-heading{border-top:1px solid var(--rule);margin-top:88px;padding-top:32px}.specification-heading .eyebrow{margin-bottom:12px}.specifications{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;margin:36px 0 64px}.specifications>div{display:grid;grid-template-columns:1fr 1.6fr;gap:16px;border-top:1px solid var(--rule);padding:17px 0;align-content:start}.specifications dt{color:var(--secondary)}.specifications dd{margin:0}.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.detail-gallery figure{margin:0}.detail-gallery img{width:100%;aspect-ratio:3/4;object-fit:contain;background:var(--pearl);mix-blend-mode:multiply}.detail-gallery figcaption{padding-top:14px}.dealer-row{display:flex;justify-content:space-between;align-items:center;gap:32px;border-block:1px solid var(--rule);padding:42px 0;margin-top:54px}.dealer-row .label{margin-bottom:12px}.dealer-row h2{margin:0}.dealer-row>a:not(.button){font-family:Instrument,Arial,sans-serif}.portrait img{width:100%;aspect-ratio:4/5;object-fit:cover}.portrait figcaption{margin-top:14px}.contact-layout{align-items:start}.contact-form{background:var(--pearl);padding:clamp(24px,4vw,56px)}.contact-form input:not([type=submit]):not([type=hidden]):not([type=checkbox]),.contact-form textarea{width:100%;border:1px solid var(--rule);border-radius:0;background:transparent;color:var(--ink);padding:12px;line-height:1.4;font-family:Instrument,Arial,sans-serif;font-size:16px}.contact-form label{font:500 14px/1.5 Instrument,Arial,sans-serif}.contact-form textarea{max-height:220px}.contact-form input[type=submit]{background:var(--wood);color:var(--cream);border:0;padding:16px 32px;font:500 15px Instrument,Arial,sans-serif;cursor:pointer;min-height:48px}.contact-form .wpcf7-not-valid-tip{font-size:15px}.contact-form .wpcf7-response-output{font-size:17px}.inquiry-context{padding-block:18px;border-block:1px solid var(--rule)}.site-footer{background:var(--dark);color:var(--cream);padding:64px 0 24px}.site-footer .label{color:#d9a04a}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px}.footer-top p:last-child{max-width:520px}.footer-bottom{margin-top:40px;border-top:1px solid var(--rule);padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;font:12px/1.5 Instrument,Arial,sans-serif}.footer-bottom p{margin:0}.site-footer a:focus-visible{outline-color:var(--cream)}
@media(min-width:1500px){.hero-image img{max-height:none}}
@media(max-width:1050px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:28px}.hero-image{min-height:580px}.hero h1{font-size:clamp(54px,7vw,72px)}.hero-image figcaption{flex-direction:column;gap:0}.specifications{column-gap:28px}.detail-plate{height:580px}.site-header nav{gap:20px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:700px){body{font-size:18px}.site-header{flex-direction:column;gap:4px;padding-block:20px 12px;min-height:0}.site-header .brand{width:146px}.site-header nav{width:100%;justify-content:space-between;gap:12px;font-size:14px}.site-header nav a{padding:10px 0}.hero{grid-template-columns:1fr;gap:18px;padding-top:28px}.hero-copy{padding-block:10px}.hero h1{font-size:clamp(54px,12vw,78px)}.hero h1 br:nth-of-type(2){display:none}.hero .lede{max-width:32ch}.hero-image{min-height:0;height:520px}.hero-image img{height:420px;min-height:0;max-height:none}.hero-image figcaption{flex-direction:row;font-size:10px}.hero-copy .fret-rule,.hero-copy>.caption{display:none}.section{padding-block:52px}.section-heading{align-items:start;flex-direction:column;gap:16px}.split{grid-template-columns:1fr;gap:32px}.model-grid{gap:32px 16px}.model-heading :is(h2,h3){font-size:20px}.model-description{font-size:16px}.instrument-plate{padding:25px 8px}.model-heading{margin-top:14px}.unphotographed{padding:16px 2px;gap:14px}.unphotographed .label{font-size:9px;letter-spacing:.08em}.unphotographed>span:last-child{font-size:10px}.craft-story{padding-block:52px}.catalog-toolbar{flex-direction:column;align-items:start;gap:12px;margin-top:30px}.filters button{padding:10px 12px}.detail-plate{height:520px;padding:25px}.product-intro{gap:36px}.product-copy h1{font-size:44px}.specification-heading{margin-top:52px}.specifications{grid-template-columns:1fr;margin-bottom:36px}.detail-gallery{grid-template-columns:1fr;gap:32px}.detail-gallery img{max-height:520px}.dealer-row{flex-direction:column;align-items:start;margin-top:32px}.footer-top{flex-direction:column;align-items:start;gap:16px}.footer-bottom{flex-direction:column;align-items:start}.site-footer{padding-top:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the existing Material Design form readable on the native cream panel. */
.contact-form #cf7md-form .mdc-text-field__input,.contact-form #cf7md-form .mdc-floating-label{color:var(--ink)}
.contact-form #cf7md-form .mdc-notched-outline>div{border-color:var(--secondary)}
.contact-form #cf7md-form .mdc-button{background:var(--wood);color:var(--cream)}
.contact-form #cf7md-form .mdc-text-field__input:focus-visible,.contact-form #cf7md-form .mdc-button:focus-visible{outline:3px solid var(--wood);outline-offset:4px}

.link-arrow{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.125em;background:none;border:0}

/* Contact inquiry panel: preserve CF7 / Material Design behavior and stored form. */
.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,6vw,88px)}
.contact-intro{padding-top:12px;max-width:470px}
.contact-intro h1{font-size:clamp(42px,4.5vw,64px)}
.contact-dealer{margin-top:40px;padding-top:28px;border-top:1px solid var(--rule)}
.contact-dealer .eyebrow{margin-bottom:12px}
.contact-dealer p:not(.eyebrow){max-width:30ch;margin-bottom:12px}
.contact-dealer .text-link{margin-top:8px}
.contact-form{min-width:0;padding:clamp(24px,3.3vw,48px);border:1px solid #cec0aa;border-top:3px solid var(--wood);box-shadow:0 12px 32px #3a262008}
.contact-form-heading{margin-bottom:28px}
.contact-form-heading h2{font-size:clamp(26px,2.7vw,34px);margin-bottom:12px}
.contact-form-heading p{font-size:19px;line-height:1.45;margin-bottom:12px;max-width:38ch}
.contact-form-heading .contact-required{font:13px/1.5 Instrument,Arial,sans-serif;color:var(--secondary);margin:0}
.contact-form #cf7md-form{font-family:Instrument,Arial,sans-serif;margin:0}
.contact-form #cf7md-form .mdc-layout-grid__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
.contact-form #cf7md-form .cf7md-item{grid-column:span 1;min-width:0;margin:0}
/* The active Turnstile integration imposes important 12/8/4-column spans.
   Keep its wrapper inside this form's two-column (mobile: one-column) grid. */
.contact-form #cf7md-form .cf7-cf-turnstile{grid-column:1/-1!important;min-width:0}
.contact-form #cf7md-form .cf7md-item:first-child,.contact-form #cf7md-form .cf7md-textarea,.contact-form #cf7md-form .cf7md-submit,.contact-form #cf7md-form .cf7md-admin-customize-message{grid-column:1/-1}
.contact-form #cf7md-form .mdc-text-field{width:100%;background:#fffdf8;border-radius:2px;font-family:Instrument,Arial,sans-serif}
.contact-form #cf7md-form .mdc-text-field__input{font:400 16px/1.5 Instrument,Arial,sans-serif;border:0;border-radius:2px;padding:16px;color:var(--ink);caret-color:var(--wood);background:transparent}
.contact-form #cf7md-form .mdc-floating-label{font:400 16px/1.4 Instrument,Arial,sans-serif;color:var(--secondary)}
.contact-form #cf7md-form .mdc-notched-outline>div{border-color:#8c8172}
.contact-form #cf7md-form .mdc-text-field:hover .mdc-notched-outline>div{border-color:var(--ink)}
.contact-form #cf7md-form .mdc-text-field--focused .mdc-notched-outline>div{border-color:var(--wood)}
.contact-form #cf7md-form .mdc-text-field--focused .mdc-floating-label{color:var(--wood)}
.contact-form #cf7md-form .mdc-text-field--textarea{min-height:168px}
.contact-form #cf7md-form textarea.mdc-text-field__input{min-height:158px;max-height:420px;resize:vertical!important;overflow:auto!important;line-height:1.6;padding-top:18px}
.contact-form #cf7md-form .mdc-button{width:100%;height:auto;min-height:54px;padding:16px 24px;border-radius:2px;box-shadow:none;background:var(--wood);color:var(--cream);font:500 16px/1.4 Instrument,Arial,sans-serif;letter-spacing:.02em;text-transform:none;cursor:pointer}
.contact-form #cf7md-form .mdc-button:hover{background:var(--dark)}
.contact-form #cf7md-form .mdc-button:disabled{opacity:.65;cursor:wait}
.contact-form #cf7md-form .mdc-text-field--invalid .mdc-notched-outline>div{border-color:#a12d22}
.contact-form #cf7md-form .wpcf7-not-valid-tip{font:14px/1.5 Instrument,Arial,sans-serif;color:#a12d22;margin-top:8px}
.contact-form .wpcf7-response-output{font:15px/1.6 Instrument,Arial,sans-serif;margin:24px 0 0;padding:14px 16px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:36px}.contact-intro{max-width:620px}.contact-dealer{margin-top:24px}.contact-form{width:100%;max-width:680px}.contact-form-heading h2{font-size:30px}}
@media(max-width:540px){.contact-form{padding:24px 20px}.contact-form #cf7md-form .mdc-layout-grid__inner{grid-template-columns:minmax(0,1fr);gap:22px}.contact-form #cf7md-form .cf7md-item{grid-column:1/-1}.contact-form-heading h2{font-size:27px}.contact-form-heading p{font-size:18px}}

/* Equal dealer cards; neither partner receives a preferred label or larger CTA. */
.dealer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:48px}
.dealer-card{display:flex;flex-direction:column;align-items:start;padding:36px;background:var(--pearl);border:1px solid #cec0aa}
.dealer-card .label{margin-bottom:16px}.dealer-card h2{font-size:clamp(28px,3vw,38px);margin-bottom:36px}.dealer-card .button{margin-top:auto;width:100%;max-width:280px}
.dealer-recruit{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:64px;padding-top:40px;border-top:1px solid var(--rule)}
.dealer-recruit h2{font-size:30px;margin-bottom:16px}.dealer-recruit p{max-width:48ch;margin:0}.dealer-recruit .text-link{flex-shrink:0}
.about-intro h1{font-size:clamp(42px,4.8vw,66px)}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,112px);border-top:1px solid var(--rule);scroll-margin-top:40px}
.about-story-copy{max-width:620px}.about-story-copy p:last-child{margin-bottom:0}
.about-collection{display:flex;align-items:center;justify-content:space-between;gap:64px}.about-collection>div:first-child{max-width:680px}.about-collection p:last-child{margin-bottom:0}
.about-actions{display:flex;flex-direction:column;gap:16px;flex-shrink:0}
@media(max-width:700px){.dealer-grid,.about-story{grid-template-columns:1fr;gap:28px}.dealer-card{padding:28px}.dealer-card h2{min-height:2.2em}.dealer-card .button{max-width:none}.dealer-recruit,.about-collection{flex-direction:column;align-items:start;gap:28px}.dealer-recruit{margin-top:40px}.about-actions{width:100%}}

.catalog-sort{display:flex;align-items:center;gap:8px;font:500 14px/1.4 Instrument,Arial,sans-serif;margin-left:auto}
.catalog-sort label{font:inherit;color:var(--secondary)}
.catalog-sort select{min-height:44px;max-width:100%;padding:8px 28px 8px 10px;border:1px solid transparent;border-bottom-color:var(--rule);border-radius:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}
.catalog-sort select:hover{border-bottom-color:var(--ink)}
.catalog-sort select:focus-visible{outline:2px solid var(--wood);outline-offset:2px}
.catalog-toolbar{flex-wrap:wrap}.catalog-toolbar [data-count]{min-width:0}
@media(max-width:700px){.catalog-sort{margin-left:0;width:100%;justify-content:space-between}.catalog-sort select{flex:1;max-width:240px}}

.model-listen{margin-top:72px;border-top:1px solid var(--rule);padding-top:32px}
.model-listen-heading .eyebrow{margin-bottom:12px}.model-listen-heading h2{margin-bottom:28px}
.video-frame{max-width:960px;aspect-ratio:16/9;background:var(--dark);color:var(--cream);position:relative}
.video-frame:empty{display:none}
.video-preview{width:100%;height:100%;padding:32px 20px;background:radial-gradient(ellipse at top,#664331,var(--dark) 75%);color:var(--cream);border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;font:500 clamp(20px,2.5vw,30px)/1.3 Instrument,Arial,sans-serif}
.video-play-icon{display:grid;place-items:center;width:76px;height:76px;border:1px solid #f3ebdc99;border-radius:50%;background:#f3ebdc12}.video-play-icon svg{margin-left:4px}
.video-preview-note{font:14px/1.4 Instrument,Arial,sans-serif;letter-spacing:.04em}.video-preview:hover .video-play-icon{background:var(--cream);color:var(--dark)}
.video-preview:focus-visible{outline:3px solid var(--cream);outline-offset:-8px}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-caption{font:14px/1.5 Instrument,Arial,sans-serif;margin-top:16px}
@media(max-width:540px){.model-listen{margin-top:48px}.video-preview{gap:12px;font-size:18px;padding:20px 16px}.video-play-icon{width:54px;height:54px}}
