:root { --ink:#0b0b0b; --paper:#f7f5f1; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; overflow-x:hidden; color:var(--ink); background:#fff; font-family:"DM Sans",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
body.no-scroll { overflow:hidden; }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button { color:inherit; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
[hidden] { display:none!important; }
.skip-link { position:fixed; top:8px; left:8px; z-index:1000; transform:translateY(-160%); padding:10px 16px; color:#111; background:#fff; border-radius:999px; }
.skip-link:focus { transform:none; }
.sr-only,.sr-only:not(:focus):not(:active) { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.site-header { position:absolute; inset:0 0 auto; z-index:20; height:73px; display:flex; align-items:center; justify-content:space-between; padding:24px 60px; background:rgba(235,238,234,.78); backdrop-filter:blur(12px); }
.header-left,.header-actions,.main-nav { display:flex; align-items:center; }
.header-left { gap:32px; }
.brand { width:141px; }
.brand img { width:100%; height:25px; object-fit:contain; }
.icon-button { position:relative; display:grid; place-items:center; padding:0; border:0; background:transparent; cursor:pointer; }
.menu-button { width:16px; height:12px; }
.main-nav { gap:62px; font-size:14px; font-weight:500; }
.header-actions { gap:38px; }
.header-actions .icon-button { width:25px; height:25px; }
.header-actions img { width:100%; height:100%; object-fit:contain; }
.cart-count { position:absolute; right:-8px; top:-8px; min-width:18px; height:18px; display:grid; place-items:center; padding:0 4px; color:#fff; background:#111; border:2px solid #fff; border-radius:10px; font-size:9px; font-weight:700; }
.mobile-menu { display:none; }
.mobile-status-bar,.mobile-goal-nav,.mobile-filter-label,.mobile-shop-grid,.mobile-trust-label { display:none; }

.shop-hero { position:relative; height:510px; display:flex; align-items:center; justify-content:center; overflow:hidden; background:url('/assets/shop-hero.png') center/cover no-repeat; }
.shop-hero::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,.3); }
.shop-hero-copy { position:relative; z-index:1; display:flex; flex-direction:column; align-items:flex-start; width:463px; padding-top:2px; color:#fff; text-transform:uppercase; }
.shop-hero-copy span { font-size:48px; line-height:normal; font-weight:600; white-space:nowrap; }
.shop-hero-copy strong { margin-top:-4px; color:#fff8c9; font-size:104px; line-height:100px; letter-spacing:-.035em; }

.catalogue { height:3372px; padding:50px 40px 0; }
.filter-row { height:38px; display:flex; align-items:center; gap:12px; overflow-x:auto; scrollbar-width:none; }
.filter-row::-webkit-scrollbar { display:none; }
.filter-row button { flex:0 0 auto; height:38px; padding:0 14px; border:0; background:#f7f7f7; border-radius:999px; font-size:12px; cursor:pointer; transition:.2s; }
.filter-row button.active { color:#fff; background:#050505; }
.shop-grid { margin-top:24px; }
.catalogue-row { height:520px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-bottom:20px; }
.catalogue-row.tall-row { height:540px; }
.catalogue-row:last-child { margin-bottom:0; }
.catalogue-row.filtered { height:auto; min-height:0; align-items:start; }
.catalogue-row.filtered:has(.catalogue-card:not([hidden])) { margin-bottom:20px; }
.catalogue-card { min-width:0; height:520px; display:flex; flex-direction:column; }
.catalogue-card.tall { height:540px; }
.catalogue-image { position:relative; height:317px; display:flex; align-items:center; justify-content:center; overflow:hidden; background:var(--paper); border-radius:12px; }
.catalogue-card.tall .catalogue-image { height:337px; }
.catalogue-eyebrow { position:absolute; z-index:1; top:20px; left:20px; right:20px; height:13px; display:flex; align-items:center; justify-content:space-between; font-size:10px; font-weight:500; letter-spacing:.01em; }
.wish { width:23px; height:23px; display:grid; place-items:center; padding:0; border:0; background:transparent; font-size:27px; line-height:1; cursor:pointer; }
.wish.saved { color:#e4412d; }
.catalogue-image > img { flex:0 0 auto; object-fit:fill; mix-blend-mode:darken; }
.catalogue-card[data-product="omega"] .catalogue-image > img { width:340px; height:376px; }
.catalogue-card[data-product="hydro"] .catalogue-image > img { width:243px; height:243px; }
.catalogue-card[data-product="shroom"] .catalogue-image > img { width:243px; height:243px; }
.catalogue-card[data-product="wonder"] .catalogue-image > img { width:223px; height:223px; }
.catalogue-card[data-product="gastro"] .catalogue-image > img,.catalogue-card[data-product="magnesium"] .catalogue-image > img { width:300px; height:300px; }
.catalogue-info { height:203px; display:flex; flex-direction:column; gap:12px; }
.catalogue-info h3 { height:50px; display:flex; align-items:center; margin:0; padding:10px 0 14px; border-bottom:1px solid #dedede; font-size:20px; line-height:26px; text-transform:uppercase; }
.catalogue-features { height:31px; display:flex; flex-direction:column; gap:3px; color:#989898; font-size:11px; font-weight:500; }
.catalogue-features span::before { content:"♧"; display:inline-block; width:22px; color:#252525; }
.catalogue-features span + span::before { content:"⌁"; }
.catalogue-price { height:21px; display:flex; align-items:center; gap:4px; border-top:1px solid #dedede; padding-top:12px; font-size:16px; }
.catalogue-price strong { font-size:16px; }
.catalogue-price del { color:#8e8c8b; font-weight:400; }
.catalogue-price em { margin-left:auto; padding:4px 6px; color:#fff; background:#000; border-radius:999px; font-size:10px; line-height:13px; font-style:normal; font-weight:700; }
.catalogue-buy { height:41px; display:flex; gap:8px; margin-top:auto; }
.catalogue-buy button { height:41px; border-radius:999px; font-size:14px; font-weight:600; cursor:pointer; }
.variant { flex:1.08; display:flex; align-items:center; justify-content:space-between; padding:0 13px; border:1px solid #000; background:#fff; }
.add { flex:1; display:flex; align-items:center; justify-content:center; gap:12px; padding:0 16px; border:1.5px solid #000; color:#fff; background:#000; white-space:nowrap; }
.add span { font-size:18px; }
.benefit-card { height:520px; grid-column:span 2; display:flex; flex-direction:column; justify-content:center; padding:56px 20px 48px; overflow:hidden; color:#fff; background:linear-gradient(rgba(0,0,0,.3),rgba(0,0,0,.3)),url('/assets/shop-benefits.png') center/cover no-repeat; border-radius:12px; }
.benefit-card h3 { margin:0; font-size:32px; line-height:1.08; }
.benefit-list { display:grid; grid-template-columns:repeat(4,1fr); margin-top:54px; text-align:center; font-size:16px; }
.benefit-list div { display:flex; flex-direction:column; align-items:center; gap:10px; }
.benefit-list img { width:57px; height:57px; object-fit:contain; }
.benefit-card.left { background-position:center; }

.routine { height:485px; padding:40px 0; }
.routine-inner { position:relative; height:405px; overflow:hidden; background:linear-gradient(100deg,#c5d8f6 0%,#e5edfd 70%,#fff 100%); }
.routine-copy { position:absolute; z-index:1; top:88px; left:100px; width:974px; }
.routine h2 { margin:0; font-size:56px; line-height:58px; text-transform:uppercase; }
.routine p { width:754px; margin:27px 0 27px; color:#6d727b; font-size:18px; line-height:29px; }
.routine a { width:372px; height:59px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; background:#fff; border-radius:999px; font-size:14px; font-weight:600; }
.routine a span { font-size:28px; font-weight:300; }
.routine-inner > img { position:absolute; top:-14px; right:50px; width:355px; height:443px; object-fit:contain; }

footer { height:846px; padding:50px 50px 0; overflow:hidden; color:#fff; background:#070707; }
.trust-row { height:148px; display:grid; grid-template-columns:repeat(6,1fr); gap:20px; }
.trust-row > div { display:flex; flex-direction:column; align-items:center; text-align:center; }
.trust-row span { width:71px; height:71px; display:grid; place-items:center; border:1px solid #464646; border-radius:50%; }
.trust-row img { width:31px; height:31px; object-fit:contain; }
.trust-row p { margin:12px 0 0; color:#efefef; font-size:13px; line-height:15px; }
.footer-brand { height:35px; display:flex; align-items:center; gap:18px; margin:50px 0; }
.footer-brand span { height:1px; flex:1; background:#303030; }
.footer-brand b { color:#777; font-size:16px; font-weight:300; }
.footer-brand img { width:214px; max-height:38px; }
.footer-main { height:170px; display:grid; grid-template-columns:125px minmax(390px,1fr) 180px 180px; gap:24px; align-items:start; }
.newsletter-image { width:125px; height:125px; object-fit:cover; border-radius:7px; }
.newsletter h2 { margin:0 0 20px; font-size:36px; line-height:40px; text-transform:uppercase; }
.newsletter-form { width:460px; height:61px; display:flex; padding:5px; background:#202020; border:1px solid #2b2b2b; border-radius:7px; }
.newsletter-form input { flex:1; min-width:0; padding:0 14px; border:0; outline:0; color:#fff; background:transparent; font-size:13px; }
.newsletter-form button { flex:0 0 51px; border:0; background:#fff; border-radius:7px; font-size:22px; cursor:pointer; }
.newsletter p { max-width:460px; margin:16px 0 0; color:#525252; font-size:10px; line-height:13px; }
.footer-links { display:flex; flex-direction:column; gap:9px; padding-top:12px; }
.footer-links h3 { margin:0 0 7px; color:#444; font-size:10px; font-weight:500; text-transform:uppercase; }
.footer-links a { font-size:14px; }
.socials { height:44px; display:flex; gap:12px; margin-top:47px; }
.socials a { width:44px; height:44px; display:grid; place-items:center; background:#5b5b5b; border-radius:50%; }
.socials img { width:17px; height:17px; }
.marquee { height:126px; margin:50px -50px 0; overflow:hidden; white-space:nowrap; }
.marquee span { display:block; font-size:68px; line-height:90px; font-weight:600; letter-spacing:-.03em; animation:marquee 30s linear infinite; }
@keyframes marquee { to { transform:translateX(-45%); } }
.legal { height:16px; display:flex; align-items:center; gap:28px; padding-top:0; color:#666; font-size:9px; }
.legal span { margin-right:auto; }

.drawer-backdrop { position:fixed; inset:0; z-index:90; opacity:0; visibility:hidden; background:rgba(0,0,0,.48); transition:.3s; }
.drawer-backdrop.open { opacity:1; visibility:visible; }
.cart-drawer { position:fixed; inset:0 0 0 auto; z-index:100; width:min(430px,100%); display:flex; flex-direction:column; padding:28px; background:#fff; transform:translateX(100%); transition:transform .35s ease; }
.cart-drawer.open { transform:none; }
.cart-head { display:flex; align-items:center; justify-content:space-between; padding-bottom:20px; border-bottom:1px solid #ddd; }
.cart-head h2 { margin:0; font-size:32px; }
.cart-close { border:0; background:transparent; font-size:32px; cursor:pointer; }
.cart-items { overflow:auto; }
.cart-line { display:grid; grid-template-columns:94px 1fr; gap:16px; padding:18px 0; border-bottom:1px solid #eee; }
.cart-line img { width:94px; height:94px; object-fit:contain; background:var(--paper); border-radius:8px; }
.cart-line > div { display:flex; flex-direction:column; gap:8px; font-size:13px; }
.quantity { display:flex; align-items:center; gap:12px; margin-top:auto; }
.quantity button { width:26px; height:26px; border:1px solid #bbb; background:#fff; border-radius:50%; cursor:pointer; }
.cart-empty { margin:auto; color:#777; }
.cart-footer { margin-top:auto; padding-top:20px; border-top:1px solid #ddd; }
.cart-footer > div { display:flex; justify-content:space-between; margin-bottom:16px; }
.cart-footer > button { width:100%; height:50px; border:0; color:#fff; background:#111; border-radius:999px; text-transform:uppercase; font-weight:700; }

@media (max-width:900px) {
  .site-header { height:54px; padding:17px 14px; }
  .header-left { gap:14px; }
  .brand { width:95px; }
  .brand img { height:18px; }
  .main-nav,.search-button,.account-button { display:none; }
  .header-actions { gap:0; }
  .mobile-menu { position:absolute; top:54px; left:0; right:0; display:flex; flex-direction:column; gap:18px; padding:24px; background:#fff; transform:translateY(-130%); opacity:0; transition:.25s; z-index:-1; }
  .mobile-menu.open { transform:none; opacity:1; }
  .shop-hero { height:430px; background-position:58% center; }
  .shop-hero-copy { width:auto; align-items:center; padding-top:55px; }
  .shop-hero-copy span { font-size:25px; }
  .shop-hero-copy strong { font-size:57px; line-height:58px; }
  .catalogue { height:auto; padding:24px 12px 32px; }
  .filter-row { height:36px; }
  .filter-row button { height:34px; font-size:11px; }
  .catalogue-row,.catalogue-row.tall-row { height:auto; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
  .catalogue-card,.catalogue-card.tall { height:408px; }
  .catalogue-image,.catalogue-card.tall .catalogue-image { height:220px; }
  .catalogue-image > img { transform:scale(.8); }
  .catalogue-eyebrow { top:12px; left:12px; right:12px; font-size:8px; }
  .catalogue-info { height:188px; gap:7px; }
  .catalogue-info h3 { height:44px; padding:8px 0; font-size:13px; line-height:16px; }
  .catalogue-features { font-size:8px; }
  .catalogue-price { font-size:12px; }
  .catalogue-price strong { font-size:13px; }
  .catalogue-price em { font-size:7px; }
  .catalogue-buy { height:34px; gap:5px; }
  .catalogue-buy button { height:34px; padding-inline:8px; font-size:9px; }
  .add span { display:none; }
  .benefit-card { grid-column:1/-1; height:360px; padding:30px 18px; }
  .benefit-card h3 { font-size:23px; }
  .benefit-list { gap:5px; margin-top:50px; font-size:10px; }
  .benefit-list span { width:42px; height:42px; }
  .routine { height:380px; padding:20px 0; }
  .routine-inner { height:340px; }
  .routine-copy { top:34px; left:24px; width:calc(100% - 48px); }
  .routine h2 { max-width:270px; font-size:36px; line-height:38px; }
  .routine p { width:80%; font-size:13px; line-height:18px; }
  .routine a { width:220px; height:48px; }
  .routine-inner > img { right:-60px; top:40px; width:230px; height:300px; opacity:.55; }
  footer { height:auto; min-height:938px; padding:46px 24px; }
  .trust-row { height:auto; grid-template-columns:repeat(3,1fr); row-gap:26px; }
  .trust-row p { font-size:10px; }
  .footer-brand { margin:34px 0; }
  .footer-main { height:auto; grid-template-columns:repeat(2,1fr); gap:28px 18px; }
  .newsletter-image { display:none; }
  .newsletter { grid-column:1/-1; }
  .newsletter h2 { font-size:30px; }
  .newsletter-form { width:100%; }
  .socials { justify-content:center; margin:30px 0; }
  .marquee { margin-inline:-24px; }
  .marquee span { font-size:38px; }
  .legal { flex-wrap:wrap; gap:12px 20px; }
  .legal span { flex:0 0 100%; }
}

@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }

@media (max-width:900px) {
  .mobile-status-bar { position:absolute; inset:0 0 auto; z-index:30; height:49px; display:flex; align-items:flex-end; justify-content:space-between; padding:0 20px 14px; background:#fff; }
  .mobile-status-bar .status-time { width:33px; height:15px; margin-left:11px; }
  .mobile-status-bar > span { position:absolute; right:20px; bottom:14px; width:69px; height:14px; display:block!important; }
  .mobile-status-bar > span img { position:absolute; top:0; display:block!important; object-fit:fill; }
  .mobile-status-bar > span img:nth-child(1) { left:0; width:20px; height:14px; }
  .mobile-status-bar > span img:nth-child(2) { left:24px; width:16px; height:14px; }
  .mobile-status-bar > span img:nth-child(3) { left:44px; width:25px; height:14px; }

  .site-header { top:49px; height:90px; display:block; padding:0 12px; background:rgba(255,255,255,.92); backdrop-filter:blur(18px); }
  .header-left,.header-actions { position:absolute; top:0; height:53px; }
  .header-left { left:12px; gap:16px; padding-right:10px; }
  .brand { width:102px; }
  .brand img { width:102px; height:19px; }
  .menu-button { width:16px; height:12px; }
  .header-actions { left:220.5px; width:169.5px; display:block; padding:0; }
  .header-actions .icon-button,.header-actions .search-button,.header-actions .account-button,.header-actions .cart-button { display:grid; width:16px; height:19px; }
  .header-actions img { width:16px; height:16px; }
  .header-actions .search-button { position:absolute; top:17px; left:40px; }
  .header-actions .account-button { position:absolute; top:17px; left:80px; }
  .header-actions .cart-button { position:absolute; top:17px; left:121px; }
  .cart-count { display:none; }
  .mobile-goal-nav { position:absolute; left:12px; right:12px; bottom:0; width:auto; height:37px; display:grid; grid-template-columns:repeat(6,auto); align-items:start; justify-content:space-between; padding-top:9px; border-bottom:1px solid rgba(255,255,255,.8); font-size:12px; line-height:15px; font-weight:600; letter-spacing:.12px; }
  .mobile-menu { top:90px; }

  .shop-hero { height:589px; display:block; background:none; }
  .shop-hero::before { content:""; position:absolute; inset:49px 0 0; background:url('/assets/shop-hero-mobile.png') center/cover no-repeat; }
  .shop-hero::after { inset:49px 0 0; background:rgba(0,0,0,.3); }
  .shop-hero-copy { position:absolute; z-index:1; top:294px; left:71px; width:auto; align-items:flex-start; padding:0; }
  .shop-hero-copy span { font-size:24px; line-height:normal; }
  .shop-hero-copy strong { margin:0; font-size:49px; line-height:34px; letter-spacing:4.9px; }

  .catalogue { height:4665px; padding:0; overflow:hidden; }
  .filter-row { height:55px; padding:17px 12px 0; overflow:visible; }
  .filter-row button { display:none; }
  .filter-row button.active { position:relative; width:366px; height:38px; display:flex; align-items:center; justify-content:flex-start; padding:0 16px; color:#0a0a0a; background:#fff; border:1px solid #dedede; border-radius:4px; font-size:14px; font-weight:600; }
  .filter-row button.active::after { content:"⌄"; margin-left:auto; font-size:18px; font-weight:400; }
  .desktop-filter-label { display:none; }
  .mobile-filter-label { display:inline; }
  .shop-grid { display:none; }
  .mobile-shop-grid { display:flex; flex-direction:column; gap:16px; margin-top:16px; }
  .mobile-product-row { height:379px; display:grid; grid-template-columns:177px 177px; gap:12px; padding:0 12px; }
  .mobile-product-row .catalogue-card { width:177px; height:379px; display:block; }
  .mobile-product-row .catalogue-image { width:177px; height:177px; border-radius:6px; }
  .mobile-product-row .catalogue-eyebrow { top:12px; left:12px; right:12px; height:10px; font-size:8px; }
  .mobile-product-row .wish { width:14px; height:14px; font-size:18px; }
  .mobile-product-row .catalogue-image > img { transform:none; }
  .mobile-product-row .catalogue-card[data-product="shroom"] .catalogue-image > img { width:162px; height:162px; }
  .mobile-product-row .catalogue-card[data-product="gastro"] .catalogue-image > img,.mobile-product-row .catalogue-card[data-product="magnesium"] .catalogue-image > img { width:176px; height:176px; }
  .mobile-product-row .catalogue-info { position:relative; width:177px; height:202px; display:block; }
  .mobile-product-row .catalogue-info h3 { position:absolute; top:0; left:0; width:177px; height:41px; display:block; margin:0; padding-top:10px; border-bottom:1px solid #dedede; font-size:14.3px; line-height:19px; }
  .mobile-product-row .catalogue-features { position:absolute; top:53px; left:0; width:177px; height:42px; display:flex; gap:3px; padding-bottom:12px; border-bottom:1px solid #dedede; font-size:10px; line-height:13px; }
  .mobile-product-row .catalogue-features span::before { width:22px; }
  .mobile-product-row .catalogue-price { position:absolute; top:106px; left:0; width:177px; height:18px; padding:0; border:0; font-size:12px; }
  .mobile-product-row .catalogue-price strong { font-size:14px; }
  .mobile-product-row .catalogue-price em { padding:2px 5px; font-size:8.1px; line-height:11px; }
  .mobile-product-row .catalogue-buy { position:absolute; top:136px; left:0; width:177px; height:66px; display:flex; flex-direction:column; gap:6px; }
  .mobile-product-row .catalogue-buy button { width:177px; height:30px; flex:0 0 30px; padding:0 12px; font-size:11px; }
  .mobile-product-row .variant { flex-direction:row; }
  .mobile-product-row .add { justify-content:space-between; }
  .mobile-product-row .add span { display:inline; font-size:12px; }
  .mobile-shop-grid .benefit-card { width:390px; height:314px; display:flex; grid-column:auto; justify-content:center; gap:60px; padding:32px 12px; border-radius:0; background:linear-gradient(rgba(0,0,0,.4),rgba(0,0,0,.4)),url('/assets/shop-benefits.png') center/cover no-repeat; }
  .mobile-shop-grid .benefit-card h3 { margin:0; font-size:32px; line-height:normal; }
  .mobile-shop-grid .benefit-list { width:366px; height:64px; margin:0; gap:0; font-size:14px; }
  .mobile-shop-grid .benefit-list div { height:64px; justify-content:space-between; gap:0; }
  .mobile-shop-grid .benefit-list img { width:32px; height:32px; }

  .routine { height:674px; padding:20px 0 0; }
  .routine-inner { height:654px; display:block; background:linear-gradient(145deg,#c4d8f8,#ecf2ff); }
  .routine-inner > img { position:absolute; top:20px; left:20px; right:auto; width:370px; height:383px; object-fit:contain; opacity:1; }
  .routine-copy { position:absolute; top:435px; left:20px; width:350px; }
  .routine h2 { max-width:none; margin:0; font-size:32px; line-height:48px; white-space:nowrap; }
  .routine p { width:350px; margin:16px 0; color:#6d727b; font-size:14px; line-height:17px; }
  .routine a { width:350px; height:51px; padding:0 16px; font-size:14px; }

  footer { position:relative; height:938px; min-height:938px; padding:0; }
  .trust-row { position:absolute; top:46px; left:24px; width:342px; height:196px; display:grid; grid-template-columns:repeat(3,100.666px); grid-template-rows:repeat(2,88px); gap:20px; }
  .trust-row > div { width:100.666px; height:88px; }
  .trust-row > div:nth-child(1) { order:1; }
  .trust-row > div:nth-child(3) { order:2; }
  .trust-row > div:nth-child(5) { order:3; }
  .trust-row > div:nth-child(2) { order:4; }
  .trust-row > div:nth-child(4) { order:5; }
  .trust-row > div:nth-child(6) { order:6; }
  .trust-row span { width:52px; height:52px; }
  .trust-row img { width:24px; height:24px; }
  .trust-row p { margin:8px 0 0; font-size:10px; line-height:12px; }
  .desktop-trust-label { display:none; }
  .mobile-trust-label { display:inline; }
  .footer-brand { position:absolute; top:262px; left:24px; width:342px; height:67px; margin:0; }
  .footer-brand img { width:106px; height:19px; }
  .footer-main { position:absolute; top:349px; left:24px; width:342px; height:366px; display:grid; grid-template-columns:171px 171px; grid-template-rows:126px 220px; gap:20px 0; }
  .footer-main .footer-links { height:126px; padding:0; gap:8px; }
  .footer-links h3 { margin:0 0 7px; font-size:9px; }
  .footer-links a { font-size:14px; line-height:17px; }
  .footer-main .newsletter { grid-column:1/-1; grid-row:2; padding-top:42px; }
  .newsletter h2 { margin:0 0 16px; font-size:24px; line-height:29px; }
  .newsletter-form { width:342px; height:49px; padding:4px; }
  .newsletter-form button { flex-basis:41px; }
  .newsletter p { width:342px; margin:12px 0 0; font-size:10px; line-height:12px; }
  .socials { position:absolute; top:739px; left:114.5px; width:161px; height:44px; justify-content:flex-start; gap:14px; margin:0; }
  .socials a { width:44px; height:44px; }
  .marquee { position:absolute; top:807px; left:0; width:390px; height:29px; margin:0; }
  .marquee span { font-size:23px; line-height:29px; }
  .legal { position:absolute; top:852px; left:24px; width:342px; height:40px; display:flex; flex-wrap:wrap; justify-content:center; gap:8px 20px; color:#666; font-size:9px; text-align:center; }
  .legal span { flex:0 0 100%; margin:0; }
}
