/* Fixd iPhone Repair widgets — every colour is a variable set from the widget's Style tab. */
body.fixd-body{background:#000}
.fixd{--fx-bg:#000;--fx-surface:#16161a;--fx-text:#e9e9ed;--fx-soft:#cfd3e5;--fx-muted:#9397ab;--fx-dim:#75798c;--fx-border:#3f424d;--fx-accent:#9184d9;--fx-accent-light:#d2cefd;--fx-accent-tint:#2b2741;--fx-line:color-mix(in srgb,var(--fx-text) 16%,transparent);--fx-radius:8px;
  font-family:"Inter",system-ui,sans-serif;font-size:15px;line-height:1.55;color:var(--fx-text);background:var(--fx-bg);box-sizing:border-box;-webkit-font-smoothing:antialiased}
.fixd *,.fixd *::before,.fixd *::after{box-sizing:border-box}
.fixd img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten}
.fixd button{font:inherit}
.fixd :focus-visible{outline:2px solid var(--fx-accent);outline-offset:2px}
.fixd .fixd-h{font-family:inherit;font-weight:500;letter-spacing:-.015em;line-height:1.12;color:var(--fx-text);margin:0}
.fixd-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fx-accent-light);margin:0 0 12px}
.fixd-eyebrow-muted{color:var(--fx-dim);margin-bottom:10px}
.fixd-body-text{font-size:14px;line-height:1.65;color:var(--fx-muted);text-wrap:pretty;margin:0}

/* buttons — outlined, never filled */
.fixd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:var(--fx-radius);font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s;border:1px solid transparent;background:transparent}
.fixd-btn-primary{border-color:var(--fx-accent);color:var(--fx-accent-light)}
.fixd-btn-primary:hover{background:color-mix(in srgb,var(--fx-accent) 14%,transparent);color:var(--fx-accent-light)}
.fixd-btn-primary:active{background:color-mix(in srgb,var(--fx-accent) 26%,transparent)}
.fixd-btn-secondary{border-color:var(--fx-border);color:var(--fx-text)}
.fixd-btn-secondary:hover{border-color:var(--fx-dim);background:color-mix(in srgb,var(--fx-text) 6%,transparent);color:var(--fx-text)}
.fixd-btn-ghost{color:var(--fx-soft)}
.fixd-btn-ghost:hover{background:color-mix(in srgb,var(--fx-text) 6%,transparent);color:var(--fx-text)}
.fixd-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* hero */
.fixd-hero{min-height:680px;display:grid;grid-template-columns:80px minmax(0,1fr);position:relative;overflow:hidden;background:radial-gradient(120% 90% at 75% 40%,var(--fx-surface) 0%,var(--fx-bg) 60%)}
.fixd-rail{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:30px 0;background:linear-gradient(to bottom,transparent,var(--fx-line) 48px,var(--fx-line) calc(100% - 48px),transparent) right/1px 100% no-repeat}
.fixd-rail-logo{color:var(--fx-accent);font-size:22px;line-height:1;text-decoration:none}
.fixd-rail-logo svg{width:22px;height:22px;fill:currentColor}
.fixd-rail-social{display:flex;flex-direction:column;gap:28px;align-items:center}
.fixd-rail-link{transform:rotate(-90deg);font-size:10px;letter-spacing:.12em;color:var(--fx-dim);text-decoration:none}
.fixd-rail-link:hover{color:var(--fx-text)}
.fixd-hero-main{position:relative;padding:28px clamp(24px,5vw,56px) 36px clamp(24px,5vw,64px);display:flex;flex-direction:column;max-width:1360px;width:100%}
.fixd-hero-nav{display:flex;align-items:center;gap:clamp(16px,3.4vw,44px);flex-wrap:wrap;font-size:13px}
.fixd-nav-item{background:none;border:0;padding:4px 0;cursor:pointer;color:var(--fx-dim);transition:color .2s}
.fixd-nav-item:hover,.fixd-nav-item.is-active{color:var(--fx-text)}
.fixd-hero-tools{margin-left:auto;display:flex;gap:22px}
.fixd-tool{color:var(--fx-soft);display:flex}
.fixd-tool:hover{color:var(--fx-text)}
.fixd-hero-stage{position:relative;flex:1}
.fixd-slide{display:none}
.fixd-slide.is-active{display:block;animation:fixdFade .45s ease}
@keyframes fixdFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.fixd-hero .fixd-numeral{position:absolute;right:-30px;top:56px;font-size:clamp(110px,16vw,190px);line-height:1;color:transparent;-webkit-text-stroke:1px var(--fx-border);letter-spacing:-.02em;pointer-events:none;z-index:5}
.fixd-slide{position:relative}
.fixd-slide-grid{margin-top:64px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:40px;position:relative}
.fixd-slide-copy{position:relative;z-index:6}
.fixd-slide-media{position:relative;z-index:1}
.fixd-slide-copy{flex:1 1 360px;max-width:440px}
.fixd .fixd-hero-title{font-size:52px;margin:0 0 6px}
.fixd .fixd-hero-sub{font-family:inherit;font-weight:400;letter-spacing:0;margin-top:0;font-size:24px;color:var(--fx-soft);margin-bottom:22px;line-height:1.3}
.fixd-slide-copy .fixd-body-text{margin-bottom:28px}
.fixd-from{font-size:12px;color:var(--fx-dim);margin-left:8px}
.fixd-from strong{font-weight:400;font-size:15px;color:var(--fx-text)}
.fixd-slide-media{flex:0 1 380px;height:470px;margin-right:clamp(0px,6vw,80px)}
.fixd-pager{margin-top:auto;padding-top:48px;display:flex;align-items:center;gap:18px;font-size:12px;color:var(--fx-dim)}
.fixd-pager-cur{font-size:14px;color:var(--fx-text)}
.fixd-pager-bar{width:110px;height:1px;background:var(--fx-border);position:relative}
.fixd-pager-bar i{position:absolute;left:0;top:-.5px;height:2px;background:var(--fx-accent);transition:width .3s}
.fixd-pager-num{background:none;border:0;padding:4px;cursor:pointer;color:var(--fx-dim)}
.fixd-pager-num:hover{color:var(--fx-text)}
.fixd-pager-num.is-active{color:var(--fx-accent-light)}
.fixd-next{margin-left:auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--fx-border);background:transparent;color:var(--fx-text);display:flex;align-items:center;justify-content:center;cursor:pointer}
.fixd-next:hover{border-color:var(--fx-accent);background:color-mix(in srgb,var(--fx-accent) 14%,transparent)}

