@font-face { font-family: "Inter Tight"; src: url("assets/fonts/InterTight-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }

:root { --black:#070809; --panel:#0d0f12; --white:#f6f4ef; --muted:#97999f; --gold:#d7a84f; --line:rgba(255,255,255,.12); --gutter:clamp(18px,4vw,64px); --max:1500px; }
* { box-sizing:border-box; }
html { background:var(--black); color:var(--white); scroll-behavior:smooth; }
body { margin:0; min-width:320px; background:var(--black); font-family:"Inter Tight",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,textarea { font:inherit; }
.skip-link { position:fixed; z-index:100; top:10px; left:10px; padding:10px 14px; background:var(--gold); color:var(--black); font-weight:750; transform:translateY(-160%); transition:transform .2s ease; }
.skip-link:focus { transform:translateY(0); }

.service-header { position:sticky; z-index:30; top:0; height:68px; padding:0 var(--gutter); display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid var(--line); background:rgba(7,8,9,.88); backdrop-filter:blur(18px); }
.service-brand { display:flex; align-items:center; gap:12px; font-size:10px; font-weight:720; letter-spacing:.14em; }
.service-brand img { width:40px; height:40px; object-fit:contain; }
.service-header nav { display:flex; align-items:center; gap:clamp(18px,3vw,42px); color:rgba(255,255,255,.62); font-size:9px; font-weight:650; letter-spacing:.12em; text-transform:uppercase; }
.service-header nav a:hover,.service-header nav a:focus-visible { color:var(--white); }
.service-back { padding:9px 13px; border:1px solid var(--line); color:var(--white)!important; }
.service-language { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--white)!important; }

.service-main { overflow:hidden; }
.service-hero { position:relative; min-height:68svh; padding:clamp(100px,14vw,190px) var(--gutter) 80px; display:grid; align-content:end; border-bottom:1px solid var(--line); }
.service-hero::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 78% 42%,rgba(215,168,79,.12),transparent 30%),linear-gradient(90deg,transparent 49.94%,rgba(255,255,255,.07) 50%,transparent 50.06%); }
.service-hero__inner { position:relative; width:min(100%,var(--max)); margin:auto; }
.service-eyebrow { margin:0 0 26px; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.service-hero h1 { max-width:1100px; margin:0; font-size:clamp(64px,10vw,152px); font-weight:470; line-height:.8; letter-spacing:-.07em; }
.service-hero h1 em { color:var(--gold); font-weight:320; }
.service-hero__intro { max-width:580px; margin:40px 0 0 auto; color:rgba(255,255,255,.64); font-size:clamp(16px,1.5vw,21px); line-height:1.55; }
.service-hero--index { min-height:76svh; }

.service-layout { width:min(100%,var(--max)); margin:auto; padding:clamp(72px,9vw,130px) var(--gutter); display:grid; grid-template-columns:minmax(190px,.32fr) minmax(0,1fr); gap:clamp(44px,9vw,150px); }
.service-toc { align-self:start; position:sticky; top:110px; display:grid; gap:4px; }
.service-toc a { padding:11px 0; border-bottom:1px solid var(--line); color:rgba(255,255,255,.48); font-size:9px; font-weight:650; letter-spacing:.1em; text-transform:uppercase; }
.service-toc a:hover,.service-toc a:focus-visible { color:var(--gold); }
.service-content { min-width:0; }
.service-section { padding:0 0 clamp(62px,8vw,110px); scroll-margin-top:110px; }
.service-section + .service-section { padding-top:clamp(62px,8vw,110px); border-top:1px solid var(--line); }
.service-section > span { color:rgba(255,255,255,.34); font-size:9px; font-weight:650; letter-spacing:.13em; }
.service-section h2 { max-width:820px; margin:18px 0 32px; font-size:clamp(42px,5.6vw,82px); font-weight:440; line-height:.92; letter-spacing:-.055em; }
.service-section h2 em { color:var(--gold); font-weight:320; }
.service-section h3 { margin:34px 0 12px; font-size:21px; font-weight:560; }
.service-section p,.service-section li { color:rgba(255,255,255,.66); font-size:clamp(15px,1.15vw,18px); line-height:1.65; }
.service-section p { max-width:760px; }
.service-section ul,.service-section ol { max-width:780px; margin:22px 0 0; padding-left:20px; }
.service-section li + li { margin-top:9px; }
.service-section a { color:var(--gold); text-decoration:underline; text-underline-offset:4px; }
.service-section strong { color:rgba(255,255,255,.9); }
.service-email { display:inline-block; max-width:100%; font-size:clamp(24px,4vw,52px); font-weight:450; letter-spacing:-.04em; overflow-wrap:anywhere; }
.service-button { display:inline-flex; align-items:center; min-height:48px; padding:0 18px; border:1px solid rgba(215,168,79,.5); color:var(--white)!important; font-size:11px; font-weight:720; letter-spacing:.1em; text-decoration:none!important; text-transform:uppercase; transition:background .2s ease,color .2s ease; }
.service-button:hover,.service-button:focus-visible { background:var(--gold); color:var(--black)!important; }

.service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-top:30px; background:var(--line); }
.service-card { min-height:230px; padding:clamp(24px,3vw,42px); background:var(--panel); }
.service-card span { color:var(--gold); font-size:9px; letter-spacing:.14em; }
.service-card h3 { margin:32px 0 10px; font-size:clamp(24px,2.4vw,36px); }
.service-card p { margin:0; font-size:15px; }
.service-notice { margin:28px 0; padding:22px 24px; border:1px solid rgba(215,168,79,.38); background:rgba(215,168,79,.065); color:rgba(255,255,255,.76); font-size:14px; line-height:1.55; }
.service-notice strong { display:block; margin-bottom:5px; color:var(--gold); font-size:9px; letter-spacing:.13em; text-transform:uppercase; }
.service-notice--critical { border-color:rgba(244,117,97,.46); background:rgba(244,117,97,.07); }
.service-notice--critical strong { color:#ff937f; }
.service-account { margin:30px 0; padding:clamp(24px,4vw,46px); border:1px solid rgba(215,168,79,.42); background:linear-gradient(135deg,rgba(215,168,79,.09),rgba(255,255,255,.02)); }
.service-account > span { display:block; margin-bottom:18px; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.service-account > strong { display:block; font-size:clamp(25px,4.5vw,58px); font-weight:470; letter-spacing:-.045em; overflow-wrap:anywhere; }
.service-account p { margin:18px 0 0; font-size:14px; }
.service-form { max-width:780px; margin:28px 0; padding:clamp(24px,4vw,42px); border:1px solid var(--line); background:var(--panel); }
.service-form p { margin:0; color:rgba(255,255,255,.76); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:13px; }
.service-form p + p { margin-top:22px; }
.service-steps { padding:0!important; list-style:none; counter-reset:steps; }
.service-steps li { display:grid; grid-template-columns:52px minmax(0,1fr); column-gap:18px; padding:22px 0; border-bottom:1px solid var(--line); counter-increment:steps; }
.service-steps li::before { content:"0" counter(steps); grid-row:1/3; color:var(--gold); font-size:10px; font-weight:700; letter-spacing:.12em; }
.service-steps strong,.service-steps span { grid-column:2; }
.service-steps strong { font-size:20px; }
.service-steps span { margin-top:4px; color:rgba(255,255,255,.55); font-size:14px; }
.service-faq { border-top:1px solid var(--line); }
.service-faq details { border-bottom:1px solid var(--line); }
.service-faq summary { position:relative; padding:24px 48px 24px 0; color:rgba(255,255,255,.9); font-size:clamp(17px,1.5vw,22px); font-weight:520; line-height:1.35; cursor:pointer; list-style:none; }
.service-faq summary::-webkit-details-marker { display:none; }
.service-faq summary::after { content:"+"; position:absolute; top:22px; right:4px; color:var(--gold); font-size:24px; font-weight:300; transition:transform .25s ease; }
.service-faq details[open] summary::after { transform:rotate(45deg); }
.service-faq details p { margin:0; padding:0 48px 24px 0; font-size:15px; }
.service-faq details a { color:var(--gold); }
.service-status { width:100%; margin-top:28px; border-collapse:collapse; }
.service-status th,.service-status td { padding:16px 12px; border-bottom:1px solid var(--line); text-align:left; font-size:13px; }
.service-status th { color:rgba(255,255,255,.38); font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.status-pending { color:#f4bd61; }

.service-index { width:min(100%,var(--max)); margin:auto; padding:clamp(70px,9vw,130px) var(--gutter); }
.service-index__intro { display:flex; justify-content:space-between; gap:30px; margin-bottom:28px; color:rgba(255,255,255,.48); font-size:10px; font-weight:650; letter-spacing:.12em; text-transform:uppercase; }
.service-index__intro p { margin:0; }
.service-index__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--line); }
.service-index__grid a { min-height:285px; padding:clamp(26px,4vw,54px); display:flex; flex-direction:column; justify-content:space-between; background:var(--panel); transition:background .3s ease,transform .3s ease; }
.service-index__grid a:hover { background:#14171b; }
.service-index__grid span { color:var(--gold); font-size:9px; letter-spacing:.14em; }
.service-index__grid h2 { margin:auto 0 12px; font-size:clamp(34px,4vw,62px); font-weight:450; letter-spacing:-.05em; }
.service-index__grid p { max-width:460px; margin:0; color:rgba(255,255,255,.55); line-height:1.5; }

.service-footer { padding:54px var(--gutter) 30px; border-top:1px solid var(--line); }
.service-footer__inner { width:min(100%,var(--max)); margin:auto; display:grid; grid-template-columns:1fr auto; gap:50px; align-items:start; }
.service-footer strong { font-size:12px; letter-spacing:.12em; }
.service-footer p { max-width:430px; margin:12px 0 0; color:rgba(255,255,255,.45); font-size:13px; line-height:1.5; }
.service-footer nav { display:flex; flex-wrap:wrap; gap:18px 28px; color:rgba(255,255,255,.58); font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.service-footer small { grid-column:1/-1; padding-top:24px; border-top:1px solid var(--line); color:rgba(255,255,255,.32); font-size:8px; letter-spacing:.12em; }

@media (max-width:760px) {
  .service-header nav a:not(.service-back):not(.service-language) { display:none; }
  .service-header nav { gap:10px; }
  .service-hero { min-height:620px; padding-top:120px; }
  .service-hero h1 { font-size:clamp(58px,18vw,88px); }
  .service-hero__intro { margin:28px 0 0; }
  .service-layout { grid-template-columns:1fr; }
  .service-toc { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-grid,.service-index__grid { grid-template-columns:1fr; }
  .service-card { min-height:190px; }
  .service-index__grid a { min-height:250px; }
  .service-status { display:block; overflow-x:auto; }
  .service-footer__inner { grid-template-columns:1fr; }
  .service-footer small { grid-column:auto; }
  .service-index__intro { display:block; }
  .service-index__intro p { margin-top:8px; }
}

/* V4 — premium mobile service centre */
@media (max-width:760px) {
  html,body { width:100%; max-width:100%; overflow-x:hidden; }
  .service-main { width:100%; max-width:100%; overflow-x:hidden; }
  .service-header { height:62px; padding-inline:14px; gap:12px; }
  .service-brand { min-width:0; gap:8px; font-size:9px; }
  .service-brand img { width:34px; height:34px; }
  .service-back { padding:8px 10px; }
  .service-language { width:32px; height:32px; }
  .service-back { display:none; }
  .service-hero,
  .service-hero--index { min-height:560px; padding:110px 18px 64px; }
  .service-hero__inner { width:100%; max-width:calc(100vw - 36px); min-width:0; }
  .service-hero h1 {
    max-width:100%;
    font-size:clamp(46px,13vw,56px);
    line-height:.86;
    letter-spacing:-.065em;
    overflow-wrap:anywhere;
  }
  .service-hero h1 em { display:block; width:100%; max-width:290px; white-space:normal; }
  .service-hero__intro { width:100%; max-width:310px; font-size:15px; }
  .service-layout,
  .service-index { padding-inline:18px; }
  .service-toc { overflow-x:auto; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(138px,1fr); scrollbar-width:thin; }
  .service-section h2 { font-size:clamp(38px,12vw,56px); }
  .service-index__grid a { min-width:0; min-height:220px; }
  .service-index__grid h2 { min-width:0; font-size:clamp(32px,10vw,46px); overflow-wrap:anywhere; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
