/* Inkrider Tattoos — Franchise page (scoped to .frx so Divi styles stay untouched) */
.frx{
  --ink:#0d0d0d;--bone:#f5f3ef;--line:#e3e0da;--line-dark:#2c2c2c;--muted:#5c5953;--muted-dark:#a29e97;
  --display:"Anton",Impact,"Arial Narrow",sans-serif;--body:"Barlow",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);--dur:220ms;
  font-family:var(--body);font-size:17px;line-height:1.6;color:var(--ink);background:#fff;
}
.frx *,.frx *::before,.frx *::after{box-sizing:border-box}
.frx img{max-width:100%;display:block}
.frx a{color:inherit}
.frx h1,.frx h2,.frx h3{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:.01em;text-transform:uppercase;margin:0;padding:0;color:inherit;text-wrap:balance}
.frx p{margin:0 0 16px;padding:0;text-wrap:pretty}
.frx ul,.frx ol{line-height:inherit}
.frx .wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.frx .eyebrow{font:600 13px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;margin-bottom:16px}
.frx .eyebrow::before{content:"";width:28px;height:2px;background:currentColor}
.frx :focus-visible{outline:2px solid currentColor;outline-offset:3px}
.frx section[id]{scroll-margin-top:110px}

/* buttons — same language as the main site: black / white, square */
.frx .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;font:600 15px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:2px solid var(--ink);background:var(--ink);color:#fff;border-radius:2px;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease)}
.frx .btn:hover{background:#fff;color:var(--ink)}
.frx .btn:active{transform:translateY(1px)}
.frx .btn--light{background:#fff;color:var(--ink);border-color:#fff}
.frx .btn--light:hover{background:transparent;color:#fff}
.frx .btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.frx .btn--ghost:hover{border-color:#fff;background:#fff;color:var(--ink)}
.frx .btn[disabled]{opacity:.6;cursor:wait}

/* in-page sub nav */
.frx .subnav{background:#161616;border-bottom:1px solid var(--line-dark);color:#fff}
.frx .subnav .wrap{display:flex;gap:28px;align-items:center;justify-content:center;flex-wrap:wrap;min-height:52px}
.frx .subnav a{font:500 14px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;opacity:.75}
.frx .subnav a:hover{opacity:1}
@media(max-width:700px){.frx .subnav{display:none}}

/* hero */
.frx .hero{background:var(--ink);color:#fff;padding:150px 0 0;overflow:hidden}
.frx .hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:end}
.frx .hero h1{font-size:clamp(52px,8.4vw,124px);line-height:.92;color:#fff}
.frx .hero h1 span{display:block;color:#fff}
.frx .hero__lede{font-size:19px;color:#d8d5cf;max-width:46ch;margin:24px 0 32px}
.frx .hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:64px}
.frx .hero__media{align-self:stretch;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:440px}
.frx .hero__media figure{margin:0;overflow:hidden;border-radius:2px}
.frx .hero__media figure:first-child{grid-row:span 2}
.frx .hero__media img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.frx .stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark)}
.frx .stat{padding:24px 16px 32px;border-right:1px solid var(--line-dark)}
.frx .stat:last-child{border-right:0}
.frx .stat b{display:block;font:400 clamp(36px,4.4vw,56px)/1 var(--display)}
.frx .stat span{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-dark)}
@media(max-width:900px){
  .frx .hero{padding-top:96px}
  .frx .hero__grid{grid-template-columns:1fr}
  .frx .hero__media{min-height:0;height:280px;order:-1;margin-bottom:8px}
  .frx .hero__ctas{margin-bottom:48px}
}
@media(max-width:980px){
  .frx .hero{padding-top:80px}
  .frx .stats{grid-template-columns:1fr 1fr}
  .frx .stat:nth-child(2){border-right:0}
  .frx .stat:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}
}

/* sections */
.frx .sec{padding:120px 0}
.frx .sec--bone{background:var(--bone)}
.frx .sec--ink{background:var(--ink);color:#fff}
.frx .sec__head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:64px}
.frx .sec__head h2{font-size:clamp(38px,5vw,68px)}
.frx .sec__head p{color:var(--muted);max-width:52ch;margin:0}
.frx .sec--ink .sec__head p{color:var(--muted-dark)}
@media(max-width:820px){.frx .sec{padding:88px 0}.frx .sec__head{grid-template-columns:1fr;gap:16px;margin-bottom:48px}}

/* four revenue streams */
.frx .streams{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.frx .stream{background:#fff;border:1px solid var(--line);border-radius:2px;overflow:hidden;display:flex;flex-direction:column}
.frx .stream img{aspect-ratio:4/3;object-fit:cover;width:100%}
.frx .stream div{padding:24px}
.frx .stream h3{font-size:26px;margin-bottom:8px}
.frx .stream p{font-size:16px;color:var(--muted);margin:0}
@media(max-width:980px){.frx .streams{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.frx .streams{grid-template-columns:1fr}}

/* founder band */
.frx .founder{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.frx .founder figure{margin:0}
.frx .founder figure img{width:100%;aspect-ratio:1;object-fit:contain}
.frx .founder figcaption{margin-top:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:14px;color:var(--muted-dark);text-align:center}
.frx .founder h2{font-size:clamp(34px,4vw,54px);margin-bottom:24px}
.frx .founder p{color:#cfcbc4;max-width:56ch}
.frx .ticks{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 32px}
.frx .ticks li{padding-left:28px;position:relative;font-weight:500}
.frx .ticks li::before{content:"";position:absolute;left:0;top:.75em;width:14px;height:2px;background:#fff}
@media(max-width:820px){.frx .founder{grid-template-columns:1fr;gap:32px}.frx .founder figure{max-width:300px}.frx .ticks{grid-template-columns:1fr}}

/* support — numbered rows */
.frx .support{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--ink)}
.frx .support__item{display:grid;grid-template-columns:64px 1fr;gap:16px;padding:32px 24px 32px 0;border-bottom:1px solid var(--line)}
.frx .support__item:nth-child(odd){border-right:1px solid var(--line)}
.frx .support__item:nth-child(even){padding-left:32px}
.frx .support__item b{font:400 34px/1 var(--display);color:#bdb8b0}
.frx .support__item h3{font-size:24px;margin-bottom:8px}
.frx .support__item p{color:var(--muted);margin:0;font-size:16px}
@media(max-width:820px){.frx .support{grid-template-columns:1fr}.frx .support__item:nth-child(odd){border-right:0}.frx .support__item:nth-child(even){padding-left:0}}

/* formats */
.frx .formats{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.frx .format{border:1px solid var(--line-dark);padding:48px 32px;border-radius:2px;display:flex;flex-direction:column}
.frx .format--main{background:#fff;color:var(--ink);border-color:#fff}
.frx .format small{font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:13px;opacity:.7}
.frx .format h3{font-size:clamp(40px,4.4vw,60px);margin:8px 0 16px}
.frx .format .size{font:400 22px/1 var(--display);letter-spacing:.04em;margin-bottom:24px}
.frx .format ul{list-style:none;padding:0;margin:0 0 32px;display:grid;gap:12px}
.frx .format li{padding-left:24px;position:relative}
.frx .format li::before{content:"+";position:absolute;left:0;font-weight:700}
.frx .format .btn{margin-top:auto;align-self:flex-start}
.frx .format--main .btn{background:var(--ink);color:#fff;border-color:var(--ink)}
.frx .format--main .btn:hover{background:#fff;color:var(--ink)}
.frx .note{margin-top:24px;font-size:15px;color:var(--muted-dark)}
@media(max-width:820px){.frx .formats{grid-template-columns:1fr}.frx .format{padding:32px 24px}}

/* steps */
.frx .steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,1fr);counter-reset:s;border-left:1px solid var(--line)}
.frx .steps li{counter-increment:s;padding:0 16px 8px;border-right:1px solid var(--line)}
.frx .steps li::before{content:"0" counter(s);display:block;font:400 48px/1 var(--display);margin-bottom:16px;color:var(--ink)}
.frx .steps h3{font-size:21px;margin-bottom:8px}
.frx .steps p{font-size:15px;color:var(--muted);margin:0}
@media(max-width:980px){.frx .steps{grid-template-columns:1fr 1fr 1fr;row-gap:48px}}
@media(max-width:560px){.frx .steps{grid-template-columns:1fr;border-left:0}.frx .steps li{border-right:0;border-left:2px solid var(--ink);padding:0 0 0 24px}.frx .steps li::before{font-size:36px}}

/* fit */
.frx .fit{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.frx .fit div{border-top:2px solid var(--ink);padding-top:24px}
.frx .fit h3{font-size:24px;margin-bottom:8px}
.frx .fit p{color:var(--muted);margin:0;font-size:16px}
@media(max-width:820px){.frx .fit{grid-template-columns:1fr}}

/* apply + form */
.frx .apply{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.frx .apply h2{font-size:clamp(42px,5.4vw,76px)}
.frx .apply__side p{color:var(--muted-dark);max-width:44ch;margin-top:24px}
.frx .contact-list{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:16px}
.frx .contact-list small{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-dark)}
.frx .contact-list a{font:400 26px/1.15 var(--display);letter-spacing:.03em;text-decoration:none;word-break:break-word}
.frx .contact-list a:hover{text-decoration:underline}
.frx .form{background:#fff;color:var(--ink);padding:48px;border-radius:2px;position:relative}
.frx .form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.frx .field{display:flex;flex-direction:column;gap:6px}
.frx .field--full{grid-column:1/-1}
.frx .field label{font-weight:600;font-size:14px;letter-spacing:.04em}
.frx .field label i{font-style:normal;color:#b3261e}
.frx .field input,.frx .field select,.frx .field textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--bone);border:1px solid transparent;border-bottom:2px solid #cfcac2;border-radius:2px;padding:12px 14px;min-height:50px;width:100%;margin:0;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}
.frx .field textarea{min-height:110px;resize:vertical}
.frx .field input:hover,.frx .field select:hover,.frx .field textarea:hover{border-bottom-color:#8d8880}
.frx .field input:focus,.frx .field select:focus,.frx .field textarea:focus{outline:none;background:#fff;border-color:var(--ink)}
.frx .field.has-err input,.frx .field.has-err select{border-bottom-color:#b3261e;background:#fdf3f2}
.frx .captcha{display:flex;align-items:center;gap:12px}
.frx .captcha span{font:400 22px/1 var(--display);white-space:nowrap}
.frx .captcha input{max-width:120px}
.frx .form__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:32px}
.frx .form__foot small{color:var(--muted);font-size:14px;max-width:34ch}
.frx .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.frx .alert{padding:16px 24px;border-radius:2px;margin-bottom:24px;font-weight:500}
.frx .alert--err{background:#fdf3f2;color:#8a1c16;border:1px solid #f0c9c5}
.frx .success h3{font-size:44px;margin-bottom:16px}
.frx .success p{color:var(--muted)}
@media(max-width:900px){.frx .apply{grid-template-columns:1fr;gap:48px}.frx .form{padding:32px 24px}}
@media(max-width:560px){.frx .form__grid{grid-template-columns:1fr}.frx .form{padding:24px 16px}}

/* faq */
.frx .faq{max-width:880px;border-top:2px solid var(--ink)}
.frx .faq details{border-bottom:1px solid var(--line)}
.frx .faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:24px 0;font:600 19px/1.35 var(--body)}
.frx .faq summary::-webkit-details-marker{display:none}
.frx .faq summary::after{content:"+";font:400 30px/1 var(--display);transition:transform var(--dur) var(--ease)}
.frx .faq details[open] summary::after{transform:rotate(45deg)}
.frx .faq details p{color:var(--muted);padding:0 0 24px;max-width:70ch;margin:0}

/* scroll reveal */
.frx .rv{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.frx .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.frx .rv{opacity:1;transform:none;transition:none}}

/* single storefront image in the hero (full colour) */
.frx .hero__media--single{display:block;min-height:0;align-self:center;margin-bottom:64px}
.frx .hero__media--single figure{border-radius:4px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.frx .hero__media--single img{filter:none;height:auto;aspect-ratio:auto}
@media(max-width:900px){.frx .hero__media--single{height:auto;margin-bottom:24px}}
@media(min-width:901px){.frx .hero__grid:has(.hero__media--single){grid-template-columns:1fr 1.15fr;align-items:center}}
