* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 25px
}

body {
    margin: 0;
    background: #f6f5f1;
    color: #202b29;
    font: 16px/1.75 Arial, sans-serif
}

a {
    color: #23564a;
    text-underline-offset: 4px
}

a:hover {
    color: #a46535
}

img {
    max-width: 100%;
    height: auto
}

h1,
h2,
h3 {
    line-height: 1.16;
    letter-spacing: -.035em
}

h1 {
    font-size: 24px
}

h2 {
    font-size: 30px
}

p {
    margin: 0 0 22px
}

header,
.topline,
.layout,
footer {
    padding-left: max(28px, calc((100vw - 1360px)/2));
    padding-right: max(28px, calc((100vw - 1360px)/2))
}

.topline {
    background: #203b33;
    color: #e5eadd;
    font-size: 10px;
    letter-spacing: 2px;
    padding-top: 9px;
    padding-bottom: 9px;
    display: flex;
    justify-content: space-between
}

header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 104px;
    background: #fff
}

.brand {
    font-size: 29px;
    letter-spacing: 4px;
    font-weight: bold;
    text-decoration: none;
    color: inherit
}

.brand span {
    display: block;
    font-size: 9px;
    letter-spacing: 2.3px
}

nav {
    display: flex;
    gap: 34px
}

nav a {
    text-decoration: none;
    font-size: 14px;
    font-weight: bold
}

.hero {
    position: relative;
    background: #12261f;
    height: 330px;
    overflow: hidden
}

.hero>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 28%
}

.hero:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(8, 24, 18, .88), rgba(8, 24, 18, .25) 60%, transparent)
}

.hero-copy {
    position: absolute;
    z-index: 1;
    left: max(28px, calc((100vw - 1360px)/2));
    top: 35px;
    color: white;
    max-width: 570px
}

.hero h2 {
    font-size: 34px;
    line-height: 1.2;
    font-weight: 500;
    margin: 12px 0
}

.hero p {
    max-width: 430px;
    color: #eef0e9
}

.eyebrow {
    font-size: 10px;
    font-weight: bold;
    letter-spacing: 2px
}

.button {
    display: inline-block;
    padding: 13px 24px;
    background: #e8ddbd;
    color: #172e25;
    text-decoration: none;
    font-weight: bold
}

.layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 52px;
    padding-top: 48px;
    padding-bottom: 65px
}

article {
    min-width: 0
}

aside {
    background: #eeeee7;
    align-self: start;
    font-size: 14px
}

aside img {
    display: block;
    width: 100%
}

.aside-inner {
    padding: 28px
}

aside ul {
    padding-left: 18px
}

aside li {
    margin-bottom: 12px
}

.intro {
    font-size: 19px;
    color: #58635d
}

.cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin: 36px 0 55px
}

.cards section {
    background: #fff
}

.cards img {
    display: block;
    aspect-ratio: 1.5;
    object-fit: cover
}

.cards section>div {
    padding: 25px
}

.cards h2 {
    font-size: 25px
}

.cards p {
    font-size: 15px
}

.manual-list {
    border-top: 1px solid #cbd0c5;
    margin: 28px 0 50px
}

.manual-list a {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 10px;
    border-bottom: 1px solid #cbd0c5;
    text-decoration: none;
    font-weight: bold
}

.manual-list b {
    font-size: 12px;
    white-space: nowrap
}

.ownership {
    background: #e9ece3;
    margin: 40px 0
}

.ownership img {
    width: 100%;
    max-height: 330px;
    object-fit: cover
}

.ownership>div {
    padding: 30px
}

.faq details {
    border-bottom: 1px solid #cbd0c5;
    padding: 18px 0
}

.faq summary {
    cursor: pointer;
    font-weight: bold
}

.faq details p {
    margin: 16px 0 0
}

footer {
    background: #19342b;
    color: #dce3d9;
    padding-top: 50px;
    padding-bottom: 24px;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 25px
}

footer a {
    color: #dce3d9
}

footer>div:nth-child(2) a {
    display: block
}

.fine,
.footline {
    grid-column: 1/-1;
    font-size: 12px;
    color: #b8c7bc
}

.footline {
    border-top: 1px solid #446052;
    padding-top: 20px;
    display: flex;
    justify-content: space-between
}

