@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
  --lw-blue:#00B4E6;
  --lw-blue-hover:#009AC7;
  --lw-dark:#0F1826;
  --lw-text:#1D2733;
  --lw-muted:#66717D;
  --lw-bg:#FFFFFF;
  --lw-bg-soft:#F5F7F8;
  --lw-border:#E4E8EB;
  --lw-white:#FFFFFF;
  --font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:24px;
  --radius-xl:32px;
  --container:1440px;
  --ease:cubic-bezier(.2,.8,.2,1);
  --duration-fast:200ms;
  --duration-normal:350ms;
  --duration-slow:650ms;
  --shadow-sm:0 4px 16px rgba(15,24,38,.05);
  --shadow-md:0 12px 40px rgba(15,24,38,.08);
  /* compatibility aliases */
  --brand:var(--lw-blue);
  --brand2:var(--lw-blue);
  --ink:var(--lw-dark);
  --paper:var(--lw-bg-soft);
  --white:var(--lw-white);
  --muted:var(--lw-muted);
  --line:var(--lw-border);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--lw-bg)}
body{margin:0;font-family:var(--font-primary);font-size:16px;line-height:1.65;color:var(--lw-text);background:var(--lw-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
button,a,input,select,textarea{outline-offset:4px}
:focus-visible{outline:3px solid rgba(0,180,230,.32);outline-offset:4px}
::selection{background:rgba(0,180,230,.18);color:var(--lw-dark)}

.wrap,.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.skip-link{position:fixed;left:18px;top:14px;z-index:9999;transform:translateY(-180%);padding:12px 16px;border-radius:var(--radius-sm);background:var(--lw-dark);color:#fff;font-weight:600;transition:transform var(--duration-fast) var(--ease)}
.skip-link:focus{transform:translateY(0)}

/* Typography */
h1,h2,h3,h4,p{overflow-wrap:break-word}
h1,h2,h3,h4{color:var(--lw-dark);font-family:var(--font-primary)}
.hero h1{font-size:clamp(3.5rem,6vw,6.5rem);font-weight:600;line-height:.95;letter-spacing:-.045em;margin:0 0 26px;color:#fff}
.hero-claim{margin:-4px 0 22px;font-size:clamp(1rem,1.6vw,1.3rem);font-weight:600;letter-spacing:.01em;color:var(--lw-blue)}
.hero.small h1{font-size:clamp(3.25rem,5.4vw,5.7rem)}
.head h2,.section-title{font-size:clamp(2.4rem,4vw,4.5rem);font-weight:600;line-height:1.02;letter-spacing:-.035em;margin:12px 0 0}
.copy-panel h3,.service-copy h3,.info-block h3,.audience-copy h3,.dual-card h3,.contact-path h3,.sidebox h3{font-size:clamp(1.5rem,2.6vw,2.7rem);font-weight:600;line-height:1.08;letter-spacing:-.025em}
.kicker,.eyebrow,.service-index,.journey-meta{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--lw-blue)}

/* Navigation */
.nav{position:fixed;inset:0 0 auto;z-index:500;padding:0;transition:background var(--duration-normal) var(--ease)}
.nav .nav-inner{width:100%;max-width:none;margin:0;min-height:72px;display:flex;align-items:center;gap:28px;padding:0 clamp(32px,4vw,72px);border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:min-height var(--duration-normal) var(--ease),background var(--duration-normal) var(--ease),box-shadow var(--duration-normal) var(--ease),backdrop-filter var(--duration-normal) var(--ease)}
.nav.hero-nav:not(.scrolled) .nav-inner{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.nav.scrolled{padding:0}
.nav.scrolled .nav-inner{min-height:64px;background:rgba(255,255,255,.18);box-shadow:none;backdrop-filter:blur(22px) saturate(155%);-webkit-backdrop-filter:blur(22px) saturate(155%)}
.nav.scrolled.surface-dark .nav-inner{background:rgba(15,24,38,.22)}
.logo{display:inline-flex;align-items:center;position:relative;z-index:502;flex:0 0 auto}
.logo-img{width:auto;height:54px;max-width:112px;object-fit:contain}
.logo-switch{width:112px;height:56px;min-height:56px;overflow:hidden;position:relative}
.logo-switch .logo-img{position:absolute;left:0;top:50%;transform:translateY(-50%);transition:opacity var(--duration-normal) var(--ease)}
.logo-switch .logo-light{opacity:0}.logo-switch .logo-dark{opacity:1}
.nav.surface-dark .logo-light{opacity:1}.nav.surface-dark .logo-dark{opacity:0}
.links{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:.875rem;font-weight:600;color:var(--lw-dark)}
.links>a:not(.btn){position:relative;min-height:48px;display:inline-flex;align-items:center;white-space:nowrap;transition:color var(--duration-fast) var(--ease)}
.links>a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:2px;background:var(--lw-blue);transition:right var(--duration-normal) var(--ease)}
.links>a:not(.btn):hover::after,.links>a.active:not(.btn)::after{right:0}
.nav.surface-dark .links>a:not(.btn){color:#fff}
.nav.surface-dark .links>a:not(.btn)::after{background:#fff}
.menu{display:none;position:relative;z-index:503;margin-left:auto;width:48px;height:48px;border:0;background:transparent;cursor:pointer}
.menu::before,.menu::after{content:"";position:absolute;left:12px;width:24px;height:2px;background:var(--lw-dark);transition:transform var(--duration-fast) var(--ease),top var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}
.menu::before{top:18px}.menu::after{top:28px}
.menu.open::before{top:23px;transform:rotate(45deg)}.menu.open::after{top:23px;transform:rotate(-45deg)}
.nav.surface-dark .menu::before,.nav.surface-dark .menu::after{background:#fff}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border:1px solid var(--lw-dark);border-radius:var(--radius-sm);background:var(--lw-dark);color:#fff;font-weight:600;font-size:.9rem;line-height:1.1;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn.brand{background:var(--lw-blue);border-color:var(--lw-blue);color:#fff}
.btn.brand:hover{background:var(--lw-blue-hover);border-color:var(--lw-blue-hover)}
.btn.light{background:#fff;border-color:#fff;color:var(--lw-dark)}
.btn.light:hover{background:var(--lw-blue);border-color:var(--lw-blue);color:#fff}
.btn.outline{background:transparent;border-color:rgba(255,255,255,.48);color:#fff}
.btn.outline:hover{background:#fff;border-color:#fff;color:var(--lw-dark)}
.section .btn:not(.brand):not(.light):not(.outline){background:var(--lw-dark);border-color:var(--lw-dark)}
.section .btn:not(.brand):not(.light):not(.outline):hover{background:var(--lw-blue);border-color:var(--lw-blue)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}

/* Hero */
.hero{position:relative;min-height:760px;height:min(900px,88svh);display:flex;align-items:flex-end;overflow:hidden;background:var(--lw-dark);color:#fff}
.hero.small{min-height:620px;height:min(740px,74svh)}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.001)}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,24,38,.88) 0%,rgba(15,24,38,.64) 38%,rgba(15,24,38,.18) 70%,rgba(15,24,38,.06) 100%),linear-gradient(0deg,rgba(15,24,38,.32),transparent 48%)}
.hero .wrap{position:relative;z-index:2}
.hero-content{max-width:760px;padding:180px 0 92px}
.hero.small .hero-content{padding-bottom:74px}
.hero p{max-width:650px;margin:0;color:rgba(255,255,255,.82);font-size:1.25rem;font-weight:400;line-height:1.6}
.hero .eyebrow{margin-bottom:22px;color:#fff;opacity:.9}
.brand-ring{position:absolute;z-index:2;right:clamp(-70px,2vw,40px);bottom:clamp(-90px,-3vw,-30px);width:clamp(220px,27vw,430px);aspect-ratio:1;border:4px solid rgba(0,180,230,.78);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(18deg);pointer-events:none}

/* Brand statement */
.brand-statement{position:relative;background:var(--lw-dark);color:#fff;padding:clamp(88px,9vw,132px) 0;overflow:hidden}
.brand-statement::after{content:"";position:absolute;right:-110px;top:50%;width:320px;aspect-ratio:1;border:2px solid rgba(0,180,230,.22);border-left-color:transparent;border-radius:50%;transform:translateY(-50%) rotate(18deg)}
.brand-statement .brand-line{position:relative;z-index:1;margin:0;display:flex;flex-wrap:nowrap;align-items:center;gap:.2em;font-size:clamp(1.9rem,4.2vw,4rem);font-weight:500;line-height:1.08;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.brand-statement .brand-line .accent{color:var(--lw-blue)}

/* Sections & layout */
.section{padding-block:clamp(96px,10vw,160px)}
.section.compact{padding-block:clamp(80px,8vw,124px)}
.section.alt{background:var(--lw-bg-soft)}
.head{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:end;margin-bottom:clamp(48px,5vw,72px)}
.head>div{grid-column:span 6}.head>p{grid-column:8/-1;margin:0;color:var(--lw-muted);font-size:1.1rem;line-height:1.7;max-width:660px}
.intro-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:start}
.intro-grid>div:first-child{grid-column:1/span 6}.intro-copy{grid-column:8/-1}
.intro-copy p{margin:0 0 20px;color:var(--lw-muted);font-size:1.08rem;line-height:1.75}
.intro-copy p:last-child{margin-bottom:0}

/* Benefits */
.benefits{background:#fff;border-bottom:1px solid var(--lw-border)}
.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.benefit{min-height:78px;padding:18px 22px;display:flex;align-items:center;gap:12px;border-right:1px solid var(--lw-border);font-size:.9rem;font-weight:600;color:var(--lw-text)}
.benefit:last-child{border-right:0}.benefit i{font-style:normal;color:var(--lw-blue);font-size:1.15rem}

/* Audience / summary cards */
.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.audience-card{display:grid;grid-template-rows:minmax(340px,1fr) auto;background:#fff;border:1px solid var(--lw-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--duration-normal) var(--ease),box-shadow var(--duration-normal) var(--ease)}
.audience-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.audience-media{overflow:hidden}.audience-media img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease)}
.audience-card:hover .audience-media img{transform:scale(1.02)}
.audience-copy{padding:36px}.audience-copy>span{display:block;margin-bottom:14px;color:var(--lw-blue);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.audience-copy h3{margin:0 0 14px}.audience-copy p{margin:0 0 28px;color:var(--lw-muted)}.audience-copy b{font-size:.9rem;font-weight:600}
.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.summary-card{min-height:300px;padding:32px;background:#fff;border:1px solid var(--lw-border);border-radius:var(--radius-md);display:flex;flex-direction:column;transition:transform var(--duration-normal) var(--ease),box-shadow var(--duration-normal) var(--ease)}
.summary-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.summary-card>span{color:var(--lw-blue);font-size:.8rem;font-weight:700;letter-spacing:.14em}.summary-card h3{font-size:clamp(1.45rem,2vw,2rem);font-weight:600;letter-spacing:-.02em;margin:28px 0 14px}.summary-card p{color:var(--lw-muted);margin:0 0 28px}.summary-card b{margin-top:auto;font-size:.9rem}

/* Editorial media splits */
.media-split{display:grid;grid-template-columns:5fr 7fr;gap:clamp(36px,6vw,88px);align-items:center}
.media-split.reverse{grid-template-columns:7fr 5fr}.media-split.reverse .photo{order:2}.media-split.reverse .copy-panel{order:1}
.photo{min-height:520px;border-radius:var(--radius-xl);overflow:hidden;background:var(--lw-bg-soft)}
.photo img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease)}
.media-split:hover .photo img{transform:scale(1.02)}
.copy-panel{padding:20px 0}.copy-panel h3{margin:12px 0 20px}.copy-panel p{margin:0 0 28px;color:var(--lw-muted);font-size:1.05rem;line-height:1.75}.copy-panel .btn{align-self:flex-start}
.clean-list{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:0}.clean-list li{position:relative;padding:14px 0 14px 26px;border-bottom:1px solid var(--lw-border);color:var(--lw-muted)}.clean-list li::before{content:"↗";position:absolute;left:0;color:var(--lw-blue);font-weight:600}

/* Services */
.service-stack{display:grid;gap:clamp(96px,10vw,156px)}
.service-row{display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,6vw,90px);align-items:center;background:transparent}
.service-row:nth-child(even){grid-template-columns:5fr 7fr}.service-row:nth-child(even) .service-media{order:2}.service-row:nth-child(even) .service-copy{order:1}
.service-media{min-height:560px;border-radius:var(--radius-xl);overflow:hidden;background:var(--lw-dark)}
.service-media img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease)}
.service-row:hover .service-media img{transform:scale(1.02)}
.service-copy{padding:10px 0}.service-index{display:flex;align-items:center;gap:14px;margin-bottom:24px}.service-index::after{content:"";width:52px;height:1px;background:var(--lw-blue)}
.service-copy h3{font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.02;letter-spacing:-.035em;margin:0 0 24px}.service-copy p{max-width:610px;margin:0 0 18px;color:var(--lw-muted);font-size:1.05rem;line-height:1.75}.service-copy .btn{margin-top:14px}
.service-note{display:none}

/* Minimal journey */
.journey{position:relative;display:flex;gap:clamp(18px,2vw,32px);align-items:flex-start;padding:8px 0 0;margin-top:4px;overflow:visible}
.journey.reveal{opacity:1;transform:none}
.journey::before{content:"";position:absolute;left:24px;right:24px;top:28px;height:1px;background:var(--lw-border)}
.journey::after{content:"";position:absolute;left:24px;right:24px;top:27px;height:2px;background:var(--lw-blue);transform:scaleX(0);transform-origin:left;transition:transform 900ms var(--ease)}
.journey.in::after{transform:scaleX(1)}
.journey-step{position:relative;z-index:1;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:left}
.journey-step.reveal{opacity:0;transform:translateY(18px);transition:opacity 550ms var(--ease),transform 550ms var(--ease)}
.journey-step.in{opacity:1;transform:none}
.journey-node{order:1;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--lw-border);color:var(--lw-blue);box-shadow:0 0 0 8px rgba(255,255,255,.9);margin-bottom:26px}
.section.alt .journey-node{box-shadow:0 0 0 8px rgba(245,247,248,.95)}
.journey-node span{font-size:.82rem;font-weight:700;letter-spacing:.08em}
.journey-card{order:2;width:100%;padding:0 6px;background:transparent;border:0;box-shadow:none;min-height:0}
.journey-meta{display:block;margin-bottom:10px}.journey-card h3{font-size:clamp(1.35rem,1.9vw,1.8rem);font-weight:600;line-height:1.12;letter-spacing:-.02em;margin:0 0 10px}.journey-card p{margin:0;color:var(--lw-muted);font-size:.95rem;line-height:1.62}

/* Generic process */
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--lw-border);border-bottom:1px solid var(--lw-border)}
.process-grid.five{grid-template-columns:repeat(5,1fr)}
.process-step{min-height:250px;padding:32px 28px;background:transparent;border-right:1px solid var(--lw-border)}
.process-step:last-child{border-right:0}.process-step b{display:block;margin-bottom:38px;color:var(--lw-blue);font-size:.75rem;letter-spacing:.16em}.process-step h3{font-size:clamp(1.4rem,2vw,1.9rem);font-weight:600;letter-spacing:-.02em;margin:0 0 12px}.process-step p{margin:0;color:var(--lw-muted);font-size:.95rem;line-height:1.65}

/* Info, values, dual CTA */
.info-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.info-block{padding:40px;background:#fff;border:1px solid var(--lw-border);border-radius:var(--radius-md)}.info-block h3{margin:12px 0 18px}.info-block p{margin:0 0 24px;color:var(--lw-muted);line-height:1.75}
.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-list span{padding:10px 13px;border:1px solid var(--lw-border);border-radius:var(--radius-sm);background:var(--lw-bg-soft);font-size:.85rem;font-weight:600}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.value-card{padding:32px;border:1px solid var(--lw-border);border-radius:var(--radius-md);background:#fff}.value-card>span{color:var(--lw-blue);font-weight:700;font-size:.8rem;letter-spacing:.12em}.value-card h3{font-size:1.7rem;margin:24px 0 12px}.value-card p{color:var(--lw-muted);margin:0}
.dual-cta{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dual-card{min-height:300px;padding:42px;border:1px solid transparent;border-radius:var(--radius-lg);display:flex;flex-direction:column;background:var(--lw-dark);color:#fff;transition:transform var(--duration-normal) var(--ease),background var(--duration-normal) var(--ease),color var(--duration-normal) var(--ease),border-color var(--duration-normal) var(--ease),box-shadow var(--duration-normal) var(--ease)}.dual-card:nth-child(2){background:#fff;color:var(--lw-dark);border:1px solid var(--lw-border)}.dual-card:hover{transform:translateY(-4px);background:var(--lw-blue);color:#fff;border-color:var(--lw-blue);box-shadow:var(--shadow-md)}.dual-card>span{color:var(--lw-blue);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:color var(--duration-normal) var(--ease)}.dual-card:hover>span{color:rgba(255,255,255,.78)}.dual-card h3{color:inherit;margin:18px 0 34px}.dual-card b{margin-top:auto;font-size:.9rem;transition:transform var(--duration-fast) var(--ease),color var(--duration-normal) var(--ease)}.dual-card:hover b{transform:translateX(4px);color:#fff}

/* FAQ */
.faq-list{border-top:1px solid var(--lw-border)}
.faq-list details{border-bottom:1px solid var(--lw-border);background:transparent}
.faq-list summary{position:relative;list-style:none;cursor:pointer;padding:26px 60px 26px 0;font-size:1.15rem;font-weight:600;color:var(--lw-dark)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%) rotate(0);font-size:1.7rem;font-weight:400;color:var(--lw-blue);transition:transform 350ms var(--ease)}
.faq-list details.faq-open summary::after,.faq-list details.faq-opening summary::after{transform:translateY(-50%) rotate(45deg)}
.faq-list details>p{max-height:0;overflow:hidden;opacity:0;transform:translateY(-8px);margin:0;padding:0 64px 0 0;color:var(--lw-muted);line-height:1.75;transition:max-height 380ms var(--ease),opacity 280ms var(--ease),transform 380ms var(--ease),padding-bottom 380ms var(--ease)}
.faq-list details.faq-open>p,.faq-list details.faq-opening>p{opacity:1;transform:none;padding-bottom:28px}

/* Forms */
.form-layout{display:grid;grid-template-columns:7fr 5fr;gap:24px;align-items:stretch}.formbox,.sidebox{padding:40px;border-radius:var(--radius-lg)}.formbox{background:#fff;border:1px solid var(--lw-border)}.sidebox{background:var(--lw-dark);color:#fff}.sidebox h3{color:#fff;margin:0 0 16px}.sidebox p{margin:0;color:rgba(255,255,255,.68);line-height:1.72}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field.full{grid-column:1/-1}.field label{display:block;margin-bottom:8px;font-size:.82rem;font-weight:600;color:var(--lw-text)}.field input,.field select,.field textarea{width:100%;min-height:54px;padding:0 16px;border:1px solid var(--lw-border);border-radius:var(--radius-sm);background:#fff;color:var(--lw-text);outline:0;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.field textarea{min-height:150px;padding-top:14px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--lw-blue);box-shadow:0 0 0 3px rgba(0,180,230,.12)}
.upload{padding:24px;border:1px dashed #BCC7CE;border-radius:var(--radius-md);background:var(--lw-bg-soft);text-align:center;color:var(--lw-muted);transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.upload:hover{border-color:var(--lw-blue);background:#f3fbfd}.upload input{min-height:44px;margin-top:10px;padding:8px;background:transparent;border:0;box-shadow:none}
.check{display:flex;gap:10px;align-items:flex-start;margin:20px 0;color:var(--lw-muted);font-size:.82rem;line-height:1.55}.check input{margin-top:4px;accent-color:var(--lw-blue)}
.contact-list{margin-top:28px;display:grid}.contact-item{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-item:first-child{padding-top:0}.contact-item small{display:block;margin-bottom:4px;color:var(--lw-blue);font-size:.75rem;font-weight:600}.form-status{margin-top:18px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--lw-bg-soft);color:var(--lw-muted);font-size:.9rem}

/* Contact */
.contact-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.contact-path{min-height:280px;padding:34px;border:1px solid var(--lw-border);border-radius:var(--radius-md);background:#fff;display:flex;flex-direction:column;transition:transform var(--duration-normal) var(--ease),box-shadow var(--duration-normal) var(--ease)}.contact-path:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.contact-path>span{color:var(--lw-blue);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.contact-path h3{margin:22px 0 12px}.contact-path p{margin:0 0 24px;color:var(--lw-muted)}.contact-path b{margin-top:auto;font-size:.9rem}
.contact-wide{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.contact-hub{display:grid;grid-template-columns:5fr 3fr 4fr;gap:24px;align-items:stretch}.map-panel{position:relative;min-height:560px;border-radius:var(--radius-lg);overflow:hidden;background:#dfe7eb}.map-panel iframe{width:100%;height:100%;min-height:560px;border:0;display:block;filter:saturate(.82) contrast(.98)}.map-link{position:absolute;left:20px;bottom:20px;padding:12px 16px;border-radius:var(--radius-sm);background:rgba(15,24,38,.92);color:#fff;font-size:.82rem;font-weight:600;backdrop-filter:blur(10px)}.contact-hub .sidebox,.contact-hub .formbox{height:100%}

/* CTA */
.cta{padding-block:clamp(72px,8vw,120px)}
.cta-inner{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:clamp(48px,6vw,80px);border-radius:var(--radius-xl);background:var(--lw-blue);color:#fff}
.cta-inner::after{content:"";position:absolute;right:-90px;top:-100px;width:290px;aspect-ratio:1;border:2px solid rgba(255,255,255,.28);border-left-color:transparent;border-radius:50%;transform:rotate(18deg)}
.cta h2{position:relative;z-index:1;max-width:840px;margin:0;color:#fff;font-size:clamp(2.5rem,4.5vw,4.8rem);font-weight:600;line-height:1;letter-spacing:-.04em}.cta .actions{position:relative;z-index:1;margin-top:0}

/* Footer */
.footer{padding:72px 0 30px;background:var(--lw-dark);color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr .75fr .75fr;gap:64px}.footer-logo .logo-img{width:150px}.footer p{margin:18px 0 0;color:rgba(255,255,255,.58);font-size:.9rem}.footer h4{margin:0 0 18px;color:var(--lw-blue);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.footer-links{display:grid;gap:12px;color:rgba(255,255,255,.72);font-size:.9rem}.footer-links a{transition:color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.footer-links a:hover{color:#fff;transform:translateX(3px)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:54px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.44);font-size:.78rem}

/* Legal */
.legal-section{min-height:70vh;padding-top:180px}.legal-title{font-size:clamp(3.5rem,6vw,6.5rem);font-weight:600;line-height:.95;letter-spacing:-.045em;margin:14px 0 36px}.legal-copy{max-width:760px;color:var(--lw-muted);line-height:1.75}

/* Reveal motion */
.reveal{opacity:0;transform:translateY(20px);transition:opacity 620ms var(--ease),transform 620ms var(--ease)}
.reveal.in{opacity:1;transform:none}

/* Tablet */
@media(max-width:1024px){
  .links{gap:20px;font-size:.82rem}
  .head>div{grid-column:span 7}.head>p{grid-column:8/-1}
  .service-row,.service-row:nth-child(even){grid-template-columns:1fr 1fr;gap:38px}
  .service-media{min-height:500px}
  .contact-hub{grid-template-columns:1fr 1fr}.map-panel{grid-column:1/-1;min-height:420px}.map-panel iframe{min-height:420px}
  .process-grid.five{grid-template-columns:repeat(5,1fr)}
}

/* Mobile / nav overlay */

@media(max-width:1200px){
  .brand-statement .brand-line{font-size:clamp(1.8rem,4.8vw,3.4rem);letter-spacing:.06em;gap:.16em;flex-wrap:wrap}
}
@media(max-width:900px){
  .wrap,.container,.contact-wide{width:min(calc(100% - 32px),var(--container))}
  .nav{padding:0}.nav.scrolled{padding:0}.nav .nav-inner{min-height:60px;padding:0 24px}
  .logo-img{height:50px;max-width:104px}.logo-switch{width:104px;height:52px;min-height:52px}
  .menu{display:block;overflow:hidden;touch-action:manipulation}
  .menu::before,.menu::after{transition:top 360ms var(--ease),transform 360ms var(--ease),background 240ms ease}
  .links{position:fixed;inset:0;z-index:501;margin:0;padding:clamp(104px,14vh,132px) 24px 30px;display:flex;flex-direction:column;align-items:stretch;gap:0;background:rgba(15,24,38,.97);color:#fff;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-100%);transition:transform 520ms cubic-bezier(.2,.8,.2,1),opacity 320ms ease,visibility 0s linear 520ms;will-change:transform,opacity;backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);overscroll-behavior:contain}
  .links.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition:transform 520ms cubic-bezier(.2,.8,.2,1),opacity 320ms ease,visibility 0s}
  .links>a{opacity:0;transform:translateY(18px);transition:opacity 300ms ease,transform 420ms var(--ease),color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}
  .links.open>a{opacity:1;transform:translateY(0)}
  .links.open>a:nth-child(1){transition-delay:110ms}.links.open>a:nth-child(2){transition-delay:145ms}.links.open>a:nth-child(3){transition-delay:180ms}.links.open>a:nth-child(4){transition-delay:215ms}.links.open>a:nth-child(5){transition-delay:250ms}.links.open>a:nth-child(6){transition-delay:285ms}.links.open>a:nth-child(7){transition-delay:320ms}
  .links>a:not(.btn){color:#fff!important;min-height:62px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:clamp(1.4rem,5.5vw,1.9rem);font-weight:500;letter-spacing:-.025em}
  .links>a:not(.btn)::after{display:none}.links>a.active:not(.btn){color:var(--lw-blue)!important}
  .links .btn{margin-top:auto;min-height:56px;width:100%;font-size:1rem;border-radius:var(--radius-sm)}
  body.menu-open .logo-light{opacity:1!important}body.menu-open .logo-dark{opacity:0!important}
  body.menu-open .menu::before,body.menu-open .menu::after{background:#fff!important}
  body.menu-open .nav-inner{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

  .hero{min-height:700px;height:82svh}.hero.small{min-height:590px;height:68svh}.hero-content{padding:150px 0 64px}.hero.small .hero-content{padding-bottom:58px}.hero h1,.hero.small h1{font-size:clamp(2.7rem,10.5vw,4.5rem)}.hero-claim{font-size:1rem;margin:0 0 18px}.hero p{font-size:1.08rem}.brand-ring{right:-90px;bottom:-70px;width:280px}
  .brand-statement .brand-line{letter-spacing:.08em}
  .head{grid-template-columns:1fr;gap:22px}.head>div,.head>p{grid-column:auto}.head>p{font-size:1rem}
  .intro-grid{grid-template-columns:1fr;gap:28px}.intro-grid>div:first-child,.intro-copy{grid-column:auto}
  .audience-grid,.summary-grid,.info-columns,.dual-cta,.contact-paths{grid-template-columns:1fr}
  .audience-card{grid-template-rows:300px auto}
  .media-split,.media-split.reverse{grid-template-columns:1fr;gap:32px}.media-split.reverse .photo,.media-split.reverse .copy-panel{order:initial}.photo{min-height:420px}.copy-panel{padding:0}
  .service-stack{gap:88px}.service-row,.service-row:nth-child(even){grid-template-columns:1fr;gap:32px}.service-row:nth-child(even) .service-media,.service-row:nth-child(even) .service-copy{order:initial}.service-media{min-height:440px}.service-copy h3{font-size:clamp(2.2rem,8vw,3.5rem)}
  .journey{display:flex;flex-direction:column;gap:32px;overflow:visible;padding:0;scroll-snap-type:none;scrollbar-width:none;position:relative}.journey::-webkit-scrollbar{display:none}
  .journey::before{display:block;content:"";position:absolute;left:28px;right:auto;top:28px;bottom:28px;width:1px;height:auto;background:var(--lw-border);z-index:0}
  .journey::after{display:block;content:"";position:absolute;left:27px;right:auto;top:28px;bottom:28px;width:2px;height:auto;background:var(--lw-blue);z-index:0;transform:scaleY(0);transform-origin:top;transition:transform 900ms var(--ease)}
  .journey.in::after{transform:scaleY(1)}
  .journey-step{position:relative;z-index:1;flex:0 0 auto;min-width:0;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:flex-start;column-gap:22px;text-align:left;scroll-snap-align:none}
  .journey-node{grid-column:1;grid-row:1;order:0;margin:0;box-shadow:0 0 0 6px rgba(255,255,255,.96);z-index:2}.section.alt .journey-node{box-shadow:0 0 0 6px rgba(245,247,248,.96)}
  .journey-card{grid-column:2;grid-row:1;order:0;padding:2px 0 0;width:100%;min-width:0}.journey-card h3{font-size:clamp(1.55rem,3.5vw,2rem)}.journey-card p{max-width:62ch}
  .process-grid,.process-grid.five{grid-template-columns:1fr 1fr}.process-step:nth-child(2n){border-right:0}
  .form-layout{grid-template-columns:1fr}.formbox,.sidebox{padding:32px}.contact-hub{grid-template-columns:1fr}.map-panel{grid-column:auto;min-height:390px}.map-panel iframe{min-height:390px}
  .cta-inner{align-items:flex-start;flex-direction:column}.cta .actions{margin-top:0}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
}

@media(max-width:768px){
  .section{padding-block:72px}.section.compact{padding-block:72px}
  .benefit-grid{grid-template-columns:1fr 1fr}.benefit:nth-child(2){border-right:0}.benefit:nth-child(-n+2){border-bottom:1px solid var(--lw-border)}
  .form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
  .service-media{min-height:360px}.photo{min-height:350px}
  .contact-hub .sidebox,.contact-hub .formbox{border-radius:var(--radius-md)}
}

@media(max-width:560px){
  .wrap,.container,.contact-wide{width:min(calc(100% - 32px),var(--container))}
  .nav .nav-inner{min-height:58px;padding:0 18px}.logo-img{height:46px;max-width:96px}.logo-switch{width:96px;height:48px;min-height:48px}
  .links{padding:104px 20px 24px}.links>a:not(.btn){min-height:58px;font-size:1.5rem}
  .hero{min-height:650px;height:78svh}.hero.small{min-height:560px;height:65svh}.hero-content{padding:126px 0 52px}.hero.small .hero-content{padding-bottom:46px}.hero h1,.hero.small h1{font-size:clamp(2.7rem,12vw,4rem)}.hero-claim{font-size:.98rem;margin:2px 0 16px}.hero p{font-size:1rem}.actions{flex-direction:column;align-items:stretch}.actions .btn{width:100%}
  .brand-statement .brand-line{font-size:clamp(2.1rem,10vw,3.2rem);letter-spacing:.06em;flex-direction:column;align-items:flex-start;gap:.1em}
  .benefit-grid{grid-template-columns:1fr}.benefit{border-right:0;border-bottom:1px solid var(--lw-border)}.benefit:last-child{border-bottom:0}
  .audience-card{grid-template-rows:240px auto}.audience-copy,.summary-card,.info-block,.dual-card,.contact-path{padding:26px}
  .service-stack{gap:72px}.service-media{min-height:300px;border-radius:var(--radius-lg)}.service-copy h3{font-size:2.35rem}
  .photo{min-height:310px;border-radius:var(--radius-lg)}
  .journey{gap:28px;padding:0}.journey::before{left:24px;top:24px;bottom:24px}.journey::after{left:23px;top:24px;bottom:24px}.journey.in::after{transform:scaleY(1)}
  .journey-step{grid-template-columns:48px minmax(0,1fr);column-gap:16px}.journey-step.reveal{transform:translateY(10px)}
  .journey-node{width:48px;height:48px;box-shadow:0 0 0 5px rgba(255,255,255,.96)}.section.alt .journey-node{box-shadow:0 0 0 5px rgba(245,247,248,.96)}
  .journey-card{padding:1px 0 0}.journey-meta{margin-bottom:7px}.journey-card h3{font-size:clamp(1.45rem,6.4vw,1.9rem);margin:0 0 8px}.journey-card p{font-size:.94rem;line-height:1.6;max-width:none}
  .process-grid,.process-grid.five{grid-template-columns:1fr}.process-step{min-height:0;border-right:0;border-bottom:1px solid var(--lw-border);padding:26px 0}.process-step:last-child{border-bottom:0}.process-step b{margin-bottom:18px}
  .formbox,.sidebox{padding:26px 20px}.map-panel{min-height:340px;border-radius:var(--radius-md)}.map-panel iframe{min-height:340px}.map-link{left:14px;right:14px;bottom:14px;text-align:center}
  .contact-path{min-height:0}
  .cta-inner{padding:38px 24px;border-radius:var(--radius-lg)}.cta h2{font-size:2.6rem}
  .footer{padding-top:56px}.footer-grid{grid-template-columns:1fr;gap:36px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:10px}
  .legal-section{padding-top:130px}
}

/* Final responsive polish */
[id]{scroll-margin-top:88px}
@media(max-width:900px){
  body.menu-open{overscroll-behavior:none}
  .nav .nav-inner{transition:min-height var(--duration-normal) var(--ease),background var(--duration-normal) var(--ease),backdrop-filter var(--duration-normal) var(--ease)}
  .journey-step:last-child{padding-bottom:0}
}
@media(max-width:560px){
  .links{padding-left:20px;padding-right:20px}
}

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


/* =========================================================
   HYBRID LAYOUT V14
   Neue Typografie / Motion + klarere Fenster-Geometrie
   aus der früheren letswerk-Version.
   ========================================================= */

/* Grundprinzip: zusammengehörige Fenster schließen bündig aneinander an. */
.audience-grid,
.summary-grid,
.info-columns,
.value-grid,
.dual-cta,
.contact-paths,
.form-layout,
.contact-hub{
  gap:1px;
  background:var(--lw-border);
  border:1px solid var(--lw-border);
}

/* Karten / Fenster: weniger rund, weniger "Floating Cards". */
.audience-card,
.summary-card,
.info-block,
.value-card,
.dual-card,
.contact-path,
.formbox,
.sidebox{
  border-radius:0;
  border:0;
  box-shadow:none;
}

/* Die Bildkarten auf der Startseite als gemeinsamer Block. */
.audience-grid{
  grid-template-columns:1fr 1fr;
}
.audience-card{
  background:#fff;
}
.audience-card:hover{
  transform:none;
  box-shadow:none;
}
.audience-card:hover .audience-media img{
  transform:scale(1.02);
}

/* Kleine Übersichtsfenster wie in der alten Version: 1px-Trennlinien statt Lücken. */
.summary-card,
.value-card,
.contact-path,
.info-block{
  background:#fff;
}
.summary-card:hover,
.value-card:hover,
.contact-path:hover,
.info-block:hover{
  transform:none;
  box-shadow:none;
  background:#F8FBFC;
}

/* Text/Bild-Splits wieder als ein zusammenhängendes Fenster. */
.media-split{
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:stretch;
  background:var(--lw-bg-soft);
  border:1px solid var(--lw-border);
}
.media-split.reverse{
  grid-template-columns:1fr 1fr;
}
.photo{
  min-height:500px;
  border-radius:0;
}
.copy-panel{
  padding:clamp(42px,5vw,72px);
  background:var(--lw-bg-soft);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

/* Leistungen: Bild und Text bündig, alternierend links/rechts. */
.service-stack{
  gap:48px;
}
.service-row,
.service-row:nth-child(even){
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:stretch;
  background:var(--lw-bg-soft);
  border:1px solid var(--lw-border);
}
.service-row:nth-child(even){
  grid-template-columns:.95fr 1.05fr;
}
.service-media{
  min-height:520px;
  border-radius:0;
}
.service-copy{
  padding:clamp(44px,5vw,76px);
  background:var(--lw-bg-soft);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.service-copy p{
  max-width:620px;
}

/* Zwei Wege / CTAs: direkt aneinander statt zwei freischwebender Fenster. */
.dual-cta{
  grid-template-columns:1fr 1fr;
}
.dual-card{
  min-height:290px;
}
.dual-card:hover{
  transform:none;
  background:var(--lw-blue);
  color:#fff;
  border-color:transparent;
  box-shadow:none;
}
.dual-card:nth-child(2){
  border:0;
}

/* Formulare wieder als zusammenhängender Block. */
.form-layout{
  grid-template-columns:7fr 5fr;
  align-items:stretch;
}
.formbox,
.sidebox{
  height:100%;
}

/* Kontaktbereich: Karte, Kontaktdaten und Formular als eine gemeinsame Fläche. */
.contact-hub{
  grid-template-columns:5fr 3fr 4fr;
  align-items:stretch;
}
.map-panel{
  border-radius:0;
}
.contact-hub .sidebox,
.contact-hub .formbox{
  border-radius:0;
}

/* Tags etwas technischer / klarer. */
.tag-list span{
  border-radius:2px;
}

/* Große CTA-Fenster ebenfalls klarer und weniger "App Card". */
.cta-inner{
  border-radius:0;
}

/* Mobile: dort wieder stapeln, aber weiterhin ohne künstliche Kartenabstände. */
@media(max-width:900px){
  .audience-grid,
  .summary-grid,
  .info-columns,
  .value-grid,
  .dual-cta,
  .contact-paths,
  .form-layout,
  .contact-hub{
    grid-template-columns:1fr;
  }

  .media-split,
  .media-split.reverse,
  .service-row,
  .service-row:nth-child(even){
    grid-template-columns:1fr;
    gap:0;
  }

  .media-split.reverse .photo,
  .media-split.reverse .copy-panel,
  .service-row:nth-child(even) .service-media,
  .service-row:nth-child(even) .service-copy{
    order:initial;
  }

  .photo,
  .service-media{
    min-height:360px;
  }

  .copy-panel,
  .service-copy{
    padding:38px 30px 42px;
  }

  .service-stack{
    gap:32px;
  }
}

@media(max-width:560px){
  .photo,
  .service-media{
    min-height:290px;
  }

  .copy-panel,
  .service-copy{
    padding:32px 22px 36px;
  }

  .dual-card,
  .summary-card,
  .info-block,
  .value-card,
  .contact-path{
    padding:28px 22px;
  }
}


/* Custom cursor: blue by default, white on blue surfaces */
@media (pointer:fine){
  :root{
    --cursor-blue:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M3 2 L3 24 L9.4 17.6 L17.2 17.6 Z' fill='%2300B4E6'/%3E%3C/svg%3E") 3 2, pointer;
    --cursor-white:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M3 2 L3 24 L9.4 17.6 L17.2 17.6 Z' fill='%23FFFFFF'/%3E%3C/svg%3E") 3 2, pointer;
  }

  body,
  a,
  button,
  [role="button"],
  input[type="submit"],
  input[type="button"],
  .btn,
  .dual-card,
  .summary-card,
  .value-card,
  .contact-path,
  .faq summary{
    cursor:var(--cursor-blue);
  }

  /* White cursor on blue elements/backgrounds for visibility */
  .btn.primary,
  .btn.primary:hover,
  .btn.brand,
  .btn.brand:hover,
  .dual-card:hover,
  .cta-inner,
  .cta-inner *,
  .hero .btn.primary,
  .summary-card.is-blue,
  .summary-card.is-blue *,
  .bg-blue,
  .bg-blue *{
    cursor:var(--cursor-white);
  }
}

.cta-inner .btn.outline{border-color:rgba(255,255,255,.55);color:#fff;background:transparent}
.cta-inner .btn.outline:hover{background:#fff;color:var(--lw-blue);border-color:#fff}
.cta-inner .btn.light{background:#fff;color:var(--lw-blue);border-color:#fff}
.cta-inner .btn.light:hover{background:rgba(255,255,255,.92);color:var(--lw-blue)}


/* Summary cards with images */
.summary-grid{align-items:stretch}
.summary-card{padding:0;overflow:hidden;display:grid;grid-template-rows:220px 1fr;min-height:0;background:#fff}
.summary-media{position:relative;overflow:hidden;background:var(--lw-dark)}
.summary-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,24,38,0) 0%,rgba(15,24,38,.06) 100%);pointer-events:none}
.summary-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--duration-slow) var(--ease),filter var(--duration-normal) var(--ease)}
.summary-copy{display:flex;flex-direction:column;gap:0;padding:28px 24px 26px}
.summary-copy>span{color:var(--lw-blue);font-size:.8rem;font-weight:700;letter-spacing:.14em}
.summary-copy h3{font-size:clamp(1.45rem,2vw,2rem);font-weight:600;letter-spacing:-.02em;margin:20px 0 14px}
.summary-copy p{color:var(--lw-muted);margin:0 0 28px}
.summary-copy b{margin-top:auto;font-size:.9rem}
.summary-card:hover .summary-media img{transform:scale(1.04)}
@media(max-width:900px){.summary-card{grid-template-rows:210px 1fr}}
@media(max-width:560px){.summary-card{grid-template-rows:180px 1fr}.summary-copy{padding:24px 22px 24px}}


/* Mobile image responsiveness: show more of the image instead of cropping it away. */
@media(max-width:900px){
  .hero-media img{
    object-position:68% center;
  }

  .audience-media,
  .summary-media,
  .photo,
  .service-media{
    min-height:0;
    height:auto;
  }

  .audience-media img,
  .summary-media img,
  .photo img,
  .service-media img{
    width:100%;
    height:auto;
    object-fit:contain;
    object-position:center center;
    display:block;
    background:var(--lw-bg-soft);
  }

  .summary-card{
    grid-template-rows:auto 1fr;
  }
}

@media(max-width:560px){
  .hero-media img{
    object-position:72% center;
  }

  .summary-media,
  .photo,
  .service-media{
    min-height:0;
  }
}

/* Personalvermittlung detail page */
.personalvermittlung-hero .hero-media img{object-position:center 42%}
.principle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--lw-border);border-left:1px solid var(--lw-border)}
.principle-card{min-height:330px;padding:42px;border-right:1px solid var(--lw-border);border-bottom:1px solid var(--lw-border);background:#fff;transition:background var(--duration-normal) var(--ease),color var(--duration-normal) var(--ease),transform var(--duration-normal) var(--ease)}
.principle-card>span{display:block;color:var(--lw-blue);font-size:.75rem;font-weight:700;letter-spacing:.14em}
.principle-card h3{font-size:clamp(1.8rem,2.5vw,2.7rem);line-height:1.08;letter-spacing:-.03em;margin:46px 0 16px}
.principle-card p{max-width:56ch;margin:0;color:var(--lw-muted);line-height:1.75}
.principle-card:hover{background:var(--lw-blue);color:#fff;transform:translateY(-2px)}
.principle-card:hover>span,.principle-card:hover h3,.principle-card:hover p{color:#fff}
.personalvermittlung-split .photo{min-height:560px}
.success-model{background:var(--lw-dark);color:#fff;padding-block:clamp(88px,9vw,136px)}
.success-model-inner{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:start}
.success-model-inner>div:first-child{grid-column:1/span 6}.success-model-inner>div:last-child{grid-column:8/-1}
.success-model h2{margin:12px 0 0;color:#fff;font-size:clamp(2.5rem,4.5vw,5rem);font-weight:600;line-height:1;letter-spacing:-.04em}
.success-model p{margin:0 0 30px;color:rgba(255,255,255,.76);font-size:1.08rem;line-height:1.75}
.contact-strip{display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,90px);align-items:start;padding:clamp(40px,5vw,68px);border:1px solid var(--lw-border);background:#fff}
.contact-strip h2{font-size:clamp(2.2rem,3.5vw,3.8rem);line-height:1.03;letter-spacing:-.035em;margin:12px 0 18px}.contact-strip p{margin:0;color:var(--lw-muted)}
.contact-strip-data{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.contact-strip-data>div{padding-left:22px;border-left:1px solid var(--lw-border)}
.contact-strip-data small{display:block;margin-bottom:10px;color:var(--lw-blue);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.contact-strip-data a,.contact-strip-data span{font-weight:600;line-height:1.55}
.contact-strip-data a:hover{color:var(--lw-blue)}
@media (max-width:980px){.principle-grid{grid-template-columns:1fr}.principle-card{min-height:0}.success-model-inner{grid-template-columns:1fr}.success-model-inner>div:first-child,.success-model-inner>div:last-child{grid-column:auto}.success-model-inner>div:last-child{margin-top:30px}.contact-strip{grid-template-columns:1fr}.contact-strip-data{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:720px){.principle-card{padding:30px}.principle-card h3{margin-top:28px}.personalvermittlung-split .photo{min-height:360px}.contact-strip{padding:28px}.contact-strip-data{grid-template-columns:1fr}.contact-strip-data>div{padding:16px 0 0;border-left:0;border-top:1px solid var(--lw-border)}.personalvermittlung-hero .hero-media img{object-position:58% center}}

/* Letswerk Jobs navigation extension */
@media(min-width:901px){.nav .links{gap:clamp(12px,1.35vw,25px);font-size:.82rem}}
@media(max-width:900px){.links.open>a:nth-child(8){transition-delay:355ms}}

@media(min-width:901px) and (max-width:1150px){.nav .links{gap:9px;font-size:.74rem}.nav .links .btn{font-size:.75rem;padding:11px 12px}}

/* Transparent brand artwork on light and dark surfaces. */
.logo-switch .logo-light,.footer-logo .logo-img{filter:brightness(0) invert(1)}
.footer-logo .logo-img{width:150px;max-width:150px;height:auto;display:block}

.person-initials{display:inline-grid;place-items:center;width:64px;height:64px;min-width:64px;border-radius:50%;background:#eaf9fd;color:#087c9c;font:600 20px/1 Inter,Arial,sans-serif}.team-card .person-initials{width:100%;height:220px;border-radius:16px;font-size:48px}

/* 1.3.14: sharp responsive heroes and WordPress toolbar integration. */
.hero-media img{transform:none;object-position:center center}
.hero-media::after{background:linear-gradient(90deg,rgba(15,24,38,.86) 0%,rgba(15,24,38,.65) 38%,rgba(15,24,38,.12) 72%,rgba(15,24,38,.04) 100%)}
body.admin-bar .nav{top:32px}
#wpadminbar #wp-admin-bar-my-account>.ab-item img.avatar{width:26px!important;height:26px!important;max-width:26px;display:inline-block;object-fit:cover}
#wpadminbar #wp-admin-bar-user-info img.avatar{width:64px!important;height:64px!important;max-width:64px;object-fit:cover}
@media(max-width:782px){body.admin-bar .nav{top:46px}}
@media(max-width:600px){body.admin-bar #wpadminbar{position:fixed}}
@media(max-width:720px){.hero-media::after{background:linear-gradient(90deg,rgba(15,24,38,.82),rgba(15,24,38,.44))}.hero-media img{object-position:60% center}}

/* User image focal points, scoped to managed photos. */
img[data-lw-image]{object-position:var(--lw-image-dx,50%) var(--lw-image-dy,50%)!important}
@media(max-width:720px){img[data-lw-image]{object-position:var(--lw-image-mx,60%) var(--lw-image-my,50%)!important}}

/* v1.3.19: größeres Logo in der Navigation, deutlicherer Claim, Karten-Platzhalter */
.nav .nav-inner{min-height:88px}
.nav.scrolled .nav-inner{min-height:74px}
.logo-img{height:76px;max-width:150px}
.logo-switch{width:136px;height:78px;min-height:78px}
.nav.scrolled .logo-img{height:62px}
.hero .eyebrow{font-size:clamp(.95rem,1.25vw,1.15rem);letter-spacing:.2em;margin-bottom:26px;opacity:1}
.lw-map-consent{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:32px;text-align:center;background:#dfe7eb;color:#172638}
.lw-map-consent p{max-width:44ch;margin:0;line-height:1.6;font-size:.95rem}
.lw-map-consent a{text-decoration:underline}
@media(max-width:900px){
  .nav .nav-inner,.nav.scrolled .nav-inner{min-height:68px}
  .logo-img,.nav.scrolled .logo-img{height:58px;max-width:118px}.logo-switch{width:104px;height:60px;min-height:60px}
}
@media(max-width:560px){
  .nav .nav-inner,.nav.scrolled .nav-inner{min-height:62px}
  .logo-img,.nav.scrolled .logo-img{height:52px;max-width:104px}.logo-switch{width:92px;height:54px;min-height:54px}
  .hero .eyebrow{font-size:.8rem;letter-spacing:.14em}
}

/* v1.3.20: Hinweis Pflichtfelder Bewerbung */
.form-hint{margin:6px 0 14px;font-size:.85rem;color:#66717D}
