/* Data&Fix — an open, bright repair workshop for everyday devices. */
:root {
  --ink:#193b30;
  --navy:#193b30;
  --navy-2:#285341;
  --blue:#c6ef57;
  --blue-light:#d6f591;
  --sky:#eff8df;
  --paper:#fff;
  --muted:#506257;
  --line:#dbe5d8;
  --shadow:0 14px 42px rgba(30,67,45,.07);
  --green:#286143;
  --lime:#c6ef57;
  --soft:#f5f9ef;
}
body{background:#fff;color:var(--ink)}
h1,h2,h3{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:750;letter-spacing:-.045em}
.site-header{background:#fffffff5;border-color:var(--line)}
.nav-links a:not(.button):hover,.nav-links a[aria-current="page"]{color:var(--green)}
.nav-links a[aria-current="page"]:not(.button){text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.nav-links .nav-mobile-only{display:none}
.nav-links{gap:20px}
.nav-links .button{padding:14px 18px}
.button,.button.dark,.hero .button,.mobile-cta{background:var(--lime);color:#193b30;border:1px solid #a6ca43;box-shadow:0 6px 18px #4167120d}
.button:hover,.button.dark:hover,.hero .button:hover{background:#b7e345;color:#193b30;box-shadow:0 8px 22px #41671218}
.button.ghost,.button.outline,.hero .button.ghost{background:#ffffffeb;border:1px solid #718778;color:#193b30;box-shadow:none}
.button.ghost:hover,.button.outline:hover,.hero .button.ghost:hover{background:#eff8df;border-color:#286143;color:#193b30}
.menu-toggle{background:var(--sky);color:var(--ink)}
:focus-visible,.page-hero :focus-visible,.hero :focus-visible{outline-color:#286143}
.hero{background:var(--soft);color:var(--ink)}
.hero:after{background:linear-gradient(90deg,#f5f9ef 0%,#f5f9ef 34%,rgba(245,249,239,.95) 43%,rgba(245,249,239,.55) 53%,rgba(245,249,239,0) 66%)}
.hero-image{background:none!important;filter:none;opacity:1}
.hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:68% center}
.hero-copy{max-width:660px}
.hero h1{font-size:clamp(3.4rem,5.1vw,4.65rem);letter-spacing:-.06em}
.hero h1 span{color:var(--green)}
.hero .eyebrow,.eyebrow{color:var(--green)}
.hero .eyebrow:before,.eyebrow:before{background:#85b82a;box-shadow:none}
.hero-lead{color:#284d3c;max-width:500px}
.hero-service{color:#506257;max-width:465px}
.microproof,.hero-area{color:#385743}
.microproof span:before{color:#286143}
.hero-area a{color:#193b30;text-decoration-color:#7d9776}
.hero-photo-credit{background:#ffffffeb;color:#385743}
.signal-bar{background:#fff;border-color:var(--line)}
.signal-grid>div{border-color:var(--line)}
.signal-grid strong:before{background:#7ba328}
.signal-grid span{color:var(--muted)}
.section.tint{background:var(--soft)}
.kicker,.text-link,.accordion summary:after{color:var(--green)}
.problem-card{border-color:var(--line);border-radius:20px}
.problem-card:hover{border-color:#8da56e;box-shadow:var(--shadow)}
.icon,.problem-card .icon{background:var(--sky);color:var(--green);border-color:#d9e8bd}
.problem-card:last-child{background:#fff;border-color:var(--line)}
.section.dark{background:#eff7e2;color:var(--ink)}
.dark .kicker,.dark .section-head p{color:var(--green)}
.process{background:#ffffffbd;border-color:#cfddbc;border-radius:20px}
.step{border-color:#cfddbc}
.step:before{color:#37672d;background:#e1f4b6;border-radius:10px;display:inline-block;padding:5px 10px}
.step p{color:var(--muted)}
.estimator{border-color:var(--line);box-shadow:var(--shadow)}
.estimator-copy{background:#e7f4cc;color:var(--ink)}
.estimator-copy .kicker,.estimator-copy p{color:#355a3f}
.estimate-result{background:var(--soft);border-color:var(--line)}
.field input,.field select,.field textarea{border-color:#94a591}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#286143}
.field input,.choice input,.acknowledgement input{accent-color:#286143}
.choice:has(input:checked){background:var(--sky);border-color:#286143}
.panel.blue,.panel.navy{background:#eff8df;color:var(--ink);border:1px solid #d7e6c2}
.panel.navy .kicker,.navy .check-list li:before{color:#286143}
.check-list li:before{color:#286143}
.navy .check-list li{border-color:#cdddbc}
.note{background:#f0f7e7;border-left-color:#86af32}
.page-hero{background:#f2f8e9;color:var(--ink);border-bottom:1px solid #e0e9d6}
.page-hero h1 span{color:#286143}
.page-hero p{color:#465f4b}
.page-hero:after{display:none}
.page-hero .eyebrow{color:#286143}
.page-hero .breadcrumbs{color:#506257}
.price-card.featured{background:#eaf5d6;color:var(--ink);border-color:#cbdcaf}
.price-card.featured p,.price-card.featured .kicker{color:#355a3f}
.price-card.featured .check-list li{border-color:#cbdcaf}
.price-card.featured .check-list li:before{color:#286143}
.contact-aside{background:#eff7e2;color:var(--ink);border:1px solid #dbe7c7}
.contact-aside p,.contact-aside .kicker{color:#355a3f}
.contact-aside .check-list li{border-color:#cfdcbe}
.contact-aside .check-list li:before{color:#286143}
.contact-aside .note{background:#fff;border-color:#86af32;color:var(--ink)}
.contact-aside .text-link{color:#286143}
.preview-notice{background:#f0f7e7;border-color:#86af32;color:var(--ink)}
.collection-from strong,.collection-table td,.collection-teaser strong{color:#286143}
.collection-table caption{background:#e4f2c9;color:#193b30;border-bottom:1px solid #d0dfb9}
.collection-table thead{background:#f4f8ed}
.collection-table tbody tr:nth-child(even){background:#fafcf6}
.collection-rates{border-color:var(--line)}
.collection-dropoff,.collection-help{background:#eff7e2;border-color:#d5e4bd}
.collection-teaser{border-color:#86af32}
.collection-help a,.acknowledgement a,.legal-copy a,.privacy-dialog a{color:#286143}
.business-bridge{background:#edf2ea;color:var(--ink);border:1px solid var(--line)}
.business-bridge p,.business-bridge .kicker{color:#506257}
.business-bridge:after{display:none}
.brand-bridge{background:#fff;border-color:var(--line)}
.brand-bridge h3{color:var(--ink)}
.brand-bridge hr{border-color:var(--line)!important}
.brand-bridge .eyebrow{color:#286143}
.cta-band{background:#c6ef57;color:var(--ink)}
.cta-band .button.dark{background:#193b30;border-color:#193b30;color:#fff}
.cta-band .button.dark:hover{background:#285341;color:#fff}
.site-footer{background:#173a2e;color:#fff}
.footer-grid h4{color:#d0f479}
.footer-grid a,.footer-grid p{color:#d4e1d3}
.footer-bottom{color:#c1d1bd;border-color:#49624a}
.privacy-dialog{border-color:var(--line)}
.privacy-dialog::backdrop{background:#193b3080}
.form-status{background:#eff7e2}
.form-status[data-state="error"]{background:#fff1ee;color:#8e281c;border-color:#eab6ae}
.section[id],.content-block[id],.faq-group[id],.legal-copy h2[id]{scroll-margin-top:110px}
.quick-links{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:24px;font-weight:650}
.quick-links a,.contact-email{color:var(--green);text-decoration:underline;text-underline-offset:5px}
.contact-email{display:inline-block;font-size:1.15rem;font-weight:700;overflow-wrap:anywhere}
.contact-method{margin-block:26px;padding-block:22px;border-block:1px solid #cfdcbe}
.contact-method p{margin:8px 0 0}
.form-section-title{font-size:1.2rem;line-height:1.4;margin:30px 0 16px;padding-top:24px;border-top:1px solid var(--line)}
.contact-form>h2{margin-bottom:8px}
.contact-form>p{color:var(--muted)}
.contact-grid>.contact-form{grid-column:2;grid-row:1}
.contact-grid>.contact-aside{grid-column:1;grid-row:1}
@media(max-width:980px){.contact-grid>.contact-form,.contact-grid>.contact-aside{grid-column:auto;grid-row:auto}}
.visit-help{margin:10px 0 0;color:var(--muted);font-size:.94rem}
.form-ready{font-size:.875rem;color:var(--muted)}
.form-status[data-state="success"]{border:1px solid #a5c978}
.faq-index{display:flex;flex-direction:column;gap:4px;margin-top:24px}
.faq-index a{padding:9px 0;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.faq-group+ .faq-group{margin-top:40px}
.faq-group h3{font-size:1.35rem;line-height:1.3;margin:0 0 16px}
.faq-group details:first-of-type{border-top:1px solid var(--line)}
.contact-form [hidden],.collection-help[hidden]{display:none!important}
.assurance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.assurance-grid h3{font-size:1.25rem;line-height:1.3;margin:0 0 10px}
.assurance-grid p{color:var(--muted);margin:0}
.assurance-grid article{border-top:3px solid #b1d468;padding-top:24px}
.email-fallback{font-size:.94rem;margin-top:20px}
.email-fallback a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.workshop-options{font-size:.94rem;padding-top:20px;border-top:1px solid var(--line);color:var(--muted)}
.workshop-options a,.home-pro p a{text-decoration:underline;text-underline-offset:4px;color:var(--green)}
.workshop-steps{padding:32px;background:#fff;border:1px solid var(--line);border-radius:20px}
.workshop-steps h3{font-size:1.4rem;margin:0 0 24px}
.workshop-steps ol{list-style:none;counter-reset:care;margin:0 0 24px;padding:0}
.workshop-steps li{counter-increment:care;position:relative;padding-left:48px;margin-bottom:24px}
.workshop-steps li:before{content:counter(care,decimal-leading-zero);position:absolute;left:0;top:0;color:var(--green);font-weight:750;background:var(--sky);padding:4px 6px;border-radius:8px;font-size:.875rem}
.workshop-steps li:last-child{margin-bottom:0}
.workshop-steps strong{font-size:1rem;line-height:1.5}
.workshop-steps p{margin:6px 0 0;color:var(--muted);font-size:.94rem}
.home-pro-section{padding-top:0}
.home-pro{display:flex;align-items:center;gap:40px;padding:30px 36px;background:var(--soft);border:1px solid var(--line);border-radius:20px}
.home-pro>div{flex:1;max-width:740px}
.home-pro h2{font-size:1.6rem;line-height:1.2;margin:12px 0}
.home-pro p{color:var(--muted);margin:0}
.home-pro>.button{flex-shrink:0}
body[data-page="home"] .section{padding-block:76px}
body[data-page="home"] .home-pro-section{padding-top:0;padding-bottom:12px}
@media(max-width:980px){.home-pro{align-items:flex-start;flex-direction:column;gap:22px}}
@media(max-width:640px){
  body[data-page="home"] .section{padding-block:48px}
  body[data-page="home"] .home-pro-section{padding-top:0;padding-bottom:0}
  .hero{padding-bottom:210px}.hero-image{height:235px}.hero-image img{object-position:center}.hero:after{height:240px}
  .hero-copy{padding-top:30px}.hero h1{margin:18px 0}.hero-lead{margin-bottom:14px}.hero-service{margin-top:0}
  .workshop-steps{padding:25px 20px}.workshop-steps li{padding-left:42px}
  .home-pro{padding:25px 22px}.home-pro>.button{width:100%;white-space:normal}
  .problem-card{padding:22px}.problem-card .icon{margin-bottom:14px}
  .contact-form input,.contact-form textarea,.contact-form select,.estimate-panel select{font-size:1rem;min-height:48px}
  body[data-page="contact"] .mobile-cta{display:none}
  .mobile-cta{transition:opacity .15s}
  body:has(input:focus,textarea:focus,select:focus) .mobile-cta{display:none}
}
@media(max-width:1150px) and (min-width:981px){.nav-links{gap:13px}.nav-links .button{padding:12px}.brand-logo{width:175px}}
@media(max-width:980px){.nav-links .nav-mobile-only{display:block}.nav-links{overflow-y:auto;overscroll-behavior:contain;padding-bottom:32px;gap:2px}.menu-toggle{flex-shrink:0}.nav-links .button{margin-top:12px}.assurance-grid{grid-template-columns:1fr;gap:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.problem-card:hover{transform:none}}
@media(min-width:981px) and (max-width:1150px){.hero-copy{max-width:610px}.hero h1{font-size:4.1rem}.hero:after{background:linear-gradient(90deg,#f5f9ef 0%,#f5f9ef 42%,rgba(245,249,239,.9) 50%,rgba(245,249,239,0) 75%)}}
@media(max-width:980px){.hero:after{background:linear-gradient(90deg,#f5f9ef 0%,#f5f9ef 37%,rgba(245,249,239,.94) 52%,rgba(245,249,239,.3) 100%)}.hero-copy{max-width:600px}.hero h1{font-size:clamp(3.6rem,7vw,4.5rem)}.process .step{border-color:#cfddbc}.nav-links{background:#fff}}
@media(max-width:640px){.hero:after{background:linear-gradient(180deg,#f5f9ef 0%,rgba(245,249,239,0) 48%)}.hero h1{font-size:clamp(2.7rem,10.9vw,4.2rem)}.hero .button.ghost{background:#fff}.hero-lead{color:#284d3c}.hero-service{color:#506257}.process .step{border-bottom-color:#cfddbc!important}.mobile-cta{box-shadow:0 7px 25px #193b3026}}
