/* about-mission.html - styles for this page only. */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-italic-400-cyrillic-ext.woff") format('woff');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-italic-400-cyrillic.woff") format('woff');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-italic-400-vietnamese.woff") format('woff');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-italic-400-latin-ext.woff") format('woff');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-italic-400-latin.woff") format('woff');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/cormorant-garamond-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek-ext.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek-ext.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek-ext.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-greek.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/inter-normal-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
    --sapphire-950:#0A1D30; --sapphire-800:#123A5C; --sapphire-700:#164C77; --sapphire-600:#1F5C8B;
    --gold:#C9A84C; --gold-soft:#E7D6A1; --gold-dim:#9C824A;--gold-ink:#7A5F28;
    --ink:#151A1F; --paper:#FDFCF9; --mist:#F4F1E9;
    --line:rgba(20,30,40,.10); --line-on-dark:rgba(255,255,255,.16);
    --serif:'Cormorant Garamond', serif; --sans:'Inter', sans-serif;
    --ease:cubic-bezier(.22,.7,.2,1);
  }

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden;}

a{color:inherit;text-decoration:none;}

img{max-width:100%;display:block;}

.eyebrow{font-family:var(--sans);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:#7A5F28;}

h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0;line-height:1.1;}

p{line-height:1.85;margin:0;}

.wrap{max-width:1100px;margin:0 auto;padding:0 clamp(20px,5vw,64px);}

footer .wrap{max-width:1320px;}

.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease), transform 1s var(--ease);}

.reveal.in{opacity:1;transform:translateY(0);}

.reveal-stagger > *{transition-delay:calc(var(--i,0) * 90ms);}

header.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:15mm;
    padding:14px clamp(20px,5vw,64px) 14px;background:#fff;box-shadow:0 1px 0 var(--line);}

.brand{display:flex;align-items:center;justify-content:flex-start;flex:none;}

.brand-logo{height:59.375px;width:auto;display:block;}

nav.links{display:flex;gap:34px;align-items:center;flex-wrap:wrap;}

/* Keep the main nav on one line on desktop widths */
@media (min-width:901px){
  nav.links{flex-wrap:nowrap;}
  nav.links>.nav-item,nav.links>.nav-item>a{white-space:nowrap;}
}

.nav-item{position:relative;}

.nav-item > a{font-size:.862rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600;padding:8px 0;color:var(--sapphire-950);transition:opacity .3s;}

.nav-item > a:hover{opacity:.6;}

.nav-item.current > a{text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px;text-underline-offset:6px;}

.nav-item .sub{position:absolute;top:100%;left:-19.56px;transform:translateY(6px);background:var(--paper);border:1px solid var(--line);
    border-radius:10px;padding:7.56px;min-width:236px;box-shadow:0 18px 40px rgba(10,20,30,.14);opacity:0;pointer-events:none;
    transition:opacity .25s var(--ease), transform .25s var(--ease);}

.nav-item:hover .sub,.nav-item.open .sub{opacity:1;pointer-events:auto;transform:translateY(10px);}

.nav-item .sub::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px;}

.nav-item .sub a{display:block;padding:9px 12px;border-radius:6px;font-size:.9853rem;color:var(--ink);font-weight:500;text-transform:none;letter-spacing:0;}

.nav-item .sub a.current{text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px;text-underline-offset:4px;}

.nav-item .sub a:hover{background:var(--mist);text-shadow:0 2px 6px rgba(21,26,31,.15);}

.menu-btn{display:none;}

.nav-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:.78rem;letter-spacing:.08em;
    text-transform:uppercase;font-weight:700;padding:12px 24px;border-radius:100px;border:1px solid var(--gold-dim);
    color:var(--sapphire-950);background:var(--gold);cursor:pointer;white-space:nowrap;
    transition:background .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease),transform .3s var(--ease);
    box-shadow:0 8px 24px rgba(201,168,76,.4);text-shadow:0 1px 1px rgba(255,255,255,.55),0 -1px 0 rgba(10,29,48,.22);}

.nav-cta:hover{background:var(--sapphire-700);border-color:var(--sapphire-700);color:#fff;
    box-shadow:0 10px 28px rgba(22,76,119,.4);transform:translateY(-1px);text-shadow:none;}

