
:root{--bg:#070707;--panel:#0d0d0d;--panel2:#121212;--paper:#f3f0ea;--ink:#f3f0ea;--text:#aaa69f;--line:#292929;--red:#9b1d23;--blue:#263b63;--max:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.forge-strip{height:3px;font-size:0;background:linear-gradient(90deg,#9b1d23 0 33%,#eee 33% 66%,#263b63 66%)}.forge-strip span{display:none}
.forge-header{min-height:142px;background:#080808;display:flex;align-items:center;gap:32px;padding:18px max(24px,calc((100vw - var(--max))/2));border-bottom:1px solid #202020;position:sticky;top:0;z-index:20}
.forge-brand{width:355px;min-width:300px}.forge-brand img{width:100%;height:105px;object-fit:contain}
.forge-nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:19px;flex-wrap:wrap}.forge-nav>a{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d2cec7;padding:10px 0;border-bottom:1px solid transparent}.forge-nav>a:hover{border-color:#777;color:#fff}.forge-nav .forge-quote{border:1px solid #5d5d5d;padding:11px 14px}.menu-toggle{display:none;background:transparent;border:1px solid #666;color:#fff;padding:10px 15px;letter-spacing:.12em}
.pagehero{background:#0a0a0a;border-bottom:1px solid #242424;min-height:350px;padding:70px 0;display:flex;align-items:center}.pagehero .wrap{width:min(var(--max),calc(100% - 48px))}
.crumbs,.eyebrow,.kicker,.overline{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#8d8982}.pagehero h1,.section h1,.section h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}.pagehero h1{font-size:clamp(44px,6vw,72px);line-height:1.02;margin:12px 0 18px;max-width:900px}.pagehero p{max-width:760px;color:#aaa69f;font-size:17px}
.section{padding:72px 0}.section>.wrap{width:min(var(--max),calc(100% - 48px))}.section.light{background:var(--paper);color:#171717}.section.steel{background:#0d0d0d}.section h2{font-size:clamp(34px,4.2vw,50px);margin:0 0 22px}.lead{font-size:18px;color:#5f5b56}.section.steel .lead{color:#aaa69f}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:none;border:0}.card{background:#fff;color:#171717;border:1px solid #d8d4cd;padding:27px}.card h3{font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:400;margin:0 0 10px}.card p{color:#69645e}.card a{font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #777;padding-bottom:5px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.split img,.page-photo{box-shadow:none;border:1px solid #292929;background:#050505;object-fit:contain}
.notice,.callout-dark{padding:20px 22px;border-left:3px solid var(--red);background:#111;color:#ddd}.section.light .notice{background:#fff;color:#333}
.buttons{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-block;border:1px solid #666;background:transparent;color:inherit;padding:13px 18px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.btn.red{background:var(--red);border-color:var(--red);color:#fff}
.price-nav{display:flex;gap:6px;flex-wrap:wrap;margin:24px 0 35px}.price-nav a{border:1px solid #bbb;background:#fff;color:#222;padding:10px 12px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.price-group{margin:42px 0}.price-group h2{font-size:30px;border-bottom:1px solid #bbb;padding-bottom:12px}.price-table{width:100%;border-collapse:collapse;background:#fff;color:#222}.price-table th{background:#111;color:#fff;text-align:left;padding:14px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.price-table td{padding:12px 14px;border-bottom:1px solid #ddd}.price-table tr:nth-child(even) td{background:#f7f5f0}.price-table td:nth-child(2),.price-table td:nth-child(3){font-weight:bold}.price-table td:nth-child(3){color:var(--red)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:none}.faq details,.faq{background:#fff;color:#222;border:1px solid #ddd}.faq summary{padding:19px 48px 19px 20px;cursor:pointer;font-weight:bold;position:relative}.faq summary:after{content:'+';position:absolute;right:18px;color:var(--red)}.faq details[open] summary:after{content:'–'}.faq details p{padding:0 20px 20px;color:#666}
.gallery,.mega-gallery,.home-wall,.refined-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery img,.mega-gallery img,.home-wall img,.refined-gallery img{width:100%;aspect-ratio:4/3;height:auto;object-fit:contain;background:#050505;border:1px solid #222;padding:8px}
.pattern-showcase,.pattern-hero{background:#101010;color:#fff}.pattern-note{padding:18px;background:#141414;color:#ddd}.project-tags{display:flex;gap:6px;flex-wrap:wrap}.project-tags span{border:1px solid #444;padding:8px 11px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.statbar{display:grid;grid-template-columns:repeat(4,1fr);background:#111}.stat{padding:22px;text-align:center;border-right:1px solid #292929}.stat b{font-family:Georgia,serif;font-size:28px;font-weight:400}.feature-panels{display:grid;grid-template-columns:1fr 1fr}.feature-panel{min-height:430px;padding:45px;border:1px solid #222}.feature-panel img{display:none}.feature-copy{position:static;background:none;padding:0}.feature-copy h2{font-size:44px}
.quote-band{padding:70px 0;text-align:center;background:#101010}.quote-band blockquote{font-family:Georgia,serif;font-size:clamp(30px,4vw,48px);font-weight:400}
.footer{background:#050505;color:#918d86;border-top:1px solid #252525;padding:50px 0 20px}.footergrid{width:min(var(--max),calc(100% - 48px));margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer-brand img{width:280px;height:120px;object-fit:contain}.footer h3{font-size:10px;letter-spacing:.15em;color:#fff}.footer-phone{font-size:21px;color:#fff}.fine{width:min(var(--max),calc(100% - 48px));margin:30px auto 0;padding-top:16px;border-top:1px solid #222;font-size:9px}
.searchbox input{width:100%;padding:15px;border:1px solid #aaa;background:#fff;font-size:16px}
@media(max-width:980px){.forge-header{min-height:110px}.forge-brand{width:310px;min-width:0}.menu-toggle{display:block;margin-left:auto}.forge-nav{display:none;position:absolute;top:110px;left:0;right:0;background:#090909;padding:18px 24px;flex-direction:column;align-items:stretch}.forge-nav.open{display:flex}.grid{grid-template-columns:1fr 1fr}.gallery,.mega-gallery,.home-wall,.refined-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.wrap,.section>.wrap,.pagehero .wrap,.footergrid,.fine{width:calc(100% - 28px)}.forge-header{padding:12px 14px}.forge-brand{width:250px}.forge-brand img{height:82px}.grid,.split,.faq-grid,.feature-panels,.footergrid{grid-template-columns:1fr}.gallery,.mega-gallery,.home-wall,.refined-gallery{grid-template-columns:1fr}.pagehero{min-height:300px;padding:50px 0}.section{padding:55px 0}.statbar{grid-template-columns:1fr 1fr}}

.home-hero{padding:72px 0 55px;border-bottom:1px solid #222}.home-hero .wrap{width:min(var(--max),calc(100% - 48px))}.home-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6vw,78px);font-weight:400;line-height:1;letter-spacing:-.045em;max-width:850px;margin:12px 0 22px}.home-hero p{max-width:670px;color:#aaa69f;font-size:17px}.home-actions{display:flex;gap:24px;margin-top:28px}.home-actions a{font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #777;padding-bottom:5px}
.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.work-card{border:1px solid #252525;background:#0c0c0c;padding:9px}.work-photo{aspect-ratio:4/3;background:#040404;display:flex;align-items:center;justify-content:center;overflow:hidden}.work-photo img{width:100%;height:100%;object-fit:contain}.work-meta{display:flex;justify-content:space-between;padding:12px 3px 3px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#777}.work-meta b{color:#ddd;font-weight:500}
.home-services{background:#f3f0ea;color:#171717}.home-services-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ccc;border:1px solid #ccc}.home-service{background:#f3f0ea;padding:45px}.home-service h2{font-family:Georgia,serif;font-size:40px;font-weight:400;margin:8px 0 14px}.home-service p{color:#666;max-width:430px}.home-service a{font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #777;padding-bottom:5px}
.home-pricing{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.home-pricing h2{font-family:Georgia,serif;font-size:44px;font-weight:400;margin:8px 0 18px}.home-pricing p{color:#aaa69f}.price-sample{border-top:1px solid #444}.price-sample div{display:grid;grid-template-columns:1fr auto auto;gap:18px;padding:14px 0;border-bottom:1px solid #292929;font-size:12px}.price-sample strong{font-weight:500}.price-sample span:last-child{color:#ddd}
@media(max-width:800px){.work-grid{grid-template-columns:1fr 1fr}.home-services-grid,.home-pricing{grid-template-columns:1fr}}@media(max-width:560px){.work-grid{grid-template-columns:1fr}.home-hero .wrap{width:calc(100% - 28px)}}


/* V19 — ALL BLACK / RED WHITE BLUE REFINED */
:root{--bg:#050505;--panel:#0a0a0a;--panel2:#101010;--paper:#080808;--ink:#f7f7f5;--text:#c9c7c2;--line:#343434;--red:#b42028;--blue:#244a83;--white:#f5f5f2;--max:1120px}
body{font-size:17px;background:#050505;color:var(--white)}
.forge-strip{height:5px;background:linear-gradient(90deg,var(--red) 0 33.333%,var(--white) 33.333% 66.666%,var(--blue) 66.666%)}
.forge-header{background:#050505;border-bottom:1px solid #333;box-shadow:0 10px 30px rgba(0,0,0,.28)}
.forge-nav>a{font-size:12px;font-weight:700;letter-spacing:.11em;color:#eee}
.forge-nav .forge-quote{border:1px solid var(--red);box-shadow:inset 4px 0 0 var(--red)}
.pagehero,.home-hero{background:
linear-gradient(90deg,rgba(180,32,40,.10),transparent 24%,transparent 76%,rgba(36,74,131,.11)),
#070707;border-bottom:1px solid #333;position:relative}
.pagehero:after,.home-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:linear-gradient(90deg,var(--red) 0 33.333%,var(--white) 33.333% 66.666%,var(--blue) 66.666%)}
.pagehero p,.home-hero p{font-size:19px;color:#d0cdc7;line-height:1.72}
.eyebrow,.kicker,.overline,.crumbs{font-size:12px;font-weight:700;color:#aaa;letter-spacing:.19em}
.section,.section.light,.section.steel,.home-services{background:#070707;color:#f4f4f1;position:relative;border:0}
.section:nth-of-type(even){background:#0b0b0b}
.section+.section:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(var(--max),calc(100% - 48px));height:1px;background:linear-gradient(90deg,var(--red),#555 28%,#555 72%,var(--blue))}
.section h2{font-size:clamp(40px,4.6vw,56px);color:#fff}
.lead,.section.light .lead,.section.steel .lead{font-size:19px;color:#cbc7c0}
.card,.home-service{background:#0c0c0c;color:#f5f5f2;border:1px solid #353535;position:relative}
.card:before,.home-service:before{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:4px;background:linear-gradient(var(--red) 0 33%,var(--white) 33% 66%,var(--blue) 66%)}
.card h3,.home-service h2{color:#fff;font-size:28px}
.card p,.home-service p{color:#c2beb8;font-size:16px}
.card a,.home-service a{color:#fff;border-bottom-color:#777;font-size:11px}
.home-services-grid{background:#303030;border-color:#303030}
.work-card{border:1px solid #363636;background:#090909}.work-meta{font-size:11px;color:#999}.work-meta b{color:#fff}
.notice,.callout-dark{background:#0d0d0d;color:#ddd;border:1px solid #333;border-left:5px solid var(--red);box-shadow:inset -5px 0 0 var(--blue)}
.section.light .notice{background:#0d0d0d;color:#ddd}
.price-nav a{background:#0c0c0c;color:#fff;border:1px solid #444;font-size:11px}.price-nav a:hover{border-color:#aaa}
.price-table{background:#090909;color:#eee;border:1px solid #333}.price-table th{background:#111;color:#fff;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--red),var(--white),var(--blue)) 1}.price-table td{border-bottom:1px solid #292929}.price-table tr:nth-child(even) td{background:#0d0d0d}.price-table td:nth-child(3){color:#fff}
.price-group h2{border-bottom:1px solid #444}
.faq details,.faq{background:#0b0b0b;color:#eee;border:1px solid #333}.faq details p{color:#c4c0ba}.faq summary{font-size:17px}.faq summary:after{color:var(--red)}
.home-pricing p{font-size:17px;color:#c7c3bc}.price-sample{border-top:1px solid #444}.price-sample div{font-size:14px;border-bottom:1px solid #303030}
.btn{font-size:12px;font-weight:700;border-color:#666;padding:15px 20px}.btn.red{background:var(--red)}
.pattern-showcase,.pattern-hero,.pattern-note{background:#090909;color:#eee}
.quote-band{background:#090909;border-top:1px solid #333;border-bottom:1px solid #333}
.footer{background:#030303;border-top:4px solid transparent;border-image:linear-gradient(90deg,var(--red),var(--white),var(--blue)) 1;color:#aaa}
.footer h3{font-size:12px}.footer p{font-size:15px}.footer-phone{font-size:24px}
.statbar{background:#090909;border-top:1px solid #333;border-bottom:1px solid #333}.stat{border-right:1px solid #333}
.feature-panel{background:#090909;border:1px solid #333}
.searchbox input{background:#0b0b0b;color:#fff;border:1px solid #555}
@media(max-width:650px){body{font-size:16px}.pagehero p,.home-hero p,.lead,.section.light .lead,.section.steel .lead{font-size:17px}.section+.section:before{width:calc(100% - 28px)}}


/* V20 PROFESSIONAL USA / CARBON FIBER */
:root{--red:#c2232d;--blue:#2d5f9f;--white:#f7f7f4;--carbon1:#090909;--carbon2:#0d0d0d}
body{
  background-color:#050505;
  background-image:
    linear-gradient(27deg,#111 5px,transparent 5px),
    linear-gradient(207deg,#111 5px,transparent 5px),
    linear-gradient(27deg,#151515 5px,transparent 5px),
    linear-gradient(207deg,#151515 5px,transparent 5px),
    linear-gradient(90deg,#0d0d0d 10px,transparent 10px);
  background-size:20px 20px;
  background-position:0 0,10px 10px,10px 0,0 10px,0 0;
}
.forge-header{min-height:172px;background:rgba(4,4,4,.96)}
.forge-brand{width:465px;min-width:390px}
.forge-brand img{height:135px}
.forge-nav{max-width:620px}
.forge-nav>a{font-size:12px}
.home-hero,.pagehero,.section,.section.light,.section.steel,.home-services{
 background-color:rgba(7,7,7,.96);
 background-image:linear-gradient(135deg,rgba(255,255,255,.025) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.025) 50%,rgba(255,255,255,.025) 75%,transparent 75%);
 background-size:12px 12px;
}
.section:nth-of-type(even){background-color:rgba(11,11,11,.97)}
.section+.section:before{height:4px;background:linear-gradient(90deg,var(--red) 0 30%,#ddd 30% 34%,#555 34% 66%,#ddd 66% 70%,var(--blue) 70%)}
.pagehero:after,.home-hero:after{height:5px;background:linear-gradient(90deg,var(--red) 0 30%,var(--white) 30% 34%,#555 34% 66%,var(--white) 66% 70%,var(--blue) 70%)}
.card,.home-service,.work-card,.faq details,.faq,.feature-panel,.notice,.callout-dark{
 box-shadow:0 14px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.035)
}
.work-photo,.gallery img,.mega-gallery img,.home-wall img,.refined-gallery img{
 border:1px solid #444;
 box-shadow:0 12px 26px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.02);
 border-radius:3px
}
.work-card:nth-child(3n+1){border-top:3px solid var(--red)}
.work-card:nth-child(3n+2){border-top:3px solid #ddd}
.work-card:nth-child(3n){border-top:3px solid var(--blue)}
/* Pricing: visually separate the two finishing systems */
.price-table th:nth-child(2){background:#7f171d;color:#fff}
.price-table th:nth-child(3){background:#183e70;color:#fff}
.price-table td:nth-child(2){background:rgba(194,35,45,.14)!important;color:#ffb5b9;font-size:16px;font-weight:800;border-left:2px solid rgba(194,35,45,.65)}
.price-table td:nth-child(3){background:rgba(45,95,159,.16)!important;color:#b9d8ff;font-size:16px;font-weight:800;border-left:2px solid rgba(45,95,159,.7)}
.price-table th:first-child{background:#151515}
.price-table tr:hover td:first-child{background:#141414}
.price-table tr:hover td:nth-child(2){background:rgba(194,35,45,.24)!important}
.price-table tr:hover td:nth-child(3){background:rgba(45,95,159,.26)!important}
.price-key{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 24px}
.price-key span{padding:11px 16px;border:1px solid #444;font-weight:800;letter-spacing:.06em}
.price-key .cerakote-key{background:rgba(194,35,45,.2);border-color:var(--red);color:#ffc5c8}
.price-key .hydro-key{background:rgba(45,95,159,.22);border-color:var(--blue);color:#c6dfff}
/* FAQ: no visible + signs; use refined chevrons */
.faq summary:after{content:"›"!important;color:#ddd!important;font-size:27px;line-height:1;transform:rotate(90deg);transition:.2s}
.faq details[open] summary:after{content:"›"!important;transform:rotate(-90deg)}
.faq summary{font-size:18px;padding:20px 54px 20px 22px}
.faq details p{font-size:16px;line-height:1.75}
/* stronger American-detail separators without turning the site into flag clip-art */
.usa-rule{height:4px;background:linear-gradient(90deg,var(--red) 0 32%,var(--white) 32% 35%,#444 35% 65%,var(--white) 65% 68%,var(--blue) 68%);margin:28px 0}
h1,h2,h3{ text-wrap:balance }
.pagehero h1,.home-hero h1{ text-shadow:0 3px 20px rgba(0,0,0,.9)}
@media(max-width:980px){.forge-header{min-height:130px}.forge-brand{width:380px;min-width:0}.forge-brand img{height:105px}.forge-nav{max-width:none;top:130px}}
@media(max-width:650px){.forge-brand{width:290px}.forge-brand img{height:92px}.forge-header{min-height:116px}.forge-nav{top:116px}}

/* V21 — premium IKKIN build */
:root{--red:#d11f2b;--blue:#3274c8;--ice:#f4f7fb;--gold:#c9a65b;--max:1220px}
body{font-family:"Trebuchet MS",Arial,sans-serif;font-size:18px}
.forge-header{min-height:190px;padding-top:20px;padding-bottom:20px;position:relative}
.forge-brand{width:560px;min-width:480px}.forge-brand img{height:150px;filter:drop-shadow(0 12px 22px rgba(0,0,0,.55))}
.forge-nav{display:flex!important;max-width:none;gap:14px;flex-wrap:wrap;align-content:center}
.forge-nav>a{font-size:12px;padding:11px 4px;white-space:nowrap}
.menu-toggle{display:none!important}
.pagehero h1,.home-hero h1,.section h2{font-family:Georgia,"Times New Roman",serif}
.pagehero h1,.home-hero h1{font-size:clamp(52px,6vw,82px)}
.section h2{font-size:clamp(42px,4.5vw,60px)}
.section p,.card p{font-size:17px}
.work-photo{position:relative;background:
 radial-gradient(circle at 50% 35%,rgba(255,255,255,.09),transparent 42%),
 linear-gradient(145deg,#161616,#020202)}
.work-photo:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 55px rgba(0,0,0,.72);pointer-events:none}
.work-photo img{filter:contrast(1.08) saturate(1.08);transition:.3s ease}
.work-card:hover .work-photo img{transform:scale(1.025);filter:contrast(1.12) saturate(1.15)}
.work-card{border-radius:4px;overflow:hidden}
.work-meta{padding:14px 6px 6px}
.card{border-radius:4px}
.card:hover{border-color:#666;transform:translateY(-2px);transition:.2s}
.usa-rule{height:5px}
.color-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 32px}
.color-toolbar button{appearance:none;background:#101010;color:#eee;border:1px solid #444;padding:12px 15px;font:700 11px Arial;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.color-toolbar button:hover,.color-toolbar button.active{border-color:#fff;box-shadow:0 0 0 1px var(--red),0 0 0 2px var(--blue)}
.series-tabs{display:flex;gap:10px;margin:18px 0}.series-tabs button{flex:1;padding:16px;background:#0c0c0c;color:#fff;border:1px solid #444;font-weight:800;font-size:15px}.series-tabs button.active{border-top:4px solid var(--red);background:#151515}
.color-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}
.color-chip{background:#0b0b0b;border:1px solid #333;padding:10px;min-height:170px;box-shadow:0 12px 24px rgba(0,0,0,.28)}
.color-swatch{height:100px;border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 0 20px rgba(0,0,0,.22)}
.color-chip h3{font-size:15px;margin:10px 0 2px;line-height:1.2}.color-chip p{font-size:12px;color:#aaa;margin:0}
.series-compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}.series-box{background:#0b0b0b;border:1px solid #3a3a3a;padding:30px;position:relative}.series-box:first-child{border-top:5px solid var(--red)}.series-box:last-child{border-top:5px solid var(--blue)}.series-box h2{font-size:40px}.series-box li{margin:9px 0;color:#ccc}
.photo-frame{padding:10px;background:linear-gradient(135deg,#222,#050505);border:1px solid #444;box-shadow:0 20px 40px rgba(0,0,0,.45)}
.photo-frame img{width:100%;height:auto;filter:contrast(1.08) saturate(1.1)}
.form-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-card{padding:30px;background:#0b0b0b;border:1px solid #3a3a3a}.form-card:first-child{border-left:5px solid var(--red)}.form-card:last-child{border-left:5px solid var(--blue)}
@media(max-width:1180px){.forge-header{min-height:160px;flex-direction:column;align-items:center}.forge-brand{width:500px;min-width:0}.forge-brand img{height:135px}.forge-nav{justify-content:center;margin:0 auto}.color-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.forge-brand{width:min(92vw,430px)}.forge-brand img{height:120px}.forge-nav{gap:8px}.forge-nav>a{font-size:10px}.color-grid{grid-template-columns:repeat(2,1fr)}.series-compare,.form-cards{grid-template-columns:1fr}}

/* V22 corrections: bigger logo WITHOUT widening site */
:root{--max:1120px}
.wrap,.footergrid{max-width:1120px}
.forge-header{max-width:none;width:100%;min-height:178px;padding:12px max(24px,calc((100vw - 1120px)/2))}
.forge-brand{width:610px;min-width:520px}
.forge-brand img{width:100%;height:154px;object-fit:contain;object-position:left center}
.forge-nav{font-size:11px;gap:10px;flex:1;justify-content:flex-end}
.forge-nav>a{font-size:11px}
/* color-family controls are actual colors */
.color-toolbar button{min-width:88px;min-height:54px;border:2px solid rgba(255,255,255,.55);text-shadow:0 1px 3px #000;box-shadow:inset 0 0 0 1px rgba(0,0,0,.4)}
.color-toolbar button[data-family="all"]{background:linear-gradient(90deg,#a51e27,#d18422,#c4ad26,#487e4a,#316da9,#70468d);color:#fff}
.color-toolbar button[data-family="black"]{background:#111;color:#fff}
.color-toolbar button[data-family="grey"]{background:#696d70;color:#fff}
.color-toolbar button[data-family="white"]{background:#f1f1ed;color:#111;text-shadow:none}
.color-toolbar button[data-family="red"]{background:#a51f29;color:#fff}
.color-toolbar button[data-family="orange"]{background:#cf641f;color:#fff}
.color-toolbar button[data-family="yellow"]{background:#d6bd2c;color:#111;text-shadow:none}
.color-toolbar button[data-family="green"]{background:#526c4a;color:#fff}
.color-toolbar button[data-family="blue"]{background:#2f659a;color:#fff}
.color-toolbar button[data-family="purple"]{background:#704987;color:#fff}
.color-toolbar button[data-family="pink"]{background:#d47c9a;color:#111;text-shadow:none}
.color-toolbar button[data-family="tan"]{background:#a69372;color:#111;text-shadow:none}
.color-toolbar button[data-family="brown"]{background:#654a3c;color:#fff}
.color-toolbar button[data-family="bronze"]{background:#806044;color:#fff}
.color-toolbar button[data-family="gold"]{background:#aa8a42;color:#111;text-shadow:none}
.color-toolbar button[data-family="metallic"]{background:linear-gradient(135deg,#5b5f61,#c5c7c5,#65696b);color:#111;text-shadow:none}
.color-toolbar button[data-family="clear"]{background:linear-gradient(135deg,#292929,#e7e7e7,#555);color:#111;text-shadow:none}
.color-toolbar button.active{outline:3px solid #fff;outline-offset:2px;transform:translateY(-2px)}
.series-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.series-tabs button{min-width:0}
.series-tabs button[data-series="H"]{border-top-color:#c2232d}
.series-tabs button[data-series="C"]{border-top-color:#3274c8}
.series-tabs button[data-series="E"]{border-top-color:#c9a65b}
.series-tabs button[data-series="F"]{border-top-color:#7e66b3}
.series-tabs button[data-series="V"]{border-top-color:#d16c27}
.series-tabs button[data-series="MC"]{border-top-color:#8aa8b8}
.series-tabs button[data-series="P"]{border-top-color:#5b9b67}
.series-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.series-guide .card{padding:20px}
.series-guide h3{font-size:23px}
@media(max-width:1100px){.forge-brand{width:500px;min-width:420px}.forge-brand img{height:140px}.series-tabs{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.forge-header{padding:10px 16px}.forge-brand{width:min(94vw,460px);min-width:0}.forge-brand img{height:128px}.series-tabs{grid-template-columns:repeat(2,1fr)}.series-guide{grid-template-columns:1fr}.color-toolbar button{min-width:calc(50% - 5px)}}

/* V23 visual showroom */
:root{--max:1120px}
.wrap,.footergrid{max-width:1120px}
.forge-header{min-height:168px}
.forge-brand{width:640px;min-width:540px}.forge-brand img{height:158px}
.forge-nav{gap:8px}.forge-nav>a{font-size:10px;letter-spacing:.08em}
.visual-hero{padding:52px 0 34px;background:radial-gradient(circle at 50% 15%,rgba(50,116,200,.12),transparent 32%),linear-gradient(180deg,#050505,#0a0a0a)}
.visual-hero h1{font:700 clamp(48px,6vw,78px)/.98 Georgia,serif;max-width:900px;margin:8px 0 18px}
.visual-hero p{max-width:690px;font-size:19px;color:#c7c7c7}
.showroom-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}
.showroom-strip a{position:relative;min-height:230px;overflow:hidden;border:1px solid #333;background:#050505}
.showroom-strip img{width:100%;height:100%;object-fit:cover;filter:contrast(1.12) saturate(1.1);transition:.35s}
.showroom-strip a:hover img{transform:scale(1.04)}
.showroom-strip span{position:absolute;left:0;right:0;bottom:0;padding:38px 15px 14px;background:linear-gradient(transparent,rgba(0,0,0,.94));font:800 13px Arial;letter-spacing:.12em;color:#fff}
.visual-section{padding:48px 0;border-top:1px solid #252525}
.visual-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.visual-head h2{font:700 42px Georgia,serif;margin:0}.visual-head p{max-width:520px;margin:0;color:#aaa}
.tile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.tile{background:#090909;border:1px solid #333;overflow:hidden}.tile img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:contrast(1.1) saturate(1.08)}.tile-body{padding:14px}.tile h3{margin:0 0 5px;font-size:17px}.tile p{margin:0;color:#999;font-size:13px}
.film-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.film-card{background:#090909;border:1px solid #343434;overflow:hidden}.film-preview{height:175px;position:relative;overflow:hidden}.film-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.08),transparent);mix-blend-mode:screen}.film-info{padding:14px}.film-info h3{font-size:16px;margin:0 0 4px}.film-info p{font-size:12px;color:#aaa;margin:3px 0}.film-info .supplier{color:#fff;font-weight:700}.film-actions{display:flex;gap:7px;margin-top:10px}.film-actions a{font:700 10px Arial;letter-spacing:.07em;text-transform:uppercase;padding:9px 10px;border:1px solid #555;color:#fff;text-decoration:none}.film-actions a:first-child{border-color:#c2232d}
.pat-america{background:repeating-linear-gradient(0deg,#9d2029 0 18px,#eee 18px 36px),linear-gradient(90deg,#244d82 0 40%,transparent 40%)}
.pat-joker{background:radial-gradient(circle at 25% 30%,#7d4aa5 0 12%,transparent 13%),radial-gradient(circle at 70% 55%,#5e9c4d 0 15%,transparent 16%),repeating-linear-gradient(45deg,#181818 0 16px,#7d1830 16px 30px)}
.pat-sticker{background:repeating-linear-gradient(25deg,#d12d35 0 18px,#e0b42b 18px 34px,#2878aa 34px 52px,#171717 52px 68px)}
.pat-spider{background:repeating-radial-gradient(circle at center,#111 0 8px,#bbb 9px 11px,#111 12px 25px)}
.pat-blueheat{background:radial-gradient(ellipse at 50% 100%,#2c9be0 0 15%,#174477 20%,transparent 42%),repeating-linear-gradient(70deg,#050505 0 15px,#1b334b 15px 27px)}
.pat-walnut{background:repeating-linear-gradient(8deg,#2b160c 0 8px,#6e4021 9px 14px,#3c2111 15px 24px)}
.pat-mangled{background:repeating-linear-gradient(120deg,#111 0 12px,#6d5840 12px 20px,#252a20 20px 31px)}
.pat-map{background:linear-gradient(#cbbf9e,#a99c7b);box-shadow:inset 0 0 0 999px rgba(62,52,39,.08)}
.supplier-note{font-size:12px;color:#888;margin-top:18px}
.quick-visuals{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}.quick-panel{min-height:290px;padding:30px;border:1px solid #333;background:#090909}.quick-panel.colors{background:linear-gradient(135deg,#141414 0 25%,#8e2025 25% 38%,#2d5f9f 38% 51%,#5b654b 51% 64%,#75614d 64% 77%,#eee 77% 88%,#171717 88%)}.quick-panel h2{font:700 38px Georgia,serif}.quick-panel .btn{margin-top:16px}
@media(max-width:900px){.forge-brand{width:520px;min-width:0}.showroom-strip,.film-grid{grid-template-columns:repeat(2,1fr)}.tile-grid{grid-template-columns:repeat(2,1fr)}.quick-visuals{grid-template-columns:1fr}}
@media(max-width:600px){.showroom-strip,.film-grid,.tile-grid{grid-template-columns:1fr}.forge-brand{width:min(95vw,480px)}}

/* V24 — pattern/color showroom + complete contact */
.pattern-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:22px 0}
.pattern-toolbar input{flex:1;min-width:260px;background:#080808;border:1px solid #444;color:#fff;padding:13px 15px;font-size:15px}
.style-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0 34px}
.style-card{position:relative;min-height:180px;border:1px solid #333;overflow:hidden;text-decoration:none;background:#111;cursor:pointer}
.style-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:contrast(1.08) saturate(1.06)}
.style-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(0,0,0,.92))}
.style-card span{position:absolute;z-index:2;left:15px;right:15px;bottom:14px;color:#fff;font:800 13px Arial;letter-spacing:.11em}
.catalog-count{color:#aaa;font-size:13px;margin:-10px 0 18px}
.pattern-results{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pattern-item{background:#090909;border:1px solid #333;overflow:hidden}
.pattern-image{aspect-ratio:1/1;background:#161616;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pattern-image img{width:100%;height:100%;object-fit:cover}
.pattern-meta{padding:13px}.pattern-meta h3{margin:0 0 4px;font-size:15px}.pattern-meta p{margin:3px 0;color:#999;font-size:12px}
.pattern-meta .code{color:#fff;font-weight:800}.pattern-meta .source{color:#b8b8b8}
.pattern-meta .actions{display:flex;gap:6px;margin-top:9px}.pattern-meta .actions a{padding:8px 9px;border:1px solid #555;color:#fff;text-decoration:none;font:700 10px Arial;letter-spacing:.06em}.pattern-meta .actions a:first-child{border-color:#bd2730}
.catalog-note{padding:16px;border-left:3px solid #bd2730;background:#0b0b0b;color:#aaa;font-size:13px;margin:18px 0}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:stretch}.contact-card,.map-card{border:1px solid #333;background:#090909;padding:26px}.contact-card h2{font:700 36px Georgia,serif;margin-top:0}.contact-big{font-size:20px;line-height:1.6}.contact-big a{color:#fff}.hours-box{margin-top:22px;padding:17px;border-left:4px solid #bd2730;background:#111}.map-card{padding:0;overflow:hidden;min-height:460px}.map-card iframe{width:100%;height:100%;min-height:460px;border:0}
.color-search{display:flex;gap:10px;margin:20px 0}.color-search input{flex:1;background:#080808;border:1px solid #444;color:#fff;padding:13px}
@media(max-width:950px){.style-grid{grid-template-columns:repeat(3,1fr)}.pattern-results{grid-template-columns:repeat(3,1fr)}.contact-layout{grid-template-columns:1fr}}
@media(max-width:650px){.style-grid,.pattern-results{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.style-grid,.pattern-results{grid-template-columns:1fr}}

/* V25 navigation + catalog repair */
.forge-header{display:block;text-align:center;padding-top:10px}.forge-brand{display:block;margin:0 auto 8px;width:min(640px,92vw);min-width:0}.forge-brand img{height:auto;max-height:165px}
.forge-nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:7px;border-top:1px solid #292929;padding:10px 18px 12px;margin:0 auto;max-width:1180px}
.forge-nav>a{padding:9px 10px;border:1px solid transparent}.forge-nav>a:hover{border-color:#555;background:#101010}.forge-nav .forge-quote{background:#a91f28;border-color:#c02a34}
.catalog-jump{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.catalog-jump a{padding:22px 16px;background:#0a0a0a;border:1px solid #333;color:#fff;text-decoration:none}.catalog-jump strong{display:block;font:700 22px Georgia,serif;margin-bottom:5px}.catalog-jump small{color:#aaa}
.supplier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.supplier-card{border:1px solid #333;background:#090909;padding:22px}.supplier-card h3{font:700 25px Georgia,serif;margin:0 0 8px}.supplier-card p{color:#aaa}.supplier-card .btn{margin-top:8px}
.film-list{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.film-simple{border:1px solid #333;background:#090909;padding:15px;min-height:135px}.film-simple h3{font-size:15px;margin:0 0 6px}.film-simple p{font-size:12px;color:#aaa;margin:3px 0}.film-simple .price{font-weight:800;color:#fff}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.product-card{border:1px solid #333;background:#090909;padding:20px}.product-card h3{font:700 25px Georgia,serif;margin:0 0 8px}.product-card .series-code{font-weight:800;color:#fff}.product-card p,.product-card li{color:#aaa;font-size:14px}.product-card ul{padding-left:18px}
.color-grid{grid-template-columns:repeat(5,1fr)!important}.color-chip{display:block!important}
.color-chip.is-hidden{display:none!important}
@media(max-width:900px){.catalog-jump,.supplier-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.film-list{grid-template-columns:repeat(3,1fr)}.color-grid{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:600px){.catalog-jump,.supplier-grid,.product-grid,.film-list{grid-template-columns:1fr}.color-grid{grid-template-columns:repeat(2,1fr)!important}}

/* V26 visual catalog */
.series-hero-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.series-visual{border:1px solid #333;background:#090909;overflow:hidden}.series-art{height:270px;position:relative;background:#111;overflow:hidden}.series-art svg{width:100%;height:100%;display:block}.series-copy{padding:22px}.series-copy h2{font:700 34px Georgia,serif;margin:0 0 7px}.series-copy p{color:#aaa}.series-badges{display:flex;gap:7px;flex-wrap:wrap}.series-badges span{border:1px solid #444;padding:6px 8px;font:700 10px Arial;letter-spacing:.06em}
.film-grid-v26{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.film-v26{border:1px solid #333;background:#090909;overflow:hidden}.film-thumb{height:190px;display:flex;align-items:center;justify-content:center;background:#151515;cursor:pointer;position:relative}.film-thumb img{width:100%;height:100%;object-fit:cover}.film-thumb.noimg:after{content:"VIEW SUPPLIER PATTERN";font:800 11px Arial;letter-spacing:.1em;color:#aaa}.film-body{padding:13px}.film-body h3{font-size:15px;margin:0 0 4px}.film-body p{font-size:12px;color:#999;margin:3px 0}.premium-tag,.preferred-tag{display:inline-block;padding:5px 7px;font:800 9px Arial;letter-spacing:.08em}.premium-tag{background:#7b5c1e;color:#fff}.preferred-tag{background:#214f78;color:#fff}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:9999;display:none;align-items:center;justify-content:center;padding:28px}.lightbox.open{display:flex}.lightbox-inner{width:min(1000px,95vw);max-height:92vh;background:#090909;border:1px solid #555;display:grid;grid-template-columns:1.25fr .75fr;overflow:auto}.lightbox-image{min-height:560px;background:#151515;display:flex;align-items:center;justify-content:center}.lightbox-image img{width:100%;height:100%;max-height:75vh;object-fit:contain}.lightbox-info{padding:28px}.lightbox-close{position:absolute;right:25px;top:18px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer}
.series-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:15px}.mini-swatch{min-height:80px;border:1px solid #444;padding:9px;font-size:10px;display:flex;align-items:end}
@media(max-width:900px){.series-hero-grid{grid-template-columns:1fr}.film-grid-v26{grid-template-columns:repeat(3,1fr)}.lightbox-inner{grid-template-columns:1fr}.lightbox-image{min-height:330px}}
@media(max-width:600px){.film-grid-v26{grid-template-columns:repeat(2,1fr)}.series-swatches{grid-template-columns:repeat(3,1fr)}}

/* V107 SITEWIDE FOOTER READABILITY */
.v45-footer{font-size:16px!important;line-height:1.55!important}
.v45-footer h3{font-size:16px!important;line-height:1.25!important;letter-spacing:.08em!important;margin-bottom:12px!important}
.v45-footer a{font-size:15px!important;line-height:1.55!important;padding:2px 0!important}
.v45-footer .fineprint,.v45-footer small{font-size:13px!important;line-height:1.5!important}
@media(max-width:800px){.v45-footer{font-size:15px!important}.v45-footer h3{font-size:15px!important}.v45-footer a{font-size:14px!important}}

/* ==========================================================
   IKKIN DIP IT V116 — MASTER WIDTH / HOMEPAGE COLUMN FIX
   This block intentionally uses higher specificity because
   several pages contain later embedded legacy width rules.
   ========================================================== */
:root{--dip-v116-shell:1120px;--dip-v116-gutter:36px}

/* SITEWIDE FOOTER: the footer itself, not just its contents,
   must stop at the same 1120px edges as the page/header. */
html body footer.v45-footer{
  width:calc(100% - var(--dip-v116-gutter))!important;
  max-width:var(--dip-v116-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  border-left:1px solid #30343a!important;
  border-right:1px solid #30343a!important;
}
html body footer.v45-footer .v45-foot{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:36px 28px 28px!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr))!important;
}
html body footer.v45-footer .v45-copy{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/* HOMEPAGE: the entire page is one actual 1120px column.
   Section backgrounds no longer run full browser width. */
html body main.v109-home{
  width:calc(100% - var(--dip-v116-gutter))!important;
  max-width:var(--dip-v116-shell)!important;
  margin:18px auto 0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
html body main.v109-home>section{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  border-left:1px solid #303740!important;
  border-right:1px solid #303740!important;
}
html body main.v109-home>section:first-child{
  border-top:1px solid #303740!important;
  border-radius:5px 5px 0 0!important;
}
html body main.v109-home>section:last-child{
  border-bottom:1px solid #303740!important;
  border-radius:0 0 5px 5px!important;
}
html body main.v109-home .v109-wrap{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:28px!important;
  padding-right:28px!important;
  box-sizing:border-box!important;
}

/* Preserve real desktop columns on the homepage. */
html body main.v109-home .v109-hero-grid{
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)!important;
}
html body main.v109-home .v109-finish-grid,
html body main.v109-home .v109-compare{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
html body main.v109-home .v109-route-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
html body main.v109-home .v109-custom-grid,
html body main.v109-home .v109-steps{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

@media(max-width:900px){
  html body footer.v45-footer{
    width:calc(100% - 24px)!important;
  }
  html body footer.v45-footer .v45-foot{
    grid-template-columns:1fr!important;
    padding:28px 20px!important;
  }
  html body main.v109-home{
    width:calc(100% - 24px)!important;
  }
  html body main.v109-home .v109-hero-grid{
    grid-template-columns:1fr!important;
  }
  html body main.v109-home .v109-route-grid,
  html body main.v109-home .v109-custom-grid,
  html body main.v109-home .v109-steps{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  html body footer.v45-footer{
    width:calc(100% - 20px)!important;
  }
  html body main.v109-home{
    width:calc(100% - 20px)!important;
  }
  html body main.v109-home .v109-wrap{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  html body main.v109-home .v109-hero-grid,
  html body main.v109-home .v109-finish-grid,
  html body main.v109-home .v109-route-grid,
  html body main.v109-home .v109-custom-grid,
  html body main.v109-home .v109-compare,
  html body main.v109-home .v109-steps{
    grid-template-columns:1fr!important;
  }
}
/* END V116 */


/* ==========================================================
   IKKIN DIP IT V120 — STANDARD SECTION RHYTHM
   25px is the sitewide standard between major page sections
   and between final content and footer.
   ========================================================== */
:root{--dip-section-gap:25px}

/* Footer separation is part of the same rhythm. */
html body footer.v45-footer{
  margin-top:var(--dip-section-gap)!important;
}

/* Newer structured pages. */
html body main.v109-home>section+section,
html body .proc-page>section+section,
html body .prep-page>section+section,
html body main.cc>section+section,
html body main.cera>section+section,
html body main.cat>section+section,
html body main.gg>section+section,
html body main.quote-v51>section+section,
html body main.order-shell>section+section{
  margin-top:var(--dip-section-gap)!important;
}

/* Shared major section wrappers used across the Dip It build. */
html body .v45-story,
html body .v42-wrap,
html body .v45-info-break{
  margin-top:var(--dip-section-gap)!important;
  margin-bottom:var(--dip-section-gap)!important;
}

/* On the homepage/process pages, override the earlier V117/V119
   one-off gap rules without changing width or internal layout. */
html body main.v109-home>section+section,
html body .proc-page>section+section{
  margin-top:var(--dip-section-gap)!important;
}
/* END V120 STANDARD SECTION RHYTHM */


/* V5 native mobile destination anchors */
.dip-native-anchor{display:block;height:0;overflow:hidden}
@media(max-width:900px){html{scroll-behavior:auto!important}.dip-native-anchor{scroll-margin-top:0!important}}
