/*
Theme Name: NIUN Dome
Description: Deutsches NIUN Block-Theme mit lokalem Hanken Grotesk, editierbaren Core-Blöcken und Website-Vorlagen.
Author: NIUN Cyber Defense Dome GmbH
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: niun-dome
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
@font-face{font-family:'Hanken Grotesk';src:url('assets/fonts/HankenGrotesk-Variable.ttf') format('truetype');font-weight:400 800;font-style:normal;font-display:swap}
:root{--niun-green:#73c15c;--niun-signal:#8fdd76;--niun-muted:#acb7ad;--niun-line:#29342b;--niun-bg:#0b0f0c}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--niun-bg);color:#fff;font-family:'Hanken Grotesk',sans-serif;font-size:18px;line-height:1.65}img{max-width:100%;height:auto}figure{margin:0}a{color:var(--niun-signal);text-underline-offset:5px}a:hover{color:#fff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--niun-signal);outline-offset:6px}p{margin:0 0 1.2em}h1,h2,h3{margin:0;line-height:1.1;font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(44px,4.5vw,70px);font-weight:600;letter-spacing:-.052em}h2{font-size:clamp(34px,3.25vw,50px)}h3{font-size:27px;line-height:1.2;letter-spacing:-.025em}.wrap{width:calc(100% - 112px);max-width:1240px;margin-left:auto!important;margin-right:auto!important}.section{padding-top:104px;padding-bottom:104px;border-top:1px solid var(--niun-line)}.accent{color:var(--niun-green)}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.17em;line-height:1.6;color:var(--niun-signal);margin-bottom:26px}.micro{font-size:12px;color:var(--niun-muted);letter-spacing:.015em}.small{font-size:15px;line-height:1.65;color:var(--niun-muted)}.site-header{min-height:120px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid var(--niun-line)}.brand-logo{width:154px;padding:22px;flex-shrink:0}.brand-logo img{width:110px;display:block}.brand-logo a{display:block}.site-header .wp-block-navigation{font-size:14px;gap:34px}.site-header .wp-block-navigation-item__content{color:#cbd1cc;text-decoration:none}.site-header .wp-block-navigation-item:last-child .wp-block-navigation-item__content{color:var(--niun-signal)}.site-header .wp-block-navigation__container{gap:34px}.hero{display:grid;grid-template-columns:1.07fr 1fr;align-items:center;min-height:680px;padding-top:64px;padding-bottom:68px;position:relative}.hero-text{position:relative;z-index:1}.hero-copy{max-width:480px;color:#bac3bc;font-size:19px;line-height:1.65;margin-top:28px;margin-bottom:28px}.hero .micro{margin-top:20px}.hero-visual{margin-left:-38px}.dome-art{width:115%;max-width:none;margin-top:-28px}.dome-caption{font-size:9px;letter-spacing:.2em;text-align:center;color:var(--niun-muted);margin:-56px 0 0 32px;position:relative}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}.wp-block-button__link{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:4px;background:var(--niun-green);color:#010101;padding:13px 20px;font-size:14px;font-weight:700;text-decoration:none;line-height:1.4;transition:background .15s,color .15s}.wp-block-button__link:hover{background:var(--niun-signal);color:#010101}.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;border:1px solid #475849;color:#e3e9e4;padding:13px 20px}.wp-block-button.is-style-outline .wp-block-button__link:hover{border-color:var(--niun-green);background:#171d18}.hero .wp-block-button.is-style-outline .wp-block-button__link{border-color:transparent;padding-left:8px;padding-right:8px}.section-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:60px;margin-bottom:42px}.section-intro>p{max-width:365px;margin:0;color:var(--niun-muted);font-size:17px}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-card{padding:36px;background:linear-gradient(135deg,#171d18,#101511);border:1px solid #344335;border-radius:6px;display:flex;flex-direction:column;align-items:flex-start}.service-card .eyebrow{margin-bottom:28px}.service-card h3{font-size:32px}.service-card>p:not(.eyebrow){font-size:17px;color:#bac3bc;max-width:490px;margin-top:22px;margin-bottom:0}.service-card .service-meta{font-size:13px!important;color:var(--niun-signal)!important;margin-bottom:26px!important}.service-card .wp-block-buttons{margin-top:auto}.detail-grid{display:grid;grid-template-columns:.95fr 1.15fr;gap:100px}.detail-intro>p:not(.eyebrow){margin-top:26px}.detail-intro .small{margin-top:34px!important}.feature-row{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid var(--niun-line)}.feature-row:first-child{padding-top:0}.feature-number{font-size:13px;color:var(--niun-green);padding-top:4px}.feature-copy h3{font-size:22px;margin-bottom:13px}.feature-copy p{font-size:16px;color:#bac3bc;margin-bottom:0}.journey-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:50px}.step{border-top:1px solid #47643f;padding-top:20px}.step-number{color:var(--niun-green);font-size:13px;margin-bottom:25px}.step h3{font-size:21px;min-height:52px}.step p:last-child{font-size:15px;color:#bac3bc;margin-top:15px}.support-note{font-size:16px;color:#c0c8c1;margin:36px 0 0;padding:23px 28px;background:#171d18;border-left:2px solid var(--niun-green)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-copy>p:not(.eyebrow){color:#bac3bc;font-size:17px;margin-top:26px}.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.value{padding-top:21px;border-top:1px solid var(--niun-line)}.value h3{font-size:20px;color:var(--niun-signal);letter-spacing:-.02em}.value p{font-size:15px;color:#bac3bc;margin-top:12px}.faq h2{margin-bottom:38px}.wp-block-details{border-top:1px solid var(--niun-line);padding:23px 0;max-width:900px}.wp-block-details:last-child{border-bottom:1px solid var(--niun-line)}.wp-block-details summary{cursor:pointer;font-size:20px;line-height:1.4;padding-right:24px}.wp-block-details p{font-size:16px;color:#bac3bc;max-width:780px;margin:22px 0 0}.contact{padding-bottom:90px}.contact-inner{padding:60px;border:1px solid #41583c;border-radius:6px;background:radial-gradient(ellipse at top right,#1a2c17,transparent 65%)}.contact h2{font-size:clamp(38px,4vw,60px)}.contact-copy{max-width:720px;margin:25px 0 32px;color:#c0c8c1}.booking-note{border-top:1px solid #354630;padding-top:24px;max-width:720px}.booking-note .eyebrow{margin-bottom:10px}.booking-note h3{font-size:24px;margin-bottom:12px}.booking-note p:last-child{margin-bottom:0}.site-footer{display:flex;justify-content:space-between;gap:50px;padding:40px 0 55px;border-top:1px solid var(--niun-line)}.site-footer .brand-logo{margin-left:-22px}.footer-line{font-size:16px;color:#b4beb5}.footer-info{padding-top:22px;max-width:390px}.footer-info>p{font-size:14px;color:#b4beb5}.footer-info .small{font-size:12px}.footer-info .micro{font-size:11px;color:var(--niun-muted)}.prose{max-width:860px;min-height:65vh}.prose .wp-block-post-content{margin-top:36px}.prose p{margin-bottom:1.4em}.prose h2,.prose h3{margin:1.4em 0 .6em}.wp-block-post-template{padding:0;list-style:none}.wp-block-post-template>li{padding:30px 0}.wp-block-query-pagination{display:flex;gap:24px}.wp-block-navigation__responsive-container.is-menu-open{background:#0b0f0c!important;color:#fff!important;padding:32px}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{min-width:44px;min-height:44px}.editor-styles-wrapper .hero{min-height:680px}.editor-styles-wrapper .wp-block{max-width:none}.editor-styles-wrapper{background:var(--niun-bg);color:white}
@media(min-width:1600px){.hero{min-height:750px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{grid-template-columns:1.1fr 1fr;min-height:610px}h1{font-size:50px}.hero-copy{font-size:17px}.hero-visual{margin-left:-45px}.detail-grid,.about-grid{gap:45px}.service-card{padding:28px}.service-card h3{font-size:28px}.journey-grid{gap:17px}.step h3{font-size:19px}.section{padding-top:78px;padding-bottom:78px}.site-header .wp-block-navigation__container{gap:22px}}
@media(max-width:781px){.wrap{width:calc(100% - 40px)}.site-header{min-height:96px;gap:20px}.site-header .wp-block-navigation__container{gap:18px}.site-header .wp-block-navigation{font-size:12px}.brand-logo{width:138px;padding:20px}.brand-logo img{width:98px}.hero{grid-template-columns:1fr;min-height:0;padding-top:55px;padding-bottom:45px}.hero-text{max-width:590px}h1{font-size:clamp(42px,7.5vw,60px)}.hero-visual{margin:0 auto;width:85%;max-width:530px}.dome-art{width:100%;margin-top:-20px}.dome-caption{margin:-60px 0 22px}.hero-copy{font-size:18px;max-width:530px}.section{padding-top:64px;padding-bottom:64px}.section-intro{display:block;margin-bottom:30px}.section-intro>p{max-width:550px;margin-top:22px}.path-grid,.detail-grid,.about-grid{grid-template-columns:1fr;gap:28px}.service-card{padding:28px}.detail-grid,.about-grid{gap:36px}.detail-intro>p{max-width:580px}.journey-grid{grid-template-columns:1fr 1fr;gap:25px}.step h3{min-height:0}.step:last-child{grid-column:1/-1}.step-number{margin-bottom:15px}.values-grid{gap:28px}.contact-inner{padding:32px}.site-footer{gap:24px}.footer-info{max-width:270px}.eyebrow{font-size:10px}}
@media(max-width:480px){h1{font-size:44px}h2{font-size:34px}.hero{padding-top:40px}.hero-copy{font-size:17px}.hero .wp-block-buttons{gap:8px}.hero .wp-block-button:first-child{width:100%}.hero .wp-block-button:first-child .wp-block-button__link{width:100%}.hero .wp-block-button.is-style-outline .wp-block-button__link{padding-left:0}.hero-visual{width:100%}.dome-caption{font-size:8px;margin-top:-45px}.service-card h3{font-size:28px}.service-card{padding:26px}.feature-row{gap:18px}.values-grid{grid-template-columns:1fr}.journey-grid{grid-template-columns:1fr}.step:last-child{grid-column:auto}.step{display:grid;grid-template-columns:30px 1fr;gap:5px 12px}.step-number{grid-row:1/3;margin:0}.step p:last-child{grid-column:2;margin:4px 0 0}.contact-inner{padding:26px}.contact h2{font-size:36px}.site-footer{flex-direction:column;gap:0}.footer-info{max-width:none;padding-top:10px}.footer-line{margin-bottom:10px}.hero .micro{font-size:11px}.wp-block-details summary{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:782px) and (max-width:1050px){.dome-art{width:100%}.hero-visual{margin-left:-20px;min-width:0}.dome-caption{margin-top:-30px;margin-left:0}}
.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open{padding:28px!important}
.wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start;padding-top:76px}
.wp-block-navigation .is-menu-open .wp-block-navigation__container{align-items:flex-start;gap:14px}
.wp-block-navigation .is-menu-open .wp-block-navigation-item__content{font-size:22px;min-height:48px;display:flex;align-items:center}