@media (max-width:900px){ header.nav{justify-content:space-between;gap:0;} nav.links{display:none;} .nav-cta{display:none;} .menu-btn{display:block;background:none;border:none;color:var(--sapphire-950);font-size:1.5rem;} }

/* ---------- Book a Free Call modal ---------- */
.tlt-modal-overlay{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;
    padding:24px;background:rgba(10,20,32,.72);backdrop-filter:blur(4px);opacity:0;visibility:hidden;
    transition:opacity .3s var(--ease),visibility 0s linear .3s;}

.tlt-modal-overlay.is-open{opacity:1;visibility:visible;transition:opacity .3s var(--ease);}

.tlt-modal{position:relative;background:var(--paper);border-radius:18px;max-width:480px;width:100%;
    padding:46px 38px 38px;max-height:88vh;overflow-y:auto;box-shadow:0 30px 80px rgba(10,20,30,.35);
    transform:translateY(14px);transition:transform .35s var(--ease);}

.tlt-modal-overlay.is-open .tlt-modal{transform:translateY(0);}

.tlt-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:none;
    background:rgba(20,30,40,.07);color:var(--sapphire-950);font-size:1.15rem;line-height:1;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:background .25s;}

.tlt-modal-close:hover{background:rgba(20,30,40,.14);}

.tlt-modal .eyebrow{margin-bottom:14px;}

.tlt-modal h3{font-size:1.55rem;color:var(--sapphire-950);margin-bottom:16px;}

.tlt-modal .tlt-modal-invite{font-size:1rem;line-height:1.75;color:#2c3138;margin-bottom:28px;}

.tlt-modal form{display:flex;flex-direction:column;gap:16px;}

.tlt-modal label{font-size:.82rem;font-weight:600;color:var(--sapphire-800);margin-bottom:6px;display:block;}

.tlt-modal input{border:1px solid rgba(20,30,40,.22);background:#fff;padding:13px 14px;font-size:1rem;
    color:#151A1F;width:100%;box-sizing:border-box;border-radius:6px;font-family:var(--sans);transition:border-color .25s;}

.tlt-modal input:focus{outline:none;border-color:var(--gold-dim);}

.tlt-modal .tlt-modal-submit{margin-top:6px;align-self:stretch;justify-content:center;background:var(--gold);
    color:var(--sapphire-950);font-weight:700;font-size:.92rem;letter-spacing:.03em;padding:15px 28px;
    border-radius:100px;border:none;cursor:pointer;transition:background .35s,box-shadow .35s,transform .3s var(--ease);
    box-shadow:0 10px 30px rgba(201,168,76,.28);}

.tlt-modal .tlt-modal-submit:hover{background:var(--gold-soft);transform:translateY(-1px);}

.tlt-modal .tlt-modal-note{font-size:.78rem;color:#7a828b;margin-top:14px;text-align:center;}

/* ---------- Footer brand logo + social icons ---------- */
.footer-brand-row{display:flex;align-items:flex-start;gap:26px;}

.footer-logo-mark{width:auto;object-fit:contain;display:block;flex:none;}

.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;
    background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#fff;
    transition:background .3s,transform .3s var(--ease),box-shadow .3s;}

.footer-social a:hover{background:var(--gold);color:var(--sapphire-950);transform:translateY(-2px);
    box-shadow:0 8px 22px rgba(201,168,76,.35);}

.footer-social a svg{width:23px;height:23px;}

.page-hero{padding:230px 0 110px;background:#fff;color:var(--ink);text-align:center;}

.page-hero .eyebrow{color:#7A5F28;justify-content:center;display:flex;margin-bottom:0;font-size:.85rem;}

.page-hero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);max-width:18ch;margin:0 auto 22px;font-style:italic;color:var(--sapphire-950);}

.page-hero blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.28rem,2.2vw,1.53rem);
    max-width:72ch;margin:56px auto 0;color:#000;line-height:1.7;text-align:left;
    border-left:2px solid var(--gold);padding:6px 0 6px 28px;}

