/* ===== リセット・ベース ===== */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --bg-main:    #fef9f3;
      --bg-sub:     #f5ede0;
      --primary:    #7a4e2d;
      --secondary:  #4e7a54;
      --accent:     #d4903a;
      --text:       #2d1f12;
      --text-sub:   #8a7060;
      --card-bg:    #fffaf4;
      --font-serif: 'Shippori Mincho', serif;
      --font-sans:  'Noto Sans JP', sans-serif;
      --font-yomogi:'Yomogi', cursive;
    }

    html { scroll-behavior: smooth; font-size: 17px; }

    body {
      font-family: var(--font-sans);
      background: var(--bg-main);
      color: var(--text);
      line-height: 1.8;
      overflow-x: hidden;
    }

    img { max-width: 100%; display: block; }
    a { text-decoration: none; color: inherit; }

    /* ===== アニメーション ===== */
    .fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s, transform 0.6s; }
    .fade-in.visible { opacity: 1; transform: none; }

    /* ===== メニュータブ ===== */
    .menu-tabs__panel { display: none; }
    .menu-tabs__panel.active { display: block; }

    /* ===== Lightbox ===== */
    .lightbox[hidden], #lightbox[hidden] { display: none !important; }

    /* ===== ヘッダー ===== */
    #header {
      position: sticky;
      top: 0;
      z-index: 1000;
      background: #fff;
      border-bottom: 1px solid #ede3d6;
      transition: box-shadow 0.3s;
    }
    #header.scrolled { box-shadow: 0 2px 12px rgba(122,78,45,0.10); }

    .header__inner {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 24px;
      height: 64px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }

    .header__logo {
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      flex-shrink: 0;
    }
    .header__logo img {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      object-fit: cover;
    }
    .header__logo-text {
      font-family: var(--font-serif);
      font-size: 1rem;
      font-weight: 700;
      color: var(--primary);
      line-height: 1.3;
    }
    .header__logo-text span {
      display: block;
      font-size: 0.65rem;
      font-weight: 400;
      color: var(--text-sub);
      font-family: var(--font-sans);
    }

    #nav ul {
      list-style: none;
      display: flex;
      gap: 4px;
    }
    .nav__link {
      display: block;
      padding: 6px 12px;
      font-size: 0.82rem;
      color: var(--text);
      font-family: var(--font-sans);
      border-radius: 6px;
      transition: background 0.2s, color 0.2s;
    }
    .nav__link:hover {
      background: var(--bg-sub);
      color: var(--primary);
    }

    /* ハンバーガー */
    #hamburger {
      display: none;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      width: 40px;
      height: 40px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 4px;
    }
    #hamburger span {
      display: block;
      width: 24px;
      height: 2px;
      background: var(--primary);
      border-radius: 2px;
      transition: transform 0.3s, opacity 0.3s;
    }
    #hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    #hamburger.open span:nth-child(2) { opacity: 0; }
    #hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    /* ===== 三連フルスクリーンパネル ===== */
    .panels { display: flex; flex-direction: column; }

    .panel {
      position: relative;
      height: 85svh;
      min-height: 500px;
      background-size: cover;
      background-position: center;
      background-attachment: scroll;
      display: flex;
      align-items: center;
    }

    .panel__overlay {
      position: absolute;
      inset: 0;
      background: rgba(15, 8, 2, 0.50);
    }

    .panel__content {
      position: relative;
      z-index: 1;
      padding: 0 60px;
      max-width: 700px;
    }

    .panel--right .panel__content {
      margin-left: auto;
      text-align: right;
    }

    .panel__label {
      font-family: var(--font-sans);
      font-size: calc(0.75rem + 2pt);
      font-weight: 500;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--accent);
      margin-bottom: 16px;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .panel__label::before {
      content: '';
      display: block;
      width: 32px;
      height: 1px;
      background: var(--accent);
    }
    .panel--right .panel__label {
      justify-content: flex-end;
    }
    .panel--right .panel__label::before { display: none; }
    .panel--right .panel__label::after {
      content: '';
      display: block;
      width: 32px;
      height: 1px;
      background: var(--accent);
    }

    .panel__title {
      font-family: var(--font-serif);
      font-size: clamp(2.2rem, 5vw, 3.8rem);
      font-weight: 700;
      color: #fff;
      line-height: 1.35;
      margin-bottom: 16px;
      text-shadow: 0 2px 16px rgba(0,0,0,0.4);
    }

    .panel__sub {
      font-size: 0.9rem;
      color: rgba(255,255,255,0.85);
      margin-bottom: 32px;
      letter-spacing: 0.05em;
    }

    .panel__actions {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
    }
    .panel--right .panel__actions {
      justify-content: flex-end;
    }

    .panel__btn {
      display: inline-block;
      padding: 12px 28px;
      font-size: 0.85rem;
      font-family: var(--font-sans);
      font-weight: 700;
      letter-spacing: 0.1em;
      border-radius: 4px;
      background: var(--accent);
      color: #fff;
      transition: background 0.25s, transform 0.2s;
    }
    .panel__btn:hover { background: #c07e2a; transform: translateY(-2px); }

    .panel__btn--outline {
      background: transparent;
      border: 1.5px solid rgba(255,255,255,0.7);
      color: #fff;
    }
    .panel__btn--outline:hover { background: rgba(255,255,255,0.12); }

    /* ===== セクション共通 ===== */
    .section {
      padding: 96px 24px;
    }
    .section--sub { background: var(--bg-sub); }
    .section--dark { background: var(--primary); color: #fff; }

    .section__label {
      font-family: var(--font-sans);
      font-size: 0.72rem;
      letter-spacing: 0.25em;
      text-transform: uppercase;
      color: var(--accent);
      text-align: center;
      margin-bottom: 10px;
    }

    .section__title {
      font-family: var(--font-serif);
      font-size: clamp(1.6rem, 3.5vw, 2.4rem);
      font-weight: 700;
      text-align: center;
      color: var(--primary);
      margin-bottom: 60px;
      line-height: 1.4;
    }

    .section__title--light { color: #fff; }

    .section__lead {
      max-width: 720px;
      margin: -36px auto 48px;
      text-align: center;
      font-size: 0.95rem;
      line-height: 2;
      color: var(--text-sub);
    }
    @media (max-width: 480px) {
      .section__lead { font-size: 0.85rem; margin: -28px auto 36px; padding: 0 8px; }
    }

    .section__divider {
      width: 48px;
      height: 3px;
      background: var(--accent);
      margin: 0 auto 60px;
      border-radius: 2px;
    }

    /* ===== 店主メッセージ ===== */
    .message__inner {
      max-width: 780px;
      margin: 0 auto;
      text-align: center;
    }

    .message__quote-wrap {
      position: relative;
      padding: 0 40px;
    }

    .message__quote-open,
    .message__quote-close {
      font-family: Georgia, serif;
      font-size: 6rem;
      line-height: 1;
      color: var(--accent);
      opacity: 0.25;
      position: absolute;
    }
    .message__quote-open { top: -20px; left: 0; }
    .message__quote-close { bottom: -60px; right: 0; }

    .message__text {
      font-family: var(--font-yomogi);
      font-size: 1rem;
      line-height: 2.1;
      color: var(--text);
      text-align: justify;
      margin-bottom: 20px;
    }
    .message__text--normal {
      text-align: left;
    }

    .message__owner {
      margin-top: 60px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 12px;
    }
    .message__owner img {
      width: 200px;
      height: auto;
    }
    .message__owner-name {
      font-family: var(--font-yomogi);
      font-size: 1rem;
      color: var(--text-sub);
    }

    /* ===== こだわり ===== */
    .commitment__grid {
      max-width: 900px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 28px;
    }

    .commitment__card {
      background: var(--card-bg);
      border-radius: 16px;
      padding: 40px 32px 36px;
      box-shadow: 0 4px 24px rgba(122,78,45,0.07);
      transition: transform 0.25s, box-shadow 0.25s;
    }
    .commitment__card:hover {
      transform: translateY(-4px);
      box-shadow: 0 8px 32px rgba(122,78,45,0.13);
    }

    .commitment__symbol {
      font-family: var(--font-serif);
      font-size: 4rem;
      font-weight: 700;
      color: var(--primary);
      opacity: 0.18;
      line-height: 1;
      margin-bottom: 12px;
    }

    .commitment__card-title {
      font-family: var(--font-serif);
      font-size: 1.15rem;
      font-weight: 700;
      color: var(--primary);
      margin-bottom: 10px;
    }

    .commitment__card-text {
      font-size: 0.88rem;
      color: var(--text-sub);
      line-height: 1.9;
    }

    /* ===== メニュー ===== */
    .menu__inner {
      max-width: 900px;
      margin: 0 auto;
    }

    .menu-tabs__nav {
      display: flex;
      gap: 0;
      border-bottom: 2px solid #e8ddd2;
      margin-bottom: 40px;
      overflow-x: auto;
    }

    .tab-btn {
      padding: 12px 22px;
      font-family: var(--font-serif);
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--text-sub);
      background: none;
      border: none;
      border-bottom: 3px solid transparent;
      margin-bottom: -2px;
      cursor: pointer;
      white-space: nowrap;
      transition: color 0.2s, border-color 0.2s;
    }
    .tab-btn.active,
    .tab-btn:hover {
      color: var(--primary);
      border-bottom-color: var(--primary);
    }

    .menu-list { list-style: none; }

    .menu-list__item {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      gap: 16px;
      padding: 14px 0;
      border-bottom: 1px dashed #e0d5c5;
    }
    .menu-list__item:last-child { border-bottom: none; }

    .menu-list__name {
      font-family: var(--font-serif);
      font-size: calc(0.97rem + 2pt);
      color: var(--text);
      font-weight: 500;
    }
    .menu-list__note {
      font-size: 0.78rem;
      color: var(--text-sub);
      margin-top: 3px;
    }

    .menu-list__price {
      font-family: var(--font-serif);
      font-size: calc(0.95rem + 2pt);
      color: var(--primary);
      font-weight: 600;
      white-space: nowrap;
    }

    .menu__note {
      margin-top: 28px;
      font-size: 0.8rem;
      color: var(--text-sub);
      border-left: 3px solid var(--accent);
      padding-left: 12px;
    }

    /* ===== メニュー写真 ===== */
    .menu-photos {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-top: 24px;
    }
    .menu-photo__item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
    }
    .menu-photo__img {
      width: 100%;
      aspect-ratio: 4/3;
      object-fit: cover;
      border-radius: 12px;
    }
    .menu-photo__label {
      font-family: var(--font-serif);
      font-size: 0.9rem;
      color: var(--text-sub);
      letter-spacing: 0.05em;
    }
    @media (max-width: 480px) {
      .menu-photos { grid-template-columns: 1fr; }
    }

    /* ===== キッズスペース写真 ===== */
    .menu-babyspace {
      margin-top: 20px;
      text-align: center;
    }
    .menu-babyspace__img {
      width: 100%;
      max-width: 480px;
      aspect-ratio: 4/3;
      object-fit: cover;
      border-radius: 12px;
    }
    .menu-babyspace__caption {
      font-family: var(--font-serif);
      font-size: 0.85rem;
      color: var(--text-sub);
      margin-top: 8px;
      letter-spacing: 0.05em;
    }

    /* ===== フォトストーリー（ギャラリー） ===== */
    .photo-story__lead {
      text-align: center;
      margin-bottom: 48px;
    }
    .photo-story__en {
      font-family: var(--font-sans);
      font-size: 0.75rem;
      letter-spacing: 0.2em;
      color: var(--text-sub);
      margin-bottom: 8px;
    }
    .photo-story__ja {
      font-family: var(--font-serif);
      font-size: 1.3rem;
      color: var(--primary);
      font-weight: 600;
    }

    .gallery__grid {
      max-width: 1100px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }

    .gallery__item {
      position: relative;
      overflow: hidden;
      border-radius: 10px;
      cursor: pointer;
      aspect-ratio: 4/3;
      background: #e8ddd2;
      outline: none;
    }
    .gallery__item:nth-child(1) { grid-row: span 2; aspect-ratio: auto; }
    .gallery__item:nth-child(5) { grid-row: span 2; aspect-ratio: auto; }

    .gallery__item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.4s ease;
    }
    .gallery__item:hover img,
    .gallery__item:focus img { transform: scale(1.06); }

    .gallery__item-overlay {
      position: absolute;
      inset: 0;
      background: rgba(15,8,2,0);
      display: flex;
      align-items: center;
      justify-content: center;
      transition: background 0.3s;
    }
    .gallery__item:hover .gallery__item-overlay,
    .gallery__item:focus .gallery__item-overlay { background: rgba(15,8,2,0.3); }

    .gallery__item-icon {
      color: #fff;
      font-size: 2rem;
      opacity: 0;
      transition: opacity 0.3s;
    }
    .gallery__item:hover .gallery__item-icon,
    .gallery__item:focus .gallery__item-icon { opacity: 1; }

    /* ===== Lightbox ===== */
    #lightbox {
      position: fixed;
      inset: 0;
      z-index: 9000;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    #lightbox-overlay {
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,0.9);
    }

    #lightbox-display {
      position: relative;
      z-index: 1;
      max-width: 90vw;
      max-height: 85vh;
    }
    #lightbox-display img {
      max-width: 90vw;
      max-height: 80vh;
      object-fit: contain;
      border-radius: 6px;
    }

    #lightbox-close {
      position: fixed;
      top: 20px;
      right: 24px;
      z-index: 2;
      background: rgba(255,255,255,0.15);
      border: 1px solid rgba(255,255,255,0.3);
      color: #fff;
      font-size: 1.4rem;
      width: 44px;
      height: 44px;
      border-radius: 50%;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: background 0.2s;
    }
    #lightbox-close:hover { background: rgba(255,255,255,0.25); }

    #lightbox-prev,
    #lightbox-next {
      position: fixed;
      top: 50%;
      transform: translateY(-50%);
      z-index: 2;
      background: rgba(255,255,255,0.12);
      border: 1px solid rgba(255,255,255,0.25);
      color: #fff;
      font-size: 1.2rem;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: background 0.2s;
    }
    #lightbox-prev { left: 16px; }
    #lightbox-next { right: 16px; }
    #lightbox-prev:hover,
    #lightbox-next:hover { background: rgba(255,255,255,0.22); }

    /* ===== 店舗情報 ===== */
    .info__inner {
      max-width: 1100px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 56px;
      align-items: start;
    }

    .info__table {
      width: 100%;
      border-collapse: collapse;
    }
    .info__table tr + tr td { padding-top: 16px; }
    .info__table td {
      padding: 12px 0;
      border-bottom: 1px solid #ede3d6;
      font-size: 0.9rem;
      vertical-align: top;
    }
    .info__table td:first-child {
      font-weight: 600;
      color: var(--primary);
      width: 110px;
      padding-right: 16px;
    }

    .info__map iframe {
      width: 100%;
      height: 380px;
      border: 0;
      border-radius: 12px;
      display: block;
    }

    /* ===== 営業日カレンダー ===== */
    .info__calendar {
      max-width: 560px;
      margin: 48px auto 0;
      text-align: center;
    }
    .info__calendar-title {
      font-family: var(--font-serif);
      font-size: 1.15rem;
      color: var(--primary);
      margin-bottom: 20px;
    }
    .info__calendar-img {
      width: 100%;
      border-radius: 12px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    }
    .info__calendar-note {
      font-size: 0.8rem;
      color: var(--text-sub);
      margin-top: 12px;
    }
    .calendar-switcher {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
    }
    .calendar-switcher__body {
      flex: 1;
      min-width: 0;
    }
    .calendar-switcher__month {
      font-family: var(--font-serif);
      font-size: 1rem;
      color: var(--text-sub);
      letter-spacing: 0.1em;
      margin-bottom: 12px;
    }
    .calendar-switcher__btn {
      flex-shrink: 0;
      width: 42px;
      height: 42px;
      border-radius: 50%;
      border: 1px solid var(--primary);
      background: transparent;
      color: var(--primary);
      font-size: 1.4rem;
      line-height: 1;
      cursor: pointer;
      transition: background 0.25s, color 0.25s, opacity 0.25s;
    }
    .calendar-switcher__btn:hover:not(:disabled) {
      background: var(--primary);
      color: #fff;
    }
    .calendar-switcher__btn:disabled {
      opacity: 0.25;
      cursor: default;
    }
    #cal-img {
      transition: opacity 0.3s ease;
    }
    @media (max-width: 480px) {
      .calendar-switcher {
        gap: 8px;
      }
      .calendar-switcher__btn {
        width: 34px;
        height: 34px;
        font-size: 1.15rem;
      }
    }

    /* ===== ワークショップ ===== */
    .workshop__grid {
      max-width: 900px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 32px;
    }

    .workshop__card {
      background: var(--card-bg);
      border-radius: 16px;
      padding: 40px 32px;
      box-shadow: 0 4px 20px rgba(122,78,45,0.08);
    }

    .workshop__icon {
      font-size: 2.8rem;
      margin-bottom: 16px;
    }

    .workshop__card-title {
      font-family: var(--font-serif);
      font-size: 1.15rem;
      font-weight: 700;
      color: var(--primary);
      margin-bottom: 12px;
    }

    .workshop__card-text {
      font-size: 0.88rem;
      color: var(--text-sub);
      line-height: 1.9;
    }

    /* ===== SNSバナー ===== */
    .sns__inner {
      max-width: 680px;
      margin: 0 auto;
      text-align: center;
    }

    .sns__eyebrow {
      font-size: 0.75rem;
      letter-spacing: 0.2em;
      color: rgba(255,255,255,0.6);
      margin-bottom: 16px;
      text-transform: uppercase;
    }

    .sns__title {
      font-family: var(--font-serif);
      font-size: clamp(1.6rem, 3vw, 2.4rem);
      font-weight: 700;
      color: #fff;
      margin-bottom: 12px;
      line-height: 1.4;
    }

    .sns__sub {
      font-size: 0.9rem;
      color: rgba(255,255,255,0.75);
      margin-bottom: 40px;
    }

    .sns__btns {
      display: flex;
      gap: 16px;
      justify-content: center;
      flex-wrap: wrap;
    }

    .sns__btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 14px 32px;
      border-radius: 50px;
      font-family: var(--font-sans);
      font-size: 0.9rem;
      font-weight: 700;
      transition: transform 0.2s, opacity 0.2s;
    }
    .sns__btn:hover { transform: translateY(-2px); opacity: 0.9; }

    .sns__btn--instagram {
      background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
      color: #fff;
    }

    .sns__btn--tel {
      background: rgba(255,255,255,0.15);
      border: 1.5px solid rgba(255,255,255,0.5);
      color: #fff;
    }

    /* ===== フッター ===== */
    footer {
      background: var(--text);
      color: rgba(255,255,255,0.75);
      padding: 48px 24px 32px;
      text-align: center;
    }

    .footer__logo {
      font-family: var(--font-serif);
      font-size: 1.3rem;
      font-weight: 700;
      color: #fff;
      margin-bottom: 6px;
    }
    .footer__sub {
      font-size: 0.78rem;
      margin-bottom: 24px;
    }
    .footer__nav {
      list-style: none;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 6px 20px;
      margin-bottom: 28px;
    }
    .footer__nav a {
      font-size: 0.8rem;
      color: rgba(255,255,255,0.55);
      transition: color 0.2s;
    }
    .footer__nav a:hover { color: #fff; }

    .footer__copy {
      font-size: 0.73rem;
      color: rgba(255,255,255,0.35);
    }

    /* ===== レスポンシブ ===== */
    @media (max-width: 768px) {
      #nav {
        display: none;
        position: absolute;
        top: 64px;
        left: 0;
        right: 0;
        background: #fff;
        border-top: 1px solid #ede3d6;
        padding: 12px 0 16px;
        box-shadow: 0 8px 24px rgba(0,0,0,0.1);
      }
      #nav.open { display: block; }
      #nav ul {
        flex-direction: column;
        gap: 0;
        padding: 0 16px;
      }
      .nav__link {
        padding: 12px 16px;
        font-size: 0.95rem;
      }
      #hamburger { display: flex; }

      .panel { background-attachment: scroll; height: 50svh; }
      .panel__content { padding: 0 28px; max-width: 100%; }
      .panel__title { font-size: clamp(1.8rem, 7vw, 2.8rem); }
      .panel--right .panel__content { margin-left: 0; text-align: left; }
      .panel--right .panel__label { justify-content: flex-start; }
      .panel--right .panel__label::before { display: block; }
      .panel--right .panel__label::after { display: none; }
      .panel--right .panel__actions { justify-content: flex-start; }

      .section { padding: 72px 20px; }

      .commitment__grid { grid-template-columns: 1fr; gap: 20px; }
      .gallery__grid { grid-template-columns: repeat(2, 1fr); }
      .gallery__item:nth-child(1),
      .gallery__item:nth-child(5) { grid-row: auto; aspect-ratio: 4/3; }

      .info__inner { grid-template-columns: 1fr; gap: 32px; }
      .workshop__grid { grid-template-columns: 1fr; gap: 24px; }

      .message__quote-wrap { padding: 0 16px; }
      .message__quote-open,
      .message__quote-close { font-size: 4rem; }
      /* ご挨拶文のフォントをスマホで小さく */
      .message__text { font-size: 0.88rem; line-height: 1.75; }
      .message__owner-name { font-size: 0.88rem; }
    }

    @media (max-width: 768px) {
      /* 横2マス写真をタブレットでは全幅に */
      .gallery__item[style*="grid-column: span 2"] { aspect-ratio: 16/9 !important; }
    }
    @media (max-width: 480px) {
      .gallery__grid { grid-template-columns: repeat(2, 1fr); }
      .panel__actions { flex-direction: column; }
      /* パネル1の背景を左寄せにして丸いライトを見せる（スマホのみ） */
      .panels .panel:first-child { background-position: left center; }
      /* パネル3のボタンの横幅を半分に（縦幅はそのまま・スマホのみ） */
      .panel__actions .panel__btn {
        width: 50%;
        white-space: nowrap;
        text-align: center;
        padding-left: 12px;
        padding-right: 12px;
      }
      /* 横2マス写真をスマホでは他と同じ1マスに */
      .gallery__item[style*="grid-column: span 2"] {
        grid-column: auto !important;
        aspect-ratio: 4/3 !important;
      }
    }