.rd-landing { font-family: Georgia, "Times New Roman", serif; }
.rd-landing {

    --green-deep: #0a337f;

    --green-mid: #07469e;

    --green-light: #21739b;

    --gold: #c9a227;

    --gold-rich: #d4a017;

    --gold-light: #e6c35c;

    --cream: #f7f3ea;

    --cream-warm: #ede5d3;

    --ink: #1a2823;

    --ink-soft: #48584f;

  }



  * { margin: 0; padding: 0; box-sizing: border-box; }



  .rd-landing {

    font-family: 'Georgia', 'Times New Roman', serif;

    background: var(--cream);

    color: var(--ink);

    line-height: 1.7;

    -webkit-font-smoothing: antialiased;

  }



  /* ===== HERO ===== */

  .hero {

    position: relative;

    background: linear-gradient(135deg, var(--green-deep) 0%, var(--green-mid) 100%);

    color: var(--cream);

    padding: 100px 20px 120px;

    text-align: center;

    overflow: hidden;

  }



  .hero::before {

    content: '';

    position: absolute;

    inset: 0;

    background-image:

      radial-gradient(circle at 20% 30%, rgba(212, 160, 23, 0.22) 0%, transparent 50%),

      radial-gradient(circle at 80% 70%, rgba(212, 160, 23, 0.15) 0%, transparent 50%);

    pointer-events: none;

  }



  .hero-ornament {

    font-size: 2.5rem;

    color: var(--gold-rich);

    letter-spacing: 0.5em;

    margin-bottom: 24px;

    text-shadow: 0 0 20px rgba(212, 160, 23, 0.4);

  }



  .hero h1 {

    font-size: clamp(2rem, 5vw, 3.5rem);

    font-weight: normal;

    letter-spacing: 0.02em;

    margin-bottom: 20px;

    position: relative;

  }



  .hero h1 .accent {

    color: var(--gold-light);

    font-style: italic;

  }



  .hero-subtitle {

    font-size: clamp(1.05rem, 2vw, 1.35rem);

    max-width: 780px;

    margin: 0 auto 40px;

    color: rgba(247, 243, 234, 0.92);

    font-style: italic;

    line-height: 1.6;

  }



  .hero-motto {

    display: inline-block;

    border-top: 1px solid var(--gold-rich);

    border-bottom: 1px solid var(--gold-rich);

    padding: 14px 36px;

    font-size: clamp(1rem, 1.8vw, 1.2rem);

    color: var(--gold-light);

    letter-spacing: 0.08em;

    text-transform: uppercase;

  }



  /* ===== INTRO ===== */

  .intro {

    max-width: 900px;

    margin: -60px auto 0;

    padding: 60px 40px;

    background: var(--cream-warm);

    border-radius: 4px;

    box-shadow: 0 20px 60px rgba(10, 51, 127, 0.15);

    position: relative;

    z-index: 2;

    text-align: center;

  }



  .intro p {

    font-size: 1.15rem;

    color: var(--ink-soft);

    margin-bottom: 18px;

  }



  .intro p:last-child { margin-bottom: 0; }



  .intro .highlight {

    color: var(--green-deep);

    font-weight: bold;

  }



  /* ===== SECTION ===== */

  .section {

    max-width: 1280px;

    margin: 0 auto;

    padding: 100px 30px 60px;

  }



  .section-title {

    text-align: center;

    font-size: clamp(1.7rem, 3.5vw, 2.5rem);

    font-weight: normal;

    color: var(--green-deep);

    margin-bottom: 16px;

    letter-spacing: 0.02em;

  }



  .section-title::after {

    content: '❦';

    display: block;

    color: var(--gold-rich);

    font-size: 1.6rem;

    margin-top: 16px;

    text-shadow: 0 0 12px rgba(212, 160, 23, 0.3);

  }



  .section-subtitle {

    text-align: center;

    font-size: 1.1rem;

    color: var(--ink-soft);

    max-width: 720px;

    margin: 0 auto 60px;

    font-style: italic;

  }



  /* ===== ТРИ НАПРАВЛЕНИЯ (ГЛАВНЫЕ) ===== */

  .main-directions {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 28px;

    margin-bottom: 40px;

  }



  .main-card {

    background: #fff;

    border-radius: 6px;

    padding: 48px 34px 40px;

    box-shadow: 0 10px 40px rgba(10, 51, 127, 0.1);

    border-top: 5px solid var(--gold-rich);

    text-decoration: none;

    color: inherit;

    display: flex;

    flex-direction: column;

    transition: all 0.35s ease;

    position: relative;

    overflow: hidden;

    cursor: pointer;

  }



  .main-card::before {

    content: '';

    position: absolute;

    bottom: 0; left: 0; right: 0;

    height: 0;

    background: linear-gradient(180deg, transparent 0%, rgba(212, 160, 23, 0.08) 100%);

    transition: height 0.35s ease;

  }



  .main-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 20px 60px rgba(10, 51, 127, 0.2);

    border-top-color: var(--gold);

  }



  .main-card:hover::before { height: 100%; }



  .main-card-icon {

    font-size: 3.4rem;

    margin-bottom: 24px;

    line-height: 1;

    filter: drop-shadow(0 4px 8px rgba(212, 160, 23, 0.25));

    position: relative;

    z-index: 1;

  }



  .main-card-title {

    font-size: 1.5rem;

    color: var(--green-deep);

    font-weight: normal;

    margin-bottom: 10px;

    line-height: 1.3;

    position: relative;

    z-index: 1;

  }



  .main-card-tag {

    display: inline-block;

    font-size: 0.72rem;

    text-transform: uppercase;

    letter-spacing: 0.12em;

    color: var(--gold-rich);

    margin-bottom: 20px;

    font-family: 'Helvetica', sans-serif;

    font-weight: bold;

    position: relative;

    z-index: 1;

  }



  .main-card-text {

    font-size: 1rem;

    color: var(--ink-soft);

    flex-grow: 1;

    margin-bottom: 28px;

    position: relative;

    z-index: 1;

  }



  .main-card-cta {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    color: var(--green-deep);

    font-family: 'Helvetica', sans-serif;

    font-size: 0.85rem;

    letter-spacing: 0.1em;

    text-transform: uppercase;

    font-weight: bold;

    position: relative;

    z-index: 1;

    transition: gap 0.3s ease, color 0.3s ease;

  }



  .main-card:hover .main-card-cta {

    gap: 16px;

    color: var(--gold-rich);

  }



  .main-card-cta::after {

    content: '→';

    font-size: 1.1rem;

  }



  /* ===== ПОДНАПРАВЛЕНИЯ ===== */

  .sub-section {

    max-width: 1280px;

    margin: 0 auto;

    padding: 40px 30px 100px;

  }



  .sub-title {

    text-align: center;

    font-size: clamp(1.4rem, 2.5vw, 1.9rem);

    color: var(--green-deep);

    font-weight: normal;

    margin-bottom: 50px;

  }



  .sub-title span {

    color: var(--gold-rich);

    font-style: italic;

  }



  .sub-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));

    gap: 24px;

  }



  .sub-card {

    background: var(--cream-warm);

    border-radius: 4px;

    padding: 34px 28px;

    border-left: 3px solid var(--gold-rich);

    transition: all 0.3s ease;

  }



  .sub-card:hover {

    background: #fff;

    box-shadow: 0 8px 30px rgba(10, 51, 127, 0.1);

    transform: translateX(4px);

  }



  .sub-card h4 {

    font-size: 1.15rem;

    color: var(--green-deep);

    font-weight: normal;

    margin-bottom: 12px;

    display: flex;

    align-items: center;

    gap: 12px;

  }



  .sub-card h4 .mini-icon {

    font-size: 1.4rem;

    filter: drop-shadow(0 2px 4px rgba(212, 160, 23, 0.2));

  }



  .sub-card p {

    font-size: 0.98rem;

    color: var(--ink-soft);

  }



  /* ===== AR-БЛОК ===== */

  .ar-block {

    background: linear-gradient(135deg, var(--green-deep) 0%, var(--green-mid) 100%);

    color: var(--cream);

    border-radius: 6px;

    padding: 70px 50px;

    margin: 60px auto;

    max-width: 1280px;

    position: relative;

    overflow: hidden;

    box-shadow: 0 20px 60px rgba(10, 51, 127, 0.25);

  }



  .ar-block::before {

    content: '';

    position: absolute;

    inset: 0;

    background-image:

      radial-gradient(circle at 90% 10%, rgba(212, 160, 23, 0.28) 0%, transparent 40%),

      radial-gradient(circle at 10% 90%, rgba(212, 160, 23, 0.18) 0%, transparent 40%);

    pointer-events: none;

  }



  .ar-content {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 50px;

    align-items: center;

  }



  .ar-block h2 {

    font-size: clamp(1.6rem, 3vw, 2.2rem);

    font-weight: normal;

    margin-bottom: 20px;

    color: var(--gold-light);

  }



  .ar-block p {

    font-size: 1.05rem;

    color: rgba(247, 243, 234, 0.94);

    margin-bottom: 16px;

  }



  .ar-steps {

    list-style: none;

  }



  .ar-steps li {

    padding: 14px 0 14px 50px;

    position: relative;

    border-bottom: 1px solid rgba(230, 195, 92, 0.3);

    font-size: 1rem;

  }



  .ar-steps li:last-child { border-bottom: none; }



  .ar-steps li::before {

    content: attr(data-num);

    position: absolute;

    left: 0;

    top: 50%;

    transform: translateY(-50%);

    width: 34px;

    height: 34px;

    border-radius: 50%;

    border: 1.5px solid var(--gold-light);

    color: var(--gold-light);

    display: flex;

    align-items: center;

    justify-content: center;

    font-family: 'Helvetica', sans-serif;

    font-size: 0.9rem;

    font-weight: bold;

    background: rgba(212, 160, 23, 0.1);

  }



  /* ===== РЕЛИКВИИ ===== */

  .relic-block {

    max-width: 1280px;

    margin: 0 auto;

    padding: 40px 30px 100px;

  }



  .relic-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 60px;

    align-items: center;

  }



  .relic-visual {

    background: linear-gradient(135deg, var(--cream-warm) 0%, #d4c7a8 100%);

    border-radius: 6px;

    aspect-ratio: 1;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 8rem;

    position: relative;

    overflow: hidden;

    filter: drop-shadow(0 20px 40px rgba(10, 51, 127, 0.15));

  }



  .relic-visual::after {

    content: '';

    position: absolute;

    inset: 20px;

    border: 2px solid var(--gold-rich);

    border-radius: 3px;

    pointer-events: none;

    box-shadow: inset 0 0 30px rgba(212, 160, 23, 0.15);

  }



  .relic-block h2 {

    font-size: clamp(1.6rem, 3vw, 2.2rem);

    color: var(--green-deep);

    font-weight: normal;

    margin-bottom: 24px;

  }



  .relic-block p {

    font-size: 1.05rem;

    color: var(--ink-soft);

    margin-bottom: 16px;

  }



  .relic-flow {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 30px;

    flex-wrap: wrap;

  }



  .relic-flow span:not(.arrow) {

    padding: 8px 16px;

    background: var(--green-deep);

    color: var(--gold-light);

    border-radius: 3px;

    font-family: 'Helvetica', sans-serif;

    font-size: 0.82rem;

    letter-spacing: 0.05em;

    font-weight: bold;

  }



  .relic-flow .arrow {

    color: var(--gold-rich);

    font-size: 1.3rem;

    font-weight: bold;

  }



  /* ===== CTA ===== */

  .cta {

    background: var(--cream-warm);

    padding: 90px 30px;

    text-align: center;

    border-top: 1px solid rgba(212, 160, 23, 0.25);

    border-bottom: 1px solid rgba(212, 160, 23, 0.25);

  }



  .cta h2 {

    font-size: clamp(1.5rem, 3vw, 2.1rem);

    color: var(--green-deep);

    font-weight: normal;

    margin-bottom: 20px;

  }



  .cta p {

    font-size: 1.1rem;

    color: var(--ink-soft);

    max-width: 680px;

    margin: 0 auto 36px;

  }



  .cta-buttons {

    display: flex;

    gap: 16px;

    justify-content: center;

    flex-wrap: wrap;

  }



  .btn {

    display: inline-block;

    padding: 16px 40px;

    font-family: 'Helvetica', sans-serif;

    font-size: 0.88rem;

    letter-spacing: 0.12em;

    text-transform: uppercase;

    text-decoration: none;

    border-radius: 3px;

    transition: all 0.3s ease;

    cursor: pointer;

    border: none;

    font-weight: bold;

  }



  .btn-primary {

    background: var(--green-deep);

    color: var(--gold-light);

    box-shadow: 0 6px 20px rgba(10, 51, 127, 0.25);

  }



  .btn-primary:hover {

    background: var(--green-mid);

    transform: translateY(-2px);

    box-shadow: 0 10px 30px rgba(10, 51, 127, 0.35);

  }



  .btn-secondary {

    background: transparent;

    color: var(--green-deep);

    border: 2px solid var(--green-deep);

  }



  .btn-secondary:hover {

    background: var(--green-deep);

    color: var(--gold-light);

    transform: translateY(-2px);

  }



  /* ===== FOOTER ===== */

  .footer {

    background: var(--green-deep);

    color: rgba(247, 243, 234, 0.75);

    padding: 50px 30px 30px;

    text-align: center;

    font-size: 0.9rem;

  }



  .footer-motto {

    color: var(--gold-light);

    font-style: italic;

    font-size: 1.15rem;

    margin-bottom: 20px;

    text-shadow: 0 0 12px rgba(230, 195, 92, 0.3);

  }



  /* ===== MOBILE ===== */

  @media (max-width: 980px) {

    .main-directions { grid-template-columns: 1fr; gap: 20px; }

    .ar-content { grid-template-columns: 1fr; gap: 30px; }

    .relic-grid { grid-template-columns: 1fr; gap: 40px; }

  }



  @media (max-width: 768px) {

    .hero { padding: 70px 20px 90px; }

    .intro { margin: -40px 16px 0; padding: 40px 24px; }

    .section { padding: 70px 20px 40px; }

    .sub-section { padding: 30px 20px 70px; }

    .ar-block { padding: 50px 26px; margin: 40px 16px; }

    .relic-block { padding: 30px 20px 70px; }

    .relic-visual { font-size: 5rem; }

    .main-card { padding: 36px 26px 32px; }

  }