/* A composed phone layout, retaining the desktop visual identity. */
@media(max-width:560px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  .wrap{width:calc(100% - 44px)}
  .top{background:#fcfcfa;backdrop-filter:none}
  .nav{height:70px;gap:16px}.brand{min-width:0}.brand-logo{width:190px;max-width:100%;height:auto}
  .menu{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 10px;border:0;font-size:.875rem;flex-shrink:0}
  .menu::before{content:'';width:15px;height:8px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}
  .menu[aria-expanded=true]::before{height:1px;border-bottom:0;transform:rotate(-45deg)}
  .links{top:70px;padding:12px 22px 22px;gap:0;box-shadow:0 12px 20px #1638530c;max-height:calc(100dvh - 70px);overflow:auto}
  .links a{padding:14px 0;border-bottom:1px solid var(--line);font-size:1rem}.links a.button{margin-top:18px;padding:13px 18px;background:var(--navy);color:white;border:1px solid var(--navy)}
  .hero .wrap{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:32px 0 36px}
  .hero .wrap>div:first-child{display:contents}
  .hero .eyebrow{order:1;font-size:.75rem;line-height:1.6;letter-spacing:.065em;margin:0 0 15px;max-width:290px}
  .hero h1{order:2;font-size:clamp(1.9rem,8.6vw,2.35rem);line-height:1.15;font-weight:500;letter-spacing:-.04em;margin:0 0 18px;max-width:360px;text-wrap:balance}
  .hero h1 em{white-space:normal}
  .hero .lead{order:3;font-size:1rem;line-height:1.65;margin:0;max-width:none}
  .hero-art{order:4;padding:0;margin:27px auto 0;max-width:280px;width:100%}
  .portrait-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;align-items:start}.portrait-phil{margin-top:0}.portrait img{max-width:116px;margin:auto}.portrait figcaption{text-align:center;font-size:.875rem;margin-top:7px}.duo-caption{display:none}
  .hero .actions{order:5;display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:26px}.hero .button{min-height:48px;font-size:.9375rem;border-radius:4px}.hero .textlink{align-self:center;min-height:42px;display:flex;align-items:center;font-size:.875rem;padding:8px 0;border:0}
  .strip{padding:19px 0}.strip-inner{gap:6px}.strip strong{font-size:.9375rem}.strip span{font-size:.875rem;line-height:1.65;max-width:330px;text-wrap:pretty}
  section{scroll-margin-top:85px}.section{padding:48px 0}.section>.wrap{column-gap:0;min-width:0}.section .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:14px}
  .section h2{font-size:1.7rem;line-height:1.25;margin-bottom:18px;letter-spacing:-.035em;text-wrap:balance}.intro{font-size:1rem;line-height:1.7;margin-bottom:28px}
  .card{padding:23px 0;gap:10px}.card .num{padding:0;font-size:.75rem}.card h3{font-size:1.2rem;line-height:1.35}.card p{font-size:1rem;line-height:1.65}
  .offer{grid-template-columns:25px minmax(0,1fr);column-gap:12px;row-gap:11px;padding:24px 0}.offer .index{padding-top:3px;font-size:.8125rem}.offer h3{font-size:1.15rem;line-height:1.4}.offer p{font-size:1rem;line-height:1.65}
  .method .learning-intro h3{font-size:1.1rem;line-height:1.45;margin-bottom:14px}.learning-intro p{margin-bottom:15px}
  .method-grid{gap:0}.step{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:14px;padding:23px 0;border-top-color:#698396}.step b{grid-column:1;grid-row:1;align-self:start;font-size:.8125rem;margin-top:3px}.step b:before{display:none}.step h3{grid-column:2;margin:0 0 9px;font-size:1.2rem}.step p{grid-column:2;margin:0;font-size:1rem;line-height:1.65}
  #equipe{padding-top:48px}.team-grid{gap:27px}.person{display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:15px;padding-top:24px}.person img{grid-column:1;grid-row:1 / 3;float:none;width:58px;height:58px;margin:0}.person .role{grid-column:2;grid-row:1;font-size:.75rem;margin:2px 0 5px;line-height:1.5}.person h3{grid-column:2;grid-row:2;font-size:1.25rem;margin:0;align-self:start}.person p{grid-column:1 / -1;font-size:1rem;line-height:1.65;margin-top:17px;clear:none}
  .contact{padding:43px 0}.contact-inner{gap:24px}.contact h2{font-size:1.8rem;line-height:1.25;text-wrap:balance}.contact p{line-height:1.65}.contact-action .button{display:flex;min-height:50px;font-size:.875rem;text-align:center;padding:12px 15px;white-space:normal;border-radius:4px}
  footer{padding:25px 0 calc(25px + env(safe-area-inset-bottom))}.foot{gap:13px;font-size:.8125rem}.foot div:last-child{gap:20px;flex-wrap:wrap}.foot a{display:inline-flex;align-items:center;min-height:40px}
  .legal-heading{padding:27px 0 25px;margin-bottom:28px}.legal-heading h1{font-size:1.85rem;line-height:1.25;overflow-wrap:break-word}.legal-content h2{font-size:1.25rem}.contact-form-intro h2{font-size:1.35rem}.contact-form input:not([type=hidden]),.contact-form textarea{font-size:16px;border-radius:4px}.contact-form button{width:100%;min-height:50px}
  .cookie-notice{bottom:max(12px,env(safe-area-inset-bottom));left:12px;width:calc(100% - 24px);max-height:60dvh;border-radius:10px;box-shadow:0 8px 32px #16385320}.cookie-heading{padding:18px 18px 10px;min-height:88px}.cookie-heading h2 span{font-size:.875rem}.cookie-heading h2 strong{font-size:1.3rem}.cookie-decoration{height:98px;width:106px}.cookie-copy{font-size:.8125rem;line-height:1.55;padding:0 18px;margin-bottom:16px}.cookie-actions a,.cookie-actions button{padding:13px 9px;min-height:48px;font-size:.875rem}.cookie-close{width:36px;height:36px}.cookie-details{padding:0 18px 18px}
}
@media(max-width:360px){.wrap{width:calc(100% - 36px)}.brand-logo{width:173px}.hero h1{font-size:1.9rem}.hero-art{max-width:246px}.portrait img{max-width:106px}.hero .eyebrow{max-width:270px}.cookie-heading h2{padding-right:85px}.cookie-decoration{width:93px}}