.page-hero blockquote .attrib{display:block;margin-top:18px;font-style:normal;color:#7A5F28;font-size:1.13rem;}

section{position:relative;padding:clamp(110px,14vw,180px) 0;}

.section-head{max-width:660px;margin-bottom:60px;}

.section-head .eyebrow{margin-bottom:18px;font-size:.97rem;}

.section-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem);color:var(--sapphire-950);}

.on-dark .section-head h2,.section-head.on-dark h2{color:#fff;}

.on-dark .section-head .eyebrow,.section-head.on-dark .eyebrow{color:var(--gold-soft);}

.founder-sec{padding:0;background:#000 url("../../img/movement-founder-band-background.webp") no-repeat right center;background-size:cover;
    min-height:640px;display:flex;align-items:center;}

.founder-text{max-width:72%;padding:90px clamp(24px,6vw,80px) 90px calc(clamp(24px,6vw,80px) + 1cm);}

.founder-text h2{font-family:var(--serif);font-style:italic;font-size:clamp(2.1rem,4.4vw,3.4rem);color:#fff;margin:0 0 34px;line-height:1.1;}

.founder-text p{font-family:var(--serif);font-size:1.5775rem;color:#fff;margin-bottom:24px;line-height:1.7;text-align:justify;hyphens:none;}

@media (max-width:900px){ .founder-sec{background-position:70% center;} .founder-text{background:rgba(0,0,0,.55);} }

.vision-sec{background:var(--paper);padding-top:clamp(66px,8.4vw,108px);}

.benefits-sec{padding-top:clamp(66px,8.4vw,108px);padding-bottom:clamp(77px,9.8vw,126px);}

.vision-body{max-width:none;}

.vision-body p{font-size:1.1rem;color:#2c3138;margin-bottom:24px;}

.steps{margin:44px 0;counter-reset:step;}

.step{display:flex;gap:22px;padding:20px 0;border-top:1px solid var(--line);}

.step:last-child{border-bottom:1px solid var(--line);}

.step .n{font-family:var(--serif);font-style:italic;color:#7A5F28;font-size:1.467rem;flex:none;width:40px;}

.step p{font-size:1.187rem;color:#2c3138;margin:0;}

.values-quote{font-family:var(--serif);font-style:italic;font-size:clamp(1.28rem,2.2vw,1.53rem);color:rgba(255,255,255,.88);
    border-left:2px solid var(--gold);padding:6px 0 6px 28px;margin:52px auto 0;max-width:66ch;line-height:1.65;}

.values-sec .values-quote{margin-bottom:-38px;}

.values-quote .attrib{display:block;margin-top:16px;font-style:normal;font-size:1.213rem;color:var(--gold-soft);}

.values-sec.light .values-quote{color:var(--sapphire-950);}

.values-sec.light .values-quote p{margin:0 0 16px;}

.values-sec.light .values-quote p:last-child{margin-bottom:0;}

.pull-quote{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,1.7rem);color:#000;
    border-left:2px solid var(--gold);padding-left:28px;margin:44px 0 0;line-height:1.55;}

.mission-sec{background:var(--mist);padding-top:clamp(66px,8.4vw,108px);}

.mission-body{max-width:none;margin-bottom:64px;}

.mission-body p{font-size:1.1rem;color:#2c3138;margin-bottom:22px;}

.init-sub{font-size:2.03rem;color:var(--sapphire-950);margin-bottom:28px;}

.init-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:stretch;grid-auto-rows:1fr;}

.init-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:32px;position:relative;overflow:hidden;
    transition:transform .35s var(--ease), box-shadow .35s var(--ease);}

.init-card:hover{transform:scale(1.03);box-shadow:0 14px 34px rgba(10,20,30,.10);}

.init-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--sapphire-600));}

.init-card .n{font-family:var(--serif);font-style:italic;color:#7A5F28;font-size:1.678rem;flex:none;line-height:1.2;}

.init-card .init-head{display:flex;align-items:baseline;gap:14px;margin-bottom:14px;}

.init-card h3{font-size:1.608rem;color:var(--sapphire-950);margin:0;}

.init-card p{font-size:1.033rem;color:#4b5158;}

.values-sec{background:var(--sapphire-800);color:#fff;padding-top:clamp(66px,8.4vw,108px);}

.values-lede{max-width:none;font-size:1.06rem;color:rgba(255,255,255,.78);margin-bottom:60px;}

.values-lede p{margin-bottom:20px;}

#condition-quote .values-lede{color:#fff;}

.values-grid{display:grid;grid-template-columns:1fr;gap:2px;border-radius:16px;overflow:hidden;}

.value-card{background:var(--sapphire-950);padding:8px 28px;border:1px solid rgba(255,255,255,.16);transition:background .4s var(--ease);}

.value-card:hover{background:var(--sapphire-700);}

.value-card .n{font-family:var(--serif);font-style:italic;color:var(--gold-soft);font-size:1.38rem;flex:none;}

.value-card .vc-head{display:flex;align-items:baseline;gap:18px;margin-bottom:8px;}

.value-card h3{font-size:1.30rem;color:#fff;margin:0;}

.value-card p{font-size:1.02rem;line-height:1.8;color:rgba(255,255,255,.68);margin:0;text-align:justify;hyphens:none;}

#values .value-card h3{font-size:1.550rem;}

#values .value-card .n{font-size:1.547rem;}

#values .value-card p{color:#fff;}

.values-sec.light{background:var(--mist);color:var(--ink);}

.values-sec.light .section-head h2{color:var(--sapphire-950);}

.values-sec.light .section-head .eyebrow{color:#7A5F28;}

.values-sec.light .values-lede{color:#2c3138;}

.values-sec.light .values-grid{background:var(--line);border-color:var(--line);}

.values-sec.light .value-card{background:var(--paper);}

.values-sec.light .value-card:hover{background:#fff;}

.values-sec.light .value-card:hover h3,.values-sec.light .value-card:hover p{color:#000;}

.values-sec.light .value-card:hover .n{color:#7A5F28;}

.values-sec.light .value-card .n{color:#7A5F28;font-weight:700;}

.values-sec.light .value-card h3{color:var(--sapphire-950);font-weight:700;}

#condition .value-card h3{font-size:1.467rem;}

.values-sec.light .value-card p{color:#33383e;}

.imagine-sec{background:var(--paper);padding-top:clamp(66px,8.4vw,108px);}

.imagine-body{max-width:none;}

.imagine-body p{font-size:1.08rem;color:#2c3138;margin-bottom:24px;}

.imagine-more{max-height:0;overflow:hidden;transition:max-height .6s var(--ease);}

.imagine-more.open{max-height:1400px;}

.more-toggle{background:none;border:none;font-family:var(--sans);font-weight:600;font-size:.85rem;color:var(--sapphire-800);
    cursor:pointer;padding:0;display:inline-flex;gap:6px;align-items:center;border-bottom:1px solid var(--gold);padding-bottom:2px;margin-top:6px;}

.cta-final{background:var(--mist);text-align:center;padding-top:clamp(66px,8.4vw,108px);}

.cta-final .eyebrow{justify-content:center;display:flex;margin-bottom:18px;font-size:1.01rem;}

.cta-final h2{font-size:clamp(2rem,3.8vw,2.8rem);max-width:22ch;margin:0 auto 26px;color:var(--sapphire-950);}

.cta-final .quote{font-family:var(--serif);font-style:italic;font-size:1.5rem;color:#000;max-width:74ch;margin:0 auto 34px;line-height:1.65;}

.cta-final p.lede{max-width:52ch;margin:0 auto 40px;color:#454b52;font-size:1.02rem;}

.btn-primary{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--sapphire-950);
    font-weight:700;font-size:.85rem;letter-spacing:.03em;padding:17px 30px;border-radius:100px;border:none;cursor:pointer;
    transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .35s;box-shadow:0 12px 34px rgba(201,168,76,.32);text-shadow:0 1px 1px rgba(255,255,255,.55),0 -1px 0 rgba(10,29,48,.22);}

.btn-primary:hover{transform:translateY(-2px);background:var(--gold-soft);}

.btn-primary svg{width:15px;height:15px;transition:transform .35s var(--ease);}

.btn-primary:hover svg{transform:translateX(4px);}

footer{background:var(--sapphire-950);color:#fff;padding:80px 0 36px;border-top:2px solid #9c824a;}

.footer-top{display:flex;justify-content:space-between;gap:44px;flex-wrap:wrap;margin-bottom:56px;align-items:flex-start;}

.footer-brand{font-family:var(--serif);font-size:1.483rem;color:var(--gold-soft);max-width:280px;text-transform:uppercase;}

.footer-brand span{display:block;margin-top:14px;font-family:var(--sans);font-size:.963rem;color:#fff;line-height:1.7;text-transform:none;}

.footer-cols{display:flex;gap:64px;flex-wrap:wrap;}

.footer-col h4{font-size:.833rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 16px;font-weight:700;}

.footer-col a{display:block;font-size:.983rem;color:#fff;margin-bottom:10px;transition:opacity .3s;}

.footer-col a:hover{opacity:.7;}

.footer-bottom{border-top:1px solid var(--line-on-dark);padding-top:26px;display:flex;justify-content:center;text-align:center;font-size:.863rem;flex-wrap:wrap;gap:12px;color:#fff;}

.page-hero blockquote,.vision-body p,.mission-body p,.imagine-body p,.values-lede p,
  .init-card p,.value-card p,.step p,.pull-quote,.values-quote,.cta-final .quote,.cta-final p.lede{
    text-align:justify;hyphens:none;-webkit-hyphens:none;}

@media (max-width:900px){ .init-grid{grid-template-columns:1fr;} .values-grid{grid-template-columns:1fr 1fr;} }

@media (max-width:560px){ .values-grid{grid-template-columns:1fr;} }

/* ===== Phones (700px and narrower): "A Vision of Love" - photo on top, full-width text below ===== */
@media (max-width:700px){
  #vision-of-love.founder-sec{display:block;min-height:0;background:#000;}
  #vision-of-love.founder-sec::before{content:"";display:block;width:100%;height:430px;
    background:url("../../img/movement-founder-band-background.webp") no-repeat right center / auto 100%;
    -webkit-mask-image:linear-gradient(180deg,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 78%,transparent 100%);}
  #vision-of-love .founder-text{max-width:none;background:none;padding:0 22px 64px;margin-top:-30px;}
  #vision-of-love .founder-text h2{font-size:clamp(2.2rem,10vw,2.8rem);margin-bottom:22px;}
  #vision-of-love .founder-text p{font-size:1.22rem;line-height:1.65;text-align:left;margin-bottom:20px;}
}

/* ===== Tablets held upright: "A Vision of Love" - portrait across the top right, the heading set on the photo's black area, text below.
   Also centres the "If your work belongs alongside these" line above Contact Us. ===== */
@media (min-width:701px) and (orientation:portrait) and (hover:none) and (pointer:coarse){
  #vision-of-love.founder-sec{display:block !important;min-height:0 !important;background:#000 !important;position:relative;}
  #vision-of-love.founder-sec::before{content:"";display:block;width:100%;height:560px;
    background:url("../../img/movement-founder-band-background.webp") no-repeat right center / auto 100%;
    -webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 80%,transparent 100%);}
  #vision-of-love .founder-text{max-width:none !important;background:none !important;padding:0 48px 72px !important;margin-top:-170px !important;position:relative;}
  #vision-of-love .founder-text h2{font-size:3.4rem !important;margin-bottom:110px !important;max-width:60%;}
  #vision-of-love .founder-text p{text-align:left !important;}
  p.ally-ask{text-align:center !important;}
}

/* ===== Phones held sideways: "A Vision of Love" - portrait softly behind the text on the right, fading into black (option 3). ===== */
@media (orientation:landscape) and (max-height:500px) and (hover:none) and (pointer:coarse){
  #vision-of-love.founder-sec{display:block !important;min-height:0 !important;background:#000 !important;position:relative;overflow:hidden;}
  #vision-of-love.founder-sec::before{content:"";position:absolute;right:0;top:0;width:100%;height:720px;background:url("../../img/movement-founder-band-background.webp") no-repeat right center / auto 100%;opacity:.55;
    -webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 60%);-webkit-mask-composite:source-in;
    mask-image:linear-gradient(180deg,#000 55%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 60%);mask-composite:intersect;}
  #vision-of-love .founder-text{max-width:none !important;background:none !important;padding:60px 48px 64px !important;position:relative;margin:0 !important;}
  #vision-of-love .founder-text p{text-align:left !important;}
}
