:root {
      --marina-text: #16323a;
      --marina-muted: #64777d;
      --marina-line: #dce8e9;
      --marina-bg: #f5f9f9;
      --marina-surface: #fff;
      --marina-sea: #178b99;
      --marina-sea-dark: #0d626c;
      --marina-sand: #d9974d;
      --marina-green: #56805e;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      color: var(--marina-text);
      background: var(--marina-bg);
      font-family:
        Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
        "Segoe UI", sans-serif;
    }

    a {
      text-underline-offset: .2em;
    }

    .marina-hero {
      position: relative;
      min-height: clamp(520px, 68vh, 720px);
      display: grid;
      align-items: end;
      overflow: hidden;
      color: #fff;
      background: #17343a;
    }

    .marina-hero__picture,
    .marina-hero__image,
    .marina-hero__overlay {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }

    .marina-hero__picture {
      z-index: 0;
      display: block;
    }

    .marina-hero__image {
      object-fit: cover;
      object-position: center 55%;
    }

    .marina-hero__overlay {
      z-index: 1;
      pointer-events: none;
      background: linear-gradient(
        180deg,
        rgba(5, 24, 30, .14) 0%,
        rgba(5, 24, 30, .30) 42%,
        rgba(5, 24, 30, .92) 100%
      );
    }

    .marina-hero::after {
      content: "";
      position: absolute;
      inset: auto 0 0;
      height: 150px;
      pointer-events: none;
      background: linear-gradient(to bottom, transparent, var(--marina-bg));
    }

    .marina-hero__content {
      position: relative;
      z-index: 2;
      padding-top: 150px;
      padding-bottom: clamp(6rem, 11vw, 9rem);
    }

    .marina-breadcrumb {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .55rem;
      margin-bottom: 1.2rem;
      color: rgba(255,255,255,.86);
      font-size: .82rem;
      font-weight: 720;
    }

    .marina-breadcrumb a {
      color: #fff;
      text-decoration: none;
    }

    .marina-kicker {
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      margin-bottom: 1rem;
      padding: .52rem .82rem;
      font-size: .76rem;
      font-weight: 850;
      letter-spacing: .08em;
      text-transform: uppercase;
      border: 1px solid rgba(255,255,255,.36);
      border-radius: 999px;
      background: rgba(11,43,50,.38);
      backdrop-filter: blur(8px);
    }

    .marina-hero h1 {
      max-width: 930px;
      margin: 0;
      font-size: clamp(2.7rem, 7vw, 5.4rem);
      font-weight: 900;
      line-height: 1.01;
      letter-spacing: -.055em;
      text-wrap: balance;
    }

    .marina-hero__lead {
      max-width: 780px;
      margin: 1.25rem 0 0;
      color: rgba(255,255,255,.90);
      font-size: clamp(1.05rem, 2.2vw, 1.35rem);
      line-height: 1.55;
    }

    .marina-share {
      display: flex;
      flex-wrap: wrap;
      gap: .7rem;
      margin-top: 1.5rem;
    }

    .marina-share__button {
      appearance: none;
      display: inline-flex;
      min-height: 46px;
      align-items: center;
      justify-content: center;
      gap: .48rem;
      padding: .68rem .92rem;
      color: #fff;
      text-decoration: none;
      border: 1px solid rgba(255,255,255,.34);
      border-radius: 14px;
      background: rgba(11,43,50,.46);
      backdrop-filter: blur(9px);
      cursor: pointer;
      font: inherit;
      font-size: .84rem;
      font-weight: 820;
      transition:
        transform .2s ease,
        border-color .2s ease,
        background-color .2s ease;
    }

    .marina-share__button:hover,
    .marina-share__button:focus-visible {
      color: #fff;
      transform: translateY(-2px);
      border-color: rgba(255,255,255,.7);
      background: rgba(11,43,50,.72);
    }

    .marina-share__status {
      align-self: center;
      color: rgba(255,255,255,.9);
      font-size: .8rem;
      font-weight: 760;
    }

    .marina-main {
      position: relative;
      z-index: 3;
      padding-bottom: 4rem;
    }

    .marina-summary {
      margin-top: -4rem;
      padding: clamp(1.4rem, 4vw, 2.4rem);
      border: 1px solid var(--marina-line);
      border-radius: 30px;
      background: rgba(255,255,255,.97);
      box-shadow: 0 22px 60px rgba(28,55,64,.12);
    }

    .marina-summary__grid {
      display: grid;
      grid-template-columns: minmax(0, 1.5fr) minmax(280px, .5fr);
      gap: clamp(1.3rem, 4vw, 2.3rem);
    }

    .marina-summary h2,
    .marina-section h2 {
      margin: 0;
      font-size: clamp(1.7rem, 3.7vw, 2.5rem);
      font-weight: 880;
      letter-spacing: -.04em;
    }

    .marina-summary p,
    .marina-section p {
      color: var(--marina-muted);
      font-size: 1.02rem;
      line-height: 1.78;
    }

    .marina-summary p:last-child,
    .marina-section p:last-child {
      margin-bottom: 0;
    }

    .marina-facts {
      display: grid;
      gap: .85rem;
    }

    .marina-fact {
      position: relative;
      display: flex;
      overflow: hidden;
      align-items: center;
      gap: 1rem;
      padding: 1.05rem;
      border: 1px solid var(--fact-border);
      border-radius: 21px;
      background:
        radial-gradient(
          circle at 92% 12%,
          var(--fact-glow),
          transparent 7.5rem
        ),
        linear-gradient(145deg, var(--fact-soft), #fff 70%);
      box-shadow: 0 13px 32px rgba(28,55,64,.065);
    }

    .marina-fact::after {
      content: "";
      position: absolute;
      top: -34px;
      right: -28px;
      width: 92px;
      height: 92px;
      border-radius: 50%;
      background: var(--fact-glow);
      filter: blur(1px);
      opacity: .75;
    }

    .marina-fact--comune {
      --fact-soft: rgba(119, 86, 207, .09);
      --fact-glow: rgba(119, 86, 207, .17);
      --fact-border: rgba(119, 86, 207, .20);
      --fact-start: #8f70e8;
      --fact-end: #6347bd;
      --fact-shadow: rgba(99, 71, 189, .28);
    }

    .marina-fact--versante {
      --fact-soft: rgba(25, 146, 203, .09);
      --fact-glow: rgba(25, 146, 203, .18);
      --fact-border: rgba(25, 146, 203, .20);
      --fact-start: #31b7e7;
      --fact-end: #147aa9;
      --fact-shadow: rgba(20, 122, 169, .28);
    }

    .marina-fact--paesaggio {
      --fact-soft: rgba(237, 151, 53, .10);
      --fact-glow: rgba(237, 151, 53, .19);
      --fact-border: rgba(237, 151, 53, .21);
      --fact-start: #f4b552;
      --fact-end: #d77b25;
      --fact-shadow: rgba(215, 123, 37, .29);
    }

    .marina-fact__icon {
      position: relative;
      z-index: 2;
      display: grid;
      width: 56px;
      height: 56px;
      flex: 0 0 auto;
      place-items: center;
      color: #fff;
      border: 1px solid rgba(255,255,255,.42);
      border-radius: 18px;
      background: linear-gradient(
        145deg,
        var(--fact-start),
        var(--fact-end)
      );
      box-shadow: 0 12px 28px var(--fact-shadow);
      font-size: 1.3rem;
      transform: rotate(-3deg);
    }

    .marina-fact__content {
      position: relative;
      z-index: 2;
    }

    .marina-fact strong {
      display: block;
      color: var(--marina-text);
      font-size: .76rem;
      letter-spacing: .09em;
      text-transform: uppercase;
    }

    .marina-fact span {
      display: block;
      margin-top: .23rem;
      color: var(--marina-muted);
      font-size: .92rem;
      line-height: 1.45;
    }

    .marina-section {
      margin-top: clamp(2rem, 5vw, 4rem);
    }

    .marina-section__head {
      max-width: 780px;
      margin-bottom: 1.45rem;
    }

    .marina-content-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
      gap: clamp(1.2rem, 3vw, 2rem);
    }

    .marina-story,
    .marina-side-card,
    .marina-map,
    .marina-source-card {
      border: 1px solid var(--marina-line);
      border-radius: 26px;
      background: var(--marina-surface);
      box-shadow: 0 15px 42px rgba(28,55,64,.07);
    }

    .marina-story {
      padding: clamp(1.4rem, 4vw, 2.2rem);
    }

    .marina-story h3 {
      margin: 1.6rem 0 .7rem;
      font-size: clamp(1.25rem, 2.5vw, 1.7rem);
      font-weight: 850;
      letter-spacing: -.025em;
    }

    .marina-story h3:first-child {
      margin-top: 0;
    }

    .marina-story a {
      color: var(--marina-sea-dark);
      font-weight: 780;
    }

    .marina-side {
      display: grid;
      align-content: start;
      gap: 1rem;
    }

    .marina-side-card {
      padding: 1.3rem;
    }

    .marina-side-card h3 {
      margin: 0;
      font-size: 1.15rem;
      font-weight: 850;
    }

    .marina-side-card p {
      margin: .65rem 0 0;
      font-size: .93rem;
      line-height: 1.65;
    }

    .marina-side-card--nature {
      background:
        radial-gradient(circle at 90% 10%, rgba(255,255,255,.65), transparent 9rem),
        linear-gradient(145deg, rgba(86,128,94,.16), #fff);
    }

    .marina-side-card--history {
      background:
        radial-gradient(circle at 90% 10%, rgba(255,255,255,.65), transparent 9rem),
        linear-gradient(145deg, rgba(217,151,77,.17), #fff);
    }

    .marina-gallery {
      display: grid;
      grid-template-columns: repeat(12, minmax(0, 1fr));
      gap: .9rem;
    }

    .marina-gallery__item {
      position: relative;
      grid-column: span 4;
      min-height: 270px;
      overflow: hidden;
      border-radius: 24px;
      background: #dbe7e8;
      box-shadow: 0 15px 38px rgba(28,55,64,.10);
    }

    .marina-gallery__item:nth-child(1),
    .marina-gallery__item:nth-child(4) {
      grid-column: span 8;
    }

    .marina-gallery__item img {
      width: 100%;
      height: 100%;
      min-height: 270px;
      object-fit: cover;
      transition: transform .55s ease;
    }

    .marina-gallery__item:hover img {
      transform: scale(1.045);
    }

    .marina-gallery__credit {
      position: absolute;
      right: 12px;
      bottom: 12px;
      left: 12px;
      padding: .55rem .7rem;
      color: #fff;
      font-size: .74rem;
      font-weight: 740;
      border-radius: 12px;
      background: rgba(7,29,34,.62);
      backdrop-filter: blur(8px);
    }

    .marina-gallery__credit a {
      color: #fff;
    }

    .marina-place-grid,
    .marina-nearby-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 1rem;
    }

    .marina-place-card {
      display: flex;
      min-height: 100%;
      overflow: hidden;
      flex-direction: column;
      padding: 0;
      color: var(--marina-text);
      text-decoration: none;
      border: 1px solid var(--marina-line);
      border-radius: 22px;
      background: #fff;
      box-shadow: 0 13px 34px rgba(28,55,64,.065);
      transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
    }

    .marina-place-card__image {
      display: block;
      width: 100%;
      height: 185px;
      flex: 0 0 auto;
      object-fit: cover;
    }

    .marina-place-card__body {
      display: flex;
      min-height: 100%;
      flex: 1 1 auto;
      flex-direction: column;
      padding: 1.25rem;
    }

    .marina-place-card:hover,
    .marina-place-card:focus-visible {
      color: var(--marina-text);
      transform: translateY(-5px);
      border-color: rgba(23,139,153,.38);
      box-shadow: 0 21px 45px rgba(28,55,64,.12);
    }

    .marina-place-card__icon {
      display: grid;
      width: 48px;
      height: 48px;
      place-items: center;
      color: #fff;
      font-size: 1.15rem;
      border-radius: 15px;
      background: var(--marina-sea);
    }

    .marina-place-card h3 {
      margin: 0;
      font-size: 1.06rem;
      font-weight: 850;
      line-height: 1.3;
    }

    .marina-place-card p {
      margin: .65rem 0 0;
      font-size: .88rem;
      line-height: 1.58;
    }

    .marina-place-card__cta {
      display: inline-flex;
      align-items: center;
      gap: .42rem;
      margin-top: auto;
      padding-top: 1rem;
      color: var(--marina-sea-dark);
      font-size: .78rem;
      font-weight: 850;
    }

    .marina-service-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1rem;
    }

    .marina-service-card {
      position: relative;
      display: flex;
      min-height: 235px;
      overflow: hidden;
      flex-direction: column;
      padding: clamp(1.25rem, 3vw, 1.7rem);
      color: #fff;
      text-decoration: none;
      border-radius: 25px;
      background:
        radial-gradient(circle at 92% 8%, rgba(255,255,255,.18), transparent 12rem),
        linear-gradient(145deg, #177f8b, #0c5962);
      box-shadow: 0 17px 44px rgba(28,55,64,.13);
      transition: transform .25s ease, box-shadow .25s ease;
    }

    a.marina-service-card:hover,
    a.marina-service-card:focus-visible {
      color: #fff;
      transform: translateY(-5px);
      box-shadow: 0 25px 52px rgba(28,55,64,.19);
    }

    .marina-service-card--stay {
      background:
        radial-gradient(circle at 92% 8%, rgba(255,255,255,.18), transparent 12rem),
        linear-gradient(145deg, #765fa9, #50427c);
    }

    .marina-service-card--disabled {
      cursor: default;
      filter: saturate(.84);
    }

    .marina-service-card__icon {
      display: grid;
      width: 58px;
      height: 58px;
      place-items: center;
      font-size: 1.45rem;
      border-radius: 18px;
      background: rgba(255,255,255,.16);
      border: 1px solid rgba(255,255,255,.22);
    }

    .marina-service-card__status {
      position: absolute;
      top: 16px;
      right: 16px;
      padding: .4rem .62rem;
      color: #fff;
      font-size: .68rem;
      font-weight: 850;
      letter-spacing: .06em;
      text-transform: uppercase;
      border: 1px solid rgba(255,255,255,.28);
      border-radius: 999px;
      background: rgba(8,25,31,.38);
    }

    .marina-service-card h3 {
      margin: 1.1rem 0 0;
      font-size: clamp(1.25rem, 2.7vw, 1.7rem);
      font-weight: 880;
    }

    .marina-service-card p {
      margin: .65rem 0 0;
      color: rgba(255,255,255,.82);
      font-size: .94rem;
      line-height: 1.6;
    }

    .marina-service-card__cta {
      display: inline-flex;
      align-items: center;
      gap: .45rem;
      margin-top: auto;
      padding-top: 1.15rem;
      color: #fff;
      font-size: .8rem;
      font-weight: 850;
    }

    .marina-faq {
      display: grid;
      gap: .8rem;
    }

    .marina-faq details {
      overflow: hidden;
      border: 1px solid var(--marina-line);
      border-radius: 18px;
      background: #fff;
      box-shadow: 0 10px 28px rgba(28,55,64,.055);
    }

    .marina-faq summary {
      display: flex;
      min-height: 62px;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 1rem 1.15rem;
      cursor: pointer;
      list-style: none;
      font-weight: 840;
    }

    .marina-faq summary::-webkit-details-marker {
      display: none;
    }

    .marina-faq summary::after {
      content: "+";
      display: grid;
      width: 34px;
      height: 34px;
      flex: 0 0 auto;
      place-items: center;
      color: #fff;
      border-radius: 50%;
      background: var(--marina-sea);
      font-size: 1.15rem;
    }

    .marina-faq details[open] summary::after {
      content: "−";
    }

    .marina-faq__answer {
      padding: 0 1.15rem 1.15rem;
      color: var(--marina-muted);
      line-height: 1.72;
    }

    .marina-map {
      overflow: hidden;
    }

    .marina-map iframe {
      display: block;
      width: 100%;
      min-height: 470px;
      border: 0;
    }

    .marina-map__footer {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: .8rem;
      padding: 1rem 1.2rem;
    }

    .marina-map__footer p {
      margin: 0;
      font-size: .88rem;
    }

    .marina-map__footer a {
      color: var(--marina-sea-dark);
      font-weight: 800;
    }

    .marina-nearby-card {
      position: relative;
      display: flex;
      min-height: 320px;
      overflow: hidden;
      align-items: end;
      color: #fff;
      text-decoration: none;
      border-radius: 24px;
      background: #193f47;
      box-shadow: 0 16px 42px rgba(28,55,64,.12);
    }

    .marina-nearby-card:nth-child(-n+3) {
      grid-column: span 1;
    }

    .marina-nearby-card--all {
      justify-content: center;
      align-items: center;
      padding: 1.5rem;
      text-align: center;
      background:
        radial-gradient(circle at 85% 15%, rgba(255,255,255,.16), transparent 12rem),
        linear-gradient(145deg, #167e89, #0c5962);
    }

    .marina-nearby-card__image {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .marina-nearby-card::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(7,27,33,.92), rgba(7,27,33,.08) 72%);
    }

    .marina-nearby-card--all::after {
      display: none;
    }

    .marina-nearby-card__body {
      position: relative;
      z-index: 2;
      width: 100%;
      padding: 1.25rem;
    }

    .marina-nearby-card h3 {
      margin: 0;
      font-size: 1.25rem;
      font-weight: 880;
    }

    .marina-nearby-card p {
      margin: .55rem 0 0;
      color: rgba(255,255,255,.82);
      font-size: .88rem;
      line-height: 1.55;
    }

    .marina-nearby-card small {
      display: block;
      margin-bottom: .32rem;
      color: rgba(255,255,255,.72);
      font-weight: 760;
    }

    .marina-source-card {
      margin-top: 2.4rem;
      padding: 1.2rem 1.3rem;
      color: var(--marina-muted);
      font-size: .86rem;
      line-height: 1.65;
    }

    .marina-source-card strong {
      color: var(--marina-text);
    }

    .marina-source-card a {
      color: var(--marina-sea-dark);
      font-weight: 760;
    }

    @media (max-width: 1199.98px) {
      .marina-place-grid,
      .marina-nearby-grid,
      .marina-service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .marina-gallery__item,
      .marina-gallery__item:nth-child(1),
      .marina-gallery__item:nth-child(4) {
        grid-column: span 6;
      }
    }

    @media (max-width: 991.98px) {
      .marina-summary__grid,
      .marina-content-grid {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 767.98px) {
      .marina-gallery {
        grid-template-columns: 1fr;
      }

      .marina-gallery__item,
      .marina-gallery__item:nth-child(1),
      .marina-gallery__item:nth-child(4) {
        grid-column: 1;
        min-height: 230px;
      }

      .marina-place-grid,
      .marina-nearby-grid,
      .marina-service-grid {
        grid-template-columns: 1fr;
      }

      .marina-nearby-card {
        min-height: 290px;
      }
    }

    @media (max-width: 575.98px) {
      .marina-hero {
        min-height: 560px;
      }

      .marina-hero__content {
        padding-top: 115px;
      }

      .marina-summary {
        margin-top: -3rem;
        border-radius: 24px;
      }

      .marina-map iframe {
        min-height: 380px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      html {
        scroll-behavior: auto;
      }

      .marina-gallery__item img,
      .marina-place-card {
        transition: none;
      }
    }

    .marina-data-note {
      margin-bottom: 1.1rem;
      padding: 1rem 1.1rem;
      color: var(--marina-muted);
      border: 1px solid var(--marina-line);
      border-radius: 18px;
      background: rgba(255,255,255,.82);
      font-size: .9rem;
      line-height: 1.65;
    }

    .marina-data-note strong {
      color: var(--marina-text);
    }

    .marina-place-card__badge {
      display: inline-flex;
      align-self: flex-start;
      margin-top: .8rem;
      padding: .34rem .58rem;
      color: var(--marina-sea-dark);
      border: 1px solid rgba(23,139,153,.18);
      border-radius: 999px;
      background: rgba(23,139,153,.08);
      font-size: .69rem;
      font-weight: 850;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .marina-service-card__count {
      display: block;
      margin-top: .7rem;
      color: rgba(255,255,255,.92);
      font-size: .8rem;
      font-weight: 800;
    }

    .marina-directory-panel {
      position: relative;
      overflow: hidden;
      margin-top: clamp(2rem, 5vw, 4rem);
      padding: clamp(1.25rem, 4vw, 2.2rem);
      border-radius: 30px;
      box-shadow: 0 20px 54px rgba(28,55,64,.12);
    }

    .marina-directory-panel::before {
      content: "";
      position: absolute;
      top: -110px;
      right: -80px;
      width: 260px;
      height: 260px;
      border-radius: 50%;
      background: rgba(255,255,255,.13);
    }

    .marina-directory-panel--lidi {
      background:
        radial-gradient(
          circle at 95% 10%,
          rgba(255,255,255,.16),
          transparent 18rem
        ),
        linear-gradient(145deg, #0f8795, #075864);
    }

    .marina-directory-panel--stay {
      background:
        radial-gradient(
          circle at 95% 10%,
          rgba(255,255,255,.15),
          transparent 18rem
        ),
        linear-gradient(145deg, #7258a8, #493873);
    }

    .marina-directory-panel__head {
      position: relative;
      z-index: 2;
      max-width: 820px;
      margin-bottom: 1.35rem;
      color: #fff;
    }

    .marina-directory-panel__head h2 {
      margin: 0;
      font-size: clamp(1.7rem, 3.7vw, 2.5rem);
      font-weight: 880;
      letter-spacing: -.04em;
    }

    .marina-directory-panel__head p {
      margin: .75rem 0 0;
      color: rgba(255,255,255,.82);
      font-size: 1rem;
      line-height: 1.7;
    }

    .marina-directory-panel .marina-data-note {
      position: relative;
      z-index: 2;
      color: rgba(255,255,255,.84);
      border-color: rgba(255,255,255,.21);
      background: rgba(8,32,39,.18);
      backdrop-filter: blur(7px);
    }

    .marina-directory-panel .marina-data-note strong {
      color: #fff;
    }

    .marina-directory-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 1rem;
    }

    .marina-directory-card {
      display: flex;
      min-height: 100%;
      flex-direction: column;
      padding: 1.2rem;
      border: 1px solid rgba(255,255,255,.22);
      border-radius: 22px;
      background: rgba(255,255,255,.97);
      box-shadow: 0 14px 34px rgba(4,31,38,.13);
    }

    .marina-directory-card__top {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: .75rem;
    }

    .marina-directory-card__icon {
      display: grid;
      width: 48px;
      height: 48px;
      flex: 0 0 auto;
      place-items: center;
      color: #fff;
      border-radius: 15px;
      background: linear-gradient(145deg, #25a9b8, #0b6975);
      box-shadow: 0 10px 24px rgba(11,105,117,.22);
      font-size: 1.12rem;
    }

    .marina-directory-panel--stay
    .marina-directory-card__icon {
      background: linear-gradient(145deg, #9476d5, #604894);
      box-shadow: 0 10px 24px rgba(96,72,148,.24);
    }

    .marina-directory-card__status {
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      padding: .38rem .58rem;
      color: #8b3d17;
      border: 1px solid rgba(211,111,50,.23);
      border-radius: 999px;
      background: rgba(241,154,89,.14);
      font-size: .67rem;
      font-weight: 880;
      letter-spacing: .045em;
      text-transform: uppercase;
    }

    .marina-directory-card h3 {
      margin: 1rem 0 0;
      color: var(--marina-text);
      font-size: 1.05rem;
      font-weight: 860;
      line-height: 1.3;
    }

    .marina-directory-card p {
      margin: .65rem 0 0;
      color: var(--marina-muted);
      font-size: .86rem;
      line-height: 1.58;
    }

    .marina-directory-card__actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .55rem;
      margin-top: auto;
      padding-top: 1rem;
    }

    .marina-directory-card__open,
    .marina-directory-card__claim {
      display: inline-flex;
      min-height: 38px;
      align-items: center;
      justify-content: center;
      gap: .38rem;
      padding: .5rem .68rem;
      border-radius: 11px;
      font-size: .73rem;
      font-weight: 850;
    }

    .marina-directory-card__open {
      color: #fff;
      text-decoration: none;
      background: var(--marina-sea-dark);
    }

    .marina-directory-panel--stay
    .marina-directory-card__open {
      background: #5b448b;
    }

    .marina-directory-card__open:hover,
    .marina-directory-card__open:focus-visible {
      color: #fff;
      filter: brightness(1.08);
    }

    .marina-directory-card__claim {
      color: #7a4a13;
      border: 1px solid rgba(203,132,47,.22);
      background: rgba(241,177,93,.16);
    }

    @media (max-width: 1199.98px) {
      .marina-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }


    .marina-directory-card--simple {
      min-height: 155px;
    }

    .marina-directory-card--simple h3 {
      margin: 0;
    }

    .marina-directory-card--simple
    .marina-directory-card__status {
      align-self: flex-start;
      margin-top: .85rem;
    }

    .marina-directory-card--simple
    .marina-directory-card__actions {
      margin-top: auto;
    }

    .marina-verified-heading {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 1rem;
      margin: 1.6rem 0 1rem;
      padding: 0 .15rem;
      color: #fff;
    }

    .marina-verified-heading h3 {
      margin: 0;
      font-size: clamp(1.25rem, 2.7vw, 1.7rem);
      font-weight: 880;
    }

    .marina-verified-heading p {
      max-width: 690px;
      margin: .4rem 0 0;
      color: rgba(255,255,255,.78);
      font-size: .9rem;
      line-height: 1.55;
    }

    .marina-verified-heading > span {
      display: inline-flex;
      flex: 0 0 auto;
      align-items: center;
      gap: .4rem;
      padding: .48rem .68rem;
      color: #fff;
      border: 1px solid rgba(255,255,255,.24);
      border-radius: 999px;
      background: rgba(255,255,255,.12);
      font-size: .72rem;
      font-weight: 820;
    }

    .marina-verified-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1.1rem;
      margin-bottom: 1.35rem;
    }

    .marina-claimed-card {
      display: flex;
      min-width: 0;
      overflow: hidden;
      flex-direction: column;
      border: 1px solid rgba(255,255,255,.24);
      border-radius: 24px;
      background: #fff;
      box-shadow: 0 16px 38px rgba(31,20,60,.17);
    }

    .marina-claimed-card__gallery {
      display: grid;
      min-height: 180px;
      grid-template-columns: 1fr 1fr;
      gap: 3px;
      background: #e4e2e7;
    }

    .marina-claimed-card__gallery img,
    .marina-claimed-card__placeholder {
      width: 100%;
      height: 180px;
    }

    .marina-claimed-card__gallery img {
      display: block;
      object-fit: cover;
    }

    .marina-claimed-card__placeholder {
      display: grid;
      place-content: center;
      justify-items: center;
      gap: .4rem;
      color: #98949d;
      background:
        linear-gradient(
          145deg,
          #f1f0f3,
          #dedce2
        );
      font-size: .72rem;
      font-weight: 750;
      text-align: center;
    }

    .marina-claimed-card__placeholder i {
      font-size: 1.45rem;
    }

    .marina-claimed-card__body {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      padding: 1.2rem;
    }

    .marina-claimed-card__verified {
      display: inline-flex;
      align-self: flex-start;
      align-items: center;
      gap: .38rem;
      padding: .38rem .58rem;
      color: #14623e;
      border: 1px solid rgba(28,145,91,.2);
      border-radius: 999px;
      background: rgba(47,178,111,.12);
      font-size: .66rem;
      font-weight: 880;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .marina-claimed-card h3 {
      margin: .8rem 0 0;
      color: var(--marina-text);
      font-size: 1.28rem;
      font-weight: 880;
      line-height: 1.25;
    }

    .marina-claimed-card__description {
      margin: .68rem 0 0;
      color: var(--marina-muted);
      font-size: .87rem;
      line-height: 1.62;
    }

    .marina-claimed-card__contacts {
      display: grid;
      gap: .48rem;
      margin-top: .85rem;
      color: var(--marina-muted);
      font-size: .82rem;
      line-height: 1.48;
    }

    .marina-claimed-card__contacts span,
    .marina-claimed-card__contacts a {
      display: flex;
      align-items: flex-start;
      gap: .45rem;
    }

    .marina-claimed-card__contacts a {
      color: inherit;
      text-decoration: none;
    }

    .marina-claimed-card__contacts a:hover {
      color: #5b448b;
      text-decoration: underline;
    }

    .marina-claimed-card__links {
      display: flex;
      flex-wrap: wrap;
      gap: .58rem;
      margin-top: auto;
      padding-top: 1rem;
    }

    .marina-claimed-card__links a {
      display: inline-flex;
      min-height: 40px;
      align-items: center;
      gap: .42rem;
      padding: .55rem .72rem;
      color: #fff;
      text-decoration: none;
      border-radius: 11px;
      background: #5b448b;
      font-size: .75rem;
      font-weight: 850;
    }

    .marina-claimed-card__links a:hover,
    .marina-claimed-card__links a:focus-visible {
      color: #fff;
      filter: brightness(1.08);
    }

    .marina-stay-compact-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: .62rem;
    }

    .marina-stay-compact-card {
      min-width: 0;
      padding: .78rem .85rem;
      border: 1px solid rgba(77,69,86,.10);
      border-radius: 13px;
      background: rgba(239,238,241,.96);
      box-shadow: none;
    }

    .marina-stay-compact-card h3 {
      overflow: hidden;
      margin: 0;
      color: #747078;
      font-size: .88rem;
      font-weight: 780;
      line-height: 1.3;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .marina-stay-compact-card__row {
      display: flex;
      min-width: 0;
      align-items: center;
      justify-content: space-between;
      gap: .7rem;
      margin-top: .36rem;
    }

    .marina-stay-compact-card__phone {
      display: inline-flex;
      min-width: 0;
      overflow: hidden;
      align-items: center;
      gap: .35rem;
      color: #929096;
      text-decoration: none;
      font-size: .74rem;
      line-height: 1.25;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .marina-stay-compact-card__phone:hover {
      color: #68646c;
      text-decoration: underline;
    }

    .marina-stay-compact-card__claim {
      flex: 0 0 auto;
      color: #70667c;
      text-decoration: underline;
      text-underline-offset: 2px;
      font-size: .72rem;
      font-weight: 820;
    }

    .marina-stay-compact-card__claim:hover,
    .marina-stay-compact-card__claim:focus-visible {
      color: #493873;
    }

    @media (max-width: 1199.98px) {
      .marina-stay-compact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 767.98px) {
      .marina-verified-grid,
      .marina-stay-compact-grid {
        grid-template-columns: 1fr;
      }

      .marina-verified-heading {
        align-items: flex-start;
        flex-direction: column;
      }

      .marina-claimed-card__gallery,
      .marina-claimed-card__gallery img,
      .marina-claimed-card__placeholder {
        height: 150px;
        min-height: 150px;
      }
    }

    @media (max-width: 420px) {
      .marina-stay-compact-card__row {
        align-items: flex-start;
        flex-direction: column;
        gap: .28rem;
      }
    }

    /* Marina vicina non ancora pubblicata: nessun link rotto e nessuna foto inventata. */
    .marina-nearby-card--disabled {
      cursor: default;
      background:
        radial-gradient(circle at 80% 15%, rgba(255,255,255,.14), transparent 12rem),
        linear-gradient(145deg, #375f67, #193f47);
    }

    .marina-nearby-card__placeholder {
      position: absolute;
      inset: 0;
      display: grid;
      place-items: center;
      color: rgba(255,255,255,.22);
      font-size: clamp(4rem, 10vw, 7rem);
    }

    /* Luogo figlio ancora in bozza: visibile, ma senza link e senza JSON-LD. */
    .marina-place-card--disabled {
      cursor: default;
      opacity: .82;
      background:
        linear-gradient(145deg, rgba(23,139,153,.055), #fff 74%);
    }

    .marina-place-card--disabled:hover,
    .marina-place-card--disabled:focus {
      transform: none;
      border-color: var(--marina-line);
      box-shadow: 0 13px 34px rgba(28,55,64,.065);
    }


    /* ========================================================
     * MARINA 2.0 — progressione pastello delle sezioni.
     * ======================================================== */
    .marina-rainbow-section,
    .marina-directory-panel--stay {
      position: relative;
      overflow: hidden;
      padding: clamp(1.25rem, 4vw, 2.2rem);
      border: 1px solid rgba(37, 71, 82, .09);
      border-radius: 30px;
      box-shadow: 0 16px 42px rgba(28,55,64,.075);
    }
    .marina-tone-map { background: linear-gradient(145deg, #edfafa, #f8ffff); }
    .marina-tone-gallery { background: linear-gradient(145deg, #eef7ff, #fbfdff); }
    .marina-tone-places { background: linear-gradient(145deg, #eefaf2, #fbfefc); }
    .marina-tone-experiences { background: linear-gradient(145deg, #fff9df, #fffdf6); }
    .marina-tone-restaurants { background: linear-gradient(145deg, #fff1e8, #fffaf7); }
    .marina-tone-rentals { background: linear-gradient(145deg, #fff0f3, #fff9fa); }
    .marina-tone-events { background: linear-gradient(145deg, #f8efff, #fcf9ff); }
    .marina-tone-news { background: linear-gradient(145deg, #eef1ff, #fafbff); }

    .marina-directory-panel--stay {
      color: var(--marina-text);
      background: linear-gradient(145deg, #fff8e9, #fffdf8);
    }
    .marina-directory-panel--stay::before { background: rgba(224, 173, 86, .08); }
    .marina-directory-panel--stay .marina-directory-panel__head { color: var(--marina-text); }
    .marina-directory-panel--stay .marina-directory-panel__head p { color: var(--marina-muted); }
    .marina-directory-panel--stay .marina-data-note {
      color: var(--marina-muted);
      border-color: rgba(117, 91, 46, .13);
      background: rgba(255,255,255,.72);
    }
    .marina-directory-panel--stay .marina-data-note strong { color: var(--marina-text); }

    /* Lidi Marina 2.0: pannello pastello distinto dalle altre sezioni. */
    .marina-directory-panel--lidi {
      position: relative;
      overflow: hidden;
      padding: clamp(1.25rem, 4vw, 2.2rem);
      color: var(--marina-text);
      border: 1px solid rgba(23,139,153,.12);
      border-radius: 30px;
      background:
        radial-gradient(
          circle at 95% 10%,
          rgba(75,190,204,.12),
          transparent 18rem
        ),
        linear-gradient(145deg, #e8f8fb, #f8fdff);
      box-shadow: 0 16px 42px rgba(28,55,64,.075);
    }
    .marina-directory-panel--lidi::before {
      background: rgba(34,170,187,.08);
    }
    .marina-directory-panel--lidi .marina-directory-panel__head,
    .marina-directory-panel--lidi .marina-verified-heading {
      color: var(--marina-text);
    }
    .marina-directory-panel--lidi .marina-directory-panel__head p,
    .marina-directory-panel--lidi .marina-verified-heading p {
      color: var(--marina-muted);
    }
    .marina-directory-panel--lidi .marina-data-note {
      color: var(--marina-muted);
      border-color: rgba(23,139,153,.16);
      background: rgba(255,255,255,.72);
      backdrop-filter: none;
    }
    .marina-directory-panel--lidi .marina-data-note strong {
      color: var(--marina-text);
    }
    .marina-directory-panel--lidi .marina-verified-heading > span {
      color: var(--marina-sea-dark);
      border-color: rgba(23,139,153,.18);
      background: rgba(23,139,153,.08);
    }

    /* ========================================================
     * MENU RAPIDO NELL'HERO
     * Sotto Condividi / Copia link: vetro leggero, icone + label.
     * Desktop: una riga. Tablet: 4 colonne. Mobile: 3 + 3.
     * ======================================================== */
    .marina-quicknav {
      display: grid;
      grid-template-columns: repeat(7, minmax(0, 1fr));
      gap: .56rem;
      width: min(100%, 980px);
      margin: 1rem 0 0;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
    }
    .marina-quicknav a {
      display: flex;
      min-width: 0;
      min-height: 56px;
      align-items: center;
      justify-content: center;
      gap: .42rem;
      padding: .52rem .44rem;
      color: #fff;
      border: 1px solid rgba(255,255,255,.20);
      border-radius: 16px;
      background: rgba(255,255,255,.10);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
      font-size: .75rem;
      font-weight: 820;
      line-height: 1.05;
      text-align: center;
      text-decoration: none;
      white-space: normal;
      transition:
        transform .18s ease,
        background-color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
    }
    .marina-quicknav a i {
      display: grid;
      width: 30px;
      height: 30px;
      flex: 0 0 30px;
      place-items: center;
      border: 1px solid rgba(255,255,255,.22);
      border-radius: 50%;
      background: rgba(255,255,255,.14);
      font-size: 1rem;
      line-height: 1;
    }
    .marina-quicknav a span {
      min-width: 0;
    }
    .marina-quicknav a:hover,
    .marina-quicknav a:focus-visible {
      color: #fff;
      border-color: rgba(255,255,255,.48);
      background: rgba(255,255,255,.20);
      box-shadow: 0 8px 22px rgba(0,0,0,.12);
      outline: none;
      transform: translateY(-2px);
    }

    .marina-quicknav__mobile-label {
      display: none;
    }

    /* Con Eventi / News la barra può avere 8-9 voci: resta ordinata. */
    .marina-quicknav:has(a:nth-child(8)) {
      grid-template-columns: repeat(9, minmax(0, 1fr));
      width: min(100%, 1160px);
    }

    /* Tablet: evita di comprimere 7-9 voci in una sola riga. */
    @media (min-width: 768px) and (max-width: 991.98px) {
      .marina-quicknav,
      .marina-quicknav:has(a:nth-child(8)) {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        width: 100%;
      }
      .marina-quicknav a {
        min-height: 54px;
      }
    }

    @media (max-width: 767.98px) {
      .marina-quicknav,
      .marina-quicknav:has(a:nth-child(8)) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: .46rem;
        width: 100%;
        margin-top: .9rem;
        padding: 0;
        border-radius: 0;
      }
      .marina-quicknav a {
        min-height: 58px;
        flex-direction: column;
        gap: .28rem;
        padding: .44rem .28rem;
        border-radius: 13px;
        font-size: .71rem;
      }
      .marina-quicknav a i {
        width: 27px;
        height: 27px;
        flex-basis: 27px;
        font-size: .88rem;
      }
      .marina-quicknav__desktop-only {
        display: flex !important;
      }
      .marina-quicknav__desktop-label {
        display: none;
      }
      .marina-quicknav__mobile-label {
        display: inline;
      }
    }

    .marina-commerce-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
    }
    .marina-commerce-card {
      display: flex;
      min-width: 0;
      min-height: 100%;
      overflow: hidden;
      flex-direction: column;
      border: 1px solid rgba(37, 71, 82, .10);
      border-radius: 22px;
      background: rgba(255,255,255,.96);
      box-shadow: 0 12px 30px rgba(28,55,64,.065);
    }
    .marina-commerce-card__image,
    .marina-commerce-card__placeholder {
      width: 100%;
      height: 170px;
    }
    .marina-commerce-card__image { display: block; object-fit: cover; }
    .marina-commerce-card__placeholder {
      display: grid;
      place-items: center;
      color: rgba(22,50,58,.24);
      background: rgba(255,255,255,.62);
      font-size: 2.3rem;
    }
    .marina-commerce-card__body {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      padding: 1rem;
    }
    .marina-commerce-card__badges { display: flex; flex-wrap: wrap; gap: .38rem; }
    .marina-commerce-badge {
      display: inline-flex;
      padding: .3rem .5rem;
      color: #52636a;
      border: 1px solid rgba(52,78,87,.11);
      border-radius: 999px;
      background: #f5f8f8;
      font-size: .64rem;
      font-weight: 850;
      letter-spacing: .03em;
    }
    .marina-commerce-badge--money { color: #7f5c17; background: #fff8db; }
    .marina-commerce-badge--ok { color: #17623f; background: #edf8f2; }
    .marina-commerce-card h3 {
      margin: .8rem 0 0;
      font-size: 1.06rem;
      font-weight: 870;
      line-height: 1.3;
    }
    .marina-commerce-card__meta,
    .marina-commerce-card__description {
      margin: .48rem 0 0;
      color: var(--marina-muted);
      font-size: .82rem;
      line-height: 1.55;
    }
    .marina-commerce-card__actions {
      display: flex;
      flex-wrap: wrap;
      gap: .48rem;
      margin-top: auto;
      padding-top: .9rem;
    }
    .marina-commerce-card__actions a {
      display: inline-flex;
      min-height: 38px;
      align-items: center;
      gap: .35rem;
      padding: .5rem .62rem;
      color: var(--marina-text);
      border: 1px solid rgba(37,71,82,.12);
      border-radius: 10px;
      background: #fff;
      font-size: .72rem;
      font-weight: 830;
      text-decoration: none;
    }
    .marina-commerce-card__actions a.marina-commerce-primary {
      color: #fff;
      border-color: transparent;
      background: var(--marina-sea-dark);
    }
    .marina-affiliate-slot {
      position: relative;
      z-index: 2;
      margin: 1.2rem 0;
      padding: 1rem;
      border: 1px dashed rgba(91,68,139,.24);
      border-radius: 16px;
      background: rgba(255,255,255,.78);
    }
    .marina-affiliate-slot__label {
      display: block;
      margin-bottom: .5rem;
      color: var(--marina-muted);
      font-size: .68rem;
      font-weight: 850;
      letter-spacing: .06em;
      text-transform: uppercase;
    }
    .marina-event-news-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1rem;
    }
    .marina-event-news-card {
      padding: 1.05rem;
      border: 1px solid rgba(37,71,82,.10);
      border-radius: 18px;
      background: rgba(255,255,255,.94);
    }

    .marina-event-group {
      display: inline-flex;
      width: fit-content;
      margin-bottom: .55rem;
      padding: .28rem .55rem;
      border-radius: 999px;
      color: #fff;
      background: #35767d;
      font-size: .68rem;
      font-weight: 850;
      letter-spacing: .045em;
      text-transform: uppercase;
    }

    .marina-event-group--patronale { background: #8a5a25; }
    .marina-event-group--salento { background: #72418c; }
    .marina-event-news-card__image {
      display: block;
      width: calc(100% + 2.1rem);
      height: 190px;
      margin: -1.05rem -1.05rem .9rem;
      object-fit: cover;
    }
    .marina-event-status {
      display: inline-flex;
      margin: 0 .4rem .45rem 0;
      padding: .34rem .5rem;
      border-radius: 999px;
      color: #fff;
      background: #17603b;
      font-size: .62rem;
      font-weight: 900;
      letter-spacing: .04em;
    }
    .marina-event-status--live {
      background: #c73832;
    }
    .marina-event-status--today {
      background: #8b5b00;
    }
    .marina-event-news-card--today {
      overflow: hidden;
      padding: 0;
    }
    .marina-event-news-card__poster,
    .marina-event-news-card__poster-waiting {
      display: block;
      width: 100%;
      height: 210px;
    }
    .marina-event-news-card__poster {
      object-fit: cover;
    }
    .marina-event-news-card__poster-waiting {
      position: relative;
      display: grid;
      overflow: hidden;
      place-items: center;
      padding: 1rem;
      color: #62777d;
      background:
        radial-gradient(circle at 18% 22%, rgba(245,190,211,.68), transparent 36%),
        radial-gradient(circle at 82% 78%, rgba(181,222,226,.72), transparent 38%),
        linear-gradient(135deg,#f7eef3,#eaf3f5 45%,#f2edf8 74%,#f7f1e5);
    }
    .marina-event-news-card__poster-waiting span {
      max-width: 15rem;
      padding: .72rem 1rem;
      border: 1px solid rgba(72,99,106,.12);
      border-radius: 999px;
      background: rgba(255,255,255,.58);
      box-shadow: 0 10px 28px rgba(63,87,94,.07);
      font-family: Georgia, "Times New Roman", serif;
      font-size: .98rem;
      font-weight: 500;
      text-align: center;
    }
    .marina-event-news-card__content {
      padding: 1.05rem;
    }
    .marina-event-town {
      display: block;
      margin: 0 0 .38rem;
      color: var(--marina-sea-dark);
      font-size: clamp(1.2rem, 2.6vw, 1.72rem);
      font-weight: 950;
      line-height: 1;
      letter-spacing: .04em;
      text-transform: uppercase;
    }
    .marina-event-day {
      display: inline-flex;
      margin: 0 0 .78rem;
      padding: .48rem .74rem;
      color: #fff;
      border-radius: 10px;
      background: #167d8c;
      font-size: clamp(1.08rem, 2.2vw, 1.42rem);
      font-weight: 950;
      line-height: 1;
      letter-spacing: .045em;
    }
    .marina-event-day--live {
      background: #c73832;
    }
    .marina-event-day--today {
      background: #8b5b00;
    }
    .marina-event-day--tomorrow {
      background: #17603b;
    }
    .marina-event-news-card--major {
      border: 2px solid rgba(22,125,140,.18);
      background:
        linear-gradient(145deg,rgba(236,247,248,.96),rgba(255,255,255,.98));
    }
    .marina-event-major-date {
      display: block;
      margin: .18rem 0 .82rem;
      color: #294b54;
      font-size: clamp(1.3rem, 2.8vw, 1.95rem);
      font-weight: 950;
      line-height: 1.05;
    }
    .marina-event-news-card time {
      color: var(--marina-sea-dark);
      font-size: .72rem;
      font-weight: 850;
    }
    .marina-event-news-card h3 { margin: .45rem 0 0; font-size: 1.02rem; font-weight: 860; }
    .marina-event-news-card p { margin: .48rem 0 0; font-size: .84rem; line-height: 1.55; }
    .marina-event-news-card a { color: var(--marina-sea-dark); font-weight: 800; }


    /* EVENTI — card compatte, 4 per riga come le card dei lidi */
    #eventi .marina-event-news-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 1rem;
    }

    #eventi .marina-event-news-card {
      min-width: 0;
      overflow: hidden;
      padding: 0;
      border: 1px solid rgba(37,71,82,.12);
      border-radius: 20px;
      background: #fff;
      box-shadow: 0 10px 27px rgba(28,55,64,.07);
    }

    #eventi .marina-event-news-card__poster,
    #eventi .marina-event-news-card__poster-waiting {
      display: block;
      width: 100%;
      height: 145px;
    }

    #eventi .marina-event-news-card__poster {
      object-fit: cover;
    }

    #eventi .marina-event-news-card__poster-waiting {
      position: relative;
      display: grid;
      overflow: hidden;
      place-items: center;
      padding: .85rem;
      color: #667b81;
      background:
        radial-gradient(
          circle at 18% 20%,
          rgba(245,190,211,.58),
          transparent 35%
        ),
        radial-gradient(
          circle at 84% 80%,
          rgba(181,222,226,.64),
          transparent 38%
        ),
        linear-gradient(
          135deg,
          #f8f0f4,
          #edf5f6 48%,
          #f2eef7 78%,
          #f8f3e8
        );
    }

    #eventi .marina-event-news-card__poster-waiting span {
      max-width: 12rem;
      padding: .55rem .75rem;
      border: 1px solid rgba(72,99,106,.11);
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      box-shadow: 0 8px 22px rgba(63,87,94,.06);
      font-family: Georgia, "Times New Roman", serif;
      font-size: .82rem;
      font-weight: 500;
      line-height: 1.2;
      text-align: center;
    }

    #eventi .marina-event-news-card__content {
      padding: .95rem 1rem 1rem;
    }

    #eventi .marina-event-town {
      display: block;
      margin: 0 0 .36rem;
      color: var(--marina-text);
      font-size: 1.08rem;
      font-weight: 950;
      line-height: 1.08;
      letter-spacing: .025em;
      text-transform: uppercase;
    }

    #eventi .marina-event-day {
      display: inline-flex;
      margin: 0 0 .55rem;
      padding: .33rem .52rem;
      color: #fff;
      border-radius: 8px;
      background: var(--marina-sea);
      font-size: .76rem;
      font-weight: 950;
      line-height: 1;
      letter-spacing: .045em;
    }

    #eventi .marina-event-day--live {
      background: #c73832;
    }

    #eventi .marina-event-day--today {
      background: #8b5b00;
    }

    #eventi .marina-event-day--tomorrow {
      background: #17603b;
    }

    #eventi .marina-event-news-card time:not(.marina-event-major-date) {
      display: block;
      margin: 0 0 .4rem;
      color: var(--marina-muted);
      font-size: .72rem;
      font-weight: 800;
    }

    #eventi .marina-event-news-card h3 {
      margin: 0;
      color: var(--marina-text);
      font-size: 1rem;
      font-weight: 880;
      line-height: 1.28;
    }

    #eventi .marina-event-news-card p {
      margin: .42rem 0 0;
      color: var(--marina-muted);
      font-size: .77rem;
      line-height: 1.4;
    }

    #eventi .marina-event-description {
      display: -webkit-box;
      overflow: hidden;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }

    #eventi .marina-event-news-card a {
      color: var(--marina-sea-dark);
      font-size: .75rem;
      font-weight: 850;
      text-decoration: none;
    }

    #eventi .marina-event-news-card--major {
      position: relative;
      min-height: 190px;
      padding: 1rem;
      border-top: 5px solid var(--marina-sea);
      background:
        linear-gradient(
          145deg,
          rgba(238,248,249,.96),
          rgba(255,255,255,.99)
        );
    }

    #eventi .marina-event-major-date {
      display: block;
      margin: 0 0 .58rem;
      color: var(--marina-sea-dark);
      font-size: .96rem;
      font-weight: 950;
      line-height: 1.08;
    }

    @media (max-width: 1199.98px) {
      #eventi .marina-event-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 620px) {
      #eventi .marina-event-news-grid {
        grid-template-columns: 1fr;
      }

      #eventi .marina-event-news-card__poster,
      #eventi .marina-event-news-card__poster-waiting {
        height: 165px;
      }
    }

    @media (max-width: 991.98px) {
      .marina-commerce-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 767.98px) {
      .marina-commerce-grid, .marina-event-news-grid { grid-template-columns: 1fr; }
      .marina-rainbow-section, .marina-directory-panel--stay { border-radius: 24px; }
    }




    .marina-claimed-card__links
    .marina-accommodation-claim {
      background: #8467bb;
    }

    .marina-accommodation-verified {
      display: inline-flex;
      min-height: 38px;
      align-items: center;
      justify-content: center;
      gap: .42rem;
      padding: .62rem .82rem;
      color: #17663d;
      border: 1px solid rgba(23, 102, 61, .22);
      border-radius: 10px;
      background: #eaf8f0;
      font-size: .78rem;
      font-weight: 850;
      line-height: 1.2;
    }

    .marina-ad {
      width: 100%;
      min-width: 0;
      min-height: 112px;
      margin: clamp(1.5rem, 4vw, 2.8rem) 0;
      padding: .65rem;
      overflow: hidden;
      text-align: center;
      border: 1px solid rgba(67, 92, 99, .12);
      border-radius: 12px;
      background: #f1f4f4;
    }

    .marina-ad--in-grid {
      grid-column: 1 / -1;
      align-self: stretch;
      margin: .55rem 0;
    }

    .marina-ad__label {
      display: block;
      margin-bottom: .3rem;
      color: #849196;
      font-size: .66rem;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .marina-ad .adsbygoogle {
      display: block;
      width: 100%;
      min-height: 90px;
    }

    @media (max-width: 575.98px) {
      .marina-ad {
        min-height: 102px;
        margin-block: 1rem;
      }
    }

    .marina-directory-card--add,
    .marina-stay-compact-card--add {
      min-width: 0;
      text-decoration: none;
      border-style: dashed;
      transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
    }

    .marina-directory-card--add {
      justify-content: center;
      color: var(--marina-text);
      border-color: rgba(23, 139, 153, .32);
      background:
        linear-gradient(
          145deg,
          rgba(255,255,255,.98),
          rgba(229,247,249,.98)
        );
    }

    .marina-stay-compact-card--add {
      display: flex;
      min-height: 112px;
      align-items: flex-start;
      flex-direction: column;
      gap: .45rem;
      color: #5b448b;
      border-color: rgba(91, 68, 139, .28);
      background:
        linear-gradient(
          145deg,
          rgba(255,255,255,.98),
          rgba(241,237,249,.98)
        );
    }

    .marina-directory-card--add:hover,
    .marina-directory-card--add:focus-visible,
    .marina-stay-compact-card--add:hover,
    .marina-stay-compact-card--add:focus-visible {
      color: inherit;
      transform: translateY(-3px);
      border-color: currentColor;
      box-shadow: 0 15px 34px rgba(28,55,64,.13);
      outline: none;
    }



    .marina-add-card__content {
      display: block;
      min-width: 0;
    }

    .marina-add-card__content strong,
    .marina-add-card__content small {
      display: block;
    }

    .marina-add-card__content strong {
      color: var(--marina-text);
      font-size: .92rem;
      line-height: 1.3;
    }

    .marina-add-card__content small {
      margin-top: .22rem;
      color: var(--marina-muted);
      font-size: .76rem;
      line-height: 1.4;
    }

    .marina-add-card__action {
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      margin-top: auto;
      color: currentColor;
      font-size: .74rem;
      font-weight: 850;
    }

    .marina-stay-compact-card {
      min-width: 0;
      overflow: hidden;
    }

    .marina-stay-compact-card h3 {
      overflow: visible;
      max-width: 100%;
      text-overflow: clip;
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .marina-stay-compact-card__row {
      min-width: 0;
      align-items: flex-start;
      flex-direction: column;
      gap: .48rem;
    }

    .marina-stay-compact-card__phone {
      display: block;
      width: 100%;
      min-width: 0;
      overflow: visible;
      text-overflow: clip;
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .marina-stay-compact-card__claim {
      align-self: flex-start;
    }

    .marina-place-card h3 {
      margin-top: 0;
    }

    /* Lidi storici non verificati: nome, telefono e Rivendica. */
    .marina-directory-card__phone {
      display: inline-flex;
      min-width: 0;
      align-items: center;
      gap: .42rem;
      margin-top: .55rem;
      color: var(--marina-muted);
      font-size: .82rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    a.marina-directory-card__phone {
      color: var(--marina-text);
      text-decoration: none;
    }

    a.marina-directory-card__phone:hover,
    a.marina-directory-card__phone:focus-visible {
      color: #178b99;
      text-decoration: underline;
      outline: none;
    }

    .marina-map__destination {
      display: flex;
      min-width: 0;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      padding: 1rem 1.2rem;
      border-top: 1px solid var(--marina-line);
      background: #fff;
    }

    .marina-map__destination-main {
      display: flex;
      min-width: 0;
      align-items: center;
      gap: .85rem;
    }

    .marina-map__destination-icon {
      display: grid;
      width: 46px;
      height: 46px;
      flex: 0 0 auto;
      place-items: center;
      color: #fff;
      border-radius: 14px;
      background: var(--marina-sea);
      font-size: 1.15rem;
    }

    .marina-map__destination-copy strong,
    .marina-map__destination-copy small {
      display: block;
    }

    .marina-map__destination-copy strong {
      color: var(--marina-text);
      font-size: .92rem;
    }

    .marina-map__destination-copy small {
      margin-top: .22rem;
      color: var(--marina-muted);
      font-size: .75rem;
    }

    .marina-map__directions {
      display: inline-flex;
      min-height: 46px;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      gap: .45rem;
      padding: .72rem 1.05rem;
      color: #fff;
      border-radius: 12px;
      background: var(--marina-sea);
      box-shadow: 0 10px 24px rgba(23, 139, 153, .18);
      font-size: .82rem;
      font-weight: 850;
      text-decoration: none;
    }

    .marina-map__directions:hover,
    .marina-map__directions:focus-visible {
      color: #fff;
      background: var(--marina-sea-dark);
    }

    .marina-map__coordinates {
      padding: .68rem 1.2rem;
      color: var(--marina-muted);
      border-top: 1px solid var(--marina-line);
      background: #f7fafb;
      font-size: .72rem;
    }

    @media (max-width: 620px) {
      .marina-map__destination {
        align-items: stretch;
        flex-direction: column;
      }

      .marina-map__directions {
        width: 100%;
      }
    }

    /* Card completa dei lidi verificati/rivendicati. */
    .marina-verified-grid--lidi {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1.1rem;
      margin-bottom: 1.35rem;
    }

    .marina-directory-panel--lidi
    .marina-claimed-card__links a {
      background: var(--marina-sea-dark);
    }

    .marina-directory-panel--lidi
    .marina-claimed-card__contacts a:hover {
      color: var(--marina-sea-dark);
    }

    .marina-lido-photo {
      position: relative;
      min-height: 180px;
      background: #dce8e9;
    }

    .marina-lido-photo img {
      display: block;
      width: 100%;
      height: 210px;
      object-fit: cover;
    }

    .marina-lido-photo__credit {
      position: absolute;
      right: 10px;
      bottom: 10px;
      left: 10px;
      padding: .45rem .6rem;
      color: #fff;
      border-radius: 10px;
      background: rgba(7,29,34,.64);
      font-size: .69rem;
      line-height: 1.35;
    }

    .marina-lido-photo__credit a {
      color: #fff;
    }

    @media (max-width: 1199.98px) {
      .marina-verified-grid--lidi {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 767.98px) {
      .marina-verified-grid--lidi {
        grid-template-columns: 1fr;
      }
    }

    /* Strutture rank 1: tre card per riga e una sola foto. */
    .marina-verified-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .marina-claimed-card__gallery {
      grid-template-columns: 1fr;
    }

    .marina-claimed-card__gallery img,
    .marina-claimed-card__placeholder {
      width: 100%;
    }

    .marina-photo-submit-card {
      position: relative;
      display: flex;
      grid-column: span 4;
      min-height: 270px;
      overflow: hidden;
      align-items: stretch;
      padding: 0;
      color: #fff;
      border: 0;
      border-radius: 24px;
      background:
        radial-gradient(
          circle at top right,
          rgba(255, 255, 255, .25),
          transparent 14rem
        ),
        linear-gradient(145deg, #178b99, #624ea2);
      box-shadow: 0 16px 36px rgba(39, 70, 91, .18);
      text-align: left;
      cursor: pointer;
      transition:
        transform .2s ease,
        box-shadow .2s ease;
    }

    .marina-photo-submit-card:hover,
    .marina-photo-submit-card:focus-visible {
      transform: translateY(-5px);
      box-shadow: 0 22px 44px rgba(39, 70, 91, .25);
      outline: 3px solid rgba(23, 139, 153, .2);
      outline-offset: 3px;
    }

    .marina-photo-submit-card::after {
      position: absolute;
      right: -42px;
      bottom: -52px;
      width: 150px;
      height: 150px;
      border: 22px solid rgba(255, 255, 255, .08);
      border-radius: 50%;
      content: "";
    }

    .marina-photo-submit-card__visual {
      display: flex;
      width: 31%;
      min-width: 92px;
      align-items: center;
      justify-content: center;
      background: rgba(255, 255, 255, .1);
      font-size: clamp(2rem, 5vw, 3.2rem);
    }

    .marina-photo-submit-card__content {
      position: relative;
      z-index: 1;
      display: flex;
      min-width: 0;
      flex: 1;
      flex-direction: column;
      justify-content: center;
      padding: clamp(1rem, 3vw, 1.55rem);
    }

    .marina-photo-submit-card__eyebrow {
      margin-bottom: .38rem;
      font-size: .69rem;
      font-weight: 850;
      letter-spacing: .08em;
      opacity: .82;
      text-transform: uppercase;
    }

    .marina-photo-submit-card__title {
      display: block;
      margin-bottom: .55rem;
      font-size: clamp(1.28rem, 3vw, 1.72rem);
      line-height: 1.1;
    }

    .marina-photo-submit-card__text {
      max-width: 34rem;
      font-size: .82rem;
      line-height: 1.48;
      opacity: .95;
    }

    .marina-photo-submit-card__action {
      display: inline-flex;
      align-items: center;
      gap: .42rem;
      margin-top: .85rem;
      font-size: .79rem;
      font-weight: 850;
    }

    .marina-photo-submit-panel {
      margin: clamp(1.25rem, 4vw, 2rem) 0;
      padding: clamp(1.15rem, 4vw, 2rem);
      border: 1px solid rgba(23, 139, 153, .22);
      border-radius: 22px;
      background:
        radial-gradient(
          circle at top right,
          rgba(23, 139, 153, .14),
          transparent 24rem
        ),
        #fff;
      box-shadow: 0 18px 42px rgba(28, 55, 64, .09);
      scroll-margin-top: 110px;
    }

    .marina-photo-submit-panel[hidden] {
      display: none;
    }

    .marina-photo-submit-panel__head {
      position: relative;
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      gap: 1rem;
      align-items: start;
      margin-bottom: 1.2rem;
    }

    .marina-photo-submit-panel__icon {
      display: inline-flex;
      width: 52px;
      height: 52px;
      align-items: center;
      justify-content: center;
      color: #fff;
      border-radius: 16px;
      background: #178b99;
      font-size: 1.35rem;
    }

    .marina-photo-submit-panel h2 {
      margin: 0 0 .45rem;
      color: var(--marina-text);
      font-size: clamp(1.4rem, 3vw, 1.95rem);
    }

    .marina-photo-submit-panel__head p {
      margin: 0 0 .35rem;
      color: var(--marina-muted);
      line-height: 1.55;
    }

    .marina-photo-submit-panel__close {
      display: inline-flex;
      width: 38px;
      height: 38px;
      align-items: center;
      justify-content: center;
      color: var(--marina-text);
      border: 1px solid rgba(52, 78, 87, .16);
      border-radius: 10px;
      background: rgba(255, 255, 255, .88);
      cursor: pointer;
    }

    .marina-photo-submit__form {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: .9rem;
      min-width: 0;
    }

    .marina-photo-submit__field {
      min-width: 0;
    }

    .marina-photo-submit__field--full,
    .marina-photo-submit__consent,
    .marina-photo-submit__actions {
      grid-column: 1 / -1;
    }

    .marina-photo-submit-panel label {
      display: block;
      margin-bottom: .38rem;
      color: var(--marina-text);
      font-size: .84rem;
      font-weight: 800;
    }

    .marina-photo-submit-panel input,
    .marina-photo-submit-panel select,
    .marina-photo-submit-panel textarea {
      width: 100%;
      min-width: 0;
      padding: .78rem .84rem;
      color: var(--marina-text);
      border: 1px solid rgba(52, 78, 87, .22);
      border-radius: 11px;
      background: #fff;
      font: inherit;
    }

    .marina-photo-submit-panel textarea {
      min-height: 105px;
      resize: vertical;
    }

    .marina-photo-submit-panel input:focus,
    .marina-photo-submit-panel select:focus,
    .marina-photo-submit-panel textarea:focus {
      border-color: #178b99;
      outline: 3px solid rgba(23, 139, 153, .13);
    }

    .marina-photo-submit__help {
      display: block;
      margin-top: .34rem;
      color: var(--marina-muted);
      font-size: .74rem;
      line-height: 1.45;
    }

    .marina-photo-submit__consent {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: .65rem;
      align-items: start;
      padding: .82rem;
      border-radius: 12px;
      background: #f4f8f9;
    }

    .marina-photo-submit__consent input {
      width: 18px;
      height: 18px;
      margin-top: .12rem;
    }

    .marina-photo-submit__consent label {
      margin: 0;
      font-size: .76rem;
      font-weight: 650;
      line-height: 1.5;
    }

    .marina-photo-submit__privacy {
      margin: .45rem 0 0;
      color: var(--marina-muted);
      font-size: .72rem;
      line-height: 1.5;
    }

    .marina-photo-submit__button {
      display: inline-flex;
      min-height: 46px;
      align-items: center;
      justify-content: center;
      gap: .48rem;
      padding: .78rem 1.05rem;
      color: #fff;
      border: 0;
      border-radius: 11px;
      background: #178b99;
      font-weight: 850;
      cursor: pointer;
    }

    .marina-photo-submit__status {
      grid-column: 1 / -1;
      margin: 0 0 .2rem;
      padding: .85rem 1rem;
      border-radius: 11px;
      font-size: .84rem;
      font-weight: 750;
      line-height: 1.45;
    }

    .marina-photo-submit__status--success {
      color: #17663d;
      border: 1px solid rgba(23, 102, 61, .2);
      background: #eaf8f0;
    }

    .marina-photo-submit__status--error {
      color: #87362f;
      border: 1px solid rgba(135, 54, 47, .2);
      background: #fff0ee;
    }

    .marina-photo-submit__honeypot {
      position: absolute !important;
      left: -9999px !important;
      width: 1px !important;
      height: 1px !important;
      overflow: hidden !important;
      opacity: 0 !important;
      pointer-events: none !important;
    }

    @media (max-width: 1199.98px) {
      .marina-photo-submit-card {
        grid-column: span 6;
      }
    }

    @media (max-width: 767.98px) {
      .marina-photo-submit-card {
        grid-column: 1;
        min-height: 230px;
      }
    }

    @media (max-width: 620px) {
      .marina-photo-submit-panel__head {
        grid-template-columns: auto minmax(0, 1fr);
      }

      .marina-photo-submit-panel__close {
        position: absolute;
        top: 0;
        right: 0;
      }

      .marina-photo-submit__form {
        grid-template-columns: 1fr;
      }

      .marina-photo-submit__field,
      .marina-photo-submit__field--full,
      .marina-photo-submit__consent,
      .marina-photo-submit__actions {
        grid-column: 1;
      }
    }

    @media (max-width: 1199.98px) {
      .marina-verified-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 767.98px) {
      .marina-verified-grid {
        grid-template-columns: 1fr;
      }


    }
  

    /* Marina 2.0 — card commerciali uniformi, compatte e leggibili. */
    .marina-uniform-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: .85rem;
    }
    .marina-uniform-card {
      --uniform-accent: var(--marina-sea);
      position: relative;
      display: flex;
      min-width: 0;
      min-height: 185px;
      flex-direction: column;
      gap: .7rem;
      padding: 1rem 1.05rem;
      color: var(--marina-text);
      border: 1px solid rgba(37,71,82,.12);
      border-radius: 18px;
      background: rgba(255,255,255,.95);
      box-shadow: 0 10px 26px rgba(28,55,64,.055);
      text-decoration: none;
    }
    .marina-tone-experiences .marina-uniform-card { --uniform-accent: #c49b28; }
    .marina-tone-restaurants .marina-uniform-card { --uniform-accent: #c87551; }
    .marina-tone-rentals .marina-uniform-card { --uniform-accent: #b36f8a; }
    .marina-directory-panel--stay .marina-uniform-card { --uniform-accent: #6f57a0; }
    .marina-uniform-card--priority { border-color: color-mix(in srgb, var(--uniform-accent) 28%, #fff); box-shadow: 0 13px 30px rgba(28,55,64,.085); }
    .marina-uniform-card__top { display:flex; min-width:0; align-items:flex-start; gap:.72rem; }
    .marina-uniform-card__top > div { min-width:0; }
    .marina-uniform-card__icon,
    .marina-uniform-card__add-icon {
      display:grid; width:40px; height:40px; flex:0 0 auto; place-items:center;
      color:#fff; border-radius:12px; background:var(--uniform-accent); font-size:1rem;
      box-shadow:0 8px 18px color-mix(in srgb, var(--uniform-accent) 22%, transparent);
    }
    .marina-uniform-card h3 { margin:.05rem 0 0; color:var(--marina-text); font-size:1rem; font-weight:880; line-height:1.28; overflow-wrap:anywhere; }
    .marina-uniform-card__category { display:block; margin-top:.25rem; color:var(--marina-muted); font-size:.72rem; line-height:1.35; }
    .marina-uniform-card__badges { display:flex; flex-wrap:wrap; gap:.35rem; }
    .marina-uniform-card__badges span { padding:.3rem .48rem; color:var(--uniform-accent); border:1px solid color-mix(in srgb, var(--uniform-accent) 24%, #fff); border-radius:999px; background:color-mix(in srgb, var(--uniform-accent) 8%, #fff); font-size:.63rem; font-weight:850; }
    .marina-uniform-card__details { display:grid; gap:.42rem; min-width:0; }
    .marina-uniform-card__details p,
    .marina-uniform-card__phone { display:flex; min-width:0; align-items:flex-start; gap:.5rem; margin:0; color:var(--marina-muted); font-size:.78rem; line-height:1.42; text-decoration:none; }
    .marina-uniform-card__details i,
    .marina-uniform-card__phone i { flex:0 0 auto; margin-top:.08rem; color:var(--uniform-accent); }
    .marina-uniform-card__details span,
    .marina-uniform-card__phone span { min-width:0; overflow-wrap:anywhere; }
    .marina-uniform-card__phone:hover,
    .marina-uniform-card__phone:focus-visible { color:var(--uniform-accent); text-decoration:underline; }
    .marina-uniform-card__actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:auto; padding-top:.2rem; }
    .marina-uniform-card__claim,
    .marina-uniform-card__primary { display:inline-flex; min-height:36px; align-items:center; justify-content:center; padding:.48rem .68rem; border-radius:10px; font-size:.72rem; font-weight:850; text-decoration:none; }
    .marina-uniform-card__claim { color:var(--uniform-accent); border:1px solid color-mix(in srgb, var(--uniform-accent) 28%, #fff); background:color-mix(in srgb, var(--uniform-accent) 8%, #fff); }
    .marina-uniform-card__primary { color:#fff; background:var(--uniform-accent); }
    .marina-uniform-card__claim:hover,
    .marina-uniform-card__claim:focus-visible { color:#fff; background:var(--uniform-accent); }
    .marina-uniform-card__primary:hover,
    .marina-uniform-card__primary:focus-visible { color:#fff; filter:brightness(.94); }
    .marina-uniform-card--add { justify-content:center; border:1.5px dashed color-mix(in srgb, var(--uniform-accent) 38%, #fff); background:color-mix(in srgb, var(--uniform-accent) 5%, #fff); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
    .marina-uniform-card--add:hover,
    .marina-uniform-card--add:focus-visible { color:var(--marina-text); transform:translateY(-3px); border-color:var(--uniform-accent); box-shadow:0 14px 32px rgba(28,55,64,.10); outline:none; }
    .marina-uniform-card--add .marina-add-card__action { color:var(--uniform-accent); }
    @media (max-width: 991.98px) { .marina-uniform-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
    @media (max-width: 650px) { .marina-uniform-grid { grid-template-columns:1fr; } .marina-uniform-card { min-height:165px; } }