/* quote */
.fixd-quote{padding:88px clamp(24px,5vw,56px) 88px clamp(24px,10vw,144px);background:radial-gradient(90% 80% at 85% 30%,var(--fx-surface) 0%,var(--fx-bg) 65%)}
.fixd-quote-grid{max-width:1216px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:56px;align-items:center}
.fixd-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.fixd-issues{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;max-width:560px}
.fixd-chip{font-size:13px;padding:8px 14px;border-radius:var(--fx-radius);cursor:pointer;background:transparent;color:var(--fx-soft);border:1px solid var(--fx-border);transition:all .15s;text-align:left}
.fixd-chip:hover{border-color:var(--fx-dim);color:var(--fx-text)}
.fixd-chip.is-active{background:var(--fx-accent-tint);color:var(--fx-accent-light);border-color:var(--fx-accent)}
.fixd-issue{padding:12px 14px;display:flex;align-items:center;gap:10px}
.fixd-issue i,.fixd-issue svg{font-size:16px;width:16px;height:16px;fill:currentColor;flex:none}
.fixd-quote-visual{position:relative;height:520px}
.fixd-quote-media{position:absolute;inset:0 0 120px 0}
.fixd-quote-card{position:absolute;left:0;right:0;bottom:0;padding:20px 22px;display:flex;align-items:center;gap:20px;background:var(--fx-surface);border-radius:var(--fx-radius);box-shadow:0 0 0 1px var(--fx-border),0 6px 18px rgba(0,0,0,.55)}
.fixd-quote-info{flex:1;min-width:0}
.fixd-quote-label{font-size:12px;color:var(--fx-muted)}
.fixd-quote-price{font-size:34px;font-weight:500;letter-spacing:-.02em;line-height:1.2}
.fixd-quote-time{font-size:12px;color:var(--fx-accent-light)}

/* services */
.fixd-services{--fx-media-w:460px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--fx-media-w));min-height:620px}
.fixd-services-list{padding:72px clamp(24px,5vw,56px) 56px clamp(24px,10vw,144px);display:flex;flex-direction:column}
.fixd-services-title{font-size:44px;margin:0 0 36px;max-width:520px}
.fixd-rows{display:flex;flex-direction:column}
.fixd-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto 64px;column-gap:16px;align-items:baseline;padding:14px 0;cursor:pointer;color:var(--fx-dim);text-decoration:none;transition:color .2s;background:linear-gradient(to right,transparent,var(--fx-line) 48px,var(--fx-line) calc(100% - 48px),transparent) bottom/100% 1px no-repeat}
.fixd-row:hover,.fixd-row.is-active{color:var(--fx-text)}
.fixd-row-num{font-size:13px;color:var(--fx-dim)}
.fixd-row-title{font-size:26px;letter-spacing:-.01em;line-height:1.25}
.fixd-row-time{font-size:13px;color:var(--fx-muted)}
.fixd-row-price{font-size:15px;text-align:right}
.fixd-services-actions{margin-top:40px}
.fixd-services-media{position:relative;min-height:520px;background:radial-gradient(80% 60% at 50% 45%,var(--fx-surface) 0%,var(--fx-bg) 75%)}
.fixd-services-frames{position:absolute;inset:60px 40px 120px}
.fixd-frame{position:absolute;inset:0;opacity:0;transition:opacity .35s}
.fixd-frame.is-active{opacity:1}
.fixd-services-desc{position:absolute;left:40px;right:40px;bottom:40px;font-size:13px;opacity:0;transition:opacity .3s}
.fixd-services-desc.is-active{opacity:1}

@media (max-width:1024px){
  .fixd-services{grid-template-columns:minmax(0,1fr)}
  .fixd-hero-title{font-size:42px}
}
@media (max-width:640px){
  .fixd-hero{grid-template-columns:minmax(0,1fr)}
  .fixd-rail{display:none}
  .fixd-numeral{display:none}
  .fixd-hero-title{font-size:36px}.fixd-hero-sub{font-size:20px}
  .fixd-services-title{font-size:32px}
  .fixd-row{grid-template-columns:28px minmax(0,1fr) 56px}
  .fixd-row-time{display:none}
  .fixd-row-title{font-size:20px}
  .fixd-quote-card{flex-wrap:wrap}
}
