/* Global Outlook page-isolated stylesheet — restored with two-step order flow. */
/* ==========================================================================
   Consensus Forecasts Global Outlook: 2026–2036
   ========================================================================== */

body.page-template-page-global-outlook .site-content,
body.page-template-page-global-outlook-php .site-content,
body.page-template-page-global-outlook .site-content > .wrap,
body.page-template-page-global-outlook-php .site-content > .wrap {
    max-width: none;
    margin: 0;
    padding: 0;
}

body.page-template-page-global-outlook #primary,
body.page-template-page-global-outlook-php #primary {
    float: none;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.global-outlook-page {
    --go-navy: #153f6b;
    --go-navy-deep: #103651;
    --go-blue: #2f75b7;
    --go-teal: #2f8f83;
    --go-purple: #2874a6;
    --go-gold: #b9822e;
    --go-text: #344b5e;
    --go-muted: #607486;
    --go-line: #dce6ee;
    --go-soft: #f5f8fb;
    --go-pale: #edf5fa;
    width: 100%;
    color: var(--go-text);
    background: #fff;
    font-family: 'Rubik', Arial, sans-serif;
}

.global-outlook-page *,
.global-outlook-page *::before,
.global-outlook-page *::after {
    box-sizing: border-box;
}

.global-outlook-page p,
.global-outlook-page li {
    text-align: left ;
    text-justify: auto ;
    word-spacing: normal ;
}

.go-shell {
    width: min(1180px, calc(100% - 64px));
    margin: 0 auto;
}

.go-eyebrow,
.go-kicker {
    display: inline-block;
    color: var(--go-blue);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.go-kicker-light {
    color: #93c6ea;
}

.go-hero {
    overflow: hidden;
    padding: 82px 0 70px;
    border-bottom: 1px solid #e7eef3;
    background:
        radial-gradient(circle at 86% 18%, rgba(47,117,183,.10), transparent 30%),
        linear-gradient(180deg, #f6f9fc 0%, #fff 100%);


    position: relative;
    isolation: isolate;
}

.go-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("images/banner-bg-img.jpg");
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    opacity: .38;
    -webkit-mask-image: radial-gradient(ellipse 66% 76% at 57% 42%, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .62) 34%, rgba(0, 0, 0, .26) 70%, transparent 100%);
    mask-image: radial-gradient(ellipse 66% 76% at 57% 42%, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .62) 34%, rgba(0, 0, 0, .26) 70%, transparent 100%);
}

.go-hero > * {
    position: relative;
    z-index: 1;
}

.go-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(340px, .65fr);
    gap: 64px;
    align-items: center;
}

.go-hero h1 {
    max-width: 820px;
    margin: 16px 0 21px;
    color: var(--go-navy);
    font-family: var(--cei-font-editorial, Georgia, 'Times New Roman', serif);
    font-size: clamp(40px, 4.5vw, 54px);
    font-weight: 400;
    line-height: 1.05;
    letter-spacing: -.03em;
    text-align: left;
    text-transform: none;
}

.go-hero-title-line {
    display: block;
    white-space: nowrap;
}

.go-hero-lead {
    max-width: 790px;
    margin: 0;
    color: #526b7f;
    font-size: 18px;
    line-height: 1.67;
}

.go-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 29px;
}

