/* Phone composition follows the original 320 px Tilda artboards.
   Keep all overrides here: the desktop stylesheet remains unchanged. */
@media (max-width: 540px) {
  body { --u: .3125vw; }
  #main,.footer { overflow-x:clip; }
  #main .container,.footer>.container { width:100%; }
  #main .section { padding:0; }
  #main .eyebrow,.hero-top,.hero-note { display:none; }
  #main .desktop-text { display:none; }
  #main .mobile-only[hidden],.footer .mobile-only[hidden] { display:inline!important; }
  #main h1,#main h2 { letter-spacing:0; }
  #main h2 { font-size:calc(44 * var(--u)); line-height:1; font-weight:400; }
  #main h2 em { font-style:normal; color:var(--pink); }
  #main .dark { color:#fff; }
  #main .accent { color:var(--pink); }
  #main .button { height:calc(69 * var(--u)); min-height:0; padding:0 calc(12 * var(--u)); font-size:calc(20 * var(--u)); font-weight:400; line-height:1.55; border:0; color:#fff; background:var(--pink) url('/assets/Rectangle_231.webp') center / 100% 100%; box-shadow:0 calc(5 * var(--u)) calc(26 * var(--u)) #ffffff85; }

  .hero-inner { height:calc(560 * var(--u)); min-height:0; }
  .hero-copy { width:100%; height:100%; padding:0; }
  .hero #hero-title { position:absolute; top:calc(19 * var(--u)); left:0; width:calc(320 * var(--u)); margin:0; text-align:center; font-size:calc(40 * var(--u)); font-weight:500; line-height:1.55; }
  .hero h1 em { margin:0; font-style:normal; }
  .hero-photo { width:calc(321 * var(--u)); max-width:none; left:0; top:0; right:auto; clip-path:inset(0 0 11% 0); }
  .hero-description { position:absolute; top:calc(227 * var(--u)); left:calc(12 * var(--u)); width:calc(133 * var(--u)); max-width:none; margin:0; font-size:calc(12 * var(--u)); line-height:1.583333; }
  .hero-description span { color:inherit; }
  .hero .hero-cta { position:absolute; top:calc(459 * var(--u)); left:calc(10 * var(--u)); width:calc(300 * var(--u)); max-width:calc(100% - 20 * var(--u)); margin:0; }

  .for-you-inner { min-height:0; height:calc(810 * var(--u)); }
  .for-you-copy { position:static; width:100%; padding:0; }
  .for-you h2 { position:absolute; left:calc(10 * var(--u)); top:calc(15 * var(--u)); margin:0; width:calc(282 * var(--u)); font-size:calc(60 * var(--u))!important; line-height:1; z-index:1; }
  .for-you h2 em { display:block; }
  .for-you h2>br { display:none; }
  .for-you-photo { left:0; right:auto; bottom:auto; top:calc(364 * var(--u)); width:calc(320 * var(--u)); max-width:none; }
  .reasons { position:absolute; top:calc(222 * var(--u)); left:calc(10 * var(--u)); width:calc(300 * var(--u)); max-width:none; gap:calc(15 * var(--u)); z-index:1; }
  .reasons li { width:calc(256 * var(--u)); height:calc(69 * var(--u)); min-height:0; margin:0!important; padding:0 calc(4 * var(--u)) 0 calc(54 * var(--u)); background:transparent url('/assets/Frame_20.webp') center / 100% 100%; font-size:calc(14 * var(--u)); font-weight:600; line-height:1.571429; color:var(--charcoal); text-transform:lowercase; }
  .reasons li:first-child { width:100%; padding-left:calc(55 * var(--u)); background-image:url('/assets/Frame_19.webp'); }
  .reasons li:nth-child(2) { padding-left:calc(50 * var(--u)); }
  .reasons img { display:none; }

  .about-grid { position:relative; display:block; height:calc(650 * var(--u)); padding:0; border:0; }
  .about-copy { padding:0; }
  .about-intro { position:absolute; top:calc(10 * var(--u)); left:0; width:calc(320 * var(--u)); max-width:none; margin:0; font-size:calc(16 * var(--u)); line-height:1.5625; font-weight:600; text-align:center; }
  .about-intro strong { color:var(--pink); font-weight:600; }
  .about #about-title { position:absolute; left:calc(10 * var(--u)); top:calc(152 * var(--u)); width:calc(220 * var(--u)); margin:0; font-size:calc(44 * var(--u)); z-index:1; }
  .about .principles { position:absolute; top:calc(288 * var(--u)); left:calc(10 * var(--u)); width:calc(201 * var(--u)); margin:0; z-index:1; }
  .about .principles li { display:block; margin:0; font-size:calc(14 * var(--u)); line-height:1.571429; font-weight:600; }
  .about .principles li+li { margin-top:calc(15 * var(--u)); }
  .about .principles li:nth-child(3) { margin-top:calc(9 * var(--u)); }
  .about .number { display:block; padding:0; font-size:inherit; line-height:calc(23 * var(--u)); letter-spacing:0; color:var(--pink); }
  .about-portrait { display:block; position:absolute; left:calc(163 * var(--u)); top:calc(101 * var(--u)); width:calc(157 * var(--u)); overflow:visible; }
  .about-portrait img { height:auto; width:100%; }

  .reviews-grid { display:block; position:relative; height:calc(570 * var(--u)); }
  .reviews #reviews-title { position:absolute; top:calc(23 * var(--u)); left:0; width:calc(320 * var(--u)); margin:0; font-size:calc(45 * var(--u)); line-height:1; text-transform:uppercase; text-align:center; }
  .reviews h2 em { color:#fff!important; }
  .reviews-copy .eyebrow { display:block!important; position:absolute; top:calc(168 * var(--u)); left:calc(26 * var(--u)); width:calc(268 * var(--u)); margin:0; font-size:calc(12 * var(--u)); font-weight:400; line-height:1.583333; letter-spacing:0; text-align:center; color:#fff; }
  .reviews-copy>p:last-child { position:absolute; top:calc(526 * var(--u)); left:calc(26 * var(--u)); width:calc(268 * var(--u)); font-size:calc(12 * var(--u)); line-height:1.583333; text-align:center; color:var(--pink); }
  .reviews-copy>p:last-child br { display:none; }
  .review-gallery { position:absolute; left:calc(10 * var(--u)); top:calc(206 * var(--u)); width:calc(300 * var(--u)); height:calc(310 * var(--u)); margin:0; padding:0; background:#fff; border-radius:calc(30 * var(--u)); overflow:hidden; }
  .review-track { position:absolute; top:calc(34 * var(--u)); width:100%; height:calc(170 * var(--u)); border-radius:0; }
  .review-slide { align-content:center; }
  .review-slide img { width:100%; }
  .gallery-controls { position:absolute; top:calc(209 * var(--u)); left:calc(10 * var(--u)); right:calc(10 * var(--u)); margin:0; }
  .gallery-count { display:none; }
  .gallery-button,.round-arrow { display:grid; place-items:center; width:calc(50 * var(--u)); height:calc(50 * var(--u)); min-width:0; min-height:0; padding:0; border:0; border-radius:50%; background:var(--pink); color:white; box-shadow:0 2px 12px #8886; font-size:0; line-height:0; }
  .gallery-button>span { display:none; }
  .gallery-button .review-arrow[hidden] { display:block!important; width:calc(30 * var(--u)); height:calc(30 * var(--u)); }
  .round-arrow::before { content:''; width:calc(14 * var(--u)); height:calc(14 * var(--u)); border-top:calc(4 * var(--u)) solid white; border-right:calc(4 * var(--u)) solid white; transform:translateX(calc(-2 * var(--u))) rotate(45deg); }
  [data-benefit-direction="-1"]::before { transform:translateX(calc(2 * var(--u))) rotate(-135deg); }
  #main .slider-dots[hidden] { display:flex!important; justify-content:center; align-items:center; }
  .slider-dots button { position:relative; display:grid; place-items:center; flex:0 0 auto; width:calc(28 * var(--u)); height:calc(30 * var(--u)); padding:0; border:0; background:transparent; border-radius:50%; }
  .slider-dots button::before { content:''; width:calc(5 * var(--u)); height:calc(5 * var(--u)); border-radius:50%; background:#c6c6c6; }
  .slider-dots button[aria-current="true"]::before { background:#222; }
  .review-dots { position:absolute; top:calc(277 * var(--u)); left:0; width:100%; }

  .bonuses-inner { min-height:0; height:calc(490 * var(--u)); }
  .bonuses-copy { position:static; width:100%; max-width:none; padding:0; }
  .bonuses #bonuses-title { position:absolute; top:calc(23 * var(--u)); left:0; width:calc(320 * var(--u)); margin:0; font-size:calc(45 * var(--u)); line-height:1; text-transform:uppercase; }
  .bonuses-copy>p:not(.eyebrow):not(.bonus-equipment) { position:absolute; left:calc(33 * var(--u)); top:calc(212 * var(--u)); width:calc(254 * var(--u)); margin:0; font-size:calc(12 * var(--u)); line-height:1.583333; font-weight:600; }
  .bonuses .bonuses-copy .bonus-equipment { position:absolute; top:calc(425 * var(--u)); left:calc(63 * var(--u)); width:calc(195 * var(--u)); margin:0; font-size:calc(12 * var(--u)); line-height:1.583333; color:#fff; }
  .bonuses .button { position:absolute; top:calc(325 * var(--u)); left:calc(10 * var(--u)); width:calc(300 * var(--u)); max-width:calc(100% - 20 * var(--u)); min-width:0; }
  .bonus-roller { width:calc(123 * var(--u)); left:calc(-39 * var(--u)); top:calc(65 * var(--u)); transform:none; }
  .bonus-ball { width:calc(42 * var(--u)); left:calc(268 * var(--u)); right:auto; top:calc(189 * var(--u)); bottom:auto; }

  .benefits>.container { position:relative; height:370px; }
  .benefits #benefits-title { position:absolute; top:23px; left:50%; transform:translateX(-50%); width:min(320px,calc(100% - 20px)); margin:0; font-size:clamp(37px,11.54vw,45px); line-height:1; }
  .benefit-list { position:absolute; top:187px; left:0; width:100%; max-width:none; height:100px; display:flex; flex-wrap:nowrap; justify-content:flex-start; gap:0; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
  .benefit-list::-webkit-scrollbar { display:none; }
  .benefit-list li,.benefit-list li:first-child { display:flex; align-items:center; justify-content:center; flex:0 0 100%; border:0; background:transparent; padding:0; margin:0; scroll-snap-align:start; }
  .benefit-list li>span { display:flex; align-items:center; justify-content:center; gap:12px; width:215px; max-width:64%; min-height:60px; padding:8px 12px; border-radius:28px; background:var(--pink); color:var(--charcoal); font-size:16px; font-weight:600; line-height:1.4; box-shadow:0 4px 15px #7776; }
  .benefit-list li>span::before { content:''; flex:0 0 28px; height:32px; background:url('/assets/Vector.webp') center / contain no-repeat; }
  #main .benefit-controls[hidden] { display:flex!important; justify-content:space-between; pointer-events:none; position:absolute; top:215px; left:calc(22 * var(--u)); right:calc(22 * var(--u)); }
  .benefit-controls .round-arrow { width:44px; height:44px; pointer-events:auto; box-shadow:0 0 16px #fff; }
  .benefit-controls .round-arrow::before { width:12px; height:12px; border-width:3px; }
  .benefit-dots { position:absolute; top:286px; width:100%; }
  .benefit-dots button { width:24px; height:32px; }

  .course-grid { display:block; position:relative; min-height:calc(650 * var(--u)); padding:calc(28 * var(--u)) calc(21 * var(--u)) calc(22 * var(--u)); }
  .course-heading #course-title { margin:0 auto; width:calc(220 * var(--u)); text-align:center; text-transform:uppercase; }
  .course-heading>p,.course-heading>a { display:none; }
  .course-list { width:calc(280 * var(--u)); margin-top:calc(60 * var(--u)); }
  .course-list li { gap:calc(17 * var(--u)); padding:calc(12 * var(--u)) calc(13 * var(--u)); min-height:calc(118 * var(--u)); border-color:#e8d9d4aa; }
  .course-list li:last-child { border-bottom:0; min-height:0; }
  .course-list .number { padding-top:calc(16 * var(--u)); font-size:calc(14 * var(--u)); line-height:1.571429; letter-spacing:0; font-weight:600; color:white; }
  .course-list li>div { min-width:0; }
  .course-list h3 { font-size:calc(14 * var(--u)); font-weight:700; line-height:1.571429; margin:0; }
  .course-list p { margin:0; font-size:calc(14 * var(--u)); line-height:1.571429; font-weight:600; color:white; }
  .course-list li:first-child p { width:calc(201 * var(--u)); max-width:100%; }
  .course-list li:nth-child(2) p { width:calc(210 * var(--u)); max-width:100%; }

  .format-inner { min-height:0; height:calc(430 * var(--u)); }
  .format-copy { position:static; width:100%; padding:0; }
  .format #format-title { position:absolute; top:calc(27 * var(--u)); left:calc(50 * var(--u)); width:calc(220 * var(--u)); margin:0; text-align:center; text-transform:uppercase; }
  .format h2 em { color:inherit!important; }
  .format .principles { position:absolute; inset:0; margin:0; max-width:none; z-index:1; }
  .format .principles li { position:absolute; display:block; left:calc(19 * var(--u)); top:calc(158 * var(--u)); width:calc(131 * var(--u)); margin:0; font-size:calc(12 * var(--u)); line-height:1.583333; font-weight:600; }
  .format .principles li:nth-child(2) { left:calc(167 * var(--u)); width:calc(140 * var(--u)); }
  .format .principles li:nth-child(3) { left:calc(17 * var(--u)); top:calc(247 * var(--u)); width:calc(150 * var(--u)); }
  .format .number { display:block; padding:0; font-size:inherit; line-height:1.583333; letter-spacing:0; color:var(--pink); }
  .format-platform { display:block; padding-left:calc(17 * var(--u)); }
  .format-platform::before { content:'•'; display:inline-block; width:calc(13 * var(--u)); margin-left:calc(-13 * var(--u)); }
  .format-photo { width:calc(331 * var(--u)); left:calc(-11 * var(--u)); right:auto; top:calc(56 * var(--u)); bottom:auto; }

  .faq-grid { display:block; padding-top:calc(28 * var(--u)); padding-bottom:calc(112 * var(--u)); }
  .faq #faq-title { width:calc(260 * var(--u)); margin:0 auto calc(46 * var(--u)); text-align:center; text-transform:uppercase; }
  .faq h2 em { color:white!important; }
  .faq-list { width:calc(260 * var(--u)); max-width:calc(100% - 40px); margin:auto; border-color:#e8d9d4aa; }
  .faq details { border-color:#e8d9d4aa; }
  .faq summary { gap:calc(15 * var(--u)); padding:calc(25 * var(--u)) 0; font-size:calc(14 * var(--u)); font-weight:600; line-height:1.35; }
  .faq-plus { flex-basis:calc(24 * var(--u)); width:calc(24 * var(--u)); height:calc(24 * var(--u)); margin-right:calc(7 * var(--u)); }
  .faq-plus::before,.faq-plus::after { top:calc(12 * var(--u)); width:calc(24 * var(--u)); height:calc(1.5 * var(--u)); }
  .faq-answer { padding:0 0 calc(25 * var(--u)); font-size:calc(14 * var(--u)); line-height:1.55; }

  .contact-inner { position:relative; height:calc(550 * var(--u)); text-align:left; }
  .contact #contact-title { position:absolute; top:calc(15 * var(--u)); left:calc(13 * var(--u)); width:calc(227 * var(--u)); margin:0; text-transform:uppercase; }
  .contact-inner>p:not(.eyebrow) { position:absolute; top:calc(255 * var(--u)); left:calc(14 * var(--u)); width:calc(290 * var(--u)); margin:0; font-size:calc(17 * var(--u)); line-height:1.53; font-weight:600; text-transform:uppercase; }
  .contact-actions { position:absolute; top:calc(351 * var(--u)); left:calc(10 * var(--u)); width:calc(300 * var(--u)); max-width:calc(100% - 20 * var(--u)); display:flex; flex-direction:column-reverse; gap:calc(19 * var(--u)); }
  .contact .button { display:block; align-content:center; width:100%; font-size:calc(20 * var(--u)); text-align:center; }

  .mini-invite .contact-inner { height:auto; padding:calc(255 * var(--u)) calc(14 * var(--u)) calc(50 * var(--u)); }
  .mini-invite .contact-inner>p:not(.eyebrow) { position:static; width:auto; margin:0 0 calc(26 * var(--u)); }
  .mini-invite-note { margin-top:calc(10 * var(--u)); font-size:calc(14 * var(--u)); font-weight:400; line-height:1.65; text-transform:none; }
  .mini-invite .contact-actions { position:static; width:calc(300 * var(--u)); max-width:calc(100% + 8 * var(--u)); margin-inline:calc(-4 * var(--u)); }
  #main .mini-invite .button { min-width:0; }

  /* Keep the legal details in normal flow so they stay readable on any phone. */
  .footer { padding:12px 0 0; color:var(--charcoal); }
  .footer>.container { width:calc(100% - 40px); min-height:0; }
  .footer-top { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; margin:0 0 26px; padding-top:28px; border-top:1px solid #44444425; }
  .footer .footer-brand { display:block; margin:0; font-size:clamp(22px,6vw,28px); line-height:1.12; }
  .footer .social-links { gap:8px; }
  .footer .social-links a { width:40px; height:40px; border:1px solid #8c31552a; border-radius:50%; background:#fffaf84d; }
  .footer .social-links img { width:22px; height:22px; }
  .footer-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; font-size:13px; line-height:1.7; font-weight:400; }
  .footer-grid>div { display:block; min-width:0; padding:18px; border:1px solid #ffffff85; border-radius:18px; background:#fffaf847; }
  .footer h3 { margin:0 0 10px; color:var(--berry); font-size:13px; font-weight:700; }
  .footer-grid p { margin:0 0 10px; }
  .footer-grid br { display:none; }
  .footer .seller-name,.footer .seller-registration { display:block; }
  .footer .seller-name { font-weight:600; }
  .footer .seller-registration { margin-top:5px; color:#625652; font-size:12px; }
  .footer .seller-name .mobile-only[hidden] { display:none!important; }
  .footer a { text-decoration:none; }
  .footer-grid>div>a { display:block; width:fit-content; max-width:100%; padding-block:4px; }
  .footer-grid>div>a[href^="mailto"] { color:var(--berry); }
  .footer nav { display:flex; flex-direction:column; align-items:stretch; gap:0; padding:4px 0; font-size:13px; }
  .footer nav a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding-block:10px; border-bottom:1px solid #44444418; }
  .footer nav a::after { content:'↗'; color:var(--berry); font-size:16px; }
  .footer nav a[href="#main"]::after { content:'↑'; }
  .footer .footer-bottom { display:flex; flex-direction:column; gap:4px; margin-top:4px; padding:18px 0 calc(24px + env(safe-area-inset-bottom,0px)); border:0; font-size:10px; line-height:1.6; color:#625652; }
}
