/* DINOGOODS sourcing interactive — buyer-led visual catalogue */
.source-hero{max-width:var(--max);margin:auto;padding:clamp(72px,8vw,130px) var(--pad) clamp(56px,7vw,96px);display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(46px,7vw,120px);align-items:end;background:#fff}
.source-hero h1{font-size:clamp(48px,6vw,90px);line-height:.97;letter-spacing:-.055em;margin:16px 0 24px;max-width:980px}.source-hero p{font-size:clamp(17px,1.45vw,21px);line-height:1.55;max-width:840px}.source-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}
.source-hero-proof{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#fff}.source-hero-proof div{min-height:138px;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.source-hero-proof div:nth-child(2n){border-right:0}.source-hero-proof div:nth-last-child(-n+2){border-bottom:0}.source-hero-proof b{color:var(--brand);font-size:13px}.source-hero-proof span{font-weight:700;line-height:1.25}
.source-category-nav-wrap{position:sticky;top:var(--header-desktop,86px);z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.source-category-nav{max-width:var(--max);margin:auto;padding:0 var(--pad);display:flex;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.source-category-nav::-webkit-scrollbar{display:none}.source-category-nav a{padding:17px 20px 16px 0;margin-right:24px;font-size:12px;font-weight:800;letter-spacing:.02em;color:var(--muted);border-bottom:2px solid transparent}.source-category-nav a:hover,.source-category-nav a.active{color:var(--brand);border-color:var(--brand)}
.source-intro{max-width:var(--max);margin:auto;padding:clamp(64px,7vw,110px) var(--pad) 44px;display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end}.source-intro h2{font-size:clamp(34px,4.1vw,62px);line-height:1.02;margin-top:14px}.source-intro>p{font-size:18px;line-height:1.58}
.source-categories{max-width:var(--max);margin:auto;padding:0 var(--pad) clamp(80px,9vw,140px)}
.source-block{scroll-margin-top:150px;display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;border-top:1px solid var(--line);background:#fff}.source-block:last-child{border-bottom:1px solid var(--line)}.source-block-reverse .source-gallery{order:2}.source-block-reverse .source-block-copy{order:1;border-left:0;border-right:1px solid var(--line)}
.source-block-copy{padding:clamp(34px,5vw,74px);border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.source-block-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.source-block-top>span{color:var(--brand);font-weight:800}.source-block-copy h2{font-size:clamp(36px,4.25vw,64px);line-height:1;letter-spacing:-.045em;margin:0 0 20px}.source-block-copy>p{font-size:17px;line-height:1.58;max-width:650px}.source-block-copy ul{padding:0;margin:26px 0 30px;list-style:none;border-top:1px solid var(--line)}.source-block-copy li{padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px;line-height:1.4}.source-block-link{display:inline-flex;align-items:center;gap:10px;color:var(--green);font-weight:800;width:max-content}.source-block-link:hover{color:var(--brand)}.source-block-link svg{width:18px}
.source-gallery{min-width:0;position:relative;background:#f3f3f3;display:flex;flex-direction:column;overflow:hidden}.source-gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;height:100%;min-height:590px}.source-gallery-track::-webkit-scrollbar{display:none}.source-gallery figure{position:relative;scroll-snap-align:start;overflow:hidden;margin:0}.source-gallery img{width:100%;height:100%;object-fit:cover;display:block}.source-gallery figcaption{position:absolute;left:18px;bottom:18px;background:#fff;padding:8px 10px;font-size:11px;font-weight:800;letter-spacing:.04em;max-width:calc(100% - 180px)}
.source-gallery-controls{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;background:#fff;border:1px solid var(--line);z-index:2}.source-gallery-controls button{width:48px;height:46px;border:0;background:#fff;color:var(--green);display:grid;place-items:center;cursor:pointer}.source-gallery-controls button:hover{background:var(--brand);color:#fff}.source-gallery-controls svg{width:18px}.source-gallery-controls span{min-width:76px;text-align:center;font-size:11px;font-weight:800;letter-spacing:.08em}.source-swipe-hint{display:none}
.source-process-v6{background:#f3f3f3;padding:clamp(70px,8vw,120px) var(--pad)}.source-process-head{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end}.source-process-head h2{font-size:clamp(36px,4.4vw,66px);margin:14px 0 0}.source-process-head>p{font-size:17px;line-height:1.55}.source-process-grid{max-width:var(--max);margin:48px auto 0;display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.source-process-grid article{min-height:230px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.source-process-grid span{color:var(--brand);font-weight:800}.source-process-grid h3{font-size:32px;margin:auto 0 10px}.source-process-grid p{font-size:14px}
.source-final-v6{max-width:var(--max);margin:auto;padding:clamp(70px,8vw,120px) var(--pad);display:flex;justify-content:space-between;align-items:end;gap:60px;background:#fff}.source-final-v6 h2{font-size:clamp(42px,5vw,76px);margin:14px 0 18px}.source-final-v6 p{max-width:780px;font-size:18px}
@media(max-width:899px){
 .source-hero{grid-template-columns:1fr;padding:54px 22px 46px;gap:34px}.source-hero h1{font-size:clamp(42px,12vw,64px)}.source-hero-proof div{min-height:104px}.source-category-nav-wrap{top:var(--header-mobile,86px)}.source-category-nav{padding:0 22px}.source-category-nav a{padding:14px 0 13px;margin-right:22px;font-size:11px}
 .source-intro{padding:58px 22px 28px;grid-template-columns:1fr;gap:18px}.source-intro h2{font-size:34px}.source-intro>p{font-size:15px}
 .source-categories{padding:0 0 68px}.source-block,.source-block-reverse{display:flex;flex-direction:column;min-height:0;border-top:0;margin-bottom:26px}.source-block-reverse .source-gallery,.source-block-reverse .source-block-copy{order:initial}.source-gallery{order:1}.source-block-copy{order:2;border:0!important;padding:28px 22px 38px}.source-block-copy h2{font-size:34px}.source-block-copy>p{font-size:15px}.source-block-copy ul{margin:22px 0 26px}
 .source-gallery-track{min-height:0;height:auto;aspect-ratio:4/3;scroll-snap-stop:always}.source-gallery-controls{right:14px;bottom:14px}.source-gallery-controls button{width:44px;height:42px}.source-gallery figcaption{left:14px;bottom:14px;max-width:calc(100% - 170px)}.source-swipe-hint{display:block;position:absolute;top:14px;right:14px;background:rgba(255,255,255,.9);padding:7px 9px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
 .source-process-v6{padding:60px 22px}.source-process-head{grid-template-columns:1fr;gap:16px}.source-process-grid{grid-template-columns:1fr 1fr;margin-top:28px}.source-process-grid article{min-height:178px;padding:19px}.source-process-grid h3{font-size:25px}.source-final-v6{padding:60px 22px;display:block}.source-final-v6 .btn{margin-top:26px}
}
@media(max-width:520px){.source-hero-actions{align-items:flex-start;flex-direction:column}.source-gallery-track{aspect-ratio:1/1}.source-block-copy h2{font-size:30px}.source-block-top{margin-bottom:18px}.source-process-grid{grid-template-columns:1fr}.source-category-nav a{font-size:10px}.source-gallery-controls span{min-width:68px}}
