/* SOLIS · styles de l'accueil, partie 1 sur 2 · regroupés le 20/10/2026 pour un affichage plus rapide sur téléphone.
   Chaque section porte le nom de l'ancien fichier, dans le même ordre qu'avant.
   Pour modifier un bloc : chercher son nom ici (ex. « bloc5-v2.css ») et modifier directement dans ce fichier. */

/* ===== styles.css ===== */
:root{
  color-scheme:light;
  --warm:#fcf9f6;
  --ink:#080f17;
  --coral:#ff5752;
  --slate:#516684;
  --dark:#101719;
  --white:#f5f4f2;
  --site-width:1672px;
  --u:min(.146627566vw,2.451613px);
  font-family:var(--f-texte,Arial,Helvetica,sans-serif);
  font-synthesis:none
}

*{
  box-sizing:border-box
}
html{
  scroll-behavior:smooth;
  scroll-padding-top:24px
}
body{
  margin:0;
  background:var(--dark);
  color:var(--ink)
}
a{
  color:inherit;
  text-decoration:none
}
button{
  font:inherit
}
button:disabled{
  cursor:default
}
em{
  font-style:normal;
  color:var(--coral)
}
svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}
button svg,a svg{
  flex:none
}
.svg-library{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden
}
a:focus-visible,button:focus-visible{
  outline:3px solid #326cb9;
  outline-offset:6px
}
.skip-link{
  position:fixed;
  left:20px;
  top:12px;
  background:#fff;
  padding:16px;
  z-index:20;
  transform:translateY(-180%)
}
.skip-link:focus{
  transform:none
}
main{
  max-width:var(--site-width);
  margin:0 auto;
  overflow:clip
}
.hero{
  position:relative;
  isolation:isolate;
  background:var(--warm);
  height:calc(min(100vw,1672px)*.52);
  min-height:670px;
  overflow:hidden
}
.hero-scene{
  position:absolute;
  right:0;
  top:0;
  width:58%;
  height:100%;
  z-index:-1;
  background:url('assets/hero-scene.jpg') center center/cover no-repeat;
  mask-image:linear-gradient(to right,transparent 0%,#000 16%)
}
.header{
  height:112px;
  padding:26px 5.2%;
  display:flex;
  align-items:center;
  gap:32px;
  position:relative
}
.brand{
  display:flex;
  align-items:center;
  gap:18px;
  flex-shrink:0
}
.brand img{
  width:115px;
  height:auto;
  mix-blend-mode:multiply
}
.brand span{
  font-size:10px;
  letter-spacing:.2em;
  line-height:1.5;
  color:var(--slate);
  border-left:1px solid #bfc7d0;
  padding-left:20px
}
.header nav{
  display:flex;
  align-items:center;
  gap:30px;
  margin-left:auto;
  white-space:nowrap;
  font-size:13px
}
.header nav a{
  padding-block:9px
}
.header nav [aria-current]{
  font-weight:700;
  border-bottom:2px solid var(--coral)
}
.header nav a:hover{
  color:var(--coral)
}
.header-cta{
  border:1px solid #ff8a80;
  background:#ff7870;
  color:#fff;
  border-radius:40px;
  padding:17px 22px;
  font-size:14px;
  white-space:nowrap;
  margin-left:auto
}
.hero-copy{
  margin:38px 0 0 5.2%;
  width:45%;
  max-width:740px
}
.eyebrow{
  font-size:10px;
  letter-spacing:.22em;
  line-height:1.5;
  font-weight:700;
  margin:0 0 18px;
  color:var(--slate)
}
h1{
  font-size:clamp(44px,4.28vw,71.5px);
  font-weight:750;
  letter-spacing:-.055em;
  line-height:.98;
  margin:0 0 26px
}
h1 em{
  display:inline-block
}
.hero-description{
  font-size:clamp(16px,1.43vw,24px);
  line-height:1.28;
  letter-spacing:-.025em;
  color:var(--slate);
  max-width:620px;
  margin:0 0 28px
}
.primary-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  background:linear-gradient(110deg,#ff4547,#ff665f);
  border:1px solid #ff827c;
  border-radius:999px;
  min-height:58px;
  padding:15px 24px;
  color:#fff;
  font-size:clamp(14px,1.31vw,21px);
  letter-spacing:-.025em;
  white-space:nowrap
}
.primary-cta svg{
  width:22px;
  transition:transform .18s
}
.primary-cta:hover svg{
  transform:translateX(5px)
}
.primary-cta:active{
  transform:translateY(1px)
}
.microcopy{
  position:relative;
  color:var(--slate);
  font-size:clamp(13px,1.03vw,17px);
  line-height:1.3;
  margin:25px 0 0;
  padding-top:18px
}
.microcopy:before{
  content:"";
  position:absolute;
  width:32px;
  height:2px;
  left:0;
  top:0;
  background:var(--coral)
}
.scroll-link{
  display:inline-flex;
  align-items:center;
  gap:14px;
  color:var(--slate);
  font-weight:700;
  font-size:9px;
  letter-spacing:.16em;
  margin-top:42px;
  min-height:44px
}
.scroll-link svg{
  transform:rotate(90deg);
  height:25px;
  width:25px
}
.hero-curve{
  position:absolute;
  bottom:-1px;
  left:0;
  width:100%;
  height:88px;
  stroke:none;
  fill:var(--dark);
  pointer-events:none
}

.search-story{
  position:relative;
  color:var(--white);
  background:var(--dark);
  padding:14px 0 46px;
  isolation:isolate;
  min-height:calc(min(100vw,1672px)*.622)
}
.story-inner{
  width:80%;
  margin:0 auto;
  position:relative;
  z-index:1
}
.search-story .eyebrow{
  color:#aeb2b3;
  margin-bottom:15px;
  font-size:10px
}
.search-story h2{
  font-size:clamp(30px,3.51vw,58.7px);
  font-weight:700;
  letter-spacing:-.045em;
  line-height:1.02;
  margin:0 0 18px
}
.context{
  font-size:clamp(16px,1.52vw,25px);
  letter-spacing:-.025em;
  line-height:1.32;
  margin:0 0 30px;
  color:#dededf
}
.google-watermark{
  position:absolute;
  right:1.5%;
  top:-50px;
  font-size:clamp(200px,28vw,460px);
  font-weight:800;
  color:#242c2e;
  opacity:.67;
  line-height:1;
  z-index:-1;
  transform:rotate(-9deg)
}
.search-journey{
  border:2px solid #333b3c;
  border-radius:999px;
  display:grid;
  grid-template-columns:2.4fr repeat(4,1fr);
  align-items:center;
  gap:34px;
  padding:16px 22px;
  margin:0 -1.4% 40px;
  background:linear-gradient(130deg,#1a2123aa,#10161844)
}
.query{
  height:66px;
  border-radius:60px;
  padding:0 24px;
  display:flex;
  align-items:center;
  gap:18px;
  background:linear-gradient(100deg,#242b2d,#33393b);
  font-size:16px;
  white-space:nowrap
}
.query svg{
  width:21px;
  height:21px
}
.query-close{
  font-size:24px;
  color:#b3b7b9;
  margin-left:auto
}
.journey-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:10px;
  position:relative;
  font-size:14px;
  line-height:1.1;
  min-width:0
}
.journey-step:before{
  content:"";
  width:35px;
  border-top:3px dotted #3d4649;
  position:absolute;
  left:-34px;
  top:32%
}
.journey-step>svg{
  width:41px;
  height:41px;
  stroke-width:1.4
}
.journey-step>.maps-icon{
  width:29px;
  stroke:none
}
.google-mark{
  font-size:49px;
  line-height:.85;
  letter-spacing:-.09em;
  background:conic-gradient(#4285f4 0 27%,#34a853 27% 48%,#fbbc05 48% 67%,#ea4335 67% 86%,#4285f4 86%);
  background-clip:text;
  color:transparent
}
.evidence{
  display:grid;
  grid-template-columns:58% 42%;
  gap:0
}
.statistic{
  padding-right:28px
}
.silhouettes{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 18px
}
.silhouettes svg{
  width:38px;
  height:77px;
  fill:#444e51;
  stroke:none
}
.silhouettes .selected{
  fill:var(--coral)
}
.silhouettes .selected:nth-child(6){
  fill:#ff7369
}
.silhouettes .selected:nth-child(7){
  fill:#ff8e82
}
.statistic h3{
  font-size:clamp(40px,6.02vw,100px);
  font-weight:750;
  letter-spacing:-.055em;
  line-height:.93;
  margin:0 0 7px;
  color:var(--coral);
  white-space:nowrap
}
.stat-explanation{
  font-weight:600;
  font-size:clamp(21px,2.59vw,43px);
  letter-spacing:-.04em;
  line-height:1.1;
  margin:0
}
.opportunity{
  font-size:clamp(20px,2.14vw,35px);
  line-height:1.12;
  letter-spacing:-.025em;
  margin:20px 0 20px;
  padding-top:18px;
  position:relative
}
.opportunity:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:32px;
  height:2px;
  background:var(--coral)
}
.source{
  font-size:13px;
  line-height:1.4;
  color:#a6acae;
  margin:0
}
.decision{
  border-left:2px solid #424a4c;
  padding:4px 0 0 45px;
  display:flex;
  flex-direction:column;
  gap:36px;
  align-self:start;
  min-height:375px
}
.decision-row{
  display:flex;
  align-items:flex-start;
  gap:27px
}
.decision-icon{
  display:grid;
  place-items:center;
  width:78px;
  height:78px;
  flex:none;
  background:linear-gradient(135deg,#262e30,#1b2224);
  border-radius:50%
}
.decision-icon svg{
  width:35px;
  height:35px
}
.decision-row p{
  font-size:clamp(15px,1.45vw,24px);
  line-height:1.38;
  letter-spacing:-.025em;
  margin:4px 0 0
}
.decision-row strong{
  display:block;
  font-weight:700;
  margin-bottom:3px
}
.search-story.is-entering .journey-step{
  animation:focus-in .45s both
}
.search-story.is-entering .journey-step:nth-child(3){
  animation-delay:.12s
}
.search-story.is-entering .journey-step:nth-child(4){
  animation-delay:.24s
}
.search-story.is-entering .journey-step:nth-child(5){
  animation-delay:.36s
}
.search-story.is-entering .silhouettes .selected{
  animation:person-in .35s both;
  animation-delay:calc(var(--i)*.07s)
}
@keyframes focus-in{
  from{
  opacity:.4;
  transform:translateY(4px)
}
to{
  opacity:1;
  transform:none
}

}
@keyframes person-in{
  from{
  fill:#444e51
}
to{
  fill:var(--coral)
}

}

@media(min-width:1673px){
  .hero-copy{
  margin-top:50px
}
.primary-cta{
  min-height:68px
}
.hero{
  min-height:870px
}
.scroll-link{
  margin-top:58px
}

}

@media(max-width:1200px) and (min-width:761px){
  .hero{
  min-height:640px
}
.header{
  gap:18px;
  height:100px;
  padding-inline:5.2%
}
.brand img{
  width:95px
}
.brand span{
  font-size:8px;
  padding-left:10px
}
.brand{
  gap:10px
}
.header nav{
  gap:16px;
  font-size:11px
}
.header-cta{
  font-size:12px;
  padding:14px
}
.hero-copy{
  margin-top:35px;
  width:48%
}
h1{
  font-size:4.25vw
}
.primary-cta{
  font-size:13px;
  padding:14px 16px;
  min-height:49px
}
.hero-scene{
  width:56%
}
.search-journey{
  gap:20px;
  padding:13px 16px
}
.query{
  font-size:13px;
  padding:0 13px;
  gap:10px;
  height:52px
}
.journey-step{
  font-size:12px
}
.journey-step:before{
  width:22px;
  left:-20px
}
.journey-step>svg{
  width:31px;
  height:31px
}
.google-mark{
  font-size:39px
}
.decision{
  padding-left:25px;
  gap:24px;
  min-height:310px
}
.decision-row{
  gap:16px
}
.decision-icon{
  width:60px;
  height:60px
}
.decision-icon svg{
  width:28px;
  height:28px
}
.silhouettes{
  gap:8px
}
.silhouettes svg{
  height:64px;
  width:29px
}
.source{
  font-size:12px
}
.search-story{
  padding-bottom:40px
}

}

@media(max-width:760px){
  .hero{
  height:auto;
  min-height:0;
  display:flex;
  flex-direction:column;
  padding-bottom:400px
}
.header{
  height:85px;
  padding:18px 6%;
  gap:12px;
  order:-1
}
.brand img{
  width:90px
}
.brand span{
  font-size:7px;
  letter-spacing:.14em;
  padding-left:9px
}
.brand{
  gap:10px
}
.header nav{
  display:none
}
.header-cta{
  display:none
}
.hero-copy{
  width:auto;
  max-width:none;
  margin:24px 6% 0
}
.eyebrow{
  font-size:9px;
  letter-spacing:.13em;
  margin-bottom:20px
}
h1{
  font-size:clamp(32px,7.6vw,55px);
  letter-spacing:-.05em;
  line-height:1.02;
  margin-bottom:24px
}
.hero-description{
  font-size:17px;
  line-height:1.45;
  max-width:540px;
  letter-spacing:-.02em;
  margin-bottom:24px
}
.primary-cta{
  white-space:normal;
  width:100%;
  max-width:480px;
  text-align:left;
  font-size:15px;
  min-height:58px;
  padding:15px 20px;
  justify-content:space-between
}
.microcopy{
  font-size:13px;
  line-height:1.45;
  margin-top:22px
}
.scroll-link{
  margin-top:20px;
  font-size:8px
}
.hero-scene{
  width:100%;
  height:400px;
  top:auto;
  bottom:0;
  background-position:center 57%;
  background-size:cover;
  mask-image:linear-gradient(to bottom,transparent,#000 13%)
}
.hero-curve{
  height:36px
}
.search-story{
  padding:26px 0 42px;
  min-height:0
}
.story-inner{
  width:88%
}
.search-story .eyebrow{
  font-size:9px;
  line-height:1.65;
  letter-spacing:.14em;
  max-width:300px;
  margin-bottom:16px
}
.search-story h2{
  font-size:clamp(29px,7.4vw,44px);
  line-height:1.08;
  letter-spacing:-.045em;
  margin-bottom:20px
}
.context{
  font-size:16px;
  line-height:1.5;
  letter-spacing:-.01em;
  margin-bottom:24px
}
.desktop-break{
  display:none
}
.google-watermark{
  top:0;
  font-size:250px;
  right:-15%;
  opacity:.3
}
.search-journey{
  border-radius:24px;
  margin:0 0 34px;
  padding:15px 15px 20px;
  grid-template-columns:repeat(4,1fr);
  column-gap:16px;
  row-gap:25px
}
.query{
  grid-column:1/-1;
  height:48px;
  font-size:15px;
  padding:0 17px;
  gap:12px
}
.journey-step{
  font-size:12px;
  gap:11px;
  line-height:1.2
}
.journey-step:before{
  width:15px;
  left:-17px;
  top:24%;
  border-width:2px
}
.journey-step:nth-child(2):before{
  display:none
}
.journey-step>svg{
  width:32px;
  height:32px
}
.journey-step>.maps-icon{
  width:24px
}
.google-mark{
  font-size:38px
}
.evidence{
  display:block
}
.statistic{
  padding:0
}
.silhouettes{
  gap:8px;
  margin-bottom:20px;
  justify-content:space-between
}
.silhouettes svg{
  width:25px;
  height:51px
}
.statistic h3{
  font-size:clamp(40px,11vw,64px);
  letter-spacing:-.045em;
  line-height:1;
  margin-bottom:10px
}
.stat-explanation{
  font-size:25px;
  line-height:1.2;
  max-width:500px
}
.opportunity{
  font-size:22px;
  line-height:1.3;
  margin-top:20px;
  padding-top:20px
}
.source{
  font-size:12px;
  line-height:1.55
}
.decision{
  margin-top:32px;
  padding:30px 0 0;
  border-left:0;
  border-top:1px solid #424a4c;
  gap:25px;
  min-height:0
}
.decision-row{
  gap:21px;
  align-items:center
}
.decision-icon{
  width:58px;
  height:58px
}
.decision-icon svg{
  width:28px;
  height:28px
}
.decision-row p{
  font-size:16px;
  line-height:1.45;
  margin:0
}
.decision-row strong{
  margin-bottom:3px
}

}

/* Optical correction against the approved 682px board at desktop scale. */
@media(min-width:761px){
  .hero-scene{
  top:70px;
  height:calc(100% - 70px);
  background-position:center top;
  background-size:100% auto
}
.hero-description{
  max-width:79%;
  margin-bottom:22px
}
h1{
  margin-bottom:20px
}
.primary-cta{
  width:78%;
  min-width:max-content
}
.scroll-link{
  margin-top:24px
}
.hero-curve{
  height:70px
}
.search-story{
  padding-top:14px
}
.search-journey{
  margin-bottom:36px
}
.story-inner{
  width:80%
}

}

@media(min-width:1201px){
  .silhouettes{
  gap:21px
}
.silhouettes svg{
  width:35px;
  height:94px
}
.decision{
  min-height:410px
}

}

@media(prefers-reduced-motion:reduce){
  html{
  scroll-behavior:auto
}
*,*:before,*:after{
  animation:none!important;
  transition:none!important
}

}



/* Mention des maquettes illustratives */
.illus-tag{position:absolute;top:8px;right:8px;z-index:5;padding:2px 8px;border-radius:999px;background:rgba(15,23,32,.72);color:#fff;font:600 10px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.06em;text-transform:uppercase;pointer-events:none}
.craft-review .illus-tag{top:auto;bottom:8px}

/* ===== phase-one.css ===== */
/* Proportions measured on the approved 682px production board.
   Photography comes exclusively from the client masters. */
@media (min-width: 761px) {
  .hero { height: calc(353 * var(--u)); min-height: 0; }
  .header { height: calc(53 * var(--u)); padding: calc(13 * var(--u)) 5.2%; gap: calc(18 * var(--u)); }
  .brand { gap: calc(9 * var(--u)); }
  .brand img { width: calc(53 * var(--u)); }
  .brand span { font-size: calc(4.4 * var(--u)); padding-left: calc(10 * var(--u)); }
  .header nav { gap: calc(18 * var(--u)); font-size: calc(6 * var(--u)); }
  .header-cta { padding: calc(8 * var(--u)) calc(11 * var(--u)); font-size: calc(7 * var(--u)); }
  .hero-copy { position: absolute; left: 5.2%; top: calc(70 * var(--u)); margin: 0; width: 45%; }
  .hero .eyebrow { font-size: calc(5 * var(--u)); margin-bottom: calc(10 * var(--u)); }
  h1 { font-size: calc(29 * var(--u)); letter-spacing: -.043em; line-height: .98; margin-bottom: calc(12 * var(--u)); transform: scaleX(1.065); transform-origin: left center; }
  .hero-description { font-size: calc(9.5 * var(--u)); line-height: 1.34; letter-spacing: -.018em; max-width: 81%; margin-bottom: calc(12 * var(--u)); }
  .primary-cta { width: calc(240 * var(--u)); min-width: 0; min-height: calc(28 * var(--u)); padding: calc(8 * var(--u)) calc(13 * var(--u)); font-size: calc(8.8 * var(--u)); gap: calc(7 * var(--u)); }
  .primary-cta svg { width: calc(12 * var(--u)); height: calc(12 * var(--u)); }
  .microcopy { font-size: calc(7 * var(--u)); margin-top: calc(10 * var(--u)); padding-top: calc(9 * var(--u)); }
  .microcopy::before { width: calc(16 * var(--u)); }
  .scroll-link { margin-top: calc(3 * var(--u)); font-size: calc(4.8 * var(--u)); min-height: calc(20 * var(--u)); gap: calc(9 * var(--u)); }
  .scroll-link svg { width: calc(14 * var(--u)); height: calc(14 * var(--u)); }
  .hero-scene { top: calc(29 * var(--u)); width: 58%; height: calc(100% - 29 * var(--u)); background-position: center top; background-size: 100% auto; mask-image: linear-gradient(to right, transparent 0%, #0003 5%, #000b 12%, #000 20%), linear-gradient(to bottom, transparent, #0007 3%, #000 9%); mask-composite: intersect; }
  .hero-curve { height: calc(35 * var(--u)); }
  .search-story { min-height: 0; height: calc(439 * var(--u)); padding-top: calc(10 * var(--u)); padding-bottom: 0; }
  .search-story .eyebrow { font-size: calc(5.5 * var(--u)); margin-bottom: calc(8 * var(--u)); }
  .search-story h2 { font-size: calc(24.5 * var(--u)); margin-bottom: calc(9 * var(--u)); }
  .context { font-size: calc(10.5 * var(--u)); line-height: 1.36; letter-spacing: -.018em; margin-bottom: calc(15 * var(--u)); }
  .search-journey { padding: calc(9 * var(--u)) calc(11 * var(--u)); gap: calc(17 * var(--u)); margin-bottom: calc(19 * var(--u)); border-width: 1px; }
  .query { height: calc(32 * var(--u)); font-size: calc(8 * var(--u)); padding-inline: calc(12 * var(--u)); gap: calc(9 * var(--u)); }
  .query svg { width: calc(11 * var(--u)); height: calc(11 * var(--u)); }
  .journey-step { font-size: calc(7.5 * var(--u)); gap: calc(5 * var(--u)); }
  .journey-step > svg { width: calc(22 * var(--u)); height: calc(22 * var(--u)); }
  .journey-step > .maps-icon { width: calc(16 * var(--u)); }
  .journey-step::before { width: calc(18 * var(--u)); left: calc(-18 * var(--u)); border-width: 2px; }
  .google-mark { font-size: calc(27 * var(--u)); }
  .google-watermark { font-size: calc(220 * var(--u)); top: calc(-8 * var(--u)); right: 1%; }
  .silhouettes { gap: calc(10.4 * var(--u)); margin-bottom: calc(8 * var(--u)); }
  .silhouettes svg { width: calc(16 * var(--u)); height: calc(45 * var(--u)); }
  .statistic { padding-right: calc(15 * var(--u)); }
  .statistic h3 { font-size: calc(42 * var(--u)); letter-spacing: -.053em; margin-bottom: calc(3 * var(--u)); }
  .stat-explanation { font-size: calc(18 * var(--u)); }
  .opportunity { font-size: calc(15 * var(--u)); margin: calc(10 * var(--u)) 0 calc(9 * var(--u)); padding-top: calc(10 * var(--u)); }
  .source { font-size: max(12px, calc(7.4 * var(--u))); line-height: 1.3; }
  .decision { min-height: calc(195 * var(--u)); gap: calc(19 * var(--u)); padding: calc(2 * var(--u)) 0 0 calc(27 * var(--u)); border-width: 1px; }
  .decision-row { gap: calc(16 * var(--u)); }
  .decision-icon { width: calc(42 * var(--u)); height: calc(42 * var(--u)); }
  .decision-icon svg { width: calc(23 * var(--u)); height: calc(23 * var(--u)); }
  .decision-row p { font-size: calc(10.5 * var(--u)); margin-top: calc(3 * var(--u)); line-height: 1.35; }
}

/* Block 03: shortlist and the exact selected business, not a new hero. */
.choice-story { position: relative; isolation: isolate; color: var(--white); background: radial-gradient(ellipse at 37% 43%, #40352a38 0, transparent 48%), radial-gradient(ellipse at 5% 70%, #493b2a44 0, transparent 37%), #101719; padding: calc(12 * var(--u)) 0 calc(25 * var(--u)); }
.choice-story::before { content: ''; position: absolute; inset: 0 0 auto; height: calc(456 * var(--u)); background: url('assets/choice-atmosphere.png') center top / 100% 100% no-repeat; pointer-events: none; z-index: -1; }
.choice-curve { position: absolute; left: 0; top: -1px; width: 100%; height: calc(34 * var(--u)); fill: var(--dark); stroke: none; }
.choice-heading { text-align: center; position: relative; z-index: 1; }
.choice-heading .eyebrow { color: #c1c5c6; font-size: calc(5.8 * var(--u)); letter-spacing: .25em; margin: 0 0 calc(8 * var(--u)); }
.choice-heading h2 { font-size: calc(22.5 * var(--u)); line-height: 1.08; font-weight: 700; letter-spacing: -.032em; margin: 0 0 calc(8 * var(--u)); }
.choice-heading > p:last-child { font-size: calc(10.4 * var(--u)); line-height: 1.4; letter-spacing: -.018em; margin: 0 auto; width: 86%; }
.shortlist { position: relative; width: 100%; height: calc(246 * var(--u)); margin-top: calc(9 * var(--u)); }
.business-card { position: absolute; border: 1px solid #77786b70; overflow: hidden; background: linear-gradient(140deg, #242827ed, #151c1ced); border-radius: calc(10 * var(--u)); }
.business-card img { display: block; width: 100%; object-fit: cover; }
.selected-business { z-index: 2; width: 31%; left: 33.5%; top: 0; box-shadow: 0 calc(9 * var(--u)) calc(24 * var(--u)) #0003, 0 0 calc(24 * var(--u)) #b9864210; }
.selected-photo { position: relative; overflow: hidden; }
.selected-photo > img { width: 100%; height: auto; aspect-ratio: 405/224; object-position: center top; }
.rating-badge { position: absolute; right: calc(3 * var(--u)); top: calc(4 * var(--u)); width: 31%; min-height: calc(20 * var(--u)); justify-content: center; margin: 0; display: flex; align-items: center; gap: calc(3 * var(--u)); padding: calc(3.5 * var(--u)) calc(5 * var(--u)); color: #f7f5f1; border: 1px solid #9a5344; border-radius: 999px; background: #111615; font-size: calc(8 * var(--u)); line-height: 1; box-shadow: 0 0 calc(6 * var(--u)) #a3463633; }
.rating-badge > span:first-child { color: #ffc96e; font-size: calc(12 * var(--u)); }
.rating-badge > span:last-child { color: #ff7c68; }
.selected-details { padding: calc(6 * var(--u)) calc(8 * var(--u)) calc(5 * var(--u)); }
.selected-details h3 { font-size: calc(11.2 * var(--u)); line-height: 1.15; margin: 0 0 calc(2 * var(--u)); letter-spacing: -.03em; }
.selected-details > p { font-size: calc(8.2 * var(--u)); line-height: 1.3; margin: 0; letter-spacing: -.018em; }
.stars { color: #ffcb70; letter-spacing: -.1em; }
.stars > span { color: #79786d; }
.business-rating .stars { font-size: calc(10.5 * var(--u)); letter-spacing: -.07em; }
.business-rating > span:last-child { color: #c9cbca; }
.open-status { color: #97ca9a; }
.business-actions { display: flex; align-items: center; gap: calc(4 * var(--u)); margin: calc(4 * var(--u)) 0; }
.business-actions > span { flex: 1; display: flex; justify-content: center; align-items: center; gap: calc(3 * var(--u)); padding: calc(4 * var(--u)) calc(3 * var(--u)); font-size: calc(8 * var(--u)); white-space: nowrap; border-radius: 999px; background: linear-gradient(140deg, #343d40, #232d30); }
.business-actions svg { width: calc(10 * var(--u)); height: calc(10 * var(--u)); }
.business-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(3 * var(--u)); }
.business-gallery img { aspect-ratio: 1.55; height: auto; border-radius: calc(4 * var(--u)); }
.side-business { width: 22%; opacity: .52; filter: saturate(.78); border-color: #9395873d; background: linear-gradient(150deg, #252b2870, #161d1bae); mask-image: linear-gradient(to bottom, #000 65%, #000b); }
.business-left { left: 8%; top: calc(24 * var(--u)); transform: perspective(650px) rotateY(-5deg); }
.business-right { left: 67.5%; top: calc(37 * var(--u)); transform: perspective(650px) rotateY(5deg); opacity: .32; }
.side-business > img { height: auto; aspect-ratio: 1.6; }
.side-details { padding: calc(9 * var(--u)); }
.side-details h3 { font-size: calc(10.5 * var(--u)); font-weight: 400; margin: 0 0 calc(3 * var(--u)); }
.side-details p { font-size: calc(8.4 * var(--u)); line-height: 1.45; margin: 0; }
.shortlist-chevron { position: absolute; z-index: 3; top: calc(76 * var(--u)); font-size: calc(33 * var(--u)); font-weight: 300; line-height: 1; color: #dadfdf; }
.chevron-left { left: 30.7%; }
.chevron-right { left: 65.2%; }
.choice-connections { position: absolute; z-index: 3; inset: 0; width: 100%; height: calc(270 * var(--u)); stroke: #c35c49; stroke-width: .55; opacity: .72; pointer-events: none; }
.choice-connections circle { fill: #df7560; stroke: none; }
.choice-signals { position: absolute; left: 76.5%; right: 3%; top: calc(12 * var(--u)); z-index: 4; margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: calc(11 * var(--u)); }
.choice-signals li { display: flex; align-items: center; gap: calc(9 * var(--u)); min-height: calc(37 * var(--u)); }
.choice-signals li > span { display: grid; place-items: center; flex: none; width: calc(37 * var(--u)); height: calc(37 * var(--u)); border-radius: 50%; border: 1px solid #8b6c5940; background: radial-gradient(circle at 18% 65%, #63473655, #222726b3 78%); box-shadow: inset 0 0 calc(8 * var(--u)) #9f795910; }
.choice-signals svg { width: calc(20 * var(--u)); height: calc(20 * var(--u)); stroke-width: 1.5; }
.choice-signals p { margin: 0; font-size: calc(9.2 * var(--u)); line-height: 1.35; letter-spacing: -.012em; color: #eeede8; }
.solis-pivot { position: relative; z-index: 4; width: 80%; margin: calc(4 * var(--u)) auto 0; border: 1px solid #606b6d88; border-radius: calc(30 * var(--u)); padding: calc(13 * var(--u)) calc(18 * var(--u)) calc(13 * var(--u)) calc(80 * var(--u)); background: linear-gradient(110deg, #222b2de8, #131b1ded); }
.pivot-symbol { position: absolute; left: calc(8 * var(--u)); top: 50%; transform: translateY(-50%); display: flex; align-items: center; gap: calc(8 * var(--u)); }
.pivot-arrow { width: calc(14 * var(--u)); height: calc(14 * var(--u)); color: #9caaaa; }
.pivot-pin { width: calc(30 * var(--u)); height: calc(42 * var(--u)); }
.pivot-title { margin: 0 0 calc(7 * var(--u)); font-size: calc(13 * var(--u)); line-height: 1.18; font-weight: 700; letter-spacing: -.015em; }
.pivot-support { font-size: calc(9.2 * var(--u)); line-height: 1.25; margin: 0; letter-spacing: -.015em; }
.pivot-note { position: absolute; right: calc(18 * var(--u)); bottom: calc(16 * var(--u)); font: italic calc(11 * var(--u))/1.4 'Segoe Print', 'Bradley Hand', cursive; color: #87928d; opacity: .6; transform: rotate(-8deg); margin: 0; }
.solis-pivot > div { max-width: 79%; }
.choice-conclusion { text-align: center; font-size: calc(17 * var(--u)); font-weight: 600; letter-spacing: -.035em; line-height: 1.25; margin: calc(26 * var(--u)) 5% 0; }

/* The scene settles once. Pointer movement and looping are intentionally absent. */
.choice-story.is-entering .selected-business { animation: chosen-focus .65s ease-out both; }
.choice-story.is-entering .choice-signals li { animation: signal-focus .35s ease-out both; animation-delay: calc(.35s + var(--signal) * .12s); }
@keyframes chosen-focus { from { opacity: .78; transform: translateY(5px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes signal-focus { from { opacity: .35; transform: translateX(-4px); } to { opacity: 1; transform: none; } }

@media (min-width: 761px) and (max-width: 1050px) {
  .header nav { gap: 14px; font-size: 13px; }
  .header-cta { font-size: 13px; min-height: 44px; }
  .hero .eyebrow { font-size: 9px; }
  .header nav > span { display: none; }
  .hero-description { max-width: 87%; font-size: 15px; }
  .hero { min-height: 620px; }
  .hero-scene { background-size: cover; }
  .primary-cta { min-height: 44px; font-size: 12px; }
  .hero-copy { top: 110px; }
  .search-story { height: auto; padding: 20px 0 48px; }
  .query { font-size: 14px; }
  .journey-step { font-size: 12px; }
  .choice-story { --u: 1.5px; }
  .choice-heading > p:last-child { font-size: 15px; }
  .selected-details > p, .selected-details h3 { font-size: 13px; }
  .business-actions > span { font-size: 11px; }
  .shortlist { height: 405px; }
  .choice-signals { left: 77%; right: 1%; }
  .choice-signals p { font-size: 13px; }
  .choice-signals li { gap: 10px; }
  .choice-signals li > span { width: 45px; height: 45px; }
  .pivot-note { display: none; }
  .solis-pivot > div { max-width: none; }
}
@media (max-width: 760px) {
  .choice-story { padding: 50px 0 44px; }
  .choice-curve { height: 28px; }
  .choice-heading { padding-inline: 6%; }
  .choice-heading .eyebrow { font-size: 9px; line-height: 1.6; letter-spacing: .17em; margin-bottom: 20px; }
  .choice-heading h2 { font-size: clamp(28px, 7.5vw, 42px); line-height: 1.12; margin-bottom: 20px; }
  .choice-heading h2 br { display: none; }
  .choice-heading > p:last-child { font-size: 16px; line-height: 1.45; width: 100%; }
  .choice-heading > p:last-child br { display: none; }
  .shortlist { height: auto; min-height: 0; margin-top: 34px; padding-top: 125px; }
  .business-card { border-radius: 13px; }
  .side-business { width: 32%; top: 0; opacity: .35; }
  .business-left { left: 5%; }
  .business-right { left: 63%; }
  .side-business > img { height: 72px; aspect-ratio: auto; }
  .side-details { padding: 9px; }
  .side-details h3 { font-size: 12px; }
  .side-details p { font-size: 12px; }
  .side-details p:nth-last-child(-n+2) { display: none; }
  .selected-business { position: relative; width: 76%; left: auto; top: auto; margin: 0 auto; }
  .selected-photo > img { aspect-ratio: 405/286; }
  .rating-badge { top: 4px; right: 4px; min-height: 30px; width: 33%; gap: 3px; padding: 6px 4px; font-size: 12px; }
  .rating-badge > span:first-child { font-size: 17px; }
  .selected-details { padding: 12px; }
  .selected-details h3 { font-size: 19px; margin-bottom: 4px; }
  .selected-details > p { font-size: 13px; line-height: 1.45; }
  .business-rating .stars { font-size: 18px; }
  .business-actions { gap: 5px; margin: 10px 0; }
  .business-actions > span { font-size: 11px; padding: 9px 4px; gap: 4px; }
  .business-actions svg { width: 13px; height: 13px; }
  .business-gallery { gap: 5px; }
  .business-gallery img { aspect-ratio: 1.25; border-radius: 5px; }
  .shortlist-chevron { top: 40px; font-size: 32px; }
  .chevron-left { left: 42%; }
  .chevron-right { left: 54%; }
  .choice-connections { display: none; }
  .choice-signals { position: relative; left: auto; right: auto; top: auto; width: 76%; margin: 28px auto 0; gap: 0; padding-left: 17px; border-left: 1px solid #c9534088; }
  .choice-signals li { gap: 16px; padding: 9px 0; min-height: 66px; position: relative; }
  .choice-signals li::before { content: ''; position: absolute; width: 17px; left: -17px; top: 50%; border-top: 1px solid #c9534088; }
  .choice-signals li > span { width: 45px; height: 45px; }
  .choice-signals svg { width: 24px; height: 24px; }
  .choice-signals p { font-size: 16px; line-height: 1.35; }
  .choice-signals p br { display: none; }
  .solis-pivot { width: 88%; margin-top: 34px; padding: 27px 22px; border-radius: 28px; }
  .pivot-symbol { position: static; transform: none; margin-bottom: 18px; gap: 10px; }
  .pivot-arrow { width: 18px; height: 18px; }
  .pivot-pin { width: 28px; height: 38px; }
  .solis-pivot > div { max-width: none; }
  .pivot-title { font-size: 20px; line-height: 1.22; margin-bottom: 13px; }
  .pivot-support { font-size: 15px; line-height: 1.5; }
  .pivot-note { position: static; font-size: 15px; transform: none; margin: 20px 0 0; }
  .pivot-note br { display: none; }
  .choice-conclusion { font-size: 24px; margin: 35px 6% 0; line-height: 1.25; }
  .choice-story::before { top: 20%; height: 680px; background-size: auto 100%; background-position: left top; opacity: .65; }
}
@media (prefers-reduced-motion: reduce) {
  .choice-story.is-entering .selected-business, .choice-story.is-entering .choice-signals li { animation: none; }
}

/* ===== phase-three.css ===== */
/* Phase 3 only. 887px coordinate system from the client's new continuity board.
   The four approved sections and their styles remain untouched. */
.phase-three{--p:calc(100cqw / 887);container-type:inline-size;position:relative;isolation:isolate;color:#070d10}
.phase-three p,.phase-three h2,.phase-three h3{margin:0}
.phase-three-kicker{display:flex;align-items:center;gap:calc(21 * var(--p));font-size:calc(10 * var(--p));line-height:1.2;letter-spacing:.28em;font-weight:700;color:#0a2949}
.phase-three-kicker::before{content:'';order:1;width:calc(39 * var(--p));height:1px;background:#61798b}
.phase-three-kicker b{order:2;font:inherit}
.presence-setup{height:calc(682 * var(--p));background:linear-gradient(180deg,#0e1316 0,transparent calc(78 * var(--p))),radial-gradient(ellipse 70% 23% at 89% -8%,#0e1316 20%,transparent 90%),radial-gradient(ellipse 40% 45% at 97% 64%,#c5ac98 0,#ebd9c9a3 46%,transparent 87%),#fcf9f6}
.presence-setup::after{content:'';position:absolute;z-index:-1;left:46%;right:0;top:86%;height:calc(9 * var(--p));background:#fffaf2;box-shadow:0 calc(5 * var(--p)) calc(18 * var(--p)) #b28d7133;filter:blur(calc(3 * var(--p)))}
.setup-copy{position:absolute;left:7%;top:calc(80 * var(--p));width:calc(430 * var(--p));z-index:2}
.setup-copy h2{font-size:calc(61 * var(--p));line-height:.99;letter-spacing:-.055em;margin:calc(20 * var(--p)) 0 calc(10 * var(--p));font-weight:750}
.setup-copy h2 em{color:#ff6660;display:inline-block;transform:scaleX(1.075);transform-origin:left}
.setup-description{font-size:calc(20 * var(--p));line-height:1.17;letter-spacing:-.023em;color:#092c50}
.setup-copy .setup-benefit{font-size:calc(20 * var(--p));line-height:1.16;letter-spacing:-.024em;font-weight:700;color:#ff5752;margin-top:calc(11 * var(--p))}
.setup-copy .setup-price{font-size:calc(41 * var(--p));line-height:1;letter-spacing:-.04em;margin:calc(11 * var(--p)) 0 calc(12 * var(--p))}
.setup-price strong{font-size:calc(58 * var(--p));font-weight:750}
.setup-price span{display:block;font-size:calc(25 * var(--p));letter-spacing:-.04em;line-height:1.2}
.offer-cta{width:calc(364 * var(--p));height:calc(54 * var(--p));border:1px solid #ff9c90;border-radius:999px;background:linear-gradient(110deg,#ff6b60,#ff7b70);color:#090d0e;display:flex;align-items:center;justify-content:center;gap:calc(15 * var(--p));font-size:calc(18 * var(--p));font-weight:600;letter-spacing:-.025em;padding:0;cursor:default}
.offer-cta svg{width:calc(22 * var(--p));height:calc(22 * var(--p));stroke-width:1.6}
.setup-copy .setup-reassurance{font-size:calc(14.5 * var(--p));line-height:1.25;letter-spacing:-.02em;color:#0a2e52;margin-top:calc(8 * var(--p))}
.setup-copy .setup-alternative{position:relative;font-size:calc(14.5 * var(--p));line-height:1.3;letter-spacing:-.02em;color:#0a2e52;padding-top:calc(15 * var(--p));margin-top:calc(12 * var(--p))}
.setup-alternative::before{content:'';position:absolute;top:0;left:0;width:calc(44 * var(--p));height:1px;background:#8097aa}
.offer-diagnostic{border:0;background:none;color:inherit;padding:0;text-decoration:underline;text-underline-offset:.15em;text-align:left;font:inherit;letter-spacing:inherit;cursor:default}
.offer-diagnostic svg{display:inline-block;width:1.15em;height:1em;vertical-align:-.1em;margin-left:.4em}
.setup-listing{position:absolute;left:63.1%;top:calc(52 * var(--p));transform:rotate(12deg);transform-origin:center;--g:var(--p)}
.presence-card{width:calc(259 * var(--g));height:calc(496 * var(--g));padding:calc(14 * var(--g));border-radius:calc(24 * var(--g));background:linear-gradient(130deg,#fff 60%,#fafafa);box-shadow:calc(13 * var(--g)) calc(25 * var(--g)) calc(30 * var(--g)) #76523821,inset 0 0 0 1px #ffffff;color:#202c40;overflow:hidden}
.presence-google{font-size:calc(24 * var(--g));line-height:1.12;letter-spacing:-.045em;font-weight:500;margin-bottom:calc(10 * var(--g))}
.presence-google span:nth-child(1),.presence-google span:nth-child(4){color:#4285f4}.presence-google span:nth-child(2),.presence-google span:nth-child(6){color:#ea4335}.presence-google span:nth-child(3){color:#fbbc05}.presence-google span:nth-child(5){color:#34a853}
.presence-search{display:flex;align-items:center;gap:calc(10 * var(--g));height:calc(30 * var(--g));padding:0 calc(10 * var(--g));border-radius:999px;box-shadow:0 calc(2 * var(--g)) calc(9 * var(--g)) #14213c24;font-size:calc(11 * var(--g));margin-bottom:calc(12 * var(--g))}
.presence-search svg{width:calc(12 * var(--g));height:calc(12 * var(--g));stroke-width:2}.presence-search span:last-child{margin-left:auto;font-size:calc(20 * var(--g))}
.presence-facade{display:block;width:100%;height:calc(92 * var(--g));object-fit:cover;border-radius:calc(10 * var(--g));margin-bottom:calc(8 * var(--g))}
.presence-card h3{font-size:calc(17 * var(--g));line-height:1.1;letter-spacing:-.04em;color:#080c10;font-weight:700;margin-bottom:calc(3 * var(--g))}
.presence-card>p{font-size:calc(12 * var(--g));line-height:1.35;letter-spacing:-.025em}.presence-rating span{color:#ffb900;letter-spacing:-.1em;font-size:calc(15 * var(--g))}.presence-card p em{color:#039832}
.presence-actions{display:flex;justify-content:space-between;margin:calc(9 * var(--g)) 0 calc(12 * var(--g));gap:calc(8 * var(--g))}
.presence-actions>span{display:flex;flex-direction:column;align-items:center;gap:calc(5 * var(--g));font-size:calc(11 * var(--g));letter-spacing:-.04em}
.presence-actions svg{width:calc(33 * var(--g));height:calc(33 * var(--g));padding:calc(8 * var(--g));border:1px solid #1677ff;border-radius:50%;stroke:#087bff;stroke-width:2}
.presence-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(4 * var(--g))}.presence-gallery img{width:100%;height:calc(62 * var(--g));object-fit:cover;border-radius:calc(8 * var(--g))}
.presence-tabs{display:flex;justify-content:space-between;font-size:calc(11 * var(--g));padding:calc(11 * var(--g)) 0 calc(9 * var(--g));border-bottom:1px solid #e5e8ec}
.presence-tabs span:first-child{color:#087bff;position:relative}.presence-tabs span:first-child::after{content:'';position:absolute;left:0;right:0;bottom:calc(-10 * var(--g));height:1px;background:#087bff}
.presence-address{display:flex;gap:calc(10 * var(--g));font-size:calc(10 * var(--g));line-height:1.5;margin-top:calc(12 * var(--g))}.presence-address svg{color:#087bff;width:calc(14 * var(--g));height:calc(20 * var(--g));flex:none}
.presence-card{position:relative}.presence-mini-map{position:absolute;right:0;bottom:0;width:calc(78 * var(--g));height:calc(71 * var(--g));object-fit:cover;mask-image:linear-gradient(90deg,transparent,#000 12%)}
.presence-followup{height:calc(491 * var(--p));background:linear-gradient(180deg,#fcf9f6 0,#f9e9e2 5%,#f8e8df 89%,#15191d);z-index:2}
.followup-copy{position:absolute;left:4.96%;top:calc(41 * var(--p));width:calc(309 * var(--p));z-index:4}
.followup-copy .phase-three-kicker{font-size:calc(7.5 * var(--p));letter-spacing:.22em;gap:calc(13 * var(--p))}.followup-copy .phase-three-kicker::before{width:calc(24 * var(--p))}
.followup-copy h2{font-size:calc(31 * var(--p));line-height:.98;letter-spacing:-.045em;margin:calc(18 * var(--p)) 0 calc(8 * var(--p));font-weight:700}
.followup-copy h2{width:calc(345 * var(--p));transform:scaleX(.94);transform-origin:left}
.followup-copy h2 em{color:#ff6962}
.followup-lead{font-size:calc(18 * var(--p));line-height:1.2;font-weight:700;letter-spacing:-.03em}
.followup-copy .followup-description{font-size:calc(12.8 * var(--p));line-height:1.22;letter-spacing:-.015em;color:#173853;margin:calc(8 * var(--p)) 0 calc(9 * var(--p))}
.followup-price{font-size:calc(23 * var(--p));line-height:1.07;letter-spacing:-.035em}.followup-price strong{font-size:calc(43 * var(--p));letter-spacing:-.045em}
.followup-copy .followup-frequency{font-size:calc(13.5 * var(--p));line-height:1.3;color:#183b58;margin-top:calc(1 * var(--p))}
.followup-report{display:flex;align-items:center;gap:calc(13 * var(--p));padding:calc(11 * var(--p)) calc(13 * var(--p));border:1px solid #f5cdbf;border-radius:calc(17 * var(--p));margin-top:calc(9 * var(--p));width:calc(304 * var(--p));min-height:calc(64 * var(--p))}
.followup-report>span{display:grid;place-items:center;border-radius:50%;width:calc(39 * var(--p));height:calc(39 * var(--p));background:radial-gradient(#fff8f2,#f7d4c7);flex:none}.followup-report svg{width:calc(23 * var(--p));height:calc(23 * var(--p));stroke-width:3}.followup-report p{font-size:calc(11 * var(--p));line-height:1.25;letter-spacing:-.01em;color:#1a3550}
.followup-copy .followup-promise{font:italic calc(13 * var(--p))/1.35 'Segoe Print','Bradley Hand',cursive;color:#183a54;transform:rotate(-4deg);transform-origin:left;margin-top:calc(15 * var(--p))}.followup-promise em{margin-left:calc(13 * var(--p));color:#fb5549}
.presence-timeline{position:absolute;inset:0;z-index:2}.presence-state{position:absolute;--g:calc(.49 * var(--p));top:calc(85 * var(--p));left:42%;transform:rotate(3deg)}
.state-active{top:calc(99 * var(--p));left:57%;--g:calc(.52 * var(--p));transform:rotate(3deg)}.state-current{top:calc(108 * var(--p));left:73%;--g:calc(.53 * var(--p));transform:rotate(1deg)}
.presence-state .presence-card{border-radius:calc(17 * var(--g))}.state-label{position:absolute;left:50%;bottom:calc(100% + 10 * var(--p));transform:translateX(-50%) rotate(-3deg);font-size:calc(8 * var(--p));line-height:1;white-space:nowrap;border-radius:999px;padding:calc(5 * var(--p)) calc(10 * var(--p));color:#fff;background:#373837;box-shadow:0 calc(3 * var(--p)) calc(8 * var(--p)) #29201a20}
.presence-update{display:flex;align-items:center;gap:calc(7 * var(--p));position:absolute;top:calc(71 * var(--p));left:calc(26 * var(--p));width:calc(126 * var(--p));border-radius:calc(9 * var(--p));padding:calc(8 * var(--p));background:#fff;box-shadow:0 calc(6 * var(--p)) calc(19 * var(--p)) #49322938;transform:rotate(-3deg)}
.presence-update img{width:calc(27 * var(--p));height:calc(29 * var(--p));object-fit:cover;border-radius:calc(4 * var(--p))}.presence-update p{font-size:calc(6.5 * var(--p));line-height:1.45;letter-spacing:-.015em}.presence-update strong{font-weight:600;white-space:nowrap;display:block}.presence-update span{display:block}.news-update{top:calc(74 * var(--p));left:calc(66 * var(--p));width:calc(138 * var(--p));transform:rotate(-1deg)}
.followup-note{position:absolute;z-index:3;right:3.3%;top:calc(35 * var(--p));transform:rotate(-8deg);font:italic calc(12 * var(--p))/1.35 'Segoe Print','Bradley Hand',cursive;color:#1a3a51;text-align:center}.followup-note svg{display:block;width:calc(45 * var(--p));height:calc(65 * var(--p));margin:calc(5 * var(--p)) 0 0 calc(35 * var(--p));stroke-width:1}
.followup-kenai{position:absolute;z-index:3;left:0;top:calc(-9 * var(--p));width:100%;height:auto;pointer-events:none}
.presence-conclusion{height:calc(454 * var(--p));color:#f6f6f5;background:radial-gradient(ellipse 55% 35% at 77% 95%,#352b22,transparent 85%),linear-gradient(180deg,#15191d,#0e1316 18%);overflow:hidden;z-index:1}
.conclusion-kenai{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:-1}
.conclusion-copy{position:absolute;top:calc(54 * var(--p));left:4.85%;z-index:2}.conclusion-copy .phase-three-kicker{font-size:calc(10 * var(--p));color:#eee;letter-spacing:0;gap:calc(10 * var(--p))}.conclusion-copy .phase-three-kicker::before{order:-1;width:calc(38 * var(--p));background:#ddd}.conclusion-copy h2{font-size:calc(31 * var(--p));line-height:1.16;letter-spacing:-.015em;margin:calc(26 * var(--p)) 0 calc(12 * var(--p));font-weight:650}.conclusion-copy h2 em{color:#ff756c}
.conclusion-description{font-size:calc(15.5 * var(--p));line-height:1.24;letter-spacing:-.01em}.conclusion-copy .conclusion-promise{font-size:calc(20 * var(--p));line-height:1.3;font-weight:600;letter-spacing:-.01em;margin:calc(14 * var(--p)) 0 calc(11 * var(--p));padding-top:calc(14 * var(--p));position:relative}.conclusion-promise::before{content:'';position:absolute;top:0;left:0;width:calc(29 * var(--p));height:1px;background:#ff6961}.conclusion-copy .offer-cta{width:calc(297 * var(--p));height:calc(44 * var(--p));font-size:calc(14 * var(--p));gap:calc(10 * var(--p))}.conclusion-copy .offer-cta svg{width:calc(16 * var(--p));height:calc(16 * var(--p))}
.conclusion-note{position:absolute;right:5.6%;top:calc(61 * var(--p));font-size:calc(12 * var(--p));line-height:1.3;color:#eee}.conclusion-alternative{position:absolute;right:7.1%;bottom:calc(47 * var(--p));font-size:calc(10.5 * var(--p));line-height:1.4;letter-spacing:-.015em;color:#eee}.conclusion-alternative .offer-diagnostic svg{margin-left:0;width:.9em}
.presence-setup{height:auto;aspect-ratio:887 / 682}
.presence-followup{height:auto;aspect-ratio:887 / 491}
.presence-conclusion{height:auto;aspect-ratio:887 / 454}
@media(max-width:900px){
  .phase-three{aspect-ratio:auto}
  .followup-copy h2{width:auto;transform:none}
  .presence-setup{height:auto;padding:95px 6% 40px;background:linear-gradient(180deg,#0e1316,transparent 95px),radial-gradient(ellipse at 90% 80%,#dfc8b2,transparent 55%),#fcf9f6}
  .setup-copy{position:relative;left:auto;top:auto;width:auto}.phase-three-kicker{font-size:9px;gap:16px}.phase-three-kicker::before{width:32px}.setup-copy h2{font-size:clamp(43px,8.6vw,72px);margin:24px 0 18px}.setup-description{font-size:17px;line-height:1.4;max-width:490px}.setup-description br{display:none}.setup-copy .setup-benefit{font-size:18px;line-height:1.3;margin-top:16px}.setup-copy .setup-price{font-size:32px;margin:22px 0 16px}.setup-price strong{font-size:51px}.setup-price span{font-size:23px;line-height:1.3}.offer-cta{width:min(100%,365px);height:54px;font-size:17px;gap:12px}.offer-cta svg{width:21px;height:21px}.setup-copy .setup-reassurance{font-size:13px;line-height:1.4;margin-top:12px}.setup-copy .setup-alternative{font-size:13px;line-height:1.45;padding-top:17px;margin-top:15px}.setup-alternative::before{width:40px}
  .setup-listing{position:relative;left:auto;top:auto;width:259px;--g:1px;margin:40px auto 18px;transform:rotate(8deg)}
  .presence-followup{height:auto;min-height:0;padding-top:35px;background:linear-gradient(180deg,#f9e9e2,#f8e8df 88%,#15191d)}.followup-copy{position:relative;left:auto;top:auto;width:auto;margin:0 6%;z-index:4}.followup-copy .phase-three-kicker{font-size:8px;gap:13px}.followup-copy .phase-three-kicker::before{width:24px}.followup-copy h2{font-size:clamp(29px,6.8vw,46px);line-height:1.05;margin:22px 0 12px}.followup-lead{font-size:18px;line-height:1.4}.followup-copy .followup-description{font-size:15px;line-height:1.45;max-width:480px;margin:10px 0 20px}.followup-price{font-size:23px}.followup-price strong{font-size:43px}.followup-copy .followup-frequency{font-size:13px;line-height:1.4;margin-top:4px}.followup-report{width:min(100%,420px);min-height:72px;padding:13px;gap:13px;margin-top:17px;border-radius:16px}.followup-report>span{width:40px;height:40px}.followup-report svg{width:24px;height:24px}.followup-report p{font-size:12px;line-height:1.4}.followup-report p br{display:none}.followup-copy .followup-promise{font-size:13px;line-height:1.5;margin-top:22px}.followup-promise em{margin-left:8px}
  .presence-timeline{position:relative;height:94vw;max-height:660px;margin-top:50px;--p:calc(100vw / 570)}.presence-state{left:7%;top:25px;--g:calc(.49 * var(--p))}.state-active{left:35%;top:38px;--g:calc(.52 * var(--p))}.state-current{left:63%;top:51px;--g:calc(.53 * var(--p))}.state-label{font-size:8px;padding:5px 8px;bottom:calc(100% + 10px)}.presence-update p{font-size:calc(7 * var(--p))}.followup-note{display:none}.followup-kenai{top:auto;bottom:-3vw;left:-35%;width:135%;height:auto}

}
@media(min-width:600px) and (max-width:900px){.setup-listing{margin-left:53%;margin-top:-410px;margin-bottom:60px;--g:.92px;width:239px}.setup-copy{max-width:50%}.setup-copy h2{font-size:48px}.setup-description{font-size:16px}.setup-copy .setup-benefit{font-size:17px}.offer-cta{font-size:15px}.presence-setup{min-height:750px}}

/* Block 07: one continuous artboard at intermediate and narrow widths. */
.presence-conclusion{min-height:0;padding:0;aspect-ratio:887 / 454}
.conclusion-kenai{inset:0;max-width:none;object-fit:cover;object-position:center;pointer-events:none}
@media(max-width:900px){
  .presence-conclusion .phase-three-kicker{font-size:calc(10 * var(--p));gap:calc(10 * var(--p))}
  .presence-conclusion .phase-three-kicker::before{width:calc(38 * var(--p))}
  .presence-conclusion .offer-cta{height:calc(44 * var(--p));width:calc(297 * var(--p));font-size:calc(14 * var(--p));gap:calc(10 * var(--p))}
  .presence-conclusion .offer-cta svg{width:calc(16 * var(--p));height:calc(16 * var(--p))}
}
@media(max-width:560px){
  .presence-conclusion{aspect-ratio:auto;min-height:550px;padding:34px 5% 80px}
  .conclusion-kenai{inset:auto 0 auto 0;top:52%;width:100%;height:auto;aspect-ratio:887 / 454;object-fit:cover;transform:translateY(-40%);mask-image:linear-gradient(180deg,transparent 0,#000 18%,#000 85%,transparent 100%)}
  .conclusion-copy{position:relative;inset:auto;width:100%;z-index:2}
  .presence-conclusion .phase-three-kicker{font-size:8px;gap:9px;letter-spacing:0}
  .presence-conclusion .phase-three-kicker::before{width:24px}
  .conclusion-copy h2{font-size:clamp(20px,5.2vw,28px);line-height:1.14;letter-spacing:-.02em;margin:54px 0 20px}
  .conclusion-copy h2>br:first-of-type{display:none}
  .conclusion-copy h2 em{display:block}
  .conclusion-description{font-size:12px;line-height:1.45;width:57%;letter-spacing:0}
  .conclusion-description br{display:none}
  .conclusion-copy .conclusion-promise{font-size:14px;line-height:1.35;width:62%;margin:17px 0 17px;padding-top:16px}
  .conclusion-promise::before{width:25px}
  .presence-conclusion .offer-cta{width:62%;height:auto;min-height:45px;font-size:12px;line-height:1.25;gap:8px;padding:10px 13px}
  .presence-conclusion .offer-cta svg{width:15px;height:15px}
  .conclusion-note{display:block;top:30px;right:5%;font-size:10px;line-height:1.35;width:38%}
  .conclusion-alternative{left:5%;right:5%;bottom:22px;font-size:11px;line-height:1.5;max-width:none;margin:0}
}

/* Block 06 — authoritative blush board. All overrides are section-scoped. */
#suivi-solis{--u:calc(100cqw / 1448);height:auto;min-height:0;aspect-ratio:1448 / 560;padding:0;background:#F7E2DD;color:#151820;overflow:hidden}
#suivi-solis::before,#suivi-solis::after{content:none;background:none;box-shadow:none}
#suivi-solis .followup-copy{left:4.2%;top:calc(40 * var(--u));width:calc(466 * var(--u));margin:0;position:absolute}
#suivi-solis .phase-three-kicker,#suivi-solis .followup-description,#suivi-solis .followup-frequency,#suivi-solis .followup-report p,#suivi-solis .followup-promise,#suivi-solis .followup-note,#suivi-solis .state-label{color:#3C3F4A}
#suivi-solis .phase-three-kicker::before{background:#3C3F4A}
#suivi-solis h2 em{color:#FF7A76}
#suivi-solis .followup-report{border-color:#FF7A7640}
#suivi-solis .followup-report>span{background:#FEFAF7;color:#151820}
#suivi-solis .phase-three-kicker{font-size:calc(10 * var(--u));letter-spacing:.28em;gap:calc(17 * var(--u));font-weight:500}
#suivi-solis .phase-three-kicker::before{width:calc(47 * var(--u))}
#suivi-solis h2{width:auto;transform:none;font-family:Georgia,'Times New Roman',serif;font-size:calc(47 * var(--u));font-weight:400;line-height:.91;letter-spacing:-.05em;margin:calc(23 * var(--u)) 0 calc(9 * var(--u))}
#suivi-solis .followup-lead{font-family:Georgia,'Times New Roman',serif;font-size:calc(25 * var(--u));line-height:1.1;letter-spacing:-.035em}
#suivi-solis .followup-description{font-size:calc(17 * var(--u));line-height:1.24;letter-spacing:-.015em;max-width:none;margin:calc(8 * var(--u)) 0 calc(6 * var(--u))}
#suivi-solis .followup-price{font-family:Georgia,'Times New Roman',serif;font-size:calc(29 * var(--u));line-height:1;letter-spacing:-.045em}
#suivi-solis .followup-price strong{font-size:calc(64 * var(--u));font-weight:400}
#suivi-solis .followup-frequency{font-size:calc(16 * var(--u));line-height:1.3;margin-top:calc(1 * var(--u))}
#suivi-solis .followup-report{width:calc(430 * var(--u));min-height:calc(66 * var(--u));padding:calc(8 * var(--u)) calc(17 * var(--u));gap:calc(21 * var(--u));margin-top:calc(7 * var(--u));border-radius:calc(20 * var(--u))}
#suivi-solis .followup-report>span{width:calc(50 * var(--u));height:calc(50 * var(--u))}
#suivi-solis .followup-report svg{width:calc(27 * var(--u));height:calc(27 * var(--u))}
#suivi-solis .followup-report p{font-size:calc(14 * var(--u));line-height:1.14;letter-spacing:-.025em}
#suivi-solis .followup-promise{font:600 calc(12 * var(--u))/1.3 var(--f-texte,Arial,sans-serif);letter-spacing:-.02em;transform:none;margin-top:calc(10 * var(--u));color:#3C3F4A;white-space:normal}
#suivi-solis .followup-promise br{display:none}
#suivi-solis .followup-promise em{font-style:normal;margin:0;color:inherit}
/* Reuse the 89-euro Coral button; only its local sizing is supplied here. */
#suivi-solis .followup-cta{--b:calc(100cqw / 1672);max-width:calc(466 * var(--u));min-height:44px}
@media(min-width:801px) and (max-width:1100px){#suivi-solis .followup-cta{--b:.7px}}
/* Keep existing desktop content in place; reserve room below for the CTA. */
@media(min-width:1001px){#suivi-solis{width:100%;aspect-ratio:auto;min-height:calc(560 * var(--u) + 60px)}}
#suivi-solis .presence-timeline{position:absolute;inset:0;height:auto;max-height:none;margin:0;--p:calc(100cqw / 887)}
#suivi-solis .presence-state{--g:calc(.91 * var(--u));position:absolute;left:38.2%;top:calc(82 * var(--u));transform:none;width:calc(259 * var(--g))}
#suivi-solis .state-active{left:55.3%;top:calc(82 * var(--u));transform:none}
#suivi-solis .state-current{left:72.4%;top:calc(82 * var(--u));transform:none}
#suivi-solis .presence-card{height:calc(478 * var(--g));border-radius:calc(17 * var(--g));box-shadow:0 calc(8 * var(--u)) calc(17 * var(--u)) #15182012;background:#FEFAF7}
#suivi-solis .presence-tabs{padding-top:calc(8 * var(--g));padding-bottom:calc(7 * var(--g))}
#suivi-solis .presence-address{margin-top:calc(8 * var(--g))}
#suivi-solis .state-active .presence-gallery,#suivi-solis .state-current .presence-facade{display:none}
#suivi-solis .state-current .presence-gallery img{height:calc(92 * var(--g))}
#suivi-solis .state-label{font:italic calc(16 * var(--u))/1.2 'Segoe Print','Bradley Hand',cursive;color:#3C3F4A;background:none;box-shadow:none;padding:0;border-radius:0;bottom:calc(100% + 14 * var(--u));transform:translateX(-50%)}
#suivi-solis .presence-update{position:relative;top:auto;left:auto;transform:none;width:100%;padding:calc(8 * var(--u)) 0;gap:calc(8 * var(--u));border-radius:0;margin:0;box-shadow:none;background:transparent}
#suivi-solis .presence-update img{width:calc(27 * var(--u));height:calc(29 * var(--u));border-radius:calc(4 * var(--u))}
#suivi-solis .presence-update p{font-size:calc(9 * var(--u));line-height:1.35}
#suivi-solis .state-active .presence-card{display:flex;flex-direction:column}
#suivi-solis .state-active .presence-card>*{flex-shrink:0}
#suivi-solis .state-active .presence-facade{display:none}
#suivi-solis .state-active .presence-update{order:1;flex-direction:column;align-items:stretch;gap:calc(7 * var(--g));padding:calc(8 * var(--g)) 0}
#suivi-solis .state-active .presence-update p{order:0;font-size:calc(11 * var(--g))}
#suivi-solis .state-active .presence-update img{order:1;width:100%;height:calc(100 * var(--g));object-fit:cover;border-radius:calc(8 * var(--g))}
#suivi-solis .state-active .presence-actions{order:2}
#suivi-solis .state-active .presence-tabs{order:3}
#suivi-solis .state-active .presence-address{order:4}
#suivi-solis .state-current .presence-update{display:block;padding:calc(8 * var(--g)) 0}
#suivi-solis .state-current .presence-update img{display:none}
#suivi-solis .state-current .presence-update p{font-size:calc(11 * var(--g))}
#suivi-solis .state-current .presence-gallery img{height:calc(100 * var(--g))}
#suivi-solis .followup-note{display:block;top:calc(165 * var(--u));right:1%;font-size:calc(13 * var(--u));line-height:1.4;transform:none}
#suivi-solis .followup-note svg{width:calc(60 * var(--u));height:calc(85 * var(--u));margin:calc(8 * var(--u)) 0 0 calc(35 * var(--u))}
#suivi-solis .followup-reveal-ready .presence-state{opacity:0;translate:0 20px;transition:opacity 600ms ease,translate 600ms cubic-bezier(.22,.61,.36,1)}
#suivi-solis .followup-reveal-ready .state-active{transition-delay:130ms}
#suivi-solis .followup-reveal-ready .state-current{transition-delay:260ms}
#suivi-solis .followup-revealed .presence-state{opacity:1;translate:0 0}
@media(min-width:701px) and (max-width:1000px){
  #suivi-solis{aspect-ratio:auto;min-height:0;padding:40px 6% 38px;overflow:hidden}
  #suivi-solis .followup-copy{position:relative;inset:auto;width:100%;max-width:610px}
  #suivi-solis .followup-copy{--u:1px}
  #suivi-solis .presence-timeline{position:relative;inset:auto;--u:calc(100cqw / 880);height:calc(460 * var(--u));margin-top:52px}
  #suivi-solis .presence-state{left:2%;top:12px;--g:calc(.95 * var(--u))}
  #suivi-solis .state-active{left:35%;top:12px}
  #suivi-solis .state-current{left:68%;top:12px}
  #suivi-solis .followup-note{top:32px;right:5%;font-size:13px}
}
@media(max-width:700px){
  #suivi-solis{--u:1px;aspect-ratio:auto;padding:34px 6% 35px}
  #suivi-solis .followup-copy{position:relative;inset:auto;width:100%;margin:0}
  #suivi-solis h2{font-size:clamp(29px,6.7vw,44px);margin:23px 0 12px;line-height:.98}
  #suivi-solis .followup-lead{font-size:23px}
  #suivi-solis .followup-description{font-size:16px;line-height:1.4;margin:10px 0}
  #suivi-solis .followup-price{font-size:26px}
  #suivi-solis .followup-price strong{font-size:58px}
  #suivi-solis .followup-frequency{font-size:14px}
  #suivi-solis .followup-report{width:100%;gap:12px;padding:12px}
  #suivi-solis .followup-report p{font-size:13px;line-height:1.25}
  #suivi-solis .followup-report p br{display:none}
  #suivi-solis .followup-promise{font-size:12px;line-height:1.5;white-space:normal}
  #suivi-solis .presence-timeline{position:relative;inset:auto;display:grid;justify-items:center;gap:65px;height:auto;max-height:none;margin:65px 0 25px}
  #suivi-solis .presence-state{position:relative;inset:auto;--g:1px}
  #suivi-solis .presence-card{height:496px}
  #suivi-solis .presence-update{font-size:11px;padding:12px}
  #suivi-solis .presence-update p{font-size:11px}
  #suivi-solis .followup-note{position:relative;inset:auto;font-size:16px;transform:none;margin:30px 0 0;text-align:center}
  #suivi-solis .followup-note svg{display:none}
}
@media(prefers-reduced-motion:reduce){
  #suivi-solis .followup-reveal-ready .presence-state{opacity:1;translate:none;transition:none}
}

/* ===== header-overlay.css ===== */
/* Header only: both positions stay outside document flow. */
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 15;
  padding-inline: max(5.2%, calc((100% - 1672px) / 2 + 86.944px));
  background: transparent;
  border: 0;
  box-shadow: none;
  transition: background-color 300ms ease, backdrop-filter 300ms ease, height 300ms ease, padding-block 300ms ease;
}
.header .brand, .header nav a, .header-cta { min-height: 44px; }
.header .brand { mix-blend-mode: multiply; }
.header nav a { display: inline-flex; align-items: center; }
.header-menu { display: none; }
.header.is-docked {
  position: fixed;
  height: 80px;
  padding-block: 12px;
  background: rgba(254, 250, 247, .90);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
@media (min-width: 761px) {
  .hero-scene {
    top: 0;
    height: 100%;
    /* Keep the approved scene at its original coordinates. Extend its
       existing upper-right crop behind the transparent header. */
    background-image: none;
    mask-image: linear-gradient(to right, transparent 0%, #0003 5%, #000b 12%, #000 20%);
  }
  .hero-scene::before {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    height: calc(29 * var(--u));
    transform: scaleY(2.55);
    transform-origin: center top;
    background: url('assets/hero-scene.jpg') center top / 100% auto no-repeat;
    mask-image: linear-gradient(to right, transparent 40%, #000 76%), linear-gradient(to bottom, #000 60%, transparent);
    mask-composite: intersect;
    pointer-events: none;
  }
  .hero-scene::after {
    content: '';
    position: absolute;
    inset: calc(29 * var(--u)) 0 0;
    background: url('assets/hero-scene.jpg') center top / 100% auto no-repeat;
    mask-image: linear-gradient(to bottom, transparent, #0007 3%, #000 9%);
    pointer-events: none;
  }
  .header:not(.is-docked) nav { color: var(--ink); }
  .header:not(.is-docked) nav a:hover { color: var(--coral); }
  .header.is-docked nav { color: var(--ink); text-shadow: none; }
}
@media (min-width: 761px) and (max-width: 1050px) {
  .hero-scene::after { background-size: cover; }
  .header { height: 80px; padding-block: 12px; }
  .header.is-docked { height: 68px; padding-block: 12px; }
}
@media (max-width: 760px) {
  .hero { padding-top: 85px; }
  .header { height: 85px; padding: 16px 6%; gap: 10px; }
  .header.is-docked { height: 72px; padding-block: 10px; }
  .header .brand { min-width: 0; }
  .header .brand img { width: 86px; }
  .header-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 13px; font-size: 12px; }
  .header-menu { display: grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 10px; color: var(--ink); border: 0; background: transparent; cursor: pointer; }
  .header-menu svg { width: 24px; height: 24px; }
  .header nav { display: none; position: absolute; top: calc(100% - 4px); left: 6%; right: 6%; margin: 0; padding: 12px 18px; flex-direction: column; align-items: stretch; gap: 2px; font-size: 15px; color: var(--ink); background: rgba(254, 250, 247, .97); backdrop-filter: blur(12px); border-radius: 14px; box-shadow: 0 12px 30px #10171912; }
  .header.is-menu-open nav { display: flex; }
  .header nav > a, .header nav > span { display: flex; align-items: center; min-height: 44px; padding: 10px 4px; }
  .header nav [aria-current] { border: 0; color: var(--coral); }
  .header nav [aria-disabled] { opacity: .65; }
}
@media (max-width: 520px) {
  .header .brand span { display: none; }
}
@media (max-width: 360px) {
  .header { gap: 6px; }
  .header .brand img { width: 70px; }
  .header-cta { padding-inline: 10px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .header { transition: none; }
}

/* Final navigation: scoped to the header; approved hero styles above stay intact. */
.header { gap: 22px; }
.header nav { gap: 22px; font-size: 14px; font-weight: 600; }
.header nav > a,
.header .header-question {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 9px 0;
  border: 0;
  background: transparent;
  color: #151820;
  font: inherit;
  line-height: 1.35;
  white-space: nowrap;
  text-decoration: none;
}
.header nav .header-question { opacity: 1; }
.header nav > a:hover,
.header .header-question:hover { color: #FF7A76; }
.header .header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-height: 44px;
  padding: 13px 20px;
  background: #FF7A76;
  border-color: transparent;
  color: #151820;
  font-size: 14px;
  font-weight: 600;
}
.header a:focus-visible,
.header button:focus-visible {
  outline: 2px solid #151820;
  outline-offset: 4px;
}
@media (min-width: 961px) {
  .header { flex-wrap: nowrap; }
  .header .brand img { width: 110px; }
  .header .brand span { font-size: 9px; }
  .header nav { flex-wrap: nowrap; }
}
@media (min-width: 961px) and (max-width: 1300px) {
  .header { padding-inline: 3.5%; gap: 18px; }
  .header .brand img { width: 95px; }
  .header .brand span { display: none; }
  .header nav { gap: 16px; }
  .header .header-cta { padding-inline: 16px; }
}
@media (min-width: 961px) and (max-width: 1100px) {
  .header { gap: 14px; }
  .header nav { font-size: 13px; gap: 13px; }
  .header .header-cta { font-size: 13px; padding-inline: 14px; }
}
@media (max-width: 960px) {
  .header { height: 85px; padding: 16px 6%; gap: 10px; }
  .header.is-docked { height: 72px; padding-block: 10px; }
  .header .brand { min-width: 0; }
  .header .brand img { width: 86px; }
  .header .brand span { display: none; }
  .header .header-cta { font-size: 12px; padding: 10px 13px; }
  .header-menu {
    display: grid;
    place-items: center;
    flex: none;
    width: 44px;
    height: 44px;
    padding: 10px;
    color: #151820;
    border: 0;
    background: transparent;
  }
  .header-menu svg { width: 24px; height: 24px; }
  .header nav {
    display: none;
    position: absolute;
    top: calc(100% - 4px);
    left: 6%;
    right: 6%;
    margin: 0;
    padding: 12px 18px;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    font-size: 15px;
    color: #151820;
    background: rgba(254, 250, 247, .97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 14px;
    box-shadow: 0 12px 30px #10171912;
  }
  .header.is-menu-open nav { display: flex; }
  .header nav > a,
  .header .header-question { display: flex; padding: 10px 4px; text-align: left; }
}
@media (max-width: 360px) {
  .header { padding-inline: 5%; gap: 6px; }
  .header .brand img { width: 70px; }
  .header .header-cta { padding-inline: 10px; font-size: 11px; }
}
