/* Karoval production story. Scoped to this page. */
.production-page{--production-green:#193428;--production-lime:#d8e8b5;--production-paper:#f0f2eb}
.production-hero{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:36px 5vw;padding:145px var(--gutter) 0;background:var(--production-green);color:#f4f5ec;overflow:hidden}
.production-hero-copy{padding:35px 0 55px}.production-hero-copy>.eyebrow{color:#c4d0bd;font-size:10px;letter-spacing:.18em}.production-hero h1{font-size:clamp(48px,5.5vw,88px);letter-spacing:-.065em;line-height:1.02;margin:32px 0}.production-hero h1>span{color:var(--production-lime)}.production-hero-copy>p{font-size:17px;line-height:1.75;color:#d3ddce;max-width:390px}.production-scroll{margin-top:38px;gap:40px;border-bottom:1px solid #8ba181;padding-bottom:13px}.production-scroll>span{font-size:23px;font-weight:400}
.production-visual{position:relative;min-width:0;margin:0;background:#e7e9df;border-radius:4px;overflow:hidden}.production-hero-image{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}.production-photo-label{position:absolute;top:17px;left:18px;display:flex;align-items:center;gap:8px;z-index:1;background:#f6f7f0ed;color:#253b2b;padding:9px 12px;border-radius:3px;font-size:9px;letter-spacing:.1em;font-weight:600}.production-live-dot{width:6px;height:6px;background:#5d8138;border-radius:50%}.production-visual figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;color:#334531;font-size:11px}.production-visual figcaption a{display:grid;place-items:center;min-width:44px;min-height:44px;margin:-8px -10px -8px 0}.production-hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #61775d;padding:25px 0;color:#ced8c8;font-size:11px}.production-hero-bottom>span:first-child{font-size:10px;letter-spacing:.17em}
.production-story{padding:100px var(--gutter);background:var(--production-paper);scroll-margin-top:90px;display:grid;grid-template-columns:1fr 1fr;gap:40px 7vw}.production-section-heading .eyebrow{font-size:10px;color:#53634a;letter-spacing:.15em;margin-bottom:24px}.production-section-heading h2{font-size:clamp(35px,3.7vw,57px);line-height:1.08;letter-spacing:-.055em}.production-story-intro{padding-top:30px;color:#4a5d43;font-size:16px;max-width:540px}.production-story-intro p+p{margin-top:18px}.production-timeline{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:24px}.production-year{display:block;font-size:clamp(64px,8vw,115px);line-height:1.15;font-weight:400;letter-spacing:-.06em;color:#283d2c}.production-milestone>div{position:relative;border-top:1px solid #acb89f;margin-top:22px;padding-top:29px}.production-timeline-dot{position:absolute;left:0;top:-5px;width:9px;height:9px;border-radius:50%;background:#4a6740}.production-milestone h3{font-size:22px;margin-bottom:14px}.production-milestone p{font-size:14px;color:#506048;max-width:380px}
.production-details{padding:80px var(--gutter);display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center;background:#243b2d;color:#f4f5ec}.production-details>.eyebrow,.production-details>div>.eyebrow{color:#c6d4b9;font-size:10px}.production-details h2{font-size:clamp(40px,4.5vw,68px);line-height:1.03;letter-spacing:-.055em;margin:25px 0}.production-details>div>p{max-width:370px;font-size:16px;color:#d2ddc8;margin-bottom:30px}.production-part-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.production-part{min-width:0;background:#edf0e6;color:#243a29;padding:25px 20px;border-radius:5px;display:block;transition:background .2s,transform .25s}.production-part:hover{background:#e1e9d5;transform:translateY(-5px)}.production-part-light{margin-top:70px}.production-part-image{width:100%;height:215px;object-fit:contain;transition:transform .3s}.production-part:hover img{transform:scale(1.04)}.production-part>span{position:relative;display:flex;flex-direction:column;gap:7px;margin-top:22px;padding-right:23px}.production-part small{font-size:9px;letter-spacing:.12em;color:#58694d}.production-part strong{font-size:16px;font-weight:500}.production-part svg{position:absolute;right:0;bottom:0;width:18px;height:18px}
.production-models{padding:100px var(--gutter);background:#f4f5ef}.production-models>.production-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px}.production-models .text-link{padding-bottom:6px;flex-shrink:0}.production-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.production-model{min-width:0;display:block;background:#e6ebde;border-radius:5px;padding:28px;transition:background .2s}.production-model:hover{background:#dce5d1}.production-model>.eyebrow{font-size:9px;color:#56674b;letter-spacing:.12em}.production-model-image{width:100%;height:210px;object-fit:contain;margin:20px 0;transition:transform .35s}.production-model:hover .production-model-image{transform:translateY(-5px)}.production-model>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.production-model h3{font-size:30px}.production-model>p{font-size:13px;color:#52634a;margin-top:15px}.production-model>div>span{display:grid;place-items:center;border:1px solid #aebda1;border-radius:50%;width:38px;height:38px}.production-model svg{width:18px;height:18px}
.production-contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#dde5d2;padding:85px var(--gutter);align-items:center}.production-contact-heading>.eyebrow{color:#506348;font-size:10px;letter-spacing:.15em}.production-contact h2{font-size:clamp(52px,6vw,90px);line-height:1.02;letter-spacing:-.06em;margin:25px 0 30px}.production-location-tag{display:inline-block;border:1px solid #94a485;border-radius:30px;padding:9px 17px;letter-spacing:.12em;font-size:9px}.production-contact-card{background:#f3f5ec;padding:38px;border-radius:5px;min-width:0}.production-contact-card>.eyebrow{font-size:9px;color:#57674e}.production-contact address{font-style:normal;font-size:19px;line-height:1.7;margin:20px 0}.production-contact-card>.text-link{font-size:12px;min-height:44px}.production-contact-divider{height:1px;background:#c5cfba;margin:24px 0}.production-contact-card h3{font-size:25px;line-height:1.2;margin-bottom:16px}.production-contact-card p{font-size:14px;color:#52654a;margin-bottom:24px}
@media(min-width:1600px){.production-hero{padding-top:160px;gap:60px 7vw}.production-hero-copy{padding-bottom:75px}.production-hero-image{max-height:600px}.production-visual{max-width:850px}.production-model-image{height:250px}}
@media(max-width:1100px){.production-hero{gap:25px 30px;padding-top:120px}.production-hero h1{font-size:57px}.production-hero-copy>p{font-size:15px}.production-story{gap:25px 35px;padding-top:75px;padding-bottom:75px}.production-details{gap:35px}.production-part-image{height:150px}.production-model{padding:24px 20px}.production-model-image{height:170px}.production-model h3{font-size:27px}.production-contact{gap:35px}.production-contact-card{padding:28px}}
@media(max-width:768px){.production-hero{grid-template-columns:1fr;gap:15px;padding-top:115px}.production-hero-copy{padding:0 0 24px}.production-hero h1{font-size:clamp(52px,9vw,72px);margin:26px 0}.production-hero-copy>p{font-size:16px}.production-scroll{margin-top:26px}.production-hero-image{aspect-ratio:4/3}.production-hero-bottom{margin-top:15px;align-items:flex-start;flex-direction:column;gap:10px}.production-story{grid-template-columns:1fr;gap:25px}.production-story-intro{padding:0;max-width:100%}.production-timeline{margin-top:10px;gap:30px}.production-year{font-size:72px}.production-milestone h3{font-size:19px}.production-details{grid-template-columns:1fr;padding-top:65px;padding-bottom:65px;gap:35px}.production-details>div>p{max-width:100%}.production-part-image{height:220px}.production-part-light{margin-top:25px}.production-model-grid{gap:14px}.production-model{padding:22px 15px}.production-model-image{height:140px}.production-model h3{font-size:25px}.production-model>div>span{width:30px;height:30px}.production-model>p{font-size:12px}.production-contact{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.production-contact-card{padding:32px}.production-contact h2{font-size:66px}}
@media(max-width:640px){.production-hero{padding:110px 24px 0;gap:10px}.production-hero-copy>.eyebrow{font-size:9px;letter-spacing:.14em}.production-hero h1{font-size:clamp(46px,12.8vw,69px)}.production-hero-copy>p{font-size:14px}.production-scroll{font-size:12px}.production-photo-label{font-size:8px;padding:7px 9px;left:12px;top:12px}.production-visual figcaption{font-size:10px;padding:12px 14px}.production-hero-bottom{padding:20px 0;font-size:10px}.production-story{padding:60px 24px;gap:24px}.production-section-heading h2{font-size:36px}.production-story-intro{font-size:15px}.production-section-heading .eyebrow{font-size:9px;margin-bottom:19px}.production-timeline{grid-template-columns:1fr;gap:35px}.production-year{font-size:80px}.production-milestone>div{margin-top:12px;padding-top:24px}.production-milestone h3{font-size:22px}.production-details{padding:60px 24px}.production-details h2{font-size:48px}.production-details>div>p{font-size:15px}.production-details .button{font-size:12px;min-height:49px}.production-part-grid{gap:12px}.production-part{padding:20px 13px}.production-part-image{height:155px}.production-part strong{font-size:14px}.production-part>span{margin-top:15px}.production-part-light{margin-top:35px}.production-models{padding:60px 24px}.production-models>.production-section-heading{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:30px}.production-models .text-link{font-size:12px}.production-model-grid{grid-template-columns:1fr;gap:15px}.production-model{padding:25px}.production-model-image{height:220px;margin:12px 0 20px}.production-model h3{font-size:34px}.production-model>p{font-size:13px}.production-contact{padding:60px 24px}.production-contact h2{font-size:63px}.production-contact-card{padding:27px 23px}.production-contact address{font-size:17px}.production-contact-card h3{font-size:26px}.production-contact-card .button{font-size:12px;min-height:50px;width:100%;padding-inline:18px}}
@media(max-width:360px){.production-part-image{height:130px}.production-part strong{font-size:12px}.production-hero h1{font-size:46px}.production-model-image{height:190px}}
@media(prefers-reduced-motion:reduce){.production-part,.production-part-image,.production-model,.production-model-image{transition:none}.production-part:hover,.production-part:hover img,.production-model:hover .production-model-image{transform:none}}
