/* Home page content and typography from the supplied references. */
#home .hero-positive-title {
    font:
        400 clamp(46px, 5.5vw, 92px)/0.99 Georgia,
        "Times New Roman",
        serif;
    letter-spacing: -0.045em;
    color: #65100f;
    margin: 0 0 28px;
    max-width: 850px;
}
#home .hero-positive-title em {
    color: #b6873b;
    font-weight: 400;
    white-space: nowrap;
}
#home .hero-positive-intro {
    font:
        400 clamp(19px, 1.8vw, 27px)/1.3 Georgia,
        "Times New Roman",
        serif;
    color: #766f69;
    max-width: 760px;
    margin: 0;
}
#home .hero-copy {
    padding-bottom: 65px;
    padding-top: 25px;
}
.dimensions .section-heading > .gold-line {
    display: none;
}
.dimensions .section-heading h2 {
    color: #98601e;
    font-size: clamp(36px, 4.2vw, 64px);
    line-height: 1.12;
}
.diagnosis-ornament {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 18px auto;
    color: #b6873b;
    max-width: 420px;
}
.diagnosis-ornament span {
    height: 1px;
    background: #b6873b;
    width: 45%;
}
.dimensions .section-heading .diagnosis-intro {
    font:
        italic clamp(18px, 1.7vw, 26px)/1.4 Georgia,
        serif;
    color: #535965;
    margin: 0 auto;
    max-width: 1100px;
}
.dimensions .dimension-copy > p:not(.eyebrow) {
    font:
        400 clamp(18px, 1.45vw, 23px)/1.3 Georgia,
        serif;
}
.dimensions .dimension-copy ul {
    margin-bottom: 0;
}
.founder-copy h3 {
    font:
        400 clamp(20px, 1.8vw, 30px)/1.35 Georgia,
        serif;
    color: #65100f;
}
.founder-insight {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    background: #fcf4e7;
    border-radius: 7px;
    margin: 27px 0 24px;
}
.founder-insight svg {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    color: #b6873b;
}
.founder-copy .founder-insight p {
    font:
        400 clamp(17px, 1.45vw, 23px)/1.4 Georgia,
        serif;
    color: #65100f;
    margin: 0 !important;
    border-left: 1px solid #ddbd88;
    padding-left: 18px;
}
.founder-more {
    margin-top: 12px;
}
.founder-more summary {
    color: #65100f;
    font:
        18px Georgia,
        serif;
    cursor: pointer;
    list-style: none;
    padding: 8px 0;
}
.founder-more summary:after {
    content: "⌄";
    margin-left: 12px;
}
.founder-more[open] summary:after {
    content: "⌃";
}
.founder-more p {
    margin-top: 18px !important;
}
.founder-more > a {
    color: #9a6f31;
    text-decoration: underline;
}
.founder-copy .button-group {
    margin-top: 18px;
}
.founder-copy .button-group .btn {
    font-family: Georgia, serif;
    font-size: 16px;
}
@media (max-width: 1199px) and (min-width: 992px) {
    #home .hero-positive-title {
        font-size: 5.3vw;
    }
    #home .hero-positive-intro {
        font-size: 21px;
    }
    .founder-copy {
        padding-left: 4%;
        padding-right: 4%;
    }
}
@media (max-width: 991px) {
    #home .hero-positive-title {
        font-size: clamp(43px, 7.8vw, 78px);
    }
    #home .hero-positive-intro {
        max-width: 700px;
    }
    .founder-insight {
        margin: 23px 0 18px;
    }
    .dimensions .section-heading .diagnosis-intro br {
        display: none;
    }
}
@media (max-width: 575px) {
    #home .hero-positive-title {
        font-size: clamp(36px, 9.2vw, 53px);
        line-height: 1.03;
        margin-bottom: 22px;
    }
    #home .hero-positive-title em {
        white-space: normal;
    }
    #home .hero-positive-intro {
        font-size: 19px;
        line-height: 1.4;
    }
    #home .hero-copy {
        padding-top: 4px;
        padding-bottom: 55px;
    }
    .dimensions .section-heading h2 {
        font-size: 35px;
    }
    .dimensions .section-heading .diagnosis-intro {
        font-size: 18px;
    }
    .diagnosis-ornament {
        max-width: 250px;
        margin: 15px auto;
    }
    .dimensions .dimension-copy > p:not(.eyebrow) {
        font-size: 16px;
    }
    .founder-insight {
        gap: 12px;
        padding: 15px;
    }
    .founder-insight svg {
        width: 34px;
        height: 38px;
        flex-basis: 34px;
    }
    .founder-copy .founder-insight p {
        font-size: 18px;
        line-height: 1.4;
        padding-left: 12px;
    }
    .founder-copy h3 {
        font-size: 21px;
    }
    .founder-copy .button-group .btn {
        font-size: 15px;
    }
}

