/* ── reset & base ── */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:#fff;color:#050505;overflow-x:hidden}
a{text-decoration:none}

/* ── header ── */
.site-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:32px 54px;font-family:"Courier New",Courier,monospace;position:relative;z-index:20}
.logo{display:inline-flex;align-items:center;gap:10px;color:#050505}
.logo img{width:42px;height:42px;object-fit:contain}
.logo span{font-size:18px;font-weight:600;letter-spacing:-.04em}
nav{display:flex;align-items:center;gap:34px}
nav a{font-size:15px;color:#050505;letter-spacing:-.02em;transition:opacity .25s ease}
nav a:hover{opacity:.45}
.lang{font-size:15px;color:#050505;letter-spacing:-.02em}

/* ── hamburger ── */
.menu-toggle{display:none;width:46px;height:46px;border:1px solid rgba(5,5,5,.14);border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:80}
.menu-toggle span{position:absolute;width:19px;height:1.5px;background:#050505;border-radius:999px;transition:transform .28s ease,opacity .28s ease}
.menu-toggle span:nth-child(1){transform:translateY(-6px)}
.menu-toggle span:nth-child(2){transform:translateY(0)}
.menu-toggle span:nth-child(3){transform:translateY(6px)}
body.menu-open{overflow:hidden}
body.menu-open .menu-toggle span:nth-child(1){transform:rotate(45deg)}
body.menu-open .menu-toggle span:nth-child(2){opacity:0}
body.menu-open .menu-toggle span:nth-child(3){transform:rotate(-45deg)}

/* ── mobile menu ── */
.mobile-menu{position:fixed;inset:0;z-index:60;background:#f4f1ea;color:#050505;padding:96px 24px 26px;transform:translateX(100%);transition:transform .42s cubic-bezier(.2,.9,.2,1);display:none;flex-direction:column;justify-content:space-between;font-family:"Courier New",Courier,monospace}
body.menu-open .mobile-menu{transform:translateX(0)}
.mobile-menu-links{border-top:1px solid rgba(5,5,5,.13)}
.mobile-menu-links a{min-height:68px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(5,5,5,.13);color:#050505;font-size:clamp(28px,9vw,48px);line-height:1;letter-spacing:-.08em}
.mobile-menu-links a::after{content:"↗";font-size:18px;letter-spacing:0;opacity:.45}
.mobile-menu-note{display:grid;gap:13px;color:rgba(5,5,5,.58);font-size:13px;line-height:1.45;letter-spacing:-.03em}
.mobile-menu-note strong{color:#050505;font-weight:500;font-size:16px}

/* ── footer ── */
.site-footer{min-height:70vh;background:#050505;color:#fff;padding:clamp(76px,8vw,124px) 54px clamp(48px,5vw,78px);display:grid;grid-template-columns:1.02fr 1.38fr;gap:clamp(50px,8vw,132px);align-items:start;border-top:1px solid rgba(255,255,255,.08);font-family:"Courier New",Courier,monospace}
.footer-brand{min-height:390px;display:flex;flex-direction:column;justify-content:space-between}
.footer-logo{display:inline-flex;align-items:center;gap:18px;color:#fff}
.footer-logo img{width:68px;height:68px;object-fit:contain;background:#fff;border-radius:19px;padding:9px}
.footer-logo span{font-size:clamp(30px,3.8vw,58px);line-height:.88;letter-spacing:-.085em;font-weight:600}
.footer-phrase{max-width:560px;font-size:clamp(24px,2.7vw,43px);line-height:1.02;letter-spacing:-.08em;color:rgba(255,255,255,.94);margin-bottom:30px}
.footer-address{max-width:620px;font-size:15px;line-height:1.65;letter-spacing:-.035em;color:rgba(255,255,255,.58)}
.footer-meta-label{display:block;color:rgba(255,255,255,.32);font-size:12px;line-height:1;margin-bottom:10px}
.footer-columns{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:clamp(28px,5vw,72px);padding-top:4px}
.footer-col h3{font-size:18px;line-height:1;margin-bottom:34px;letter-spacing:-.06em;font-weight:700;color:rgba(255,255,255,.96)}
.footer-col a,.footer-col span{display:block;color:rgba(255,255,255,.58);font-size:16px;line-height:1.35;letter-spacing:-.045em;margin-bottom:19px;transition:color .25s ease,transform .25s ease}
.footer-col a:hover{color:#fff;transform:translateX(3px)}
.footer-social-card{margin-top:34px;width:min(338px,100%);min-height:82px;border-radius:26px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:15px;padding:14px 18px 14px 14px;color:#fff;position:relative;overflow:hidden}
.footer-social-card::after{content:"•";position:absolute;right:18px;top:24px;color:rgba(255,255,255,.72);font-size:18px;line-height:1}
.footer-social-card img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:50%;padding:7px;flex:0 0 auto}
.footer-social-text strong{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.05;letter-spacing:-.055em}
.footer-social-text span{display:block;margin-top:5px;font-size:16px;color:rgba(255,255,255,.45);letter-spacing:-.035em}

/* ── shared buttons ── */
.btn{display:inline-flex;align-items:center;min-height:54px;padding:0 26px;border-radius:999px;font-family:"Courier New",Courier,monospace;font-size:14px;letter-spacing:-.02em;transition:opacity .25s}
.btn:hover{opacity:.8}
.btn-dark{background:#050505;color:#fff}
.btn-white{background:#fff;color:#050505}
.btn-white-orange{background:#fff;color:#fb670a}
.btn-orange{background:#fb670a;color:#fff}
.btn-outline-dark{border:1px solid rgba(5,5,5,.18);color:#050505}
.btn-outline-white{border:1px solid rgba(255,255,255,.3);color:#fff}

/* ── eyebrow ── */
.eyebrow{font-family:"Courier New",Courier,monospace;font-size:12px;letter-spacing:-.02em;color:rgba(5,5,5,.42);margin-bottom:22px}
.eyebrow-light{color:rgba(255,255,255,.58)}

/* ── status tag ── */
.status-tag{font-family:"Courier New",Courier,monospace;font-size:11px;border-radius:999px;padding:7px 14px;display:inline-block;letter-spacing:-.02em}
.status-white-orange{background:#fff;color:#fb670a}
.status-dark{background:rgba(255,255,255,.1);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.18)}

/* ── responsive base ── */
@media(max-width:900px){
  .site-header{padding-left:24px;padding-right:24px}
  nav{display:none}
  .menu-toggle{display:inline-flex}
  .mobile-menu{display:flex}
  .logo img{width:36px;height:36px}
  .logo span{font-size:15px}
  .site-footer{grid-template-columns:1fr;padding-left:24px;padding-right:24px}
  .footer-brand{min-height:auto;gap:44px}
  .footer-columns{grid-template-columns:1fr}
}
@media(max-width:640px){
  .site-header{padding-top:22px;padding-bottom:22px}
  .site-footer{min-height:auto}
  .footer-phrase{font-size:20px}
  .footer-address{font-size:13px}
  .footer-social-card{width:100%}
  .footer-social-card img{width:48px;height:48px}
  .footer-social-text strong{font-size:16px}
  .footer-col a,.footer-col span{min-height:34px}
}
