/* =========================================================
   Rajasthan Travel Planning Assistance
   Image-led, conversion-led service page.
   ========================================================= */

/* Hero
   --------------------------------------------------------- */

.travel-plan-hero {
    min-height: 760px;
    display: flex;
    align-items: center;
    background-position: center;
    background-size: cover;
}

.travel-plan-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(390px, .88fr);
    gap: 92px;
    align-items: center;
}

.travel-plan-hero-copy h1 {
    max-width: 820px;
    margin: 18px 0 24px;
    color: #fff;
    font-size: clamp(3.4rem, 5.4vw, 6rem);
    line-height: 1;
}

.travel-plan-hero-copy > p {
    max-width: 720px;
    margin: 0;
    color: rgba(255, 255, 255, .86);
    font-size: 1.14rem;
    line-height: 1.9;
}

.travel-plan-hero .breadcrumb-lite,
.travel-plan-hero .breadcrumb-lite a {
    color: rgba(255, 255, 255, .68);
}

.travel-plan-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    margin-top: 36px;
}

.travel-plan-hero-points span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .88);
    font-size: .82rem;
}

.travel-plan-hero-points i {
    color: var(--orange);
}

.hero-enquiry-card {
    padding: 42px;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 28px 80px rgba(0, 0, 0, .22);
}

