@font-face{font-family:Lato;src:url("./assets/fonts/lato-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Lato;src:url("./assets/fonts/lato-semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
:root{
  color-scheme:dark;--font-body:Lato,Arial,sans-serif;--font-display:Lato,Arial,sans-serif;
  --color-bg:#081018;--color-surface:#0d1821;--color-text:#e7edf0;--color-muted:#a6b8c4;--color-faint:#91a8b7;--color-divider:#293640;--color-primary:#2bddf5;--color-inverse:#07151d;
  --space-1:.5rem;--space-2:.8125rem;--space-3:1.3125rem;--space-4:2.125rem;--space-5:3.4375rem;--space-6:5.5625rem;--space-7:9rem;
  --text-xs:clamp(.75rem,.7rem + .15vw,.8125rem);--text-sm:clamp(.875rem,.8rem + .25vw,1.125rem);--text-base:clamp(1rem,.9rem + .35vw,1.3125rem);--text-heading:clamp(1.6875rem,1.2rem + 1.5vw,2.5rem);--text-hero:clamp(3rem,1rem + 4vw,5.5625rem);
  --page-gutter:clamp(1.3125rem,5.556vw,6.25rem);--radius:2px;--hero-cube-width:368.396307824px;
}
body{background:linear-gradient(130deg,#0b151e 0%,var(--color-bg) 58%,#080d13 100%)}
.container{width:calc(100% - var(--page-gutter)*2);max-width:1600px;margin-inline:auto}
.skip-link{position:absolute;left:var(--space-3);top:-100px;background:var(--color-primary);color:var(--color-inverse);padding:var(--space-2) var(--space-3);z-index:100}
.skip-link:focus{top:var(--space-3)}
.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:128px;border-bottom:1px solid var(--color-divider)}
.brand{display:flex;align-items:center;gap:var(--space-3);min-height:44px}
.header-mark{width:40px;height:39px}
.wordmark{width:242px}
.primary-nav{display:flex;gap:var(--space-5);align-items:center}
.primary-nav a{display:flex;align-items:center;min-height:44px;font-size:var(--text-sm);color:#c1ced6}
.primary-nav .contact-link{min-width:144px;justify-content:center;border:1px solid #4b6779;padding:var(--space-2) var(--space-4);border-radius:var(--radius)}
.menu-toggle{display:none}
.hero{padding-block:var(--space-6) var(--space-5);border-bottom:1px solid var(--color-divider)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.61803398875fr) minmax(0,1fr);gap:var(--space-5);align-items:center;min-height:590px}
.eyebrow{font-size:var(--text-xs);letter-spacing:.17em;text-transform:uppercase;color:var(--color-faint);max-width:none}
.eyebrow::after{content:"";display:block;width:75px;height:2px;background:var(--color-primary);margin-top:var(--space-3)}
h1{font-size:var(--text-hero);letter-spacing:-.035em;line-height:1.235;margin-top:var(--space-3);text-wrap:initial}
.hero-description{max-width:42ch;margin-top:var(--space-4);color:var(--color-muted);line-height:1.618}
.hero-actions{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-5)}
.button{display:inline-flex;min-height:55px;align-items:center;justify-content:space-between;gap:var(--space-4);padding-inline:var(--space-4);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius)}
.button-primary{background:var(--color-primary);color:var(--color-inverse);min-width:247px}
.arrow{width:20px;height:20px;flex-shrink:0;stroke:currentColor;stroke-width:1.5;fill:none}
.text-link{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm);text-decoration:underline;text-decoration-color:#536b7c;text-underline-offset:8px}
.hero-visual{position:relative;isolation:isolate;display:grid;place-items:center;min-width:0}
.hero-visual::before{content:"";z-index:-1;position:absolute;inset:-34px;background:radial-gradient(ellipse,#172b3980 0%,transparent 66%);pointer-events:none}
.hero-mark{width:var(--hero-cube-width);max-width:100%;aspect-ratio:1247.07658145/1440}
.disciplines{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--color-faint);margin-top:var(--space-5)}
.disciplines span:nth-child(even){color:var(--color-faint)}
.ventures{padding-top:var(--space-5)}
.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}
h2{font-size:var(--text-heading);font-weight:400}
.section-intro p{margin-top:var(--space-1);color:var(--color-faint)}
.portfolio-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;flex-shrink:0;font-size:var(--text-sm)}
.portfolio-link .arrow,.venture-link .arrow{color:var(--color-primary)}
.venture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.venture-card{background:var(--color-surface);border:1px solid var(--color-divider);padding:var(--space-3);display:flex;flex-direction:column;min-width:0}
.card-meta{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;color:var(--color-faint);margin-bottom:var(--space-4)}
.venture-card h3{font-size:var(--text-heading);font-weight:400;margin-bottom:var(--space-2)}
.card-description{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-3);flex:1}
.venture-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);border-top:1px solid var(--color-divider);padding-top:var(--space-2);min-height:55px}
.destination{font-size:var(--text-xs);color:var(--color-faint);user-select:all;margin-top:var(--space-1)}
.portfolio-more{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-muted);border-bottom:1px solid var(--color-divider)}
.portfolio-more summary{cursor:pointer;min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);list-style:none}
.portfolio-more summary::-webkit-details-marker{display:none}
.portfolio-more[open] summary span{transform:rotate(45deg)}
.sister-brands{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);padding-block:var(--space-3) var(--space-4)}
.sister-brands p>a{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:var(--space-3);color:var(--color-text)}
.sister-brands a>span{font-size:var(--text-xs);color:var(--color-primary)}
.company-grid{display:grid;grid-template-columns:1.61803398875fr 1fr;gap:var(--space-6);padding-block:var(--space-6);border-bottom:1px solid var(--color-divider)}
.company-grid h2{font-size:clamp(1.5rem,1.1rem + 1vw,2.125rem);margin-bottom:var(--space-3)}
.company-grid p{color:var(--color-muted);max-width:60ch}
.company-grid p+p{margin-top:var(--space-3)}
.contact-email{display:inline-flex;align-items:center;gap:var(--space-3);min-height:55px;color:var(--color-primary);margin-top:var(--space-3);overflow-wrap:anywhere}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-4);font-size:var(--text-xs);color:var(--color-faint)}
.footer-brand{min-height:44px;display:flex;align-items:center}
.footer-brand img{width:133px}
.footer-domain{display:flex;align-items:center;min-height:44px}
.anchor-alias{display:block}
a:active,button:active,summary:active{opacity:.75}
@media(hover:hover){a:hover,summary:hover{color:var(--color-primary)}.button-primary:hover{background:#a9f4fc;color:var(--color-inverse)}.venture-link:hover .arrow{color:#a9f4fc}}
@media(max-width:1050px){
  :root{--page-gutter:var(--space-4)}
  .primary-nav{gap:var(--space-4)}
  .hero-grid{grid-template-columns:1.61803398875fr 1fr;min-height:500px;gap:var(--space-4)}
  .hero-actions{gap:var(--space-3);flex-wrap:wrap}
  .button-primary{min-width:220px}
  .card-meta{letter-spacing:.04em}
}
@media(max-width:760px){
  :root{--page-gutter:var(--space-3);--text-base:1rem;--text-sm:1rem;--text-hero:clamp(2.125rem,1rem + 7.45vw,3rem);--text-heading:1.6875rem}
  .site-header{min-height:89px;flex-wrap:wrap}
  .brand{gap:var(--space-2)}
  .header-mark{width:24.3px;height:23.7px}
  .wordmark{width:147px}
  .menu-toggle{width:44px;height:44px;align-items:center;justify-content:center;border:1px solid #304652;border-radius:var(--radius)}
  .menu-toggle svg{stroke:currentColor;stroke-width:1.4;fill:none}
  .js .menu-toggle{display:flex}
  .primary-nav{flex-basis:100%;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-3)}
  .primary-nav .contact-link{min-width:0;padding:0;border:0;justify-content:flex-start}
  .js .primary-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-divider);z-index:10;box-shadow:0 12px 30px #0005}
  .js .primary-nav:not(.is-open){display:none}
  .hero{padding-top:var(--space-4);padding-bottom:var(--space-4)}
  .hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3);min-height:0}
  .eyebrow{font-size:var(--text-xs);letter-spacing:.07em;max-width:none;line-height:1.618}
  .eyebrow::after{width:34px;margin-top:var(--space-2)}
  h1{margin-top:var(--space-2);line-height:1.15;letter-spacing:-.032em}
  .hero-description{max-width:32ch;margin-top:var(--space-3);line-height:1.625}
  .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);margin-top:var(--space-3)}
  .button{padding-inline:var(--space-3);width:100%}
  .text-link{align-self:center;min-height:55px}
  .hero-visual{width:100%;margin-inline:auto}
  .hero-visual::before{inset:0}
  .hero-mark{width:var(--hero-cube-width)}
  .disciplines{justify-content:space-between;gap:var(--space-1);margin-top:var(--space-4);font-size:var(--text-xs);letter-spacing:.05em;max-width:none}
  .ventures{padding-top:var(--space-4)}
  .section-intro{align-items:flex-start;margin-bottom:var(--space-4)}
  .section-intro p{max-width:28ch}
  .portfolio-link{font-size:0;gap:0;width:44px;height:44px;justify-content:flex-end}
  .portfolio-link .arrow{width:20px}
  .venture-grid{grid-template-columns:1fr}
  .card-meta{font-size:var(--text-xs);letter-spacing:.07em;margin-bottom:var(--space-3)}
  .venture-card h3{margin-bottom:var(--space-2)}
  .card-description{font-size:var(--text-sm)}
  .destination{font-size:var(--text-xs)}
  .sister-brands{grid-template-columns:1fr;gap:var(--space-3)}
  .company-grid{grid-template-columns:1fr;gap:var(--space-5);padding-block:var(--space-5)}
  .site-footer{flex-wrap:wrap;padding-block:var(--space-3);column-gap:var(--space-2);row-gap:var(--space-1)}
  .site-footer p{order:3;flex-basis:100%}
  .footer-domain{margin-left:auto}
}