.go-button {
    display: inline-flex;
    min-height: 47px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 20px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none ;
    transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.go-button-primary,
.go-button-primary:visited {
    border: 1px solid var(--go-navy);
    background: var(--go-navy);
    color: #fff ;
}

.go-button-primary:hover,
.go-button-primary:focus-visible {
    border-color: #1f587f;
    background: #1f587f;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(21,63,98,.14);
}

.go-button-secondary,
.go-button-secondary:visited {
    border: 1px solid #b9cbd8;
    background: #fff;
    color: var(--go-navy);
}

.go-button-secondary:hover,
.go-button-secondary:focus-visible {
    border-color: #8daabd;
    background: #f3f7fa;
    color: var(--go-navy);
}

.go-hero-price {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    align-items: baseline;
    margin-top: 25px;
    color: #637789;
    font-size: 14px;
}

.go-hero-price > span {
    font-weight: 700;
    color: var(--go-navy);
}

.go-hero-price strong {
    color: var(--go-blue);
    font-size: 15px;
    font-weight: 750;
}

.go-hero-price small {
    flex-basis: 100%;
    color: #778998;
    font-size: 14px;
}

.go-hero-proof {
    position: relative;
    top: 65px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
    gap: 1px;
    border: 1px solid #d8e4ec;
    border-radius: 12px;
    background: #d8e4ec;
    box-shadow: 0 18px 46px rgba(17,61,94,.07);
}

.go-hero-proof > div {
    min-height: 132px;
    padding: 24px 21px;
    background: rgba(255,255,255,.98);
}

.go-hero-proof strong,
.go-hero-proof span {
    display: block;
}

.go-hero-proof strong {
    color: var(--go-navy);
    font-size: 27px;
    font-weight: 750;
    line-height: 1.08;
    letter-spacing: -.025em;
}

.go-hero-proof span {
    margin-top: 8px;
    color: #637789;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.42;
}

.go-intro {
    padding: 92px 0 70px;
}

.go-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: 74px;
    align-items: start;
}

.go-intro h2,
.go-section-heading h2,
.go-questions h2,
.go-order-heading h2 {
    margin: 13px 0 0;
    color: var(--go-navy);
    font-size: clamp(32px, 3.6vw, 46px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -.027em;
    text-transform: none;
}

.go-intro-copy {
    margin-top: 102px;
}

.go-intro-copy p {
    margin: 0 0 18px;
    color: #526a7d;
    font-size: 16.5px;
    line-height: 1.75;
}

.go-intro-copy p:last-child {
    margin-bottom: 0;
}

.go-section-soft {
    background: var(--go-soft);
}

.go-section {
    padding: 82px 0 90px;
}

.go-section-heading {
    max-width: 850px;
    margin: 0 auto 38px;
    text-align: center;
}

.go-section-heading-left {
    max-width: 790px;
    margin-left: 0;
    text-align: left;
}

.go-section-heading h2 {
    margin-top: 10px;
    text-align: inherit;
}

.go-section-heading p {
    max-width: 730px;
    margin: 15px auto 0;
    color: var(--go-muted);
    font-size: 16px;
    line-height: 1.7;
    text-align: inherit ;
}

.go-section-heading-left p {
    margin-left: 0;
}

.go-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid var(--go-line);
    border-bottom: 1px solid var(--go-line);
}

.go-feature-card {
    min-width: 0;
    padding: 27px 30px 29px;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.go-feature-card + .go-feature-card {
    border-left: 1px solid var(--go-line);
}

.go-feature-card-teal,
.go-feature-card-purple {
    border-top-color: transparent;
}

.go-feature-number {
    display: inline-flex;
    width: 39px;
    height: 29px;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border-radius: 0;
    background: transparent;
    color: var(--go-blue);
    font-size: 14px;
    font-weight: 800;
}

.go-feature-card-teal .go-feature-number {
    background: transparent;
    color: var(--go-teal);
}

.go-feature-card-purple .go-feature-number {
    background: transparent;
    color: var(--go-purple);
}

.go-feature-card h3,
.go-benefit-grid h3,
.go-delivery-note h3 {
    margin: 0 0 14px ;
    color: var(--go-navy) ;
    font-size: 21px ;
    font-weight: 700 ;
    line-height: 1.27 ;
    text-transform: none ;
}

.go-feature-card ul {
    margin: 0 ;
    padding: 0 ;
    list-style: none ;
}

.go-feature-card li {
    position: relative;
    margin: 0 0 10px ;
    padding-left: 20px;
    color: #536a7d;
    font-size: 14.5px;
    line-height: 1.52;
}

.go-feature-card li:last-child {
    margin-bottom: 0 ;
}

.go-feature-card li::before {
    position: absolute;
    top: .12em;
    left: 0;
    color: var(--go-blue);
    content: "✓";
    font-weight: 800;
}

.go-feature-card-teal li::before {
    color: var(--go-teal);
}

.go-feature-card-purple li::before {
    color: var(--go-purple);
}

.go-questions {
    padding: 78px 0;
    background: var(--go-navy);
}

.go-questions-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 88px;
    align-items: center;
}

