header nav{gap:23px}.v2-hero{min-height:610px}.hero-photo{position:relative;display:flex;align-items:center;justify-content:center;background:#e8e3da;overflow:hidden}.hero-photo img{max-height:520px;width:75%;object-fit:contain}.hero-photo span{position:absolute;bottom:35px;left:9%;font-size:10px;letter-spacing:.16em;color:#65716d}.home-collection{background:#f5f3ef}.home-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.home-grid a>div,.case-card>div{background:#ece9e2;display:flex;align-items:center;justify-content:center;aspect-ratio:1.08;overflow:hidden}.home-grid img,.case-card img{width:85%;height:85%;object-fit:contain;transition:transform .25s}.home-grid a:hover img{transform:scale(1.05)}.home-grid h3{font:21px Georgia,serif;display:flex;justify-content:space-between}.home-grid h3 span{font-family:Arial;font-size:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.split p:not(.eyebrow){color:#607074;font-size:16px}.example-band{background:#f4f1ea}.page-banner{background:#193440;color:white;padding:90px 0 100px}.page-banner h1{max-width:900px}.page-banner p:not(.eyebrow){max-width:630px;color:#c8d2d0;font-size:16px}.catalog-index{padding:50px 0;border-bottom:1px solid #dce1dd}.catalog-index>p{font-size:10px;letter-spacing:.15em;color:#9b8056;font-weight:700}.catalog-index>div{display:flex;gap:12px;flex-wrap:wrap}.catalog-index a{padding:9px 14px;background:#f1efea;font-size:12px}.catalog-row{padding:75px 0;border-bottom:1px solid #dce1dd;display:grid;grid-template-columns:28% 1fr;gap:6%}.catalog-intro h2{font-size:38px}.catalog-intro p:not(.eyebrow){color:#6a7979}.catalog-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.catalog-photos figure{margin:0;aspect-ratio:1;background:#f1efea;display:flex;align-items:center;justify-content:center}.catalog-photos img{width:87%;height:87%;object-fit:contain}.callout{background:#203945;color:white;padding:75px 0}.callout>.wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.callout h2{margin-bottom:14px}.callout p:not(.eyebrow){color:#c4d0cf;margin:0}.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 20px;margin-top:35px}.case-card .eyebrow{margin:18px 0 8px}.case-card h3{font:22px Georgia,serif;margin:0 0 6px}.case-card>p:last-child{font-size:12px;color:#758380}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8ddda;border:1px solid #d8ddda}.option-grid article{background:#fff;padding:30px;min-height:190px}.option-grid span{color:#b69a6c;font-size:11px}.option-grid h3{font:24px Georgia,serif;margin:15px 0}.option-grid p{color:#6b7979;font-size:13px;margin:0}.option-grid.two{grid-template-columns:1fr 1fr}.workflow{background:#1c3541;color:#fff;padding:90px 0}.workflow-list{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin-top:42px}.workflow-list div{border-top:1px solid #799096;padding-top:20px}.workflow-list span{color:#d0b17e;font-size:11px}.workflow-list h3{font:20px Georgia,serif;margin:12px 0}.workflow-list p{font-size:12px;color:#b9c8c7}.process-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.process-gallery figure{margin:0}.process-gallery img{width:100%;aspect-ratio:1.4;object-fit:cover}.process-gallery figcaption{padding-top:9px;font-size:12px}.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-page>div:first-child>p:not(.eyebrow){color:#6b7979}.contact-page .contact-card{box-shadow:0 4px 35px #132d3813;border:1px solid #e6eae7}@media(max-width:1000px){header nav{gap:12px;font-size:11px}.nav-cta{padding:13px}.home-grid,.case-grid{grid-template-columns:repeat(2,1fr)}.workflow-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.v2-hero .hero-photo{min-height:350px}.hero-photo img{max-height:310px}.page-banner{padding:65px 0}.page-banner h1{font-size:44px}.split,.contact-page,.catalog-row{grid-template-columns:1fr}.catalog-row{padding:50px 0;gap:25px}.catalog-photos{gap:8px}.catalog-intro h2{font-size:32px}.home-grid,.case-grid{gap:14px}.home-grid h3{font-size:17px}.case-card h3{font-size:18px}.option-grid{grid-template-columns:1fr 1fr}.option-grid article{padding:20px}.option-grid.two{grid-template-columns:1fr}.workflow-list{grid-template-columns:1fr 1fr}.process-gallery{grid-template-columns:1fr 1fr}.callout>.wrap{display:block}.callout .button{margin-top:25px}}
/* Brand and clearer product discovery */
.brand-logo{display:inline-flex;align-items:center;flex:none;background:#fff;line-height:0}.brand-logo img{display:block;width:168px;height:auto}.footer-inner .brand-logo{padding:8px 10px}.footer-inner .brand-logo img{width:160px}.products-menu{position:relative}.products-menu summary{cursor:pointer;list-style:none;white-space:nowrap;font-size:12px;font-weight:600}.products-menu summary::-webkit-details-marker{display:none}.products-menu summary span{margin-left:3px;color:#a07a48}.dropdown{position:absolute;top:calc(100% + 20px);left:-25px;background:#fff;box-shadow:0 12px 35px #1028332b;padding:18px;min-width:420px;display:grid;grid-template-columns:1fr 1fr;gap:0 12px;border-top:3px solid #ed8a24}.dropdown a{display:block;padding:9px 10px!important;color:#253b44;font-size:12px;font-weight:500}.dropdown a:hover{background:#f4f2ed}.dropdown .dropdown-all{grid-column:1/-1;color:#154c9e;font-weight:700;border-bottom:1px solid #e5e9e6;margin-bottom:5px}.v3-hero{min-height:600px}.v3-hero .hero-copy{padding-top:85px}.v3-hero h1{font-size:clamp(43px,4.2vw,67px);max-width:710px}.v3-hero .hero-desc{max-width:490px}.hero-mosaic{background:#e9e5dc;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:3px;padding:3px;position:relative;min-height:560px}.hero-mosaic>div:not(.mosaic-caption){background:#f3f0e8;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-mosaic .mosaic-main{grid-row:1/3}.hero-mosaic img{width:82%;height:80%;object-fit:contain}.hero-mosaic span{position:absolute;bottom:19px;left:18px;font-size:9px;font-weight:700;letter-spacing:.13em;color:#495e60}.mosaic-caption{position:absolute;left:20px;top:20px;font-size:9px;letter-spacing:.13em;color:#607372}.mosaic-caption small{letter-spacing:0;font-size:10px}.quick-strip{background:#eae5db}.quick-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding:20px 0}.quick-strip span{font-size:10px;font-weight:700;letter-spacing:.09em;color:#485e61;text-align:center;border-right:1px solid #cfcfc5}.quick-strip span:last-child{border:0}.home-collection .section-head>p{max-width:410px}.category-group{margin:35px 0 0}.category-heading{font-size:10px;letter-spacing:.15em;font-weight:700;color:#8b7350;border-bottom:1px solid #d7d8d1;padding-bottom:12px;margin-bottom:15px}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.category-grid a{display:grid;grid-template-columns:1fr auto;align-items:center;background:#fff;padding-bottom:14px;transition:transform .2s}.category-grid a:hover{transform:translateY(-4px)}.category-grid a>div{grid-column:1/-1;background:#ebe8e1;aspect-ratio:1.18;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.category-grid img{width:82%;height:82%;object-fit:contain}.category-grid span{font-size:13px;font-weight:700;line-height:1.3;padding:0 14px}.category-grid b{font-size:15px;font-weight:400;padding-right:14px}.home-collection .note{margin-top:25px}@media(max-width:1000px){.brand-logo img{width:135px}.products-menu summary{font-size:11px}.category-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.brand-logo img{width:145px}.products-menu{width:100%}.products-menu summary{font-size:12px;padding:12px 0}.dropdown{position:static;box-shadow:none;border-top:1px solid #e5e9e6;min-width:0;padding:4px 0 12px;grid-template-columns:1fr 1fr}.dropdown a{padding:9px!important}.v3-hero .hero-copy{padding-top:65px}.v3-hero h1{font-size:clamp(38px,9vw,54px)}.hero-mosaic{min-height:360px}.hero-mosaic span{font-size:8px;left:10px;bottom:10px}.mosaic-caption{left:10px;top:10px}.quick-strip .wrap{grid-template-columns:1fr 1fr;gap:14px 5px}.quick-strip span:nth-child(2){border:0}.quick-strip span{font-size:9px}.category-grid{grid-template-columns:repeat(2,1fr);gap:10px}.category-grid span{font-size:12px}.category-group{margin-top:28px}}
/* One continuous banner and a softer footer */
.v3-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 77% 40%,#3d5b66 0%,#274752 32%,#1a3440 70%);isolation:isolate}.v3-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,rgba(12,32,44,.25),transparent 70%)}.v3-hero .hero-copy{position:relative;z-index:1}.hero-products{position:relative;min-height:560px;overflow:hidden}.hero-products:before{content:"";position:absolute;width:min(76%,490px);aspect-ratio:1;border:1px solid #d0b5884d;border-radius:50%;left:13%;top:7%}.hero-products:after{content:"";position:absolute;left:5%;right:7%;bottom:13%;height:1px;background:linear-gradient(90deg,transparent,#d4c49a75,transparent)}.hero-products img{position:absolute;object-fit:contain;filter:drop-shadow(0 18px 20px #07192488)}.hero-medal{width:46%;height:68%;left:28%;top:5%;z-index:2}.hero-coin{width:27%;height:32%;left:6%;bottom:15%;transform:rotate(-8deg);z-index:1}.hero-golf{width:34%;height:39%;right:6%;bottom:15%;transform:rotate(9deg);z-index:3}.hero-products-caption{position:absolute;bottom:7%;left:11%;color:#dcc59b;font-size:10px;letter-spacing:.18em;font-weight:700}.hero-products-caption small{display:block;letter-spacing:.02em;font-size:10px;font-weight:400;color:#d0d9d6;margin-top:5px}footer{background:#e7edf0;color:#233e4e}.footer-inner .brand-logo{padding:0;background:transparent}.footer-inner .brand-logo img{width:172px}.footer-inner>div>a:not(.brand){color:#415c68}.footer-inner b{color:#325669}.footer-inner p{color:#59727d}.footer-bottom{border-color:#c5d3d9;color:#617b87}@media(max-width:700px){.hero-products{min-height:340px}.hero-products:before{width:270px;left:calc(50% - 135px);top:0}.hero-medal{width:38%;height:75%;left:31%;top:0}.hero-coin{width:24%;height:34%;left:12%;bottom:17%}.hero-golf{width:28%;height:38%;right:10%;bottom:17%}.hero-products-caption{bottom:4%;left:8%}}
.preview-notice{color:#647b80!important;margin:0 0 12px!important}.contact-card input[type=file]{padding:9px;height:auto}.article-empty>p:not(.eyebrow){color:#68777a}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.article-card{background:#f4f1ea;padding:27px;display:flex;flex-direction:column}.article-card h2{font-size:27px;margin:15px 0}.article-card p{font-size:13px;color:#68777a}.article-card .underlink{align-self:flex-start;margin-top:auto}.article-meta{font-size:10px;letter-spacing:.12em;color:#9b8056;text-transform:uppercase}.article-body{max-width:760px;margin:0 auto}.article-body h1{font-size:clamp(38px,5vw,62px)}.article-body .content{font-size:16px;line-height:1.85}.article-body .content img{max-width:100%;height:auto}.article-body .content h2{font-size:32px;margin-top:45px}.article-notice{padding:14px;margin:0 0 20px;background:#e8f3ea;color:#245633}.article-notice.error{background:#fbece7;color:#823b2a}.hp-field{position:absolute!important;left:-10000px!important}.pagination{display:flex;gap:15px;margin-top:35px}@media(max-width:700px){.article-grid{grid-template-columns:1fr}header nav{gap:0}}
/* Brand palette: EZONSEN blue, orange and neutral backgrounds. */
:root{--navy:#123f7c;--ink:#193757;--gold:#f38a20;--cream:#f3f6fa;--muted:#61738a}.top{background:#092c5b}h1 em,h2 em{color:#f79632}.eyebrow{color:#b95e0d}.eyebrow.light{color:#ffc17c}.nav-cta,.dark{background:#124b93}.nav-cta:hover,.dark:hover{background:#0c3872}.gold{background:#f38a20;color:#102e53}.gold:hover{background:#ffab55}.v3-hero{background:radial-gradient(ellipse at 76% 40%,#3475ae 0%,#1a5897 33%,#0b3268 75%)}.v3-hero:before{background:linear-gradient(115deg,rgba(5,24,60,.3),transparent 70%)}.hero-products:before{border-color:#ffbd745c}.hero-products-caption{color:#ffc17c}.quick-strip{background:#e8f0f8}.quick-strip span{color:#345675;border-color:#c7d7e6}.home-collection,.example-band{background:#f2f6fa}.category-heading{color:#a9540e;border-color:#d5e1ea}.category-grid a>div,.home-grid a>div,.case-card>div,.catalog-photos figure{background:#eaf0f6}.page-banner,.workflow,.callout{background:#123f7c}.pod{background:#e7f0f9}.underlink{border-color:#f38a20;color:#174e90}.dropdown{border-color:#f38a20}.dropdown .dropdown-all{color:#124b93}.contact-page .contact-card{border-color:#dbe5ef}.article-card{background:#f2f6fa}footer{background:#e4eef7;color:#153d69}.footer-inner>div>a:not(.brand){color:#355a7d}.footer-inner b{color:#154d89}.footer-inner p{color:#55738f}.footer-bottom{border-color:#bfd1e2;color:#597791}
/* Shared visual rhythm across navigation, cards and forms. */
header{box-shadow:0 1px 0 #dbe5ef}.nav-cta,.button{border-radius:3px}.button,.nav-cta{transition:background .2s,transform .2s}.button:hover,.nav-cta:hover{transform:translateY(-2px)}.section-head{align-items:end}.section-head h2,.split h2{max-width:690px}.category-grid a{box-shadow:0 5px 18px rgba(22,59,95,.04)}.category-grid a:hover{box-shadow:0 12px 28px rgba(22,59,95,.12)}.category-grid a>div{margin-bottom:16px}.catalog-row{border-color:#dbe5ef}.catalog-index a{background:#edf3f9;color:#264d72}.catalog-index a:hover{background:#dceaf7}.option-grid{background:#d9e5f0;border-color:#d9e5f0}.option-grid article{padding:34px}.contact-card{border-radius:4px}.contact-card input,.contact-card select,.contact-card textarea{border-color:#cddce8;border-radius:2px}.contact-card input:focus,.contact-card select:focus,.contact-card textarea:focus{outline:2px solid #79a5cf;outline-offset:1px}.article-grid{gap:24px}.article-card{border:1px solid #e0e9f2;border-radius:3px}.callout>.wrap{gap:40px}.callout h2{line-height:1.12}@media(max-width:1100px){header{height:70px}.menu{display:block;background:none;border:0;font-size:23px;color:var(--navy)}header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:20px 6%;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 8px 16px #0002;max-height:calc(100vh - 70px);overflow:auto}header nav.open{display:flex}header nav>a{padding:12px 0}.products-menu{width:100%}.products-menu summary{font-size:12px;padding:12px 0}.dropdown{position:static;box-shadow:none;border-top:1px solid #e5e9e6;min-width:0;padding:4px 0 12px;grid-template-columns:1fr 1fr}.dropdown a{padding:9px!important}.nav-cta{padding:14px 18px!important}}
/* Make the four service strengths easier to scan. */
.quick-strip .wrap{padding:30px 0}.quick-strip span{font-size:13px;line-height:1.4;letter-spacing:.08em;padding:0 14px}@media(max-width:700px){.quick-strip .wrap{padding:25px 0;gap:20px 5px}.quick-strip span{font-size:12px;padding:0 9px}}
/* Clearer product discovery and comfortable text sizes. */
body{font-size:16px}.top{font-size:12px;letter-spacing:.08em;height:38px}header nav,.products-menu summary{font-size:14px}.dropdown a{font-size:14px}.eyebrow{font-size:13px;letter-spacing:.1em}.hero-desc,.page-banner p:not(.eyebrow),.split p:not(.eyebrow){font-size:17px}.textlink,.underlink{font-size:15px}.button{font-size:14px}.quick-strip span{font-size:14px;letter-spacing:.03em}.category-group{margin-top:42px}.category-heading{font-family:'DM Sans',Arial,sans-serif;font-size:22px;font-weight:700;letter-spacing:0;color:#193757;border-bottom:1px solid #cddce8;padding-bottom:15px;margin:0 0 18px}.category-grid{grid-template-columns:repeat(4,1fr);gap:20px}.category-grid a{padding-bottom:19px}.category-grid a>div{aspect-ratio:1.38;margin-bottom:18px}.category-grid span{font-size:17px;line-height:1.35;padding:0 18px}.category-grid b{font-size:18px;padding-right:18px}.category-note{font-size:15px;color:#61738a;margin:30px 0 0}.case-feature{display:grid;grid-template-columns:1fr 1fr;min-height:390px;background:#e7f0f9}.case-feature-image{display:flex;align-items:center;justify-content:center;background:#d9e8f5;min-height:390px}.case-feature-image img{height:290px;max-width:70%;object-fit:contain}.case-feature-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:65px 12%}.case-feature-copy p{font-size:17px;color:#496882;max-width:450px}.case-feature-copy .button{margin-top:12px}.note,.craft-note,.steps small,.catalog-index a,.case-card>p:last-child,.option-grid p,.workflow-list p,.process-gallery figcaption,.footer-inner>div>a:not(.brand),.footer-inner p,.article-card p,.pod small,.contact-card small{font-size:14px}.contact-card label{font-size:14px}.contact-card input,.contact-card select,.contact-card textarea{font-size:15px}.article-meta,.contact-card>p,.footer-inner b,.footer-bottom{font-size:12px;letter-spacing:.06em}.catalog-index>p{font-size:14px}.product-info small{font-size:12px}.footer-inner>div>a:not(.brand){margin-top:12px}@media(max-width:1100px){.products-menu summary{font-size:14px}.dropdown a{font-size:14px}}@media(max-width:700px){.top{height:auto;min-height:34px;font-size:11px}.category-grid{grid-template-columns:repeat(2,1fr);gap:12px}.category-grid a>div{aspect-ratio:1.14}.category-grid span{font-size:15px;padding:0 12px}.category-grid b{padding-right:12px}.category-heading{font-size:20px}.case-feature{grid-template-columns:1fr}.case-feature-image{min-height:270px}.case-feature-image img{height:220px}.case-feature-copy{padding:45px 6%}.quick-strip span{font-size:13px}.footer-bottom{font-size:11px}}
/* POD product discovery */
.pod-hero{background:#123f7c;color:#fff}.pod-hero-inner{display:grid;grid-template-columns:1fr .85fr;gap:7%;align-items:center;padding:65px 0}.pod-hero h1{font-size:clamp(43px,4.6vw,68px);margin-bottom:23px}.pod-hero p:not(.eyebrow){color:#d4e3f0;font-size:17px;max-width:520px;margin-bottom:30px}.pod-hero-link{display:inline-block;margin-left:24px;color:#fff;font-size:15px;border-bottom:1px solid #b8cde1;padding:8px 0}.pod-hero-image{height:400px;background:#e9eef2;overflow:hidden}.pod-hero-image img{width:100%;height:100%;object-fit:cover}.pod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pod-card{background:#f2f6fa;border:1px solid #e0e9f2}.pod-card-image{height:290px;overflow:hidden;background:#e4ebf1}.pod-card-image img{width:100%;height:100%;object-fit:cover}.pod-card-copy{padding:24px}.pod-card-copy h3{font:25px Georgia,serif;margin:0 0 8px}.pod-card-copy p{color:#597087;font-size:15px}.pod-disclaimer{color:#60778a;margin:20px 0 0;font-size:14px}.pod-steps{padding:85px 0;background:#edf4fa}.pod-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:35px}.pod-step-grid article{border-top:2px solid #f38a20;padding-top:20px}.pod-step-grid span{display:inline-flex;align-items:center;justify-content:center;background:#124b93;color:#fff;width:36px;height:36px;border-radius:50%;font-weight:700}.pod-step-grid h3{font:23px Georgia,serif;margin:18px 0 10px}.pod-step-grid p,.pod-notes p,.pod-notes li,.pod-separate p{font-size:16px;color:#526e85}.pod-notes{display:grid;grid-template-columns:1fr 1fr;gap:12%}.pod-notes h3{font:25px Georgia,serif}.pod-notes ul{padding-left:20px;margin-bottom:25px}.pod-notes li{margin:10px 0}.pod-separate{background:#123f7c;color:#fff;padding:70px 0}.pod-separate .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.pod-separate p{color:#d0e0ed;max-width:600px}.pod-separate h2{margin-bottom:15px}@media(max-width:700px){.pod-hero-inner{grid-template-columns:1fr;gap:35px;padding:55px 0}.pod-hero-image{height:270px}.pod-grid{grid-template-columns:1fr}.pod-card-image{height:260px}.pod-step-grid{grid-template-columns:1fr 1fr}.pod-notes{grid-template-columns:1fr;gap:30px}.pod-separate .wrap{display:block}.pod-separate .button{margin-top:15px}}
/* Larger POD catalog, separated by product type. */
.pod-category-nav{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 8px}.pod-category-nav a{background:#e7f0f9;color:#174e90;padding:11px 17px;font-size:15px;font-weight:700;border-radius:3px}.pod-category-nav a:hover{background:#d5e8f8}.pod-product-group{padding-top:48px}.pod-product-group h3{font:30px Georgia,serif;border-bottom:1px solid #d5e3ee;margin:0 0 22px;padding-bottom:15px}.pod-grid-30{grid-template-columns:repeat(4,1fr);gap:20px}.pod-grid-30 .pod-card-image{height:220px}.pod-grid-30 .pod-card-copy{padding:19px}.pod-grid-30 .pod-card-copy h4{font:21px Georgia,serif;margin:0 0 8px}.pod-grid-30 .underlink{margin-top:8px;font-size:14px}.pod-placeholder{height:100%;display:flex;align-items:center;justify-content:center;background:#e9f0f6;color:#647d91;text-align:center;font-size:15px;line-height:1.5}.pod-disclaimer{line-height:1.6}@media(max-width:950px){.pod-grid-30{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.pod-grid-30{grid-template-columns:repeat(2,1fr);gap:12px}.pod-grid-30 .pod-card-image{height:165px}.pod-grid-30 .pod-card-copy{padding:14px}.pod-grid-30 .pod-card-copy h4{font-size:18px}.pod-category-nav a{font-size:14px;padding:9px 12px}}
/* Keep stock-reference products visible without cropping away details. */
.pod-grid-30 .pod-card-image img{object-fit:contain;object-position:center;background:#e9f0f6}
.pod-grid-30 .pod-color-note{font-size:14px;color:#647b90;margin:4px 0 8px}.pod-grid-30 .pod-card-copy h4{margin-bottom:6px}
/* Product images scale within a consistent frame, with a soft image backdrop. */
.pod-grid-30 .pod-card-image{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}.pod-grid-30 .pod-card-image .pod-bg{position:absolute;inset:-12%;width:124%;height:124%;object-fit:cover;filter:blur(18px);opacity:.18;z-index:0}.pod-grid-30 .pod-card-image .pod-main{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent}

/* Fill each POD product card while preserving image proportions. */
.pod-grid-30 .pod-card-image .pod-main{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}

/* Individually compose hat references inside the image frame. */
.pod-grid-30 .pod-card-image:has(.pod-main[src$="unsplash-1645266729222-17cd32e06fd0.jpg"]),
.pod-grid-30 .pod-card-image:has(.pod-main[src$="unsplash-1723797447445-a7a81aa8078a.jpg"]),
.pod-grid-30 .pod-card-image:has(.pod-main[src$="pixabay-beanie.png"]){background:#fff}
.pod-grid-30 .pod-card-image:has(.pod-main[src$="unsplash-1645266729222-17cd32e06fd0.jpg"]) .pod-bg,
.pod-grid-30 .pod-card-image:has(.pod-main[src$="unsplash-1723797447445-a7a81aa8078a.jpg"]) .pod-bg,
.pod-grid-30 .pod-card-image:has(.pod-main[src$="pixabay-beanie.png"]) .pod-bg{display:none}
.pod-grid-30 .pod-card-image .pod-main[src$="unsplash-1645266729222-17cd32e06fd0.jpg"]{transform:translate(-18%,-18%) scale(1.1)}
.pod-grid-30 .pod-card-image .pod-main[src$="unsplash-1723797447445-a7a81aa8078a.jpg"],
.pod-grid-30 .pod-card-image .pod-main[src$="pixabay-beanie.png"]{inset:10%;width:80%;height:80%;object-fit:contain}

/* Keep portrait products visible and frame off-center subjects thoughtfully. */
.pod-grid-30 .pod-card-image .pod-main[src$="4000090.jpg"]{object-fit:cover;object-position:center}
.pod-grid-30 .pod-card-image .pod-main[src$="19155039.jpg"]{object-position:28% 78%}
.pod-grid-30 .pod-card-image .pod-main[src$="821649.jpg"]{object-position:center 92%}
.pod-grid-30 .pod-card-image .pod-main[src$="8896869.jpg"]{object-position:center 73%}
.pod-grid-30 .pod-card-image .pod-main[src$="6373354.jpg"]{object-position:center 72%}

.pod-grid-30 .pod-card-image .pod-main[src$="pexels-9594694.jpg"]{object-fit:cover;object-position:center}

/* Center supplier-reference products on a continuous white frame. */
.pod-grid-30 .pod-card-image:has(.pod-main[src*="/reference-"]){background:#fff}
.pod-grid-30 .pod-card-image:has(.pod-main[src*="/reference-"]) .pod-bg{display:none}
.pod-grid-30 .pod-card-image .pod-main[src*="/reference-"]{object-fit:contain;object-position:center;background:#fff}

/* Consistent POD catalogue layout across all product types. */
.pod-grid-30{align-items:stretch}
.pod-grid-30 .pod-card{display:flex;flex-direction:column;min-width:0;background:#f5f8fb;border:1px solid #dde8f2}
.pod-grid-30 .pod-card-image{height:auto;aspect-ratio:1.38;background:#edf3f8}
.pod-grid-30 .pod-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:20px}
.pod-grid-30 .pod-card-copy h4{font-size:21px;line-height:1.25;min-height:1.25em}
.pod-grid-30 .pod-color-note{line-height:1.4;margin:3px 0 10px}
.pod-grid-30 .underlink{margin-top:auto;padding-top:8px}
@media(max-width:700px){.pod-grid-30 .pod-card-image{height:auto}.pod-grid-30 .pod-card-copy{padding:14px}.pod-grid-30 .pod-card-copy h4{font-size:18px}}

.category-hero{background:#153f77;color:#fff}.category-hero-inner{display:grid;grid-template-columns:1fr .9fr;gap:7%;align-items:center;padding:64px 0}.category-hero h1{font-size:clamp(42px,4.5vw,68px);margin:18px 0 22px}.category-hero p:not(.eyebrow){font-size:18px;color:#dce9f6;max-width:570px}.category-back{display:inline-block;color:#dce9f6;margin-bottom:30px;font-size:15px}.category-hero-photo{height:360px;background:#e7f0f8;display:flex;justify-content:center;align-items:center}.category-hero-photo img{width:88%;height:88%;object-fit:contain}.category-detail{padding-top:80px;padding-bottom:80px}.category-heading-block{max-width:720px}.category-heading-block p:not(.eyebrow){font-size:18px;color:#526e85}.category-option-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:0;list-style:none;margin:36px 0 22px}.category-option-list li{border-top:3px solid #ef8c2b;background:#edf4fa;color:#173d67;padding:22px;font-size:18px;font-weight:700}.category-examples{background:#f1f6fa;padding:75px 0}.category-example-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.category-example-grid figure{margin:0;background:#fff;aspect-ratio:1.25;display:flex;align-items:center;justify-content:center}.category-example-grid img{width:90%;height:90%;object-fit:contain}.category-examples .category-note{margin-top:24px}@media(max-width:700px){.category-hero-inner{grid-template-columns:1fr;gap:30px;padding:42px 0}.category-hero-photo{height:250px}.category-option-list{grid-template-columns:1fr 1fr;gap:12px}.category-option-list li{font-size:16px;padding:16px}.category-example-grid{grid-template-columns:1fr 1fr;gap:12px}.category-detail,.category-examples{padding-top:55px;padding-bottom:55px}}

/* Show catalog examples alongside the customization choices. */
.category-visual-intro{margin:38px 0 18px}.category-visual-intro h3{font:26px Georgia,serif;color:#173b61;margin:0 0 7px}.category-visual-intro p{font-size:16px;color:#526e85;margin:0}.category-detail .category-example-grid figure{background:#eef4f9;border:1px solid #e1eaf2}.category-detail .category-option-list{margin-top:30px}.category-detail .category-note{max-width:760px}

/* Pin customization selector */
.oem-reference {
  padding-bottom: 16px;
}

.oem-options {
  margin: 26px 0 12px;
  border: 1px solid #d9e4ef;
  background: #fff;
}

.oem-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  background: #d9e4ef;
  border-bottom: 1px solid #d9e4ef;
}

.oem-options [hidden] {
  display: none;
}

.oem-tabs button {
  padding: 14px 10px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: #eef4fa;
  color: #173b61;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.oem-tabs button:hover {
  background: #e2edf7;
}

.oem-tabs button[aria-selected="true"] {
  border-bottom-color: #e78023;
  background: #fff;
  color: #123862;
}

.oem-tabs button:focus-visible {
  outline: 2px solid #195894;
  outline-offset: -4px;
}

.oem-panel {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) minmax(0, 2.65fr);
  align-items: center;
  gap: clamp(20px, 4vw, 54px);
  padding: clamp(16px, 2.5vw, 36px);
}

.oem-panel + .oem-panel {
  border-top: 1px solid #d9e4ef;
}

.oem-tabs:not([hidden]) ~ .oem-panel {
  border-top: 0;
}

.oem-panel h3 {
  font: clamp(25px, 3vw, 34px)/1.12 Georgia, serif;
  color: #173b61;
  margin: 0 0 9px;
}

.oem-panel p {
  font-size: 17px;
  line-height: 1.5;
  margin: 0;
}

.oem-illustration {
  overflow: hidden;
  background: #f3efe9;
  border-radius: 4px;
}

.oem-illustration img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

@media (max-width: 760px) {
  .oem-tabs:not([hidden]) {
    display: flex;
    flex-wrap: wrap;
  }

  .oem-tabs button {
    flex: 1 1 30%;
    min-height: 48px;
    font-size: 15px;
  }

  .oem-panel {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    gap: 16px;
  }

  .oem-reference + .section .option-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.category-visual-intro{margin-top:58px}.oem-journey{padding:72px 0;background:#eff4f9}.oem-journey-head{display:flex;justify-content:space-between;align-items:end;gap:24px}.oem-journey-head a{font-weight:700;color:#164b89}.oem-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:32px}.oem-steps>div{border-top:2px solid #e69a48;padding-top:20px}.oem-steps span{color:#bc702c;font-weight:700;font-size:15px}.oem-steps h3{font-size:22px;margin:8px 0}.oem-steps p{font-size:16px;line-height:1.5}.oem-reference .category-note{margin-bottom:0}@media(max-width:800px){.oem-steps{grid-template-columns:repeat(2,1fr)}.oem-journey-head{align-items:start;flex-direction:column}}@media(max-width:480px){.oem-steps{grid-template-columns:1fr 1fr;gap:18px}.oem-steps h3{font-size:19px}}

.oem-hardware {
  grid-column: 1 / -1;
  border-top: 1px solid #d9e4ef;
  padding-top: 22px;
}

.oem-hardware h4 {
  margin: 0 0 16px;
  color: #173b61;
  font-size: 19px;
}

.oem-hardware ul {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.oem-hardware li {
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 8px 4px;
  border: 1px solid #e4ebf2;
  text-align: center;
  line-height: 1.25;
  font-size: 15px;
  font-weight: 650;
}

.oem-hardware-photo {
  display: grid;
  place-items: center;
  height: 65px;
}

.oem-hardware-photo img {
  display: block;
  max-width: min(90%, 86px);
  max-height: 60px;
  width: auto;
  height: auto;
  object-fit: contain;
}

@media (max-width: 850px) {
  .oem-hardware ul {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
}

/* Product cutouts and category comparisons */
.category-hero-cutout {
  background: radial-gradient(ellipse at center, #f6f9fc 0%, #dfeaf5 100%);
  border-radius: 6px;
}

.category-hero-cutout img.category-fit {
  width: auto;
  height: auto;
  max-width: min(86%, var(--source-limit));
  max-height: 86%;
}

.category-options .oem-tabs {
  grid-template-columns: repeat(var(--tabs, 4), minmax(0, 1fr));
}

.category-option-visuals,
.catalog-cutouts {
  display: grid;
  grid-template-columns: repeat(var(--samples, 3), minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
  min-width: 0;
}

.category-option-visuals {
  align-items: center;
  background: #f2f6fa;
  border-radius: 5px;
  padding: 16px;
}

.category-option-visuals > img.category-fit {
  justify-self: center;
  width: auto;
  height: auto;
  max-width: min(100%, var(--source-limit));
  max-height: 330px;
}

.catalog-cutouts .category-sample,
.category-option-visuals .category-sample {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  aspect-ratio: auto;
  margin: 0;
  min-width: 0;
  border: 0;
  border-radius: 4px;
  overflow: hidden;
  background: #eef4fa;
}

.category-option-visuals .category-sample {
  background: #fff;
}

.category-sample-image {
  display: grid;
  place-items: center;
  position: relative;
  box-sizing: border-box;
  flex: none;
  min-width: 0;
  min-height: 120px;
  height: clamp(120px, 17vw, 230px);
  padding: 12px;
}

.category-option-visuals .category-sample-image {
  height: clamp(105px, 14vw, 180px);
}

.catalog-photos .category-sample-image {
  height: clamp(120px, 15vw, 205px);
}

.category-sample-image img.category-fit {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto;
  max-width: min(calc(100% - 14px), var(--source-limit));
  max-height: calc(100% - 20px);
  object-fit: contain;
}

.category-sample figcaption {
  padding: 2px 10px 12px;
  color: #173b61;
  font-size: 15px;
  line-height: 1.3;
  text-align: center;
}

.category-crop {
  width: min(100%, var(--crop-limit));
  justify-self: center;
  position: relative;
  aspect-ratio: var(--crop-ratio);
  overflow: hidden;
}

.category-crop img {
  display: block;
  position: absolute;
  inset: var(--crop-y) auto auto var(--crop-x);
  width: var(--crop-width);
  max-width: none;
  height: auto;
}

.category-sample-image .category-crop {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: calc(100% - 20px);
  max-width: min(calc(100% - 14px), var(--crop-limit));
}

@media (max-width: 760px) {
  .category-options .oem-tabs:not([hidden]) {
    grid-template-columns: none;
  }
  .category-option-visuals {
    padding: 10px;
    gap: 8px;
  }
  .category-option-visuals .category-sample-image {
    padding: 6px;
    min-height: 86px;
    height: 100px;
  }
  .category-option-visuals .category-sample figcaption {
    font-size: 14px;
    padding-inline: 4px;
  }
  .catalog-cutouts {
    gap: 8px;
  }
  .catalog-cutouts .category-sample-image {
    height: 116px;
    min-height: 116px;
    padding: 6px;
  }
}

/* A dedicated visual for each customization option. */
.oem-option-photo {
  display: grid;
  place-items: center;
  margin: 0;
  overflow: hidden;
  min-width: 0;
  background: #f5f1eb;
  border-radius: 5px;
}
.oem-option-photo img {
  display: block;
  width: 100%;
  height: auto;
}
.oem-option-catalog {
  padding: 12px;
  background: #f2f6fa;
}
.oem-option-catalog img {
  width: auto;
  max-width: 100%;
  max-height: 380px;
  object-fit: contain;
}


/* Keep original sample photos and detail crops readable at their native sizes. */
.oem-original-photos {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(var(--photos, 1), minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border-radius: 5px;
  background: #edf3f8;
}
.oem-original-photos > img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 385px;
  object-fit: contain;
  margin: auto;
}
.oem-original-figure {
  display: flex;
  flex-direction: column;
  margin: 0;
  min-width: 0;
  overflow: hidden;
  border-radius: 4px;
  background: #fff;
}
.oem-original-image {
  height: clamp(130px, 23vw, 290px);
  position: relative;
}
.oem-original-image img {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto;
  max-width: calc(100% - 12px);
  max-height: calc(100% - 12px);
  object-fit: contain;
}
.oem-original-figure figcaption {
  padding: 8px 8px 12px;
  color: #173b61;
  font-size: 15px;
  line-height: 1.3;
  text-align: center;
}
@media (max-width: 760px) {
  .oem-original-photos {
    padding: 8px;
    gap: 8px;
  }
  .oem-original-image {
    height: clamp(94px, 30vw, 170px);
  }
  .oem-original-figure figcaption {
    padding: 6px 4px 10px;
    font-size: 14px;
  }
}

/* Site hierarchy */
:root {
  --site-ink: #153653;
  --site-blue: #123e73;
  --site-pale: #eef4f9;
  --site-line: #dce6ef;
}
main h1, main h2, main h3 {
  text-wrap: balance;
}
main p, main figcaption {
  text-wrap: pretty;
}
main :is(p, li, figcaption) {
  font-size: 17px;
}
.page-banner h1, .category-hero h1 {
  line-height: 1.08;
}
.compact-banner .wrap {
  padding-top: clamp(38px, 6vw, 78px);
  padding-bottom: clamp(38px, 6vw, 78px);
}
.page-banner:not(.compact-banner) .wrap {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: clamp(40px, 6vw, 80px);
}
.landing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.button.outline {
  color: var(--site-blue);
  border: 1px solid #8aa2b9;
  background: white;
}
.landing-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px 24px;
  align-items: baseline;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.landing-section-heading h2, .landing-benefits h2 {
  margin: 0;
  color: var(--site-ink);
}
.showcase-grid, .examples-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
}
.showcase-card, .example-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--site-line);
  border-radius: 5px;
  background: #fff;
}
.showcase-card:hover, .showcase-card:focus-visible {
  border-color: #235b93;
}
.showcase-image, .example-image {
  display: grid;
  place-items: center;
  position: relative;
  height: clamp(140px, 18vw, 238px);
  background: var(--site-pale);
}
.showcase-image img, .example-image img {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto;
  max-width: calc(100% - 28px);
  max-height: calc(100% - 24px);
  object-fit: contain;
}
.showcase-card h3, .example-card h2 {
  margin: 0;
  padding: 16px;
  font-weight: 700;
  font-family: inherit;
  font-size: 20px;
  line-height: 1.25;
  color: var(--site-ink);
}
.showcase-card h3 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.showcase-card h3 span {
  color: #225c95;
}
.landing-benefits, .landing-pod {
  padding-block: clamp(38px, 6vw, 76px);
  background: var(--site-pale);
}
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 15px;
  margin: 24px 0 18px;
}
.benefits-grid article {
  padding: 19px;
  border-top: 3px solid #df8629;
  background: white;
}
.benefits-grid h3 {
  color: var(--site-ink);
  margin: 0 0 8px;
  font-size: 22px;
}
.benefits-grid p {
  margin: 0;
}
.landing-feature {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,1fr);
  align-items: center;
  gap: clamp(24px, 5vw, 62px);
}
.landing-feature-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
  aspect-ratio: 3/2;
  object-fit: cover;
  object-position: center 53%;
}
.landing-feature h2, .landing-pod h2 {
  margin-top: 0;
}
.landing-pod .wrap, .clean-callout .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px 26px;
}
.landing-pod :is(h2,p), .clean-callout h2 {
  margin-bottom: 0;
}
.landing-pod p {
  margin-top: 6px;
}
.clean-callout .wrap {
  padding-block: clamp(25px, 4vw, 50px);
}
.clean-callout h2 {
  font-size: clamp(28px, 3.5vw, 45px);
}
.directory-page {
  padding-block: clamp(26px, 4vw, 56px) clamp(42px, 6vw, 85px);
}
.product-directory-group + .product-directory-group {
  margin-block-start: clamp(30px, 4.5vw, 64px);
}
.product-directory-group h2 {
  margin: 0 0 clamp(14px, 2vw, 24px);
  color: var(--site-ink);
  font-size: clamp(23px, 2.3vw, 32px);
}
.product-directory {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(10px, 1.4vw, 20px);
  list-style: none;
  padding: 0;
  margin: 0;
}
.product-directory li { scroll-margin-top: 100px; }
.directory-card {
  display: grid;
  grid-template-rows: auto 1fr;
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--site-line);
  border-radius: 6px;
  background: #fff;
  color: var(--site-ink);
}
.directory-card:is(:hover,:focus-visible) { border-color: var(--site-blue); }
.directory-card:focus-visible { outline: 2px solid var(--site-blue); outline-offset: 3px; }
.directory-card-photo {
  display: grid;
  place-items: center;
  aspect-ratio: 4 / 3;
  position: relative;
  background: var(--site-pale);
}
.directory-card-photo img {
  position: absolute;
  width: 82%;
  height: 82%;
  inset: 9%;
  object-fit: contain;
}
.directory-card-label {
  display: flex;
  gap: 6px;
  justify-content: space-between;
  align-items: center;
  min-height: 58px;
  padding: clamp(10px, 1.1vw, 15px);
  font-size: clamp(14px, 1.25vw, 18px);
  font-weight: 700;
  line-height: 1.25;
}
.directory-card-label > span { color: var(--site-blue); flex: none; }
@media (max-width: 1050px) {
  .product-directory { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .product-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.example-card {
  scroll-margin-top: 110px;
}
.example-card .underlink {
  display: inline-block;
  margin: 0 16px 17px;
  font-size: 16px;
}
.category-hero-inner {
  padding-block: clamp(35px, 5vw, 67px);
}
.category-hero h1 {
  font-size: clamp(34px, 4.1vw, 59px);
}
.category-hero p {
  font-size: clamp(17px, 1.45vw, 20px);
}
.category-detail {
  padding-block: clamp(34px, 5vw, 68px);
}
.oem-panel {
  gap: clamp(15px, 3vw, 42px);
}
.oem-panel p, .oem-original-figure figcaption {
  font-size: 17px;
}
.oem-tabs button {
  line-height: 1.25;
}
.customization-directory {
  padding-bottom: 34px;
}
.customization-directory .landing-section-heading {
  margin-bottom: 10px;
}
.customization-directory p {
  margin: 0;
}
.pod-intro-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  padding-top: 22px;
}
.pod-card-image {
  background: #edf3f8;
}
.pod-card-copy h4 {
  font-size: 20px;
}
.pod-card-copy .underlink {
  font-size: 16px;
}
.pod-disclaimer {
  font-size: 16px;
  line-height: 1.45;
}
.contact-page label, .contact-page small {
  font-size: 16px;
}
@media (max-width: 900px) {
  .benefits-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 760px) {
  .showcase-grid, .examples-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
  }
  .showcase-card h3, .example-card h2 {
    padding: 11px;
    font-size: 18px;
  }
  .example-card .underlink {
    margin: 0 11px 12px;
  }
  .benefits-grid {
    gap: 9px;
  }
  .benefits-grid article {
    padding: 12px;
  }
  .benefits-grid h3 {
    font-size: 19px;
  }
  .oem-original-figure figcaption {
    font-size: 15px;
  }
}

.page-banner {
  padding-block: 0;
}
.compact-banner {
  background: var(--site-pale);
  color: var(--site-ink);
}
.compact-banner .wrap {
  padding-block: clamp(29px, 4.1vw, 58px);
}
.compact-banner h1 {
  font-size: clamp(37px, 4.2vw, 60px);
  margin: 0 0 10px;
}
.compact-banner p:not(.eyebrow) {
  color: #36546c;
  margin: 0;
}
.directory-page, #pod-products {
  padding-top: clamp(34px, 4.7vw, 60px);
}
.category-heading-block h2 {
  font-size: clamp(32px, 3.55vw, 48px);
}
.pod-intro-actions {
  padding-top: 16px;
}

/* Homepage */

.landing-products .showcase-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.landing-products .showcase-card {
  display: grid;
  grid-template-rows: auto 1fr;
}
.landing-products .showcase-image {
  height: clamp(132px, 16vw, 205px);
}

.landing-style-references {
  padding-block: clamp(42px, 6vw, 78px);
  background: var(--site-pale);
}
.style-reference-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.6vw, 22px);
}
.style-reference-card {
  display: grid;
  grid-template-rows: auto 1fr;
  margin: 0;
  border-radius: 6px;
  background: #fff;
  text-align: center;
}
.style-reference-card > div {
  display: grid;
  place-items: center;
  height: clamp(124px, 15vw, 204px);
  padding: 15px;
}
.style-reference-card img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: contain;
}
.style-reference-card figcaption {
  padding: 0 10px 16px;
  color: var(--site-ink);
  font-size: 18px;
  font-weight: 700;
}

.landing-faq {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.65fr);
  gap: clamp(22px, 5vw, 72px);
  padding-block: clamp(48px, 7vw, 98px);
}
.landing-faq h2 {
  margin: 0 0 16px;
  color: var(--site-ink);
}
.landing-faq-list {
  border-top: 1px solid var(--site-line);
}
.landing-faq-list details {
  border-bottom: 1px solid var(--site-line);
}
.landing-faq-list summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 18px 8px 18px 0;
  color: var(--site-ink);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  list-style: none;
  cursor: pointer;
}
.landing-faq-list summary::-webkit-details-marker {
  display: none;
}
.landing-faq-list summary:hover {
  color: var(--site-blue);
}
.landing-faq-list summary:focus-visible {
  outline: 2px solid var(--site-blue);
  outline-offset: -2px;
}
.landing-faq-list p {
  margin: 4px 34px 18px 0;
  color: #36546c;
  font-size: 17px;
  line-height: 1.55;
}
.faq-toggle {
  position: relative;
  width: 16px;
  height: 16px;
  flex: none;
  color: var(--site-blue);
}
.faq-toggle::before, .faq-toggle::after {
  content: "";
  position: absolute;
  inset: 7px 0 auto;
  height: 2px;
  background: currentColor;
}
.faq-toggle::after {
  transform: rotate(90deg);
}
.landing-faq-list details[open] .faq-toggle::after {
  transform: none;
}

@media (max-width: 900px) {
  .landing-products .showcase-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .landing-faq {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .style-reference-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .style-reference-card figcaption, .landing-products .showcase-card h4 {
    font-size: 17px;
  }
}

.home-category-group + .home-category-group {
  margin-top: clamp(26px, 4vw, 48px);
}
.home-category-group > h3 {
  margin: 0 0 14px;
  color: var(--site-ink);
  font-family: inherit;
  font-size: clamp(19px, 2vw, 24px);
  font-weight: 700;
}
.landing-products .showcase-image {
  height: clamp(128px, 14vw, 190px);
}
.landing-products .showcase-card h4 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 14px;
  color: var(--site-ink);
  font-size: 18px;
  line-height: 1.28;
}
.landing-products .showcase-card h4 span {
  color: var(--site-blue);
}
.category-design-note {
  color: #36546c;
  margin: 18px 0 0;
}
@media (min-width: 701px) and (max-width: 1050px) {
  .landing-products .showcase-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .landing-products .showcase-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .landing-products .showcase-card h4 {
    padding: 12px;
    font-size: 16px;
  }
}

/* Gift programs */
.kit-entries {
  padding-top: 0;
  scroll-margin-top: 84px;
}
.kit-entry-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px;
}
.kit-entry {
  display: grid;
  grid-template-columns: minmax(0,.82fr) minmax(0,1fr);
  align-items: center;
  border: 1px solid var(--site-line);
  border-radius: 6px;
  background: var(--site-pale);
  padding: clamp(14px,2vw,26px);
  gap: clamp(12px,2vw,24px);
}
.kit-entry:hover, .kit-entry:focus-visible { border-color: var(--site-blue); }
.kit-entry-image {
  display: grid;
  place-items: center;
  min-width: 0;
}
.kit-entry-image img {
  display: block;
  width: 100%;
  height: 148px;
  object-fit: contain;
}
.kit-entry-copy h3 {
  color: var(--site-ink);
  font-size: clamp(20px,2vw,27px);
  line-height: 1.2;
  margin: 0 0 8px;
}
.kit-entry-copy p {
  color: #37536d;
  font-size: 16px;
  line-height: 1.45;
  margin: 0;
}
.kit-gallery {
  padding-block: clamp(30px,4.5vw,64px) clamp(44px,6vw,78px);
  scroll-margin-top: 84px;
}
.kit-gallery-heading { margin-bottom: clamp(18px,2.4vw,32px); }
.kit-gallery h1 {
  color: var(--site-ink);
  font-size: clamp(35px,5.4vw,72px);
  line-height: 1.02;
  margin: 0;
}
.kit-jumps, .kit-inline-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  padding: 0;
}
.kit-jumps { margin: 20px 0 0; }
.kit-jumps a {
  display: block;
  border: 1px solid var(--site-line);
  border-radius: 5px;
  padding: 6px 12px;
  color: var(--site-blue);
  background: var(--site-pale);
}
.kit-jumps a:hover { border-color: var(--site-blue); }
.kit-card-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: clamp(15px,2.3vw,28px);
}
.kit-card {
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border-radius: 7px;
  border: 1px solid var(--site-line);
  background: white;
  scroll-margin-top: 84px;
}
.kit-gallery-note {
  margin: 10px 0 0;
  color: #37536d;
  font-size: 14px;
}
.kit-card-images {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #f6f8fb;
}
.kit-card-images img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.kit-card-caption {
  display: flex;
  gap: 8px 14px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: clamp(13px,1.7vw,23px);
  background: var(--site-pale);
}
.kit-card-caption h2 { color: var(--site-ink); font-size: clamp(17px,1.8vw,24px); line-height: 1.2; margin: 0; }
.kit-gallery-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
  margin-top: 25px;
}
@media (max-width: 860px) {
  .kit-entry { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .kit-entry-grid, .kit-card-grid { grid-template-columns: 1fr; }
  .kit-entry { grid-template-columns: minmax(0,.65fr) minmax(0,1fr); }
  .kit-entry-image img { height: 112px; }
}

/* Full-width homepage carousel */
.home-banners {
  position: relative;
  overflow: hidden;
}
.home-banners [hidden] { display: none; }
.home-banners.is-ready .home-banner-track {
  display: flex;
  transform: translate3d(calc(-100% * var(--banner-index, 0)), 0, 0);
  transition: transform 620ms cubic-bezier(.22,.65,.3,1);
  touch-action: pan-y pinch-zoom;
}
.home-banner {
  --banner-bg: #eee7db;
  flex: 0 0 100%;
  min-width: 0;
  position: relative;
  isolation: isolate;
  color: var(--site-ink);
  background: var(--banner-bg);
}
.home-banner--metal {
  --banner-bg: #081938;
  color: #f5f8fc;
}
.home-banner--pod { --banner-bg: #e0e3e3; }
.home-banner-inner {
  display: grid;
  align-content: center;
  min-height: clamp(448px,39vw,625px);
  padding-block: clamp(45px,6vw,90px) clamp(75px,7vw,106px);
}
.home-banner-copy {
  z-index: 1;
  width: min(43%,560px);
}
.home-banner-copy :is(h1,h2) {
  color: inherit;
  margin: 0;
  font-size: clamp(37px,4.35vw,70px);
  line-height: 1.04;
  letter-spacing: -.032em;
}
.home-banner-copy p {
  margin: 17px 0 24px;
  max-width: 35ch;
  font-size: clamp(16px,1.5vw,22px);
  line-height: 1.5;
}
.home-banner--metal .home-banner-copy p { color: #e1e8f0; }
.home-banner-visual {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 auto;
  width: 62%;
  margin: 0;
}
.home-banner-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 53%;
}
.home-banner-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, var(--banner-bg), transparent 33%);
}
.home-banner--metal .home-banner-visual img { object-position: center 47%; }
.home-banner-visual figcaption {
  position: absolute;
  z-index: 1;
  right: 16px;
  bottom: 16px;
  padding: 3px 7px;
  border-radius: 3px;
  background: #ffffffed;
  color: #244762;
  font-size: 12px;
}
.home-banner-controls {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  display: flex;
  align-items: stretch;
  padding: 4px;
  border-radius: 7px;
  background: #0c2442ee;
}
.home-banner-controls [role="tablist"] {
  display: flex;
  align-items: stretch;
  gap: 3px;
}
.home-banner-controls button {
  appearance: none;
  min-height: 44px;
  padding: 6px 12px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: white;
  font: inherit;
  font-size: clamp(12px,1.2vw,14px);
  font-weight: 700;
  line-height: 1.15;
  white-space: nowrap;
  cursor: pointer;
}
.home-banner-controls button:hover { background: #ffffff26; }
.home-banner-controls button[aria-selected="true"] {
  color: #102d4c;
  background: #f5f7f9;
}
.home-banner-controls button:focus-visible {
  outline: 2px solid #f8a747;
  outline-offset: -2px;
}
.landing-benefits {
  padding-block: clamp(27px,4.5vw,56px);
}
.landing-benefits .benefits-grid {
  gap: clamp(10px,1.4vw,20px);
  margin-top: 20px;
}
.landing-benefits .benefits-grid article {
  padding: clamp(14px,2vw,26px);
}
.landing-benefits .benefits-grid h3 {
  font-size: clamp(19px,2vw,28px);
  line-height: 1.12;
}
@media (max-width: 760px) {
  .home-banner { display: flex; flex-direction: column; }
  .home-banner-inner {
    align-content: start;
    flex: 1;
    min-height: 0;
    padding-block: 25px 12px;
  }
  .home-banner-copy { width: 100%; }
  .home-banner-copy :is(h1,h2) { font-size: clamp(32px,7vw,51px); }
  .home-banner-copy p { margin: 12px 0 15px; }
  .home-banner-visual {
    position: relative;
    width: 100%;
    height: clamp(220px,63vw,335px);
    padding-bottom: 0;
  }
  .home-banner-visual::after {
    background: linear-gradient(180deg, var(--banner-bg), transparent 27%, transparent 67%, var(--banner-bg));
  }
  .home-banner--metal .home-banner-visual img { object-fit: contain; }
  .home-banner-visual figcaption { bottom: 9px; }
  .home-banners.is-ready .home-banner { padding-bottom: 55px; }
  .home-banner-controls { bottom: 9px; max-width: calc(100% - 20px); }
  .home-banner-controls button { padding-inline: 8px; }
}
@media (max-width: 480px) {
  .landing-feature { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 350px) {
  .landing-benefits .benefits-grid { grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .home-banners.is-ready .home-banner-track { transition: none; }
}

.site-language { display: inline-flex; align-items: center; }
.site-language[hidden] { display: none; }
.site-language select {
  max-width: 100%;
  min-height: 44px;
  padding: 6px 10px;
  color: var(--site-ink);
  border: 1px solid #bacde0;
  border-radius: 4px;
  background: #fff;
  font: inherit;
  font-weight: 600;
}
.site-language select:focus-visible { outline: 2px solid #185491; outline-offset: 2px; }
header nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; }
@media (max-width: 1100px) {
  .site-language { display: block; padding-block: 10px; }
  .site-language select { width: 100%; }
}
html:lang(ar) { font-family: system-ui, sans-serif; }
html:lang(ar) main :is(h1,h2,h3,h4) { font-family: inherit; }
html[dir="rtl"] .home-banner-track, html[dir="rtl"] .home-banner-controls { direction: ltr; }
html[dir="rtl"] .home-banner { direction: rtl; }
html[dir="rtl"] :is(.about-texas, .footer-inner, .home-banner-copy) { text-align: start; }

.about-intro-grid, .about-showroom {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: center;
  gap: clamp(22px, 6vw, 84px);
}
.about-intro .about-texas {
  background: #edf4fa;
  color: var(--site-ink);
  border-inline-start: 5px solid #ec8826;
  border-radius: 6px;
  padding: clamp(22px, 3.5vw, 44px);
}
.about-texas h2, .about-showroom h2, .about-production h2 {
  color: var(--site-ink);
  margin: 0 0 12px;
  font-size: clamp(28px, 3.7vw, 48px);
  line-height: 1.12;
}
.about-intro .about-texas p { color: #304e67; margin: 0 0 15px; }
.about-texas .underlink { color: #154d89; }
.about-showroom { padding-bottom: 0; }
.about-showroom figure, .about-gallery figure { margin: 0; }
.about-showroom img, .about-gallery img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
  object-fit: cover;
}
.about-showroom img { aspect-ratio: 4 / 3; }
.about-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: clamp(14px,2.5vw,30px);
}
.about-gallery img { aspect-ratio: 4 / 3; }
.about-gallery figcaption { margin-block: 10px 0; color: var(--site-ink); font-weight: 700; }
.landing-products .showcase-card-text {
  display: flex;
  align-items: center;
  min-height: 66px;
  background: var(--site-pale);
}
.landing-products .showcase-card-text h4 { width: 100%; }
.category-hero-inner.category-hero-text { grid-template-columns: minmax(0, 760px); }
.oem-tabs:not([hidden]) ~ .oem-panel-text.is-active, .oem-panel-text { grid-template-columns: 1fr; }
.kit-card-caption { flex-direction: column; align-items: start; }
.kit-card-caption .kit-quote { margin-block-start: auto; }
.kit-contents { width: 100%; margin: 0; padding-inline-start: 22px; }
.kit-contents li { font-size: 16px; }
.home-banner--metal .home-banner-visual img { object-fit: cover; }
@media (min-width: 761px) {
  html[dir="rtl"] .home-banner-visual { inset: 0 auto 0 0; }
  html[dir="rtl"] .home-banner-visual::after {
    background: linear-gradient(270deg, var(--banner-bg), transparent 33%);
  }
}
@media (max-width: 760px) {
  .about-intro-grid, .about-showroom { grid-template-columns: 1fr; }
  .about-gallery { grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); }
  .home-banner--metal .home-banner-visual img { object-fit: cover; }
}

.home-banner--sourcing .home-banner-visual img { object-position: center 41%; }
.home-pod-assortment {
  display: grid;
  grid-template-columns: 1.12fr 1fr 1fr;
  grid-template-rows: repeat(2,minmax(0,1fr));
  gap: clamp(4px, .6vw, 9px);
  width: 56%;
  padding: clamp(25px, 4vw, 62px) clamp(22px, 5vw, 80px) 64px clamp(8px, 1.4vw, 22px);
}
.home-pod-assortment::after { content: none; }
.home-pod-assortment > div {
  overflow: hidden;
  min-width: 0;
  min-height: 0;
  border-radius: 5px;
  background: #f0f0ee;
}
.home-pod-bag { grid-column: 1; grid-row: 1 / 3; }
.home-pod-apparel { grid-column: 2 / 4; grid-row: 1; }
.home-pod-cap { grid-column: 2; grid-row: 2; }
.home-pod-mug { grid-column: 3; grid-row: 2; }
.home-pod-bag img { object-fit: cover; object-position: center; }
.home-pod-apparel img { object-position: 51% 59%; }
.home-pod-cap img { object-fit: contain; padding: 12%; }
.home-pod-mug img { object-position: 57% 58%; }
html[dir="rtl"] .home-pod-assortment { direction: ltr; }
.about-production .about-workshops {
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-bottom: clamp(20px,3vw,38px);
}
.about-workshops img { aspect-ratio: 16 / 9; }
.pod-photo-credits { margin: 0 auto clamp(24px,4vw,48px); width: min(88%,1200px); }
.pod-photo-credits summary { cursor: pointer; color: var(--site-blue); font-weight: 600; }
.pod-photo-credits a { text-decoration: underline; }
@media (max-width: 760px) {
  .home-pod-assortment { width: 100%; padding: 0 5% 5px; }
  .about-production .about-workshops { grid-template-columns: 1fr; }
}

.pod-card { position: relative; }
.pod-customize-link::after { content: ""; position: absolute; inset: 0; }
.pod-card:focus-within { outline: 2px solid var(--site-blue); outline-offset: 2px; }
.pod-builder { padding-block: clamp(22px,4.5vw,60px); }
.pod-builder [hidden] { display: none !important; }
.pod-builder h1 {
  margin: .35em 0 .55em;
  font-size: clamp(35px, 5vw, 64px);
  line-height: 1.08;
}
.pod-builder-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(18px, 4vw, 55px);
  align-items: start;
}
.pod-builder :is(h2, .pod-quote legend) {
  margin: 0 0 10px;
  font-family: inherit;
  font-weight: 700;
  color: var(--site-ink);
  font-size: clamp(23px,2.4vw,31px);
}
.pod-preview-frame {
  position: relative;
  width: min(100%, calc(480px * var(--pod-photo-ratio, 1.3333)));
  aspect-ratio: var(--pod-photo-ratio, 1.3333);
  margin-inline: auto;
  box-shadow: 0 0 0 1px var(--site-line);
  border-radius: 8px;
  overflow: hidden;
  background: #edf3f8;
}
.pod-preview-frame > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.pod-preview-logo {
  position: absolute;
  inset: 45% 42% 36%;
  display: grid;
  place-items: center;
  pointer-events: none;
}
.pod-preview-logo img { width: 100%; height: 100%; object-fit: contain; min-height: 0; }
.pod-preview-caption { margin-top: 14px; }
.pod-builder-options, .pod-quote {
  min-width: 0;
  background: #fff;
  padding: clamp(15px,2.3vw,29px);
  border: 1px solid var(--site-line);
  border-radius: 8px;
}
.pod-builder p { line-height: 1.45; overflow-wrap: anywhere; }
.pod-builder .pod-spec-note, .pod-preview-caption p { font-size: 15px; color: #425e77; }
.pod-option-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.pod-builder label { display: block; color: var(--site-ink); font-weight: 700; min-width: 0; }
.pod-field-help { font-size: 13px; color: #48637b; font-weight: 400; }
.pod-builder :is(input:not([type=checkbox]), select, textarea) {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  margin-top: 6px;
  padding: 8px 10px;
  border: 1px solid #b9cad9;
  border-radius: 4px;
  background: white;
  color: var(--site-ink);
  font: inherit;
  font-weight: 400;
}
.pod-builder :is(input, select, textarea, button):focus-visible { outline: 2px solid var(--site-blue); outline-offset: 2px; }
.pod-builder textarea { resize: vertical; }
.pod-positions { margin: 15px 0; padding: 0; border: 0; }
.pod-positions legend { color: var(--site-ink); font-weight: 700; padding: 0; }
.pod-positions > div, .pod-builder-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.pod-positions label {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  padding: 5px 8px;
  border: 1px solid #b9cad9;
  border-radius: 5px;
}
.pod-positions label:has(input:checked) { background: #e7f1fb; border-color: #3c6c99; }
.pod-builder-actions { margin-top: 15px; }
.pod-builder .button { cursor: pointer; }
.pod-builder .button:disabled { opacity: .65; cursor: default; }
.pod-builder-status:empty { display: none; }
.pod-quote { margin: 26px 0 0; }
.pod-quote-summary { color: #37536d; margin: 0 0 15px; }
.pod-address { grid-column: 1 / -1; }
.pod-quote button { margin-top: 16px; }
@media(max-width: 760px) {
  .pod-builder-grid { grid-template-columns: 1fr; }
  .pod-builder-preview { max-width: 620px; }
}
@media(max-width: 400px) {
  .pod-option-grid { grid-template-columns: 1fr; }
}


.pod-file-control {
  position: relative;
  display: flex;
  min-height: 44px;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
  padding: 5px 8px;
  border: 1px solid #b9cad9;
  border-radius: 4px;
  background: #fff;
  font-size: 14px;
  font-weight: 400;
}
.pod-file-button {
  flex: none;
  padding: 5px 7px;
  border-radius: 3px;
  background: #e7f1fb;
  color: var(--site-ink);
  font-weight: 700;
}
.pod-file-name { min-width: 0; overflow-wrap: anywhere; }
.pod-builder .pod-file-control input[type="file"] {
  position: absolute;
  inset: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: pointer;
}
.pod-file-control:focus-within { outline: 2px solid var(--site-blue); outline-offset: 2px; }

.home-banner--sourcing .home-banner-visual {
  width: 54%;
  padding: 26px 4% 48px 0;
  mix-blend-mode: multiply;
}
.home-banner--sourcing .home-banner-visual img { object-fit: contain; object-position: center; }
.home-banner--sourcing .home-banner-visual::after { content: none; }
.race-kit-image-link { display: block; width: 100%; height: 100%; }
.home-banner--sourcing .home-banner-copy :is(h1,h2) { font-size: clamp(36px,4.1vw,65px); }
html[dir="rtl"] .home-banner--sourcing .home-banner-visual { padding-inline: 0 4%; }
.homepage-samples { padding-top: 0; }
.homepage-sample-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(12px,2vw,24px); }
.sample-highlight { min-width: 0; overflow: hidden; display: grid; border: 1px solid var(--site-line); border-radius: 6px; color: var(--site-ink); }
.sample-highlight img { width: 100%; height: clamp(155px,24vw,300px); display: block; object-fit: contain; background: #fff; }
.sample-highlight span { background: var(--site-pale); padding: 12px 15px; font-weight: 700; }
.sample-highlight:hover span, .sample-highlight:focus-visible span { color: var(--site-blue); text-decoration: underline; }
.example-image.example-reference { background: white; }
.regional-contact { display: grid; gap: 5px; margin-block: 10px 0; }
.regional-contact p { margin: 0; font-weight: 700; }
.regional-contact a { color: #285984; overflow-wrap: anywhere; }
.regional-contact a:hover, .regional-contact a:focus-visible { text-decoration: underline; }
.footer-inner .regional-contact { font-size: 14px; line-height: 1.4; }
.footer-inner .regional-contact p { color: #173651; }
.footer-inner > div { min-width: 0; }
.contact-regions { display: grid; gap: 8px; margin-top: 16px; }
.pod-fulfillment { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(16px,4vw,48px); align-items: center; }
.pod-fulfillment h2 { margin-top: 0; }
.pod-fulfillment figure { margin: 0; }
.pod-fulfillment img { width: 100%; height: auto; max-height: 345px; object-fit: cover; display: block; border-radius: 6px; }
.pod-fulfillment figcaption { margin-top: 6px; font-size: 14px; }
@media (max-width: 760px) {
  .home-banner--sourcing .home-banner-visual { width: 100%; padding: 6px 4% 24px; }
  .home-banner--sourcing figcaption { inset-inline-end: 5%; }
  .homepage-sample-grid, .pod-fulfillment { grid-template-columns: 1fr; }
}

header > .brand-logo {
  justify-content: center;
  align-self: stretch;
  background: transparent;
}
@media (max-width: 1100px) {
  header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }
  header > .brand-logo { grid-column: 2; }
  header > .menu { grid-column: 3; justify-self: end; }
}

.category-example {
  display: grid;
  grid-template-columns: minmax(0, .65fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(14px, 4vw, 56px);
  padding-block: clamp(20px, 4vw, 55px) clamp(40px, 6vw, 76px);
  scroll-margin-top: 24px;
}
.category-example h2 {
  color: var(--site-ink);
  font-size: clamp(26px, 3vw, 43px);
  margin: 0;
}
.category-example figure {
  width: min(100%, 560px);
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--site-line);
  border-radius: 6px;
}
.category-example .example-image { height: auto; aspect-ratio: 4 / 3; overflow: hidden; }
.category-example .case-photo img {
  inset: 0;
  transform: none;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center 57%;
}
.category-example figcaption {
  padding: 12px 15px;
  color: var(--site-ink);
  font-weight: 700;
}
@media (max-width: 760px) {
  .category-example { grid-template-columns: minmax(0, 1fr); }
}


.contact-card .inquiry-date-field label { margin-bottom: 0; }
.inquiry-date-control {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 6px;
  margin-top: 5px;
}
.contact-card .inquiry-date-control input[name="target_date"] {
  min-width: 0;
  margin: 0;
}
.contact-card .inquiry-native-date,
.inquiry-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  overflow: hidden;
  clip-path: inset(50%);
}
.contact-card .inquiry-native-date { inset-block-end: 0; inset-inline-end: 0; }
.contact-card .inquiry-calendar {
  width: auto;
  margin: 0;
  padding: 0 9px;
  color: var(--site-blue);
  background: var(--site-pale);
  border: 1px solid var(--site-line);
  border-radius: 3px;
  font: inherit;
  cursor: pointer;
}
.contact-card .inquiry-file-control input[type="file"] {
  position: absolute;
  inset: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: pointer;
}
.inquiry-file-control:has(input:disabled) {
  background: #f5f8fb;
}
.inquiry-file-control:has(input:disabled) .pod-file-button {
  color: #536c82;
  background: #e8eef4;
}
.contact-card .inquiry-file-control input[type="file"]:disabled { cursor: default; }

/* EZONSEN site-wide visual styles */
:root {
  --site-ink: #142d48;
  --site-blue: #194b87;
  --site-navy: #102c4d;
  --site-muted: #465c71;
  --site-paper: #ffffff;
  --site-pale: #edf3f8;
  --site-warm: #f4f1ec;
  --site-line: #d7e2ed;
  --site-orange: #f6a04a;
  --site-orange-hover: #ffb365;
  --site-radius: 10px;
  --site-control-radius: 6px;
  --site-section-space: clamp(44px, 6vw, 92px);
  --site-gutter: clamp(18px, 5vw, 78px);
  --site-heading: 'Playfair Display', Georgia, serif;
  --site-body: 'DM Sans', Arial, sans-serif;
  --ink: var(--site-ink);
  --navy: var(--site-navy);
  --muted: var(--site-muted);
  --cream: var(--site-pale);
  --gold: var(--site-orange);
}
body {
  background: var(--site-paper);
  color: var(--site-ink);
  font-family: var(--site-body);
  font-size: 16px;
  line-height: 1.6;
}
.wrap { width: min(1320px, calc(100% - 2 * var(--site-gutter))); }
.section { padding-block: var(--site-section-space); }
main :is(h1,h2) {
  font-family: var(--site-heading);
  font-weight: 600;
  letter-spacing: -.035em;
}
main h2 { font-size: clamp(30px, 3.6vw, 55px); line-height: 1.12; }
main :is(p, li, figcaption) { line-height: 1.55; }
main :is(p, figcaption) { color: var(--site-muted); }
html:lang(ar) body { font-family: system-ui, sans-serif; }
html:lang(ar) main :is(h1,h2,h3,h4) { letter-spacing: 0; }
html:lang(ja) main :is(h1,h2),
html:lang(ko) main :is(h1,h2) { letter-spacing: 0; }

header {
  height: 80px;
  padding-inline: max(var(--site-gutter), calc((100% - 1320px) / 2));
  border-bottom: 1px solid var(--site-line);
  box-shadow: none;
}
header nav { gap: clamp(16px, 1.65vw, 27px); font-size: 15px; }
header nav > a:not(.nav-cta) {
  padding-block: 10px;
  color: var(--site-ink);
  white-space: nowrap;
}
header nav > a[aria-current="page"]:not(.nav-cta) {
  text-decoration-color: var(--site-orange);
  text-decoration-thickness: 2px;
  text-underline-offset: 8px;
}
header nav > a:not(.nav-cta):hover { color: var(--site-blue); }
header .menu {
  min-width: 44px;
  min-height: 44px;
  border-radius: var(--site-control-radius);
}
.site-language select {
  border-color: var(--site-line);
  border-radius: var(--site-control-radius);
  min-height: 44px;
}
.button, .nav-cta {
  min-height: 48px;
  padding: 11px 19px;
  border-radius: var(--site-control-radius);
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  transition: background-color .2s, border-color .2s, color .2s;
}
.button:hover, .nav-cta:hover { transform: none; }
.nav-cta, .gold { background: var(--site-orange); color: var(--site-navy); }
.nav-cta:hover, .gold:hover { background: var(--site-orange-hover); color: var(--site-navy); }
.dark { background: var(--site-blue); color: #fff; }
.dark:hover { background: var(--site-navy); }
.button.outline {
  border-color: #9eb1c5;
  background: var(--site-paper);
  color: var(--site-blue);
}
.button.outline:hover { border-color: var(--site-blue); background: var(--site-pale); }
.underlink {
  color: var(--site-blue);
  border-color: var(--site-orange);
  text-underline-offset: 4px;
  font-size: 15px;
}
.underlink:hover { color: var(--site-navy); border-color: currentColor; }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--site-blue);
  outline-offset: 3px;
}

.page-banner:not(.compact-banner), .category-hero, .callout, .workflow {
  background: var(--site-navy);
  color: #fff;
}
.compact-banner {
  color: var(--site-ink);
  background: linear-gradient(110deg, var(--site-pale), #f8fafc);
  border-bottom: 1px solid var(--site-line);
}
.page-banner .wrap, .page-banner:not(.compact-banner) .wrap, .category-hero-inner {
  padding-block: clamp(40px, 6vw, 86px);
}
.page-banner h1, .category-hero h1, .kit-gallery h1, .pod-builder h1 {
  max-width: 19ch;
  margin-block: 0 16px;
  font-size: clamp(38px, 4.8vw, 72px);
  line-height: 1.07;
}
:is(.page-banner, .category-hero, .kit-gallery-heading) h1::before {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  margin-bottom: clamp(14px, 2vw, 25px);
  background: var(--site-orange);
}
.page-banner p:not(.eyebrow), .category-hero p:not(.eyebrow) {
  max-width: 53ch;
  font-size: clamp(16px, 1.5vw, 20px);
}
.page-banner:not(.compact-banner):not(.about-intro) p:not(.eyebrow),
.about-intro .about-intro-grid > div:first-child > p,
.category-hero p:not(.eyebrow), .category-back, .workflow p, .callout p {
  color: #dce8f4;
}
.compact-banner p:not(.eyebrow) { color: var(--site-muted); }
.category-back { margin-bottom: clamp(18px, 2.3vw, 32px); }
.category-back:hover { color: #fff; }
.category-hero-photo {
  border-radius: var(--site-radius);
  background: var(--site-pale);
  overflow: hidden;
}
.category-hero :is(.button, .category-back):focus-visible,
.callout a:focus-visible,
.home-banner--metal a:focus-visible { outline-color: var(--site-orange); }

.home-banner--sourcing { --banner-bg: var(--site-warm); }
.home-banner--metal { --banner-bg: var(--site-navy); }
.home-banner--pod { --banner-bg: var(--site-pale); }
.home-banner-inner {
  min-height: clamp(510px, 43vw, 690px);
  padding-block: clamp(42px, 6vw, 88px) clamp(82px, 8vw, 120px);
}
.home-banner-copy { width: min(45%, 585px); }
.home-banner-copy :is(h1,h2) {
  max-width: 17ch;
  font-size: clamp(39px, 4.6vw, 74px);
  line-height: 1.055;
  text-wrap: initial;
}
.home-banner-copy p { color: var(--site-muted); max-width: 39ch; }
.home-banner--metal .home-banner-copy p { color: #dce8f4; }
.home-banner--metal .home-banner-visual::after {
  background: linear-gradient(90deg, var(--site-navy), transparent 42%);
}
html[dir="rtl"] .home-banner--metal .home-banner-visual::after {
  background: linear-gradient(270deg, var(--site-navy), transparent 42%);
}
.home-banner-controls { background: var(--site-navy); border-radius: var(--site-control-radius); }
.home-banner-controls button[aria-selected="true"] { background: var(--site-paper); color: var(--site-navy); }
.landing-actions { gap: 10px; }

.landing-benefits {
  background: var(--site-pale);
  border-block: 1px solid var(--site-line);
  padding-block: clamp(34px, 5.2vw, 70px);
}
.landing-benefits .benefits-grid { margin-block: clamp(20px, 3vw, 34px) 0; }
.landing-benefits .benefits-grid article {
  padding: clamp(17px, 2.2vw, 31px);
  border: 1px solid var(--site-line);
  border-top: 3px solid var(--site-orange);
  border-radius: var(--site-radius);
}
.landing-benefits .benefits-grid h3 { font-size: clamp(19px, 1.9vw, 26px); }
.landing-benefits .benefits-grid p { font-size: 16px; }

.landing-section-heading { margin-bottom: clamp(21px, 3.1vw, 39px); }
.home-category-group h3, main .product-directory-group h2 {
  margin-bottom: 14px;
  color: var(--site-ink);
  font: 700 clamp(20px, 1.9vw, 27px)/1.25 var(--site-body);
  letter-spacing: -.015em;
}
.landing-products .showcase-grid, .product-directory, .kit-entry-grid, .kit-card-grid {
  gap: clamp(12px, 1.7vw, 24px);
}
:is(.showcase-card, .directory-card, .kit-entry, .kit-card, .sample-highlight, .pod-card, .article-card, .category-example figure) {
  border: 1px solid var(--site-line);
  border-radius: var(--site-radius);
  overflow: hidden;
  background: var(--site-paper);
}
:is(.showcase-card, .directory-card, .kit-entry, .sample-highlight):is(:hover,:focus-visible),
.pod-card:focus-within {
  border-color: var(--site-blue);
}
.landing-products .showcase-image, .directory-card-photo {
  height: auto;
  aspect-ratio: 4 / 3;
  background: var(--site-pale);
}
.landing-products .showcase-card h4, .directory-card-label {
  min-height: 58px;
  padding: clamp(10px, 1.3vw, 17px);
  color: var(--site-ink);
  font-size: clamp(15px, 1.22vw, 18px);
  line-height: 1.24;
}
.kit-entry, .kit-card-caption, .pod-grid-30 .pod-card { background: var(--site-paper); }
.kit-entry { padding: clamp(15px, 2.2vw, 28px); }
.kit-entry-image { background: var(--site-pale); border-radius: var(--site-control-radius); padding: 10px; }
.kit-entry-copy p { color: var(--site-muted); }
.kit-card-caption { padding: clamp(16px, 2vw, 26px); }
.kit-card-images { background: var(--site-pale); }
.kit-card-caption h2 { font: 700 clamp(20px, 2vw, 28px)/1.23 var(--site-body); letter-spacing: -.02em; }
.sample-highlight span { background: var(--site-paper); border-top: 1px solid var(--site-line); }
:is(.pod-category-nav, .kit-jumps) a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  background: var(--site-pale);
  border: 1px solid var(--site-line);
  border-radius: var(--site-control-radius);
  color: var(--site-blue);
}
:is(.pod-category-nav, .kit-jumps) a:hover { border-color: var(--site-blue); }
.oem-tabs button {
  color: var(--site-blue);
  background: var(--site-pale);
}
.oem-tabs button[aria-selected="true"] {
  color: var(--site-ink);
  background: var(--site-paper);
  box-shadow: inset 0 -3px var(--site-orange);
}
.oem-panel, .category-example .example-image, .pod-preview-frame { background: var(--site-pale); }
.landing-faq-list summary, .pod-card-copy h4 { color: var(--site-ink); }
.landing-faq-list p { color: var(--site-muted); }
.landing-faq-list details[open] summary { color: var(--site-blue); }
.landing-pod { border-block: 1px solid var(--site-line); }

.clean-callout .wrap { padding-block: clamp(34px, 5vw, 70px); }
.clean-callout h2 { color: #fff; font-size: clamp(30px, 3.9vw, 56px); }
.contact-card, .pod-builder-options, .pod-quote, .about-intro .about-texas {
  border-radius: var(--site-radius);
  border-color: var(--site-line);
}
.contact-card, .pod-builder-options, .pod-quote {
  padding: clamp(20px, 3.1vw, 43px);
  box-shadow: 0 10px 32px #142d480c;
  background: var(--site-paper);
}
:is(.contact-card,.pod-builder) :is(input:not([type=checkbox],[type=file],[type=hidden],[type=date]), select, textarea) {
  background: #f8fafc;
  border-color: #bfcfe0;
  border-radius: var(--site-control-radius);
  color: var(--site-ink);
  font-family: inherit;
  font-size: 16px;
}
:is(.contact-card,.pod-builder) :is(input, select, textarea):focus-visible {
  outline: 2px solid var(--site-blue);
  outline-offset: 2px;
}
:is(.contact-card,.pod-builder) label { color: var(--site-ink); font-size: 15px; }
.pod-file-control, .contact-card .inquiry-calendar { border-radius: var(--site-control-radius); }
.about-intro .about-texas { border-inline-start-color: var(--site-orange); background: var(--site-pale); }
.about-intro .about-texas p { color: var(--site-muted); }
.about-showroom { padding-bottom: 0; }
.about-showroom img, .about-gallery img, .pod-fulfillment img { border-radius: var(--site-radius); }
.about-gallery figcaption { color: var(--site-ink); }

footer {
  color: var(--site-ink);
  background: var(--site-pale);
  border-top: 1px solid var(--site-line);
}
.footer-inner { gap: clamp(20px, 3vw, 42px); }
.footer-inner :is(b, .regional-contact p) { color: var(--site-ink); }
.footer-inner > div > a:not(.brand), .footer-inner .regional-contact a { color: var(--site-blue); }
.footer-inner a:hover { text-decoration: underline; }
.footer-inner p, .footer-bottom { color: var(--site-muted); }
.footer-bottom { border-color: var(--site-line); }

@media (max-width: 1100px) {
  header { height: 68px; }
  header nav { top: 100%; padding-inline: var(--site-gutter); }
  header nav > a:not(.nav-cta) { padding-block: 11px; }
}
@media (max-width: 760px) {
  .home-banner-inner { min-height: 0; padding-block: 32px 14px; }
  .home-banner-copy { width: 100%; }
  .home-banner-copy :is(h1,h2) { font-size: clamp(34px, 7.7vw, 54px); }
  .home-banner--metal .home-banner-visual::after,
  html[dir="rtl"] .home-banner--metal .home-banner-visual::after {
    background: linear-gradient(180deg, var(--site-navy), transparent 29%, transparent 73%, var(--site-navy));
  }
  .home-banner-controls button { padding-inline: 8px; }
  .footer-bottom { flex-wrap: wrap; gap: 6px 18px; }
}
@media (max-width: 440px) {
  .button, .nav-cta { min-height: 44px; padding-inline: 13px; font-size: 14px; }
  .contact-card, .pod-builder-options, .pod-quote { padding: 17px; }
}
