
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
.bosaho-website{
  --deep-blue:   #0F2D4A;
  --deep-blue-2: #0A2036;
  --deep-blue-3: #123152;
  --forest:      #16332B;
  --forest-2:    #10261F;
  --copper:      #BB734A;
  --copper-soft: #D9A57C;
  --copper-ink:  #96562E;
  --sand:        #EBDCC6;
  --sand-soft:   #F2E7D6;
  --offwhite:    #FAF9F6;
  --mint:        #28D9A8;
  --mint-strong: #1FB78E;

  --ink:         var(--deep-blue);
  --ink-soft:    rgba(15,45,74,.66);
  --ink-faint:   rgba(15,45,74,.42);
  --line:        rgba(15,45,74,.14);

  --on-dark:     var(--offwhite);
  --on-dark-soft:rgba(250,249,246,.70);
  --on-dark-line:rgba(250,249,246,.16);

  --bg: var(--offwhite);
  --container: 1220px;
  --radius: 14px;
}
.bosaho-website,.bosaho-website *{box-sizing:border-box;}
.bosaho-website{
  min-height:100vh;
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
.bosaho-website img, .bosaho-website svg{display:block;max-width:100%;}
.bosaho-website a{color:inherit;text-decoration:none;}
.bosaho-website h1, .bosaho-website h2, .bosaho-website h3, .bosaho-website h4{margin:0;font-weight:700;text-wrap:balance;letter-spacing:-0.02em;}
.bosaho-website p{margin:0;}
.bosaho-website ul{margin:0;padding:0;list-style:none;}
.bosaho-website button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}
.bosaho-website :focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:4px;}
@media (prefers-reduced-motion: reduce){
  .bosaho-website,.bosaho-website *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;}
}
.bosaho-website .container{width:100%;max-width:var(--container);margin-left:auto;margin-right:auto;padding-inline:32px;}
@media (max-width:640px){
  .bosaho-website .container{padding-inline:20px;}
}
.bosaho-website .skip-link{
  position:absolute;left:-9999px;top:auto;
  background:var(--mint);color:var(--deep-blue);
  padding:10px 16px;border-radius:8px;font-weight:600;z-index:999;
}
.bosaho-website .skip-link:focus{left:20px;top:20px;}
.bosaho-website .eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.bosaho-website .btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 22px;border-radius:999px;
  font-size:15px;font-weight:600;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
  white-space:nowrap;
}
.bosaho-website .btn svg{width:16px;height:16px;transition:transform .18s ease;}
.bosaho-website .btn:hover svg{transform:translateX(3px);}
.bosaho-website .btn:hover{transform:translateY(-1px);}
.bosaho-website .btn-mint{background:var(--mint);color:var(--deep-blue-2);}
.bosaho-website .btn-mint:hover{background:var(--mint-strong);box-shadow:0 10px 24px -10px rgba(40,217,168,.55);}
.bosaho-website .link-arrow{
  display:inline-flex;align-items:center;gap:7px;
  font-weight:600;font-size:14.5px;
  padding-bottom:2px;border-bottom:1.5px solid currentColor;
  transition:gap .18s ease, opacity .18s ease;
}
.bosaho-website .link-arrow svg{width:14px;height:14px;transition:transform .18s ease;}
.bosaho-website .link-arrow:hover svg{transform:translateX(3px);}
/* ---------- sprite ---------- */
.bosaho-website .sprite{position:absolute;width:0;height:0;overflow:hidden;}
/* ---------- header ---------- */
.bosaho-website .site-header{
  position:sticky;top:0;z-index:100;
  background:var(--deep-blue-2);
  border-bottom:1px solid var(--on-dark-line);
}
.bosaho-website .header-row{
  display:flex;align-items:center;gap:28px;
  height:76px;
}
.bosaho-website .brand{flex:none;display:flex;align-items:center;}
.bosaho-website .brand-logo{height:36px;width:auto;color:var(--on-dark);}
.bosaho-website .brand-logo path{fill:currentColor;}
.bosaho-website .main-nav{display:flex;align-items:center;gap:30px;margin-left:8px;flex:1;}
.bosaho-website .main-nav a{
  font-size:14.5px;font-weight:500;color:var(--on-dark-soft);
  transition:color .15s ease;
}
.bosaho-website .main-nav a:hover{color:var(--on-dark);}
.bosaho-website .header-right{display:flex;align-items:center;gap:18px;margin-left:auto;}
.bosaho-website .lang-select{
  display:flex;align-items:center;gap:6px;
  font-size:13.5px;font-weight:600;color:var(--on-dark-soft);
  transition:color .15s ease;
}
.bosaho-website .lang-select:hover{color:var(--on-dark);}
.bosaho-website .lang-select svg{width:14px;height:14px;}
.bosaho-website .nav-toggle{display:none;flex:none;width:38px;height:38px;align-items:center;justify-content:center;color:var(--on-dark);}
.bosaho-website .nav-toggle svg{width:22px;height:22px;}
@media (max-width:920px){
  .bosaho-website .main-nav{display:none;}
  .bosaho-website .lang-select span{display:none;}
  .bosaho-website .nav-toggle{display:inline-flex;}
}
.bosaho-website .hero{
  position:relative;
  min-height:clamp(480px,58vw,640px);
  display:flex;align-items:center;
  background-color:var(--deep-blue-2);
  color:var(--on-dark);
  overflow:hidden;
  padding-block:min(9vw,88px);
}
.bosaho-website .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center right;z-index:0;}
.bosaho-website .hero-scrim{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg, rgba(10,32,54,.97) 0%, rgba(10,32,54,.90) 32%, rgba(10,32,54,.55) 52%, rgba(10,32,54,.18) 70%, rgba(10,32,54,0) 84%);
}
.bosaho-website .hero .container{position:relative;z-index:2;}
.bosaho-website .hero-copy{max-width:600px;}
.bosaho-website .hero-kicker{color:var(--mint);margin-bottom:22px;}
.bosaho-website .hero h1{font-size:clamp(2.3rem,4.1vw,3.7rem);line-height:1.06;margin-bottom:22px;}
.bosaho-website .hero-lede{font-size:17.5px;color:var(--on-dark-soft);max-width:46ch;margin-bottom:34px;}
.bosaho-website .hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;}
.bosaho-website .hero-tag{
  font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--on-dark-soft);
}
@media (max-width:920px){
  .bosaho-website .hero{min-height:0;padding-block:64px 44px;}
  .bosaho-website .hero-photo{object-position:center 32%;}
  .bosaho-website .hero-scrim{background:linear-gradient(180deg, rgba(10,32,54,.5) 0%, rgba(10,32,54,.97) 64%);}
  .bosaho-website .hero-copy{max-width:none;}
}
/* ---------- sections generic ---------- */
.bosaho-website section{position:relative;}
.bosaho-website .section-pad{padding-block:clamp(56px,7vw,104px);}
/* ---------- drivers ---------- */
.bosaho-website .drivers-head{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;
  align-items:end;margin-bottom:56px;
}
.bosaho-website .drivers-head .eyebrow{color:var(--copper-ink);margin-bottom:16px;}
.bosaho-website .drivers-head h2{font-size:clamp(1.7rem,2.6vw,2.35rem);color:var(--ink);}
.bosaho-website .drivers-head p{color:var(--ink-soft);font-size:16px;max-width:52ch;}
.bosaho-website .driver-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:36px;
}
.bosaho-website .driver{text-align:center;}
.bosaho-website .driver-icon{
  display:flex;align-items:center;justify-content:center;
  color:var(--deep-blue);margin-bottom:22px;
}
.bosaho-website .driver-icon svg{width:56px;height:56px;margin-inline:auto;}
.bosaho-website .driver h3{font-size:16.5px;margin-bottom:9px;color:var(--ink);}
.bosaho-website .driver p{font-size:14px;color:var(--ink-soft);line-height:1.55;}
@media (max-width:920px){
  .bosaho-website .drivers-head{grid-template-columns:1fr;gap:16px;}
  .bosaho-website .driver-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:560px){
  .bosaho-website .driver-grid{grid-template-columns:1fr;}
}
.bosaho-website .panels{background:var(--deep-blue-2);}
.bosaho-website .panel-grid{display:grid;grid-template-columns:repeat(3,1fr);}
.bosaho-website .panel{
  position:relative;min-height:460px;overflow:hidden;
  color:var(--on-dark);
  border-right:1px solid var(--on-dark-line);
}
.bosaho-website .panel:last-child{border-right:none;}
.bosaho-website .panel-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.bosaho-website .panel-scrim{position:absolute;inset:0;z-index:1;}
.bosaho-website .panel.tone-a .panel-scrim{background:linear-gradient(180deg, rgba(15,45,74,.12), rgba(8,26,44,.94) 78%);}
.bosaho-website .panel.tone-b .panel-scrim{background:linear-gradient(180deg, rgba(10,32,54,.12), rgba(6,20,35,.94) 78%);}
.bosaho-website .panel.tone-c .panel-scrim{background:linear-gradient(180deg, rgba(22,51,43,.16), rgba(14,33,27,.94) 78%);}
.bosaho-website .panel-body{
  position:relative;z-index:2;height:100%;padding:34px;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.bosaho-website .panel-eyebrow{color:var(--mint);margin-bottom:16px;}
.bosaho-website .panel h3{font-size:1.35rem;margin-bottom:12px;line-height:1.18;}
.bosaho-website .panel p{font-size:14.5px;color:var(--on-dark-soft);line-height:1.6;margin-bottom:22px;max-width:34ch;}
.bosaho-website .panel .link-arrow{color:var(--mint);border-bottom:none;}
.bosaho-website .panel .link-arrow:hover{color:var(--mint-strong);}
@media (max-width:920px){
  .bosaho-website .panel-grid{grid-template-columns:1fr;}
  .bosaho-website .panel{border-right:none;border-bottom:1px solid var(--on-dark-line);min-height:400px;}
}
.bosaho-website .stats-section{position:relative;overflow:hidden;}
.bosaho-website .stats-map{
  position:absolute;top:50%;right:-6%;transform:translateY(-50%);
  width:58%;max-width:780px;opacity:.65;pointer-events:none;z-index:0;
}
.bosaho-website .stats-wrap{
  position:relative;z-index:1;
  display:grid;grid-template-columns:repeat(4,auto) 1fr;
  align-items:start;gap:40px;
}
.bosaho-website .stats-wrap .eyebrow{grid-column:1/-1;color:var(--copper-ink);margin-bottom:8px;}
.bosaho-website .stat b{
  display:block;font-size:clamp(2.4rem,4.2vw,3.4rem);font-weight:800;
  font-variant-numeric:tabular-nums;line-height:1;color:var(--deep-blue);
}
.bosaho-website .stat span{display:block;margin-top:10px;font-size:14px;color:var(--ink-soft);}
.bosaho-website .stats-caption{
  justify-self:end;align-self:start;text-align:right;
  padding-top:14px;border-top:2px solid var(--mint);max-width:230px;
}
.bosaho-website .stats-caption p{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);line-height:1.7;}
@media (max-width:920px){
  .bosaho-website .stats-map{width:80%;right:-20%;}
  .bosaho-website .stats-wrap{grid-template-columns:repeat(2,auto);gap:32px 40px;}
  .bosaho-website .stats-caption{grid-column:1/-1;justify-self:start;align-self:start;text-align:left;margin-top:8px;}
}
.bosaho-website .history{
  position:relative;overflow:hidden;
  background:var(--deep-blue-2);color:var(--on-dark);
  padding-block:clamp(64px,9vw,120px);
}
.bosaho-website .history .container{position:relative;z-index:2;}
.bosaho-website .history-copy{max-width:480px;}
.bosaho-website .history-copy h2{font-size:clamp(1.9rem,3vw,2.6rem);}
.bosaho-website .history-copy-rule{display:block;width:36px;height:2px;background:var(--mint);border-radius:2px;margin:20px 0;}
.bosaho-website .history-copy p{color:var(--on-dark-soft);font-size:16px;max-width:46ch;margin-bottom:28px;}
.bosaho-website .history-tagline{
  margin-top:26px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--mint);
}
.bosaho-website .history-photo-frame{
  position:absolute;top:0;right:0;bottom:0;width:60%;z-index:1;
  clip-path:polygon(16% 0, 100% 0, 100% 100%, 0 100%);
}
.bosaho-website .history-photo{width:100%;height:100%;object-fit:cover;display:block;}
.bosaho-website .history-scrim{
  position:absolute;inset:0;
  background:linear-gradient(200deg, rgba(8,26,44,.45) 0%, rgba(8,26,44,0) 42%);
}
@media (max-width:920px){
  .bosaho-website .history{padding-block:0;}
  .bosaho-website .history-photo-frame{position:static;width:100%;height:280px;clip-path:none;}
  .bosaho-website .history .container{padding-block:44px;}
  .bosaho-website .history-copy{max-width:none;}
}
/* ---------- sustainability (diagonal, full-bleed) ---------- */
.bosaho-website .sustain{
  position:relative;overflow:hidden;
  background:var(--offwhite);
  padding-block:clamp(64px,9vw,120px);
}
.bosaho-website .sustain .container{position:relative;z-index:2;}
.bosaho-website .sustain-grid{display:flex;justify-content:flex-end;}
.bosaho-website .sustain-copy{max-width:480px;}
.bosaho-website .sustain-copy .eyebrow{color:var(--forest);margin-bottom:18px;}
.bosaho-website .sustain-copy h2{font-size:clamp(1.9rem,3vw,2.5rem);color:var(--ink);margin-bottom:18px;}
.bosaho-website .sustain-copy p{color:var(--ink-soft);font-size:16px;max-width:46ch;margin-bottom:22px;}
.bosaho-website .sustain-copy .link-arrow{color:var(--mint-strong);}
.bosaho-website .sustain-photo-frame{
  position:absolute;top:0;left:0;bottom:0;width:56%;z-index:1;
  clip-path:polygon(0 0, 84% 0, 100% 100%, 0 100%);
}
.bosaho-website .leaf-photo{width:100%;height:100%;object-fit:cover;display:block;}
.bosaho-website .sustain-scrim{
  position:absolute;inset:0;
  background:linear-gradient(160deg, rgba(16,38,31,.4) 0%, rgba(16,38,31,0) 42%);
}
.bosaho-website .leaf-badge{
  position:absolute;right:10%;bottom:9%;width:64px;height:64px;border-radius:50%;
  background:var(--mint);display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 22px -8px rgba(15,45,74,.45);z-index:2;
}
.bosaho-website .leaf-badge svg{width:30px;height:30px;color:var(--deep-blue-2);}
@media (max-width:920px){
  .bosaho-website .sustain{padding-block:0;}
  .bosaho-website .sustain-photo-frame{position:static;width:100%;height:220px;clip-path:none;}
  .bosaho-website .sustain-grid{display:block;}
  .bosaho-website .sustain .container{padding-block:44px;}
  .bosaho-website .sustain-copy{max-width:none;}
  .bosaho-website .leaf-badge{right:6%;bottom:8%;}
}
.bosaho-website .cta-band{
  background:linear-gradient(120deg,var(--deep-blue-2),var(--deep-blue) 55%,#153A5F);
  color:var(--on-dark);text-align:center;
}
.bosaho-website .cta-band .eyebrow{justify-content:center;color:var(--mint);margin-bottom:20px;}
.bosaho-website .cta-band h2{font-size:clamp(2rem,3.6vw,3rem);margin-bottom:32px;max-width:20ch;margin-inline:auto;}
.bosaho-website .site-footer{background:var(--offwhite);color:var(--ink);}
.bosaho-website .footer-top{
  display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between;
  padding-block:44px;border-bottom:1px solid var(--line);
}
.bosaho-website .footer-logo .brand-logo{height:34px;color:var(--deep-blue);}
.bosaho-website .footer-nav{display:flex;flex-wrap:wrap;gap:26px;}
.bosaho-website .footer-nav a{font-size:14px;color:var(--ink-soft);transition:color .15s ease;}
.bosaho-website .footer-nav a:hover{color:var(--ink);}
.bosaho-website .footer-social{display:flex;gap:10px;}
.bosaho-website .social-btn{
  width:36px;height:36px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink-soft);
  transition:border-color .15s ease,color .15s ease;
}
.bosaho-website .social-btn svg{width:16px;height:16px;}
.bosaho-website .social-btn:hover{border-color:var(--mint-strong);color:var(--mint-strong);}
.bosaho-website .footer-bottom{
  display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between;
  padding-block:28px;
}
.bosaho-website .footer-claim{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);}
.bosaho-website .footer-claim b{color:var(--mint-strong);font-weight:700;}
.bosaho-website .footer-legal{display:flex;gap:22px;font-size:12.5px;color:var(--ink-soft);}
.bosaho-website .footer-legal a:hover{color:var(--ink);}
.bosaho-website .copyright{font-size:12.5px;color:var(--ink-soft);}
@media (max-width:640px){
  .bosaho-website .footer-top, .bosaho-website .footer-bottom{flex-direction:column;align-items:flex-start;}
}