.community .community-tagline {
    font:
        italic clamp(23px, 2.7vw, 40px)/1.3 Georgia,
        serif !important;
    color: #645844 !important;
    margin: 20px 0 28px !important;
}
.community .split-copy > h2 {
    font-size: clamp(42px, 4.6vw, 74px);
    line-height: 1.04;
}
.community .split-copy > h2 em {
    font-style: normal;
}
@media (max-width: 575px) {
    .community .community-tagline {
        font-size: 24px !important;
    }
    .community .split-copy > h2 {
        font-size: 40px;
    }
}

/* Keep testimonials and worldwide guidance visually separate. */
#community {
    background: #fff8ee;
    isolation: isolate;
    overflow: hidden;
    border-bottom: 1px solid #e5d5bb;
}
#community:before {
    mix-blend-mode: normal;
    opacity: 1;
}
#world {
    background: #eeeee8;
    margin-top: 24px;
    border-top: 1px solid #d8d7cb;
    isolation: isolate;
    overflow: hidden;
}
#world:before {
    mix-blend-mode: normal;
}
@media (min-width: 992px) {
    #world .split-copy {
        width: 61%;
        margin-left: auto;
        margin-right: 0;
        padding: 6.5% 5.1% 4.5% 0;
    }
    #world:before {
        inset: 0 auto 0 0;
        width: 47%;
        height: 100%;
        background: url("world-reference.webp") left center/cover no-repeat;
        mask-image: linear-gradient(90deg, #000 0%, #000 72%, transparent 100%);
        opacity: 1;
    }
    #world .visit-grid {
        gap: 14px;
    }
    #world .visit-grid button {
        background: #fffdf8ed;
    }
}
@media (min-width: 576px) and (max-width: 991px) {
    #world .split-copy {
        margin: 0;
        width: 100%;
        padding: 40px 6%;
    }
    #world:before {
        inset: 0 auto 0 0;
        width: 55%;
        background-position: left center;
        opacity: 0.2;
        mask-image: linear-gradient(90deg, #000, transparent);
    }
}
@media (max-width: 575px) {
    #world {
        margin-top: 18px;
        background: #eeeee8;
    }
    #world .split-copy {
        margin: 0;
        padding: 28px 5%;
    }
    #world:before {
        mix-blend-mode: normal;
    }
    #community {
        border-bottom: 1px solid #e5d5bb;
    }
}

/* Founder uses warm paper; worldwide content stays clear of the illustration. */
#founder {
    background: #f4ead9;
    border-top: 1px solid #e5d2b0;
    border-bottom: 1px solid #e5d2b0;
}
#founder .founder-copy {
    background: transparent;
}
#founder .founder-insight {
    background: #fff9ee;
    border: 1px solid #e5cfaa;
}
#founder .founder-photo {
    mix-blend-mode: multiply;
}
@media (min-width: 992px) {
    #world {
        display: grid;
        grid-template-columns: 44% minmax(0, 56%);
        min-height: 0;
        align-items: stretch;
    }
    #world:before {
        grid-column: 1;
        grid-row: 1;
        position: relative;
        inset: auto;
        width: 100%;
        height: 100%;
        min-height: 580px;
        z-index: 0;
        background-position: center;
        background-size: cover;
        mask-image: linear-gradient(90deg, #000 0%, #000 78%, transparent 100%);
    }
    #world .split-copy {
        grid-column: 2;
        grid-row: 1;
        position: relative;
        z-index: 1;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 55px 8% 50px 5%;
        box-sizing: border-box;
    }
    #world h2 {
        font-size: clamp(40px, 4.4vw, 70px);
        line-height: 1.05;
    }
    #world .split-copy > p:not(.eyebrow) {
        max-width: 100%;
        font-size: clamp(17px, 1.35vw, 22px);
    }
    #world .visit-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }
    #world .visit-grid button {
        min-width: 0;
        min-height: 225px;
        padding: 19px 13px;
    }
    #world .visit-grid h3 {
        font-size: clamp(18px, 1.55vw, 27px);
        min-height: 90px;
        overflow-wrap: break-word;
    }
    #world .visit-icon {
        width: 58px;
        height: 58px;
    }
    #world .circle-arrow {
        width: 38px;
        height: 38px;
    }
}

/* Mobile heading refinements. */
#founder .founder-mobile-eyebrow {
    display: none;
}
@media (max-width: 575px) {
    #dimensions .section-heading h2 {
        font-size: clamp(20px, 6.8vw, 34px);
        white-space: nowrap;
        letter-spacing: -0.035em;
        line-height: 1.15;
    }
    #founder .founder-mobile-eyebrow {
        display: block;
        text-align: center;
        font:
            600 10px/1.5 Arial,
            sans-serif;
        letter-spacing: 1.5px;
        color: #a5783d;
        margin: 0 0 18px;
        padding: 0 4px;
    }
    #founder .founder-copy > .eyebrow {
        display: none;
    }
    .home-two #founder .founder-mobile-eyebrow {
        color: #d2af77;
    }
    #learn .learning-left h2 br {
        display: none;
    }
    #learn .learning-end-stop {
        display: none;
    }
}
