/* T3CH — variante "Liquid Glass" (iOS / macOS 27) */
:root{
  --bg1:#e8f1ff; --bg2:#e4f5ff; --bg3:#e3fbf4;
  --ink:#0b1220; --ink2:rgba(11,18,32,.62);
  --glass:rgba(255,255,255,.52); --glass-strong:rgba(255,255,255,.72);
  --edge:rgba(255,255,255,.85); --edge-dark:rgba(11,18,32,.08);
  --shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 20px 50px -18px rgba(30,50,110,.28);
  --blue:#0a84ff; --green:#30d158; --green-deep:#12803a;
  --r-xl:32px; --r-lg:26px; --r-md:18px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Inter,Roboto,system-ui,sans-serif;
}
/* thème : le bouton pose data-theme sur <html> ; sans choix, on suit l'appareil */
:root{color-scheme:light}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg1:#070d1a; --bg2:#0a1424; --bg3:#061a1c;
    --ink:#f5f7fb; --ink2:rgba(245,247,251,.62);
    --glass:rgba(34,40,60,.5); --glass-strong:rgba(40,47,70,.72);
    --edge:rgba(255,255,255,.16); --edge-dark:rgba(255,255,255,.08);
    --shadow:0 1px 0 rgba(255,255,255,.12) inset, 0 24px 60px -20px rgba(0,0,0,.65);
    --green-deep:#30d158;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
    --bg1:#070d1a; --bg2:#0a1424; --bg3:#061a1c;
    --ink:#f5f7fb; --ink2:rgba(245,247,251,.62);
    --glass:rgba(34,40,60,.5); --glass-strong:rgba(40,47,70,.72);
    --edge:rgba(255,255,255,.16); --edge-dark:rgba(255,255,255,.08);
    --shadow:0 1px 0 rgba(255,255,255,.12) inset, 0 24px 60px -20px rgba(0,0,0,.65);
    --green-deep:#30d158;
    color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font); color:var(--ink); line-height:1.5;
  -webkit-font-smoothing:antialiased; min-height:100vh;
  background:var(--bg1); padding-bottom:110px;
}
/* fond fixe : 3 taches de couleur floues */
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden;background:linear-gradient(160deg,var(--bg1),var(--bg2) 55%,var(--bg3))}
.bg i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.75}
.bg i:nth-child(1){width:46vw;height:46vw;left:-8vw;top:-10vw;background:#6aa8ff}
.bg i:nth-child(2){width:40vw;height:40vw;right:-6vw;top:22vh;background:#6fd3f2}
.bg i:nth-child(3){width:38vw;height:38vw;left:24vw;bottom:-16vw;background:#6fe3c8}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .bg i{opacity:.38}}
:root[data-theme="dark"] .bg i{opacity:.38}

a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:12px}

/* verre */
.glass{
  background:var(--glass); border:1px solid var(--edge);
  -webkit-backdrop-filter:blur(26px) saturate(1.8); backdrop-filter:blur(26px) saturate(1.8);
  box-shadow:var(--shadow);
}

/* barre de menu macOS */
.menubar{
  position:sticky; top:0; z-index:20; height:52px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:0 18px; font-size:13px; font-weight:500;
  background:var(--glass); border-bottom:1px solid var(--edge-dark);
  -webkit-backdrop-filter:blur(30px) saturate(1.8); backdrop-filter:blur(30px) saturate(1.8);
}
.menubar .left,.menubar .right{display:flex;align-items:center;gap:18px}
.menubar .logo{display:flex;align-items:center;padding:6px 4px}
.menubar .logo svg{height:28px;width:auto;display:block;fill:currentColor}
.menubar .status{display:flex;align-items:center;gap:7px;color:var(--ink2)}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(48,209,88,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 7px rgba(48,209,88,0)}100%{box-shadow:0 0 0 0 rgba(48,209,88,0)}}
.menubar .m{color:var(--ink2)}
@media (max-width:640px){.menubar .m{display:none}}

/* hero */
.hero{padding:64px 0 28px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}
h1{font-size:clamp(38px,6.4vw,72px);line-height:1.02;letter-spacing:-.035em;font-weight:760}
h1 em{font-style:normal;background:linear-gradient(100deg,#0a6cff,#0fb5d8);-webkit-background-clip:text;background-clip:text;color:transparent}
.sub{margin-top:20px;font-size:clamp(17px,2.2vw,21px);color:var(--ink2);max-width:34ch}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:52px;padding:0 26px;border-radius:999px;font-weight:620;font-size:17px;
  transition:transform .25s cubic-bezier(.3,1.5,.5,1), box-shadow .25s;
}
.btn:active{transform:scale(.96)}
.btn.primary{color:#fff;background:linear-gradient(180deg,#38a0ff,#0a6cff);box-shadow:0 1px 0 rgba(255,255,255,.4) inset,0 12px 26px -8px rgba(10,108,255,.6)}
.btn.primary:hover{transform:translateY(-2px)}
.btn.glass{background:var(--glass);border:1px solid var(--edge);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}

/* widgets */
.widgets{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.widget{border-radius:var(--r-lg);padding:20px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between}
.widget.wide{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;justify-content:flex-start;gap:16px}
.widget small{font-size:13px;color:var(--ink2);font-weight:550}
.widget b{font-size:44px;line-height:1;letter-spacing:-.03em;font-weight:760}
.widget .stars{color:#ff9f0a;letter-spacing:2px;font-size:15px}
.widget.ok b{color:var(--green-deep)}
.wide .ico{width:48px;height:48px;border-radius:14px;flex:none;display:grid;place-items:center;background:linear-gradient(180deg,#5ac8fa,#0a84ff);color:#fff}
.wide .ico svg{width:26px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wide strong{display:block;font-size:17px;letter-spacing:-.01em}
.wide span{font-size:14px;color:var(--ink2)}

/* sections */
section{padding:56px 0 8px}
h2{font-size:clamp(28px,4vw,42px);letter-spacing:-.03em;line-height:1.1;font-weight:740}
.lead{margin-top:10px;color:var(--ink2);font-size:18px;max-width:46ch}

/* icônes d'app */
.apps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 14px;margin-top:34px}
.app{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.app .ic{
  width:min(92px,100%);aspect-ratio:1;border-radius:24%;display:grid;place-items:center;color:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 -10px 18px -10px rgba(0,0,0,.25) inset,0 16px 28px -12px rgba(20,30,70,.45);
  transition:transform .35s cubic-bezier(.3,1.6,.5,1);
}
.app:hover .ic{transform:scale(1.08) translateY(-3px)}
.app .ic svg{width:46%;height:46%;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.app h3{font-size:15px;letter-spacing:-.01em;line-height:1.2;font-weight:640}
.app p{font-size:13px;color:var(--ink2);line-height:1.35;max-width:22ch}
.c1{background:linear-gradient(160deg,#5ac8fa,#0a84ff)}
.c2{background:linear-gradient(160deg,#22d3ee,#0e7490)}
.c3{background:linear-gradient(160deg,#4cd964,#12a24a)}
.c4{background:linear-gradient(160deg,#ff9f0a,#ff6a00)}
.c5{background:linear-gradient(160deg,#ff5a4f,#d62718)}
.c6{background:linear-gradient(160deg,#8e9aaf,#4b5568)}
.c7{background:linear-gradient(160deg,#32ade6,#3a5bf0)}
.c8{background:linear-gradient(160deg,#ffd60a,#ff9500)}
.app a.more{font-size:13px;color:var(--blue);font-weight:600}

/* fenêtre macOS : pourquoi */
.window{border-radius:var(--r-xl);margin-top:30px;overflow:hidden;max-width:720px}
.titlebar{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--edge-dark)}
.titlebar i{width:12px;height:12px;border-radius:50%}
.titlebar i:nth-child(1){background:#ff5f57}.titlebar i:nth-child(2){background:#febc2e}.titlebar i:nth-child(3){background:#28c840}
.titlebar span{margin:0 auto;padding-right:44px;font-size:13px;font-weight:600;color:var(--ink2)}
.rows{list-style:none}
.rows li{display:flex;align-items:center;gap:14px;padding:17px 22px;border-bottom:1px solid var(--edge-dark);font-size:17px}
.rows li:last-child{border:0}
.rows li::before{content:"✓";flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:14px;font-weight:800}

/* zones */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.chip{padding:11px 20px;border-radius:999px;font-weight:600;font-size:16px;background:var(--glass);border:1px solid var(--edge);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
a.chip{background:linear-gradient(180deg,#38a0ff,#0a6cff);color:#fff;border-color:transparent}
.atelier{margin-top:26px;border-radius:var(--r-lg);padding:20px 24px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;max-width:720px}
.badge{padding:6px 12px;border-radius:999px;background:#ff9f0a;color:#fff;font-weight:700;font-size:12px}
.atelier a{color:var(--blue);font-weight:600}

/* CTA */
.final{margin-top:64px;border-radius:var(--r-xl);padding:clamp(34px,6vw,64px) 24px;text-align:center}
.final h2{max-width:20ch;margin:0 auto}
.final .cta{justify-content:center}

footer{padding:34px 0 10px;text-align:center;color:var(--ink2);font-size:14px}
footer a{text-decoration:underline;margin:0 10px}

/* dock flottant */
.dock{
  position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:30;
  display:flex;gap:8px;padding:10px;border-radius:30px;
}
.dock a{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  min-width:68px;height:60px;padding:0 12px;border-radius:22px;font-size:11px;font-weight:600;color:var(--ink2);
  transition:transform .3s cubic-bezier(.3,1.6,.5,1),background .2s;
}
.dock a svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dock a:hover{transform:translateY(-6px) scale(1.1)}
.dock a.on{background:var(--glass-strong);color:var(--blue);box-shadow:0 1px 0 var(--edge) inset}
.dock a.call{background:linear-gradient(180deg,#4cd964,#1fa84a);color:#fff}

@media (max-width:860px){
  .hero{padding-top:36px}
  .hero .wrap{grid-template-columns:1fr}
  .apps{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:520px){
  .apps{grid-template-columns:repeat(2,1fr)}
  .widget b{font-size:38px}
  .dock a{min-width:58px;padding:0 8px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ===== blocs des pages intérieures ===== */
.hero .window{margin:0;max-width:none}
.hero .window .rows li{display:block;padding:15px 22px}
.hero .window .rows li::before{display:none}
.rows .k{display:block;font-size:13px;color:var(--ink2);font-weight:550}
.rows .v{display:block;font-size:19px;font-weight:650;letter-spacing:-.01em}
.accent{background:linear-gradient(100deg,#0a6cff,#0fb5d8);-webkit-background-clip:text;background-clip:text;color:transparent}
.chips.tick{margin-top:34px}
.chips.tick .chip{font-size:13px;padding:7px 14px;color:var(--ink2)}
.section-head{margin-bottom:6px}
.section-sub{margin-top:10px;color:var(--ink2);font-size:18px;max-width:46ch}
.section-head+*{margin-top:28px}

.symptoms{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.symptom{border-radius:20px;padding:18px 20px;font-weight:620}
.symptom .n,.profile .n,.card .n{display:none}

.own-parts{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.copy{border-radius:var(--r-lg);padding:26px 28px}
.copy h3{font-size:18px;letter-spacing:-.015em;margin-top:22px}
.copy h3:first-child{margin-top:0}
.copy p{margin-top:6px;color:var(--ink2);font-size:16px}
.checklist{list-style:none}
.checklist li{display:flex;gap:12px;align-items:center;padding:12px 0;font-size:17px;border-bottom:1px solid var(--edge-dark)}
.checklist li:last-child{border:0}
.checklist li::before{content:"✓";flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:13px;font-weight:800}
.own-parts>.checklist{background:var(--glass);border:1px solid var(--edge);border-radius:var(--r-lg);padding:10px 26px;-webkit-backdrop-filter:blur(26px) saturate(1.8);backdrop-filter:blur(26px) saturate(1.8);box-shadow:var(--shadow)}

.process{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.step{border-radius:var(--r-lg);padding:22px}
.step .n{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(180deg,#38a0ff,#0a6cff);color:#fff;font-weight:700;font-size:14px;margin-bottom:14px}
.step h3{font-size:18px;letter-spacing:-.015em}
.step p{margin-top:6px;color:var(--ink2);font-size:15px}

.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.price-card{border-radius:var(--r-xl);padding:30px}
.price-card .label{font-size:15px;font-weight:620;color:var(--ink2)}
.price-card .amount{font-size:clamp(46px,7vw,64px);font-weight:760;letter-spacing:-.04em;line-height:1.05;margin:6px 0 18px}
.price-card .amount sup{font-size:16px;font-weight:600;color:var(--ink2);margin-left:6px;letter-spacing:0;vertical-align:baseline;position:relative;top:-.9em}
.price-card ul{list-style:none}
.price-card li{display:flex;gap:10px;align-items:center;padding:7px 0;font-size:16px}
.price-card li::before{content:"✓";flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:11px;font-weight:800}
.price-note{margin-top:16px;color:var(--ink2);font-size:14px}

.profiles,.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.profile,.card{border-radius:var(--r-lg);padding:24px}
.profile h3,.card h3{font-size:19px;letter-spacing:-.015em}
.profile p,.card p{margin-top:6px;color:var(--ink2);font-size:15px}
.card-link{display:inline-block;margin-top:14px;color:var(--blue);font-weight:620}

.highlight-box{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.highlight-item{border-radius:var(--r-lg);padding:22px;display:flex;gap:16px;align-items:center}
.highlight-item .badge{background:var(--green)}
.highlight-item h3{font-size:18px;letter-spacing:-.015em}
.highlight-item p{color:var(--ink2);font-size:15px}

.map-embed{margin-top:24px;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--edge);box-shadow:var(--shadow)}
.map-embed iframe{display:block;width:100%;height:380px;border:0}

.zone-grid{display:flex;flex-wrap:wrap;gap:10px}
.zone-tag{padding:11px 20px;border-radius:999px;font-weight:600;font-size:16px;background:var(--glass);border:1px solid var(--edge);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
a.zone-tag{background:linear-gradient(180deg,#38a0ff,#0a6cff);color:#fff;border-color:transparent}
.atelier-box{margin-top:26px;border-radius:var(--r-lg);padding:20px 24px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;max-width:720px}
.atelier-box a{color:var(--blue);font-weight:600}

.cta-final{width:calc(100% - 40px);max-width:1040px;margin:64px auto 0;border-radius:var(--r-xl);padding:clamp(34px,6vw,64px) 24px;text-align:center}
.cta-final h2{max-width:20ch;margin:0 auto}
.hero-cta,.cta-final .hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.cta-final .hero-cta{justify-content:center}

.legal{border-radius:var(--r-xl);padding:clamp(24px,5vw,44px);margin:40px 0 20px}
.legal h1{font-size:clamp(30px,4vw,40px);margin-bottom:10px}
.legal h2{font-size:21px;margin-top:28px;letter-spacing:-.015em}
.legal p,.legal li{margin-top:8px;font-size:16px}
.legal a{color:var(--blue)}

footer .wrap{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center}
footer a{margin:0}

.menubar a.m:hover{color:var(--ink)}

@media (max-width:860px){
  .own-parts{grid-template-columns:1fr!important}
  .hero .window{margin-top:6px}
}

/* bouton clair / sombre */
.themebtn{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  border:1px solid var(--edge);background:var(--glass-strong);color:var(--ink);padding:0;
  transition:transform .3s cubic-bezier(.3,1.6,.5,1);
}
.themebtn:hover{transform:scale(1.12)}
.themebtn:active{transform:scale(.92)}
.themebtn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
:root[data-theme="dark"] .ico-moon{display:none}
:root:not([data-theme="dark"]) .ico-sun{display:none}
@media (max-width:640px){.themebtn{width:34px;height:34px}.menubar .logo svg{height:26px}}

/* ===== page dépannage-informatique-lausanne : fil d'Ariane, FAQ, pied de page ===== */
.crumb{max-width:1080px;margin:0 auto;padding:22px 20px 0;font-size:14px;color:var(--ink2)}
.crumb a{color:var(--blue);font-weight:600}
.faq{max-width:760px;display:grid;gap:12px}
.faq details{border-radius:var(--r-md);padding:4px 22px}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-weight:640;font-size:17px;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--glass-strong);color:var(--blue);font-size:20px;font-weight:500;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.faq details[open] summary::after{content:"–";transform:rotate(180deg)}
.faq p{padding:0 0 18px;color:var(--ink2);font-size:16px}
.foot-col{flex-direction:column;align-items:center;gap:4px}
.foot-col p{margin:0}
.foot-col a{text-decoration:underline}

/* liens utiles en pied de page (maillage interne) */
.footlinks{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;max-width:900px;margin:18px auto 0;padding:0 20px;font-size:14px}
.footlinks a{color:var(--blue);font-weight:600}
.footlinks a:hover{text-decoration:underline}
