    :root { --ink:#111315; --paper:#f2f0ea; --muted:#595d60; --line:#d7d8d7; --red:#dc3b40; --green:#69a665; --blue:#497ac0; --max:1200px; --font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--font-sans); -webkit-font-smoothing:antialiased; }
    a { color:inherit; text-decoration:none; }
    button { font:inherit; }
    img { display:block; max-width:100%; }
    a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
    section[id] { scroll-margin-top:90px; }
    .wrap { width:min(calc(100% - 64px),var(--max)); margin-inline:auto; }
    .eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 20px; font-size:.75rem; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; font-weight:600; }
    .eyebrow::before { content:""; flex:none; width:22px; height:2px; background:linear-gradient(90deg,var(--red) 0 33%,var(--green) 33% 66%,var(--blue) 66%); }
    .section-title { margin:0; font:500 clamp(2rem,3.6vw,3.2rem)/1.12 var(--font-sans); letter-spacing:-.04em; }
    .section-lead { max-width:480px; margin:0; color:var(--muted); font-size:1.0625rem; line-height:1.7; }
    .site-header { position:fixed; z-index:50; inset:0 0 auto; color:white; background:rgba(17,19,21,.97); border-bottom:1px solid #ffffff26; }
    .nav { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
    .brand { display:inline-flex; align-items:center; flex-shrink:0; }
    .brand-logo { display:block; width:210px; height:auto; }
    .rgb-line i:nth-child(1) { background:var(--red); }
    .rgb-line i:nth-child(2) { background:var(--green); }
    .rgb-line i:nth-child(3) { background:var(--blue); }
    .nav-links { display:flex; align-items:center; gap:18px; font-size:.9375rem; }
    .nav-links a { color:#d3d5d6; }
    .nav-links a:hover { color:white; text-decoration:underline; text-underline-offset:6px; }
    .nav-links .nav-cta { padding:12px 18px; background:white; color:var(--ink); font-weight:600; }
    .language-link { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 12px; border:1px solid #ffffff80; background:#ffffff0a; color:white; font-weight:600; white-space:nowrap; }
    .nav-links .language-link { color:white; }
    .language-link:hover,.nav-links .language-link:hover,.mobile-links .language-link:hover { background:#ffffff1f; border-color:white; text-decoration:none; }
    .language-icon { flex-shrink:0; }
    .mobile-links { display:none; }
    .section-title,.contact-copy h2 { overflow-wrap:anywhere; }
    .hero { position:relative; isolation:isolate; overflow:hidden; color:white; background:var(--ink); }
    .hero-bg { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center calc(48% + 100px); }
    .hero::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(10,12,14,.97),rgba(10,12,14,.84) 45%,rgba(10,12,14,.34)); }
    .hero::after { content:""; position:absolute; z-index:1; inset:auto 0 0; height:3px; pointer-events:none; background:linear-gradient(90deg,var(--red) 0 33.333%,var(--green) 33.333% 66.666%,var(--blue) 66.666% 100%); }
    .hero-content { padding-block:174px 88px; }
    .hero .eyebrow { color:#c4c9cc; }
    h1 { max-width:820px; margin:0; font:500 clamp(2.4rem,4.8vw,4.4rem)/1.1 var(--font-sans); letter-spacing:-.045em; }
    .hero-bottom { margin-top:30px; }
    .hero-copy { max-width:610px; margin:0; color:#d2d5d7; font-size:1.125rem; line-height:1.65; }
    .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
    .button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:14px 22px; border:1px solid transparent; font-weight:600; font-size:.9375rem; line-height:1.4; }
    .button-light { background:white; color:var(--ink); }
    .button-light:hover { background:#e2e5e6; }
    .button-outline { border-color:#ffffff70; }
    .button-outline:hover { background:#ffffff15; }
    .button-dark { background:var(--ink); color:white; }
    .button-dark:hover { background:#30383e; }
    .services,.formats,.process,.contact { padding:80px 0; }
    .services { background:var(--paper); }
    .services-head,.process-head { display:grid; grid-template-columns:1.1fr 1fr; align-items:end; gap:64px; margin-bottom:40px; }
    .service-list { border-top:1px solid #939796; }
    .service-item { display:grid; grid-template-columns:44px 1fr 1.3fr; gap:24px; padding:28px 0; border-bottom:1px solid var(--line); }
    .service-no { color:var(--muted); font-size:.8125rem; padding-top:5px; }
    .service-item h3 { margin:0; font:500 clamp(1.3rem,2vw,1.65rem)/1.3 var(--font-sans); letter-spacing:-.025em; }
    .service-item p { margin:0; color:var(--muted); line-height:1.65; }
    .service-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
    .service-tags span { border:1px solid #c8ccca; padding:5px 8px; font-size:.8125rem; }
    .formats { background:#e5e7e6; }
    .formats-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; }
    .formats .section-lead { margin-top:22px; }
    .format-panel { border-top:1px solid #868d8d; }
    details { border-bottom:1px solid #c3c8c7; }
    summary { list-style:none; display:flex; justify-content:space-between; gap:20px; padding:21px 0; cursor:pointer; font:600 1rem/1.4 var(--font-sans); }
    summary::-webkit-details-marker { display:none; }
    summary::after { content:"+"; font-size:1.25rem; }
    details[open] summary::after { content:"−"; }
    details p { margin:0 30px 23px 0; color:var(--muted); line-height:1.75; }
    .format-note { margin:24px 0 0; font-size:.9375rem; line-height:1.6; }
    .format-note a { text-decoration:underline; text-underline-offset:4px; }
    .process { background:white; }
    .process-grid { display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid var(--line); }
    .step { padding:26px 24px; border-right:1px solid var(--line); }
    .step:first-child { padding-left:0; }
    .step:last-child { border-right:0; }
    .step-num { color:var(--muted); font-size:.75rem; letter-spacing:.06em; }
    .step h3 { margin:28px 0 12px; font:600 1rem/1.4 var(--font-sans); }
    .step p { margin:0; color:var(--muted); font-size:1rem; line-height:1.6; }
    .delivery { margin-top:54px; display:grid; grid-template-columns:.85fr 1.15fr; column-gap:80px; }
    .delivery h3 { margin:0; font:500 1.65rem/1.25 var(--font-sans); letter-spacing:-.025em; }
    .delivery dl { margin:0; }
    .delivery dl div { display:grid; grid-template-columns:160px 1fr; gap:24px; padding:16px 0; border-bottom:1px solid var(--line); }
    .delivery dl div:first-child { padding-top:0; }
    .delivery dt { font-weight:600; line-height:1.6; }
    .delivery dd { margin:0; color:var(--muted); line-height:1.6; }
    .delivery-note { grid-column:2; color:var(--muted); font-size:.875rem; line-height:1.6; }
    .contact { border-top:1px solid var(--line); }
    .contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
    .contact-copy h2 { margin:0; font:500 clamp(2rem,3.7vw,3.25rem)/1.13 var(--font-sans); letter-spacing:-.04em; }
    .contact-copy p { max-width:440px; margin:24px 0 30px; color:var(--muted); line-height:1.7; }
    .contact-direct { display:grid; justify-items:start; gap:14px; font-size:1.125rem; }
    .contact-direct a { border-bottom:1px solid #858a8b; padding-bottom:3px; }
    .inquiry-card { padding:32px; background:white; border:1px solid var(--line); }
    .inquiry-card h3 { margin:0; font:600 1.125rem/1.5 var(--font-sans); }
    .inquiry-card ul { list-style:none; padding:0; margin:24px 0; }
    .inquiry-card li { margin:0 0 18px; }
    .inquiry-card strong { display:block; font-size:.9375rem; margin-bottom:4px; }
    .inquiry-card li span,.inquiry-card p { color:var(--muted); font-size:.9375rem; line-height:1.6; }
    .inquiry-card p { margin:18px 0 0; }
    footer { padding:48px 0 24px; background:var(--ink); color:white; }
    .footer-grid { display:grid; grid-template-columns:1.3fr .7fr 1fr; gap:60px; padding-bottom:34px; }
    .footer-about { max-width:300px; color:#b8bec1; font-size:.9375rem; line-height:1.65; margin:20px 0 0; }
    .footer-col h3 { margin:0 0 18px; font-size:.8125rem; font-weight:500; color:#a7afb4; }
    .footer-col a,.footer-col address { display:block; margin:0 0 8px; font-size:.9375rem; line-height:1.7; font-style:normal; }
    .footer-col a:hover { text-decoration:underline; }
    .footer-bottom { border-top:1px solid #ffffff26; padding-top:22px; display:flex; justify-content:space-between; align-items:center; gap:20px; color:#a7afb4; font-size:.8125rem; }
    .rgb-line { display:flex; width:48px; height:2px; flex:none; }
    .rgb-line i { flex:1; }
    .skip-link { position:fixed; z-index:100; top:12px; left:12px; padding:12px 16px; color:black; background:white; transform:translateY(-160%); }
    .skip-link:focus { transform:none; }
    @media(max-width:900px) {
      .wrap { width:calc(100% - 40px); }
      .services-head,.process-head { gap:32px; }
      .formats-grid,.delivery,.contact-grid { gap:40px; }
      .service-item { grid-template-columns:30px 1fr 1.3fr; gap:16px; }
      .process-grid { grid-template-columns:1fr 1fr; }
      .step:nth-child(2) { border-right:0; }
      .step:nth-child(-n+2) { border-bottom:1px solid var(--line); }
      .step:nth-child(3) { padding-left:0; }
      .delivery dl div { grid-template-columns:1fr; gap:6px; }
    }
    @media(max-width:800px) {
      section[id] { scroll-margin-top:130px; }
      .mobile-links { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; padding-bottom:14px; font-size:.875rem; color:#d3d5d6; }
      .mobile-links .language-link { margin-left:auto; padding:8px; }
      .mobile-links .language-icon { display:none; }
      .mobile-links a:hover { text-decoration:underline; text-underline-offset:4px; }
      .nav { min-height:72px; gap:12px; }
      .brand-logo { width:160px; }
      .nav-links { gap:18px; font-size:.875rem; }
      .nav-links>a:not(.nav-cta) { display:none; }
      .nav-links .nav-cta { padding:10px 12px; }
      .hero-content { padding-block:160px 56px; }
      h1 { font-size:clamp(2rem,7.7vw,3.25rem); overflow-wrap:break-word; }
      .hero::before { background:rgba(10,12,14,.83); }
      .hero-copy { font-size:1.0625rem; }
      .hero-actions { gap:10px; }
      .button { padding-inline:18px; }
      .services,.formats,.process,.contact { padding:52px 0; }
      .services-head,.process-head,.formats-grid,.delivery,.contact-grid { grid-template-columns:1fr; gap:26px; }
      .service-item { grid-template-columns:26px 1fr; gap:12px; }
      .service-item>div { grid-column:2; }
      .step { padding:22px 16px; }
      .delivery { margin-top:38px; }
      .delivery-note { grid-column:1; margin:0; }
      .inquiry-card { padding:24px; }
      .footer-grid { grid-template-columns:1fr 1fr; gap:30px; }
      .footer-grid>div:first-child { grid-column:1 / -1; }
    }
    @media(max-width:380px) {
      .wrap { width:calc(100% - 32px); }
      .brand-logo { width:136px; }
      .hero-actions .button { width:100%; }
      .process-grid { grid-template-columns:1fr; }
      .step { padding:22px 0; border-right:0; border-bottom:1px solid var(--line); }
      .step:last-child { border-bottom:0; }
      .footer-grid { grid-template-columns:1fr; }
    }
    @media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