.breadcrumbs {
    font-size: 12px
}

table {
    max-width: 100%;
    border-collapse: collapse;
    display: block;
    overflow: auto
}

td,
th {
    padding: 10px;
    border: 1px solid #ccc
}

.skip {
    position: absolute;
    left: -9999px
}

.skip:focus {
    left: 10px;
    top: 10px;
    z-index: 10;
    background: white;
    padding: 10px
}

:focus-visible {
    outline: 3px solid #b17b35;
    outline-offset: 4px
}

.firimg,
.secimg {
    max-width: 100%
}

article>ul {
    padding-left: 22px
}

.brand img {
    display: block;
    width: 250px;
    max-width: 100%;
    height: auto
}

footer .brand {
    display: inline-block;
    background: #f6f5f1;
    padding: 15px;
    border-radius: 3px
}

.manual-group {
    margin: 24px 0 38px;
    background: #fff;
    border: 1px solid #d6ddd4;
    padding: 26px
}

.manual-group h3 {
    margin-top: 0;
    font-size: 25px
}

.chapter-links {
    padding: 0;
    list-style: none;
    columns: 2;
    column-gap: 30px
}

.chapter-links>li {
    break-inside: avoid;
    padding: 10px 0;
    border-top: 1px solid #e1e5df
}

.chapter-links>li>a {
    font-weight: bold
}

.chapter-links ul {
    padding-left: 18px;
    font-size: 14px
}

.chapter-links ul:empty {
    display: none
}

.chapter-links a {
    display: inline-block;
    padding: 3px 0
}

@media(max-width:760px) {
    .brand img {
        width: 230px
    }

    .chapter-links {
        columns: 1
    }

    .manual-group {
        padding: 20px
    }
}

.brand {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 0;
    flex-shrink: 0
}

.brand .brand-caption {
    font-size: 10px;
    letter-spacing: 1.8px;
    line-height: 1.5;
    margin-top: 4px;
    text-align: center
}

footer .brand {
    display: inline-flex;
    color: #203b33
}

/* Compact header and a reading-focused manual layout. */
header {
    min-height: 104px;
    padding-top: 8px;
    padding-bottom: 8px;
    gap: 28px
}

header .brand {
    flex-direction: row;
    gap: 18px;
    padding: 0;
    align-items: center
}

header .brand img {
    width: 215px;
    height: auto
}

header .brand .brand-caption {
    max-width: 155px;
    margin: 0;
    padding-left: 18px;
    border-left: 1px solid #d9ded8;
    text-align: left;
    font-size: 10px;
    line-height: 1.8;
    letter-spacing: 1.5px
}

.manual-page .layout {
    padding-top: 28px;
    gap: 36px
}

.manual-page h1 {
    font-size: 24px;
    line-height: 1.25;
    font-weight: 650;
    letter-spacing: -.025em;
    margin: 20px 0 26px
}

.manual-page .breadcrumbs {
    color: #68746d;
    line-height: 1.6;
    border-bottom: 1px solid #dfe3dc;
    padding-bottom: 14px
}

.manual-page aside {
    background: #fff;
    border: 1px solid #dfe3dc
}

.manual-page aside>img {
    display: none
}

.manual-page .aside-inner {
    padding: 24px
}

.manual-page .aside-inner h2 {
    font-size: 23px;
    margin: 12px 0 20px
}

.manual-page aside ul {
    list-style: none;
    margin: 0 0 20px;
    padding: 0
}

.manual-page aside li {
    margin: 0;
    border-top: 1px solid #e6e9e2
}

.manual-page aside li a,
.current-chapter {
    display: block;
    padding: 12px 0;
    line-height: 1.5;
    text-decoration: none
}

.current-chapter {
    font-weight: bold;
    color: #203b33;
    border-left: 3px solid #a67c45;
    padding-left: 12px
}

.manual-page .menu-parent {
    font-weight: bold
}

.manual-page td,
.manual-page th {
    background: #fff;
    border-color: #e0e4dd;
    padding: 18px
}

@media(max-width:1050px) {
    header {
        flex-wrap: wrap
    }

    nav {
        gap: 22px
    }

    .manual-page h1 {
        font-size: 24px
    }
}