.go-questions h2 {
    max-width: 555px;
    color: #fff;
    font-size: clamp(34px, 3vw, 42px);
    line-height: 1.13;
}

.go-questions-copy > p {
    max-width: 520px;
    margin: 18px 0 0;
    color: #c9d8e3;
    font-size: 16px;
    line-height: 1.68;
}

.go-question-list {
    display: grid;
    gap: 0;
    padding-left: 32px;
    border-left: 1px solid rgba(255,255,255,.18);
}

.go-question-list > div {
    display: block;
    padding: 19px 0;
    border-bottom: 1px solid rgba(255,255,255,.14);
}

.go-question-list > div:first-child {
    padding-top: 0;
}

.go-question-list > div:last-child {
    border-bottom: 0;
}

.go-question-list span {
    display: inline-flex;
    width: 35px;
    height: 35px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: var(--go-navy);
    font-size: 14px;
    font-weight: 800;
}

.go-question-list p {
    margin: 0;
    color: #edf4f8;
    font-size: 15.5px;
    line-height: 1.58;
}

.go-countries {
    padding: 84px 0 88px;
}

.go-country-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 34px;
    row-gap: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.go-country-grid span {
    min-width: 0;
    padding: 13px 0;
    border-bottom: 1px solid #e1e9ef;
    background: transparent;
    color: #425f75;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
}

/* Keep the short coverage explainer on one line at desktop widths. */
.go-countries .go-section-heading-left {
    max-width: none;
}

.go-countries .go-section-heading-left p {
    max-width: none;
    white-space: nowrap;
}

.go-benefits {
    padding: 84px 0 88px;
}

.go-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid var(--go-line);
    border-bottom: 1px solid var(--go-line);
}

.go-benefit-grid article {
    min-width: 0;
    padding: 25px 26px 27px;
    border: 0;
    background: transparent;
}

.go-benefit-grid article + article {
    border-left: 1px solid var(--go-line);
}

.go-benefit-grid article > span {
    display: block;
    margin-bottom: 17px;
    color: var(--go-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
}

.go-benefit-grid h3 {
    min-height: 53px;
}

.go-benefit-grid p {
    margin: 0;
    color: #5a7082;
    font-size: 14.5px;
    line-height: 1.63;
}

.go-delivery-note {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 1fr);
    gap: 36px;
    align-items: center;
    margin-top: 30px;
    padding: 24px 0;
    border-top: 1px solid #d5e2ea;
    border-bottom: 1px solid #d5e2ea;
    background: transparent;
}

.go-delivery-note > .go-button {
    justify-self: start;
}

.go-delivery-note h3 {
    margin: 8px 0 8px ;
}

.go-delivery-note p {
    max-width: 790px;
    margin: 0;
    color: #5b7182;
    font-size: 14.5px;
    line-height: 1.62;
}

.go-order-section {
    scroll-margin-top: 30px;
    padding: 88px 0 98px;
    background: #fff;
}

.go-order-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: end;
    margin-bottom: 32px;
}

.go-order-heading h2 {
    margin-top: 9px;
}

.go-order-heading p {
    margin: 12px 0 0;
    color: var(--go-muted);
    font-size: 15.5px;
    line-height: 1.65;
}

.go-order-price {
    min-width: 275px;
    padding: 18px 20px;
    border: 1px solid #d7e4ec;
    border-radius: 9px;
    background: var(--go-soft);
}

.go-order-price span,
.go-order-price strong,
.go-order-price small {
    display: block;
}