.hero-enquiry-step {
    display: block;
    margin-bottom: 9px;
    color: var(--orange);
    font-size: .69rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.hero-enquiry-head h2 {
    margin: 0 0 10px;
    color: var(--navy);
    font-size: 1.75rem;
}

.hero-enquiry-head p {
    margin: 0 0 26px;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.65;
}

.hero-enquiry-form {
    display: grid;
    gap: 16px;
}

.hero-enquiry-form label,
.travel-enquiry-form label {
    display: grid;
    gap: 7px;
    color: var(--navy);
    font-size: .78rem;
    font-weight: 600;
}

.hero-enquiry-form input,
.travel-enquiry-form input,
.travel-enquiry-form select,
.travel-enquiry-form textarea {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 0;
    background: #fff;
    color: var(--charcoal);
    font: inherit;
    font-weight: 400;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.hero-enquiry-form input {
    min-height: 47px;
    padding: 10px 12px;
}

.hero-enquiry-form input:focus,
.travel-enquiry-form input:focus,
.travel-enquiry-form select:focus,
.travel-enquiry-form textarea:focus {
    border-color: var(--orange);
    box-shadow: 0 0 0 3px rgba(254, 132, 5, .09);
}

.hero-enquiry-submit {
    width: 100%;
    margin-top: 3px;
}

.hero-enquiry-privacy {
    margin: 2px 0 0;
    color: var(--muted);
    font-size: .69rem;
    line-height: 1.5;
    text-align: center;
}

.hero-enquiry-privacy i {
    margin-right: 5px;
    color: var(--orange);
}


/* Planning approach
   --------------------------------------------------------- */

.section-intro--center {
    max-width: 860px;
    margin: 0 auto 78px;
    text-align: center;
}

.planning-approach-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.planning-approach-card {
    position: relative;
    min-height: 195px;
    padding: 28px 34px;
    border: 1px solid var(--orange);
    background: var(--orange);
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr) 78px;
    gap: 28px;
    align-items: center;
    overflow: hidden;
    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.planning-approach-card-icon {
    width: 132px;
    height: 118px;
    display: grid;
    place-items: center;
    background: #fff;
}

.planning-approach-card-icon img {
    width: 120px;
    height: 100px;
    object-fit: contain;
    transition:
        transform .3s ease;
}

.planning-approach-card-copy h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 1.28rem;
}

.planning-approach-card-copy p {
    margin: 0;
    color: rgba(255, 255, 255, .88);
    line-height: 1.72;
}

.planning-approach-number {
    display: grid;
    min-height: 96px;
    place-items: center;
    border-left: 1px dashed rgba(255, 255, 255, .48);
    color: #fff;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1;
}

.planning-approach-card:hover {
    transform: translateY(-6px);
    background: #fff;
    border-color: var(--orange);
    box-shadow: 0 22px 50px rgba(0, 27, 57, .1);
}

.planning-approach-card:hover .planning-approach-card-icon {
    background: var(--cream);
}

.planning-approach-card:hover .planning-approach-card-icon img {
    transform: translateY(-2px) scale(1.02);
}

.planning-approach-card:hover .planning-approach-card-copy h3 {
    color: var(--navy);
}

.planning-approach-card:hover .planning-approach-card-copy p {
    color: var(--charcoal);
}

.planning-approach-card:hover .planning-approach-number {
    border-left-color: rgba(254, 132, 5, .45);
    color: var(--orange);
}

/* Comprehensive planning coverage
   --------------------------------------------------------- */

.planning-coverage-intro {
    margin-bottom: 64px !important;
}

.planning-destination-block {
    margin-bottom: 62px;
}

.planning-destination-head {
    max-width: 700px;
    margin: 0 auto 30px;
    text-align: center;
}

.planning-destination-head > span {
    display: block;
    margin-bottom: 8px;
    color: var(--orange);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.planning-destination-head h3 {
    margin: 0;
    color: var(--navy);
    font-size: 1.45rem;
    font-weight: 500;
}

.planning-destination-grid {
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
}

.planning-destination-enquiry {
    justify-content: center;
    text-align: center;
}

.planning-destination-enquiry .destination-open-copy {
    align-items: center;
}

.planning-service-capability-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.planning-service-capability {
    min-height: 390px;
    padding: 40px 34px;
    border: 1px solid var(--line);
    background: #fff;
    display: flex;
    flex-direction: column;
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.planning-service-capability:hover {
    transform: translateY(-6px);
    border-color: rgba(254, 132, 5, .55);
    box-shadow: 0 22px 50px rgba(0, 27, 57, .09);
}

.planning-service-icon {
    width: 66px;
    height: 66px;
    margin-bottom: 34px;
    display: grid;
    place-items: center;
    background: var(--navy);
    color: var(--orange);
    font-size: 1.6rem;
}

.planning-service-copy {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.planning-service-copy > span {
    display: block;
    margin-bottom: 9px;
    color: var(--orange);
    font-size: .69rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.planning-service-copy h3 {
    margin-bottom: 16px;
    color: var(--navy);
    font-size: 1.35rem;
}

.planning-service-copy p {
    margin: 0 0 28px;
    color: var(--muted);
    line-height: 1.8;
}

.planning-service-copy a {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    width: fit-content;
    margin-top: auto;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--orange);
    color: var(--navy);
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
}

.planning-service-copy a i {
    color: var(--orange);
}

/* Narrow trust highlight
   --------------------------------------------------------- */

.planning-trust-strip {
    background: var(--navy);
}

.planning-trust-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}

.planning-trust-item {
    min-height: 112px;
    padding: 26px 20px;
    border-right: 1px solid rgba(255, 255, 255, .14);
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.planning-trust-item:last-child {
    border-right: 0;
}

.planning-trust-item i {
    flex: 0 0 auto;
    color: var(--orange);
    font-size: 1.15rem;
}

.planning-trust-item strong {
    color: #fff;
    font-size: .82rem;
    font-weight: 600;
    line-height: 1.45;
}

/* Multi-step enquiry
   --------------------------------------------------------- */

.travel-enquiry-heading {
    max-width: 820px;
    margin-bottom: 60px;
}

.travel-enquiry-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 42px;
    align-items: start;
}

.travel-enquiry-form {
    padding: 46px;
    border: 1px solid var(--line);
    background: #fff;
}

.travel-form-progress {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-bottom: 42px;
    border-bottom: 1px solid var(--line);
}

.travel-progress-step {
    position: relative;
    padding: 0 0 18px;
    border: 0;
    background: transparent;
    color: var(--muted);
    text-align: left;
}

.travel-progress-step span {
    display: inline-grid;
    width: 28px;
    height: 28px;
    margin-right: 7px;
    border-radius: 50%;
    place-items: center;
    background: var(--paper);
    color: var(--muted);
    font-size: .72rem;
    font-weight: 700;
}

.travel-progress-step strong {
    font-size: .74rem;
}

.travel-progress-step.is-active,
.travel-progress-step.is-complete {
    color: var(--navy);
}

.travel-progress-step.is-active::after,
.travel-progress-step.is-complete::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: var(--orange);
}

.travel-progress-step.is-active span,
.travel-progress-step.is-complete span {
    background: var(--orange);
    color: #fff;
}

.travel-form-step {
    display: none;
}

.travel-form-step.is-active {
    display: block;
}

.travel-form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 24px;
}

.travel-form-full {
    grid-column: 1 / -1;
}

.travel-enquiry-form input,
.travel-enquiry-form select,
.travel-enquiry-form textarea {
    min-height: 48px;
    padding: 11px 13px;
}

.travel-enquiry-form textarea {
    resize: vertical;
}

.travel-form-actions {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    margin-top: 30px;
}

.travel-form-note {
    max-width: 440px;
    color: var(--muted);
    font-size: .72rem;
    line-height: 1.55;
}

.travel-interest-fieldset {
    margin: 0 0 28px;
    padding: 0;
    border: 0;
}

.travel-interest-fieldset legend {
    margin-bottom: 16px;
    color: var(--navy);
    font-size: .84rem;
    font-weight: 700;
}

.travel-interest-options {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.travel-interest-options label {
    display: flex;
    grid-template-columns: none;
    gap: 8px;
    align-items: center;
    min-height: 48px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    background: #fff;
    font-weight: 500;
}

.travel-interest-options input {
    width: auto;
    min-height: auto;
}

.travel-review {
    padding: 28px;
    background: var(--cream);
}

.travel-review h3 {
    margin: 10px 0 20px;
    color: var(--navy);
}

.travel-review-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 24px;
}

.travel-review-item span {
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.travel-review-item strong {
    color: var(--navy);
    font-size: .9rem;
}

.form-status {
    margin-top: 16px;
    color: var(--navy);
    font-size: .78rem;
}

.form-status.is-error {
    color: #a92727;
}

.form-status.is-success {
    color: #2e6a43;
}

.travel-enquiry-aside {
    display: grid;
    gap: 22px;
}

.travel-enquiry-aside-card,
.travel-enquiry-contact {
    padding: 30px;
    border: 1px solid var(--line);
    background: #fff;
}

.travel-enquiry-aside-card ul {
    display: grid;
    gap: 22px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

.travel-enquiry-aside-card li {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 14px;
    align-items: start;
    color: var(--navy);
    font-size: .84rem;
    line-height: 1.65;
}

.travel-enquiry-aside-card i {
    color: var(--orange);
    font-size: 1.1rem;
}

.travel-enquiry-contact span,
.travel-enquiry-contact a {
    display: block;
}

.travel-enquiry-contact span {
    margin-bottom: 12px;
    color: var(--muted);
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .1em;
}

.travel-enquiry-contact a {
    margin-top: 7px;
    color: var(--navy);
    font-weight: 700;
    text-decoration: none;
}

/* Responsive
   --------------------------------------------------------- */

@media (max-width: 1199px) {
    .planning-journey-flow {
        grid-template-columns: repeat(4, 1fr);
        gap: 34px 22px;
    }

    .planning-flow-line {
        display: none;
    }

    .holiday-possibilities-grid {
        grid-template-columns: 1fr;
        gap: 60px;
    }
}

@media (max-width: 991px) {
    .travel-plan-hero {
        min-height: auto;
        padding: 120px 0 90px;
    }

    .travel-plan-hero-grid,
    .travel-enquiry-layout {
        grid-template-columns: 1fr;
    }

    .hero-enquiry-card {
        max-width: 620px;
    }

    .planning-benefit-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .travel-interest-options {
        grid-template-columns: repeat(2, 1fr);
    }

    .travel-enquiry-aside {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 575px) {
    .travel-plan-hero {
        padding: 100px 0 70px;
    }

    .travel-plan-hero-copy h1 {
        font-size: 2.8rem;
    }

    .hero-enquiry-card,
    .travel-enquiry-form {
        padding: 30px 24px;
    }

    .planning-journey-flow,
    .planning-benefit-grid,
    .travel-form-grid,
    .travel-review-list,
    .travel-enquiry-aside {
        grid-template-columns: 1fr;
    }

    .holiday-image-mosaic {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 230px 180px;
    }

    .holiday-image--large {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .route-story-section {
        min-height: 620px;
    }

    .route-story-highlights {
        grid-template-columns: 1fr;
    }

    .travel-form-progress {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .travel-progress-step strong {
        display: none;
    }

    .travel-form-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .travel-form-actions .btn {
        width: 100%;
    }

    .travel-form-note {
        order: 2;
    }

    .travel-interest-options {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 1199px) {
    .planning-approach-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .coverage-link-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 991px) {
    .planning-coverage-grid,
    .why-plan-grid {
        grid-template-columns: 1fr;
    }

    .coverage-panel--destinations {
        grid-column: auto;
    }

    .coverage-link-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .coverage-image-strip {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .planning-approach-grid,
    .coverage-link-grid,
    .coverage-image-strip {
        grid-template-columns: 1fr;
    }

    .planning-approach-card,
    .coverage-panel,
    .why-plan-card {
        min-height: auto;
        padding: 30px 24px;
    }

    .coverage-image-strip figure {
        height: 220px;
    }
}


/* v40 — Planning Approach card responsiveness */

@media (max-width: 991px) {
    .planning-approach-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .planning-approach-card {
        min-height: auto;
        padding: 24px 20px;
        grid-template-columns: 88px minmax(0, 1fr) 48px;
        gap: 16px;
    }

    .planning-approach-card-icon {
        width: 84px;
        height: 80px;
    }

    .planning-approach-card-icon img {
        width: 78px;
        height: 68px;
    }

    .planning-approach-card-copy h3 {
        font-size: 1rem;
    }

    .planning-approach-card-copy p {
        font-size: .78rem;
        line-height: 1.55;
    }

    .planning-approach-number {
        min-height: 74px;
        font-size: 1.5rem;
    }
}


/* v41 — form field visibility and date picker behaviour */

.hero-enquiry-form input,
.travel-enquiry-form input,
.travel-enquiry-form select,
.travel-enquiry-form textarea,
.destination-idea-modal .form-control {
    border: 1px solid #bfc5cc;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(0, 27, 57, .025);
}

.hero-enquiry-form input:hover,
.travel-enquiry-form input:hover,
.travel-enquiry-form select:hover,
.travel-enquiry-form textarea:hover,
.destination-idea-modal .form-control:hover {
    border-color: #8f99a5;
}

.travel-date-input {
    color-scheme: dark;
    cursor: pointer;
}

.travel-date-input::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: .9;
}

/* Review: title/value on one line like a compact table */

.travel-review-list {
    grid-template-columns: 1fr;
    gap: 0;
    border-top: 1px solid var(--line);
}

.travel-review-item {
    display: grid;
    grid-template-columns: minmax(150px, .42fr) minmax(0, 1fr);
    gap: 24px;
    padding: 12px 0;
    border-bottom: 1px solid var(--line);
    align-items: baseline;
}

.travel-review-item span {
    margin: 0;
    color: var(--muted);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.travel-review-item strong {
    color: var(--navy);
    font-size: .9rem;
    font-weight: 600;
}

/* destination modal */

.destination-idea-modal .modal-content {
    border: 0;
    border-radius: 0;
    box-shadow: 0 30px 80px rgba(0, 27, 57, .22);
}

.destination-idea-modal .modal-body {
    padding: 42px 40px 38px;
}

.destination-idea-modal h2 {
    color: var(--navy);
    margin: 10px 0 14px;
}

.destination-idea-modal p {
    color: var(--muted);
    line-height: 1.75;
}

.destination-modal-close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 2;
}

@media (max-width: 1199px) {
    .planning-destination-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 991px) {
    .planning-destination-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .planning-service-capability-grid {
        grid-template-columns: 1fr;
    }

    .planning-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .planning-trust-item:nth-child(even) {
        border-right: 0;
    }

    .planning-trust-item:last-child {
        grid-column: 1 / -1;
        border-top: 1px solid rgba(255, 255, 255, .14);
    }
}

@media (max-width: 575px) {
    .planning-destination-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .planning-service-capability {
        min-height: auto;
        padding: 30px 24px;
    }

    .planning-trust-grid {
        grid-template-columns: 1fr;
    }

    .planning-trust-item,
    .planning-trust-item:nth-child(even) {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .14);
    }

    .planning-trust-item:last-child {
        grid-column: auto;
    }

    .travel-review-item {
        grid-template-columns: 1fr;
        gap: 3px;
    }

    .destination-idea-modal .modal-body {
        padding: 38px 22px 24px;
    }
}


/* =========================================================
   v42 — Travel Planning refinement
   ========================================================= */

/* Form label alignment
   Keep helper text such as "(optional)" and "(if known)"
   on the same line as the field title.
   --------------------------------------------------------- */

.hero-enquiry-form label,
.travel-enquiry-form label {
    display: block;
    color: var(--navy);
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.45;
}

.hero-enquiry-form label > input,
.travel-enquiry-form label > input,
.travel-enquiry-form label > select,
.travel-enquiry-form label > textarea {
    display: block;
    margin-top: 7px;
}

.optional-label {
    display: inline;
    margin-left: 4px;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 400;
    white-space: nowrap;
}

/* Capability cards
   --------------------------------------------------------- */

.planning-service-capability {
    min-height: 500px;
}

.planning-service-list {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.planning-service-list li {
    position: relative;
    padding-left: 18px;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.65;
}

.planning-service-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .72em;
    width: 6px;
    height: 6px;
    background: var(--orange);
}

/* Trust highlight: full section breathing room
   --------------------------------------------------------- */

.planning-trust-strip {
    padding: var(--space-section) 0;
    background: var(--navy);
}

.planning-trust-grid {
    border-top: 1px solid rgba(255, 255, 255, .16);
    border-bottom: 1px solid rgba(255, 255, 255, .16);
}

.planning-trust-item {
    min-height: 170px;
    padding: 42px 28px;
    gap: 16px;
    flex-direction: column;
}

.planning-trust-item i {
    font-size: 1.7rem;
}

.planning-trust-item strong {
    font-size: 1rem;
    line-height: 1.55;
}

/* Final review: visible bordered table
   --------------------------------------------------------- */

.travel-review {
    padding: 0;
    background: transparent;
}

.travel-review > .eyebrow,
.travel-review > h3 {
    padding-left: 2px;
    padding-right: 2px;
}

.travel-review-list {
    display: block;
    margin-top: 24px;
    border: 1px solid #bfc5cc;
    background: #fff;
}

.travel-review-item {
    display: grid;
    grid-template-columns: minmax(170px, .36fr) minmax(0, 1fr);
    gap: 0;
    padding: 0;
    border-bottom: 1px solid #d7dbe0;
    align-items: stretch;
}

.travel-review-item:last-child {
    border-bottom: 0;
}

.travel-review-item span,
.travel-review-item strong {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 11px 14px;
}

.travel-review-item span {
    margin: 0;
    border-right: 1px solid #d7dbe0;
    background: #f5f6f8;
    color: var(--navy);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: none;
}

.travel-review-item strong {
    color: var(--charcoal);
    font-size: .9rem;
    font-weight: 500;
}

@media (max-width: 991px) {
    .planning-service-capability {
        min-height: auto;
    }
}

@media (max-width: 575px) {
    .planning-trust-strip {
        padding: 78px 0;
    }

    .planning-trust-item {
        min-height: 145px;
        padding: 34px 22px;
    }

    .travel-review-item {
        grid-template-columns: minmax(115px, .42fr) minmax(0, 1fr);
    }

    .travel-review-item span,
    .travel-review-item strong {
        min-height: 44px;
        padding: 9px 10px;
    }
}


/* =========================================================
   v114 — Holiday Planning visual refinements
   ========================================================= */

/* Our Planning Approach:
   hover icon panel becomes orange and artwork turns white. */
.planning-approach-card:hover .planning-approach-card-icon{
  background:var(--orange)!important;
}
.planning-approach-card:hover .planning-approach-card-icon img{
  filter:brightness(0) invert(1);
}

/* Three service capability cards below Destinations:
   dark navy border gives stronger separation without more orange. */
.planning-service-capability.card-service-blue-border{
  border:1px solid var(--navy)!important;
}
.planning-service-capability.card-service-blue-border:hover{
  border-color:var(--navy)!important;
}

/* Why Plan With Aakash blue section */
.planning-trust-strip{
  padding:96px 0;
  background:var(--navy);
}
.planning-trust-heading{
  max-width:900px;
  margin:0 auto 46px;
  text-align:center;
}
.planning-trust-heading .section-title{
  color:#fff;
  margin-bottom:18px;
}
.planning-trust-heading p{
  max-width:760px;
  margin:0 auto;
  color:rgba(255,255,255,.72);
  line-height:1.82;
}
.planning-trust-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border:0;
  gap:0;
}
.planning-trust-item{
  min-height:220px;
  padding:30px 24px;
  display:block;
  text-align:left;
  border-right:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  border-top:1px solid rgba(255,255,255,.16);
}
.planning-trust-item:first-child{
  border-left:1px solid rgba(255,255,255,.16);
}
.planning-trust-item i{
  display:block;
  margin-bottom:24px;
  color:var(--orange);
  font-size:1.45rem;
}
.planning-trust-item strong{
  display:block;
  margin-bottom:10px;
  color:#fff;
  font-size:.9rem;
}
.planning-trust-item span{
  display:block;
  color:rgba(255,255,255,.65);
  font-size:.76rem;
  line-height:1.65;
}
.planning-trust-item.card-blue-soft:hover{
  background:var(--card-hover-blue)!important;
  border-color:#b8d0e6!important;
}
.planning-trust-item.card-blue-soft:hover i{
  color:var(--orange)!important;
}
.planning-trust-item.card-blue-soft:hover strong{
  color:var(--navy)!important;
}
.planning-trust-item.card-blue-soft:hover span{
  color:#526473!important;
}

@media(max-width:1199px){
  .planning-trust-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:991px){
  .planning-trust-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:575px){
  .planning-trust-strip{
    padding:72px 0;
  }
  .planning-trust-heading{
    text-align:left;
    margin-bottom:34px;
  }
  .planning-trust-heading p{
    margin-left:0;
    margin-right:0;
  }
  .planning-trust-grid{
    grid-template-columns:1fr;
  }
}


/* v118 — What We Can Plan & Arrange centred heading */
.planning-coverage-intro--center{
  max-width:900px;
  margin:0 auto 64px!important;
  padding:0!important;
  display:block!important;
  text-align:center;
}
.planning-coverage-intro--center .section-title{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:18px;
}
.planning-coverage-intro--center .lead-muted{
  max-width:720px;
  margin:0 auto!important;
}
@media(max-width:575px){
  .planning-coverage-intro--center{
    text-align:left;
    margin-left:0!important;
    margin-right:0!important;
  }
  .planning-coverage-intro--center .section-title,
  .planning-coverage-intro--center .lead-muted{
    margin-left:0!important;
    margin-right:0!important;
  }
}