.bosaho-website .legal-page{padding-block:clamp(64px,8vw,120px) clamp(56px,7vw,96px);background:var(--bg);}
.bosaho-website .legal-inner{max-width:820px;}
.bosaho-website .legal-head{margin-bottom:26px;}
.bosaho-website .legal-head h1{
  font-size:clamp(32px,4.6vw,52px);line-height:1.08;letter-spacing:-.02em;
  margin-top:10px;color:var(--ink);
}
.bosaho-website .legal-intro{font-size:16.5px;color:var(--ink-soft);margin-top:16px;}
.bosaho-website .legal-meta{font-size:13.5px;color:var(--ink-faint);margin-top:10px;}
.bosaho-website .legal-note{
  font-size:14.5px;line-height:1.6;color:var(--copper-ink);
  background:var(--sand-soft);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px 20px;margin-bottom:36px;
}
.bosaho-website .legal-section{padding-block:26px;border-top:1px solid var(--line);}
.bosaho-website .legal-section h2{font-size:19px;line-height:1.3;margin-bottom:10px;color:var(--ink);}
.bosaho-website .legal-section p{font-size:15.5px;line-height:1.65;color:var(--ink-soft);}
.bosaho-website .legal-back{margin-top:44px;padding-top:26px;border-top:1px solid var(--line);font-size:14.5px;font-weight:600;}
.bosaho-website .legal-back a{color:var(--mint-strong);transition:color .15s ease;}
.bosaho-website .legal-back a:hover{color:var(--ink);}