.go-order-price span {
    color: #6c7e8d;
    font-size: 14px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.go-order-price strong {
    margin-top: 6px;
    color: var(--go-navy);
    font-size: 18px;
    font-weight: 750;
    line-height: 1.35;
}

.go-order-price small {
    margin-top: 5px;
    color: #6d8191;
    font-size: 14px;
    line-height: 1.4;
}

/* Keep the existing order form design but make it sit naturally in this page. */
.go-form-validation {
    margin: 0 0 20px;
    padding: 15px 18px;
    border: 1px solid #bf5b59;
    border-radius: 6px;
    background: #fff7f6;
    color: #85312d;
    font-size: 14px;
    line-height: 1.5;
}
.go-form-validation[hidden] { display: none; }
.go-form-validation strong { display: block; font-weight: 700; }
.go-form-validation-list { margin: 6px 0 0 20px; padding: 0; }
.global-outlook-order-form [aria-invalid="true"]:not([type="radio"]) {
    border-color: #bf5b59;
    box-shadow: 0 0 0 1px #bf5b59;
}
.global-outlook-order-form .order-prefix-row:has(input[aria-invalid="true"]) label,
.global-outlook-order-form .order-payment-card:has(input[aria-invalid="true"]) {
    border-color: #bf5b59;
}

.global-outlook-page .global-outlook-order-modern {
    margin: 0 ;
}

.global-outlook-page .global-outlook-order-modern-page {
    padding: 0 ;
}

.global-outlook-page .global-outlook-order-shell {
    width: 100% ;
    max-width: none ;
    margin: 0 ;
}

.global-outlook-page .order-modern-main {
    max-width: none ;
}

.global-outlook-page .order-modern-section {
    border-color: #dce6ee ;
    box-shadow: 0 8px 26px rgba(17,61,94,.035) ;
}

.global-outlook-page .order-modern-section h2 {
    color: var(--go-navy) ;
}

/* Two-step order flow: payment and agreement remain visually grouped inside
   their parent numbered steps rather than appearing as extra numbered cards. */
.global-outlook-page .global-outlook-order-subsection {
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid #dce6ee;
}

.global-outlook-page .global-outlook-subsection-heading {
    margin-bottom: 18px;
}

.global-outlook-page .global-outlook-subsection-heading h3 {
    margin: 0 0 6px;
    color: var(--go-navy);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: none;
}

.global-outlook-page .global-outlook-subsection-heading p {
    margin: 0 ;
    color: var(--go-muted);
    font-size: 14px;
    line-height: 1.55;
}

.global-outlook-page .order-place-button {
    min-width: 170px;
}

.go-thankyou {
    padding: 24px 0;
    background: #edf8f3;
    border-bottom: 1px solid #cfe5d9;
}

.go-thankyou .thankyoubody {
    margin: 0;
    color: #2b5f45;
}

@media (max-width: 1050px) {
    .go-hero-title-line {
        white-space: normal;
    }

    .go-hero-grid,
    .go-intro-grid,
    .go-questions-grid {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .go-intro-copy {
        margin-top: 0;
    }

    .go-hero-proof {
        top: 0;
        max-width: 720px;
    }

    .go-feature-grid {
        grid-template-columns: 1fr;
    }

    .go-feature-card + .go-feature-card {
        border-left: 0;
        border-top: 1px solid var(--go-line);
    }

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

    .go-benefit-grid article:nth-child(odd) {
        border-left: 0;
    }

    .go-benefit-grid article:nth-child(n+3) {
        border-top: 1px solid var(--go-line);
    }

    .go-country-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 26px;
    }
}

@media (max-width: 767px) {
    .go-shell {
        width: calc(100% - 32px);
    }

    .go-hero {
        padding: 54px 0 48px;
    }

    .go-hero h1 {
        font-size: 41px ;
    }

    .go-hero-lead {
        font-size: 16px;
        line-height: 1.62;
    }

    .go-hero-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .go-hero::before {
        background-position: 62% center;
        -webkit-mask-image: linear-gradient(to right, transparent 0%, transparent 52%, #000 100%);
        mask-image: linear-gradient(to right, transparent 0%, transparent 52%, #000 100%);
    }

    .go-button {
        width: 100%;
    }

    .go-hero-proof > div {
        min-height: 108px;
        padding: 19px 16px;
    }

    .go-hero-proof strong {
        font-size: 23px;
    }

    .go-intro,
    .go-section,
    .go-countries,
    .go-benefits,
    .go-order-section {
        padding-top: 60px;
        padding-bottom: 64px;
    }

    .go-intro h2,
    .go-section-heading h2,
    .go-questions h2,
    .go-order-heading h2 {
        font-size: 32px;
    }

    .go-section-heading {
        margin-bottom: 28px;
        text-align: left;
    }

    .go-section-heading p {
        margin-left: 0;
    }

    .go-questions {
        padding: 58px 0;
    }

    .go-country-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 22px;
    }

    .go-countries .go-section-heading-left p {
        white-space: normal;
    }

    .go-benefit-grid {
        grid-template-columns: 1fr;
    }

    .go-benefit-grid article + article {
        border-left: 0;
        border-top: 1px solid var(--go-line);
    }

    .go-benefit-grid h3 {
        min-height: 0;
    }

    .go-delivery-note,
    .go-order-heading {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .go-delivery-note > .go-button {
        justify-self: stretch;
    }

    .go-order-price {
        min-width: 0;
        width: 100%;
    }
}

@media (max-width: 480px) {
    .go-shell {
        width: calc(100% - 24px);
    }

    .go-hero h1 {
        font-size: 35px;
    }

    .go-hero-proof {
        grid-template-columns: 1fr 1fr;
    }

    .go-country-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .go-country-grid span {
        padding: 12px 0;
        font-size: 14px;
    }

    .go-feature-card,
    .go-benefit-grid article,
    .go-delivery-note {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .global-outlook-page *,
    .global-outlook-page *::before,
    .global-outlook-page *::after {
        transition: none ;
        scroll-behavior: auto ;
    }
}


/* Final mobile hardening for the Global Outlook order flow */
@media (max-width: 767px) {
    .global-outlook-page .order-details-grid,
    .global-outlook-page .order-payment-options {
        grid-template-columns: 1fr ;
    }

    .global-outlook-page .order-field,
    .global-outlook-page .order-field-wide,
    .global-outlook-page input,
    .global-outlook-page textarea,
    .global-outlook-page select {
        min-width: 0 ;
        max-width: 100% ;
    }

    .global-outlook-page input,
    .global-outlook-page textarea,
    .global-outlook-page select {
        font-size: 16px ;
    }

    .global-outlook-page .order-payment-card,
    .global-outlook-page .order-delivery-option {
        width: 100% ;
    }

    .global-outlook-page .order-actions {
        display: flex ;
        flex-direction: column ;
        align-items: stretch ;
        gap: 10px ;
    }

    .global-outlook-page .order-actions .cei-button,
    .global-outlook-page .order-place-button {
        width: 100% ;
        min-width: 0 ;
    }
}

@media (max-width: 390px) {
    .go-hero-proof {
        grid-template-columns: 1fr ;
    }

    .go-country-grid {
        grid-template-columns: 1fr 1fr ;
    }
}


/* CEI — calmer editorial hero weight */
@media (min-width: 768px) {
    .go-hero h1 {
        font-weight: 400 ;
        line-height: 1.05 ;
    }
}
@media (max-width: 767px) {
    .go-hero h1 {
        font-weight: 400 ;
    }
}

/* Final Place Order area — concise agreement and compact action row. */
.global-outlook-page .global-outlook-agreement-section {
    display: block;
    padding: 18px 22px;
    border: 1px solid #d7e2eb;
    border-radius: 10px;
    background: #f8fbfd;
}

.global-outlook-page .global-outlook-agreement-section > h3 {
    margin: 0 0 6px;
    font-size: 18px;
    line-height: 1.25;
    color: #073b69;
}

.global-outlook-page .global-outlook-agreement-copy {
    max-width: 940px;
    color: #36556f;
    line-height: 1.5;
}

.global-outlook-page .global-outlook-agreement-copy p {
    margin: 0 ;
}

.global-outlook-page .global-outlook-agreement-extra {
    margin-top: 8px;
}

.global-outlook-page .global-outlook-submit-row {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
    padding-top: 0;
    border-top: 0;
}

.global-outlook-page .global-outlook-order-actions {
    display: flex;
    width: auto;
    max-width: 100%;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    margin: 0;
    padding: 0;
}

.global-outlook-page .global-outlook-captcha {
    flex: 0 0 auto;
    width: 304px;
    max-width: 100%;
    margin: 0;
}

.global-outlook-page .global-outlook-order-actions .order-place-button {
    flex: 0 0 auto;
    width: auto ;
    min-width: 150px;
    min-height: 44px;
    margin: 0 ;
}

@media (max-width: 900px) {
    .global-outlook-page .global-outlook-agreement-section {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

@media (max-width: 767px) {
    .global-outlook-page .global-outlook-agreement-section {
        padding: 20px;
    }

    .global-outlook-page .global-outlook-submit-row {
        justify-content: flex-start;
    }

    .global-outlook-page .global-outlook-order-actions {
        flex-direction: row ;
        align-items: center ;
        width: auto ;
    }

    .global-outlook-page .global-outlook-order-actions .order-place-button {
        width: auto ;
        min-width: 150px ;
    }
}

@media (max-width: 520px) {
    .global-outlook-page .global-outlook-order-actions {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .global-outlook-page .global-outlook-captcha {
        width: 100%;
    }

    .global-outlook-page .global-outlook-order-actions .order-place-button {
        width: 100% ;
    }
}

/* Global Outlook — post-order confirmation state. */
.global-outlook-order-confirmed > section:not(.global-outlook-confirmation) {
    display: none;
}

.global-outlook-confirmation {
    padding: 54px 0 72px;
}

.global-outlook-confirmation-panel {
    max-width: 820px;
    margin: 0 auto;
    padding: 38px 42px;
    text-align: center;
    background: #fff;
    border: 1px solid #d7e2eb;
    border-radius: 14px;
    box-shadow: 0 12px 32px rgba(7, 59, 105, 0.07);
}

.global-outlook-confirmation-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 14px;
    border-radius: 50%;
    background: #eaf4fb;
    color: #0b5e97;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}

.global-outlook-confirmation-kicker {
    margin: 0 0 6px;
    color: #2c6ea6;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.global-outlook-confirmation-panel h1 {
    max-width: 680px;
    margin: 0 auto 12px;
    color: #073b69;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.16;
}

.global-outlook-confirmation-intro {
    max-width: 650px;
    margin: 0 auto;
    color: #4d667d;
    font-size: 16px;
    line-height: 1.55;
}

.global-outlook-confirmation-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 26px;
    text-align: left;
}

.global-outlook-confirmation-item {
    padding: 16px 18px;
    background: #f6f9fb;
    border: 1px solid #dce6ee;
    border-radius: 9px;
}

.global-outlook-confirmation-item span,
.global-outlook-confirmation-item strong {
    display: block;
}

.global-outlook-confirmation-item span {
    margin-bottom: 4px;
    color: #6a7f91;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .045em;
}

.global-outlook-confirmation-item strong {
    color: #073b69;
    font-size: 15px;
    line-height: 1.4;
}

.global-outlook-confirmation-note {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid #dce6ee;
    color: #4d667d;
    text-align: left;
}

.global-outlook-confirmation-note > :last-child {
    margin-bottom: 0;
}

@media (max-width: 700px) {
    .global-outlook-confirmation {
        padding: 32px 0 48px;
    }

    .global-outlook-confirmation-panel {
        padding: 28px 20px;
    }

    .global-outlook-confirmation-summary {
        grid-template-columns: 1fr;
    }
}


/* Field-level messages complement the existing form validation summary. */
.global-outlook-page .go-field-error:not(:empty) {
    margin: 5px 0 0;
    color: #9c3c3c;
    font-size: 13px;
    line-height: 1.4;
}
.global-outlook-page .order-field [aria-invalid="true"] {
    border-color: #c46a6a;
    box-shadow: 0 0 0 2px rgba(196, 106, 106, .12);
}