@media(max-width:760px) {
    header {
        gap: 14px;
        padding-top: 12px;
        padding-bottom: 14px
    }

    header .brand img {
        width: 175px
    }

    header .brand {
        gap: 12px
    }

    header .brand .brand-caption {
        max-width: 128px;
        padding-left: 12px;
        font-size: 9px;
        letter-spacing: 1px
    }

    .manual-page h1 {
        font-size: 21px
    }

    .manual-page .layout {
        padding-top: 20px
    }

    .manual-page td,
    .manual-page th {
        padding: 10px
    }
}

/* Compact homepage scale. */
.home h1 {
    font-size: 24px;
    line-height: 1.3;
    margin: 0 0 18px
}

.home article h2 {
    font-size: 23px;
    line-height: 1.3
}

.home .cards h2 {
    font-size: 21px
}

.home .intro {
    font-size: 16px;
    line-height: 1.7
}

.home .hero-copy {
    max-width: 520px
}

.home .hero p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 18px;
    max-width: 440px
}

.home .hero .eyebrow {
    font-size: 9px;
    letter-spacing: 1.5px
}

.home .hero .button {
    font-size: 13px;
    padding: 10px 18px
}

.home .layout {
    padding-top: 30px
}

.home .cards {
    margin: 26px 0 34px;
    gap: 20px
}

.home .cards section>div {
    padding: 22px
}

.home .ownership {
    margin: 30px 0
}

.home .ownership>div {
    padding: 24px
}
/* Header and footer */
.site-topline{font-size:11px;letter-spacing:.35px;gap:20px;padding-top:7px;padding-bottom:7px}
.site-header{min-height:94px;gap:24px;border-bottom:1px solid #e0e5dd}
.site-header .brand{flex-shrink:1;min-width:0;gap:15px}
.site-header .brand img{width:185px;flex-shrink:0}
.site-header .brand .brand-caption{max-width:180px;padding-left:15px;font-size:13px;letter-spacing:0;line-height:1.4;text-transform:none}
.site-header .brand .brand-subtitle{font-size:11px;line-height:1.5;letter-spacing:0;font-weight:normal;color:#617066;margin-top:4px}
.site-header .header-nav{gap:19px;align-items:center;flex-wrap:wrap}
.site-header .header-nav a{font-size:13px;line-height:1.4;padding:9px 0;white-space:nowrap}
.site-header .header-nav .header-search{padding:9px 16px;border:1px solid #cdd8cf;border-radius:4px}
.site-header .header-search:hover{background:#edf1e7}
.site-footer{display:block;padding-top:34px;padding-bottom:20px}
.site-footer .footer-main{display:grid;grid-template-columns:minmax(240px,1.65fr) repeat(3,minmax(135px,1fr));gap:32px}
.site-footer .brand{padding:10px 14px;background:#f6f5f1;align-items:flex-start;border-radius:4px}
.site-footer .brand img{width:185px}
.site-footer .brand .brand-caption{font-size:10px;letter-spacing:.35px;text-align:left;margin-top:5px}
.site-footer .footer-about p{font-size:13px;line-height:1.75;color:#c7d4ca;margin:16px 0 0;max-width:365px}
.site-footer .footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding-top:6px}
.site-footer .footer-nav h2{font-size:14px;line-height:1.5;letter-spacing:0;color:#fff;margin:0 0 6px}
.site-footer .footer-nav a{font-size:13px;line-height:1.6;font-weight:normal;text-decoration:none}
.site-footer a:hover{color:#f0d2a2}
.site-footer .brand:hover{color:#203b33}
.site-footer .footer-nav a:hover{text-decoration:underline}
.site-footer .footer-reference{border-top:1px solid #385447;margin-top:28px;padding-top:20px}
.site-footer .footer-reference p{font-size:12px;line-height:1.7;color:#bbcbbf;margin:0 0 9px;max-width:1050px}
.site-footer .footer-reference strong{color:#e2e9df}
.site-footer .footer-counter{margin:0}
.site-footer .footer-counter:empty{display:none}
.site-footer .footline{margin-top:18px;padding-top:16px;gap:12px;flex-wrap:wrap;font-size:11px;line-height:1.6}
.site-footer .footer-performance{color:#acbfb0}
