:root{
  --ink:#102038;--ink-2:#2a3d5c;--muted:#6b7c99;--line:#dce5f3;
  --cloud:#f3f7fc;--paper:#fff;--teal:#0f9d8a;--teal-2:#147a6c;
  --blue:#2f6fed;--shadow:0 18px 50px rgba(28,55,110,.10);--radius:20px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cloud);color:var(--ink);font-family:Manrope,"Noto Sans SC",system-ui,sans-serif;line-height:1.7}
a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
img{max-width:100%;height:auto}
.container,.wrap{width:min(1120px,92vw);margin:0 auto}
.kicker,.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--teal-2);font:600 11px "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase}
.kicker:before,.eyebrow:before{content:none;display:none}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(220,229,243,.9);backdrop-filter:blur(14px)}
.header-inner{width:min(1120px,92vw);margin:0 auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:21px;letter-spacing:-.03em;flex-shrink:0}
.brand-text{display:grid;line-height:1.05}
.brand-text small{font:500 10px "DM Mono",monospace;letter-spacing:.16em;color:#7a8eab;margin-top:5px}
.mark{display:block;width:46px;height:46px;border-radius:14px;flex-shrink:0;background:transparent url("/anwen-mark.svg") center/contain no-repeat;box-shadow:none;color:transparent;font-size:0;overflow:hidden;text-indent:-999px}
.nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.nav a{font-size:14px;font-weight:700;color:#4a5d7c;transition:color .2s}
.nav a:hover,.nav a[aria-current=page]{color:var(--teal-2)}
.nav-cta,.header-cta{padding:10px 15px;border-radius:10px;background:var(--ink);color:#fff!important;font-size:13px!important;font-weight:700;box-shadow:0 6px 14px rgba(16,32,56,.16);white-space:nowrap}
.header-actions{display:none;align-items:center;gap:10px}

/* Language switcher */
.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:#f7f8fb;flex-shrink:0}
.lang-switch button{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:#5a6b86;font:700 12px Manrope,"Noto Sans SC",system-ui,sans-serif;padding:6px 10px;border-radius:999px;cursor:pointer;line-height:1}
.lang-switch button.is-active{background:var(--ink);color:#fff}
.lang-switch button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.nav .lang-switch{margin-left:4px}
.header-actions .lang-switch{display:none}
@media(max-width:780px){
  .nav .lang-switch{margin:10px 0 4px}
  .header-actions .lang-switch{display:inline-flex}
}
.post-card[data-lang-hidden="1"],.article-card[data-lang-hidden="1"]{display:none!important}

.nav-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:0;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px}

/* Buttons */
.button{display:inline-flex;align-items:center;gap:8px;padding:13px 18px;border-radius:12px;font-size:14px;font-weight:800;transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--teal-2);color:#fff;box-shadow:0 12px 24px rgba(15,157,138,.28)}
.button-secondary{background:#fff;border:1px solid #d2deef;color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:11px;font-size:14px;font-weight:800}
.btn-primary{background:var(--teal-2);color:#fff}

/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:88px 0 72px;
  background:radial-gradient(circle at 88% 18%,rgba(15,157,138,.18),transparent 28%),
             radial-gradient(circle at 50% 90%,rgba(47,111,237,.08),transparent 32%),#eef7f5}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero-copy{max-width:640px}
.hero h1{font-size:clamp(32px,4.2vw,48px);letter-spacing:-.045em;line-height:1.22;margin:14px 0 16px;max-width:640px;font-weight:800}
.hero h1 .h1-line{display:block}
.hero h1 em{font-style:normal;color:var(--teal-2);display:block;margin-top:6px}
.hero-lead{font-size:17px;line-height:1.55;color:var(--ink-2);max-width:480px;margin:0 0 18px}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.hero-chip{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid #cfe4de;color:var(--teal-2);font-size:12px;font-weight:800;letter-spacing:.01em}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.control-card{position:relative;padding:26px 24px;border-radius:22px;background:rgba(12,36,48,.96);color:#fff;box-shadow:0 24px 50px rgba(12,40,48,.28);overflow:hidden}
.control-card:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(27,179,158,.4),transparent 66%);right:-80px;top:-90px}
.panel-label{position:relative;font:500 10px "DM Mono",monospace;letter-spacing:.16em;color:#9ecfc5}
.panel-title{position:relative;font-size:22px;line-height:1.35;letter-spacing:-.03em;font-weight:800;margin:12px 0 18px}
.hero-steps{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:10px}
.hero-steps li{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
.hero-steps strong{font:700 12px "DM Mono",monospace;color:#4fe0c8;min-width:28px}
.hero-steps span{font-size:13px;color:#d5ebe6}
.panel-trust{position:relative;display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
.panel-trust span{font-size:11px;color:#9ecfc5;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.06)}
.panel-stat{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.panel-stat div{padding:13px 12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:12px}
.panel-stat strong{display:block;font-size:17px}.panel-stat span{font-size:11px;color:#a8c8c1}
.panel-list{position:relative;margin-top:16px;display:grid;gap:10px}
.panel-list div{display:flex;justify-content:space-between;color:#d5ebe6;font-size:12px}
.panel-list b{font:500 10px "DM Mono",monospace;color:#4fe0c8}

/* Sections */
.section{padding:78px 0}.section-white{background:var(--paper)}
.section-title{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px}
.section-title h2,.seo-head h2{font-size:clamp(28px,3.4vw,42px);line-height:1.2;letter-spacing:-.05em;margin:10px 0 0}
.section-title p{color:var(--muted);max-width:400px;margin:0;font-size:14px}
.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.solution,.service-card,.post-card,.case-card,.article-card,.about-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;transition:.25s}
.solution:hover,.service-card:hover,.post-card:hover,.case-card:hover,.article-card:hover{border-color:#9fd8cf;transform:translateY(-3px);box-shadow:0 16px 32px rgba(20,80,70,.08)}
.solution{min-height:250px;display:flex;flex-direction:column}
.solution-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:var(--teal-2);background:#e5f7f3;font:700 13px "DM Mono",monospace}
.solution h3{font-size:17px;line-height:1.35;letter-spacing:-.03em;margin:18px 0 8px}
.solution p{font-size:13px;color:var(--muted);margin:0}
.solution a{margin-top:auto;padding-top:18px;color:var(--teal-2);font-size:13px;font-weight:800}

/* Trust / cases */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.case-card .tag{font:500 10px "DM Mono",monospace;color:var(--teal-2);letter-spacing:.08em}
.case-card h3{font-size:18px;margin:12px 0 8px;letter-spacing:-.03em}
.case-card p{font-size:13px;color:var(--muted);margin:0}
.case-card .result{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;font-weight:700;color:var(--ink-2)}
.start-box{margin-top:22px;padding:22px 24px;border-radius:16px;background:linear-gradient(120deg,#e8f8f4,#eef4ff);border:1px solid #cfe8e1;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.start-box h3{margin:0 0 4px;font-size:18px}.start-box p{margin:0;font-size:13px;color:var(--muted)}

/* Articles teaser */
.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}
.article-card{min-height:230px;display:flex;flex-direction:column}
.article-card time,.post-card time{font:500 10px "DM Mono",monospace;color:#8392ac;white-space:nowrap}
.article-card h3,.post-card h2{font-size:18px;line-height:1.4;margin:14px 0 8px;letter-spacing:-.03em}
.article-card p,.post-card p{font-size:13px;color:var(--muted);margin:0}
.article-card a:not(.article-card-hit),.post-card a:not(.post-card-hit){margin-top:auto;padding-top:16px;color:var(--teal-2);font-size:13px;font-weight:800}

/* SEO / FAQ */
.seo-section{background:#eef6f4}
.seo-head{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:end}
.seo-head p{font-size:14px;color:var(--muted);margin:0}
.seo-grid,.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}
.seo-grid article,.faq-grid details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.seo-grid b,.faq-grid summary{font-size:15px;font-weight:800}
.seo-grid p,.faq-grid p{font-size:13px;color:var(--muted);margin:7px 0 0}
.keyword-line{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#60708e;font-size:12px}
.faq-grid{margin-top:0}.faq-grid details{cursor:pointer}
.faq-grid summary{list-style:none}.faq-grid summary:after{content:"+";float:right;color:var(--teal);font-size:18px}
.faq-grid details[open] summary:after{content:"−"}

/* CTA band */
.cta{padding:70px 0;background:linear-gradient(115deg,#0f7a6c,#0c4a55);color:#fff}
.cta .container{display:flex;justify-content:space-between;align-items:center;gap:28px}
.cta h2{font-size:clamp(28px,3.6vw,42px);line-height:1.15;letter-spacing:-.05em;margin:10px 0 0}
.cta p{margin:10px 0 0;color:#c7ebe4}
.cta .button{background:#fff;color:#0d5c50;white-space:nowrap}

/* Footer */
.footer-col a:hover{color:#fff}

/* Inner pages */
.page-hero{padding:64px 0 48px;background:linear-gradient(135deg,#eef8f5,#f5f9fc)}
.page-hero h1{font-size:clamp(32px,4.6vw,52px);line-height:1.15;letter-spacing:-.05em;margin:12px 0}
.page-hero p{font-size:16px;color:var(--muted);max-width:640px;margin:0}
.crumbs{font-size:12px;color:#71829f;margin-bottom:16px}.crumbs a{color:var(--teal-2)}
.service-grid,.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service-card h2{font-size:19px;line-height:1.35;letter-spacing:-.03em;margin:14px 0 8px}
.service-card p,.about-card p{font-size:14px;color:var(--muted)}
.service-card ul{padding-left:18px;color:#60708e;font-size:13px;margin:12px 0 0}
.service-card li+li{margin-top:6px}
.post-card{display:flex;height:100%;min-height:280px;flex-direction:column}
.about-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:18px}
.about-card h2{font-size:24px;letter-spacing:-.04em;margin:0 0 12px;line-height:1.3}
.contact-box{padding:24px;border-radius:18px;background:linear-gradient(145deg,#0f3d38,#0c2a36);color:#fff}
.contact-box .kicker{color:#8fd9cb}.contact-box h2{margin:10px 0;font-size:22px}
.contact-box p{color:#b7d6d0;font-size:14px}.contact-box .button{background:#fff;color:#0d5c50;margin-top:12px}
.process{background:var(--ink);color:#fff}.process .kicker{color:#7dccbf}
.process .section-title h2{color:#fff}.process .section-title p{color:#a8b8cc}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.14)}
.step{padding:22px 20px 10px;border-right:1px solid rgba(255,255,255,.14);min-height:170px}
.step:last-child{border-right:0}
.step-index{font:500 11px "DM Mono",monospace;color:#67d8c7}
.step h3{font-size:17px;margin:22px 0 8px;letter-spacing:-.03em}
.step p{font-size:13px;color:#b6c3dc;margin:0}
.engage-list{display:grid;gap:12px;margin-top:8px}
.engage-list article{padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.engage-list h3{margin:0 0 6px;font-size:16px}.engage-list p{margin:0;font-size:13px;color:var(--muted)}

/* Article */
.article-layout{width:min(760px,92vw);margin:0 auto;padding:56px 0 72px}
.article-layout h1{font-size:clamp(28px,4.2vw,42px);line-height:1.25;letter-spacing:-.045em;margin:10px 0}
.article-meta{font-size:13px;color:var(--muted);margin-bottom:28px}
.article-body{font-size:16px;color:var(--ink-2)}
.article-body h2{font-size:22px;letter-spacing:-.03em;margin:36px 0 12px;color:var(--ink)}
.article-body h3{font-size:17px;margin:24px 0 8px;color:var(--ink)}
.article-body p{margin:0 0 14px}.article-body ul,.article-body ol{padding-left:20px;margin:0 0 16px;color:#425675}
.article-body li+li{margin-top:6px}
.article-body .note{padding:16px 18px;background:#e8f7f3;border-left:3px solid var(--teal);border-radius:0 12px 12px 0;font-size:14px;margin:20px 0}
.checklist{list-style:none;padding:0!important}
.checklist li{padding:10px 12px 10px 36px;position:relative;border:1px solid var(--line);border-radius:10px;background:#fff;margin-top:8px;font-size:14px}
.checklist li:before{content:"✓";position:absolute;left:12px;top:10px;color:var(--teal);font-weight:800}
.article-cta{margin:36px 0 20px;padding:22px;border-radius:16px;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.article-cta p{margin:0;color:#c5d4e0;font-size:14px}
.article-cta .btn{background:#fff;color:var(--ink)}
.back-link{display:inline-block;margin-top:8px;font-size:13px;font-weight:700;color:var(--teal-2)}

@media(max-width:960px){.solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hero-grid,.solution-grid,.case-grid,.articles-grid,.service-grid,.post-grid,.seo-head,.seo-grid,.faq-grid,.about-grid,.steps,  .solution-grid{grid-template-columns:1fr 1fr}
  .nav{gap:18px}
}
@media(max-width:780px){
  .header-actions{display:flex}
  .nav-toggle{display:flex}
  .nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);
    flex-direction:column;align-items:stretch;padding:12px 5vw 16px;gap:0;box-shadow:0 12px 28px rgba(16,32,56,.08)}
  .nav.is-open{display:flex}
  .nav a{padding:12px 4px;border-bottom:1px solid var(--line)}
  .nav .nav-cta{display:none} /* CTA stays in header-actions */
  .hero-grid,.solution-grid,.case-grid,.articles-grid,.service-grid,.post-grid,.seo-head,.seo-grid,.faq-grid,.about-grid,.steps,.footer-grid,.panel-stat{grid-template-columns:1fr}
  .cta .container,.start-box,.article-cta,.section-title{display:block}
  .cta .button,.start-box .button{margin-top:16px}
  .hero{padding:56px 0 48px}.section{padding:56px 0}.page-hero{padding:40px 0 32px}
  .steps .step{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);min-height:auto}
}

.decision-table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:14px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.decision-table th,.decision-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.decision-table th{background:#e8f7f3;color:var(--ink);font-size:13px;font-weight:800}
.decision-table tr:last-child td{border-bottom:0}
.decision-table td{color:#425675}
.footer-note{font-size:12px!important;color:#7e98a8!important;margin-top:8px!important}
.site-footer @media(max-width:960px){.site-footer }
@media(max-width:780px){.site-footer .decision-table{font-size:13px}.decision-table th,.decision-table td{padding:9px 10px}}


/* ===== 10/10 polish: a11y + trust + related ===== */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:9999}
.skip-link:focus{left:16px;top:16px;width:auto;height:auto;padding:10px 14px;background:var(--teal);color:#fff;border-radius:10px;font-weight:800;outline:3px solid #fff;outline-offset:2px}
a:focus-visible,button:focus-visible,summary:focus-visible,.nav-toggle:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.button:focus-visible,.btn:focus-visible,.nav-cta:focus-visible{outline:3px solid #fff;box-shadow:0 0 0 5px var(--teal)}
.button-primary:hover{background:#0f5f54;box-shadow:0 14px 28px rgba(15,157,138,.34)}
.button-secondary:hover{border-color:var(--teal);color:var(--teal-2)}
.cta .button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.2)}
.nav-cta:hover,.header-cta:hover{background:#1a3352;transform:translateY(-1px)}
main:focus{outline:none}

.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.trust-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.trust-card h3{margin:0 0 10px;font-size:16px;letter-spacing:-.02em}
.trust-card ul{margin:0;padding-left:18px;color:#60708e;font-size:13px}
.trust-card li+li{margin-top:6px}
.trust-card .neg{color:#8a4b3a}
.materials-entry{margin-top:18px;padding:18px 20px;border-radius:14px;background:#e8f7f3;border:1px solid #c6e8df;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.materials-entry p{margin:0;font-size:14px;color:var(--ink-2)}
.materials-entry a{font-weight:800;color:var(--teal-2);white-space:nowrap}

.boundary-box{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.boundary-box article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.boundary-box h3{margin:0 0 8px;font-size:15px}
.boundary-box p,.boundary-box ul{margin:0;font-size:13px;color:var(--muted)}
.boundary-box ul{padding-left:18px;margin-top:8px}
.boundary-box li+li{margin-top:5px}

.related{margin:28px 0 8px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}
.related h2{margin:0 0 12px;font-size:17px;letter-spacing:-.02em}
.related-list{display:grid;gap:8px;list-style:none;padding:0;margin:0}
.related-list a{display:block;padding:10px 12px;border-radius:10px;background:#f3f7fc;color:var(--teal-2);font-size:14px;font-weight:700}
.related-list a:hover{background:#e5f7f3}

.reading-meta{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:13px;color:var(--muted);margin:0 0 24px}
.reading-meta time,.reading-meta span{font:500 12px "DM Mono",monospace;color:#8392ac}

.service-scan{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:22px}
.service-scan .lead{font-size:15px;color:var(--ink-2);margin:0}
.service-scan .chips{display:flex;flex-wrap:wrap;gap:8px}
.service-scan .chip{padding:6px 12px;border-radius:999px;background:#e5f7f3;color:var(--teal-2);font-size:12px;font-weight:800}

@media(max-width:960px){
  .trust-grid,.boundary-box,.service-scan{grid-template-columns:1fr 1fr}
}
@media(max-width:780px){
  .trust-grid,.boundary-box,.service-scan{grid-template-columns:1fr}
}

.panel-slides{position:relative;min-height:248px}
.panel-slide{position:relative;animation:panelIn .45s ease}
.panel-slide[hidden]{display:none!important}
@keyframes panelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.panel-slide{animation:none}}
.panel-dots{position:relative;display:flex;gap:8px;margin-top:18px;align-items:center}
.panel-dot{width:8px;height:8px;border-radius:99px;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.28);transition:width .2s,background .2s}
.panel-dot.is-active{width:22px;background:#4fe0c8}
.panel-progress{position:relative;height:2px;margin-top:14px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.panel-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#1bb39e,#4fe0c8);border-radius:99px}

/* Carousel a11y toolbar */
.panel-toolbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;z-index:1}
.panel-pause{appearance:none;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#d5ebe6;font:700 11px "DM Mono",monospace;letter-spacing:.06em;padding:6px 10px;border-radius:999px;cursor:pointer}
.panel-pause[aria-pressed="true"]{background:rgba(79,224,200,.18);border-color:rgba(79,224,200,.45);color:#4fe0c8}
.panel-pause:focus-visible{outline:2px solid #4fe0c8;outline-offset:2px}
.panel-live{font:500 11px "DM Mono",monospace;letter-spacing:.08em;color:#9ecfc5}
.panel-dot:focus-visible{outline:2px solid #4fe0c8;outline-offset:3px}

/* Service deliverables & cross-links */
.deliverable{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-2);line-height:1.55}
.svc-link{margin:10px 0 0;font-size:13px;font-weight:800}
.svc-link a{color:var(--teal-2)}
.svc-cross{margin:0 0 12px;font-size:13px;font-weight:800}
.svc-cross a{color:var(--teal-2)}
.contact-note{font-size:12px;color:var(--muted);margin:10px 0 16px;line-height:1.55}

/* Mobile polish for new bits */
@media (max-width:720px){
  .panel-toolbar{margin-bottom:8px}
  .deliverable{font-size:12px}
}
/* Home hero refinement: make the offer readable before listing service categories. */
.hero h1{max-width:590px;font-size:clamp(34px,4vw,51px);line-height:1.16}.hero-proof{display:inline-flex;align-items:center;margin:6px 0 16px;padding:7px 10px;border-left:2px solid var(--teal-2);background:rgba(255,255,255,.52);color:#4d6470;font-size:12px;font-weight:750;letter-spacing:.01em}.hero-copy .eyebrow{letter-spacing:.11em}.hero-copy .h1-line{white-space:nowrap}@media(max-width:560px){.hero-copy .h1-line{white-space:normal}.hero-proof{font-size:11px}}
/* Refined brand mark: architectural A, without the generic checkmark motif. */
.mark{width:44px;height:44px;border-radius:12px;filter:drop-shadow(0 7px 12px rgba(12,31,48,.12))}.brand{gap:12px}.brand-text{letter-spacing:-.045em}.brand-text small{letter-spacing:.16em;font-size:8px;color:#67768a}@media(max-width:640px){.mark{width:40px;height:40px}.brand{gap:9px}}
/* Anwen signature palette — ink, ivory and restrained champagne metal. */
:root{--ink:#16171b;--ink-2:#3f4147;--muted:#74736e;--line:#e2ded4;--cloud:#f2f0eb;--paper:#fbfaf7;--teal:#a98950;--teal-2:#806231;--blue:#8e7450;--shadow:0 20px 55px rgba(22,20,16,.11);--radius:14px}
body{background:var(--cloud);color:var(--ink)}a:focus-visible{outline-color:#b9985f}.site-header{background:rgba(251,250,247,.94);border-bottom-color:#e7e2d8}.nav a{color:#575651}.nav a:hover,.nav a[aria-current=page]{color:#73592e}.nav-cta,.header-cta{background:#15171d;box-shadow:0 8px 20px rgba(15,15,17,.18);border-radius:7px}.mark{border-radius:12px;filter:drop-shadow(0 8px 15px rgba(20,17,13,.16))}.brand-text small{color:#83796c}.button{border-radius:7px}.button-primary,.btn-primary{background:#1a1b20;box-shadow:0 13px 25px rgba(19,18,18,.19)}.button-secondary{background:#fbfaf7;border-color:#dcd5c8}.hero{background:radial-gradient(circle at 87% 18%,rgba(183,151,94,.20),transparent 27%),radial-gradient(circle at 48% 100%,rgba(37,39,46,.075),transparent 35%),#f0efe9}.hero h1 em{color:#8b6c37}.hero-lead{color:#41434a}.hero-proof{border-left-color:#b08f54;background:rgba(250,248,243,.72);color:#57564f}.hero-chip{background:rgba(251,250,247,.84);border-color:#ded8cc;color:#765c30}.control-card{background:#17191f;box-shadow:0 28px 60px rgba(19,18,17,.26);border-radius:16px}.control-card:before{background:radial-gradient(circle,rgba(197,165,106,.32),transparent 66%)}.panel-label,.panel-trust span{color:#d5be91}.hero-steps strong,.panel-list b{color:#d6b778}.hero-steps span,.panel-list div{color:#e9e4da}.panel-stat span{color:#c4bcae}.section-white,.solution,.service-card,.post-card,.case-card,.article-card,.about-card{background:#fbfaf7}.solution:hover,.service-card:hover,.post-card:hover,.case-card:hover,.article-card:hover{border-color:#cbb27f;box-shadow:0 19px 36px rgba(69,53,26,.10)}.solution-icon{background:#eee9de;color:#806231}.solution a,.article-card a:not(.article-card-hit),.post-card a:not(.post-card-hit),.case-card .tag{color:#7a5d2f}.start-box{background:linear-gradient(120deg,#efebe2,#f6f4ee);border-color:#dcd4c5}.seo-section{background:#e9e7e0}.cta{background:linear-gradient(115deg,#16171b,#302a21)}.cta p{color:#d8d0c1}.cta .button{color:#26231e;background:#efe4d1}.page-hero{background:linear-gradient(135deg,#eeeae1,#f7f5ef)}
/* Premium motion system: purposeful, calm, and disabled for reduced-motion users. */
.hero:before{content:"";position:absolute;inset:-30%;z-index:-1;background:radial-gradient(ellipse at 70% 40%,rgba(205,174,111,.16),transparent 28%),radial-gradient(ellipse at 34% 65%,rgba(93,76,39,.09),transparent 30%);animation:ambientShift 14s ease-in-out infinite alternate;pointer-events:none}.hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>.hero-lead,.hero-copy>.hero-proof,.hero-copy>.hero-chips,.hero-copy>.hero-actions{animation:heroReveal .76s cubic-bezier(.22,.8,.25,1) both}.hero-copy>h1{animation-delay:.07s}.hero-copy>.hero-lead{animation-delay:.14s}.hero-copy>.hero-proof{animation-delay:.2s}.hero-copy>.hero-chips{animation-delay:.26s}.hero-copy>.hero-actions{animation-delay:.33s}.hero-panel{animation:heroReveal .9s cubic-bezier(.22,.8,.25,1) .15s both}.control-card{transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease}.control-card:hover{transform:translateY(-7px) rotateX(1deg);box-shadow:0 37px 75px rgba(19,18,17,.31)}.control-card:after{content:"";position:absolute;z-index:0;left:0;right:0;height:1px;top:-5%;background:linear-gradient(90deg,transparent,rgba(229,207,162,.62),transparent);box-shadow:0 0 18px rgba(220,190,134,.35);animation:scanLine 5.5s cubic-bezier(.3,.7,.3,1) infinite;pointer-events:none}.panel-toolbar,.panel-slides,.panel-dots,.panel-progress{z-index:1}.hero-chip{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.hero-chip:hover{transform:translateY(-3px);border-color:#c5a56a;box-shadow:0 8px 18px rgba(67,52,27,.1)}.button{transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.button-primary:hover{transform:translateY(-3px);box-shadow:0 17px 30px rgba(18,18,20,.27)}.button-secondary:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(71,57,32,.12)}.section{position:relative}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.22,.8,.25,1),transform .7s cubic-bezier(.22,.8,.25,1)}.reveal.is-visible{opacity:1;transform:none}.solution,.case-card,.article-card,.trust-card,.boundary-box article,.faq-grid details{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}.solution:hover,.case-card:hover,.article-card:hover,.trust-card:hover,.boundary-box article:hover{transform:translateY(-7px);border-color:#c3a166;box-shadow:0 21px 38px rgba(54,43,23,.12)}.cta{position:relative;overflow:hidden}.cta:after{content:none;display:none}.cta .container{position:relative;z-index:1}@keyframes heroReveal{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes ambientShift{from{transform:translate3d(-2%,2%,0) scale(1)}to{transform:translate3d(3%,-2%,0) scale(1.08)}}@keyframes scanLine{0%,16%{top:-5%;opacity:0}24%{opacity:1}58%{top:108%;opacity:.8}64%,100%{top:108%;opacity:0}}@keyframes accentPulse{0%,100%{transform:scaleX(1);opacity:.65}50%{transform:scaleX(1.7);opacity:1}}@keyframes orbDrift{from{transform:translate(0,0) rotate(0)}to{transform:translate(-28px,35px) rotate(12deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Editorial project-studio layer. */
.hero{padding-bottom:0}.hero-grid{position:relative;z-index:2;padding-bottom:28px}.hero-monogram{position:absolute;z-index:0;right:calc(50% - 560px);top:-88px;font-family:Georgia,"Times New Roman",serif;font-size:min(59vw,790px);line-height:.8;font-weight:700;color:rgba(103,80,41,.055);user-select:none;pointer-events:none;animation:monoBreathe 11s ease-in-out infinite alternate}.hero-rail{position:absolute;z-index:3;left:max(16px,calc(50% - 650px));top:50%;display:grid;justify-items:center;gap:10px;color:#8c7448;font:700 10px "DM Mono",monospace;letter-spacing:.14em;writing-mode:vertical-rl;transform:translateY(-50%)}.hero-rail i{width:1px;height:54px;background:#b89b68}.hero-rail small{font-size:9px;color:#93877a}.hero-system{position:relative;z-index:3;border-top:1px solid rgba(118,95,54,.17);background:rgba(251,250,247,.50);backdrop-filter:blur(10px)}.hero-system>.container{min-height:76px;display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:24px}.hero-system span{display:flex;align-items:baseline;gap:9px;color:#55534e;font-size:13px;font-weight:800}.hero-system b{font:600 10px "DM Mono",monospace;color:#a88952}.hero-system small{font:500 9px "DM Mono",monospace;letter-spacing:.1em;color:#968c80}.hero-system em{font:600 9px "DM Mono",monospace;font-style:normal;letter-spacing:.12em;color:#827665;white-space:nowrap}.hero-system span{animation:systemRise .7s cubic-bezier(.22,.8,.25,1) both}.hero-system span:nth-child(2){animation-delay:.1s}.hero-system span:nth-child(3){animation-delay:.2s}@keyframes monoBreathe{from{transform:translate3d(0,0,0) scale(1);opacity:.7}to{transform:translate3d(-16px,13px,0) scale(1.035);opacity:1}}@keyframes systemRise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:1250px){.hero-rail{display:none}}@media(max-width:760px){.hero-grid{padding-bottom:24px}.hero-monogram{right:-70px;top:40px;font-size:430px}.hero-system>.container{grid-template-columns:1fr;gap:0;padding:14px 0}.hero-system span{padding:7px 0;border-bottom:1px solid rgba(118,95,54,.12)}.hero-system span:last-of-type{border-bottom:0}.hero-system em{display:none}}@media(prefers-reduced-motion:reduce){.hero-monogram,.hero-system span{animation:none}}
/* The hero rail was removed to keep the first screen quieter. */
.hero-rail{display:none!important}
.hero-system{display:none!important}


.legal-note{margin-top:22px;padding:18px 20px;border:1px solid rgba(17,19,25,.12);border-radius:14px;background:#f7f5f0}
.legal-note h3{margin:0 0 10px;font-size:15px;letter-spacing:.02em}
.legal-note p{margin:0;font-size:13px;line-height:1.7;color:#4a5568}
.legal-note p+p{margin-top:10px}





@media(max-width:780px){
  }

.site-footer{padding:44px 0 28px;background:#111216;color:#b3aca0}
.footer-top{display:grid;grid-template-columns:minmax(220px,1.15fr) minmax(0,2fr);gap:36px 48px;align-items:start}
.footer-brand .brand{color:#fff;margin-bottom:12px}
.footer-brand .brand-text small{color:#958a7b}
.footer-brand p{margin:0;max-width:340px;font-size:13px;line-height:1.7;color:#9a9286}
.footer-contact{display:inline-block;margin-top:14px;font-size:13px;font-weight:600;color:#e2d3b5;text-decoration:none}
.footer-contact:hover{color:#fff}
.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px}
.footer-col{display:grid;gap:9px;align-content:start}
.footer-col strong{font-size:12px;letter-spacing:.06em;color:#e8e0d4;font-weight:700}
.footer-col a{color:#9a9286;text-decoration:none;font-size:13px;line-height:1.4}
.footer-col a:hover{color:#e8e0d4}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:32px;padding-top:16px;display:grid;gap:8px}
.footer-bottom--solo{border-top:0;margin-top:0}
.footer-copy{margin:0;font:11px/1.5 "DM Mono",monospace;color:#6f8798}
.footer-copy a{color:#9ecfc5;text-decoration:none}
.footer-legal{margin:0 auto;max-width:min(1120px,100%);width:100%;font-size:11px;line-height:1.7;color:#5e7385;text-align:center}
.footer-legal-label{display:block;margin:0;font-weight:700;letter-spacing:.04em;color:#7e93a6}
@media(max-width:960px){
  .footer-top{grid-template-columns:1fr;gap:28px}
}
@media(max-width:780px){
  .footer-links{grid-template-columns:1fr 1fr}
}

/* Compact site footer */
.site-footer{padding:30px 0 22px;background:#111216;color:#b3aca0}
.footer-shell{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:22px 48px;align-items:center}
.footer-main{display:flex;align-items:center;gap:18px;min-width:0}
.footer-main .brand{margin:0;color:#fff;flex:0 0 auto}
.footer-main .brand-text small{color:#958a7b}
.footer-summary{margin:0;color:#9a9286;font-size:13px;line-height:1.5}
.footer-nav{display:flex;align-items:center;gap:22px;font-size:13px}
.footer-nav a{color:#aaa194;text-decoration:none;white-space:nowrap;transition:color .2s ease}
.footer-nav a:hover{color:#fff}
.footer-nav .footer-contact{margin:0;border:1px solid rgba(226,211,181,.42);border-radius:999px;padding:8px 13px;color:#eadabb;font-weight:700}
.footer-nav .footer-contact:hover{border-color:#eadabb;color:#fff}
.footer-meta{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:16px;padding-top:15px;border-top:1px solid rgba(255,255,255,.08);color:#657584;font:11px/1.5 "DM Mono",monospace;text-align:center}
@media(max-width:780px){
  .footer-shell{display:block}
  .footer-main{display:block}
  .footer-main .brand{display:inline-flex;margin-bottom:12px}
  .footer-nav{margin-top:20px;flex-wrap:wrap;gap:14px 20px}
  .footer-meta{margin-top:20px;display:grid;gap:5px;justify-items:center;text-align:center}
}
.footer-disclaimer{grid-column:1/-1;margin:0;color:#5e7385;font:11px/1.65 "DM Mono",monospace}
@media(max-width:780px){.footer-disclaimer{margin-top:4px}}
.footer-meta .footer-legal{flex:1 1 auto;width:100%;max-width:min(1120px,100%);margin:0 auto;color:#5e7385;font:11px/1.7 "DM Mono",monospace;text-align:center}


/* Article list: sector filters + pager */
.article-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 22px;
}
.article-filter{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #ddd6c8;
  background:#fbfaf7;
  color:#5c564c;
  border-radius:999px;
  padding:8px 14px;
  font:700 12px/1.2 Manrope,"Noto Sans SC",system-ui,sans-serif;
  letter-spacing:.01em;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.article-filter:hover{
  border-color:#c5a56a;
  color:#73592e;
  transform:translateY(-1px);
}
.article-filter.is-active,
.article-filter[aria-pressed=true]{
  background:#17191f;
  border-color:#17191f;
  color:#efe4d1;
  box-shadow:0 8px 18px rgba(19,18,17,.18);
}
.article-filter:focus-visible{
  outline:3px solid #b9985f;
  outline-offset:2px;
}
.article-empty{
  margin:8px 0 0;
  padding:28px 18px;
  text-align:center;
  color:var(--muted);
  font-size:14px;
  border:1px dashed #ddd6c8;
  border-radius:14px;
  background:#f7f5f0;
}

/* Filter/pager hides cards via [hidden]; must beat .post-card{display:flex} */
.post-card[hidden],
.article-empty[hidden],
.article-pager[hidden]{
  display:none!important;
}

.article-pager{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:28px;
  padding-top:4px;
  color:#5c564c;
  font-size:13px;
  font-weight:700;
}
.article-pager-btn,
.article-pager-num{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #ddd6c8;
  background:#fbfaf7;
  color:#3f4147;
  border-radius:8px;
  min-width:36px;
  height:36px;
  padding:0 12px;
  font:700 13px/1 Manrope,"Noto Sans SC",system-ui,sans-serif;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.article-pager-btn:hover:not(:disabled),
.article-pager-num:hover:not(.is-active){
  border-color:#c5a56a;
  color:#73592e;
}
.article-pager-num.is-active,
.article-pager-num[aria-current=page]{
  background:#17191f;
  border-color:#17191f;
  color:#efe4d1;
  box-shadow:0 6px 14px rgba(19,18,17,.16);
  cursor:default;
}
.article-pager-btn:disabled,
.article-pager-btn[aria-disabled=true]{
  opacity:.38;
  cursor:not-allowed;
  box-shadow:none;
}
.article-pager-btn:focus-visible,
.article-pager-num:focus-visible{
  outline:3px solid #b9985f;
  outline-offset:2px;
}
.article-pager-count{
  margin-left:6px;
  color:#74736e;
  font-weight:700;
  white-space:nowrap;
}
@media (max-width:720px){
  .article-filters{gap:7px;margin-bottom:18px}
  .article-filter{padding:7px 12px;font-size:11px}
  .article-pager{gap:6px;margin-top:22px}
  .article-pager-btn,.article-pager-num{min-width:34px;height:34px;padding:0 10px;font-size:12px}
  .article-pager-count{width:100%;margin:6px 0 0;font-size:12px}
}

.post-card.is-filtered-out{display:none!important}

/* whole-card clickable + bottom-pinned keyword chips */
.post-card,.article-card{position:relative;cursor:pointer}
.post-grid{align-items:stretch}
.post-card>a.post-card-hit,.article-card>a.article-card-hit{
  display:flex;flex:1 1 auto;flex-direction:column;align-items:stretch;
  flex-grow:1;width:100%;min-height:100%;height:100%;box-sizing:border-box;
  margin:0!important;padding:0!important;color:inherit;text-decoration:none;font-weight:inherit
}
.post-card>a.post-card-hit:hover,.article-card>a.article-card-hit:hover{color:inherit}
.post-card>a.post-card-hit h2,.article-card>a.article-card-hit h3{color:inherit}
.post-card>a.post-card-hit p,.article-card>a.article-card-hit p{
  color:var(--muted);
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;
  min-height:3.9em
}
.post-card>a.post-card-hit h2{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
  min-height:2.8em
}
.post-card-tags{
  display:flex;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start;
  align-self:stretch;width:100%;box-sizing:border-box;gap:6px;
  margin-top:auto!important;margin-left:0;margin-right:0;margin-bottom:0;
  padding:14px 0 0;list-style:none;text-align:left;
  min-height:58px
}
.post-card-tags li{
  margin:0;padding:4px 9px;border-radius:999px;background:#eee9de;border:1px solid #e0d8c8;
  color:#7a5d2f;font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.01em;text-align:left
}


/* Hero: prevent headline/panel collision (ZH + EN) */
.hero-grid > *{min-width:0}
.hero-copy{max-width:100%;box-sizing:border-box;padding-right:4px}
.hero-panel{position:relative;z-index:2}
.hero-copy .h1-line{white-space:normal}
.hero h1{font-size:clamp(28px,3.35vw,42px);max-width:100%;line-height:1.2}
.hero h1 em{margin-top:4px}
@media (min-width:981px){
  .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(260px,.9fr);gap:28px;align-items:center}
}
@media (max-width:980px){
  .hero-copy .h1-line{white-space:normal}
}
