:root{
    --black:#08090b;
    --black-warm:#111214;
    --cream:#f5f3ef;
    --silver:#c9c2b4;
    --silver-dim:#9c9686;
    --grey:#8b8880;
    --line: rgba(201,194,180,0.16);
    --gold-line: rgba(201,194,180,0.45);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--black);
    color:var(--cream);
    font-family:Arial, Helvetica, sans-serif;
    font-weight:300;
    line-height:1.6;
    overflow-x:hidden;
  }
  h1,h2,h3,.serif{
    font-family:Georgia, 'Times New Roman', serif;
    font-weight:500;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
  button{font-family:inherit;cursor:pointer;}

  /* NAV */
  nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    display:flex;align-items:center;justify-content:space-between;
    padding:20px 40px;
    background:linear-gradient(to bottom, rgba(8,9,11,0.85), rgba(8,9,11,0));
  }
  .nav-logo{display:flex;align-items:center;gap:10px;}
  .nav-logo img{height:36px;width:auto;}
  .nav-links{display:flex;gap:38px;font-size:0.88rem;letter-spacing:0.02em;position:relative;padding-bottom:6px;}
  .nav-links a{color:var(--cream);opacity:0.85;transition:opacity .25s;}
  .nav-links a:hover{opacity:1;}
  .nav-links a.active{opacity:1;}
  .nav-links::after{
    content:"";position:absolute;left:0;bottom:0;width:var(--indicator-width,0px);height:1px;
    background:var(--champagne,var(--silver-dim));transform:translateX(var(--indicator-x,0px));
    transition:transform .38s cubic-bezier(.22,.68,0,1.15),width .25s ease;pointer-events:none;
  }
  .pill-btn{
    display:inline-flex;align-items:center;gap:8px;
    background:var(--cream);
    color:var(--black);
    padding:12px 22px;
    border-radius:999px;
    font-size:0.85rem;
    font-weight:500;
    border:none;
    transition:background .25s, transform .2s;
  }
  .pill-btn:hover{background:#fff;transform:translateY(-1px);}
  .pill-btn.ghost{
    background:transparent;
    color:var(--cream);
    border:1px solid rgba(245,243,239,0.5);
  }
  .pill-btn.ghost:hover{border-color:var(--cream);background:rgba(245,243,239,0.06);}
  .pill-btn svg{width:14px;height:14px;}

  /* HERO */
  .hero{
    position:relative;
    min-height:100svh;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
  }
  .hero-bg{
    position:absolute;inset:0;
    z-index:0;
    overflow:hidden;
  }
  .hero-car{
    position:absolute;inset:0;
    width:100%;height:100%;
    object-fit:cover;
    object-position:center 54%;
    opacity:0.88;
    transform:scale(1.08);
    transform-origin:82% center;
    z-index:0;
  }
  .hero-bg-gradient{
    position:absolute;inset:0;
    background:
      radial-gradient(ellipse 900px 600px at 78% 30%, rgba(201,194,180,0.09), transparent 60%),
      linear-gradient(180deg, #0d0e10 0%, #0a0b0d 45%, #08090b 100%);
    z-index:1;
  }
  .hero-readability{
    position:absolute;inset:0;
    background:linear-gradient(90deg, rgba(8,9,11,0.8) 0%, rgba(8,9,11,0.4) 45%, transparent 75%);
    z-index:2;
  }
  .hero-content{
    position:relative;z-index:3;
    width:100%;
    padding:180px 0 70px;
  }
  .hero-eyebrow-line{
    width:60px;height:1px;background:var(--silver-dim);
    margin:22px 0 26px;
  }
  h1.hero-title{
    font-size:clamp(2.6rem, 6vw, 4.4rem);
    line-height:1.08;
    color:var(--cream);
    max-width:14ch;
  }
  .hero-sub{
    margin-top:22px;
    color:var(--silver-dim);
    font-size:0.92rem;
    letter-spacing:0.06em;
    text-transform:uppercase;
    max-width:34ch;
  }
  .hero-actions{margin-top:36px;}

  /* ADVANTAGES BAR */
  .advantages{
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:var(--black);
    position:relative;z-index:2;
  }
  .adv-grid{
    display:grid;grid-template-columns:repeat(4,1fr);
  }
  .adv-item{
    padding:46px 24px;
    text-align:center;
    border-left:1px solid var(--line);
    display:flex;flex-direction:column;align-items:center;gap:14px;
  }
  .adv-item:first-child{border-left:none;}
  .adv-item svg{width:26px;height:26px;stroke:var(--silver);}
  .adv-item .lab{
    font-size:0.8rem;
    letter-spacing:0.08em;
    color:var(--cream);
    text-transform:uppercase;
    line-height:1.5;
  }

  /* SERVICES */
  section.services{padding:120px 0;}
  .section-head{
    display:grid;grid-template-columns:0.9fr 1.4fr;gap:50px;
    margin-bottom:64px;
    align-items:baseline;
  }
  .section-head .kicker{
    font-size:0.8rem;color:var(--silver-dim);letter-spacing:0.1em;
    display:flex;align-items:center;gap:14px;
  }
  .section-head .kicker::before{content:"";width:30px;height:1px;background:var(--silver-dim);}
  .section-head h2{
    font-size:clamp(1.9rem,3.4vw,2.7rem);
    color:var(--cream);
    line-height:1.15;
  }
  .section-head p{color:var(--grey);font-size:1rem;max-width:46ch;margin-top:14px;}

  .service-list{display:flex;flex-direction:column;}
  .service-row{
    display:grid;grid-template-columns:70px 1fr 1.4fr;gap:36px;
    padding:34px 0;border-bottom:1px solid var(--line);
    align-items:start;
  }
  .service-row:first-child{border-top:1px solid var(--line);}
  .service-row .idx{font-family:Georgia, 'Times New Roman', serif;font-size:1.2rem;color:var(--silver-dim);}
  .service-row h3{font-size:1.5rem;color:var(--cream);font-weight:500;}
  .service-row .desc{color:var(--grey);font-size:0.97rem;max-width:52ch;}

  /* ZONE */
  section.zone{padding-bottom:120px;}
  .zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
  .zone-map{
    aspect-ratio:1/1;
    border:1px solid var(--line);
    position:relative;
    display:flex;align-items:center;justify-content:center;
  }
  .zone-map svg{width:82%;height:82%;}
  .zone-item{
    display:flex;justify-content:space-between;align-items:baseline;
    padding:20px 0;border-bottom:1px solid var(--line);
  }
  .zone-item:first-child{border-top:1px solid var(--line);}
  .zone-item .city{font-family:Georgia, 'Times New Roman', serif;font-size:1.35rem;color:var(--cream);}
  .zone-item .dist{font-size:0.85rem;color:var(--grey);}

  /* CTA BAND */
  .cta-band{
    position:relative;
    padding:100px 0;
    overflow:hidden;
    border-top:1px solid var(--line);
  }
  .cta-bg{position:absolute;inset:0;z-index:0;}
  .cta-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,11,0.94) 0%,rgba(8,9,11,0.72) 35%,rgba(8,9,11,0.24) 100%),linear-gradient(0deg,rgba(8,9,11,0.64),transparent 55%);}
  .cta-banner-image{width:100%;height:100%;object-fit:cover;object-position:60% 48%;opacity:0.86;}
  
  .cta-inner{
    position:relative;z-index:2;
    display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:30px;
  }
  .cta-inner h2{
    font-size:clamp(2rem,4vw,3rem);
    color:var(--cream);
    line-height:1.15;
  }
  .cta-inner .cta-sub{
    color:var(--silver-dim);
    font-size:0.85rem;
    letter-spacing:0.06em;
    text-transform:uppercase;
    margin-top:18px;
  }
  .cta-line{width:50px;height:1px;background:var(--silver-dim);margin:20px 0;}

  /* CONTACT */
  /* ESTIMATION */
  section#estimation{padding:120px 0;}
  .estimate-grid{
    display:grid;grid-template-columns:0.85fr 1.15fr;gap:50px;
    align-items:start;
  }
  .estimate-form{display:flex;flex-direction:column;gap:22px;}
  .estimate-form input{
    width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);
    color:var(--cream);font-family:Arial, Helvetica, sans-serif;font-size:1rem;
    padding:10px 2px;transition:border-color .25s;
  }
  .estimate-form input:focus{outline:none;border-color:var(--silver);}
  .estimate-form input::placeholder{color:#4a463d;}
  .est-error{
    font-size:0.85rem;color:#c97a5a;min-height:1.2em;
  }
  .estimate-results{
    display:flex;flex-direction:column;
    border-top:1px solid var(--line);
    margin-top:8px;
  }
  .estimate-result-item{
    display:flex;justify-content:space-between;align-items:baseline;
    padding:16px 0;border-bottom:1px solid var(--line);
  }
  .estimate-result-item .lab{font-size:0.82rem;color:var(--silver-dim);letter-spacing:0.05em;}
  .estimate-result-item .val{font-family:Georgia, 'Times New Roman', serif;font-size:1.3rem;color:var(--cream);}
  .estimate-result-item.price .val{color:var(--silver);font-size:1.6rem;}
  .estimate-map{
    aspect-ratio:4/3;
    border:1px solid var(--line);
    background:var(--black-warm);
    overflow:hidden;
  }
  #map{width:100%;height:100%;}

  section#contact{padding:120px 0;}
  .contact-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:70px;}
  .contact-info h2{font-size:clamp(2rem,3.6vw,2.8rem);color:var(--cream);margin-bottom:20px;}
  .contact-info p{color:var(--grey);max-width:40ch;margin-bottom:36px;}
  .contact-detail{padding:18px 0;border-top:1px solid var(--line);}
  .contact-detail:last-child{border-bottom:1px solid var(--line);}
  .contact-detail .lab{font-size:0.78rem;color:var(--silver-dim);letter-spacing:0.08em;margin-bottom:6px;}
  .contact-detail .val{font-size:1.1rem;color:var(--cream);}
  .contact-detail a{transition:color .2s ease;}
  .contact-detail a:hover{color:var(--champagne);}

  form{display:flex;flex-direction:column;gap:22px;}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
  label{font-size:0.78rem;color:var(--silver-dim);letter-spacing:0.06em;margin-bottom:8px;display:block;}
  input,textarea{
    width:100%;
    background:transparent;
    border:none;
    border-bottom:1px solid var(--line);
    color:var(--cream);
    font-family:Arial, Helvetica, sans-serif;
    font-size:1rem;
    padding:10px 2px;
    transition:border-color .25s;
  }
  input:focus,textarea:focus{outline:none;border-color:var(--silver);}
  input::placeholder,textarea::placeholder{color:#4a463d;}
  textarea{resize:vertical;min-height:90px;}
  .btn-submit{
    margin-top:12px;
    align-self:flex-start;
    background:var(--cream);
    color:var(--black);
    border:none;
    border-radius:999px;
    padding:15px 30px;
    font-size:0.9rem;
    font-weight:500;
    transition:background .25s;
  }
  .btn-submit:hover{background:#fff;}
  .btn-submit:disabled{opacity:.68;cursor:wait;transform:none;box-shadow:none;}
  .form-note{font-size:0.82rem;color:var(--grey);margin-top:14px;}
  .form-success{
    display:none;
    padding:22px 24px;border:1px solid var(--line);
    color:var(--silver);font-size:0.95rem;
  }

  /* FOOTER */
  footer{padding:50px 0 36px;border-top:1px solid var(--line);}
  .footer-grid{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;}
  .footer-logo{display:flex;align-items:center;gap:10px;}
  .footer-logo img{height:26px;}
  .footer-legal{font-size:0.78rem;color:#55524a;text-align:right;line-height:1.6;}

  @media (max-width: 860px){
    .nav-links{display:none;}
    .adv-grid{grid-template-columns:1fr 1fr;}
    .adv-item{border-left:none;border-top:1px solid var(--line);}
    .adv-item:nth-child(1),.adv-item:nth-child(2){border-top:none;}
    .section-head{grid-template-columns:1fr;gap:16px;}
    .service-row{grid-template-columns:40px 1fr;}
    .service-row .desc{grid-column:2/3;}
    .zone-grid{grid-template-columns:1fr;gap:36px;}
    .contact-grid{grid-template-columns:1fr;}
    .estimate-grid{grid-template-columns:1fr;gap:32px;}
    .estimate-map{aspect-ratio:4/3;}
    .form-row{grid-template-columns:1fr;}
    .cta-inner{flex-direction:column;align-items:flex-start;}
    section, section.services, .cta-band, section#contact{padding:70px 0;}
    .wrap{padding:0 22px;}
    .footer-grid{flex-direction:column;align-items:flex-start;}
    .footer-legal{text-align:left;}
  }

  /* FINITIONS VISUELLES — identité nuit & champagne */
  :root{
    --champagne:#d8c39b;
    --panel:rgba(255,255,255,0.025);
  }
  nav{
    background:rgba(8,9,11,0.76);
    border-bottom:1px solid rgba(216,195,155,0.12);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .hero-bg-gradient{
    background:
      radial-gradient(ellipse 780px 540px at 78% 34%, rgba(216,195,155,0.14), transparent 62%),
      linear-gradient(180deg, rgba(8,9,11,0.32) 0%, rgba(8,9,11,0.04) 46%, #08090b 100%);
  }
  .hero-eyebrow-line,.section-head .kicker::before,.cta-line{
    background:var(--champagne);
  }
  .pill-btn:not(.ghost),.btn-submit{
    background:var(--champagne);
  }
  .pill-btn:not(.ghost):hover,.btn-submit:hover{
    background:#ead8b4;
    transform:translateY(-2px);
    box-shadow:0 10px 28px rgba(216,195,155,0.14);
  }
  .adv-item svg{stroke:var(--champagne);}
  .service-row{transition:padding .25s ease,border-color .25s ease;}
  .service-row:hover{padding-left:12px;border-color:rgba(216,195,155,0.34);}
  .service-row .idx,.zone-item .city{color:var(--champagne);}
  .estimate-form{
    padding:30px;
    border:1px solid rgba(216,195,155,0.18);
    background:linear-gradient(145deg,rgba(255,255,255,0.035),rgba(255,255,255,0.012));
  }
  .estimate-form input:focus,input:focus,textarea:focus{border-color:var(--champagne);}
  .estimate-result-item.price .val{color:var(--champagne);}
  .estimate-map{
    border-color:rgba(216,195,155,0.26);
    box-shadow:0 24px 70px rgba(0,0,0,0.25);
  }
  #contact .contact-grid>div:last-child{
    padding:34px;
    border:1px solid rgba(216,195,155,0.18);
    background:linear-gradient(145deg,rgba(255,255,255,0.04),rgba(255,255,255,0.012));
  }
  label,.contact-detail .lab{color:#c4b38f;}
  input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{
    outline:2px solid var(--champagne);
    outline-offset:4px;
  }
  @media (max-width: 860px){
    .estimate-form{padding:24px 20px;}
    #contact .contact-grid>div:last-child{padding:24px 20px;}
    .hero-car{object-position:72% center;transform:scale(1.03);}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *,*::before,*::after{transition-duration:0.01ms!important;animation-duration:0.01ms!important;}
  }


/* Navigation sur une page et coordonnées discrètes au bas du site */
html{scroll-behavior:smooth;scroll-padding-top:104px}
section[id],footer#contact-info{scroll-margin-top:104px}
.nav-links::after{transition:transform .18s ease-out,width .18s ease-out}
.booking-section{padding:80px 0 96px}
.booking-section .section-head{margin-bottom:34px}
.booking-panel{max-width:900px;margin:0 auto;padding:clamp(24px,5vw,52px);border:1px solid var(--line);background:rgba(17,18,20,.74)}
.booking-panel .form-note{margin-top:18px}
footer#contact-info{padding:18px 0 20px;border-top:1px solid var(--line);background:#08090b;scroll-margin-top:24px}
.compact-footer{display:flex;align-items:center;justify-content:center;gap:8px 18px;flex-wrap:wrap;color:var(--grey);font-size:.72rem;line-height:1.5}
.compact-footer-logo{height:25px;width:auto;opacity:.85}
.compact-footer a{color:var(--grey);text-decoration:none}
.compact-footer a:hover{color:var(--cream)}
.compact-footer-tagline{color:var(--cream);opacity:.72}
.compact-footer-legal{display:flex;gap:8px;align-items:center;flex-basis:100%;justify-content:flex-end;font-size:.68rem;color:#77736a}
.compact-footer-legal a{color:inherit;text-decoration:none;transition:color .2s ease}
.compact-footer-legal a:hover{color:var(--cream)}
.footer-cookie-settings{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;transition:color .2s ease}
.footer-cookie-settings:hover{color:var(--cream)}
.service-row{grid-template-columns:minmax(220px,.85fr) 1.15fr;gap:36px}
@media(max-width:860px){nav{padding:16px 24px}.nav-links{display:none}.nav-logo img{height:30px}.nav>.pill-btn{font-size:.76rem;padding:10px 12px}.booking-section{padding:64px 0 80px}.booking-panel{padding:24px}.compact-footer{font-size:.68rem;gap:6px 12px;text-align:center}.compact-footer-logo{height:22px}.compact-footer-legal{justify-content:center}}
@media(max-width:860px){.service-row{grid-template-columns:1fr;gap:10px}.service-row .desc{grid-column:auto}}

/* Pages d’information légale */
.legal-nav{position:sticky;top:0;z-index:10;justify-content:space-between}
.legal-nav .nav-logo a{display:flex;align-items:center}
.legal-nav-title{color:var(--silver-dim);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.legal-main{max-width:900px;padding-top:76px;padding-bottom:100px}
.legal-main .legal-kicker{color:var(--champagne);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}
.legal-main h1{font-family:Georgia, 'Times New Roman', serif;font-size:clamp(2.7rem,7vw,4.4rem);font-weight:400;line-height:1.05;color:var(--cream);margin:0 0 18px}
.legal-main .legal-intro{max-width:68ch;color:var(--silver-dim);line-height:1.8;margin:0 0 48px}
.legal-main h2{font-family:Georgia, 'Times New Roman', serif;font-size:1.8rem;font-weight:500;color:var(--cream);margin:38px 0 12px}
.legal-main h3{font-size:1rem;font-weight:500;color:var(--cream);margin:24px 0 8px}
.legal-main p,.legal-main li{color:#b7b3ab;line-height:1.8;font-size:.95rem}
.legal-main ul{padding-left:22px}
.legal-main a{color:var(--champagne);text-underline-offset:3px}
.legal-main .legal-updated{font-size:.78rem;color:#807d75;margin:0 0 18px}
.legal-note{border-left:2px solid var(--champagne);padding:16px 18px;background:rgba(255,255,255,.035);color:#c9c2b4;line-height:1.75;margin:28px 0}
.legal-footer{border-top:1px solid var(--line);padding:24px 0 34px;color:#77736a;font-size:.78rem}
.legal-footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media(max-width:860px){.legal-main{padding-top:52px;padding-bottom:70px}.legal-nav-title{display:none}.legal-main p,.legal-main li{font-size:.9rem}}

/* Gestion du consentement */
body.consent-open{overflow:hidden}
.consent-backdrop{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(3,4,5,.76);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.consent-backdrop[hidden]{display:none!important}
.consent-dialog{position:relative;width:min(660px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:clamp(26px,5vw,46px);border:1px solid rgba(216,195,155,.32);border-radius:18px;background:#111214;color:var(--cream);box-shadow:0 30px 100px rgba(0,0,0,.55)}
.consent-close{position:absolute;top:16px;right:18px;width:38px;height:38px;border:1px solid rgba(216,195,155,.25);border-radius:50%;background:transparent;color:var(--cream);font-size:1.55rem;line-height:1;cursor:pointer}
.consent-close:hover{background:rgba(255,255,255,.08)}
.consent-kicker{margin:0 0 8px;color:var(--champagne);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
.consent-dialog h2{margin:0 42px 14px 0;color:var(--cream);font-family:Georgia, 'Times New Roman', serif;font-size:clamp(2rem,5vw,2.6rem);font-weight:500;line-height:1.08}
.consent-dialog>p:not(.consent-kicker){color:#c3c0b8;font-size:.88rem;line-height:1.75}
.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 10px}
.consent-choice{min-height:48px;padding:12px 16px;border:1px solid rgba(216,195,155,.56);border-radius:8px;background:rgba(216,195,155,.08);color:var(--cream);font:500 .86rem Arial, Helvetica, sans-serif;cursor:pointer;transition:background .2s,border-color .2s}
.consent-choice:hover{background:rgba(216,195,155,.18);border-color:var(--champagne)}
.consent-preferences-toggle{display:block;margin:14px auto 0;padding:8px 4px;border:0;background:transparent;color:var(--champagne);font:500 .83rem Arial, Helvetica, sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.consent-preferences{margin-top:22px;padding-top:8px;border-top:1px solid rgba(216,195,155,.18)}
.consent-option{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid rgba(216,195,155,.14);cursor:pointer}
.consent-option strong{display:block;color:var(--cream);font-size:.84rem;font-weight:500}
.consent-option p,.consent-option small{display:block;margin:5px 0 0;color:#aaa69d;font-size:.76rem;line-height:1.6}
.always-on{white-space:nowrap;color:#b6ad98;font-size:.7rem}
.consent-option input{flex:0 0 auto;width:20px;height:20px;accent-color:var(--champagne)}
.consent-save{width:100%;margin-top:18px}
.consent-close-note{margin:18px 0 0!important;color:#928e85!important;font-size:.72rem!important;text-align:center}
.consent-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(216,195,155,.14)}
.consent-links a{color:var(--champagne);font-size:.75rem;text-underline-offset:3px}
.map-consent-message{display:grid;place-content:center;gap:12px;height:100%;min-height:240px;padding:24px;text-align:center;background:rgba(255,255,255,.025)}
.map-consent-message p{max-width:38ch;margin:0 auto;color:var(--silver-dim);line-height:1.7}
.map-consent-message a{color:var(--champagne);font-size:.82rem}
@media(max-width:600px){.consent-backdrop{align-items:flex-end;padding:0}.consent-dialog{width:100%;max-height:90vh;padding:28px 22px 24px;border-radius:18px 18px 0 0}.consent-actions{grid-template-columns:1fr}.consent-close-note{text-align:left}.consent-links{justify-content:flex-start}}

/* Invitation d'installation, affichée après le choix des cookies sur téléphone */
.install-backdrop{z-index:10001}
.install-dialog{border-color:rgba(216,195,155,.42)}
.install-heading{display:grid;grid-template-columns:64px 1fr;align-items:center;gap:18px;margin-right:32px}
.install-app-icon{width:64px;height:64px;object-fit:cover;border:1px solid rgba(216,195,155,.3);border-radius:15px}
.install-heading h2{margin:0;color:var(--cream);font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.65rem,5vw,2.25rem);font-weight:500;line-height:1.08}
.install-heading .consent-kicker{margin-bottom:6px}
.install-description{margin-top:22px;color:#c3c0b8;font-size:.9rem;line-height:1.75}
.install-instructions{margin:24px 0 18px}
.install-instructions ol{display:grid;gap:14px;list-style:none;counter-reset:install-step}
.install-instructions li{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:14px;color:#c3c0b8;font-size:.88rem;line-height:1.6}
.install-instructions li::before{counter-increment:install-step;content:counter(install-step);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(216,195,155,.12);color:var(--champagne);font-size:.83rem;font-weight:600}
.install-instructions strong{color:var(--cream);font-weight:500}
.install-action,.install-later{width:100%;margin-top:18px}
.install-action:not([hidden]){background:var(--champagne);color:var(--black)}
.install-once-note{margin-top:18px;color:#928e85;font-size:.72rem;text-align:center}
@media(max-width:600px){.install-dialog{max-height:90vh}.install-heading{grid-template-columns:56px 1fr;gap:14px;margin-right:28px}.install-app-icon{width:56px;height:56px;border-radius:13px}.install-heading h2{font-size:1.75rem}.install-instructions li{align-items:start}}

