* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    background:#080510;
    color:#fff;
    font-family:Inter,sans-serif;
    overflow-x:hidden
}
.shell {
    width:min(1180px,calc(100% - 48px));
    margin:auto
}
header {
    position:fixed;
    z-index:50;
    width:100%;
    top:0;
    background:#080510aa;
    backdrop-filter:blur(14px);
    border-bottom:1px solid #ffffff1c
}
nav {
    height:78px;
    display:flex;
    align-items:center;
    gap:40px
}
.logo {
    color:#fff;
    text-decoration:none;
    display:flex;
    align-items:center;
    gap:12px
}
.logo b {
    font:900 28px Oxanium
}
.logo span {
    font-size:11px;
    letter-spacing:3px
}
.links {
    margin-left:auto;
    display:flex;
    gap:30px
}
.links a {
    color:#fff;
    text-decoration:none;
    font-size:11px;
    letter-spacing:2px
}
#themeToggle {
    border:1px solid #ffffff44;
    background:#090612;
    color:#fff;
    border-radius:30px;
    padding:7px 10px;
    display:flex;
    align-items:center;
    gap:8px;
    font:700 10px Oxanium;
    cursor:pointer
}
#themeToggle i {
    width:44px;
    height:22px;
    border-radius:20px;
    background:#301b43;
    position:relative
}
#themeToggle i b {
    position:absolute;
    width:16px;
    height:16px;
    background:#ff385f;
    border-radius:50%;
    top:3px;
    left:4px;
    transition:.5s
}
html[data-theme=cyber] #themeToggle i b {
    left:24px;
    background:#00f7ff;
    box-shadow:0 0 12px #00f7ff
}
.hero {
    height:100vh;
    min-height:720px;
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden
}
.bg-video {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.85)
}
.cyber-video {
    opacity:0
}
.retro-video {
    opacity:.6
}
html[data-theme=cyber] .retro-video {
    opacity:0
}
html[data-theme=cyber] .cyber-video {
    opacity:.63
}
.video-shade {
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,#080510 4%,#080510d9 38%,#08051055 70%,#080510aa),linear-gradient(0deg,#080510 0%,transparent 45%)
}
.hero-content {
    position:relative;
    z-index:5;
    padding-top:80px
}
.eyebrow,.kicker {
    font:700 11px Oxanium;
    letter-spacing:3px;
    color:#ff5d83
}
.hero h1 {
    margin:18px 0 0;
    font:900 clamp(65px,10vw,145px)/.76 Oxanium;
    letter-spacing:-8px;
    text-shadow:4px 4px 0 #351542
}
.hero h1 strong {
    display:block;
    color:transparent;
    -webkit-text-stroke:2px #fff
}
.hero h2 {
    font:400 clamp(22px,3vw,42px) Kalam;
    margin:30px 0 14px;
    color:#ffbd65
}
.lead {
    max-width:620px;
    font-size:17px;
    line-height:1.7;
    color:#e4dbe9
}
.actions {
    display:flex;
    gap:14px;
    margin-top:28px
}
.actions a,.contact a {
    padding:15px 22px;
    border:1px solid #ff4775;
    color:#fff;
    text-decoration:none;
    font:700 11px Oxanium;
    letter-spacing:1px
}
.actions a:first-child {
    background:#ff3869
}
.tape {
    position:absolute;
    right:7%;
    bottom:9%;
    z-index:5;
    width:260px;
    height:155px;
    border-radius:14px;
    background:#d6c5a8;
    color:#221726;
    transform:rotate(-8deg);
    box-shadow:0 30px 60px #0008;
    padding:25px;
    text-align:center
}
.tape>span {
    font:900 32px Oxanium
}
.tape i {
    display:block;
    margin:12px auto;
    width:170px;
    height:42px;
    border:9px solid #33273a;
    border-radius:30px
}
.tape small {
    font:700 8px Oxanium
}
.gridfloor {
    position:absolute;
    z-index:2;
    bottom:-25%;
    left:-20%;
    width:140%;
    height:60%;
    background:linear-gradient(#ff278c55 1px,transparent 1px),linear-gradient(90deg,#7b32ff55 1px,transparent 1px);
    background-size:70px 45px;
    transform:perspective(350px) rotateX(62deg)
}
.sun {
    position:absolute;
    z-index:2;
    right:12%;
    top:18%;
    width:260px;
    height:260px;
    border-radius:50%;
    background:linear-gradient(#ffdc70,#ff357e);
    opacity:.45;
    box-shadow:0 0 80px #ff327c
}
.cyber-fx {
    display:none
}
html[data-theme=cyber] .retro-fx {
    display:none
}
html[data-theme=cyber] .cyber-fx {
    display:block
}
.hud {
    position:absolute;
    z-index:4;
    right:5%;
    top:18%;
    font:10px/1.8 Oxanium;
    color:#00f7ff;
    border-left:2px solid #00f7ff;
    padding:10px
}
.cyber-card {
    position:absolute;
    z-index:5;
    right:8%;
    bottom:10%;
    width:280px;
    padding:22px;
    border:1px solid #00f7ff;
    background:#04151bd9;
    clip-path:polygon(0 0,90% 0,100% 18%,100% 100%,10% 100%,0 82%);
    box-shadow:0 0 35px #00f7ff33
}
.cyber-card b {
    display:block;
    font:900 38px/.9 Oxanium;
    margin:20px 0
}
.cyber-card small,.cyber-card span {
    font:9px Oxanium;
    color:#00f7ff
}
.cyber-only {
    display:none
}
html[data-theme=cyber] .retro-only {
    display:none
}
html[data-theme=cyber] .cyber-only {
    display:block
}
html[data-theme=cyber] .eyebrow,html[data-theme=cyber] .kicker {
    color:#00f7ff
}
html[data-theme=cyber] .hero h2 {
    font-family:Oxanium;
    color:#ff35cf
}
html[data-theme=cyber] .hero h1 {
    text-shadow:4px 4px 0 #00a9bd
}
.section {
    padding:120px 0
}
.section h3,.contact h3 {
    font:800 clamp(42px,6vw,78px)/1.02 Oxanium;
    margin:18px 0 55px;
    letter-spacing:-4px
}
.section h3 em,.contact h3 em {
    color:#ff4775;
    font-style:normal
}
.split {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    font-size:18px;
    line-height:1.8;
    color:#bfb6c8
}
.dark {
    background:#100a19
}
.cards {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:#ffffff1c
}
.cards article {
    background:#100a19;
    padding:38px 25px;
    min-height:220px
}
.cards b {
    font:700 11px Oxanium;
    color:#ff4775
}
.cards h4,.projects h4 {
    font:800 20px Oxanium
}
.cards p,.projects p {
    color:#9e94aa;
    line-height:1.6
}
.projects {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px
}
.projects article {
    border:1px solid #ffffff1a;
    padding:14px
}
.art {
    height:260px;
    background:linear-gradient(135deg,#25112e,#0a0710);
    position:relative;
    display:grid;
    place-items:center;
    overflow:hidden
}
.art>span {
    position:absolute;
    top:14px;
    left:14px;
    font:10px Oxanium;
    color:#ff4775
}
.fake-ui {
    width:72%;
    height:62%;
    border:1px solid #ff477566;
    display:grid;
    place-items:center;
    transform:perspective(500px) rotateY(-12deg)
}
.fake-ui b {
    font:900 48px Oxanium
}
.projects small {
    font:9px Oxanium;
    color:#ff4775
}
.contact {
    height:650px;
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden
}
.contact .shell {
    position:relative;
    z-index:3
}
.contact h3 {
    margin-bottom:35px
}
.contact p {
    font:11px Oxanium;
    letter-spacing:3px
}
footer {
    padding:35px 0;
    background:#050308;
    font:700 11px Oxanium
}
footer .shell {
    display:flex;
    justify-content:space-between
}
footer span {
    color:#746b7d
}

/* cinematic timeline transition */.portal {
    position:fixed;
    inset:0;
    z-index:999;
    visibility:hidden;
    opacity:0;
    background:#030107;
    overflow:hidden
}
.portal.active {
    visibility:visible;
    opacity:1
}
.locked {
    overflow:hidden
}
.portal:before,.portal:after {
    content:"";
    position:absolute;
    inset:-20%;
    background:repeating-radial-gradient(circle,#ff2e8111 0 2px,transparent 3px 35px);
    transform:scale(.1);
    opacity:0
}
.portal.active:before {
    animation:tunnel 2.5s .7s cubic-bezier(.7,0,.2,1) forwards
}
.portal.to-cyber:after {
    background:repeating-radial-gradient(circle,#00f7ff17 0 2px,transparent 3px 35px)
}
.portal-rings {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center
}
.portal-rings i {
    position:absolute;
    width:20vmin;
    height:20vmin;
    border:2px solid #ff3b7f;
    border-radius:50%;
    opacity:0;
    box-shadow:0 0 25px currentColor
}
.portal.to-cyber .portal-rings i {
    color:#00f7ff;
    border-color:#00f7ff
}
.portal.active .portal-rings i:nth-child(1) {
    animation:ring 1.6s .65s ease-out forwards
}
.portal.active .portal-rings i:nth-child(2) {
    animation:ring 1.6s .9s ease-out forwards
}
.portal.active .portal-rings i:nth-child(3) {
    animation:ring 1.6s 1.15s ease-out forwards
}
.portal.active .portal-rings i:nth-child(4) {
    animation:ring 1.6s 1.4s ease-out forwards
}
.machine {
    position:absolute;
    left:50%;
    top:56%;
    width:460px;
    height:180px;
    transform:translate(-50%,-50%)
}
.car {
    position:absolute;
    width:360px;
    height:100px;
    left:50px;
    bottom:20px;
    transform:translateX(-120vw);
    filter:drop-shadow(0 15px 18px #000)
}
.active .car {
    animation:carRide 3.05s cubic-bezier(.35,.05,.3,1) forwards
}
.body {
    position:absolute;
    left:30px;
    bottom:22px;
    width:300px;
    height:60px;
    background:linear-gradient(#a9a9ad,#35353b);
    clip-path:polygon(8% 0,74% 0,100% 38%,94% 100%,0 100%,0 35%);
    border-bottom:4px solid #ff335f
}
.body b {
    position:absolute;
    right:30px;
    top:20px;
    font:900 17px Oxanium
}
.glass {
    position:absolute;
    z-index:2;
    left:105px;
    top:3px;
    width:140px;
    height:48px;
    background:#091721dd;
    border:2px solid #c4d9df;
    clip-path:polygon(17% 0,78% 0,100% 100%,0 100%)
}
.wheel {
    position:absolute;
    z-index:3;
    bottom:5px;
    width:45px;
    height:45px;
    border:8px solid #09090b;
    background:#555;
    border-radius:50%
}
.w1 {
    left:82px
}
.w2 {
    right:62px
}
.trail {
    position:absolute;
    right:315px;
    width:0;
    height:3px;
    background:#ff386c;
    top:65px;
    box-shadow:0 0 12px #ff386c
}
.active .trail {
    animation:trail 1s 1.6s forwards
}
.portal.to-cyber .trail {
    background:#00f7ff;
    box-shadow:0 0 12px #00f7ff
}
.machine-glow {
    position:absolute;
    inset:0;
    background:radial-gradient(ellipse,#ff337744,transparent 65%);
    opacity:0
}
.active .machine-glow {
    animation:pulse .8s 1.2s infinite
}
.portal-copy {
    position:absolute;
    left:50%;
    top:16%;
    transform:translateX(-50%);
    text-align:center;
    font-family:Oxanium;
    z-index:4
}
.portal-copy small {
    font-size:10px;
    letter-spacing:5px;
    color:#ff4b7d
}
.portal-copy div {
    display:flex;
    align-items:center;
    gap:30px;
    margin:14px
}
.portal-copy b {
    font-size:46px
}
.portal-copy i {
    font-style:normal;
    color:#777
}
.portal-copy>span {
    font-size:9px;
    letter-spacing:8px;
    color:#777
}
.whiteout {
    position:absolute;
    inset:0;
    background:white;
    opacity:0;
    pointer-events:none
}
.active .whiteout {
    animation:flash .55s 2.18s ease-out
}
.vhs-noise {
    position:absolute;
    inset:0;
    opacity:.12;
    background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);
    mix-blend-mode:overlay
}
.portal.exit {
    animation:portalOut .65s forwards
}
@keyframes carRide {
    0% {
        transform:translateX(-120vw) scale(.8)
    }
    30% {
        transform:translateX(-15px) scale(1)
    }
    47% {
        transform:translateX(0) scale(1)
    }
    68% {
        transform:translateX(0) scale(1.04);
        filter:drop-shadow(0 0 30px #ff377c)
    }
    82% {
        transform:translateX(35vw) scale(.75);
        opacity:1
    }
    100% {
        transform:translateX(120vw) scale(.2);
        opacity:0
    }

}
@keyframes tunnel {
    0% {
        transform:scale(.1) rotate(0);
        opacity:0
    }
    30% {
        opacity:1
    }
    100% {
        transform:scale(5) rotate(20deg);
        opacity:.7
    }

}
@keyframes ring {
    0% {
        transform:scale(.2);
        opacity:0
    }
    20% {
        opacity:1
    }
    100% {
        transform:scale(8);
        opacity:0
    }

}
@keyframes trail {
    to {
        width:70vw
    }

}
@keyframes pulse {
    50% {
        opacity:1
    }

}
@keyframes flash {
    0%,100% {
        opacity:0
    }
    45% {
        opacity:1
    }

}
@keyframes portalOut {
    to {
        opacity:0;
        transform:scale(1.06)
    }

}
 html[data-theme=cyber] .section h3 em,html[data-theme=cyber] .contact h3 em,html[data-theme=cyber] .cards b,html[data-theme=cyber] .projects small {
    color:#00f7ff
}
html[data-theme=cyber] .actions a {
    border-color:#00f7ff
}
html[data-theme=cyber] .actions a:first-child {
    background:#00d7df;
    color:#021013
}
@media(max-width:800px) {
    .links {
        display:none
    }
    .hero h1 {
        letter-spacing:-4px
    }
    .tape,.cyber-card {
        display:none
    }
    .cards,.projects,.split {
        grid-template-columns:1fr
    }
    .section {
        padding:80px 0
    }
    .machine {
        transform:translate(-50%,-50%) scale(.7)
    }
    .portal-copy b {
        font-size:30px
    }

}

html[data-theme=retro] body {
    background:#110712;
    color:#fff7e9;
    background-image:radial-gradient(circle at 15% 20%,#b3205430,transparent 30%),radial-gradient(circle at 80% 60%,#54207c25,transparent 32%)
}
 html[data-theme=retro] header {
    background:#160816d9;
    border-bottom:2px solid #ff6d8b55;
    box-shadow:0 6px 35px #0008
}
 html[data-theme=retro] .logo b {
    font-family:Kalam;
    color:#ffcf77;
    text-shadow:2px 2px #c72d66
}
 html[data-theme=retro] .links a {
    font-family:Kalam;
    font-size:13px;
    letter-spacing:1px
}

 html[data-theme=retro] .dark {
    background:#e6d0a8;
    color:#291529;
    position:relative;
    background-image:linear-gradient(#00000008 1px,transparent 1px);
    background-size:100% 4px
}
 html[data-theme=retro] .dark:before {
    content:'FK DESIGN STUDIOS // COMPUTER LAB 1986';
    position:absolute;
    right:4%;
    top:35px;
    font:700 10px Oxanium;
    letter-spacing:3px;
    color:#7d3256
}
 html[data-theme=retro] .dark .kicker,html[data-theme=retro] .dark .cards b {
    color:#a52a57
}
 html[data-theme=retro] .dark .cards {
    background:#6e375233;
    border:8px solid #352038;
    box-shadow:12px 12px 0 #8f4e66
}
 html[data-theme=retro] .dark .cards article {
    background:#d7bf94;
    color:#291529;
    border-right:1px dashed #6c425b
}
 html[data-theme=retro] .dark .cards p {
    color:#654d61
}
 html[data-theme=retro] .section h3 {
    font-family:Kalam;
    letter-spacing:-2px;
    text-transform:none
}
 html[data-theme=retro] .projects article {
    background:#efe0c1;
    color:#281626;
    border:0;
    box-shadow:8px 8px 0 #6e294f;
    transform:rotate(var(--tilt, -1deg))
}
 html[data-theme=retro] .projects article:nth-child(2) {
    --tilt:1.2deg
}
html[data-theme=retro] .projects article:nth-child(3) {
    --tilt:-.6deg
}
 html[data-theme=retro] .projects p {
    color:#624c5d
}
html[data-theme=retro] .projects h4 {
    font-family:Kalam;
    font-size:24px
}
 html[data-theme=retro] .art {
    background:linear-gradient(145deg,#302039,#100d17);
    border:10px solid #d0b58c;
    box-shadow:inset 0 0 0 2px #42263c
}
 html[data-theme=retro] .fake-ui {
    border:0;
    background:#0a1815;
    box-shadow:0 0 25px #4cff8a55,inset 0 0 20px #000;
    transform:perspective(500px) rotateY(-8deg);
    color:#70ff9a
}

 html[data-theme=cyber] body {
    background:#02070a;
    background-image:linear-gradient(90deg,#00eaff08 1px,transparent 1px),linear-gradient(#00eaff08 1px,transparent 1px);
    background-size:44px 44px
}
 html[data-theme=cyber] header {
    background:#020a0ed9;
    border-bottom:1px solid #00f7ff55;
    box-shadow:0 0 30px #00d9ff12
}
 html[data-theme=cyber] .logo b {
    color:#00f7ff;
    text-shadow:0 0 18px #00f7ff
}
 html[data-theme=cyber] .links a {
    position:relative
}
html[data-theme=cyber] .links a:before {
    content:'//';
    color:#ff35cf;
    margin-right:5px
}
 html[data-theme=cyber] .section:not(.dark) {
    background:transparent
}
 html[data-theme=cyber] .dark {
    background:linear-gradient(110deg,#031116,#06101a 60%,#17051b)
}
 html[data-theme=cyber] .cards {
    gap:16px;
    background:transparent
}
 html[data-theme=cyber] .cards article {
    background:linear-gradient(145deg,#071a20dd,#061016aa);
    border:1px solid #00eaff44;
    clip-path:polygon(0 0,92% 0,100% 12%,100% 100%,8% 100%,0 88%);
    min-height:260px;
    position:relative
}
 html[data-theme=cyber] .cards article:after {
    content:'SYS.READY';
    position:absolute;
    bottom:14px;
    right:18px;
    font:8px Oxanium;
    color:#ff35cf
}
 html[data-theme=cyber] .projects {
    grid-template-columns:1.25fr .8fr .95fr;
    align-items:start
}
 html[data-theme=cyber] .projects article {
    background:#041015cc;
    border:1px solid #00f7ff3b;
    padding:0 0 22px;
    clip-path:polygon(0 0,95% 0,100% 6%,100% 100%,0 100%)
}
 html[data-theme=cyber] .projects article:nth-child(2) {
    margin-top:90px
}
 html[data-theme=cyber] .projects article h4,html[data-theme=cyber] .projects article p,html[data-theme=cyber] .projects article small {
    margin-left:22px;
    margin-right:22px
}
 html[data-theme=cyber] .art {
    height:310px;
    background:radial-gradient(circle at 50% 50%,#083d49,#030b10 62%);
    border-bottom:1px solid #00f7ff55
}
 html[data-theme=cyber] .fake-ui {
    border:1px solid #00f7ff99;
    box-shadow:0 0 30px #00f7ff22;
    transform:perspective(600px) rotateY(14deg) rotateX(3deg);
    color:#00f7ff
}
 html[data-theme=cyber] .section h3 {
    font-size:clamp(46px,7vw,92px);
    text-transform:uppercase
}

 .logo,.links a,.actions a,.cards article,.projects article,.fake-ui,#themeToggle {
    transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,filter .35s,background .35s,color .35s,border-color .35s
}
 .logo:hover {
    transform:translateY(-2px) scale(1.025)
}
 .links a:hover {
    transform:translateY(-3px);
    text-shadow:0 0 14px currentColor
}
 .actions a {
    position:relative;
    overflow:hidden
}
.actions a:after {
    content:'';
    position:absolute;
    inset:0;
    transform:translateX(-110%) skewX(-20deg);
    background:#ffffff35;
    transition:.45s
}
.actions a:hover:after {
    transform:translateX(120%) skewX(-20deg)
}
.actions a:hover {
    transform:translateY(-4px);
    box-shadow:0 12px 30px #0008
}
 #themeToggle:hover {
    transform:scale(1.06);
    box-shadow:0 0 25px #ff477533
}
html[data-theme=cyber] #themeToggle:hover {
    box-shadow:0 0 25px #00f7ff44
}
 .cards article:hover {
    transform:translateY(-12px);
    z-index:2
}
html[data-theme=retro] .cards article:hover {
    background:#ead4aa;
    box-shadow:0 18px 35px #4b243a33
}
html[data-theme=cyber] .cards article:hover {
    border-color:#00f7ff;
    box-shadow:0 0 40px #00f7ff22,inset 0 0 30px #00f7ff0b
}
 .projects article:hover {
    transform:translateY(-12px) rotate(0) !important
}
html[data-theme=retro] .projects article:hover {
    box-shadow:15px 18px 0 #6e294f
}
.projects article:hover .fake-ui {
    transform:perspective(500px) rotateY(0) rotateX(0) scale(1.05)
}
html[data-theme=cyber] .projects article:hover {
    box-shadow:0 0 50px #00f7ff1d;
    border-color:#00f7ff
}
 .tape {
    transition:.45s
}
.tape:hover {
    transform:rotate(-2deg) translateY(-12px) scale(1.04);
    box-shadow:0 40px 80px #000a
}
.cyber-card {
    transition:.45s
}
.cyber-card:hover {
    transform:translateY(-12px) rotateX(3deg);
    box-shadow:0 0 70px #00f7ff55
}

.delorean {
    height:120px
}
.delorean .body {
    height:55px;
    bottom:20px;
    background:linear-gradient(180deg,#d9dcde 0,#777d82 35%,#303439 58%,#aeb2b4 62%,#555b60 100%);
    clip-path:polygon(4% 15%,69% 4%,86% 18%,100% 47%,97% 88%,88% 100%,3% 100%,0 72%);
    border-bottom:3px solid #17191b;
    box-shadow:inset 0 2px #fff8
}
 .delorean-top {
    position:absolute;
    z-index:2;
    left:102px;
    top:6px;
    width:145px;
    height:48px;
    background:linear-gradient(150deg,#7c858b,#20282e);
    clip-path:polygon(20% 0,76% 0,100% 100%,0 100%);
    border-bottom:2px solid #111
}
 .windshield {
    position:absolute;
    inset:5px 8px 4px;
    background:linear-gradient(135deg,#132b36,#061015);
    clip-path:polygon(18% 0,72% 0,96% 100%,0 100%);
    box-shadow:inset 0 0 15px #00d9ff33
}
.door-line {
    position:absolute;
    right:8px;
    bottom:0;
    height:35px;
    border-left:1px solid #d9dddf55;
    transform:skew(-14deg)
}
 .delorean .body b {
    right:18px;
    top:18px;
    font-size:9px;
    color:#ddd;
    letter-spacing:2px
}
.delorean .body em {
    position:absolute;
    right:5px;
    bottom:4px;
    font:700 6px Oxanium;
    background:#fff;
    color:#184b8a;
    padding:2px 4px;
    border:1px solid #234;
    font-style:normal
}
.bumper {
    position:absolute;
    right:0;
    bottom:5px;
    width:45px;
    height:8px;
    background:#151719
}
.rear-lights {
    position:absolute;
    right:10px;
    top:9px;
    width:28px;
    height:7px;
    background:#ff1e38;
    box-shadow:0 0 12px #ff1938
}
 .flux-box {
    position:absolute;
    z-index:4;
    left:182px;
    top:31px;
    width:27px;
    height:27px;
    border:1px solid #cbd7d9;
    background:#111b;
    box-shadow:0 0 10px #8dffde
}
.flux-box i {
    position:absolute;
    left:12px;
    top:4px;
    width:2px;
    height:15px;
    background:#e9fff6;
    box-shadow:0 0 8px #8dffde;
    transform-origin:bottom
}
.flux-box i:nth-child(1) {
    transform:rotate(0)
}
.flux-box i:nth-child(2) {
    transform:rotate(120deg)
}
.flux-box i:nth-child(3) {
    transform:rotate(240deg)
}
 .delorean .wheel {
    border-width:7px;
    background:radial-gradient(circle,#8e969b 0 20%,#1a1b1d 22% 58%,#050506 60%);
    box-shadow:0 0 0 2px #666
}
.active .wheel {
    animation:wheelspin .35s linear infinite
}
.firetrail {
    position:absolute;
    right:315px;
    width:0;
    height:7px;
    top:84px;
    background:linear-gradient(90deg,transparent,#ff4b12,#ffd76a,#fff);
    filter:blur(1px);
    box-shadow:0 0 14px #ff6a00;
    opacity:0
}
.f2 {
    top:103px
}
.active .firetrail {
    animation:fireTrack 1.2s 1.75s forwards
}
 .portal.active {
    background:radial-gradient(circle at center,#101923,#020306 58%,#000)
}
.portal-copy small {
    color:#ffbd62
}
.portal.to-cyber .portal-copy small {
    color:#00f7ff
}
.active .flux-box {
    animation:fluxPulse .22s 1.1s infinite alternate
}
.active .delorean {
    animation:deloreanRide 3.25s cubic-bezier(.35,.05,.25,1) forwards
}
.active .car {
    animation:none
}
.portal.active:before {
    animation:tunnel 2.7s .85s cubic-bezier(.7,0,.2,1) forwards
}
.active .whiteout {
    animation:flash .7s 2.28s ease-out
}
 @keyframes deloreanRide {
    0% {
        transform:translateX(-125vw) scale(.72);
        filter:drop-shadow(0 15px 18px #000)
    }
    27% {
        transform:translateX(-25px) scale(1)
    }
    42% {
        transform:translateX(0) scale(1)
    }
    58% {
        transform:translateX(0) scale(1.03);
        filter:drop-shadow(0 0 28px #8dffde)
    }
    68% {
        transform:translateX(6vw) scale(.98)
    }
    84% {
        transform:translateX(75vw) scale(.62);
        opacity:1;
        filter:drop-shadow(-30px 0 22px #fff)
    }
    100% {
        transform:translateX(130vw) scale(.25);
        opacity:0
    }

}
 @keyframes wheelspin {
    to {
        transform:rotate(360deg)
    }

}
@keyframes fluxPulse {
    to {
        box-shadow:0 0 30px #d9fff4;
        background:#baffdd55
    }

}
@keyframes fireTrack {
    0% {
        width:0;
        opacity:0
    }
    20% {
        opacity:1
    }
    100% {
        width:90vw;
        opacity:.85
    }

}
 @media(max-width:800px) {
    html[data-theme=cyber] .projects {
        grid-template-columns:1fr
    }
    html[data-theme=cyber] .projects article:nth-child(2) {
        margin-top:0
    }
    .firetrail {
        display:none
    }

}

.about-section {
    width:100%;
    position:relative;
    overflow:hidden
}
.about-shell {
    position:relative
}
.about-content {
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:70px;
    align-items:center
}
.about-copy {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:46px;
    font-size:18px;
    line-height:1.8;
    color:#bfb6c8
}
.about-copy p {
    margin:0
}
 html[data-theme=retro] .about-section {
    background:linear-gradient(180deg,#160918 0%,#120711 100%);
    border-top:1px solid #ff76912e;
    border-bottom:1px solid #ff76912e
}
html[data-theme=retro] .about-section:before {
    content:'';
    position:absolute;
    inset:0;
    background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);
    opacity:.018;
    pointer-events:none
}
html[data-theme=retro] .about-heading {
    max-width:850px
}
html[data-theme=retro] .about-copy {
    color:#e6d9df
}
.retro-about-prop {
    height:220px;
    background:#d8c49e;
    color:#281626;
    border-radius:9px;
    padding:25px;
    position:relative;
    transform:rotate(3deg);
    box-shadow:13px 15px 0 #5c2346,0 30px 60px #0007;
    transition:.4s
}
.retro-about-prop:hover {
    transform:rotate(-1deg) translateY(-8px)
}
.retro-about-prop .sticker {
    position:absolute;
    right:-14px;
    top:20px;
    background:#ef5474;
    color:#fff;
    padding:7px 10px;
    font:700 8px Oxanium;
    transform:rotate(7deg)
}
.retro-about-prop b {
    display:block;
    font:900 25px/1.05 Oxanium;
    margin-top:26px
}
.retro-about-prop i {
    display:block;
    width:210px;
    height:55px;
    border:11px solid #312432;
    border-radius:35px;
    margin:18px auto 12px;
    position:relative
}
.retro-about-prop i:after,.retro-about-prop i:before {
    content:'';
    position:absolute;
    top:7px;
    width:18px;
    height:18px;
    border-radius:50%;
    background:#d8c49e
}
.retro-about-prop i:before {
    left:17px
}
.retro-about-prop i:after {
    right:17px
}
.retro-about-prop small {
    font:700 8px Oxanium;
    letter-spacing:1px
}
 html[data-theme=cyber] .about-section {
    background:linear-gradient(110deg,#02090d,#07141a 60%,#130416)
}
html[data-theme=cyber] .about-copy {
    color:#a8c1c7
}
.cyber-about-prop {
    height:240px;
    border:1px solid #00f7ff80;
    background:#03151bd9;
    clip-path:polygon(0 0,88% 0,100% 16%,100% 100%,12% 100%,0 84%);
    padding:28px;
    box-shadow:0 0 45px #00f7ff18;
    transition:.4s
}
.cyber-about-prop:hover {
    transform:translateY(-9px);
    box-shadow:0 0 65px #00f7ff35
}
.cyber-about-prop small,.cyber-about-prop span {
    font:9px/1.7 Oxanium;
    color:#00f7ff
}
.cyber-about-prop b {
    display:block;
    font:900 88px/.9 Oxanium;
    color:#fff;
    margin:25px 0 18px;
    text-shadow:5px 5px #ff35cf
}

.machine {
    left:50%;
    top:58%;
    width:min(900px,92vw);
    height:320px;
    transform:translate(-50%,-50%);
    pointer-events:none
}
.delorean-wrap {
    position:absolute;
    left:50%;
    top:50%;
    width:min(760px,82vw);
    aspect-ratio:760/270;
    transform:translate(-180vw,-50%) scale(.78);
    transform-origin:center center;
    will-change:transform,opacity,filter
}
.delorean-svg {
    display:block;
    width:100%;
    height:100%;
    overflow:visible;
    filter:drop-shadow(0 25px 22px #000c)
}
.car-shadow {
    stroke:#000;
    stroke-width:22;
    stroke-linecap:round;
    opacity:.4
}
.time-rig,.flux {
    opacity:.55
}
.portal.active .time-rig,.portal.active .flux {
    animation:rigGlow .18s 1.15s infinite alternate
}
.portal.active .delorean-wrap {
    animation:deloreanFixed 3.35s cubic-bezier(.34,.04,.2,1) forwards
}
.portal.active .wheel-svg {
    transform-box:fill-box;
    transform-origin:center;
    animation:wheelSvg .32s linear infinite
}
.road-lines {
    position:absolute;
    left:0;
    right:0;
    top:68%;
    height:2px;
    background:#ffffff18;
    box-shadow:0 35px #ffffff0c,0 -35px #ffffff0c;
    opacity:0
}
.portal.active .road-lines {
    animation:roadPulse 1.6s .4s forwards
}
.fire {
    position:absolute;
    left:2%;
    width:0;
    height:8px;
    background:linear-gradient(90deg,transparent,#ff3515,#ffb229,#fff);
    filter:blur(1px);
    box-shadow:0 0 18px #ff5b16;
    opacity:0;
    transform-origin:right
}
.fire-a {
    top:72%
}
.fire-b {
    top:88%
}
.portal.active .fire {
    animation:fireFixed 1.05s 2.12s forwards
}
.portal-copy {
    top:11%;
    width:min(720px,92vw)
}
.portal-copy div {
    justify-content:center
}
.portal-rings {
    transform:translateY(5vh)
}
.portal.active .whiteout {
    animation:flash .66s 2.55s ease-out
}
.portal.active:before {
    animation:tunnel 2.9s 1s cubic-bezier(.7,0,.2,1) forwards
}
 @keyframes deloreanFixed {
    0% {
        transform:translate(-180vw,-50%) scale(.72);
        opacity:1
    }
    25% {
        transform:translate(-52%,-50%) scale(1);
        opacity:1
    }
    43% {
        transform:translate(-50%,-50%) scale(1);
        filter:drop-shadow(0 25px 22px #000c)
    }
    59% {
        transform:translate(-50%,-50%) scale(1.035);
        filter:drop-shadow(0 0 28px #9effe8)
    }
    68% {
        transform:translate(-45%,-50%) scale(1.02)
    }
    82% {
        transform:translate(45vw,-50%) scale(.74);
        opacity:1;
        filter:drop-shadow(-35px 0 25px #fff)
    }
    100% {
        transform:translate(135vw,-50%) scale(.28);
        opacity:0
    }

}
 @keyframes wheelSvg {
    to {
        transform:rotate(360deg)
    }

}
@keyframes rigGlow {
    to {
        opacity:1
    }

}
@keyframes roadPulse {
    0% {
        opacity:0
    }
    40%,100% {
        opacity:.65
    }

}
@keyframes fireFixed {
    0% {
        width:0;
        opacity:0
    }
    18% {
        opacity:1
    }
    100% {
        width:75vw;
        opacity:.9
    }

}
 @media(max-width:800px) {
    .about-content {
        grid-template-columns:1fr;
        gap:40px
    }
    .about-copy {
        grid-template-columns:1fr;
        gap:20px
    }
    .retro-about-prop,.cyber-about-prop {
        width:min(360px,100%);
        margin:auto
    }
    .machine {
        top:60%;
        height:230px
    }
    .portal-copy {
        top:9%
    }
    .portal-copy>span {
        letter-spacing:3px;
        font-size:7px
    }

}

.portal.active .car,.portal.active .delorean {
    animation:none
}
.delorean-wrap .fire {
    display:block
}

.contact {
    height:auto;
    min-height:720px;
    padding:110px 0
}
.contact-grid {
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:90px;
    align-items:center;
    position:relative;
    z-index:3
}
.contact-copy>span {
    display:block;
    max-width:430px;
    color:#c9bfce;
    line-height:1.7
}
.contact-form {
    padding:32px;
    border:1px solid #ff47755c;
    background:#100914dc;
    backdrop-filter:blur(15px);
    box-shadow:0 25px 70px #0007
}
.form-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px
}
.contact-form label {
    display:block;
    font:700 9px Oxanium;
    letter-spacing:2px;
    color:#ff7598;
    margin-bottom:18px
}
.contact-form input,.contact-form textarea {
    display:block;
    width:100%;
    margin-top:9px;
    border:1px solid #ffffff25;
    background:#07050bca;
    color:#fff;
    padding:14px 15px;
    font:14px Inter;
    outline:none;
    transition:.3s
}
.contact-form textarea {
    resize:vertical;
    min-height:150px
}
.contact-form input:focus,.contact-form textarea:focus {
    border-color:#ff4775;
    box-shadow:0 0 0 3px #ff477518,0 0 25px #ff477516;
    transform:translateY(-2px)
}
.contact-form button {
    border:0;
    background:#ff3869;
    color:#fff;
    padding:16px 24px;
    font:800 10px Oxanium;
    letter-spacing:1.5px;
    cursor:pointer;
    transition:.3s
}
.contact-form button:hover {
    transform:translateY(-4px);
    box-shadow:0 12px 35px #ff38694d
}
.hp {
    position:absolute!important;
    left:-9999px!important
}
.form-status {
    margin-top:18px;
    padding:12px 14px;
    font-size:13px;
    border-left:3px solid
}
.form-status.success {
    border-color:#6effa8;
    background:#6effa810
}
.form-status.error {
    border-color:#ff5577;
    background:#ff557710
}
html[data-theme=cyber] .contact-form {
    border-color:#00f7ff66;
    background:#03151bdc;
    clip-path:polygon(0 0,96% 0,100% 6%,100% 100%,4% 100%,0 94%)
}
html[data-theme=cyber] .contact-form label {
    color:#00f7ff
}
html[data-theme=cyber] .contact-form input:focus,html[data-theme=cyber] .contact-form textarea:focus {
    border-color:#00f7ff;
    box-shadow:0 0 0 3px #00f7ff15,0 0 28px #00f7ff20
}
html[data-theme=cyber] .contact-form button {
    background:#00d7df;
    color:#021013
}
html[data-theme=cyber] .contact-form button:hover {
    box-shadow:0 12px 35px #00f7ff45
}
 .delorean-wrap {
    width:min(850px,88vw);
    aspect-ratio:900/300
}
.delorean-svg {
    filter:drop-shadow(0 28px 24px #000d)
}
 @media(max-width:800px) {
    .contact-grid {
        grid-template-columns:1fr;
        gap:40px
    }
    .form-row {
        grid-template-columns:1fr
    }
    .contact-form {
        padding:22px
    }
    .contact {
        padding:85px 0
    }
    .delorean-wrap {
        width:94vw
    }

}

.delorean-wrap {
    width:min(780px,84vw);
    aspect-ratio:1/1;
    top:54%;
    filter:drop-shadow(0 28px 22px #000c)
}
 .delorean-reference {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    mix-blend-mode:screen;
    filter:contrast(1.08) saturate(.92);
    user-select:none;
    -webkit-user-drag:none
}

.flux-overlay {
    position:absolute;
    left:46%;
    top:42%;
    width:9%;
    height:12%;
    opacity:0;
    filter:drop-shadow(0 0 10px #a8ffe8)
}
 .flux-overlay i {
    position:absolute;
    left:50%;
    top:50%;
    width:3px;
    height:52%;
    background:#c8fff0;
    transform-origin:50% 100%;
    border-radius:3px;
    box-shadow:0 0 8px #79ffd8
}
 .flux-overlay i:nth-child(1) {
    transform:translate(-50%,-100%)
}
.flux-overlay i:nth-child(2) {
    transform:translate(-50%,-100%) rotate(120deg)
}
.flux-overlay i:nth-child(3) {
    transform:translate(-50%,-100%) rotate(240deg)
}
 .portal.active .flux-overlay {
    opacity:1;
    animation:fluxRef .18s 1.12s infinite alternate
}
 .portal.active .delorean-reference {
    animation:carRefGlow .18s 1.12s infinite alternate
}
 @keyframes fluxRef {
    to {
        filter:drop-shadow(0 0 24px #d9fff6);
        transform:scale(1.14)
    }

}
 @keyframes carRefGlow {
    to {
        filter:contrast(1.12) saturate(1.04) drop-shadow(0 0 12px #75ffe1)
    }

}
 @media(max-width:800px) {
    .delorean-wrap {
        width:min(92vw,650px);
        top:56%
    }

}

.stone-only,.medieval-only {
    display:none
}
.stone-video,.medieval-video {
    opacity:0;
    transition:opacity .7s ease
}
.retro-video,.cyber-video {
    transition:opacity .7s ease
}
 html[data-theme=stone] .stone-only,html[data-theme=medieval] .medieval-only {
    display:block
}
html[data-theme=stone] .retro-only,html[data-theme=stone] .cyber-only,html[data-theme=medieval] .retro-only,html[data-theme=medieval] .cyber-only {
    display:none!important
}
 html[data-theme=stone] .stone-video {
    opacity:.66
}
html[data-theme=medieval] .medieval-video {
    opacity:.66
}
html[data-theme=stone] .retro-video,html[data-theme=stone] .cyber-video,html[data-theme=medieval] .retro-video,html[data-theme=medieval] .cyber-video {
    opacity:0
}
 .era-picker {
    margin-left:auto;
    display:flex;
    gap:4px;
    padding:4px;
    border:1px solid #ffffff26;
    background:#090612cc;
    border-radius:9px
}
.era-option {
    border:0;
    background:transparent;
    color:#aaa;
    padding:7px 9px;
    cursor:pointer;
    border-radius:6px;
    transition:.28s;
    min-width:62px
}
.era-option b,.era-option small {
    display:block
}
.era-option b {
    font:700 8px Oxanium;
    letter-spacing:.7px
}
.era-option small {
    font:7px Inter;
    margin-top:3px;
    opacity:.65
}
.era-option:hover {
    color:#fff;
    transform:translateY(-2px);
    background:#ffffff0d
}
.era-option.active {
    color:#fff;
    background:#ff386933;
    box-shadow:inset 0 0 0 1px #ff668d66
}
html[data-theme=cyber] .era-option.active {
    background:#00f7ff20;
    box-shadow:inset 0 0 0 1px #00f7ff77
}
html[data-theme=stone] .era-option.active {
    background:#b8753038;
    box-shadow:inset 0 0 0 1px #d49a5b88
}
html[data-theme=medieval] .era-option.active {
    background:#c99b3d30;
    box-shadow:inset 0 0 0 1px #e0bd6c88
}
 html[data-theme=stone] body {
    background:#100d08;
    color:#f3e5c6;
    font-family:Inter,sans-serif
}
html[data-theme=stone] header {
    background:#100d08dd;
    border-bottom-color:#9b6d3a55
}
html[data-theme=stone] .video-shade {
    background:linear-gradient(90deg,#120e08f2 4%,#1d130bd0 43%,#291a0b4d 74%,#100b06c9),linear-gradient(0deg,#100d08 0%,transparent 50%)
}
html[data-theme=stone] .hero:after {
    content:'';
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 70% 30%,transparent,#0c080477 72%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
    mix-blend-mode:multiply;
    pointer-events:none
}
html[data-theme=stone] .eyebrow,html[data-theme=stone] .kicker {
    color:#e2a65f
}
html[data-theme=stone] h1 {
    font-family:Georgia,serif;
    letter-spacing:-4px;
    text-shadow:3px 5px #24150b
}
html[data-theme=stone] h1 strong {
    color:#e6b46c
}
html[data-theme=stone] h2,html[data-theme=stone] h3 {
    font-family:Georgia,serif
}
html[data-theme=stone] .actions a:first-child {
    background:#a7632c;
    border-color:#d59a5d
}
html[data-theme=stone] .actions a:last-child {
    border-color:#c49158;
    color:#f0d4a9
}
.stone-badge {
    position:absolute;
    right:7%;
    bottom:12%;
    z-index:7;
    width:185px;
    height:155px;
    padding:28px 25px;
    background:#6e4b2d;
    clip-path:polygon(8% 0,92% 5%,100% 80%,82% 100%,11% 92%,0 20%);
    box-shadow:0 20px 40px #0008;
    transform:rotate(-4deg);
    transition:.35s
}
.stone-badge:hover {
    transform:rotate(1deg) scale(1.05)
}
.stone-badge b {
    font:900 52px Georgia
}
.stone-badge span,.stone-badge small {
    display:block;
    font:700 9px Oxanium;
    letter-spacing:1px
}
.stone-badge small {
    margin-top:8px;
    color:#e7bd7e
}
.stone-about-prop {
    min-height:220px;
    padding:30px;
    background:#6b5037;
    color:#f5dfba;
    clip-path:polygon(3% 4%,96% 0,100% 94%,7% 100%,0 20%);
    box-shadow:0 25px 55px #0008;
    transition:.35s
}
.stone-about-prop:hover {
    transform:translateY(-8px) rotate(1deg)
}
.stone-about-prop span {
    font:900 50px Georgia
}
.stone-about-prop b {
    display:block;
    font:900 22px Georgia;
    margin:20px 0
}
.stone-about-prop small {
    font:700 8px Oxanium
}
html[data-theme=stone] .about-section {
    background:linear-gradient(135deg,#171009,#24170d)
}
html[data-theme=stone] .dark {
    background:#0d0a07
}
html[data-theme=stone] .cards article,html[data-theme=stone] .projects article {
    border-color:#9b6b3d66;
    background:#1a120bc9;
    box-shadow:inset 0 0 40px #6c3d1615
}
html[data-theme=stone] .cards article:hover,html[data-theme=stone] .projects article:hover {
    border-color:#d29b5d;
    transform:translateY(-8px) rotate(.4deg);
    box-shadow:0 20px 50px #0008
}
html[data-theme=stone] .contact-form {
    background:#1b120bdc;
    border-color:#a87342;
    clip-path:polygon(2% 0,98% 2%,100% 96%,4% 100%,0 12%)
}
html[data-theme=stone] .contact-form label {
    color:#dda15f
}
html[data-theme=stone] .contact-form button {
    background:#a7632c
}
 html[data-theme=medieval] body {
    background:#0d0b0a;
    color:#f7eed7
}
html[data-theme=medieval] header {
    background:#0d0b0ae6;
    border-bottom:1px solid #b68b3e55
}
html[data-theme=medieval] .video-shade {
    background:linear-gradient(90deg,#0d0b0af2 5%,#15100bce 42%,#21170b55 72%,#0c0907c9),linear-gradient(0deg,#0d0b0a 0%,transparent 48%)
}
html[data-theme=medieval] .hero:after {
    content:'';
    position:absolute;
    inset:0;
    border:12px solid transparent;
    border-image:linear-gradient(90deg,#b78c3a33,transparent,#b78c3a33) 1;
    pointer-events:none
}
html[data-theme=medieval] .eyebrow,html[data-theme=medieval] .kicker {
    color:#d9b867
}
html[data-theme=medieval] h1,html[data-theme=medieval] h2,html[data-theme=medieval] h3 {
    font-family:Georgia,serif
}
html[data-theme=medieval] h1 {
    letter-spacing:-3px;
    text-shadow:3px 4px #000
}
html[data-theme=medieval] h1 strong {
    color:#d7b45f
}
html[data-theme=medieval] .actions a:first-child {
    background:#7c1f26;
    border-color:#d0aa55
}
html[data-theme=medieval] .actions a:last-child {
    border-color:#d0aa55;
    color:#f2dc9b
}
.medieval-seal {
    position:absolute;
    right:8%;
    bottom:14%;
    z-index:7;
    width:170px;
    height:170px;
    border:4px double #d2ad59;
    border-radius:50%;
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:#571820dd;
    box-shadow:0 0 0 9px #57182088,0 20px 50px #000b;
    transform:rotate(6deg);
    transition:.4s
}
.medieval-seal:hover {
    transform:rotate(-3deg) scale(1.07)
}
.medieval-seal b {
    font:900 52px Georgia;
    color:#f0d487
}
.medieval-seal span {
    width:120px;
    text-align:center;
    font:700 8px Oxanium;
    letter-spacing:1px
}
.medieval-about-prop {
    min-height:235px;
    padding:30px;
    background:#d8c59a;
    color:#291c12;
    border:8px double #6f4b23;
    box-shadow:10px 13px 0 #4c241d,0 30px 60px #0008;
    transform:rotate(2deg);
    transition:.35s
}
.medieval-about-prop:hover {
    transform:rotate(-1deg) translateY(-8px)
}
.medieval-about-prop span {
    font:700 13px Georgia;
    letter-spacing:3px
}
.medieval-about-prop b {
    display:block;
    font:900 27px Georgia;
    margin:30px 0
}
.medieval-about-prop small {
    font:700 8px Oxanium
}
html[data-theme=medieval] .about-section {
    background:linear-gradient(120deg,#18120c,#271b0e)
}
html[data-theme=medieval] .dark {
    background:#100d09
}
html[data-theme=medieval] .cards article,html[data-theme=medieval] .projects article {
    background:#17110bc9;
    border:1px solid #8f6b35
}
html[data-theme=medieval] .cards article:hover,html[data-theme=medieval] .projects article:hover {
    border-color:#e0bd68;
    transform:translateY(-9px);
    box-shadow:0 20px 55px #000a,inset 0 0 35px #d2a94b0c
}
html[data-theme=medieval] .contact-form {
    background:#17110be8;
    border:2px solid #9f783d
}
html[data-theme=medieval] .contact-form label {
    color:#d6b362
}
html[data-theme=medieval] .contact-form button {
    background:#7b2026;
    color:#f6e3b3;
    border:1px solid #cda957
}
 .cards article,.projects article {
    position:relative;
    overflow:hidden
}
.cards article:after,.projects article:after {
    content:'';
    position:absolute;
    width:180px;
    height:180px;
    left:var(--mx,-300px);
    top:var(--my,-300px);
    transform:translate(-50%,-50%);
    background:radial-gradient(circle,#ffffff14,transparent 65%);
    pointer-events:none;
    opacity:0;
    transition:opacity .25s
}
.cards article:hover:after,.projects article:hover:after {
    opacity:1
}
 @media(max-width:980px) {
    .links {
        display:none
    }
    .era-picker {
        margin-left:auto
    }
    .era-option {
        min-width:48px;
        padding:7px 5px
    }
    .era-option b {
        font-size:7px
    }
    .era-option small {
        font-size:6px
    }

}
 @media(max-width:650px) {
    nav {
        gap:12px
    }
    .logo span {
        display:none
    }
    .shell {
        width:min(100% - 28px,1180px)
    }
    .era-picker {
        gap:1px
    }
    .era-option {
        min-width:41px
    }
    .era-option b {
        font-size:6px;
        letter-spacing:0
    }
    .era-option small {
        font-size:5px
    }
    .stone-badge,.medieval-seal {
        right:5%;
        bottom:7%;
        transform:scale(.72)
    }
    .hero-content {
        padding-bottom:100px
    }

}

/* ===== V6 — a négy korszak saját vizuális nyelvet kap ===== */
/* ŐSKOR: organikus, szabálytalan, barlangfal — nincs klasszikus UI-kártya érzet */ html[data-theme=stone] .section {
    position:relative
}
 html[data-theme=stone] .section:before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-28px;
    height:58px;
    background:#171009;
    clip-path:polygon(0 45%,4% 30%,9% 62%,15% 35%,22% 60%,30% 28%,38% 64%,47% 33%,56% 57%,65% 25%,74% 61%,84% 31%,92% 55%,100% 36%,100% 100%,0 100%);
    z-index:2
}
 html[data-theme=stone] .about-shell {
    grid-template-columns:.8fr 1.2fr;
    gap:90px;
    align-items:center
}
 html[data-theme=stone] .about-heading {
    transform:rotate(-1.5deg)
}
 html[data-theme=stone] .about-heading h3 {
    font-size:clamp(42px,6vw,86px);
    line-height:.9;
    text-transform:uppercase
}
 html[data-theme=stone] .about-copy {
    font-size:18px;
    max-width:570px
}
 html[data-theme=stone] .cards {
    display:flex;
    flex-wrap:wrap;
    gap:42px;
    align-items:flex-start
}
 html[data-theme=stone] .cards article {
    flex:1 1 250px;
    border:0!important;
    border-radius:46% 54% 44% 56% / 12% 17% 83% 88%;
    padding:52px 35px;
    background:linear-gradient(145deg,#4b3523,#21170f)!important;
    box-shadow:inset 0 0 0 2px #a9794938,inset 15px 15px 35px #0005,0 28px 45px #0008!important;
    min-height:280px
}
 html[data-theme=stone] .cards article:nth-child(even) {
    transform:translateY(36px) rotate(2deg)
}
 html[data-theme=stone] .cards article:hover {
    transform:translateY(-12px) rotate(-2deg) scale(1.025)!important
}
 html[data-theme=stone] .projects {
    display:block
}
 html[data-theme=stone] .projects article {
    width:min(82%,850px);
    margin:0 0 42px;
    border:0!important;
    border-left:10px solid #9b6b3d!important;
    border-radius:4px 45px 8px 35px;
    padding:40px 46px;
    background:linear-gradient(100deg,#25170d 0%,#17100a 75%,transparent)!important
}
 html[data-theme=stone] .projects article:nth-child(even) {
    margin-left:auto;
    border-left:0!important;
    border-right:10px solid #9b6b3d!important;
    text-align:right;
    background:linear-gradient(260deg,#25170d 0%,#17100a 75%,transparent)!important
}
 html[data-theme=stone] .contact-grid {
    align-items:center
}
 html[data-theme=stone] .contact-form {
    border:0!important;
    border-radius:38% 62% 45% 55% / 8% 9% 91% 92%;
    padding:55px 45px!important;
    background:#2b1d12e8!important;
    box-shadow:inset 0 0 80px #0008,0 30px 70px #0008
}
 html[data-theme=stone] input,html[data-theme=stone] textarea {
    border:0!important;
    border-bottom:2px solid #a87342!important;
    background:#130d08aa!important;
    border-radius:0!important
}

/* 1805: katonai diszpécs / metszet / térkép — világos papír, tinta, pecsét */ html[data-theme=medieval] body {
    background:#d8cfb8;
    color:#201b16;
    font-family:Georgia,'Times New Roman',serif
}
 html[data-theme=medieval] header {
    background:#17130feF;
    border-bottom:3px double #b99b61;
    color:#f3ead3
}
 html[data-theme=medieval] .hero {
    border-bottom:12px solid #201b16
}
 html[data-theme=medieval] .video-shade {
    background:linear-gradient(90deg,#17120fdc 0%,#241b13b5 36%,#32261935 70%,#17120f9e),linear-gradient(0deg,#17120f 0%,transparent 42%)
}
 html[data-theme=medieval] .hero-content {
    border-left:1px solid #d8c79a66;
    padding-left:36px
}
 html[data-theme=medieval] .hero-content:before {
    content:'FIELD DISPATCH · FK / 1805';
    display:block;
    width:max-content;
    padding:7px 11px;
    margin-bottom:20px;
    border:1px solid #d8c79a99;
    font:700 9px Inter,sans-serif;
    letter-spacing:2px;
    color:#ead7aa
}
 html[data-theme=medieval] h1 {
    font-style:italic;
    font-weight:400;
    letter-spacing:-5px!important
}
 html[data-theme=medieval] h1 strong {
    display:block;
    font-style:normal;
    text-transform:uppercase;
    letter-spacing:7px;
    color:#e1c584!important
}
 html[data-theme=medieval] .about-section {
    background:#ded5c0!important;
    color:#201b16;
    border-bottom:1px solid #81745d
}
 html[data-theme=medieval] .about-shell {
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:90px
}
 html[data-theme=medieval] .about-heading .kicker {
    color:#7b241f!important;
    font-family:Inter,sans-serif
}
 html[data-theme=medieval] .about-heading h3 {
    font-size:clamp(44px,5.6vw,78px);
    line-height:.93;
    font-weight:400
}
 html[data-theme=medieval] .about-heading h3 em {
    color:#7b241f
}
 html[data-theme=medieval] .about-copy {
    border-top:3px double #4c4437;
    border-bottom:1px solid #81745d;
    padding:28px 0;
    font-size:18px
}
 html[data-theme=medieval] .medieval-about-prop {
    background:#efe5ca!important;
    border:1px solid #75654c!important;
    box-shadow:12px 12px 0 #81745d55!important;
    color:#241d16!important;
    transform:rotate(-2deg)!important;
    position:relative
}
 html[data-theme=medieval] .medieval-about-prop:after {
    content:'FK';
    position:absolute;
    right:24px;
    bottom:18px;
    width:58px;
    height:58px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#7d2520;
    color:#e8d9b7;
    font:bold 18px Georgia;
    box-shadow:0 0 0 4px #7d252033
}
 html[data-theme=medieval] .dark {
    background:#28231d!important;
    color:#eee4cd;
    position:relative
}
 html[data-theme=medieval] .dark:before {
    content:'✦  ORDERS · PLANS · EXECUTION  ✦';
    position:absolute;
    top:28px;
    left:50%;
    transform:translateX(-50%);
    font:700 9px Inter,sans-serif;
    letter-spacing:4px;
    color:#bca67d
}
 html[data-theme=medieval] .cards {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
    border:1px solid #7d6b4e
}
 html[data-theme=medieval] .cards article {
    background:#e8dfca!important;
    color:#211c16!important;
    border:0!important;
    border-right:1px solid #8e7c5d!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:46px 34px;
    min-height:300px;
    position:relative
}
 html[data-theme=medieval] .cards article:last-child {
    border-right:0!important
}
 html[data-theme=medieval] .cards article:before {
    content:'No. ' counter(item);
    font:italic 13px Georgia;
    color:#7b241f
}
 html[data-theme=medieval] .cards article:hover {
    transform:translateY(-14px)!important;
    background:#f3ead7!important;
    box-shadow:0 24px 40px #0007!important;
    z-index:2
}
 html[data-theme=medieval] .projects {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px
}
 html[data-theme=medieval] .projects article {
    background:#e6dcc5!important;
    color:#211b15!important;
    border:1px solid #81735b!important;
    border-radius:0!important;
    box-shadow:8px 8px 0 #191510!important;
    padding:38px;
    transform:rotate(-.5deg)
}
 html[data-theme=medieval] .projects article:nth-child(even) {
    transform:rotate(.7deg)
}
 html[data-theme=medieval] .projects article:hover {
    transform:translate(-4px,-8px) rotate(0)!important;
    box-shadow:14px 16px 0 #191510!important
}
 html[data-theme=medieval] .contact {
    border-top:10px solid #211c17
}
 html[data-theme=medieval] .contact-form {
    background:#e9dfc7f2!important;
    color:#201b16!important;
    border:1px solid #75664e!important;
    border-radius:0!important;
    box-shadow:12px 12px 0 #17130f!important;
    padding:42px!important
}
 html[data-theme=medieval] .contact-form label {
    color:#63221e!important;
    font-family:Inter,sans-serif;
    letter-spacing:1px
}
 html[data-theme=medieval] .contact-form input,html[data-theme=medieval] .contact-form textarea {
    background:transparent!important;
    color:#211b15!important;
    border:0!important;
    border-bottom:1px solid #75664e!important;
    border-radius:0!important;
    font-family:Georgia,serif
}
 html[data-theme=medieval] .contact-form button {
    border-radius:0!important;
    background:#70241f!important;
    border:1px solid #3f1714!important;
    box-shadow:4px 4px 0 #28100e
}
 html[data-theme=medieval] .medieval-seal {
    border-radius:2px!important;
    width:190px!important;
    height:125px!important;
    background:#e6dbc1e8!important;
    color:#211b15!important;
    border:1px solid #8d7857!important;
    box-shadow:10px 10px 0 #17130f!important;
    transform:rotate(2deg)!important
}
 html[data-theme=medieval] .medieval-seal b {
    color:#79251f!important;
    font-style:italic
}
 html[data-theme=medieval] .medieval-seal span {
    color:#211b15!important
}
 @media(max-width:850px) {
    html[data-theme=medieval] .cards {
        grid-template-columns:1fr
    }
    html[data-theme=medieval] .cards article {
        border-right:0!important;
        border-bottom:1px solid #8e7c5d!important
    }
    html[data-theme=medieval] .projects {
        grid-template-columns:1fr
    }
    html[data-theme=stone] .projects article {
        width:100%;
        margin-left:0!important;
        text-align:left!important;
        border-right:0!important;
        border-left:8px solid #9b6b3d!important
    }

}

/* V7 — rajzolt időgép, irányérzékeny időutazás */ .delorean-wrap {
    width:min(860px,90vw);
    aspect-ratio:900/340;
    top:57%;
    filter:none
}
 .delorean-reference {
    display:none!important
}
 .delorean-drawn {
    display:block;
    width:100%;
    height:100%;
    overflow:visible;
    filter:drop-shadow(0 28px 22px #000d)
}
 .delorean-drawn .steel {
    fill:url(#steelBody);
    stroke:#d7e0e4;
    stroke-width:2
}
 .delorean-drawn .dark {
    fill:#171c20;
    stroke:#69747a;
    stroke-width:2
}
.delorean-drawn .glass {
    fill:url(#glass);
    stroke:#9bc3d0;
    stroke-width:2
}
 .delorean-drawn .wheel-tire {
    fill:#090a0b;
    stroke:#4d5357;
    stroke-width:5
}
.delorean-drawn .wheel-rim {
    fill:url(#rim);
    stroke:#c7d0d4;
    stroke-width:2
}
 .delorean-drawn .wheel-hub {
    fill:#30383d;
    stroke:#d9e0e2;
    stroke-width:2
}
.delorean-drawn .red {
    fill:#e22b35;
    filter:drop-shadow(0 0 8px #ff2438)
}
 .delorean-drawn .amber {
    fill:#f4a52d;
    filter:drop-shadow(0 0 7px #ff9a19)
}
.delorean-drawn .blue {
    stroke:#76eaff;
    stroke-width:8;
    fill:none;
    filter:drop-shadow(0 0 8px #37dfff)
}
 .delorean-drawn .rig {
    fill:#252b2f;
    stroke:#7e898e;
    stroke-width:2
}
.delorean-drawn .vent {
    fill:#0d1012;
    stroke:#667177;
    stroke-width:3
}
.delorean-drawn .cable {
    fill:none;
    stroke:#98a5aa;
    stroke-width:5
}
 .delorean-drawn .flux-core {
    fill:#b9fff5;
    filter:drop-shadow(0 0 12px #6fffe9);
    opacity:.55
}
.portal.active .flux-core {
    animation:fluxCore .16s 1.05s infinite alternate
}
 .delorean-drawn .plate {
    fill:#e9dfb6;
    stroke:#202428;
    stroke-width:2
}
.delorean-drawn text {
    font-family:Arial,sans-serif;
    font-weight:900;
    fill:#171b20
}
 .portal.forward .delorean-wrap {
    animation:deloreanForward 3.35s cubic-bezier(.34,.04,.2,1) forwards
}
.portal.reverse .delorean-wrap {
    animation:deloreanReverse 3.35s cubic-bezier(.34,.04,.2,1) forwards
}
 .portal.reverse .delorean-drawn {
    transform:scaleX(-1);
    transform-origin:center
}
.portal.reverse .fire {
    transform:scaleX(-1);
    transform-origin:center
}
 .portal.forward .portal-copy i {
    transform:none
}
.portal.reverse .portal-copy i {
    display:inline-block;
    transform:rotate(180deg)
}
 @keyframes deloreanForward {
    0% {
        transform:translate(-180vw,-50%) scale(.72);
        opacity:1
    }
    25% {
        transform:translate(-52%,-50%) scale(1)
    }
    43% {
        transform:translate(-50%,-50%) scale(1)
    }
    59% {
        transform:translate(-50%,-50%) scale(1.035);
        filter:drop-shadow(0 0 28px #9effe8)
    }
    68% {
        transform:translate(-45%,-50%) scale(1.02)
    }
    82% {
        transform:translate(45vw,-50%) scale(.74);
        opacity:1;
        filter:drop-shadow(-35px 0 25px #fff)
    }
    100% {
        transform:translate(135vw,-50%) scale(.28);
        opacity:0
    }

}
 @keyframes deloreanReverse {
    0% {
        transform:translate(80vw,-50%) scale(.72);
        opacity:1
    }
    25% {
        transform:translate(-48%,-50%) scale(1)
    }
    43% {
        transform:translate(-50%,-50%) scale(1)
    }
    59% {
        transform:translate(-50%,-50%) scale(1.035);
        filter:drop-shadow(0 0 28px #9effe8)
    }
    68% {
        transform:translate(-55%,-50%) scale(1.02)
    }
    82% {
        transform:translate(-145vw,-50%) scale(.74);
        opacity:1;
        filter:drop-shadow(35px 0 25px #fff)
    }
    100% {
        transform:translate(-235vw,-50%) scale(.28);
        opacity:0
    }

}
 @keyframes fluxCore {
    to {
        opacity:1;
        filter:drop-shadow(0 0 24px #bafff7)
    }

}
 @media(max-width:800px) {
    .delorean-wrap {
        width:104vw;
        top:58%
    }

}

/* V8 — Őskor és Újkor teljesen saját vizuális nyelve */ .future-moon {
    position:absolute;
    z-index:2;
    right:9%;
    top:14%;
    width:250px;
    height:250px;
    border-radius:50%;
    background:radial-gradient(circle at 35% 32%,#dffcff 0 8%,#91dfe8 26%,#285b72 58%,#07151f 76%);
    box-shadow:0 0 45px #78efff66,0 0 120px #0bdcff2c;
    opacity:.48
}
.future-moon:after {
    content:'';
    position:absolute;
    inset:14%;
    border-radius:50%;
    background:radial-gradient(circle at 65% 38%,#06131d55 0 8%,transparent 9%),radial-gradient(circle at 38% 70%,#06131d66 0 12%,transparent 13%)
}
 html:not([data-theme=cyber]) .future-moon {
    display:none!important
}

/* ŐSKOR: ne modern sectionök legyenek, hanem barlangfal / törzsi jelek */ html[data-theme=stone] .hero-content {
    max-width:760px;
    padding:110px 48px 55px 58px;
    background:linear-gradient(90deg,#130c06d9,#24150b9c 72%,transparent);
    clip-path:polygon(0 3%,94% 0,100% 13%,96% 88%,82% 100%,4% 96%);
    border-left:7px solid #8e6038
}
 html[data-theme=stone] .hero h1 {
    font-family:Georgia,serif!important;
    font-size:clamp(58px,9vw,126px)!important;
    letter-spacing:-6px!important;
    text-transform:uppercase;
    transform:rotate(-1deg);
    text-shadow:4px 6px 0 #1b1008,0 0 35px #d88a3a33!important
}
 html[data-theme=stone] .hero h1 strong {
    -webkit-text-stroke:0!important;
    color:#d7aa6c!important;
    font-style:italic
}
 html[data-theme=stone] .hero h2 {
    font-family:'Kalam',cursive!important;
    color:#e2b978!important;
    max-width:650px;
    transform:rotate(.4deg)
}
 html[data-theme=stone] .hero .lead {
    font-size:18px;
    color:#f0dfbf;
    max-width:670px
}
 html[data-theme=stone] .actions a {
    border:0!important;
    background:#704725!important;
    clip-path:polygon(4% 0,96% 5%,100% 82%,88% 100%,0 92%);
    font-family:Georgia,serif!important;
    font-size:13px!important;
    transition:.25s
}
 html[data-theme=stone] .actions a:hover {
    transform:rotate(-2deg) translateY(-6px) scale(1.04);
    filter:brightness(1.25)
}
 html[data-theme=stone] .about-section {
    position:relative;
    background:#1a110a!important;
    background-image:radial-gradient(circle at 10% 20%,#8b5b3222 0 2px,transparent 3px),radial-gradient(circle at 70% 50%,#c48b4d16 0 2px,transparent 3px)!important;
    background-size:90px 80px,130px 110px!important
}
 html[data-theme=stone] .about-shell {
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:70px;
    align-items:center
}
 html[data-theme=stone] .about-heading h3 {
    font-family:Georgia,serif!important;
    letter-spacing:-3px!important;
    font-weight:400!important;
    transform:rotate(-1deg)
}
 html[data-theme=stone] .about-heading h3 em {
    color:#d79a56!important;
    font-style:italic!important
}
 html[data-theme=stone] .about-copy {
    font-size:20px;
    line-height:1.9;
    border-left:5px solid #8d5e34;
    padding:20px 0 20px 32px;
    position:relative
}
 html[data-theme=stone] .about-copy:before {
    content:'𐂂  ◉  𐂂';
    display:block;
    color:#bd8248;
    font-size:28px;
    letter-spacing:18px;
    margin-bottom:20px
}
 html[data-theme=stone] .stone-about-prop {
    transform:rotate(4deg)!important;
    transition:.35s
}
html[data-theme=stone] .stone-about-prop:hover {
    transform:rotate(-3deg) scale(1.06)!important
}
 html[data-theme=stone] #skills .kicker:after {
    content:'  ·  A TŰZ UTÁN EZ VOLT A MÁSODIK LEGNAGYOBB TALÁLMÁNY';
    color:#d0a36f
}
 html[data-theme=stone] #work>h3 {
    font-family:Georgia,serif!important;
    font-weight:400!important
}
html[data-theme=stone] #work>h3 em {
    font-style:italic!important;
    color:#c98a4b!important
}
 html[data-theme=stone] .art {
    background:#21150c!important;
    border-radius:48% 52% 43% 57% / 10% 14% 86% 90%!important;
    box-shadow:inset 0 0 45px #000b!important
}
.stone-only.era-ornament {
    opacity:.75
}

/* ÚJKOR: viktoriánus/naplós/korai ipari, nem katonai */ html[data-theme=medieval] body {
    background:#d9d0b9;
    color:#241e17;
    font-family:Georgia,'Times New Roman',serif;
    background-image:repeating-linear-gradient(0deg,#00000008 0 1px,transparent 1px 5px)
}
 html[data-theme=medieval] header {
    background:#241c16f2;
    border-bottom:1px solid #aa8a55
}
 html[data-theme=medieval] .hero-content {
    border:0!important;
    padding:48px 54px 54px!important;
    background:#e6dcc6e8;
    color:#201a14;
    box-shadow:14px 14px 0 #1b1510aa;
    transform:rotate(-.45deg);
    max-width:760px;
    clip-path:polygon(0 0,97% 1%,100% 95%,3% 100%)
}
 html[data-theme=medieval] .hero-content:before {
    content:'THE FK CHRONICLE · MDCCCV · KÜLÖNKIADÁS'!important;
    color:#6f211d!important;
    border:0!important;
    border-top:3px double #33291f!important;
    border-bottom:1px solid #75644e!important;
    width:100%!important;
    padding:10px 0!important;
    font-family:Georgia,serif!important;
    text-align:center;
    letter-spacing:3px!important
}
 html[data-theme=medieval] .eyebrow {
    color:#6f211d!important;
    font-family:Georgia,serif!important
}
 html[data-theme=medieval] .hero h1 {
    font-family:Georgia,serif!important;
    color:#201a14!important;
    text-shadow:none!important;
    font-size:clamp(60px,9vw,125px)!important;
    line-height:.78!important;
    letter-spacing:-7px!important
}
 html[data-theme=medieval] .hero h1 strong {
    color:#6f211d!important;
    -webkit-text-stroke:0!important;
    font-size:.48em;
    letter-spacing:12px!important;
    border-top:1px solid #6d5a43;
    border-bottom:1px solid #6d5a43;
    padding:12px 0;
    margin-top:16px
}
 html[data-theme=medieval] .hero h2 {
    font-family:Georgia,serif!important;
    color:#2c251d!important;
    font-style:italic;
    font-size:clamp(24px,3vw,38px)!important
}
 html[data-theme=medieval] .hero .lead {
    color:#3e3429!important;
    line-height:1.65;
    max-width:650px
}
 html[data-theme=medieval] .actions a {
    font-family:Georgia,serif!important;
    border:1px solid #3b3024!important;
    color:#241d16!important;
    background:transparent!important;
    font-size:13px!important;
    letter-spacing:1px!important;
    box-shadow:3px 3px 0 #75644d;
    transition:.25s
}
.hero .actions a:first-child {
    background:#70251f!important;
    color:#f3e8cf!important
}
.hero .actions a:hover {
    transform:translate(-2px,-4px) rotate(-1deg);
    box-shadow:7px 8px 0 #33281f
}
 html[data-theme=medieval] .medieval-seal {
    right:5%!important;
    bottom:7%!important;
    width:225px!important;
    height:auto!important;
    min-height:145px;
    padding:26px!important;
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    background:#d9c79f!important;
    border:3px double #5f4b32!important;
    box-shadow:12px 12px 0 #17120d!important
}
.medieval-seal b {
    font:italic 42px Georgia!important
}
.medieval-seal span {
    font:700 12px/1.5 Georgia!important;
    letter-spacing:2px!important
}
 html[data-theme=medieval] .about-section {
    background:#e8dfca!important
}
.about-section .medieval-about-prop {
    transition:.35s
}
html[data-theme=medieval] .medieval-about-prop:hover {
    transform:rotate(2deg) translateY(-8px)!important;
    box-shadow:18px 20px 0 #81745d55!important
}
 html[data-theme=medieval] .about-heading h3:after {
    content:'„A kliens szerint csak egy apró módosítás.” — névtelen fejlesztő, 1805';
    display:block;
    font:italic 15px/1.5 Georgia;
    margin-top:28px;
    letter-spacing:0;
    color:#6f5c43
}
 html[data-theme=medieval] #skills {
    background:#282018!important;
    background-image:linear-gradient(90deg,#0000 49.7%,#bba77d18 50%,#0000 50.3%)!important
}
 html[data-theme=medieval] #skills .kicker {
    font-family:Georgia,serif!important;
    color:#d6bd8d!important
}
html[data-theme=medieval] #skills .kicker:after {
    content:' · A GŐZGÉP MELLETT A PHP IS ÜZEMEL';
    font-style:italic
}
 html[data-theme=medieval] .cards {
    counter-reset:item
}
.cards article {
    counter-increment:item
}
 html[data-theme=medieval] .cards article h4 {
    font-family:Georgia,serif!important;
    font-size:25px!important;
    font-weight:400!important;
    border-bottom:1px solid #8b7657;
    padding-bottom:12px
}
 html[data-theme=medieval] .projects article .art {
    filter:sepia(.75) contrast(.9);
    background:repeating-linear-gradient(45deg,#b9a47a,#b9a47a 2px,#d8c8a7 2px,#d8c8a7 5px)!important;
    border:6px double #4d4031;
    height:230px
}
.projects article .fake-ui {
    border-color:#4d4031!important;
    transform:rotate(-1deg)!important
}
.projects article .fake-ui b {
    font-family:Georgia,serif!important;
    color:#5e211d!important
}
 html[data-theme=medieval] .contact-copy h3 {
    font-family:Georgia,serif!important;
    font-weight:400!important
}
.contact-copy h3 em {
    color:#8a2d25!important;
    font-style:italic!important
}

/* Visszafelé az autó ténylegesen az ellenkező irányba néz */ .portal.reverse .delorean-wrap .delorean-drawn {
    transform:scaleX(-1)!important;
    transform-origin:50% 50%!important
}
 .portal.forward .delorean-wrap .delorean-drawn {
    transform:scaleX(1)!important
}
 @media(max-width:850px) {
    html[data-theme=stone] .hero-content,html[data-theme=medieval] .hero-content {
        padding:38px 28px!important;
        transform:none!important
    }
    html[data-theme=stone] .about-shell,html[data-theme=medieval] .about-shell {
        grid-template-columns:1fr!important
    }
    .future-moon {
        width:150px;
        height:150px;
        right:-20px;
        top:16%
    }

}

/* V9 — Őskor / Újkor layout javítások + olvashatóság + helyes autóirány */
/* A Studio blokk: ne legyen egymásba ágyazott, túl keskeny 3 oszlop */ html[data-theme=stone] .about-shell, html[data-theme=medieval] .about-shell {
    display:block!important
}
 html[data-theme=stone] .about-heading, html[data-theme=medieval] .about-heading {
    max-width:920px;
    margin-bottom:58px
}
 html[data-theme=stone] .about-heading h3, html[data-theme=medieval] .about-heading h3 {
    margin-bottom:0
}
 html[data-theme=stone] .about-content, html[data-theme=medieval] .about-content {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 320px!important;
    gap:72px!important;
    align-items:center!important
}
 html[data-theme=stone] .about-copy, html[data-theme=medieval] .about-copy {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:48px!important;
    max-width:none!important;
    width:100%!important
}
 html[data-theme=stone] .about-copy p, html[data-theme=medieval] .about-copy p {
    min-width:0!important;
    width:auto!important;
    max-width:none!important
}
 html[data-theme=stone] .stone-about-prop, html[data-theme=medieval] .medieval-about-prop {
    width:100%!important;
    max-width:320px!important;
    justify-self:end!important
}

/* Őskor: a szöveg tényleg barlangfalon ül, ne vesszen el a videón */ html[data-theme=stone] .hero-content {
    background:linear-gradient(100deg,#100904f5 0%,#1c1008ed 67%,#21140bcf 100%)!important;
    box-shadow:22px 25px 70px #0008,inset 0 0 70px #0005!important
}
 html[data-theme=stone] .hero .eyebrow, html[data-theme=stone] .hero h1, html[data-theme=stone] .hero h2, html[data-theme=stone] .hero .lead {
    filter:drop-shadow(0 2px 2px #000) drop-shadow(0 0 12px #000)
}
 html[data-theme=stone] .hero .lead {
    color:#fff0d2!important;
    font-weight:500!important
}
 html[data-theme=stone] .hero h2 {
    color:#ffc978!important
}
 html[data-theme=stone] .stone-badge {
    background:#3b2516f2!important;
    color:#fff0d0!important;
    box-shadow:0 24px 55px #000c,inset 0 0 0 2px #b77b4666!important
}

/* Újkor: világos újságlap helyett kontrasztos, tintás lap a mozgó videó előtt */ html[data-theme=medieval] .hero-content {
    background:linear-gradient(135deg,#f3e7cceF,#dfcfaaeF)!important;
    box-shadow:16px 18px 0 #17110dcc,0 30px 75px #0009!important
}
 html[data-theme=medieval] .hero .eyebrow, html[data-theme=medieval] .hero h1, html[data-theme=medieval] .hero h2, html[data-theme=medieval] .hero .lead {
    text-shadow:none!important;
    filter:none!important
}
 html[data-theme=medieval] .hero .lead {
    color:#2a2118!important;
    font-weight:600!important
}
 html[data-theme=medieval] .medieval-seal {
    background:#ead9b3f5!important
}

/* Újkor 02: mind a négy eszköz egy sorban desktopon */ html[data-theme=medieval] .cards {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important
}
 html[data-theme=medieval] .cards article {
    min-width:0!important;
    padding:42px 26px!important
}
 html[data-theme=medieval] .cards article h4 {
    font-size:21px!important;
    overflow-wrap:anywhere
}
 html[data-theme=medieval] .cards article:last-child {
    border-right:0!important
}

/* Újkor 03: három projekt egy sorban + a szekciócím ne törjön */ html[data-theme=medieval] #work>.kicker {
    white-space:nowrap!important
}
 html[data-theme=medieval] .projects {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:24px!important
}
 html[data-theme=medieval] .projects article {
    min-width:0!important;
    padding:26px!important
}
 html[data-theme=medieval] .projects article .art {
    height:210px!important
}

/* A DeLorean orra mindig a haladási irányba néz. Az SVG alapból balra néz. */ .portal.forward .delorean-wrap .delorean-drawn {
    transform:scaleX(-1)!important;
    transform-origin:50% 50%!important
}
 .portal.reverse .delorean-wrap .delorean-drawn {
    transform:scaleX(1)!important;
    transform-origin:50% 50%!important
}
 @media(max-width:1050px) {
     html[data-theme=medieval] .cards {
        grid-template-columns:repeat(2,minmax(0,1fr))!important
    }
     html[data-theme=medieval] .cards article:nth-child(2) {
        border-right:0!important
    }
     html[data-theme=medieval] .projects {
        grid-template-columns:repeat(2,minmax(0,1fr))!important
    }

}
 @media(max-width:850px) {
     html[data-theme=stone] .about-content,html[data-theme=medieval] .about-content {
        grid-template-columns:1fr!important;
        gap:38px!important
    }
     html[data-theme=stone] .about-copy,html[data-theme=medieval] .about-copy {
        grid-template-columns:1fr!important;
        gap:22px!important
    }
     html[data-theme=stone] .stone-about-prop,html[data-theme=medieval] .medieval-about-prop {
        justify-self:start!important
    }
     html[data-theme=medieval] .projects {
        grid-template-columns:1fr!important
    }
     html[data-theme=medieval] #work>.kicker {
        white-space:normal!important
    }

}
 @media(max-width:620px) {
    html[data-theme=medieval] .cards {
        grid-template-columns:1fr!important
    }

}

/* ===== V10 — korszak-specifikus finomhangolás ===== */
/* Az 1805 / Újkori manufaktúra kártya kizárólag Újkorban jelenhet meg. */ html:not([data-theme="medieval"]) .medieval-seal {
    display:none!important
}
 html[data-theme="medieval"] .medieval-seal {
    display:flex!important
}

/* ÚJKOR — papír/tinta kontraszt, semmi halvány lila */ html[data-theme="medieval"] .about-copy, html[data-theme="medieval"] .about-copy p, html[data-theme="medieval"] .cards p, html[data-theme="medieval"] .projects p, html[data-theme="medieval"] .projects small {
    color:#2b231a!important
}
 html[data-theme="medieval"] .contact .video-shade {
    background:linear-gradient(90deg,#17100ce8 0%,#21160fcf 48%,#17100caa 100%)!important
}
 html[data-theme="medieval"] .contact-copy {
    background:#eadfc6f2;
    color:#241c14;
    padding:34px 38px;
    border:3px double #725d42;
    box-shadow:10px 12px 0 #17110d;
    transform:rotate(-.35deg)
}
 html[data-theme="medieval"] .contact-copy p {
    color:#70251f!important;
    font-weight:800
}
 html[data-theme="medieval"] .contact-copy h3 {
    color:#241c14!important;
    text-shadow:none!important;
    margin-bottom:26px
}
 html[data-theme="medieval"] .contact-copy h3 em {
    color:#7d2721!important
}
 html[data-theme="medieval"] .contact-copy>span {
    color:#3b3025!important;
    font-weight:600
}
 html[data-theme="medieval"] .contact-form input::placeholder,html[data-theme="medieval"] .contact-form textarea::placeholder {
    color:#655746!important
}

/* RETRO 1986 — saját neon/VHS paletta, ne örököljön barna/újkori elemeket. */ html[data-theme="retro"] .hero .actions a:first-child {
    background:#ff3869!important;
    color:#fff!important;
    border-color:#ff6d9a!important;
    box-shadow:5px 5px 0 #6f2aff,0 0 24px #ff386955!important
}
 html[data-theme="retro"] .hero .actions a:last-child {
    background:#180a20cc!important;
    color:#ffd9ef!important;
    border-color:#8f4cff!important;
    box-shadow:0 0 20px #8f4cff28!important
}
 html[data-theme="retro"] .hero .actions a:hover {
    transform:translateY(-5px) skewX(-2deg)!important;
    filter:saturate(1.25);
    box-shadow:8px 9px 0 #6f2aff,0 0 35px #ff3b8d66!important
}
 html[data-theme="retro"] .contact {
    background:#100612;
    color:#fff4fb
}
 html[data-theme="retro"] .contact .video-shade {
    background:linear-gradient(90deg,#120713ed 0%,#32103fbd 48%,#110714d8 100%)!important
}
 html[data-theme="retro"] .contact-copy p {
    color:#ff759d!important
}
.contact-copy h3 {
    transition:text-shadow .3s
}
 html[data-theme="retro"] .contact-copy h3 {
    color:#fff4e8!important;
    text-shadow:3px 3px 0 #682f88!important
}
 html[data-theme="retro"] .contact-copy h3 em {
    color:#ff6e9f!important
}
 html[data-theme="retro"] .contact-copy>span {
    color:#f0d7e7!important
}
 html[data-theme="retro"] .contact-form {
    background:#180b1ddd!important;
    border:2px solid #ff5c91!important;
    box-shadow:10px 10px 0 #612b7c,0 0 35px #ff4c8d20!important
}
 html[data-theme="retro"] .contact-form label {
    color:#ff9dbb!important
}
 html[data-theme="retro"] .contact-form input,html[data-theme="retro"] .contact-form textarea {
    background:#0b0710e8!important;
    border-color:#8848a8!important;
    color:#fff!important
}
 html[data-theme="retro"] .contact-form button {
    background:#ff3e72!important;
    color:#fff!important;
    box-shadow:5px 5px 0 #6f2aff!important
}
 html[data-theme="retro"] .tape:hover {
    animation:retroTapeWobble .55s steps(2,end) infinite;
    filter:saturate(1.15)
}
 @keyframes retroTapeWobble {
    0%,100% {
        transform:rotate(-8deg) translate(0)
    }
    25% {
        transform:rotate(-6deg) translate(-2px,1px)
    }
    50% {
        transform:rotate(-9deg) translate(2px,-1px)
    }
    75% {
        transform:rotate(-7deg) translate(1px,2px)
    }

}

/* JÖVŐ 2099 — cyan/magenta HUD, barna/papír öröklés nélkül. */ html[data-theme="cyber"] .hero .actions a:first-child {
    background:#00e5ea!important;
    color:#001014!important;
    border-color:#7dffff!important;
    box-shadow:0 0 28px #00f7ff55!important
}
 html[data-theme="cyber"] .hero .actions a:last-child {
    background:#04151bd9!important;
    color:#bffcff!important;
    border-color:#ff35cf!important;
    box-shadow:0 0 22px #ff35cf25!important
}
 html[data-theme="cyber"] .hero .actions a:hover {
    transform:translateY(-4px)!important;
    clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);
    filter:brightness(1.18);
    box-shadow:0 0 40px #00f7ff66!important
}
 html[data-theme="cyber"] .contact {
    background:#02090d;
    color:#e8feff
}
 html[data-theme="cyber"] .contact .video-shade {
    background:linear-gradient(90deg,#02090df2,#051821c4 52%,#02090ddd)!important
}
 html[data-theme="cyber"] .contact-copy p {
    color:#00f7ff!important
}
 html[data-theme="cyber"] .contact-copy h3 {
    color:#f2feff!important;
    text-shadow:3px 3px 0 #063c48,0 0 22px #00f7ff28!important
}
 html[data-theme="cyber"] .contact-copy h3 em {
    color:#ff35cf!important;
    text-shadow:0 0 18px #ff35cf55!important
}
 html[data-theme="cyber"] .contact-copy>span {
    color:#b6d8dd!important
}
 html[data-theme="cyber"] .contact-form input,html[data-theme="cyber"] .contact-form textarea {
    background:#020b0fdd!important;
    color:#dfffff!important;
    border-color:#00f7ff44!important
}
 html[data-theme="cyber"] .cyber-card:hover {
    animation:cyberGlitch .32s steps(2,end) 1;
    transform:translateY(-10px)
}
 @keyframes cyberGlitch {
    0% {
        clip-path:polygon(0 0,90% 0,100% 18%,100% 100%,10% 100%,0 82%)
    }
    35% {
        clip-path:polygon(0 5%,82% 5%,100% 0,95% 95%,14% 100%,3% 78%);
        filter:hue-rotate(25deg)
    }
    70% {
        transform:translate(4px,-10px);
        filter:hue-rotate(-25deg)
    }
    100% {
        transform:translate(0,-10px)
    }

}

/* Időgép felirat */ .delorean-drawn text {
    letter-spacing:.4px
}

/* V11 — DeLorean finomhangolás + 2099 kapcsolat szöveg */ .non-cyber-contact {
    display:inline
}
 html[data-theme="cyber"] .non-cyber-contact {
    display:none!important
}
 html:not([data-theme="cyber"]) .contact-copy h3 .cyber-only {
    display:none!important
}
 .delorean-drawn .rear-lamp rect {
    filter:drop-shadow(0 0 7px #ff2638)
}
 .delorean-drawn .time-rig {
    filter:drop-shadow(0 0 5px #54eaff55)
}
 .delorean-drawn {
    shape-rendering:geometricPrecision
}
 .portal.active .delorean-drawn .blue {
    animation:deloreanBluePulse .16s 1.05s infinite alternate
}
 @keyframes deloreanBluePulse {
    to {
        stroke:#eaffff;
        filter:drop-shadow(0 0 16px #43eaff)
    }

}

/* ===== V12 polish ===== */
/* Őskor: a szerszámok legyenek rendezettek és a feliratok ne törjenek esetlegesen. */ html[data-theme="stone"] #skills .cards {
     display:grid!important;
     grid-template-columns:repeat(4,minmax(0,1fr))!important;
     gap:22px!important;
     align-items:stretch!important;
     background:transparent!important;

}
 html[data-theme="stone"] #skills .cards article {
     min-width:0!important;
     min-height:285px!important;
     padding:46px 34px!important;
     transform:none!important;
     display:flex!important;
     flex-direction:column!important;
     justify-content:center!important;

}
 html[data-theme="stone"] #skills .cards article:nth-child(even) {
    transform:translateY(18px)!important
}
 html[data-theme="stone"] #skills .cards h4 {
    font-size:clamp(18px,1.55vw,24px)!important;
    line-height:1.12!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important
}
 html[data-theme="stone"] #skills .cards p {
    font-size:16px!important;
    line-height:1.65!important;
    color:#f2dcc1!important;
    overflow-wrap:normal!important;
    word-break:normal!important
}
 html[data-theme="stone"] #skills .kicker {
    line-height:1.6!important;
    max-width:100%!important
}

/* Őskor: a három küldetés desktopon egyetlen sor. */ html[data-theme="stone"] #work .projects {
     display:grid!important;
     grid-template-columns:repeat(3,minmax(0,1fr))!important;
     gap:24px!important;
     align-items:stretch!important;

}
 html[data-theme="stone"] #work .projects article {
     width:auto!important;
     margin:0!important;
     text-align:left!important;
     border:0!important;
     border-top:8px solid #9b6b3d!important;
     border-radius:8px 34px 12px 28px!important;
     padding:28px!important;
     background:linear-gradient(155deg,#2a1b10,#15100b)!important;
     min-width:0!important;

}
 html[data-theme="stone"] #work .projects article:nth-child(even) {
    margin:0!important;
    border-right:0!important;
    border-left:0!important;
    text-align:left!important;
    background:linear-gradient(155deg,#2a1b10,#15100b)!important
}
 html[data-theme="stone"] #work .projects .art {
    height:220px!important
}

/* Korszakhoz illő focus színek minden kapcsolat űrlapon. */ html[data-theme="stone"] .contact-form input:focus,html[data-theme="stone"] .contact-form textarea:focus {
    border-bottom-color:#f0aa5e!important;
    box-shadow:0 5px 0 -3px #f0aa5e,0 10px 30px #c47a2b24!important;
    transform:translateY(-2px)
}
 html[data-theme="medieval"] .contact-form input:focus,html[data-theme="medieval"] .contact-form textarea:focus {
    border-bottom-color:#8a2d25!important;
    box-shadow:0 5px 0 -3px #8a2d25,0 10px 28px #70241f1f!important;
    transform:translateY(-2px)
}
 html[data-theme="retro"] .contact-form input:focus,html[data-theme="retro"] .contact-form textarea:focus {
    border-color:#ff5c91!important;
    box-shadow:0 0 0 3px #ff5c9124,0 0 28px #9c4dff38!important;
    transform:translateY(-2px)
}
 html[data-theme="cyber"] .contact-form input:focus,html[data-theme="cyber"] .contact-form textarea:focus {
    border-color:#00f7ff!important;
    box-shadow:0 0 0 3px #00f7ff20,0 0 32px #00f7ff36!important;
    transform:translateY(-2px)
}

/* Az animált autó teljesen grafikus: semmilyen felirat nincs rajta. */ .delorean-drawn text {
    display:none!important
}
.delorean-drawn .bttf-detail {
    pointer-events:none
}
 .portal.active .delorean-drawn .bttf-detail circle:last-child {
    animation:fluxCore .12s 1s infinite alternate
}
 @media(max-width:1100px) {
    html[data-theme="stone"] #skills .cards {
        grid-template-columns:repeat(2,minmax(0,1fr))!important
    }
    html[data-theme="stone"] #work .projects {
        grid-template-columns:repeat(2,minmax(0,1fr))!important
    }

}
 @media(max-width:720px) {
    html[data-theme="stone"] #skills .cards,html[data-theme="stone"] #work .projects {
        grid-template-columns:1fr!important
    }
    html[data-theme="stone"] #skills .cards article:nth-child(even) {
        transform:none!important
    }

}

/* V12.1 — A hero alatti neon/grid effekt csak 1986 és 2099 korszakban látszik. */ html[data-theme="stone"] .retro-fx, html[data-theme="medieval"] .retro-fx {
     display: none !important;

}
 html[data-theme="retro"] .retro-fx, html[data-theme="cyber"] .retro-fx {
     display: block !important;

}

/* ===== V13 — Eszköztár finomhangolás ===== */
/* Őskor: a kőtáblák szövege biztosan a forma belsejében marad. */ html[data-theme="stone"] #skills .cards article {
     padding:50px 42px 48px!important;
     justify-content:flex-start!important;
     overflow:hidden!important;

}
 html[data-theme="stone"] #skills .cards article .num {
    display:block!important;
    margin:8px 0 26px!important;
    flex:0 0 auto!important
}
 html[data-theme="stone"] #skills .cards h4 {
    margin:0 0 24px!important;
    font-size:clamp(17px,1.35vw,22px)!important;
    line-height:1.12!important;
    max-width:100%!important
}
 html[data-theme="stone"] #skills .cards p {
    margin:0!important;
    font-size:15px!important;
    line-height:1.55!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important
}

/* Újkor: ne legyen dupla sorszámozás (No. 1 + 01). */ html[data-theme="medieval"] #skills .cards article:before {
    content:none!important;
    display:none!important
}
 html[data-theme="medieval"] #skills .cards article .num {
    display:block!important;
    margin-bottom:28px!important;
    color:#7b241f!important;
    font:italic 13px Georgia,serif!important
}

/* Golyónyom hover — csak az Eszköztár kártyáin. */ html[data-theme="stone"] #skills .cards article, html[data-theme="medieval"] #skills .cards article {
    isolation:isolate
}
 html[data-theme="stone"] #skills .cards article:after, html[data-theme="medieval"] #skills .cards article:after {
     content:"";
    position:absolute;
    right:23px;
    top:24px;
    width:32px;
    height:32px;
    border-radius:50%;
     opacity:0;
    transform:scale(1.8) rotate(-18deg);
    pointer-events:none;
    z-index:5;
     background: radial-gradient(circle at 50% 50%,#050403 0 10%,#2a2118 11% 18%,transparent 19%), conic-gradient(from 8deg,transparent 0 8%,#21180f 9% 11%,transparent 12% 23%,#21180f 24% 27%,transparent 28% 43%,#21180f 44% 47%,transparent 48% 62%,#21180f 63% 66%,transparent 67% 82%,#21180f 83% 86%,transparent 87%);
     filter:drop-shadow(0 2px 2px #0009);
     transition:opacity .12s ease,transform .24s cubic-bezier(.2,.9,.2,1.35);

}
 html[data-theme="medieval"] #skills .cards article:after {
     background: radial-gradient(circle at 50% 50%,#17110d 0 10%,#5b4936 11% 18%,transparent 19%), conic-gradient(from 8deg,transparent 0 8%,#6d5b43 9% 11%,transparent 12% 23%,#6d5b43 24% 27%,transparent 28% 43%,#6d5b43 44% 47%,transparent 48% 62%,#6d5b43 63% 66%,transparent 67% 82%,#6d5b43 83% 86%,transparent 87%);

}
 html[data-theme="stone"] #skills .cards article:hover:after, html[data-theme="medieval"] #skills .cards article:hover:after {
    opacity:1;
    transform:scale(1) rotate(-18deg)
}
 @media(max-width:1100px) {
    html[data-theme="stone"] #skills .cards article {
        padding:46px 38px!important
    }

}

/* ===== V14 — korszak-specifikus kártya- és gombinterakciók + 88 MPH ===== */
/* V13 közös golyónyomának felülírása. */ html[data-theme="stone"] #skills .cards article:after, html[data-theme="medieval"] #skills .cards article:after {
    content:none!important
}

/* ÚJKOR — nagy, átlőtt lyuk. Az első hover után JS osztály miatt rajta marad. */ html[data-theme="medieval"] #skills .cards article {
    overflow:hidden!important;
    isolation:isolate
}
 html[data-theme="medieval"] #skills .cards article.bullet-hit:after {
     content:""!important;
    display:block!important;
    position:absolute!important;
    right:30px!important;
    top:27px!important;
    width:72px!important;
    height:72px!important;
    border-radius:50%!important;
    z-index:8!important;
    pointer-events:none!important;
    opacity:1!important;
    transform:rotate(12deg)!important;
     background:radial-gradient(circle at 50% 50%,#0a0806 0 13%,#2a2018 14% 22%,#76634a 23% 26%,transparent 27%),conic-gradient(from 3deg,transparent 0 5%,#3b2e22 6% 8%,transparent 9% 18%,#3b2e22 19% 21%,transparent 22% 34%,#3b2e22 35% 38%,transparent 39% 52%,#3b2e22 53% 56%,transparent 57% 70%,#3b2e22 71% 74%,transparent 75% 88%,#3b2e22 89% 92%,transparent 93%);
     filter:drop-shadow(0 3px 2px #0008);
    box-shadow:inset 0 0 14px #0008!important;

}
 html[data-theme="medieval"] #skills .cards article.bullet-hit {
    background-image:radial-gradient(circle at calc(100% - 66px) 63px,#00000020 0 45px,transparent 80px)!important
}

/* ŐSKOR — kővel megdobott kőtábla: rövid rázkódás + repedések/por, csak hover alatt. */ html[data-theme="stone"] #skills .cards article:hover {
    animation:stoneImpact .42s cubic-bezier(.2,.9,.3,1)!important
}
 html[data-theme="stone"] #skills .cards article:hover:after {
     content:""!important;
    display:block!important;
    position:absolute!important;
    left:68%!important;
    top:35%!important;
    width:92px!important;
    height:92px!important;
    opacity:1!important;
    z-index:7!important;
    pointer-events:none!important;
    transform:translate(-50%,-50%) rotate(9deg)!important;
     background:radial-gradient(circle,#1a1009 0 5%,#8b633e 6% 9%,transparent 10%),conic-gradient(from 5deg,transparent 0 7%,#b07a48 8% 10%,transparent 11% 22%,#b07a48 23% 25%,transparent 26% 40%,#b07a48 41% 43%,transparent 44% 58%,#b07a48 59% 61%,transparent 62% 76%,#b07a48 77% 79%,transparent 80%);
     filter:drop-shadow(0 0 7px #d59a5d88)!important;

}
 @keyframes stoneImpact {
    0% {
        transform:translate(0) rotate(0)
    }
    18% {
        transform:translate(-7px,3px) rotate(-1.3deg)
    }
    38% {
        transform:translate(5px,-2px) rotate(.8deg)
    }
    62% {
        transform:translate(-2px,1px) rotate(-.35deg)
    }
    100% {
        transform:translateY(-8px) rotate(.4deg)
    }

}

/* Minden korszak saját gomb-hover nyelve. */ html[data-theme="stone"] .actions a:hover,html[data-theme="stone"] .contact-form button:hover {
    animation:stoneButton .38s ease;
    filter:brightness(1.2) sepia(.15)!important;
    box-shadow:7px 9px 0 #3b2414,0 0 0 2px #c78a4e!important
}
 @keyframes stoneButton {
    35% {
        transform:translate(-3px,-5px) rotate(-2deg)
    }
    65% {
        transform:translate(2px,-4px) rotate(1deg)
    }

}
 html[data-theme="medieval"] .actions a:hover,html[data-theme="medieval"] .contact-form button:hover {
    transform:translate(-3px,-5px) rotate(-.6deg)!important;
    box-shadow:8px 9px 0 #38251b!important;
    background-image:linear-gradient(110deg,transparent 42%,#8a2d2520 43% 57%,transparent 58%)!important
}
 html[data-theme="retro"] .actions a:hover,html[data-theme="retro"] .contact-form button:hover {
    animation:vhsButton .34s steps(2,end);
    text-shadow:2px 0 #00eaff,-2px 0 #ff2f8f;
    box-shadow:7px 7px 0 #6f2aff,0 0 30px #ff3b8d77!important
}
 @keyframes vhsButton {
    25% {
        transform:translate(-3px,-5px) skewX(-4deg)
    }
    50% {
        transform:translate(3px,-5px) skewX(3deg)
    }
    100% {
        transform:translateY(-5px)
    }

}
 html[data-theme="cyber"] .actions a:hover,html[data-theme="cyber"] .contact-form button:hover {
    transform:translateY(-4px) scale(1.025)!important;
    box-shadow:0 0 0 1px #00f7ff,0 0 36px #00f7ff70,inset 0 0 18px #00f7ff20!important;
    filter:brightness(1.2)!important
}

/* Időutazás — a láng közvetlenül a két keréktől indul. */ .wheel-flame {
    position:absolute;
    z-index:-1;
    height:18px;
    width:0;
    opacity:0;
    top:73%;
    border-radius:50%;
    background:linear-gradient(90deg,transparent,#ff3216 18%,#ff9d1c 45%,#fff5a5 72%,#fff);
    filter:blur(1.2px);
    box-shadow:0 0 12px #ff4b16,0 0 28px #ff8b1e;
    pointer-events:none
}
 .wheel-flame-front {
    left:12%
}
.wheel-flame-rear {
    left:68%
}
 .portal.active .wheel-flame {
    animation:wheelFlame 1.15s 1.62s ease-in forwards
}
 .portal.reverse .wheel-flame {
    transform:scaleX(-1)
}
 @keyframes wheelFlame {
    0% {
        width:0;
        opacity:0
    }
    18% {
        width:55px;
        opacity:.9
    }
    55% {
        width:150px;
        opacity:1
    }
    100% {
        width:330px;
        opacity:.15
    }

}

/* Analóg sebességmérő az autó fölött. */ .speedometer {
    position:absolute;
    z-index:12;
    left:50%;
    top:24%;
    transform:translateX(-50%);
    width:132px;
    height:132px;
    border:2px solid #bfefff;
    border-radius:50%;
    background:radial-gradient(circle,#071016dd 0 58%,#020508e8 59%);
    box-shadow:0 0 28px #51dfff44,inset 0 0 22px #51dfff20;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    opacity:0;
    transition:.25s
}
 .portal.active .speedometer {
    opacity:1
}
.speedometer>span {
    font:900 34px/1 Oxanium;
    color:#fff;
    text-shadow:0 0 12px #65e9ff
}
.speedometer>small {
    font:700 9px Oxanium;
    color:#6feaff;
    letter-spacing:2px;
    margin-top:4px
}
.speedometer>i {
    position:absolute;
    inset:8px;
    border-radius:50%;
    border:1px dashed #ffffff35
}
.speedometer>i:before {
    content:"0     22     44     66     88";
    position:absolute;
    left:4px;
    right:4px;
    top:73px;
    font:6px Oxanium;
    color:#bfefff;
    letter-spacing:.4px;
    white-space:pre;
    text-align:center
}
.speedometer>i b {
    position:absolute;
    left:50%;
    bottom:50%;
    width:3px;
    height:42px;
    background:#ff533c;
    transform-origin:50% 100%;
    transform:rotate(-118deg);
    border-radius:3px;
    box-shadow:0 0 8px #ff4b32;
    transition:transform .08s linear
}
.speedometer>i b:after {
    content:"";
    position:absolute;
    width:9px;
    height:9px;
    border-radius:50%;
    background:#fff;
    left:-3px;
    bottom:-4px
}
 .portal.active .road-lines {
    animation:roadPulse .65s .5s infinite alternate!important
}
 .portal.active .delorean-drawn {
    animation:carVelocity .22s 1.55s infinite alternate
}
 @keyframes carVelocity {
    from {
        filter:drop-shadow(0 28px 22px #000d)
    }
    to {
        filter:drop-shadow(-16px 2px 10px #dffcff88)
    }

}
 @media(max-width:800px) {
    .speedometer {
        width:96px;
        height:96px;
        top:25%
    }
    .speedometer>span {
        font-size:24px
    }
    .speedometer>i b {
        height:29px
    }
    .speedometer>i:before {
        display:none
    }

}

/* ===== V15 — kizárólag a kért finomítások ===== */
/* Korábbi kő/golyó becsapódások teljes kikapcsolása. */ html[data-theme="stone"] #skills .cards article:after, html[data-theme="medieval"] #skills .cards article:after {
    content:none!important;
    display:none!important
}
 html[data-theme="medieval"] #skills .cards article.bullet-hit {
    background-image:none!important
}

/* Őskor: ne becsapódás legyen, hanem súlyos faragott kőlap érzet. */ html[data-theme="stone"] #skills .cards article:hover {
     animation:none!important;
    transform:translateY(-10px) rotate(-.65deg) scale(1.018)!important;
     box-shadow:inset 0 0 0 2px #c08a5548,inset 12px 14px 28px #0007,0 24px 0 -15px #6e4529,0 34px 55px #000b!important;
     filter:brightness(1.08) contrast(1.04);

}

/* Újkor: papírlap/nyomdai kártya finom elemelkedése, tintás kerettel. */ html[data-theme="medieval"] #skills .cards article:hover {
     transform:translateY(-9px) rotate(-.35deg)!important;
     box-shadow:0 18px 0 -10px #7a674b55,0 28px 48px #24190e35,inset 0 0 0 2px #7e291d!important;
     filter:saturate(1.04) contrast(1.025);

}
 html[data-theme="medieval"] #skills .cards article:hover h4 {
    color:#7e291d!important
}

/* Keréktől induló, ténylegesen látható lángnyelvek. */ .wheel-flame {
    z-index:4!important;
    width:34px!important;
    height:26px!important;
    opacity:0;
    top:70%!important;
    border-radius:55% 8% 55% 8%!important;
     background:radial-gradient(ellipse at 82% 50%,#fffbd0 0 13%,#ffd23c 14% 28%,#ff7418 29% 52%,#e82d0b 53% 70%,transparent 72%)!important;
     filter:drop-shadow(0 0 7px #ff9b20) drop-shadow(0 0 14px #ff3b0d)!important;
    box-shadow:none!important;
    transform-origin:100% 50%;

}
 .wheel-flame-front {
    left:15%!important
}
.wheel-flame-rear {
    left:68%!important
}
 .portal.active .wheel-flame {
    animation:flameTongue 1.25s 1.5s ease-in forwards!important
}
 .portal.reverse .wheel-flame {
    transform-origin:0 50%
}
 @keyframes flameTongue {
     0% {
        opacity:0;
        scale:.15 .5
    }
     16% {
        opacity:.95;
        scale:1.2 .8
    }
     30% {
        opacity:1;
        scale:2.2 1.15
    }
     48% {
        opacity:1;
        scale:3.4 .8
    }
     66% {
        opacity:1;
        scale:5.2 1.2
    }
     82% {
        opacity:.9;
        scale:7.4 .72
    }
     100% {
        opacity:0;
        scale:10 .25
    }

}
 .portal.forward .wheel-flame {
    rotate:180deg
}
 .portal.reverse .wheel-flame {
    rotate:0deg
}

/* Sebességmérő: számok fix pozícióban, nem egy szövegsorban. */ .speedometer>i:before {
    content:none!important
}
 .speedometer>i em {
    position:absolute;
    font:700 7px/1 Oxanium;
    color:#bfefff;
    font-style:normal;
    text-shadow:0 0 5px #46ddff;
    transform:translate(-50%,-50%)
}
 .speedometer>i .s0 {
    left:17%;
    top:70%
}
.speedometer>i .s22 {
    left:24%;
    top:29%
}
.speedometer>i .s44 {
    left:50%;
    top:15%
}
.speedometer>i .s66 {
    left:76%;
    top:29%
}
.speedometer>i .s88 {
    left:83%;
    top:70%
}
 .speedometer>span {
    min-width:58px;
    text-align:center;
    font-variant-numeric:tabular-nums;
    letter-spacing:0!important
}
 @media(max-width:800px) {
    .speedometer>i em {
        font-size:5px
    }
    .speedometer>i .s0 {
        left:15%
    }
    .speedometer>i .s88 {
        left:85%
    }

}

/* ===== V16 — út + keréknyom + időutazási aura; stabil őskori gombok ===== */
/* Aszfaltcsík közvetlenül az autó alatt. */ .machine:before {
     content:"";
    position:absolute;
    z-index:-4;
    left:-18vw;
    right:-18vw;
    top:72%;
    height:118px;
     background:linear-gradient(180deg,#171a1e 0%,#090b0e 18%,#12151a 52%,#07090b 100%);
     border-top:2px solid #ffffff18;
    border-bottom:2px solid #000;
     box-shadow:0 -18px 42px #0008,0 22px 45px #000b,inset 0 16px 35px #ffffff05;
     transform:perspective(500px) rotateX(61deg);
    transform-origin:center top;

}
 .machine:after {
     content:"";
    position:absolute;
    z-index:-3;
    left:-18vw;
    right:-18vw;
    top:81%;
    height:4px;
     background:repeating-linear-gradient(90deg,transparent 0 90px,#e8e0b788 90px 155px,transparent 155px 245px);
     filter:drop-shadow(0 0 4px #fff3);
    opacity:.55;

}

/* A régi lebegő lángnyelveket kikapcsoljuk; helyettük az úton maradó keréknyom ég. */ .wheel-flame {
    display:none!important
}
 .delorean-wrap:before,.delorean-wrap:after {
     content:"";
    position:absolute;
    z-index:-2;
    left:9%;
    width:0;
    height:11px;
    top:77%;
    opacity:0;
    border-radius:50%;
    pointer-events:none;
     background:linear-gradient(90deg,transparent 0%,#c91f08 8%,#ff5514 24%,#ffb323 48%,#fff0a0 70%,#ff6a16 88%,transparent 100%);
     box-shadow:0 0 9px #ff3512,0 0 20px #ff7a18,0 -8px 17px #ff4b0b88;
     filter:blur(.3px);
    transform-origin:left center;

}
 .delorean-wrap:after {
    top:89%;
    left:61%
}
 .portal.active.forward .delorean-wrap:before,.portal.active.forward .delorean-wrap:after {
    animation:burnTrackForward 1.25s 1.7s ease-out forwards
}
 .portal.active.reverse .delorean-wrap:before,.portal.active.reverse .delorean-wrap:after {
    left:auto;
    right:9%;
    transform-origin:right center;
    animation:burnTrackReverse 1.25s 1.7s ease-out forwards
}
 .portal.active.reverse .delorean-wrap:after {
    right:61%
}
 @keyframes burnTrackForward {
    0% {
        width:0;
        opacity:0
    }
    15% {
        width:55px;
        opacity:1
    }
    55% {
        width:280px;
        opacity:1
    }
    100% {
        width:520px;
        opacity:.82
    }

}
 @keyframes burnTrackReverse {
    0% {
        width:0;
        opacity:0
    }
    15% {
        width:55px;
        opacity:1
    }
    55% {
        width:280px;
        opacity:1
    }
    100% {
        width:520px;
        opacity:.82
    }

}

/* Kék elektromos aura az autó körül, a gyorsulással erősödik. */ .delorean-wrap .delorean-svg {
    transition:filter .2s ease
}
 .portal.active .delorean-wrap .delorean-svg {
     animation:timeAura 1.05s 1.42s ease-in forwards;

}
 @keyframes timeAura {
     0% {
        filter:drop-shadow(0 28px 24px #000d) drop-shadow(0 0 0 transparent)
    }
     35% {
        filter:drop-shadow(0 25px 22px #000c) drop-shadow(0 0 9px #42dcff88)
    }
     70% {
        filter:drop-shadow(0 18px 18px #000a) drop-shadow(0 0 22px #31dfffcc) drop-shadow(0 0 38px #168dff88)
    }
     100% {
        filter:drop-shadow(0 10px 12px #0007) drop-shadow(0 0 34px #bff8ff) drop-shadow(0 0 65px #16bfff)
    }

}

/* Őskori gomb: nincs rázás/ugrálás, csak stabil faragott-kő mélység és fény. */ html[data-theme="stone"] .actions a, html[data-theme="stone"] .contact-form button {
    transform:none!important;
    transition:filter .22s ease,box-shadow .22s ease,background-color .22s ease!important
}
 html[data-theme="stone"] .actions a:hover, html[data-theme="stone"] .contact-form button:hover {
     animation:none!important;
    transform:none!important;
    filter:brightness(1.16) contrast(1.05)!important;
     box-shadow:inset 0 0 0 2px #d29a5b99,inset 0 -8px 16px #2c190e77,0 8px 0 #3b2414,0 13px 24px #0008!important;

}
 @media(max-width:800px) {
    .machine:before {
        top:73%;
        height:82px
    }
    .machine:after {
        top:82%
    }
    .delorean-wrap:before {
        top:78%
    }
    .delorean-wrap:after {
        top:89%
    }

}
 \n\n
/* ===== V16.1 — projektvizuálok + helyes irányú égő keréknyom ===== */
/* Előre haladásnál a láng a kerék MÖGÖTT, balra marad; visszafelé ennek tükörképe. */ .portal.active.forward .delorean-wrap:before,.portal.active.forward .delorean-wrap:after {
     left:auto!important;
    right:68%!important;
    transform-origin:right center!important;
     background:linear-gradient(90deg,transparent 0%,#ff6a16 12%,#fff0a0 30%,#ffb323 52%,#ff5514 76%,#c91f08 92%,transparent 100%)!important;

}
 .portal.active.forward .delorean-wrap:after {
    right:16%!important
}
 .portal.active.reverse .delorean-wrap:before,.portal.active.reverse .delorean-wrap:after {
     right:auto!important;
    left:68%!important;
    transform-origin:left center!important;
     background:linear-gradient(90deg,transparent 0%,#c91f08 8%,#ff5514 24%,#ffb323 48%,#fff0a0 70%,#ff6a16 88%,transparent 100%)!important;

}
 .portal.active.reverse .delorean-wrap:after {
    left:16%!important
}

/* Az FK placeholder helyett korszak- és projektspecifikus, tisztán CSS-es miniatűr jelenetek. */ .project-visual {
    position:relative;
    overflow:hidden;
    isolation:isolate
}
 .project-visual b {
    position:absolute;
    inset:0;
    display:block!important;
    font-size:0!important;
    color:transparent!important
}
 .project-visual b:before,.project-visual b:after {
    content:"";
    position:absolute;
    display:block
}
 .project-visual>i {
    position:absolute!important;
    display:block!important
}

/* Őskor: barlangrajzok — kosár / történetmesélés / fogaskerék-szerű nap + terminálkő. */ html[data-theme="stone"] .project-visual {
    background:radial-gradient(circle at 50% 42%,#b96f2c55,transparent 34%),linear-gradient(145deg,#26170d,#100b07)!important
}
 html[data-theme="stone"] .project-visual:after {
    content:"";
    position:absolute;
    inset:12%;
    opacity:.65;
    background:repeating-radial-gradient(circle at 18% 68%,#d49a5b 0 2px,transparent 3px 18px);
    clip-path:polygon(0 52%,15% 35%,28% 55%,42% 25%,57% 48%,73% 22%,100% 46%,100% 100%,0 100%)
}
 html[data-theme="stone"] .project-visual-1 b:before {
    left:34%;
    top:30%;
    width:34%;
    height:28%;
    border:7px solid #e0a15c;
    border-top:0;
    transform:skew(-8deg);
    box-shadow:0 0 12px #ff9c3a44
}
 html[data-theme="stone"] .project-visual-1 b:after {
    left:39%;
    top:62%;
    width:9px;
    height:9px;
    border:5px solid #e0a15c;
    border-radius:50%;
    box-shadow:47px 0 0 -5px #24160d,47px 0 0 0 #e0a15c
}
 html[data-theme="stone"] .project-visual-2 b:before {
    left:48%;
    top:28%;
    width:9px;
    height:56px;
    background:#e0a15c;
    transform:rotate(-20deg);
    box-shadow:-55px 40px 0 -2px #e0a15c,55px 40px 0 -2px #e0a15c
}
 html[data-theme="stone"] .project-visual-2 b:after {
    left:26%;
    top:24%;
    width:48%;
    height:48%;
    border:3px dashed #d8914c;
    border-radius:50%;
    box-shadow:0 0 24px #ff9c3a33
}
 html[data-theme="stone"] .project-visual-3 b:before {
    left:29%;
    top:27%;
    width:42%;
    height:46%;
    border:6px solid #dfa05c;
    border-radius:9px;
    box-shadow:inset 0 -16px 0 #dfa05c22
}
 html[data-theme="stone"] .project-visual-3 b:after {
    left:39%;
    top:40%;
    width:22%;
    height:6px;
    background:#dfa05c;
    box-shadow:0 14px 0 #dfa05c,0 28px 0 #dfa05c
}

/* Újkor: rézmetszet/tervrajz — boltportál / címeres brandlap / mechanikus tervrajz. */ html[data-theme="medieval"] .project-visual {
    background:linear-gradient(#d9c69f,#bba57d)!important
}
 html[data-theme="medieval"] .project-visual:after {
    content:"";
    position:absolute;
    inset:8%;
    border:1px solid #59463155;
    box-shadow:inset 0 0 0 5px #eadbbd55
}
 html[data-theme="medieval"] .project-visual-1 b:before {
    left:25%;
    top:29%;
    width:50%;
    height:42%;
    border:4px double #493728;
    background:repeating-linear-gradient(90deg,#493728 0 3px,transparent 3px 18px)
}
 html[data-theme="medieval"] .project-visual-1 b:after {
    left:22%;
    top:22%;
    width:56%;
    height:12%;
    background:repeating-linear-gradient(90deg,#7a2923 0 20px,#e4d2ad 20px 40px);
    clip-path:polygon(0 0,100% 0,94% 100%,6% 100%)
}
 html[data-theme="medieval"] .project-visual-2 b:before {
    left:31%;
    top:22%;
    width:38%;
    height:56%;
    border:5px double #5b4430;
    transform:rotate(-3deg);
    background:radial-gradient(circle at 50% 35%,#7a2923 0 13%,transparent 14%),linear-gradient(transparent 58%,#5b4430 59% 61%,transparent 62%)
}
 html[data-theme="medieval"] .project-visual-2 b:after {
    left:43%;
    top:42%;
    width:14%;
    height:14%;
    border:3px solid #7a2923;
    transform:rotate(45deg)
}
 html[data-theme="medieval"] .project-visual-3 b:before {
    left:27%;
    top:24%;
    width:46%;
    height:52%;
    border:2px solid #5b4430;
    background:repeating-linear-gradient(0deg,transparent 0 14px,#5b443033 15px),repeating-linear-gradient(90deg,transparent 0 18px,#5b443033 19px)
}
 html[data-theme="medieval"] .project-visual-3 b:after {
    left:42%;
    top:34%;
    width:34px;
    height:34px;
    border:7px dotted #7a2923;
    border-radius:50%;
    box-shadow:42px 24px 0 -8px #7a2923
}

/* 1986: CRT képernyők, projektenként más pixelgrafika. */ html[data-theme="retro"] .project-visual {
    background:linear-gradient(135deg,#100719,#291034)!important
}
 html[data-theme="retro"] .project-visual b:before {
    left:18%;
    right:18%;
    top:20%;
    bottom:22%;
    border:8px solid #1b1a24;
    border-radius:5px;
    background:#04100f;
    box-shadow:0 0 22px #ff3c8a55,inset 0 0 22px #00ffd522
}
 html[data-theme="retro"] .project-visual-1 b:after {
    left:39%;
    top:38%;
    width:22%;
    height:17%;
    border:4px solid #00e8d2;
    border-top:0;
    transform:skew(-8deg);
    box-shadow:0 0 10px #00e8d2
}
 html[data-theme="retro"] .project-visual-2 b:after {
    left:34%;
    top:35%;
    width:32%;
    height:28%;
    background:linear-gradient(#ff3c8a 0 20%,transparent 20% 40%,#8b4dff 40% 60%,transparent 60% 80%,#00e8d2 80%);
    clip-path:polygon(0 0,100% 0,86% 100%,14% 100%);
    filter:drop-shadow(0 0 7px #ff3c8a)
}
 html[data-theme="retro"] .project-visual-3 b:after {
    left:31%;
    top:33%;
    width:38%;
    height:32%;
    background:repeating-linear-gradient(0deg,#00e8d2 0 3px,transparent 3px 9px);
    clip-path:polygon(0 0,82% 0,82% 18%,100% 18%,100% 100%,0 100%);
    filter:drop-shadow(0 0 6px #00e8d2)
}

/* 2099: holografikus piktogramok. */ html[data-theme="cyber"] .project-visual {
    background:radial-gradient(circle at 50% 45%,#00f7ff22,transparent 38%),linear-gradient(135deg,#020a0f,#061a23)!important
}
 html[data-theme="cyber"] .project-visual:after {
    content:"";
    position:absolute;
    inset:11%;
    border:1px solid #00f7ff66;
    clip-path:polygon(0 0,88% 0,100% 12%,100% 100%,12% 100%,0 88%);
    box-shadow:inset 0 0 25px #00f7ff22
}
 html[data-theme="cyber"] .project-visual-1 b:before {
    left:34%;
    top:31%;
    width:32%;
    height:26%;
    border:4px solid #00f7ff;
    border-top:0;
    transform:skew(-7deg);
    filter:drop-shadow(0 0 8px #00f7ff)
}
 html[data-theme="cyber"] .project-visual-1 b:after {
    left:38%;
    top:62%;
    width:10px;
    height:10px;
    border:3px solid #ff35cf;
    border-radius:50%;
    box-shadow:48px 0 0 -3px #061a23,48px 0 0 0 #ff35cf
}
 html[data-theme="cyber"] .project-visual-2 b:before {
    left:32%;
    top:25%;
    width:36%;
    height:50%;
    border:2px solid #00f7ff;
    border-radius:50%;
    background:repeating-radial-gradient(circle,#00f7ff33 0 2px,transparent 3px 12px);
    box-shadow:0 0 22px #00f7ff66
}
 html[data-theme="cyber"] .project-visual-2 b:after {
    left:45%;
    top:38%;
    width:10%;
    height:24%;
    border-left:4px solid #ff35cf;
    border-right:4px solid #ff35cf;
    transform:skew(-14deg);
    filter:drop-shadow(0 0 6px #ff35cf)
}
 html[data-theme="cyber"] .project-visual-3 b:before {
    left:27%;
    top:27%;
    width:46%;
    height:46%;
    border:2px solid #00f7ff;
    background:repeating-linear-gradient(0deg,transparent 0 11px,#00f7ff33 12px),repeating-linear-gradient(90deg,transparent 0 16px,#00f7ff22 17px);
    box-shadow:0 0 20px #00f7ff55
}
 html[data-theme="cyber"] .project-visual-3 b:after {
    left:43%;
    top:40%;
    width:14%;
    height:20%;
    border:3px solid #ff35cf;
    border-radius:3px;
    box-shadow:0 0 9px #ff35cf
}

/* ===== V16.2 — egységes szekció-headingek korszakonként ===== */
/* A 01/02/03/04 feliratok ugyanazt a tipográfiát kapják az adott idősíkon. */ #about .kicker,#skills .kicker,#work>.kicker,.contact-copy>p {
     margin-top:0;
     font-size:11px;
     font-weight:700;
     line-height:1.4;
     letter-spacing:3px;
     text-transform:uppercase;

}

/* Korábbi, csak egy-egy szekcióhoz hozzáadott alcímek kikapcsolása. */ html[data-theme=stone] #skills .kicker:after, html[data-theme=medieval] #skills .kicker:after {
    content:none!important
}
 html[data-theme=stone] #about .kicker, html[data-theme=stone] #skills .kicker, html[data-theme=stone] #work>.kicker, html[data-theme=stone] .contact-copy>p {
     font-family:Oxanium,sans-serif!important;
     color:#e2a65f!important;
     font-style:normal!important;

}
 html[data-theme=medieval] #about .kicker, html[data-theme=medieval] #skills .kicker, html[data-theme=medieval] #work>.kicker, html[data-theme=medieval] .contact-copy>p {
     font-family:Georgia,serif!important;
     color:#7b241f!important;
     font-style:normal!important;
     font-weight:700!important;

}
 html[data-theme=retro] #about .kicker, html[data-theme=retro] #skills .kicker, html[data-theme=retro] #work>.kicker, html[data-theme=retro] .contact-copy>p {
     font-family:Oxanium,sans-serif!important;
     color:#ff5d83!important;
     font-style:normal!important;

}
 html[data-theme=cyber] #about .kicker, html[data-theme=cyber] #skills .kicker, html[data-theme=cyber] #work>.kicker, html[data-theme=cyber] .contact-copy>p {
     font-family:Oxanium,sans-serif!important;
     color:#00f7ff!important;
     font-style:normal!important;
     text-shadow:0 0 10px #00f7ff55;

}

/* ===== V17 FIXED — Jelenkor + Újkor javítások ===== */ .present-only {
    display:none
}
 .present-video {
    opacity:0;
    transition:opacity .7s ease
}
 html[data-theme=present] .present-only {
    display:block
}
 html[data-theme=present] .stone-only,html[data-theme=present] .medieval-only,html[data-theme=present] .retro-only,html[data-theme=present] .cyber-only {
    display:none!important
}
 html[data-theme=present] .stone-video,html[data-theme=present] .medieval-video,html[data-theme=present] .retro-video,html[data-theme=present] .cyber-video {
    opacity:0!important
}
 html[data-theme=present] .present-video {
    opacity:.62!important
}
 html[data-theme=stone] .present-video,html[data-theme=medieval] .present-video,html[data-theme=retro] .present-video,html[data-theme=cyber] .present-video {
    opacity:0!important
}

/* Újkor: a projektcím kiemelése ugyanaz a bordó, mint a kapcsolat kiemelése. */ html[data-theme=medieval] #work>h3 em {
    color:#8a2d25!important
}

/* Újkor: tényleges korabeli levél/irat űrlap, nem retro panel. */ html[data-theme=medieval] .contact-grid {
    align-items:center;
    gap:54px
}
 html[data-theme=medieval] .contact-form {
     position:relative;
    background:#efe3c8!important;
    color:#2a2118!important;
     padding:42px 46px 38px!important;
    border:1px solid #8b7354!important;
    border-radius:0!important;
     box-shadow:12px 14px 0 #17100ca8, inset 0 0 55px #8a6b3a18!important;
     transform:rotate(.45deg);
    clip-path:polygon(1.2% 0,98.5% 1.2%,100% 96.5%,96.8% 100%,2% 98.8%,0 3%);
     background-image:repeating-linear-gradient(0deg,transparent 0 27px,#6d56330b 28px)!important;

}
 html[data-theme=medieval] .contact-form:before {
    content:"FK DESIGN STUDIOS · LEVÉL 1805";
    display:block;
    border-bottom:3px double #7b241f;
    padding-bottom:12px;
    margin-bottom:24px;
    font:700 11px Georgia,serif;
    letter-spacing:2px;
    color:#7b241f
}
 html[data-theme=medieval] .contact-form:after {
    content:"FK";
    position:absolute;
    right:28px;
    bottom:24px;
    width:54px;
    height:54px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#7b241f;
    color:#f0dfbd;
    border:5px double #c5a87b;
    font:700 18px Georgia,serif;
    transform:rotate(-8deg)
}
 html[data-theme=medieval] .contact-form label {
    font-family:Georgia,serif!important;
    color:#4a3828!important;
    letter-spacing:.5px
}
 html[data-theme=medieval] .contact-form input,html[data-theme=medieval] .contact-form textarea {
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid #7e674b!important;
    border-radius:0!important;
    color:#261d15!important;
    font-family:Georgia,serif!important;
    padding-left:2px!important;
    box-shadow:none!important
}
 html[data-theme=medieval] .contact-form textarea {
    border:1px solid #9b8464!important;
    padding:14px!important;
    background:#fff8e52e!important
}
 html[data-theme=medieval] .contact-form button {
    background:#7b241f!important;
    color:#f5e6ca!important;
    border:0!important;
    border-radius:0!important;
    font-family:Georgia,serif!important;
    box-shadow:5px 5px 0 #493322!important
}

/* Jelenkor: külön, letisztult 2026-os arculat. */ html[data-theme=present] body {
    background:#0d1014;
    color:#f7f7f2
}
 html[data-theme=present] header {
    background:#0d1014d9;
    border-color:#ffffff18
}
 html[data-theme=present] .video-shade {
    background:linear-gradient(90deg,#0d1014f2 3%,#0d1014c9 43%,#0d101455 76%),linear-gradient(0deg,#0d1014 0%,transparent 45%)
}
 html[data-theme=present] .eyebrow,html[data-theme=present] .kicker {
    color:#b7ff45
}
 html[data-theme=present] .hero h1 {
    font-family:Inter,sans-serif;
    letter-spacing:-7px;
    text-shadow:none
}
 html[data-theme=present] .hero h1 strong {
    -webkit-text-stroke:1px #b7ff45;
    color:transparent
}
 html[data-theme=present] .hero h2 {
    font-family:Inter,sans-serif;
    font-weight:700;
    color:#f7f7f2;
    letter-spacing:-2px
}
 html[data-theme=present] .lead {
    color:#d5d8d2
}
 html[data-theme=present] .actions a {
    border-color:#b7ff45
}
 html[data-theme=present] .actions a:first-child {
    background:#b7ff45;
    color:#0d1014
}
 html[data-theme=present] .present-card {
    position:absolute;
    right:7%;
    bottom:9%;
    z-index:5;
    width:270px;
    padding:24px;
    background:#f4f5ef;
    color:#101318;
    border-radius:18px;
    box-shadow:0 24px 70px #0008;
    transform:rotate(2deg)
}
 html[data-theme=present] .present-card small,html[data-theme=present] .present-card span {
    font:700 9px Oxanium;
    letter-spacing:1px;
    color:#53604a
}
 html[data-theme=present] .present-card b {
    display:block;
    font:900 34px/1 Inter,sans-serif;
    letter-spacing:-2px;
    margin:18px 0;
    color:#101318
}
 html[data-theme=present] .section h3,html[data-theme=present] .contact h3 {
    font-family:Inter,sans-serif;
    letter-spacing:-4px
}
 html[data-theme=present] .section h3 em,html[data-theme=present] .contact h3 em {
    color:#b7ff45
}
 html[data-theme=present] .dark {
    background:#14191e
}
 html[data-theme=present] .cards {
    background:#ffffff16;
    gap:12px
}
 html[data-theme=present] .cards article,html[data-theme=present] .projects article {
    background:#151a20;
    border:1px solid #ffffff14;
    border-radius:16px
}
 html[data-theme=present] .cards b,html[data-theme=present] .projects small {
    color:#b7ff45
}
 html[data-theme=present] .cards p,html[data-theme=present] .projects p {
    color:#adb5b0
}
 html[data-theme=present] .project-visual {
    background:linear-gradient(135deg,#182127,#0d1115)!important;
    border:1px solid #b7ff4540
}
 html[data-theme=present] .project-visual b:before {
    left:24%;
    top:25%;
    width:52%;
    height:50%;
    border:2px solid #b7ff45;
    border-radius:12px;
    background:linear-gradient(135deg,#b7ff4515,transparent);
    box-shadow:0 0 25px #b7ff4522
}
 html[data-theme=present] .project-visual b:after {
    left:35%;
    top:42%;
    width:30%;
    height:4px;
    background:#b7ff45;
    box-shadow:0 12px 0 #f7f7f2,0 24px 0 #778079
}
 html[data-theme=present] #about .kicker,html[data-theme=present] #skills .kicker,html[data-theme=present] #work>.kicker,html[data-theme=present] .contact-copy>p {
    font-family:Inter,sans-serif!important;
    color:#b7ff45!important;
    font-weight:800!important
}
 html[data-theme=present] .contact-form {
    background:#11171cd9;
    border:1px solid #ffffff1c;
    border-radius:18px;
    padding:30px;
    backdrop-filter:blur(12px)
}
 html[data-theme=present] .contact-form input:focus,html[data-theme=present] .contact-form textarea:focus {
    border-color:#b7ff45!important;
    box-shadow:0 0 0 3px #b7ff4520!important
}
 html[data-theme=present] .contact-form button {
    background:#b7ff45!important;
    color:#0d1014!important;
    border-color:#b7ff45!important
}
 html[data-theme=present] .actions a:hover,html[data-theme=present] .contact-form button:hover {
    transform:translateY(-3px);
    box-shadow:0 10px 28px #b7ff4530
}

/* ===== V18 — Jelenkor editorial / Retro valódi kazetta ===== */
/* JELENKOR: szándékosan nem neon és nem sci-fi. Kortárs editorial / neo-brutalista webdesign. */ html[data-theme=present] body {
    background:#f1efe8;
    color:#111!important
}
 html[data-theme=present] header {
    background:#f1efe8e8!important;
    border-bottom:1px solid #111!important;
    backdrop-filter:blur(16px)
}
 html[data-theme=present] .logo,html[data-theme=present] .links a {
    color:#111!important
}
 html[data-theme=present] .era-picker {
    background:#f1efe8!important;
    border-color:#111!important
}
 html[data-theme=present] .video-shade {
    background:linear-gradient(90deg,#f1efe8f2 0%,#f1efe8c9 39%,#f1efe82b 74%),linear-gradient(0deg,#f1efe8 0%,transparent 43%)!important
}
 html[data-theme=present] .eyebrow,html[data-theme=present] .kicker {
    color:#e7472e!important;
    font-family:Inter,sans-serif!important;
    font-weight:900!important;
    letter-spacing:1px!important
}
 html[data-theme=present] .hero h1 {
    font:900 clamp(68px,10vw,150px)/.72 Inter,sans-serif!important;
    letter-spacing:-10px!important;
    color:#111!important;
    text-shadow:none!important;
    text-transform:uppercase
}
 html[data-theme=present] .hero h1 strong {
    color:#3157ff!important;
    -webkit-text-stroke:0!important
}
 html[data-theme=present] .hero h2 {
    font:800 clamp(25px,3vw,43px)/1.05 Inter,sans-serif!important;
    color:#111!important;
    letter-spacing:-2px!important;
    max-width:720px
}
 html[data-theme=present] .lead {
    color:#292929!important;
    max-width:650px;
    font-weight:500
}
 html[data-theme=present] .actions a {
    border:2px solid #111!important;
    color:#111!important;
    background:#f1efe8!important;
    box-shadow:5px 5px 0 #111;
    transition:.18s ease!important
}
 html[data-theme=present] .actions a:first-child {
    background:#3157ff!important;
    color:#fff!important
}
 html[data-theme=present] .actions a:hover {
    transform:translate(-2px,-2px)!important;
    box-shadow:8px 8px 0 #111!important
}
 html[data-theme=present] .present-card {
    right:6%;
    bottom:8%;
    width:300px;
    padding:28px;
    background:#ffdc4a!important;
    color:#111!important;
    border:2px solid #111;
    border-radius:0!important;
    box-shadow:10px 10px 0 #3157ff!important;
    transform:rotate(2deg)!important
}
 html[data-theme=present] .present-card:before {
    content:'● ONLINE';
    position:absolute;
    right:20px;
    top:18px;
    font:800 9px Inter;
    color:#e7472e;
    letter-spacing:1px
}
 html[data-theme=present] .present-card small,html[data-theme=present] .present-card span {
    font:800 10px Inter!important;
    letter-spacing:.5px!important;
    color:#111!important
}
 html[data-theme=present] .present-card b {
    font:950 42px/.82 Inter,sans-serif!important;
    letter-spacing:-4px!important;
    color:#111!important;
    margin:34px 0 18px!important
}
 html[data-theme=present] .about-section {
    background:#f1efe8!important;
    color:#111!important;
    border-top:1px solid #111;
    border-bottom:1px solid #111
}
 html[data-theme=present] .about-shell {
    grid-template-columns:1.08fr .92fr
}
 html[data-theme=present] .about-heading h3,html[data-theme=present] .section h3,html[data-theme=present] .contact h3 {
    font-family:Inter,sans-serif!important;
    color:#111!important;
    letter-spacing:-5px!important
}
 html[data-theme=present] .section h3 em,html[data-theme=present] .contact h3 em {
    color:#3157ff!important
}
 html[data-theme=present] .about-copy {
    color:#282828!important;
    border-left:2px solid #111;
    padding-left:28px
}
 html[data-theme=present] .present-about-prop {
    display:none;
    position:relative;
    min-height:240px;
    padding:28px;
    background:#3157ff;
    color:#fff;
    border:2px solid #111;
    box-shadow:10px 10px 0 #e7472e;
    transform:rotate(-1.5deg);
    overflow:hidden;
    transition:.25s ease
}
 html[data-theme=present] .present-about-prop:hover {
    transform:rotate(0) translate(-4px,-4px);
    box-shadow:14px 14px 0 #e7472e
}
 html[data-theme=present] .present-about-prop small {
    font:800 10px Inter;
    letter-spacing:1px
}
 html[data-theme=present] .present-about-prop b {
    display:block;
    font:950 86px/.8 Inter;
    margin:34px 0 24px;
    letter-spacing:-8px
}
 html[data-theme=present] .present-about-prop span {
    font:800 13px/1.35 Inter;
    text-transform:uppercase
}
 html[data-theme=present] .present-about-prop>i {
    position:absolute;
    right:20px;
    bottom:8px;
    font:900 78px Inter;
    font-style:normal;
    color:#ffdc4a
}
 html[data-theme=present] .dark {
    background:#111!important;
    color:#f1efe8!important
}
 html[data-theme=present] .dark .kicker {
    color:#ffdc4a!important
}
 html[data-theme=present] .cards {
    gap:0!important;
    background:#111!important;
    border:1px solid #f1efe8
}
 html[data-theme=present] .cards article {
    background:#111!important;
    border:0!important;
    border-right:1px solid #f1efe8!important;
    border-radius:0!important;
    transition:.2s ease
}
 html[data-theme=present] .cards article:last-child {
    border-right:0!important
}
 html[data-theme=present] .cards article:hover {
    background:#3157ff!important;
    transform:none!important
}
 html[data-theme=present] .cards b {
    color:#ffdc4a!important
}
 html[data-theme=present] .cards p {
    color:#d8d6cf!important
}
 html[data-theme=present] #work {
    background:#f1efe8!important;
    color:#111!important
}
 html[data-theme=present] .projects {
    gap:18px
}
 html[data-theme=present] .projects article {
    background:#fff!important;
    color:#111!important;
    border:2px solid #111!important;
    border-radius:0!important;
    box-shadow:6px 6px 0 #111;
    transition:.2s ease
}
 html[data-theme=present] .projects article:hover {
    transform:translate(-3px,-3px)!important;
    box-shadow:10px 10px 0 #3157ff!important
}
 html[data-theme=present] .projects p {
    color:#333!important
}
 html[data-theme=present] .projects small {
    color:#e7472e!important
}
 html[data-theme=present] .project-visual {
    background:#ffdc4a!important;
    border:0!important;
    border-bottom:2px solid #111!important
}
 html[data-theme=present] .project-visual b:before {
    border:2px solid #111!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:6px 6px 0 #3157ff!important
}
 html[data-theme=present] .project-visual b:after {
    background:#111!important;
    box-shadow:0 12px 0 #3157ff,0 24px 0 #e7472e!important
}
 html[data-theme=present] .contact {
    background:#3157ff!important;
    color:#fff!important
}
 html[data-theme=present] .contact .present-video {
    opacity:.16!important;
    mix-blend-mode:luminosity
}
 html[data-theme=present] .contact .video-shade {
    background:linear-gradient(90deg,#3157fff2,#3157ffb8 55%,#3157ff66)!important
}
 html[data-theme=present] .contact-copy>p {
    color:#ffdc4a!important
}
 html[data-theme=present] .contact h3 {
    color:#fff!important
}
 html[data-theme=present] .contact h3 em {
    color:#ffdc4a!important
}
 html[data-theme=present] .contact-form {
    background:#f1efe8!important;
    color:#111!important;
    border:2px solid #111!important;
    border-radius:0!important;
    box-shadow:10px 10px 0 #111!important;
    backdrop-filter:none!important
}
 html[data-theme=present] .contact-form label {
    color:#111!important;
    font-weight:800
}
 html[data-theme=present] .contact-form input,html[data-theme=present] .contact-form textarea {
    background:#fff!important;
    color:#111!important;
    border:2px solid #111!important;
    border-radius:0!important
}
 html[data-theme=present] .contact-form input:focus,html[data-theme=present] .contact-form textarea:focus {
    border-color:#e7472e!important;
    box-shadow:4px 4px 0 #ffdc4a!important
}
 html[data-theme=present] .contact-form button {
    background:#e7472e!important;
    color:#fff!important;
    border:2px solid #111!important;
    border-radius:0!important;
    box-shadow:5px 5px 0 #111!important
}

/* RETRO: a 01 / A STÚDIÓ kelléke tényleges Compact Cassette forma. */ html[data-theme=retro] .retro-about-prop {
    height:248px!important;
    padding:20px 24px 18px!important;
    background:linear-gradient(165deg,#e9d6aa 0 68%,#c8ad7d 68% 100%)!important;
    border:2px solid #38283b!important;
    border-radius:13px!important;
    box-shadow:inset 0 0 0 6px #d3ba89,13px 15px 0 #5c2346,0 30px 60px #0007!important;
    overflow:hidden
}
 html[data-theme=retro] .retro-about-prop:before,html[data-theme=retro] .retro-about-prop:after {
    content:'';
    position:absolute;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#3b3038;
    box-shadow:0 0 0 2px #b89d72
}
 html[data-theme=retro] .retro-about-prop:before {
    left:12px;
    top:12px;
    box-shadow:0 0 0 2px #b89d72,0 213px 0 #3b3038,0 213px 0 2px #b89d72
}
 html[data-theme=retro] .retro-about-prop:after {
    right:12px;
    top:12px;
    box-shadow:0 0 0 2px #b89d72,0 213px 0 #3b3038,0 213px 0 2px #b89d72
}
 html[data-theme=retro] .retro-about-prop .sticker {
    right:18px!important;
    top:17px!important;
    background:#ef5474!important;
    transform:rotate(2deg)!important
}
 html[data-theme=retro] .retro-about-prop>b {
    display:block!important;
    margin:4px 0 10px!important;
    text-align:left;
    font:900 18px/1 Oxanium!important;
    letter-spacing:-1px;
    color:#3a2538
}
 html[data-theme=retro] .cassette-window {
    height:78px;
    width:88%;
    margin:0 auto 8px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 28px;
    background:#29232b;
    border:6px solid #5c4b55;
    border-radius:9px;
    box-shadow:inset 0 0 0 2px #161218
}
 html[data-theme=retro] .cassette-window:before {
    content:'';
    position:absolute;
    left:50%;
    top:12px;
    transform:translateX(-50%);
    width:48px;
    height:42px;
    background:#d9c49c;
    border:2px solid #69566a;
    border-radius:4px
}
 html[data-theme=retro] .reel {
    z-index:2;
    width:42px;
    height:42px;
    border-radius:50%;
    background:repeating-conic-gradient(#d9c49c 0 12deg,#4a3b49 12deg 25deg);
    border:5px solid #e8d6ae;
    box-shadow:0 0 0 3px #19151c!important;
    position:relative!important;
    margin:0!important
}
 html[data-theme=retro] .reel:after {
    content:'';
    position:absolute;
    inset:11px;
    border-radius:50%;
    background:#262027;
    border:3px dotted #d9c49c
}
 html[data-theme=retro] .tape-line {
    position:absolute;
    left:48px;
    right:48px;
    bottom:11px;
    height:3px;
    background:#171217;
    box-shadow:0 -3px 0 #5d4958
}
 html[data-theme=retro] .cassette-head {
    width:62%;
    height:34px;
    margin:auto;
    clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);
    background:#b79b70;
    border-top:2px solid #594657;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px
}
 html[data-theme=retro] .cassette-head i {
    display:block!important;
    width:8px!important;
    height:8px!important;
    margin:0!important;
    border:2px solid #3c303b!important;
    border-radius:50%!important;
    background:#dbc69c!important
}
 html[data-theme=retro] .retro-about-prop small {
    display:block;
    text-align:center;
    font:700 7px Oxanium!important;
    letter-spacing:.7px!important;
    color:#4b3948
}

/* =========================================================
   V18.1 — JELENKOR: 4-SZÍNES PALETTA + OLVASHATÓ NAV
   kizárólag: kék / sárga / fekete / piros
========================================================= */ html[data-theme=present] body {
    background:#ffd400!important;
    color:#000!important
}
 html[data-theme=present] header {
    background:#000!important;
    border-bottom:3px solid #ffd400!important;
    box-shadow:0 6px 0 #1455ff!important;
    backdrop-filter:none!important
}
 html[data-theme=present] header .logo,html[data-theme=present] header .logo b,html[data-theme=present] header .logo span {
    color:#ffd400!important
}
 html[data-theme=present] header .links a {
    color:#ffd400!important;
    text-shadow:none!important
}
 html[data-theme=present] header .links a:hover {
    color:#ff2d20!important
}
 html[data-theme=present] .era-picker {
    background:#000!important;
    border-color:#1455ff!important
}
 html[data-theme=present] .era-option {
    color:#ffd400!important;
    border-color:#1455ff!important;
    background:#000!important
}
 html[data-theme=present] .era-option:hover {
    background:#1455ff!important;
    color:#ffd400!important
}
 html[data-theme=present] .era-option.active {
    background:#ffd400!important;
    color:#000!important
}
 html[data-theme=present] .video-shade {
    background:linear-gradient(90deg,#000 3%,#000 37%,#1455ff 100%)!important;
    opacity:.78
}
 html[data-theme=present] .eyebrow,html[data-theme=present] .kicker {
    color:#ffd400!important
}
 html[data-theme=present] .hero h1,html[data-theme=present] .hero h1 strong {
    color:#ffd400!important;
    -webkit-text-stroke:0!important;
    text-shadow:7px 7px 0 #ff2d20!important
}
 html[data-theme=present] .hero h2 {
    color:#ffd400!important
}
 html[data-theme=present] .lead {
    color:#ffd400!important
}
 html[data-theme=present] .actions a {
    color:#ffd400!important;
    border-color:#ffd400!important;
    background:#000!important
}
 html[data-theme=present] .actions a:first-child {
    background:#ff2d20!important;
    color:#ffd400!important;
    border-color:#000!important
}
 html[data-theme=present] .actions a:hover {
    background:#1455ff!important;
    color:#ffd400!important;
    box-shadow:6px 6px 0 #ffd400!important
}
 html[data-theme=present] .present-card {
    background:#ffd400!important;
    color:#000!important;
    border-color:#000!important;
    box-shadow:12px 12px 0 #ff2d20!important
}
 html[data-theme=present] .present-card b {
    color:#000!important
}
 html[data-theme=present] .about-section {
    background:#ffd400!important;
    color:#000!important;
    border-color:#000!important
}
 html[data-theme=present] .about-heading h3,html[data-theme=present] .section h3,html[data-theme=present] .contact h3 {
    color:#000!important
}
 html[data-theme=present] .section h3 em {
    color:#ff2d20!important
}
 html[data-theme=present] .about-copy {
    color:#000!important;
    border-color:#000!important
}
 html[data-theme=present] .present-about-prop {
    background:#1455ff!important;
    color:#ffd400!important;
    border-color:#000!important;
    box-shadow:10px 10px 0 #ff2d20!important
}
 html[data-theme=present] .present-about-prop>i {
    color:#ffd400!important
}
 html[data-theme=present] .dark {
    background:#000!important;
    color:#ffd400!important
}
 html[data-theme=present] .dark .kicker {
    color:#ffd400!important
}
 html[data-theme=present] .cards {
    background:#000!important;
    border-color:#ffd400!important
}
 html[data-theme=present] .cards article {
    background:#000!important;
    border-color:#ffd400!important;
    color:#ffd400!important
}
 html[data-theme=present] .cards article:hover {
    background:#1455ff!important
}
 html[data-theme=present] .cards b {
    color:#ffd400!important
}
 html[data-theme=present] .cards h4,html[data-theme=present] .cards p {
    color:#ffd400!important
}
 html[data-theme=present] #work {
    background:#ffd400!important;
    color:#000!important
}
 html[data-theme=present] .projects article {
    background:#ffd400!important;
    color:#000!important;
    border-color:#000!important;
    box-shadow:6px 6px 0 #000!important
}
 html[data-theme=present] .projects article:hover {
    box-shadow:10px 10px 0 #1455ff!important
}
 html[data-theme=present] .projects h4,html[data-theme=present] .projects p {
    color:#000!important
}
 html[data-theme=present] .projects small {
    color:#ff2d20!important
}
 html[data-theme=present] .project-visual {
    background:#1455ff!important;
    border-color:#000!important
}
 html[data-theme=present] .project-visual b:before {
    border-color:#000!important;
    background:#ffd400!important;
    box-shadow:6px 6px 0 #ff2d20!important
}
 html[data-theme=present] .project-visual b:after {
    background:#000!important;
    box-shadow:0 12px 0 #ffd400,0 24px 0 #ff2d20!important
}
 html[data-theme=present] .contact {
    background:#1455ff!important;
    color:#ffd400!important
}
 html[data-theme=present] .contact .present-video {
    opacity:.12!important;
    mix-blend-mode:normal!important
}
 html[data-theme=present] .contact .video-shade {
    background:linear-gradient(90deg,#1455ff,#1455ff 55%,#000)!important;
    opacity:.88
}
 html[data-theme=present] .contact-copy>p {
    color:#ffd400!important
}
 html[data-theme=present] .contact h3 {
    color:#ffd400!important
}
 html[data-theme=present] .contact h3 em {
    color:#ff2d20!important
}
 html[data-theme=present] .contact-form {
    background:#ffd400!important;
    color:#000!important;
    border-color:#000!important;
    box-shadow:10px 10px 0 #000!important
}
 html[data-theme=present] .contact-form label {
    color:#000!important
}
 html[data-theme=present] .contact-form input,html[data-theme=present] .contact-form textarea {
    background:#ffd400!important;
    color:#000!important;
    border-color:#000!important
}
 html[data-theme=present] .contact-form input:focus,html[data-theme=present] .contact-form textarea:focus {
    border-color:#ff2d20!important;
    box-shadow:4px 4px 0 #1455ff!important
}
 html[data-theme=present] .contact-form button {
    background:#ff2d20!important;
    color:#ffd400!important;
    border-color:#000!important;
    box-shadow:5px 5px 0 #000!important
}
 html[data-theme=present] footer {
    background:#000!important;
    color:#ffd400!important
}
 html[data-theme=present] footer span {
    color:#ffd400!important
}

/* V18.2 – Jelenkor kicker szín */ html[data-theme="present"] .kicker, html[data-theme="present"] .dark .kicker, html[data-theme="present"] #about .kicker, html[data-theme="present"] #skills .kicker, html[data-theme="present"] #work > .kicker {
     color:#ff2d20!important;

}

/* =========================================================
   V18.3 — RETRO KAPCSOLAT: CRT TV HÁZ
========================================================= */ html[data-theme="retro"] .contact-grid {
    align-items:center;
    gap:54px
}
 html[data-theme="retro"] .contact-form {
     position:relative!important;
     background:linear-gradient(145deg,#4b3a45 0%,#211820 72%,#120d12 100%)!important;
     border:7px solid #6f5965!important;
     border-radius:34px 34px 46px 46px!important;
     padding:34px 112px 44px 34px!important;
     box-shadow:inset 0 0 0 3px #171116,inset 0 0 35px #000b,14px 18px 0 #080508,0 28px 60px #0009!important;
     transform:none!important;
     overflow:visible!important;

}
 html[data-theme="retro"] .contact-form:before {
     content:"FK 1986  •  CH 04";
     position:absolute;
    right:20px;
    top:31px;
    width:70px;
     color:#f1d7df;
    font:800 8px/1.3 Oxanium,sans-serif;
    letter-spacing:.7px;
    text-align:center;
     padding:10px 2px 13px;
    border-bottom:1px solid #927382;

}
 html[data-theme="retro"] .contact-form:after {
     content:"";
    position:absolute;
    right:36px;
    top:94px;
    width:38px;
    height:38px;
    border-radius:50%;
     background:radial-gradient(circle at 42% 38%,#d8c7cf 0 8%,#59434e 9% 23%,#171116 24% 40%,#846a77 41% 48%,#251a21 49%);
     border:3px solid #100b0f;
    box-shadow:0 63px 0 -9px #d74971,0 63px 0 -6px #171116,0 93px 0 -9px #40d7cf,0 93px 0 -6px #171116;

}
 html[data-theme="retro"] .contact-form .form-row,html[data-theme="retro"] .contact-form>label,html[data-theme="retro"] .contact-form>button,html[data-theme="retro"] .contact-form>.form-status {
     position:relative;
    z-index:2;

}
 html[data-theme="retro"] .contact-form .form-row:before {
     content:"";
    position:absolute;
    z-index:-1;
    left:-18px;
    right:-18px;
    top:-17px;
    bottom:-138px;
     background:linear-gradient(135deg,#071112,#130914 62%,#07090b);
     border:5px solid #120d12;
    border-radius:28px / 20px;
     box-shadow:inset 0 0 30px #00e8d21b,inset 0 0 60px #ff3c8a18,0 0 0 2px #806570;
     pointer-events:none;

}
 html[data-theme="retro"] .contact-form label {
    color:#ff9dbb!important;
    text-shadow:1px 1px 0 #000;
    font:700 9px Oxanium,sans-serif!important;
    letter-spacing:1px
}
 html[data-theme="retro"] .contact-form input,html[data-theme="retro"] .contact-form textarea {
     background:#05090bdd!important;
    border:1px solid #74566d!important;
    border-radius:3px!important;
    color:#fff!important;
     box-shadow:inset 0 0 12px #00e8d210!important;

}
 html[data-theme="retro"] .contact-form input:focus,html[data-theme="retro"] .contact-form textarea:focus {
    border-color:#ff5c91!important;
    box-shadow:0 0 0 2px #ff5c9130,inset 0 0 18px #00e8d218!important
}
 html[data-theme="retro"] .contact-form button {
    background:#ff3e72!important;
    color:#fff!important;
    border:2px solid #120d12!important;
    border-radius:4px!important;
    box-shadow:4px 4px 0 #6f2aff!important
}
 html[data-theme="retro"] .contact-form button:hover {
    box-shadow:6px 6px 0 #6f2aff,0 0 25px #ff3b8d77!important
}
 html[data-theme="retro"] .contact-form {
    margin-bottom:24px
}
 html[data-theme="retro"] .contact-form>button:after {
    content:"  REC ●";
    font-size:8px;
    letter-spacing:1px
}
 @media(max-width:760px) {
     html[data-theme="retro"] .contact-form {
        padding:30px 28px 108px!important;
        border-radius:28px!important
    }
     html[data-theme="retro"] .contact-form:before {
        right:26px;
        top:auto;
        bottom:48px;
        width:90px
    }
     html[data-theme="retro"] .contact-form:after {
        right:auto;
        left:30px;
        top:auto;
        bottom:34px
    }
     html[data-theme="retro"] .contact-form .form-row:before {
        bottom:-136px
    }

}

/* =========================================================
   V19 — JELENKOR / 2026: ORGANIC EDITORIAL STUDIO
   Teljes újragondolás: meleg papír, erdőzöld, terrakotta, zsálya.
   Nincs neon / VHS / cyber HUD / brutalista alapszín.
========================================================= */ html[data-theme="present"] {
     --p-ink:#17352f;
     --p-paper:#f4ecdc;
     --p-paper2:#e7dcc7;
     --p-clay:#d86445;
     --p-sage:#9fb49c;
     --p-deep:#102923;
     --p-white:#fffaf0;

}
 html[data-theme="present"] body {
    background:var(--p-paper)!important;
    color:var(--p-ink)!important
}
 html[data-theme="present"] header {
    background:#9FBA83 !important;
    border:0!important;
    border-bottom:1px solid rgba(23,53,47,.22)!important;
    box-shadow:0 10px 35px rgba(16,41,35,.08)!important;
    backdrop-filter:blur(18px)!important
}
 html[data-theme="present"] header .logo,html[data-theme="present"] header .logo b,html[data-theme="present"] header .logo span,html[data-theme="present"] header .links a {
    color:var(--p-ink)!important;
    text-shadow:none!important
}
 html[data-theme="present"] header .links a {
    position:relative
}
 html[data-theme="present"] header .links a:after {
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:-7px;
    height:2px;
    background:var(--p-clay);
    transition:.25s ease
}
 html[data-theme="present"] header .links a:hover {
    color:var(--p-clay)!important
}
 html[data-theme="present"] header .links a:hover:after {
    right:0
}
 html[data-theme="present"] .era-picker {
    background:var(--p-paper)!important;
    border:1px solid var(--p-ink)!important;
    box-shadow:6px 6px 0 var(--p-sage)!important
}
 html[data-theme="present"] .era-option {
    background:transparent!important;
    color:var(--p-ink)!important;
    border-color:rgba(23,53,47,.18)!important
}
 html[data-theme="present"] .era-option:hover {
    background:var(--p-paper2)!important;
    color:var(--p-clay)!important
}
 html[data-theme="present"] .era-option.active {
    background:var(--p-ink)!important;
    color:var(--p-paper)!important
}
 html[data-theme="present"] .hero {
    background:var(--p-paper)!important
}
 html[data-theme="present"] .hero .present-video {
    opacity:.42!important;
    filter:saturate(.65) sepia(.08) contrast(.9)!important
}
 html[data-theme="present"] .hero .video-shade {
    opacity:1!important;
    background:linear-gradient(90deg,var(--p-paper) 0%,rgba(244,236,220,.95) 32%,rgba(244,236,220,.58) 61%,rgba(244,236,220,.14) 100%),linear-gradient(0deg,var(--p-paper) 0%,transparent 38%)!important
}
 html[data-theme="present"] .eyebrow {
    display:inline-flex!important;
    align-items:center;
    gap:9px;
    color:var(--p-clay)!important;
    background:rgba(255,250,240,.72);
    border:1px solid rgba(23,53,47,.2);
    border-radius:999px;
    padding:8px 13px!important;
    font:700 10px/1.1 Inter,sans-serif!important;
    letter-spacing:1.4px!important
}
 html[data-theme="present"] .hero h1 {
    font:800 clamp(68px,9.5vw,142px)/.77 Inter,sans-serif!important;
    letter-spacing:-9px!important;
    color:var(--p-ink)!important;
    text-shadow:none!important;
    text-transform:none!important
}
 html[data-theme="present"] .hero h1 strong {
    display:block;
    color:var(--p-clay)!important;
    -webkit-text-stroke:0!important;
    text-shadow:none!important;
    font-weight:500!important;
    font-style:italic;
    letter-spacing:-8px!important
}
 html[data-theme="present"] .hero h2 {
    font:600 clamp(25px,2.8vw,41px)/1.08 Inter,sans-serif!important;
    letter-spacing:-1.8px!important;
    color:var(--p-ink)!important;
    max-width:720px
}
 html[data-theme="present"] .lead {
    color:#3d544d!important;
    font:500 15px/1.8 Inter,sans-serif!important;
    max-width:650px
}
 html[data-theme="present"] .actions {
    gap:12px
}
 html[data-theme="present"] .actions a {
    background:transparent!important;
    color:var(--p-ink)!important;
    border:1px solid var(--p-ink)!important;
    border-radius:999px!important;
    box-shadow:none!important;
    padding-left:24px!important;
    padding-right:24px!important;
    transition:.25s ease!important
}
 html[data-theme="present"] .actions a:first-child {
    background:var(--p-ink)!important;
    color:var(--p-paper)!important;
    border-color:var(--p-ink)!important
}
 html[data-theme="present"] .actions a:hover {
    background:var(--p-clay)!important;
    color:var(--p-white)!important;
    border-color:var(--p-clay)!important;
    transform:translateY(-3px)!important;
    box-shadow:0 10px 24px rgba(216,100,69,.18)!important
}
 html[data-theme="present"] .present-card {
    right:7%!important;
    bottom:8%!important;
    width:286px!important;
    padding:28px 28px 25px!important;
    background:rgba(255,250,240,.92)!important;
    color:var(--p-ink)!important;
    border:1px solid rgba(23,53,47,.28)!important;
    border-radius:46px 46px 12px 46px!important;
    box-shadow:0 28px 70px rgba(16,41,35,.18)!important;
    transform:rotate(2.5deg)!important;
    backdrop-filter:blur(12px)
}
 html[data-theme="present"] .present-card:before {
    content:"2026 / LIVE"!important;
    right:22px!important;
    top:20px!important;
    color:var(--p-clay)!important;
    font:700 9px Inter!important;
    letter-spacing:1.2px!important
}
 html[data-theme="present"] .present-card small,html[data-theme="present"] .present-card span {
    color:#536861!important;
    font:700 9px Inter!important;
    letter-spacing:1px!important
}
 html[data-theme="present"] .present-card b {
    color:var(--p-ink)!important;
    font:750 38px/.9 Inter,sans-serif!important;
    letter-spacing:-3px!important;
    margin:34px 0 18px!important
}
 html[data-theme="present"] .about-section {
    background:var(--p-paper)!important;
    color:var(--p-ink)!important;
    border:0!important;
    padding-top:120px!important;
    padding-bottom:120px!important
}
 html[data-theme="present"] .kicker,html[data-theme="present"] .dark .kicker,html[data-theme="present"] #about .kicker,html[data-theme="present"] #skills .kicker,html[data-theme="present"] #work>.kicker {
    color:var(--p-clay)!important;
    font:750 11px Inter,sans-serif!important;
    letter-spacing:1.5px!important
}
 html[data-theme="present"] .about-heading h3,html[data-theme="present"] .section h3,html[data-theme="present"] .contact h3 {
    font-family:Inter,sans-serif!important;
    color:var(--p-ink)!important;
    letter-spacing:-4.5px!important;
    font-weight:650!important
}
 html[data-theme="present"] .section h3 em,html[data-theme="present"] .contact h3 em {
    color:var(--p-clay)!important;
    font-weight:500!important
}
 html[data-theme="present"] .about-copy {
    color:#40564f!important;
    border:0!important;
    padding:0!important;
    font-size:16px!important
}
 html[data-theme="present"] .present-about-prop {
    display:none;
    position:relative;
    min-height:260px;
    padding:30px;
    background:var(--p-sage)!important;
    color:var(--p-deep)!important;
    border:0!important;
    border-radius:12px 70px 12px 12px!important;
    box-shadow:none!important;
    transform:rotate(-1.5deg)!important;
    overflow:hidden!important;
    transition:.3s ease!important
}
 html[data-theme="present"] .present-about-prop:before {
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    border:1px solid rgba(16,41,35,.25);
    border-radius:50%;
    right:-35px;
    top:-35px;
    box-shadow:0 0 0 22px rgba(16,41,35,.06),0 0 0 44px rgba(16,41,35,.04)
}
 html[data-theme="present"] .present-about-prop:hover {
    transform:rotate(0) translateY(-5px)!important;
    box-shadow:0 22px 50px rgba(16,41,35,.13)!important
}
 html[data-theme="present"] .present-about-prop small {
    color:var(--p-deep)!important;
    font:700 10px Inter!important
}
 html[data-theme="present"] .present-about-prop b {
    color:var(--p-deep)!important;
    font:750 84px/.8 Inter!important;
    letter-spacing:-7px!important
}
 html[data-theme="present"] .present-about-prop span {
    color:var(--p-deep)!important;
    font:700 12px/1.45 Inter!important
}
 html[data-theme="present"] .present-about-prop>i {
    color:var(--p-clay)!important;
    font-size:68px!important
}
 html[data-theme="present"] .dark {
    background:var(--p-deep)!important;
    color:var(--p-paper)!important;
    position:relative;
    overflow:hidden
}
 html[data-theme="present"] .dark:before {
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    border:1px solid rgba(244,236,220,.08);
    border-radius:50%;
    right:-170px;
    top:-230px;
    box-shadow:0 0 0 55px rgba(244,236,220,.025),0 0 0 110px rgba(244,236,220,.018)
}
 html[data-theme="present"] .dark h3 {
    color:var(--p-paper)!important
}
 html[data-theme="present"] .dark h3 em {
    color:var(--p-sage)!important
}
 html[data-theme="present"] .cards {
    gap:14px!important;
    background:transparent!important;
    border:0!important
}
 html[data-theme="present"] .cards article {
    background:rgba(244,236,220,.06)!important;
    color:var(--p-paper)!important;
    border:1px solid rgba(244,236,220,.14)!important;
    border-radius:28px 8px 28px 8px!important;
    transition:.3s ease!important
}
 html[data-theme="present"] .cards article:nth-child(even) {
    border-radius:8px 28px 8px 28px!important
}
 html[data-theme="present"] .cards article:hover {
    background:var(--p-clay)!important;
    border-color:var(--p-clay)!important;
    transform:translateY(-7px)!important
}
 html[data-theme="present"] .cards b {
    color:var(--p-sage)!important
}
 html[data-theme="present"] .cards h4 {
    color:var(--p-paper)!important
}
 html[data-theme="present"] .cards p {
    color:#c7d0c8!important
}
 html[data-theme="present"] .cards article:hover b,html[data-theme="present"] .cards article:hover p {
    color:var(--p-white)!important
}
 html[data-theme="present"] #work {
    background:var(--p-paper2)!important;
    color:var(--p-ink)!important
}
 html[data-theme="present"] #work h3 {
    color:var(--p-ink)!important
}
 html[data-theme="present"] .projects {
    gap:22px!important
}
 html[data-theme="present"] .projects article {
    background:var(--p-white)!important;
    color:var(--p-ink)!important;
    border:0!important;
    border-radius:8px 42px 8px 8px!important;
    box-shadow:0 15px 38px rgba(16,41,35,.08)!important;
    overflow:hidden;
    transition:.3s ease!important
}
 html[data-theme="present"] .projects article:nth-child(2) {
    border-radius:42px 8px 8px 8px!important
}
 html[data-theme="present"] .projects article:hover {
    transform:translateY(-8px) rotate(-.4deg)!important;
    box-shadow:0 24px 50px rgba(16,41,35,.16)!important
}
 html[data-theme="present"] .projects h4 {
    color:var(--p-ink)!important
}
 html[data-theme="present"] .projects p {
    color:#536861!important
}
 html[data-theme="present"] .projects small {
    color:var(--p-clay)!important
}
 html[data-theme="present"] .project-visual {
    background:var(--p-sage)!important;
    border:0!important;
    border-bottom:0!important
}
 html[data-theme="present"] .projects article:nth-child(2) .project-visual {
    background:var(--p-clay)!important
}
 html[data-theme="present"] .projects article:nth-child(3) .project-visual {
    background:var(--p-ink)!important
}
 html[data-theme="present"] .project-visual b:before {
    border:0!important;
    border-radius:20px!important;
    background:var(--p-paper)!important;
    box-shadow:0 12px 30px rgba(16,41,35,.16)!important
}
 html[data-theme="present"] .project-visual b:after {
    background:var(--p-ink)!important;
    box-shadow:0 12px 0 var(--p-clay),0 24px 0 var(--p-sage)!important;
    border-radius:99px!important
}
 html[data-theme="present"] .contact {
    background:var(--p-paper)!important;
    color:var(--p-ink)!important;
    overflow:hidden
}
 html[data-theme="present"] .contact .present-video {
    opacity:.2!important;
    filter:saturate(.55) sepia(.15)!important;
    mix-blend-mode:multiply!important
}
 html[data-theme="present"] .contact .video-shade {
    background:linear-gradient(90deg,var(--p-paper) 0%,rgba(244,236,220,.94) 45%,rgba(244,236,220,.58) 100%)!important;
    opacity:1!important
}
 html[data-theme="present"] .contact-copy>p {
    color:var(--p-clay)!important
}
 html[data-theme="present"] .contact h3 {
    color:var(--p-ink)!important
}
 html[data-theme="present"] .contact h3 em {
    color:var(--p-clay)!important
}
 html[data-theme="present"] .contact-copy>span {
    color:#50665f!important
}
 html[data-theme="present"] .contact-form {
    position:relative;
    background:rgba(255,250,240,.9)!important;
    color:var(--p-ink)!important;
    border:1px solid rgba(23,53,47,.25)!important;
    border-radius:50px 12px 50px 12px!important;
    box-shadow:0 26px 70px rgba(16,41,35,.14)!important;
    backdrop-filter:blur(12px)!important;
    padding:38px!important;
    overflow:hidden
}
 html[data-theme="present"] .contact-form:before {
    content:"WRITE / SEND / BUILD";
    position:absolute;
    right:-32px;
    top:30px;
    transform:rotate(90deg);
    font:700 8px Inter;
    letter-spacing:2px;
    color:rgba(23,53,47,.38)
}
 html[data-theme="present"] .contact-form label {
    color:var(--p-ink)!important;
    font:700 9px Inter!important;
    letter-spacing:1px!important
}
 html[data-theme="present"] .contact-form input,html[data-theme="present"] .contact-form textarea {
    background:transparent!important;
    color:var(--p-ink)!important;
    border:0!important;
    border-bottom:1px solid rgba(23,53,47,.38)!important;
    border-radius:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-shadow:none!important
}
 html[data-theme="present"] .contact-form input:focus,html[data-theme="present"] .contact-form textarea:focus {
    border-color:var(--p-clay)!important;
    box-shadow:0 2px 0 var(--p-clay)!important;
    outline:0!important
}
 html[data-theme="present"] .contact-form button {
    background:var(--p-ink)!important;
    color:var(--p-paper)!important;
    border:0!important;
    border-radius:999px!important;
    box-shadow:none!important;
    padding:15px 24px!important
}
 html[data-theme="present"] .contact-form button:hover {
    background:var(--p-clay)!important;
    color:var(--p-white)!important;
    transform:translateY(-2px)!important;
    box-shadow:0 10px 24px rgba(216,100,69,.18)!important
}
 html[data-theme="present"] footer {
    background:var(--p-deep)!important;
    color:var(--p-paper)!important
}
 html[data-theme="present"] footer span {
    color:var(--p-sage)!important
}
 @media(max-width:760px) {
     html[data-theme="present"] .hero h1 {
        letter-spacing:-5px!important
    }
     html[data-theme="present"] .present-card {
        right:18px!important;
        bottom:24px!important;
        width:220px!important;
        padding:20px!important;
        border-radius:32px 32px 8px 32px!important
    }
     html[data-theme="present"] .present-card b {
        font-size:31px!important
    }
     html[data-theme="present"] .contact-form {
        padding:26px!important;
        border-radius:34px 8px 34px 8px!important
    }

}

/* =========================================================
   V19.2 — JELENKOR: természetesebb, növényibb finomhangolás
   + 03 szekció teljes viewport háttér
   + contact dekor felirat eltávolítva
========================================================= */ html[data-theme="present"] {
     --p-ink:#173b2d;
     --p-paper:#f1f3e7;
     --p-paper2:#dfe8d5;
     --p-clay:#b76545;
     --p-sage:#9db792;
     --p-deep:#0f3024;
     --p-white:#f8faef;

}
 html[data-theme="present"] body {
    background:var(--p-paper)!important
}
 html[data-theme="present"] header {
    background:#9FBA83 !important
}
 html[data-theme="present"] .hero {
    background:var(--p-paper)!important
}
 html[data-theme="present"] .hero .present-video {
    opacity:.46!important;
    filter:saturate(.72) hue-rotate(8deg) contrast(.9)!important
}
 html[data-theme="present"] .hero .video-shade {
    background:linear-gradient(90deg,var(--p-paper) 0%,rgba(241,243,231,.94) 31%,rgba(241,243,231,.58) 62%,rgba(241,243,231,.12) 100%),linear-gradient(0deg,var(--p-paper) 0%,transparent 38%)!important
}
 html[data-theme="present"] .eyebrow {
    background:rgba(248,250,239,.76)!important
}
 html[data-theme="present"] .about-section {
    background:var(--p-paper)!important
}
 html[data-theme="present"] .present-about-prop {
    background:linear-gradient(145deg,#adc3a2,#8faa85)!important
}
 html[data-theme="present"] .dark {
    background:linear-gradient(145deg,#0f3024,#183e2e)!important
}
 html[data-theme="present"] .cards article {
    background:rgba(241,243,231,.055)!important
}
 html[data-theme="present"] .cards article:hover {
    background:#547a59!important;
    border-color:#6f936d!important
}

/* A #work maga .shell is, ezért a háttér korábban csak a konténer szélességéig ért. */ html[data-theme="present"] #work {
     position:relative!important;
     background:var(--p-paper2)!important;
     box-shadow:0 0 0 100vmax var(--p-paper2)!important;
     clip-path:inset(0 -100vmax)!important;

}
 html[data-theme="present"] .projects article {
    background:var(--p-white)!important
}
 html[data-theme="present"] .project-visual {
    background:#91ad87!important
}
 html[data-theme="present"] .projects article:nth-child(2) .project-visual {
    background:#b76545!important
}
 html[data-theme="present"] .projects article:nth-child(3) .project-visual {
    background:#315d43!important
}
 html[data-theme="present"] .contact {
    background:var(--p-paper)!important
}
 html[data-theme="present"] .contact .present-video {
    opacity:.22!important;
    filter:saturate(.7) hue-rotate(8deg) contrast(.9)!important;
    mix-blend-mode:multiply!important
}
 html[data-theme="present"] .contact .video-shade {
    background:linear-gradient(90deg,var(--p-paper) 0%,rgba(241,243,231,.94) 45%,rgba(241,243,231,.55) 100%)!important
}
 html[data-theme="present"] .contact-form {
    background:rgba(248,250,239,.92)!important
}
 html[data-theme="present"] .contact-form:before {
    content:none!important;
    display:none!important
}
 html[data-theme="present"] footer {
    background:var(--p-deep)!important
}

/* =========================================================
   V20 — JELENKOR / 2026: BOTANICAL DIGITAL STUDIO
   Kizárólag a Jelenkor. Organikus, növényi, kortárs.
========================================================= */ html[data-theme="present"] {
     --p-forest:#173f32;
     --p-forest-2:#245a45;
     --p-moss:#6f8f63;
     --p-leaf:#9fba83;
     --p-lime:#c9d9a4;
     --p-cream:#f2f0df;
     --p-sand:#e2ddc5;
     --p-earth:#9a6548;
     --p-ink:#173f32;
     --p-paper:#f2f0df;
     --p-paper2:#e2e8d2;
     --p-clay:#9a6548;
     --p-sage:#9fba83;
     --p-deep:#102f26;
     --p-white:#faf8eb;

}
 html[data-theme="present"] body {
    background:var(--p-cream)!important;
    color:var(--p-forest)!important
}
 html[data-theme="present"] header {
    background:#9FBA83 !important;
    border-bottom:1px solid rgba(23,63,50,.18)!important;
    box-shadow:0 12px 38px rgba(16,47,38,.08)!important;
    backdrop-filter:blur(18px) saturate(1.15)!important
}
 html[data-theme="present"] header .logo,html[data-theme="present"] header .logo b,html[data-theme="present"] header .logo span,html[data-theme="present"] header .links a {
    color:var(--p-forest)!important
}
 html[data-theme="present"] header .links a:after {
    background:var(--p-moss)!important
}
 html[data-theme="present"] header .links a:hover {
    color:var(--p-earth)!important
}
 html[data-theme="present"] .era-picker {
    background:var(--p-cream)!important;
    border-color:rgba(23,63,50,.35)!important;
    box-shadow:7px 7px 0 var(--p-leaf)!important;
    border-radius:22px!important;
    overflow:hidden
}
 html[data-theme="present"] .era-option {
    color:var(--p-forest)!important;
    border-color:rgba(23,63,50,.12)!important
}
 html[data-theme="present"] .era-option:hover {
    background:var(--p-sand)!important;
    color:var(--p-earth)!important
}
 html[data-theme="present"] .era-option.active {
    background:var(--p-forest)!important;
    color:var(--p-cream)!important
}
 html[data-theme="present"] .hero {
    background:var(--p-forest)!important;
    overflow:hidden
}
 html[data-theme="present"] .hero .present-video {
    opacity:.82!important;
    filter:saturate(.9) contrast(.93) brightness(.78)!important;
    mix-blend-mode:normal!important
}
 html[data-theme="present"] .hero .video-shade {
    opacity:1!important;
    background:linear-gradient(90deg,rgba(10,42,31,.94) 0%,rgba(14,52,39,.78) 35%,rgba(14,52,39,.28) 69%,rgba(14,52,39,.08) 100%),linear-gradient(0deg,rgba(16,47,38,.72) 0%,transparent 45%)!important
}
 html[data-theme="present"] .hero:before {
    content:"";
    position:absolute;
    z-index:3;
    right:-80px;
    top:8%;
    width:390px;
    height:520px;
    opacity:.24;
    pointer-events:none;
    background:radial-gradient(ellipse at 50% 100%,transparent 0 31%,var(--p-lime) 32% 34%,transparent 35%),radial-gradient(ellipse at 22% 62%,var(--p-lime) 0 11%,transparent 12%),radial-gradient(ellipse at 76% 47%,var(--p-lime) 0 12%,transparent 13%);
    transform:rotate(-18deg);
    filter:blur(.2px)
}
 html[data-theme="present"] .eyebrow {
    color:#e9efcf!important;
    background:rgba(16,47,38,.48)!important;
    border:1px solid rgba(233,239,207,.38)!important;
    backdrop-filter:blur(10px)!important
}
 html[data-theme="present"] .hero h1 {
    color:var(--p-cream)!important;
    text-shadow:none!important;
    font-weight:760!important;
    letter-spacing:-8px!important
}
 html[data-theme="present"] .hero h1 strong {
    color:var(--p-lime)!important;
    font-style:italic!important;
    font-weight:520!important
}
 html[data-theme="present"] .hero h2 {
    color:#f4f1df!important
}
 html[data-theme="present"] .lead {
    color:#d8dfc7!important
}
 html[data-theme="present"] .actions a {
    border-color:#edf1d9!important;
    color:#edf1d9!important;
    background:rgba(16,47,38,.28)!important;
    border-radius:999px!important;
    backdrop-filter:blur(8px)
}
 html[data-theme="present"] .actions a:first-child {
    background:var(--p-lime)!important;
    color:var(--p-deep)!important;
    border-color:var(--p-lime)!important
}
 html[data-theme="present"] .actions a:hover {
    background:var(--p-earth)!important;
    color:#fff8e8!important;
    border-color:var(--p-earth)!important;
    box-shadow:0 12px 28px rgba(8,31,23,.22)!important
}
 html[data-theme="present"] .present-card {
    background:rgba(242,240,223,.91)!important;
    color:var(--p-forest)!important;
    border:1px solid rgba(242,240,223,.7)!important;
    border-radius:64px 18px 64px 18px!important;
    box-shadow:0 28px 70px rgba(7,31,23,.28)!important;
    backdrop-filter:blur(16px)!important;
    transform:rotate(1.5deg)!important
}
 html[data-theme="present"] .present-card:before {
    content:"● GROWING / 2026"!important;
    color:var(--p-earth)!important
}
 html[data-theme="present"] .present-card b {
    color:var(--p-forest)!important
}
 html[data-theme="present"] .present-card small,html[data-theme="present"] .present-card span {
    color:#557064!important
}
 html[data-theme="present"] .present-card:after {
    content:"";
    position:absolute;
    right:22px;
    bottom:18px;
    width:54px;
    height:78px;
    border-radius:100% 0 100% 0;
    background:var(--p-leaf);
    opacity:.7;
    transform:rotate(22deg)
}
 html[data-theme="present"] .about-section {
    background:var(--p-cream)!important;
    color:var(--p-forest)!important;
    position:relative;
    overflow:hidden
}
 html[data-theme="present"] .about-section:before {
    content:"";
    position:absolute;
    left:-110px;
    bottom:-120px;
    width:380px;
    height:380px;
    border-radius:50%;
    border:1px solid rgba(111,143,99,.24);
    box-shadow:0 0 0 48px rgba(111,143,99,.055),0 0 0 96px rgba(111,143,99,.035)
}
 html[data-theme="present"] .kicker,html[data-theme="present"] .dark .kicker,html[data-theme="present"] #about .kicker,html[data-theme="present"] #skills .kicker,html[data-theme="present"] #work>.kicker {
    color:var(--p-earth)!important
}
 html[data-theme="present"] .about-heading h3,html[data-theme="present"] .section h3,html[data-theme="present"] .contact h3 {
    color:var(--p-forest)!important
}
 html[data-theme="present"] .section h3 em,html[data-theme="present"] .contact h3 em {
    color:var(--p-moss)!important
}
 html[data-theme="present"] .about-copy {
    color:#496357!important
}
 html[data-theme="present"] .present-about-prop {
    background:linear-gradient(145deg,var(--p-lime),var(--p-leaf))!important;
    color:var(--p-deep)!important;
    border-radius:22px 90px 22px 90px!important;
    box-shadow:0 24px 55px rgba(16,47,38,.13)!important
}
 html[data-theme="present"] .present-about-prop:before {
    border-color:rgba(16,47,38,.22)!important;
    box-shadow:0 0 0 22px rgba(16,47,38,.05),0 0 0 44px rgba(16,47,38,.03)!important
}
 html[data-theme="present"] .present-about-prop>i {
    color:var(--p-earth)!important
}
 html[data-theme="present"] .dark {
    background:linear-gradient(135deg,#102f26 0%,#173f32 55%,#214c3b 100%)!important;
    color:var(--p-cream)!important
}
 html[data-theme="present"] .dark:before {
    width:620px!important;
    height:620px!important;
    border-color:rgba(201,217,164,.11)!important;
    box-shadow:0 0 0 65px rgba(201,217,164,.025),0 0 0 130px rgba(201,217,164,.016)!important
}
 html[data-theme="present"] .dark h3 {
    color:var(--p-cream)!important
}
 html[data-theme="present"] .dark h3 em {
    color:var(--p-lime)!important
}
 html[data-theme="present"] .cards {
    gap:18px!important
}
 html[data-theme="present"] .cards article {
    background:rgba(242,240,223,.075)!important;
    border:1px solid rgba(201,217,164,.2)!important;
    border-radius:36px 12px 36px 12px!important;
    backdrop-filter:blur(6px)
}
 html[data-theme="present"] .cards article:nth-child(even) {
    border-radius:12px 36px 12px 36px!important
}
 html[data-theme="present"] .cards article:hover {
    background:var(--p-moss)!important;
    border-color:var(--p-leaf)!important;
    transform:translateY(-8px) rotate(-.5deg)!important
}
 html[data-theme="present"] .cards b {
    color:var(--p-lime)!important
}
 html[data-theme="present"] .cards p {
    color:#cbd7c0!important
}
 html[data-theme="present"] #work {
    background:#dfe7d0!important;
    box-shadow:0 0 0 100vmax #dfe7d0!important;
    clip-path:inset(0 -100vmax)!important;
    position:relative!important
}
 html[data-theme="present"] #work:before {
    content:"";
    position:absolute;
    right:-8vw;
    top:8%;
    width:310px;
    height:420px;
    opacity:.18;
    background:radial-gradient(ellipse at 40% 20%,var(--p-forest) 0 13%,transparent 14%),radial-gradient(ellipse at 68% 48%,var(--p-forest) 0 14%,transparent 15%),radial-gradient(ellipse at 32% 76%,var(--p-forest) 0 15%,transparent 16%);
    transform:rotate(25deg);
    pointer-events:none
}
 html[data-theme="present"] .projects article {
    background:#f8f5e8!important;
    border-radius:18px 58px 18px 18px!important;
    box-shadow:0 16px 38px rgba(16,47,38,.09)!important
}
 html[data-theme="present"] .projects article:nth-child(2) {
    border-radius:58px 18px 18px 18px!important
}
 html[data-theme="present"] .projects article:nth-child(3) {
    border-radius:18px 18px 58px 18px!important
}
 html[data-theme="present"] .projects article:hover {
    box-shadow:0 26px 55px rgba(16,47,38,.17)!important
}
 html[data-theme="present"] .projects h4 {
    color:var(--p-forest)!important
}
 html[data-theme="present"] .projects p {
    color:#536b5f!important
}
 html[data-theme="present"] .projects small {
    color:var(--p-earth)!important
}
 html[data-theme="present"] .project-visual {
    background:#9eb88b!important
}
 html[data-theme="present"] .projects article:nth-child(2) .project-visual {
    background:#c8d5a6!important
}
 html[data-theme="present"] .projects article:nth-child(3) .project-visual {
    background:#315f49!important
}
 html[data-theme="present"] .project-visual b:before {
    background:#f2f0df!important;
    border-radius:28px!important;
    box-shadow:0 12px 30px rgba(16,47,38,.14)!important
}
 html[data-theme="present"] .project-visual b:after {
    background:var(--p-forest)!important;
    box-shadow:0 12px 0 var(--p-earth),0 24px 0 var(--p-leaf)!important
}
 html[data-theme="present"] .contact {
    background:var(--p-deep)!important;
    color:var(--p-cream)!important;
    overflow:hidden
}
 html[data-theme="present"] .contact .present-video {
    opacity:.52!important;
    filter:saturate(.82) contrast(.92) brightness(.72)!important;
    mix-blend-mode:normal!important
}
 html[data-theme="present"] .contact .video-shade {
    background:linear-gradient(90deg,rgba(16,47,38,.97) 0%,rgba(16,47,38,.86) 46%,rgba(16,47,38,.42) 100%)!important;
    opacity:1!important
}
 html[data-theme="present"] .contact-copy>p {
    color:var(--p-lime)!important
}
 html[data-theme="present"] .contact h3 {
    color:var(--p-cream)!important
}
 html[data-theme="present"] .contact h3 em {
    color:var(--p-lime)!important
}
 html[data-theme="present"] .contact-copy>span {
    color:#d4ddc6!important
}
 html[data-theme="present"] .contact-form {
    background:rgba(242,240,223,.93)!important;
    color:var(--p-forest)!important;
    border:1px solid rgba(242,240,223,.55)!important;
    border-radius:58px 18px 58px 18px!important;
    box-shadow:0 30px 80px rgba(4,25,18,.3)!important;
    backdrop-filter:blur(14px)!important
}
 html[data-theme="present"] .contact-form:before {
    content:none!important;
    display:none!important
}
 html[data-theme="present"] .contact-form label {
    color:var(--p-forest)!important
}
 html[data-theme="present"] .contact-form input,html[data-theme="present"] .contact-form textarea {
    color:var(--p-forest)!important;
    border-bottom-color:rgba(23,63,50,.36)!important
}
 html[data-theme="present"] .contact-form input:focus,html[data-theme="present"] .contact-form textarea:focus {
    border-color:var(--p-moss)!important;
    box-shadow:0 2px 0 var(--p-moss)!important
}
 html[data-theme="present"] .contact-form button {
    background:var(--p-forest)!important;
    color:var(--p-cream)!important;
    border-radius:999px!important
}
 html[data-theme="present"] .contact-form button:hover {
    background:var(--p-earth)!important;
    color:#fff!important;
    box-shadow:0 12px 28px rgba(16,47,38,.18)!important
}
 html[data-theme="present"] footer {
    background:#0b281f!important;
    color:var(--p-cream)!important
}
 html[data-theme="present"] footer span {
    color:var(--p-leaf)!important
}
 @media(max-width:760px) {
     html[data-theme="present"] .hero:before {
        right:-190px;
        opacity:.15
    }
     html[data-theme="present"] .present-card {
        border-radius:42px 14px 42px 14px!important
    }
     html[data-theme="present"] .contact-form {
        border-radius:42px 14px 42px 14px!important
    }

}

/* ===== V20.1 — JELENKOR: organikus projektek + neon grid eltávolítás ===== */ html[data-theme="present"] .retro-fx, html[data-theme="present"] .gridfloor, html[data-theme="present"] .stars {
     display:none!important;

}

/* 03 / KIEMELT KÜLDETÉSEK — természetközeli, kert/editorial hangulat */ html[data-theme="present"] #work {
     background: radial-gradient(circle at 8% 16%,rgba(118,145,91,.14) 0 5%,transparent 5.2%), radial-gradient(circle at 93% 78%,rgba(78,111,76,.11) 0 7%,transparent 7.2%), linear-gradient(145deg,#edf0df 0%,#e1e9d3 52%,#d6e2ca 100%)!important;
     box-shadow:0 0 0 100vmax #e1e9d3!important;
     clip-path:inset(0 -100vmax)!important;
     overflow:hidden!important;

}
 html[data-theme="present"] #work:before {
     content:""!important;
     position:absolute!important;
     width:420px!important;
    height:560px!important;
     right:-145px!important;
    top:-55px!important;
     opacity:.2!important;
     background: radial-gradient(ellipse at 40% 18%,#54745c 0 10%,transparent 10.5%), radial-gradient(ellipse at 66% 34%,#7e9a6d 0 12%,transparent 12.5%), radial-gradient(ellipse at 35% 52%,#54745c 0 13%,transparent 13.5%), radial-gradient(ellipse at 68% 70%,#91a97b 0 12%,transparent 12.5%), linear-gradient(72deg,transparent 48.8%,#54745c 49% 50.5%,transparent 50.7%)!important;
     transform:rotate(13deg)!important;
     pointer-events:none!important;

}
 html[data-theme="present"] #work:after {
     content:"";
    position:absolute;
    left:-100px;
    bottom:-150px;
    width:340px;
    height:340px;
     border:1px solid rgba(58,92,68,.15);
    border-radius:50%;
     box-shadow:0 0 0 42px rgba(58,92,68,.035),0 0 0 84px rgba(58,92,68,.025);
     pointer-events:none;

}
 html[data-theme="present"] #work>.kicker {
    color:#9b5f43!important;
    position:relative;
    z-index:2
}
 html[data-theme="present"] #work>h3 {
    position:relative;
    z-index:2;
    color:#173f32!important
}
 html[data-theme="present"] #work>h3 em {
    color:#6f8f63!important
}
 html[data-theme="present"] #work .projects {
    gap:26px!important;
    position:relative;
    z-index:2;
    align-items:stretch
}
 html[data-theme="present"] #work .projects article {
     position:relative!important;
    overflow:hidden!important;
     padding:16px 16px 24px!important;
     border:1px solid rgba(38,77,56,.12)!important;
     background:rgba(248,247,235,.9)!important;
     box-shadow:0 18px 42px rgba(38,69,49,.08)!important;
     min-height:455px!important;
     transition:transform .35s ease,box-shadow .35s ease!important;

}
 html[data-theme="present"] #work .projects article:nth-child(1) {
    border-radius:72px 24px 72px 24px!important;
    transform:rotate(-.45deg)
}
 html[data-theme="present"] #work .projects article:nth-child(2) {
    border-radius:24px 72px 24px 72px!important;
    transform:translateY(18px) rotate(.35deg)
}
 html[data-theme="present"] #work .projects article:nth-child(3) {
    border-radius:72px 24px 42px 24px!important;
    transform:rotate(.45deg)
}
 html[data-theme="present"] #work .projects article:hover {
    transform:translateY(-9px) rotate(0)!important;
    box-shadow:0 28px 58px rgba(38,69,49,.15)!important
}
 html[data-theme="present"] #work .art {
     height:245px!important;
    border-radius:56px 18px 56px 18px!important;
     background:#d5dfc2!important;
    overflow:hidden!important;
    isolation:isolate;

}
 html[data-theme="present"] #work article:nth-child(2) .art {
    background:#c5d5ae!important;
    border-radius:18px 56px 18px 56px!important
}
 html[data-theme="present"] #work article:nth-child(3) .art {
    background:#9fb89a!important;
    border-radius:56px 18px 38px 18px!important
}
 html[data-theme="present"] #work .art>span {
     z-index:5!important;
    top:18px!important;
    left:20px!important;
    color:#315d46!important;
     font:800 10px Inter,sans-serif!important;
    letter-spacing:2px!important;
     background:rgba(248,247,235,.72)!important;
    border-radius:999px!important;
    padding:7px 10px!important;

}
 html[data-theme="present"] #work .project-visual {
     width:100%!important;
    height:100%!important;
    border:0!important;
    transform:none!important;
     position:relative!important;
    background:transparent!important;
    display:block!important;

}

/* Levélág + organikus "digitális mag" — minden kártyán más kompozíció */ html[data-theme="present"] #work .project-visual:before {
     content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:118px;
    height:82px;
    transform:translate(-50%,-50%) rotate(-3deg);
     border-radius:46px 22px 46px 22px;
    background:#f6f3e4;
     box-shadow:0 16px 34px rgba(42,76,53,.13),-78px 42px 0 -28px #6f8f63,78px -48px 0 -32px #86a477;

}
 html[data-theme="present"] #work .project-visual:after {
     content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:58px;
    height:4px;
    transform:translate(-50%,-12px);
     border-radius:10px;
    background:#315d46;
    box-shadow:0 14px 0 #9b5f43,0 28px 0 #8aa26f;

}
 html[data-theme="present"] #work article:nth-child(2) .project-visual:before {
    transform:translate(-50%,-50%) rotate(4deg);
    border-radius:22px 50px 22px 50px;
    box-shadow:0 16px 34px rgba(42,76,53,.13),-82px -45px 0 -30px #789866,82px 46px 0 -29px #55795d
}
 html[data-theme="present"] #work article:nth-child(3) .project-visual:before {
    border-radius:50%;
    width:104px;
    height:104px;
    box-shadow:0 16px 34px rgba(42,76,53,.13),-78px 18px 0 -30px #54745c,75px 32px 0 -27px #c9d5a8
}
 html[data-theme="present"] #work .project-visual>i, html[data-theme="present"] #work .project-visual>b {
    display:none!important
}
 html[data-theme="present"] #work .projects h4 {
    font-family:Inter,sans-serif!important;
    font-size:22px!important;
    letter-spacing:-.7px!important;
    color:#173f32!important;
    margin:26px 0 10px!important
}
 html[data-theme="present"] #work .projects p {
    font-size:15px!important;
    line-height:1.65!important;
    color:#557064!important;
    margin:0 0 24px!important
}
 html[data-theme="present"] #work .projects small {
    font-family:Inter,sans-serif!important;
    font-size:10px!important;
    letter-spacing:1.2px!important;
    color:#9b5f43!important;
    text-transform:uppercase!important
}
 @media(max-width:900px) {
     html[data-theme="present"] #work .projects article:nth-child(2) {
        transform:none
    }
     html[data-theme="present"] #work .projects article:nth-child(1),html[data-theme="present"] #work .projects article:nth-child(3) {
        transform:none
    }

}

/* ===== V20.2 — JELENKOR / 03 háttér valóban faltól falig ===== */ html[data-theme="present"] #work.section.shell {
     width:100vw!important;
     max-width:none!important;
     margin-left:calc(50% - 50vw)!important;
     margin-right:calc(50% - 50vw)!important;
     padding-left:max(24px,calc((100vw - 1180px)/2))!important;
     padding-right:max(24px,calc((100vw - 1180px)/2))!important;
     box-shadow:none!important;
     clip-path:none!important;

}
 @media(max-width:650px) {
     html[data-theme="present"] #work.section.shell {
         padding-left:14px!important;
         padding-right:14px!important;

    }

}

/* =========================================================
   V20.3 — ŐSKOR / 02 ESZKÖZTÁR
   Kővel megdobott kőtábla hover + melegebb projekt-meta szín
   ========================================================= */
/* A korábbi Őskor-hover felülírása: hoverkor egy kő repül be balról. */ html[data-theme="stone"] #skills .cards article {
     position: relative;
     isolation: isolate;
     overflow: hidden !important;
     transition: transform .28s ease, box-shadow .28s ease, filter .28s ease !important;

}
 html[data-theme="stone"] #skills .cards article:hover {
     animation: prehistoricStoneHit .48s cubic-bezier(.2,.8,.25,1) !important;
     transform: translateY(-6px) rotate(-.25deg) !important;
     box-shadow: inset 0 0 0 2px #c08a5548, inset 12px 14px 28px #0007, 0 24px 0 -15px #6e4529, 0 34px 55px #000b !important;
     filter: brightness(1.08) contrast(1.04);

}

/* Maga a berepülő kő. */ html[data-theme="stone"] #skills .cards article::after {
     content: "" !important;
     display: block !important;
     position: absolute !important;
     z-index: 8 !important;
     left: 72% !important;
     top: 38% !important;
     width: 42px !important;
     height: 34px !important;
     border-radius: 48% 52% 44% 56% / 58% 42% 60% 40% !important;
     opacity: 0;
     pointer-events: none;
     background: radial-gradient(circle at 32% 28%, #b98958 0 7%, transparent 8%), radial-gradient(circle at 68% 64%, #4b301d 0 8%, transparent 9%), linear-gradient(145deg, #a87445 0%, #725034 46%, #3d281a 100%);
     box-shadow: inset 5px 4px 8px #d2a06a55, inset -6px -6px 9px #24160dbb, 5px 8px 10px #0008;
     transform: translate(-430px, -125px) rotate(-210deg) scale(.72);

}
 html[data-theme="stone"] #skills .cards article:hover::after {
     animation: prehistoricFlyingStone .48s cubic-bezier(.16,.76,.25,1) forwards !important;

}

/* Porfelhő a találati pontnál — nem lövésnyom és nem marad ott. */ html[data-theme="stone"] #skills .cards article::before {
     content: "" !important;
     display: block !important;
     position: absolute;
     z-index: 7;
     left: 72%;
     top: 38%;
     width: 112px;
     height: 82px;
     border-radius: 50%;
     opacity: 0;
     pointer-events: none;
     background: radial-gradient(circle at 50% 50%, #d0a36f66 0 8%, transparent 9%), radial-gradient(circle at 30% 56%, #a978493f 0 9%, transparent 10%), radial-gradient(circle at 68% 38%, #d5ad7a45 0 7%, transparent 8%), radial-gradient(circle at 58% 70%, #8d623b38 0 10%, transparent 11%);
     filter: blur(1px);
     transform: translate(-50%, -50%) scale(.25);

}
 html[data-theme="stone"] #skills .cards article:hover::before {
     animation: prehistoricStoneDust .52s .28s ease-out forwards;

}
 @keyframes prehistoricFlyingStone {
     0% {
         opacity: 0;
         transform: translate(-430px, -125px) rotate(-210deg) scale(.72);

    }
     15% {
         opacity: 1;

    }
     78% {
         opacity: 1;
         transform: translate(-28px, -8px) rotate(155deg) scale(1);

    }
     86% {
         opacity: 1;
         transform: translate(-5px, -1px) rotate(178deg) scale(1.08);

    }
     100% {
         opacity: 0;
         transform: translate(34px, 22px) rotate(225deg) scale(.9);

    }

}
 @keyframes prehistoricStoneDust {
     0% {
         opacity: 0;
         transform: translate(-50%, -50%) scale(.2);

    }
     28% {
         opacity: .9;

    }
     100% {
         opacity: 0;
         transform: translate(-50%, -50%) scale(1.55);

    }

}
 @keyframes prehistoricStoneHit {
     0%, 58% {
         transform: translateY(-6px) rotate(-.25deg);

    }
     68% {
         transform: translate(-8px, -3px) rotate(-1.1deg);

    }
     78% {
         transform: translate(6px, -7px) rotate(.65deg);

    }
     88% {
         transform: translate(-3px, -5px) rotate(-.4deg);

    }
     100% {
         transform: translateY(-6px) rotate(-.25deg);

    }

}

/* Őskori projektkártyák kis meta/tag szövege. */ html[data-theme="stone"] .art small, html[data-theme="stone"] .projects article small {
     color: #c98a4b !important;

}

/* =========================================================
   V21 — INTERAKTÍV IDŐUTAZÁS
   Érkezési effektek, időgép-műszerfal, projektélmények,
   hangkapcsoló, easter eggek és a titkos 4042-es idővonal.
========================================================= */
.sound-toggle span{margin-left:5px}
.time-dashboard{position:fixed;right:20px;bottom:20px;z-index:8400;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.dashboard-toggle{display:block;margin-left:auto;background:#171717;color:#ff8b5e;border:1px solid #555;border-radius:8px 8px 0 0;padding:8px 12px;font-weight:800;letter-spacing:.08em;cursor:pointer}.dashboard-panel{width:min(430px,calc(100vw - 40px));padding:12px;background:linear-gradient(#292929,#111);border:1px solid #555;border-radius:10px 0 10px 10px;box-shadow:0 18px 50px #0008;display:none;grid-template-columns:repeat(3,1fr);gap:8px}.time-dashboard.open .dashboard-panel{display:grid}.dashboard-panel>div{background:#070707;border:1px inset #555;padding:8px;border-radius:5px}.dashboard-panel small{display:block;color:#b8b8b8;font-size:8px;letter-spacing:.1em}.dashboard-panel strong{display:block;color:#ff5c49;text-shadow:0 0 9px #ff372b99;font-size:18px;margin-top:3px}.dashboard-panel>div:nth-child(2) strong{color:#65e68a;text-shadow:0 0 9px #3cff7099}.dashboard-panel>div:nth-child(3) strong{color:#ffb34f}.dashboard-years{grid-column:1/-1;display:flex;gap:6px}.dashboard-years button{flex:1;background:#242424;border:1px solid #555;color:#ddd;padding:7px 4px;border-radius:4px;cursor:pointer;font:700 10px ui-monospace,monospace}.dashboard-years button:hover{background:#444;color:#fff}
.arrival-layer{position:fixed;inset:0;z-index:9000;pointer-events:none;visibility:hidden;overflow:hidden}.arrival-layer.active{visibility:visible}.arrival-inner{position:absolute;inset:0}.arrival-layer.stone .arrival-inner{background:radial-gradient(circle at 20% 0,#a97b48aa 0 2%,transparent 3%),radial-gradient(circle at 70% 0,#765332aa 0 3%,transparent 4%);animation:stoneArrival 1.1s ease-out both}.arrival-layer.medieval .arrival-inner{background:#ead9b9;transform-origin:top center;box-shadow:0 0 80px #0008;animation:paperArrival 1s cubic-bezier(.2,.8,.2,1) both}.arrival-layer.retro .arrival-inner{background:repeating-linear-gradient(0deg,transparent 0 8px,#fff5 9px 10px),linear-gradient(90deg,#f0f3,#0ff3);animation:vhsArrival .85s steps(8) both}.arrival-layer.present .arrival-inner{background:radial-gradient(ellipse at 10% 10%,#315f3c99 0 7%,transparent 8%),radial-gradient(ellipse at 90% 30%,#6e8f5b88 0 9%,transparent 10%),radial-gradient(ellipse at 20% 90%,#b7c99588 0 8%,transparent 9%);filter:blur(10px);animation:leafArrival 1.2s ease-out both}.arrival-layer.cyber .arrival-inner{background:linear-gradient(#0ff2 1px,transparent 1px),linear-gradient(90deg,#0ff2 1px,transparent 1px),#02070bd9;background-size:36px 36px;animation:hudArrival 1s steps(10) both}
@keyframes stoneArrival{0%{opacity:1;transform:translateY(-8%);filter:blur(18px)}55%{opacity:.75;transform:translateY(4%)}100%{opacity:0;transform:translateY(18%);filter:blur(3px)}}@keyframes paperArrival{0%{opacity:1;transform:perspective(900px) rotateX(-90deg) scale(.8)}55%{transform:perspective(900px) rotateX(0) scale(1)}100%{opacity:0;transform:scale(1.04)}}@keyframes vhsArrival{0%{opacity:1;transform:translateX(-4%);filter:hue-rotate(80deg)}60%{transform:translateX(2%)}100%{opacity:0;transform:translateX(0)}}@keyframes leafArrival{0%{opacity:1;transform:scale(1.3) rotate(-5deg)}65%{opacity:.65}100%{opacity:0;transform:scale(.9) translateY(12%) rotate(4deg)}}@keyframes hudArrival{0%{opacity:1;clip-path:inset(50% 0)}60%{clip-path:inset(0)}100%{opacity:0;filter:brightness(2)}}
.projects article{cursor:pointer}.project-experience{position:fixed;inset:0;z-index:9200;display:grid;place-items:center;background:#000b;backdrop-filter:blur(9px);opacity:0;visibility:hidden;transition:.25s}.project-experience.open{opacity:1;visibility:visible}.project-frame{width:min(720px,88vw);padding:50px;position:relative}.project-frame h3{font-size:clamp(32px,6vw,70px);margin:.2em 0}.project-frame p{font-size:17px;line-height:1.7}.project-frame div{font-size:12px;letter-spacing:.13em;margin-top:24px}.project-close{position:absolute;right:25px;top:20px;z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid currentColor;background:transparent;color:#fff;font-size:28px;cursor:pointer}.project-experience.stone .project-frame{background:#6e5b43;color:#f1dfbd;border:8px ridge #9a805d;border-radius:32px 10px 28px 8px;box-shadow:inset 0 0 40px #291c0d,0 30px 80px #000;transform:rotateY(0);animation:stoneFlip .55s ease}.project-experience.medieval .project-frame{background:#e7d4aa;color:#342417;border:1px solid #6f2c32;box-shadow:12px 16px 0 #6f2c32;clip-path:polygon(2% 0,98% 2%,100% 96%,4% 100%);animation:letterOpen .6s ease}.project-experience.retro .project-frame{background:#16131e;color:#fff;border:18px solid #3b3445;border-radius:34px;box-shadow:inset 0 0 0 4px #0b0910,0 0 45px #ff38c788;animation:crtOn .45s steps(6)}.project-experience.retro .project-frame:after{content:"PLAY ▶  SP";position:absolute;right:24px;top:18px;color:#5ff;font:700 11px monospace}.project-experience.present .project-frame{background:#eef0e3;color:#24432d;border-radius:70px 24px 80px 30px;box-shadow:0 35px 90px #17382055;animation:organicFloat .55s ease}.project-experience.cyber .project-frame{background:#061016eF;color:#bafaff;border:1px solid #36edff;clip-path:polygon(0 18px,18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);box-shadow:0 0 55px #00d9ff55,inset 0 0 35px #00d9ff18;animation:holoIn .5s steps(8)}
@keyframes stoneFlip{from{transform:perspective(900px) rotateY(80deg) scale(.7)}to{transform:none}}@keyframes letterOpen{from{transform:scaleY(.05) rotate(-2deg)}to{transform:none}}@keyframes crtOn{0%{transform:scaleY(.02);filter:brightness(5)}100%{transform:scaleY(1);filter:none}}@keyframes organicFloat{from{opacity:0;transform:translateY(35px) scale(.94)}to{opacity:1;transform:none}}@keyframes holoIn{from{opacity:0;transform:translateY(-15px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
.easter-toast{position:fixed;left:50%;top:90px;z-index:9500;transform:translate(-50%,-20px);opacity:0;background:#17120d;color:#f4dfb9;border:1px solid #a77c45;border-radius:10px;padding:14px 20px;box-shadow:0 12px 45px #0007;font-weight:800;pointer-events:none;transition:.3s}.easter-toast.show{opacity:1;transform:translate(-50%,0)}
html[data-theme="stone"] .stone-about-prop{cursor:pointer}html[data-theme="retro"] .retro-about-prop{cursor:pointer}.retro-about-prop.ejected{transform:translateX(115%) rotate(7deg)!important;opacity:.2!important;transition:.8s cubic-bezier(.2,.8,.2,1)!important}
.future-terminal{position:fixed;right:22px;top:95px;z-index:3000;width:min(370px,calc(100vw - 44px));background:#031017eF;border:1px solid #28e9ff;color:#aafaff;box-shadow:0 0 30px #00dfff33;font:12px/1.5 ui-monospace,monospace}.terminal-head{padding:8px 10px;border-bottom:1px solid #28e9ff55;font-weight:800}.terminal-head span{float:right;color:#73ff9b}.terminal-output{min-height:48px;padding:10px}.future-terminal form{display:flex;border-top:1px solid #28e9ff55}.future-terminal form span{padding:8px}.future-terminal input{min-width:0;flex:1;background:transparent;border:0;color:#fff;outline:0;font:inherit}.future-terminal button{background:#28e9ff;color:#001015;border:0;font-weight:900;padding:0 12px;cursor:pointer}
.timeline-error{position:fixed;inset:0;z-index:12000;background:#020206;color:#d6faff;display:none;place-items:center;overflow:hidden}.timeline-error.open{display:grid}.error-grid{position:absolute;inset:0;background:linear-gradient(#00eaff18 1px,transparent 1px),linear-gradient(90deg,#ff2cd918 1px,transparent 1px);background-size:42px 42px;transform:perspective(600px) rotateX(62deg) scale(1.8);animation:errorGrid 4s linear infinite}.error-noise{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff08 4px);mix-blend-mode:overlay;opacity:.25;animation:errorNoise .15s steps(2) infinite}.error-content{position:relative;text-align:center;width:min(720px,88vw);padding:45px;border:1px solid #00eaff;box-shadow:0 0 70px #ff00d633;background:#03060bd9}.error-content h2{font:900 clamp(90px,20vw,220px)/.75 system-ui;margin:30px 0;color:#fff;text-shadow:8px 0 #00eaff,-8px 0 #ff20d5}.error-content h3{font-size:28px;letter-spacing:.12em}.error-content p{max-width:560px;margin:18px auto 30px;line-height:1.7;color:#9cb9c3}.error-content button{background:#00eaff;border:0;padding:14px 22px;font-weight:900;cursor:pointer}.error-content small{color:#ff4fd8}@keyframes errorGrid{to{background-position:0 42px}}@keyframes errorNoise{50%{transform:translateX(6px)}}
@media(max-width:700px){.time-dashboard{right:10px;bottom:68px}.dashboard-panel{grid-template-columns:1fr}.dashboard-years{flex-wrap:wrap}.dashboard-years button{min-width:30%}.project-frame{padding:34px 24px}.future-terminal{top:auto;bottom:125px}}

/* =========================================================
   V22 — FINOMHANGOLT IDŐGÉP / 4042 / TERMINÁL
   ========================================================= */
.time-dashboard{filter:drop-shadow(0 18px 30px #0008)}
.dashboard-toggle{position:relative;min-width:190px;border:1px solid #6d6659;background:linear-gradient(180deg,#3b3934,#181816);color:#f2d9a2;border-radius:9px 9px 0 0;box-shadow:inset 0 1px #ffffff24,0 -3px 0 #090909;padding:10px 14px;text-shadow:0 1px #000}
.dashboard-toggle span{color:#ffbd43}.dashboard-toggle i{font-style:normal;font-size:8px;color:#6dff86;margin-left:8px;letter-spacing:.16em}
.dashboard-panel{background:linear-gradient(145deg,#34322e,#11110f 55%,#26231e);border:2px solid #555047;box-shadow:inset 0 0 0 2px #171613,0 22px 65px #000b;padding:14px;gap:10px}
.dashboard-panel:before{content:"FK TEMPORAL CONTROL / REV. 2026";grid-column:1/-1;color:#8f887a;font:700 8px ui-monospace,monospace;letter-spacing:.2em;border-bottom:1px solid #ffffff12;padding-bottom:7px}
.circuit-readout{position:relative;overflow:hidden;background:linear-gradient(#090807,#020202)!important;border:2px inset #5a554d!important;padding:10px!important;box-shadow:inset 0 0 18px #000!important}
.circuit-readout:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);opacity:.025;pointer-events:none}
.circuit-readout small{color:#b9ad98!important}.circuit-readout strong{font-family:Oxanium,ui-monospace,monospace!important;font-size:20px!important;letter-spacing:.06em}.circuit-readout em{display:block;color:#68645d;font:700 7px ui-monospace,monospace;letter-spacing:.08em;margin-top:5px;font-style:normal}
.dashboard-years{padding-top:4px}.dashboard-years button{position:relative;background:linear-gradient(#302e29,#171614);border:1px solid #625d54;box-shadow:inset 0 1px #ffffff17,0 3px 0 #070707;border-radius:5px;color:#d7cbb6;transition:.18s}.dashboard-years button:hover{transform:translateY(-1px);background:#423d34;color:#fff4d7}.dashboard-years button:active{transform:translateY(2px);box-shadow:none}
.future-terminal{border-radius:4px;overflow:hidden;background:linear-gradient(180deg,#03151ceF,#020a0eef);box-shadow:0 0 0 1px #052d36,0 0 45px #00dfff38}.terminal-output{min-height:72px;white-space:pre-line}.future-terminal input::placeholder{color:#4a8189}
.timeline-error{background:radial-gradient(circle at 50% 30%,#10132a 0,#030308 45%,#010103 100%)}
.error-fragments{position:absolute;inset:0;pointer-events:none;font:700 10px ui-monospace,monospace;color:#53efff55;letter-spacing:.12em}.error-fragments span{position:absolute;padding:7px 10px;border:1px solid #00eaff25;background:#00131955;animation:fragmentDrift 5s ease-in-out infinite}.error-fragments span:nth-child(1){left:5%;top:15%}.error-fragments span:nth-child(2){right:7%;top:22%;animation-delay:-1s;color:#ff53d466}.error-fragments span:nth-child(3){left:9%;bottom:14%;animation-delay:-2.2s}.error-fragments span:nth-child(4){right:5%;bottom:12%;animation-delay:-3s;color:#ffcc6666}
.error-content{width:min(780px,90vw);border:1px solid #00eaff88;clip-path:polygon(0 20px,20px 0,calc(100% - 20px) 0,100% 20px,100% calc(100% - 20px),calc(100% - 20px) 100%,20px 100%,0 calc(100% - 20px));background:linear-gradient(145deg,#07101beF,#020307ef);box-shadow:0 0 0 1px #ff20d522,0 0 90px #00eaff22;padding:42px 50px}
.error-content h2{margin:24px 0 20px}.error-content h3{margin:0}.error-diagnostics{display:grid;grid-template-columns:1fr 1fr;gap:7px;text-align:left;max-width:560px;margin:24px auto;padding:15px;border:1px solid #00eaff33;background:#00131a88;font:700 10px ui-monospace,monospace}.error-diagnostics b{grid-column:1/-1;color:#00eaff;letter-spacing:.16em;margin-bottom:4px}.error-diagnostics span{display:flex;justify-content:space-between;gap:12px;color:#789aa5}.error-diagnostics i{font-style:normal;color:#ff5bd6}.error-hint{font:700 10px ui-monospace,monospace!important;color:#ffcf69!important;letter-spacing:.08em}.error-content button{clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:.2s}.error-content button:hover{background:#ff42d5;box-shadow:0 0 35px #ff42d588;transform:translateY(-2px)}
@keyframes fragmentDrift{50%{transform:translateY(12px) translateX(5px);opacity:.45}}
@media(max-width:700px){.error-content{padding:32px 20px}.error-diagnostics{grid-template-columns:1fr}.error-diagnostics b{grid-column:auto}.dashboard-toggle{min-width:165px}}

/* =========================================================
   V22.1 – 2099 / PORTÁLPROTOKOLL NYOM
   A titkos 4042-es idővonal első, mindig elérhető vizuális nyoma.
========================================================= */
.cyber-about-prop {
    position: relative;
    overflow: hidden;
}

.cyber-about-prop::before {
    content: "PORTAL_PROTOCOL: LOCKED";
    position: absolute;
    inset: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background:
        repeating-linear-gradient(
            0deg,
            rgba(0, 247, 255, 0.04) 0,
            rgba(0, 247, 255, 0.04) 1px,
            transparent 1px,
            transparent 5px
        ),
        rgba(1, 9, 14, 0.94);
    border: 1px solid rgba(255, 53, 207, 0.7);
    color: #ff35cf;
    font: 800 clamp(12px, 1.15vw, 16px)/1.35 Oxanium, sans-serif;
    letter-spacing: 0.12em;
    text-align: center;
    text-shadow:
        2px 0 0 rgba(0, 247, 255, 0.55),
        -2px 0 0 rgba(255, 53, 207, 0.35),
        0 0 16px rgba(255, 53, 207, 0.6);
    opacity: 0;
    transform: translateY(8px) scale(0.985);
    pointer-events: none;
    transition: opacity 0.16s ease, transform 0.16s ease;
}

.cyber-about-prop::after {
    content: "TITKOS PROTOKOLL ÉSZLELVE // TERMINÁL: DIAGNOSTIC";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    z-index: 6;
    color: #00f7ff;
    font: 600 8px/1.45 Oxanium, sans-serif;
    letter-spacing: 0.08em;
    text-align: center;
    opacity: 0;
    transform: translateY(5px);
    pointer-events: none;
    transition: opacity 0.16s ease 0.08s, transform 0.16s ease 0.08s;
}

html[data-theme="cyber"] .cyber-about-prop:hover::before,
html[data-theme="cyber"] .cyber-about-prop:hover::after {
    opacity: 1;
    transform: translateY(0) scale(1);
}

html[data-theme="cyber"] .cyber-about-prop:hover {
    transform: translateY(-9px);
    box-shadow:
        0 0 65px rgba(0, 247, 255, 0.35),
        inset 0 0 35px rgba(255, 53, 207, 0.08);
}
\n\n/* =========================================================\n   V22.2 – RETRO KAZETTA / ALTERNATÍV 1986 PALETTA\n   A kazetta kattintással váltja az 1986-os korszak színvilágát.\n   Nincs globális invert(): a színek kontrolláltan vannak cserélve.\n========================================================= */\nhtml[data-theme="retro"] .retro-about-prop {\n    cursor: pointer;\n    user-select: none;\n    transition: transform .3s ease, filter .3s ease, box-shadow .3s ease;\n}\nhtml[data-theme="retro"] .retro-about-prop:hover {\n    transform: translateY(-7px) rotate(-1deg);\n    filter: saturate(1.15) brightness(1.06);\n}\nhtml[data-theme="retro"] .retro-about-prop.tape-flipping {\n    animation: retroTapeFlip .72s cubic-bezier(.2,.75,.2,1);\n}\n@keyframes retroTapeFlip {\n    0% { transform: perspective(900px) rotateY(0) translateY(0); }\n    42% { transform: perspective(900px) rotateY(88deg) translateY(-8px) scale(.96); filter: brightness(1.8) saturate(1.8); }\n    58% { transform: perspective(900px) rotateY(92deg) translateY(-8px) scale(.96); }\n    100% { transform: perspective(900px) rotateY(180deg) translateY(0); }\n}\nbody.retro-tracking::after {\n    content: "TRACKING... / TAPE FLIP";\n    position: fixed;\n    inset: 0;\n    z-index: 11950;\n    pointer-events: none;\n    display: grid;\n    place-items: center;\n    color: #fff;\n    font: 900 clamp(18px,3vw,38px)/1 ui-monospace, monospace;\n    letter-spacing: .12em;\n    text-shadow: 4px 0 #00f7ff, -4px 0 #ff2bd6;\n    background: repeating-linear-gradient(0deg, transparent 0 6px, rgba(255,255,255,.09) 7px, transparent 9px);\n    animation: retroTracking .62s steps(7) both;\n}\n@keyframes retroTracking {\n    0% { opacity:0; transform:translateY(-4%); }\n    15%,72% { opacity:1; }\n    24% { transform:translate(8px,3%); }\n    46% { transform:translate(-11px,-2%); }\n    100% { opacity:0; transform:translateY(5%); }\n}\n\n/* Alternatív VHS-paletta: magenta/lila helyett cián, elektromos zöld és hideg kék. */\nhtml[data-theme="retro"].retro-inverted {\n    --pink: #00f7ff;\n    --purple: #32ff8a;\n}\nhtml[data-theme="retro"].retro-inverted body {\n    background: #06141d;\n}\nhtml[data-theme="retro"].retro-inverted .retro-video {\n    filter: hue-rotate(145deg) saturate(1.35) contrast(1.08);\n}\nhtml[data-theme="retro"].retro-inverted .video-shade {\n    background: linear-gradient(180deg, rgba(0,20,30,.12), rgba(0,7,16,.68));\n}\nhtml[data-theme="retro"].retro-inverted .section,\nhtml[data-theme="retro"].retro-inverted #about,\nhtml[data-theme="retro"].retro-inverted #tools,\nhtml[data-theme="retro"].retro-inverted #work,\nhtml[data-theme="retro"].retro-inverted #contact {\n    --retro-alt-accent: #00f7ff;\n}\nhtml[data-theme="retro"].retro-inverted .kicker,\nhtml[data-theme="retro"].retro-inverted h3 em,\nhtml[data-theme="retro"].retro-inverted .art small,\nhtml[data-theme="retro"].retro-inverted .projects small {\n    color: #00f7ff !important;\n}\nhtml[data-theme="retro"].retro-inverted .actions a,\nhtml[data-theme="retro"].retro-inverted .contact-form button {\n    border-color: #00f7ff !important;\n    box-shadow: 4px 4px 0 #32ff8a !important;\n}\nhtml[data-theme="retro"].retro-inverted .actions a:hover,\nhtml[data-theme="retro"].retro-inverted .contact-form button:hover {\n    background: #00f7ff !important;\n    color: #041017 !important;\n}\nhtml[data-theme="retro"].retro-inverted .retro-about-prop,\nhtml[data-theme="retro"].retro-inverted .projects article,\nhtml[data-theme="retro"].retro-inverted .art {\n    border-color: #00f7ff !important;\n    box-shadow: 6px 6px 0 rgba(50,255,138,.55), 0 0 28px rgba(0,247,255,.16) !important;\n}\nhtml[data-theme="retro"].retro-inverted .retro-fx {\n    filter: hue-rotate(145deg) saturate(1.45);\n}\n
/* =========================================================
   V22.4 – RETRO B-OLDAL + FLUXUSKONDENZÁTOR
========================================================= */
/* A műszerfal teljesen a viewport aljára ül. */
.time-dashboard {
    right: 18px;
    bottom: 0 !important;
}
.dashboard-toggle {
    border-radius: 9px 9px 0 0;
}

/* A kazetta B-oldala valódi, teljes Retro témaállapotot kapcsol. */
html[data-theme="retro"].retro-inverted body,
html[data-theme="retro"].retro-inverted main,
html[data-theme="retro"].retro-inverted .section {
    background-color: #04171b !important;
    color: #dffcff !important;
}
html[data-theme="retro"].retro-inverted .hero .video-shade {
    background: linear-gradient(180deg, rgba(0,18,24,.06), rgba(0,12,18,.62)) !important;
}
html[data-theme="retro"].retro-inverted .retro-video {
    filter: hue-rotate(142deg) saturate(1.75) contrast(1.14) brightness(.92) !important;
}
html[data-theme="retro"].retro-inverted .gridfloor,
html[data-theme="retro"].retro-inverted .retro-fx {
    filter: hue-rotate(145deg) saturate(1.8) brightness(1.15) !important;
}
html[data-theme="retro"].retro-inverted h1 strong,
html[data-theme="retro"].retro-inverted h2,
html[data-theme="retro"].retro-inverted h3 em,
html[data-theme="retro"].retro-inverted .kicker,
html[data-theme="retro"].retro-inverted .eyebrow {
    color: #00f7ff !important;
    text-shadow: 3px 3px 0 #0b4f72, -2px -2px 0 #39ff88 !important;
}
html[data-theme="retro"].retro-inverted .about-section,
html[data-theme="retro"].retro-inverted #tools,
html[data-theme="retro"].retro-inverted #work,
html[data-theme="retro"].retro-inverted #contact {
    background: #061d23 !important;
}
html[data-theme="retro"].retro-inverted .art,
html[data-theme="retro"].retro-inverted .projects article,
html[data-theme="retro"].retro-inverted .retro-about-prop,
html[data-theme="retro"].retro-inverted .contact-form {
    background: #0a2630 !important;
    color: #eaffff !important;
    border-color: #00f7ff !important;
    box-shadow: 7px 7px 0 #39ff88 !important;
}
html[data-theme="retro"].retro-inverted .art *,
html[data-theme="retro"].retro-inverted .projects article *,
html[data-theme="retro"].retro-inverted .about-copy,
html[data-theme="retro"].retro-inverted .about-copy p {
    color: #eaffff;
}
html[data-theme="retro"].retro-inverted .art small,
html[data-theme="retro"].retro-inverted .projects small,
html[data-theme="retro"].retro-inverted .retro-about-prop small {
    color: #39ff88 !important;
}
html[data-theme="retro"].retro-inverted .actions a,
html[data-theme="retro"].retro-inverted .contact-form button {
    background: #071b24 !important;
    color: #00f7ff !important;
    border-color: #00f7ff !important;
    box-shadow: 5px 5px 0 #39ff88 !important;
}
html[data-theme="retro"].retro-inverted .actions a:hover,
html[data-theme="retro"].retro-inverted .contact-form button:hover {
    background: #00f7ff !important;
    color: #031014 !important;
}
html[data-theme="retro"].retro-inverted input,
html[data-theme="retro"].retro-inverted textarea {
    background: #031419 !important;
    border-color: #238c91 !important;
    color: #eaffff !important;
}
html[data-theme="retro"].retro-inverted .retro-about-prop::after {
    content: "B OLDAL // NIGHT DRIVE";
    position: absolute;
    right: 14px;
    top: 14px;
    padding: 5px 8px;
    background: #39ff88;
    color: #041014;
    font: 900 9px/1 ui-monospace, monospace;
    letter-spacing: .12em;
    transform: rotate(2deg);
    box-shadow: 3px 3px 0 #00f7ff;
}
html[data-theme="retro"].retro-inverted .retro-about-prop .reel {
    animation: retroReelSpin 1.1s linear infinite;
}
@keyframes retroReelSpin { to { transform: rotate(360deg); } }

/* Kreatív extra: B-oldalon a scanline időnként "elveszíti a trackinget". */
html[data-theme="retro"].retro-inverted .hero::after {
    content: "B-SIDE // SIGNAL LOCKED // FK 1986";
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 8;
    color: #39ff88;
    font: 800 9px/1 ui-monospace, monospace;
    letter-spacing: .16em;
    opacity: .78;
    animation: retroSignalBlink 3.8s steps(1,end) infinite;
}
@keyframes retroSignalBlink { 0%,91%,100%{opacity:.78} 92%{opacity:.1} 94%{opacity:1} 96%{opacity:.28} }

/* =========================================================
   V22.5 – RETRO B-OLDAL FINOMHANGOLÁS
   - 02 / Eszköztár teljes alternatív paletta
   - 03 / Projektek faltól falig érő B-oldal háttér
   - 04 / Kapcsolat videó + overlay valóban cián/zöld
   - Kazettáról a B OLDAL / NIGHT DRIVE matrica eltávolítva
========================================================= */

/* 02 / ESZKÖZTÁR – a .dark szekció és a négy szolgáltatáskártya is váltson. */
html[data-theme="retro"].retro-inverted #skills.dark {
    background: #061d23 !important;
    color: #eaffff !important;
    background-image:
        linear-gradient(rgba(0, 247, 255, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(57, 255, 136, 0.025) 1px, transparent 1px) !important;
    background-size: 100% 4px, 44px 44px !important;
}

html[data-theme="retro"].retro-inverted #skills.dark::before {
    color: #00f7ff !important;
}

html[data-theme="retro"].retro-inverted #skills .kicker,
html[data-theme="retro"].retro-inverted #skills.dark .kicker,
html[data-theme="retro"].retro-inverted #skills.dark .cards b {
    color: #39ff88 !important;
    text-shadow: 2px 0 #00f7ff, -2px 0 rgba(57, 255, 136, 0.35) !important;
}

html[data-theme="retro"].retro-inverted #skills.dark .cards {
    background: rgba(0, 247, 255, 0.08) !important;
    border-color: #00f7ff !important;
    box-shadow: 12px 12px 0 rgba(57, 255, 136, 0.55), 0 0 34px rgba(0, 247, 255, 0.12) !important;
}

html[data-theme="retro"].retro-inverted #skills.dark .cards article {
    background: #0a2630 !important;
    color: #eaffff !important;
    border-color: rgba(0, 247, 255, 0.42) !important;
}

html[data-theme="retro"].retro-inverted #skills.dark .cards p {
    color: #b9e8e5 !important;
}

/* 03 / KIEMELT KÜLDETÉSEK – a háttér ne a .shell szélességén álljon meg. */
html[data-theme="retro"].retro-inverted #work.section.shell {
    position: relative;
    background: #061d23 !important;
    box-shadow: 0 0 0 100vmax #061d23 !important;
    clip-path: inset(0 -100vmax) !important;
}

html[data-theme="retro"].retro-inverted #work > .kicker {
    color: #39ff88 !important;
}

/* 04 / KAPCSOLAT – külön B-oldalas videókezelés, hogy ne maradjon lila. */
html[data-theme="retro"].retro-inverted #contact.contact {
    background: #031419 !important;
}

html[data-theme="retro"].retro-inverted #contact.contact .retro-video {
    filter: grayscale(0.12) hue-rotate(112deg) saturate(2.15) contrast(1.12) brightness(0.82) !important;
}

html[data-theme="retro"].retro-inverted #contact.contact .video-shade {
    background:
        linear-gradient(90deg,
            rgba(1, 23, 28, 0.94) 0%,
            rgba(0, 76, 75, 0.64) 48%,
            rgba(1, 20, 27, 0.88) 100%),
        linear-gradient(180deg, rgba(0, 247, 255, 0.08), rgba(57, 255, 136, 0.08)) !important;
}

html[data-theme="retro"].retro-inverted #contact .contact-copy > p {
    color: #39ff88 !important;
}

html[data-theme="retro"].retro-inverted #contact .contact-copy h3 {
    color: #eaffff !important;
    text-shadow: 3px 3px 0 #08777b !important;
}

html[data-theme="retro"].retro-inverted #contact .contact-copy h3 em {
    color: #00f7ff !important;
    text-shadow: 4px 4px 0 #0a6d57 !important;
}

/* A kazettán ne jelenjen meg külön B-oldal felirat/matrica. */
html[data-theme="retro"].retro-inverted .retro-about-prop::after {
    content: none !important;
    display: none !important;
}

/* =========================================================
   V23 – TEMPORAL PROPS / KORSZAKONKÉNTI TITKOS INTERAKCIÓK
========================================================= */
.stone-about-prop,.medieval-about-prop,.retro-about-prop,.present-about-prop,.cyber-about-prop{cursor:pointer;position:relative;outline:none}
.temporal-tooltip{position:absolute;left:50%;bottom:calc(100% + 14px);transform:translate(-50%,8px);z-index:90;width:max-content;max-width:280px;padding:9px 13px;opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease;font-size:11px;font-weight:800;letter-spacing:.08em;text-align:center}
.stone-about-prop:hover .temporal-tooltip,.medieval-about-prop:hover .temporal-tooltip,.retro-about-prop:hover .temporal-tooltip,.present-about-prop:hover .temporal-tooltip,.cyber-about-prop:hover .temporal-tooltip,.stone-about-prop:focus-visible .temporal-tooltip,.medieval-about-prop:focus-visible .temporal-tooltip,.retro-about-prop:focus-visible .temporal-tooltip,.present-about-prop:focus-visible .temporal-tooltip,.cyber-about-prop:focus-visible .temporal-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}
html[data-theme="stone"] .temporal-tooltip{background:#3a281c;color:#efbd73;border:2px solid #8b6037;border-radius:9px;box-shadow:4px 5px 0 #1f1711;text-shadow:1px 1px #000}
html[data-theme="medieval"] .temporal-tooltip{background:#ead8aa;color:#5b201f;border:1px solid #7a302d;box-shadow:0 7px 20px #2d161544;font-family:Georgia,serif;letter-spacing:.04em}
html[data-theme="retro"] .temporal-tooltip{background:#090c21;color:#fff;border:2px solid var(--pink,#ff2bd6);box-shadow:4px 4px 0 var(--purple,#6d37ff);font-family:monospace;text-shadow:2px 0 #00f7ff,-2px 0 #ff2bd6}
html[data-theme="present"] .temporal-tooltip{background:#f3efe4;color:#284d39;border:1px solid #86a77e;border-radius:999px;box-shadow:0 10px 28px #315c4430;letter-spacing:.03em}
html[data-theme="cyber"] .temporal-tooltip{background:#031b22;color:#52f7ff;border:1px solid #52f7ff;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);box-shadow:0 0 18px #00eaff44;font-family:monospace}

.temporal-reveal{position:fixed;inset:0;z-index:11850;display:grid;place-items:center;padding:24px;background:#0009;backdrop-filter:blur(7px);opacity:0;visibility:hidden;transition:.3s ease}
.temporal-reveal.open{opacity:1;visibility:visible}.temporal-reveal-card{position:relative;width:min(760px,92vw);padding:38px}.temporal-reveal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:inherit;font-size:30px;cursor:pointer}
.temporal-reveal h3{margin:0 0 14px;font-size:clamp(28px,5vw,58px);line-height:.95}.temporal-reveal p{font-size:16px;line-height:1.7;margin:0}.temporal-reveal small{display:block;margin-bottom:12px;letter-spacing:.15em;font-weight:800}
.temporal-reveal.stone .temporal-reveal-card{color:#f1c27b;background:linear-gradient(145deg,#55402c,#2d241b);border:8px solid #6e5135;border-radius:26px;box-shadow:inset 0 0 45px #0008,12px 16px 0 #17110d;transform:rotate(-1deg)}
.temporal-reveal.stone .wireframe-cave{margin:25px 0 0;border:3px solid #d99b54;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.wireframe-cave i{display:block;border:2px solid #d99b54;height:50px}.wireframe-cave i:first-child{grid-column:1/-1;height:24px}
.temporal-reveal.medieval .temporal-reveal-card{color:#3d2119;background:#ead9ae;padding:54px 55px;border:1px solid #7c5b37;box-shadow:0 25px 70px #0008;transform:rotate(.6deg);font-family:Georgia,serif}.temporal-reveal.medieval .temporal-reveal-card:before{content:"FK";position:absolute;right:35px;bottom:28px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#7d2927;color:#e8c98e;font-weight:900;box-shadow:inset 0 0 0 5px #5d1d1b}
.temporal-reveal.medieval .order-lines{margin-top:24px;border-top:1px solid #80694c;padding-top:15px;font-style:italic}

/* 2026: a propból kinövő organikus szolgáltatás-térkép. */
.present-growth{position:fixed;inset:0;z-index:11850;display:grid;place-items:center;padding:25px;background:rgba(23,48,35,.58);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:.35s ease}.present-growth.open{opacity:1;visibility:visible}.growth-garden{position:relative;width:min(900px,94vw);min-height:560px;padding:70px 55px 45px;background:#f2eee2;border-radius:44% 56% 48% 52%/12% 14% 10% 13%;box-shadow:0 35px 90px #16342366;overflow:hidden;color:#294d39}.growth-garden:before,.growth-garden:after{content:"";position:absolute;width:380px;height:380px;border:3px solid #789a70;border-radius:50%;opacity:.35}.growth-garden:before{left:-190px;bottom:-160px}.growth-garden:after{right:-220px;top:-190px}.growth-close{position:absolute;right:32px;top:24px;border:0;background:#294d39;color:#f2eee2;width:42px;height:42px;border-radius:50%;font-size:24px;cursor:pointer}.growth-garden>small{font-weight:800;letter-spacing:.15em}.growth-garden h3{font-size:clamp(36px,6vw,70px);line-height:.95;margin:12px 0 14px}.growth-garden>p{font-size:18px;margin-bottom:34px}.growth-stem{position:absolute;left:50%;bottom:0;width:3px;height:0;background:#63875e;transform-origin:bottom;transition:height .8s .15s ease}.present-growth.open .growth-stem{height:72%}.growth-leaves{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.growth-leaf{padding:28px 22px;min-height:180px;background:#dbe4cd;border:1px solid #9ab18c;border-radius:65% 35% 60% 40%/30% 60% 40% 70%;transform:scale(.2) rotate(-12deg);opacity:0;transition:.55s cubic-bezier(.2,.8,.2,1)}.growth-leaf:nth-child(2){background:#e8dcc5;border-radius:35% 65% 42% 58%/65% 32% 68% 35%;transition-delay:.18s}.growth-leaf:nth-child(3){background:#cad9c2;border-radius:60% 40% 35% 65%/42% 60% 40% 58%;transition-delay:.34s}.present-growth.open .growth-leaf{transform:scale(1) rotate(0);opacity:1}.growth-leaf b{display:block;font-size:20px;margin-bottom:10px}.growth-leaf span{line-height:1.55}.growth-quote{position:relative;z-index:2;margin-top:30px!important;font-size:22px!important;font-weight:700;font-style:italic}

/* Fluxuskondenzátor: felfedezési státusz */
.dashboard-toggle .anomaly-count{display:none;margin-left:9px;padding-left:9px;border-left:1px solid currentColor;font-style:normal}.dashboard-toggle.timeline-mastered .anomaly-count{display:inline-block}.dashboard-toggle.timeline-mastered{box-shadow:0 0 18px rgba(100,255,170,.22)}
@media(max-width:700px){.growth-leaves{grid-template-columns:1fr}.growth-garden{min-height:auto;border-radius:28px;padding:65px 25px 30px}.growth-stem{display:none}.temporal-tooltip{max-width:220px;font-size:9px}.temporal-reveal-card{padding:28px!important}}

/* =========================================================
   V23.1 – TEMPORAL PROP HOTFIX
   - 2026 prop látható
   - tooltip a body fölött lebeg, ezért nem vágja le semmilyen overflow
========================================================= */
html[data-theme="present"] .present-about-prop.present-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 270px;
    cursor: pointer;
}
html[data-theme="present"] .about-content {
    grid-template-columns: minmax(0, 1fr) 340px !important;
    align-items: center !important;
}
html[data-theme="present"] .present-about-prop::after {
    content: "✦";
    position: absolute;
    right: 28px;
    bottom: 24px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 58% 42% 62% 38% / 48% 62% 38% 52%;
    background: rgba(244, 239, 220, .62);
    color: var(--p-deep, #173b2e);
    font-size: 23px;
    transform: rotate(14deg);
    transition: transform .3s ease, border-radius .3s ease;
}
html[data-theme="present"] .present-about-prop:hover::after {
    transform: rotate(-8deg) scale(1.08);
    border-radius: 35% 65% 40% 60% / 65% 35% 65% 35%;
}

/* A V23 belső tooltipjeit a JS floating tooltip váltja. */
.temporal-tooltip { display: none !important; }
.temporal-floating-tooltip {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20050;
    width: max-content;
    max-width: min(300px, calc(100vw - 28px));
    padding: 10px 14px;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -100%) translateY(-10px) scale(.96);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
    text-align: center;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .075em;
    line-height: 1.35;
}
.temporal-floating-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -100%) translateY(-14px) scale(1);
}
.temporal-floating-tooltip[data-era="stone"] {
    background: #3a281c;
    color: #efbd73;
    border: 2px solid #8b6037;
    border-radius: 9px;
    box-shadow: 4px 5px 0 #1f1711;
    text-shadow: 1px 1px #000;
}
.temporal-floating-tooltip[data-era="medieval"] {
    background: #ead8aa;
    color: #5b201f;
    border: 1px solid #7a302d;
    box-shadow: 0 7px 20px #2d161544;
    font-family: Georgia, serif;
    letter-spacing: .04em;
}
.temporal-floating-tooltip[data-era="retro"] {
    background: #090c21;
    color: #fff;
    border: 2px solid #ff2bd6;
    box-shadow: 4px 4px 0 #6d37ff;
    font-family: ui-monospace, monospace;
    text-shadow: 2px 0 #00f7ff, -2px 0 #ff2bd6;
}
html.retro-inverted .temporal-floating-tooltip[data-era="retro"] {
    border-color: #00f7ff;
    box-shadow: 4px 4px 0 #32ff8a;
    text-shadow: 2px 0 #32ff8a, -2px 0 #00f7ff;
}
.temporal-floating-tooltip[data-era="present"] {
    background: #f3efe4;
    color: #284d39;
    border: 1px solid #86a77e;
    border-radius: 999px;
    box-shadow: 0 10px 28px #315c4430;
    letter-spacing: .03em;
}
.temporal-floating-tooltip[data-era="cyber"] {
    background: #031b22;
    color: #52f7ff;
    border: 1px solid #52f7ff;
    clip-path: polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
    box-shadow: 0 0 18px #00eaff44;
    font-family: ui-monospace, monospace;
}
@media (max-width: 760px) {
    html[data-theme="present"] .about-content { grid-template-columns: 1fr !important; }
    html[data-theme="present"] .present-about-prop.present-only { min-height: 220px; }
    .temporal-floating-tooltip { font-size: 9px; }
}

/* =========================================================
   V23.2 – FLUXUSKONDENZÁTOR STÁTUSZ + RÉSZLETESEBB ARCHÍVUMOK
========================================================= */
.timeline-sync-status {
    grid-column: 1 / -1;
    min-height: 32px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 2px;
    padding: 8px 10px;
    border-top: 1px solid #ffffff14;
    background: #08080699;
    color: #777166;
    font: 700 8px ui-monospace, monospace;
    letter-spacing: .12em;
    box-sizing: border-box;
}
.timeline-sync-status span { margin-right: auto; }
.timeline-sync-status b { color: #d2a74e; font-size: 10px; }
.timeline-sync-status i { color: #817a6d; font-style: normal; }
.timeline-sync-status.complete { color: #e0b65b; box-shadow: inset 0 0 20px #ffb52b0b; }
.timeline-sync-status.complete b { color: #ffd069; text-shadow: 0 0 10px #ffb52b66; }
.timeline-sync-status.complete i { color: #78ed8e; }
.dashboard-toggle .anomaly-count { display: none !important; }

.temporal-reveal.stone .temporal-reveal-card,
.temporal-reveal.medieval .temporal-reveal-card { width: min(880px, 94vw); }
.reveal-lead { max-width: 760px; }
.stone-blueprint { display:grid; grid-template-columns: 1.15fr .85fr; gap:20px; align-items:stretch; margin-top:24px; }
.temporal-reveal.stone .wireframe-cave { margin:0; min-height:190px; grid-template-columns:repeat(2,1fr); align-content:center; background:#231b14aa; }
.temporal-reveal.stone .wireframe-cave i:nth-child(4) { height:50px; }
.stone-notes { border:2px dashed #a8703f; padding:18px; display:flex; flex-direction:column; gap:10px; background:#2a2119aa; }
.stone-notes b { color:#ffd08c; letter-spacing:.08em; }
.stone-notes span { font-size:13px; line-height:1.35; color:#e0b576; }
.reveal-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:14px; }
.reveal-stats span { padding:11px; border:1px solid #9d6a3b; font-size:11px; line-height:1.4; background:#211a14aa; }
.reveal-stats b { display:block; color:#ffd08c; margin-bottom:4px; }
.reveal-footnote { margin-top:14px!important; font-size:12px!important; font-style:italic; color:#d5a66a; }

.medieval-order { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:25px; border-top:1px solid #80694c; border-bottom:1px solid #80694c; }
.medieval-order > div { padding:18px 16px; border-right:1px solid #9c8768; }
.medieval-order > div:last-child { border-right:0; }
.medieval-order b { display:block; margin-bottom:12px; color:#6e2926; font-size:12px; letter-spacing:.08em; }
.medieval-order span { display:block; padding:6px 0; font-size:12px; line-height:1.35; border-bottom:1px dotted #aa9677; }
.medieval-order span:last-child { border-bottom:0; }
.medieval-signature { margin-top:18px; text-align:right; font-size:12px; font-style:italic; color:#674b35; }
.medieval-signature b { display:block; margin-top:4px; color:#6e2926; }

@media (max-width: 700px) {
    .timeline-sync-status { flex-wrap:wrap; gap:6px; }
    .timeline-sync-status span { width:100%; }
    .stone-blueprint, .medieval-order, .reveal-stats { grid-template-columns:1fr; }
    .medieval-order > div { border-right:0; border-bottom:1px solid #9c8768; }
    .medieval-order > div:last-child { border-bottom:0; }
}

/* Era-specific company identity */
.era-company-title {font-size:clamp(3.2rem,9vw,9rem);line-height:1.02;letter-spacing:-.045em;max-width:100%;overflow-wrap:anywhere}
.era-company-title > span {display:none}
html[data-theme="stone"] .era-company-title .stone-only,
html[data-theme="medieval"] .era-company-title .medieval-only,
html[data-theme="retro"] .era-company-title .retro-only,
html[data-theme="present"] .era-company-title .present-only,
html[data-theme="cyber"] .era-company-title .cyber-only {display:block}
.cards article h4 {margin-top:1rem}
.projects article {cursor:pointer}

/* V3: Five standalone brands / immersive editorial storefronts */
.epoch{display:none;--ep-bg:#20180f;--ep-ink:#f4e3bc;--ep-accent:#e8ae54;--ep-panel:#352718;--ep-heading:Georgia,serif;color:var(--ep-ink);background:var(--ep-bg);overflow:hidden}
html[data-theme="stone"] .epoch-stone,html[data-theme="medieval"] .epoch-medieval,html[data-theme="retro"] .epoch-retro,html[data-theme="present"] .epoch-present,html[data-theme="cyber"] .epoch-cyber{display:block}
.epoch-medieval{--ep-bg:#191c1a;--ep-ink:#e8d6a9;--ep-accent:#cba75c;--ep-panel:#292d28;--ep-heading:Georgia,serif}
.epoch-retro{--ep-bg:#15072b;--ep-ink:#fff0fb;--ep-accent:#ff52b8;--ep-panel:#2c0d51;--ep-heading:'Oxanium',sans-serif}
.epoch-present{--ep-bg:#f2f0e9;--ep-ink:#243b30;--ep-accent:#6e8768;--ep-panel:#e2e8dc;--ep-heading:Inter,sans-serif}
.epoch-cyber{--ep-bg:#040a11;--ep-ink:#d4faff;--ep-accent:#17e9d8;--ep-panel:#0b2230;--ep-heading:'Oxanium',sans-serif}
.epoch *{box-sizing:border-box}
.epoch h1,.epoch h2,.epoch h3,.epoch p{color:inherit}
.epoch h1,.epoch h2,.epoch h3{font-family:var(--ep-heading)}
.epoch-hero{min-height:min(900px,100svh);min-height:92svh;position:relative;display:flex;align-items:center;isolation:isolate;background:var(--ep-bg)}
.epoch-video,.epoch-overlay,.epoch-grain{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.epoch-video{object-fit:cover;opacity:.62}
.epoch-overlay{background:linear-gradient(90deg,var(--ep-bg) 0%,color-mix(in srgb,var(--ep-bg) 83%,transparent) 37%,transparent 100%),linear-gradient(0deg,var(--ep-bg),transparent 36%)}
.epoch-grain{opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");pointer-events:none}
.epoch-hero-inner{width:min(1320px,90%);margin:auto;position:relative;padding:125px 0 90px}
.epoch-overline{font-size:12px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--ep-accent)!important;margin-bottom:24px}
.epoch-hero h1{font-size:clamp(48px,8vw,132px);line-height:.9;letter-spacing:-.07em;margin:0 0 30px;max-width:100%;overflow-wrap:anywhere}
.epoch-hero h2{font-size:clamp(30px,4.4vw,74px);line-height:1.05;letter-spacing:-.04em;margin:0 0 26px;font-weight:600}
.epoch-intro{font-size:clamp(16px,1.5vw,21px);line-height:1.7;max-width:560px;margin-bottom:32px}
.epoch-button{display:inline-flex;gap:50px;align-items:center;padding:19px 24px;background:var(--ep-accent);color:var(--ep-bg)!important;text-decoration:none;font-weight:900;letter-spacing:.08em;font-size:12px;transition:transform .25s,box-shadow .25s}
.epoch-button:hover{transform:translateY(-5px);box-shadow:8px 8px 0 var(--ep-panel)}
.epoch-side-label{position:absolute;right:3%;top:50%;writing-mode:vertical-rl;letter-spacing:.4em;font-size:11px;color:var(--ep-accent)}
.epoch-scroll{position:absolute;bottom:28px;left:5%;font-size:10px;letter-spacing:.3em}
.epoch-emblem{position:absolute;right:7%;top:16%;font-size:clamp(100px,19vw,320px);line-height:1;opacity:.19;color:var(--ep-accent);pointer-events:none}
.epoch-manifest{position:relative;padding:clamp(80px,12vw,180px) 7%;display:grid;grid-template-columns:1fr 2fr;gap:6vw;border-bottom:1px solid currentColor}
.epoch-manifest-index,.epoch-section-top>p,.epoch-feature-content>p:first-child{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--ep-accent)!important}
.epoch-manifest h2{font-size:clamp(42px,6vw,98px);line-height:1.1;letter-spacing:-.055em;margin:0 0 35px}
.epoch-manifest-body>p{max-width:640px;line-height:1.85;font-size:19px;opacity:.75}
.epoch-stamp{position:absolute;bottom:26px;right:7%;font-size:12px;letter-spacing:.2em;opacity:.65}
.epoch-catalog{padding:110px 7% 140px}
.epoch-section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:60px}
.epoch-section-top h2{font-size:clamp(40px,5vw,82px);letter-spacing:-.055em;line-height:1.1;max-width:800px}
.epoch-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.epoch-product{position:relative;min-width:0;background:var(--ep-panel);padding:24px;transition:transform .3s,box-shadow .3s}
.epoch-product:hover{transform:translateY(-12px);box-shadow:0 22px 35px #0002}
.epoch-number{font-size:12px;letter-spacing:.2em;color:var(--ep-accent)}
.epoch-product-art{height:240px;display:grid;place-items:center;position:relative;overflow:hidden;margin:15px 0 25px}
.epoch-product-art:before{content:'';position:absolute;width:160px;height:160px;border:2px solid var(--ep-accent);border-radius:50%;opacity:.5;transform:rotate(-24deg) scaleX(.7)}
.epoch-product-art:after{content:'';position:absolute;width:200px;height:1px;background:var(--ep-accent);transform:rotate(-32deg);opacity:.55}
.art-symbol{font-size:110px;color:var(--ep-accent);filter:drop-shadow(0 15px 20px #0005);z-index:1;transition:transform .4s}
.epoch-product:hover .art-symbol{transform:scale(1.2) rotate(15deg)}
.epoch-product h3{font-size:clamp(18px,2vw,29px);margin:0 0 12px}
.epoch-product p{font-size:15px;line-height:1.6;opacity:.75}
.epoch-arrow{position:absolute;bottom:25px;right:25px;color:var(--ep-accent)}
.epoch-feature{min-height:600px;display:grid;grid-template-columns:1fr 1fr;background:var(--ep-panel)}
.epoch-feature-visual{display:grid;place-items:center;position:relative;overflow:hidden;background:repeating-radial-gradient(circle at center,transparent 0 39px,color-mix(in srgb,var(--ep-accent) 23%,transparent) 40px 41px)}
.epoch-feature-visual>span{font-size:clamp(150px,24vw,350px);color:var(--ep-accent);z-index:1}
.epoch-feature-content{padding:clamp(65px,8vw,130px) 9%;display:flex;flex-direction:column;justify-content:center}
.epoch-feature-content h2{font-size:clamp(36px,4vw,72px);line-height:1.1;margin:22px 0}
.epoch-feature-content>p:not(:first-child){font-size:19px;line-height:1.7;opacity:.8}
.epoch-feature-content a{align-self:flex-start;color:var(--ep-accent);text-decoration:none;border-bottom:1px solid currentColor;padding:15px 0;margin-top:30px;font-weight:700}
.epoch-endmark{padding:35px 7%;display:flex;justify-content:space-between;gap:20px;font-family:var(--ep-heading);font-weight:800;font-size:clamp(22px,3vw,46px)}
.epoch-endmark span{font:12px Inter,sans-serif;letter-spacing:.2em;align-self:center}
.epoch-anchor,.era-anchor{height:0}
.epoch-stone .epoch-hero h1{font-family:Georgia,serif;font-weight:900;text-transform:uppercase;text-shadow:4px 5px 0 #0007}
.epoch-stone .epoch-button,.epoch-stone .epoch-product{clip-path:polygon(2% 0,98% 2%,100% 97%,1% 100%,0 4%)}
.epoch-stone .epoch-product-art{background:radial-gradient(ellipse,#9e743e55,transparent 70%)}
.epoch-medieval .epoch-hero h1{font-weight:400;text-transform:uppercase;letter-spacing:.06em;font-variant:small-caps}
.epoch-medieval .epoch-button,.epoch-medieval .epoch-product{border:1px solid var(--ep-accent)}
.epoch-medieval .epoch-product:before{content:'✥';position:absolute;top:17px;right:18px;color:var(--ep-accent)}
.epoch-medieval .epoch-product-art{background:radial-gradient(circle,#af8b4940,transparent 70%)}
.epoch-retro .epoch-hero h1{font-style:italic;text-shadow:6px 6px 0 #fe2cb5,-5px -5px 0 #26f3f6}
.epoch-retro .epoch-hero h2{color:#53f8ff;text-transform:uppercase;font-size:clamp(26px,3.7vw,60px)}
.epoch-retro .epoch-product{border:2px solid #ff52b8;box-shadow:7px 7px 0 #26dff0}
.epoch-retro .epoch-product-art{background:linear-gradient(160deg,#301065,#fa38a133);border:1px solid #fa38a1}
.epoch-retro .epoch-product-art:before{border-radius:0;transform:rotate(45deg)}
.epoch-present .epoch-hero h1{font-weight:600;letter-spacing:-.095em}
.epoch-present .epoch-hero h2{font-weight:400}
.epoch-present .epoch-video{opacity:.34}
.epoch-present .epoch-overlay{background:linear-gradient(90deg,#f2f0e9 0%,#f2f0e9e8 37%,#f2f0e930 100%),linear-gradient(0deg,#f2f0e9,transparent 30%)}
.epoch-present .epoch-product{border-radius:22px}
.epoch-present .epoch-product-art{border-radius:18px;background:linear-gradient(140deg,#c8d5c3,#eef0e6)}
.epoch-present .epoch-button{border-radius:100px}
.epoch-present .epoch-emblem{opacity:.3}
.epoch-cyber .epoch-hero h1{font-size:clamp(50px,9vw,150px);text-shadow:0 0 45px #00ffe455}
.epoch-cyber .epoch-product{border:1px solid #0cf0e34d;clip-path:polygon(0 0,94% 0,100% 9%,100% 100%,0 100%)}
.epoch-cyber .epoch-product-art{background:linear-gradient(130deg,#0af0d31a,transparent),repeating-linear-gradient(0deg,transparent 0 18px,#0af0d30d 19px 20px)}
.epoch-cyber .epoch-button{box-shadow:0 0 25px #0ef6e555}
@media(max-width:850px){.epoch-hero{min-height:760px}.epoch-manifest{grid-template-columns:1fr;gap:30px}.epoch-products{grid-template-columns:1fr}.epoch-product-art{height:180px}.epoch-feature{grid-template-columns:1fr}.epoch-feature-visual{min-height:300px}.epoch-section-top{display:block}.epoch-side-label{display:none}.epoch-hero-inner{padding-top:155px}.epoch-hero h1{font-size:clamp(44px,12vw,90px)}}
@media(prefers-reduced-motion:reduce){.epoch-product,.epoch-button,.art-symbol{transition:none}}

/* V4 — independently composed era pages */
.epoch section:not(.epoch-hero){scroll-margin-top:90px}
.stone-trail,.stone-cave-shop,.brass-ledger,.brass-catalog,.retro-radio,.retro-hitlist,.verdant-editorial,.verdant-collection,.verdant-values,.nexus-console,.nexus-matrix,.nexus-terminal-section{padding:clamp(65px,9vw,140px) 7%;position:relative}
.epoch .anomaly-art,.epoch .brass-seal,.epoch .cassette-control,.epoch .present-about-prop,.epoch .cyber-about-prop{cursor:pointer}
.stone-trail{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;background:#302315}
.stone-rough h2{font:900 clamp(38px,5vw,76px)/1.05 Georgia,serif;text-transform:uppercase;max-width:750px}
.stone-rough>p{font-size:20px;max-width:620px;line-height:1.7}
.stone-rough small,.stone-cave-shop small{letter-spacing:.3em;color:#e8ae54}
.stone-trail-list{border-left:5px solid #bb8e56;padding:30px 0 30px 45px;align-self:center;background:repeating-linear-gradient(0deg,transparent 0 70px,#fff1 71px 72px)}
.stone-trail-list h3{font:900 32px Georgia,serif}
.stone-trail-list p{line-height:1.8;margin-top:28px}
.stone-trail-list b{display:block;color:#e8ae54}
.anomaly-art{border:3px dashed #d6ae72;background:#4a3320;color:#f8dca5;font-size:70px;width:150px;height:150px;margin-top:40px;transform:rotate(-9deg)}
.anomaly-art small{display:block;font:10px Inter,sans-serif;letter-spacing:.1em}
.stone-cave-shop{background:#1e170e}
.stone-cave-shop h2{font:900 clamp(40px,5vw,76px) Georgia,serif}
.stone-wall{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:45px}
.stone-wall article{border:2px solid #a98351;padding:45px;min-height:340px;background:radial-gradient(circle at center,#665035,#2a2117)}
.stone-wall strong{font-size:110px;color:#e1b97e}
.stone-wall h3{font-size:29px}
.stone-warning{font-size:14px;letter-spacing:.2em;margin-top:40px}
.brass-ledger{display:grid;grid-template-columns:1fr 2fr;gap:9%;background:#e7d9b6;color:#352b1b!important;border:24px solid #392d20;outline:2px solid #c9a76b;outline-offset:-37px}
.brass-ledger h2,.brass-catalog h2{font:normal clamp(42px,6vw,85px)/1.1 Georgia,serif}
.brass-ledger p{font-size:20px;line-height:1.8;max-width:750px}
.brass-ledger blockquote{font:italic 26px Georgia,serif;border-left:3px solid #99733a;padding-left:25px;margin:35px 0}
.brass-seal{width:180px;height:180px;border-radius:50%;background:#8c382c;color:#ffe2aa;border:8px double #f5cf86;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:65px;box-shadow:0 15px 20px #0004;transform:rotate(-12deg);margin:auto}
.brass-seal span{font:12px Georgia,serif;text-align:center;letter-spacing:.2em}
.brass-catalog{background:#23241f;color:#e7d9b6}
.brass-catalog-title{text-align:center;border-bottom:1px solid #ae8b57;padding-bottom:40px}
.brass-catalog-title small{letter-spacing:.4em}
.brass-plates{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:50px 0}
.brass-plates article{padding:25px;border:1px solid #a78a5c;text-align:center;background:#302e27}
.brass-plates article>span{letter-spacing:.25em}
.brass-drawing{height:250px;display:grid;place-items:center;font:170px Georgia,serif;color:#c7a364;border-block:1px solid #6f6048;margin:20px 0}
.brass-plates h3{font:30px Georgia,serif}
.brass-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #a78a5c;padding-top:30px}
.brass-bottom a{color:#e7d9b6}
.retro-radio{background:linear-gradient(140deg,#1b0638,#520f5d);color:#fff;border-top:10px solid #fc4fbd}
.radio-top{display:flex;justify-content:space-between;color:#5cf8f3;letter-spacing:.3em}
.radio-main{display:grid;grid-template-columns:1.1fr .9fr;gap:5%;align-items:center;margin-top:70px}
.radio-main h2{font:900 clamp(48px,6vw,98px)/1.02 'Oxanium',sans-serif;color:#fff;text-shadow:5px 5px #fd4ca9}
.radio-main p{font-size:21px;line-height:1.7;max-width:600px}
.cassette-control{background:#f745ad;border:0;color:#1c0734;padding:20px 30px;font-weight:900;box-shadow:8px 8px #5cf8f3;margin-top:25px}
.retro-cassette{aspect-ratio:1.45;background:#f5a3d8;border:14px solid #2e153b;border-radius:25px;box-shadow:20px 22px #0006;transform:rotate(9deg);color:#29133a;padding:8%;display:flex;flex-direction:column;justify-content:space-between}
.retro-cassette>span{font:900 clamp(24px,4vw,55px) Oxanium,sans-serif}
.cassette-reels{display:flex;justify-content:space-around;border:12px solid #341742;border-radius:50px;background:#f8d5e8}
.cassette-reels i{font:100px sans-serif;color:#271134}
.retro-hitlist{background:#f4e948;color:#210a38}
.hitlist-title h2{font:900 clamp(50px,8vw,130px) Oxanium,sans-serif;color:#210a38}
.retro-hitlist ol{list-style:none;padding:0}
.retro-hitlist li{display:grid;grid-template-columns:100px 1fr 110px;align-items:center;gap:25px;border-top:5px solid #210a38;padding:24px 0;font:900 clamp(24px,4vw,56px) Oxanium,sans-serif}
.retro-hitlist li>span small{display:block;font:13px Inter,sans-serif;letter-spacing:.3em;margin-top:8px}
.retro-hitlist li strong{color:#e82397;font-size:23px}
.retro-marquee{background:#210a38;color:#f4e948;padding:22px;text-align:center;font-weight:900;letter-spacing:.25em}
.verdant-editorial{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:#f4f0e7;color:#243b30;gap:8%;align-items:center}
.verdant-editorial h2{font:500 clamp(50px,6vw,98px)/1.05 Inter,sans-serif;letter-spacing:-.08em}
.verdant-editorial p{font-size:20px;line-height:1.8;max-width:550px}
.verdant-editorial a{color:#243b30;display:inline-block;margin-top:20px}
.verdant-still-life{height:530px;background:radial-gradient(ellipse at 60% 65%,#a8b8a0,#e4e8dc 70%);border-radius:46% 46% 6px 6px;display:grid;place-items:center;position:relative}
.verdant-vase{font-size:300px;color:#68826c;text-shadow:18px 22px 20px #304f3030}
.verdant-still-life>span{position:absolute;bottom:22px;left:30px;font-size:11px;letter-spacing:.3em}
.verdant-still-life button{position:absolute;top:20px;right:25px;border:1px solid #486c4d;background:#fff8;border-radius:50%;font-size:36px;width:70px;height:70px;color:#486c4d}
.verdant-collection{background:#e7e9df;color:#243b30}
.verdant-collection-heading h2{font:500 clamp(40px,5vw,85px) Inter,sans-serif;letter-spacing:-.08em}
.verdant-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:repeat(2,300px);gap:25px;margin-top:55px}
.verdant-grid article{background:#f6f6ef;border-radius:16px;padding:24px;position:relative;overflow:hidden}
.verdant-grid .verdant-tall{grid-row:span 2}
.verdant-object{font-size:120px;color:#7b997f;text-align:center;line-height:1.5}
.verdant-tall .verdant-object{font-size:250px}
.verdant-grid h3{font:500 30px Inter,sans-serif}
.verdant-grid span{font-size:12px;letter-spacing:.25em}
.verdant-values{text-align:center;background:#344d3c;color:#fff;padding:140px 8%}
.verdant-values h2{font:400 clamp(42px,5vw,80px)/1.15 Inter,sans-serif;letter-spacing:-.06em}
.nexus-console{background:linear-gradient(140deg,#02060d,#0b2332);border-block:1px solid #12e6d5;color:#c9fafa}
.nexus-console-head{display:flex;justify-content:space-between;color:#1cecd7;font:12px Oxanium,sans-serif;letter-spacing:.15em}
.nexus-console-grid{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;margin-top:65px}
.nexus-console h2{font:900 clamp(50px,7vw,110px)/1 Oxanium,sans-serif;color:#d4ffff;text-shadow:0 0 25px #0fead155}
.nexus-console p{font-size:19px;line-height:1.8}
.cyber-about-prop{background:transparent;border:1px solid #15f4d8;color:#15f4d8;padding:19px 25px;letter-spacing:.12em;margin-top:20px}
.nexus-hologram{min-height:450px;display:grid;place-items:center;background:repeating-radial-gradient(circle,#0df8e30d 0 29px,#0df8e34d 30px 31px);border:1px solid #0ef5e366}
.nexus-ring{font-size:250px;color:#1cebd6;text-shadow:0 0 70px #16e8d7}
.nexus-hologram span{font:12px Oxanium,sans-serif;letter-spacing:.2em}
.nexus-matrix{background:#030d16;color:#baf9f5}
.matrix-head h2{font:900 clamp(38px,6vw,80px) Oxanium,sans-serif}
.matrix-rows{border-top:1px solid #17ead7}
.matrix-rows article{display:grid;grid-template-columns:120px 1fr 1fr 130px;align-items:center;gap:20px;border-bottom:1px solid #17ead744;padding:30px 5px}
.matrix-rows article>span,.matrix-rows b{color:#1eead5;font:12px Oxanium,sans-serif}
.matrix-rows h3{font:700 clamp(18px,2.5vw,34px) Oxanium,sans-serif}
.nexus-terminal-section{background:#0a1a25;color:#d3ffff;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}
.nexus-terminal-section h2{font:800 clamp(42px,5vw,75px) Oxanium,sans-serif}
.nexus-terminal{border:1px solid #1cebd7;background:#02080c;box-shadow:0 0 35px #17ead72a;min-height:330px;padding:25px;font:14px monospace}
.terminal-title{background:#14dbc5;color:#001313;padding:12px;margin:-25px -25px 25px}
#terminalOutput{white-space:pre-wrap;min-height:175px;color:#89f8eb}
#terminalForm{display:flex;gap:12px;align-items:center}
#terminalForm input{min-width:0;flex:1;background:transparent;border:0;border-bottom:1px solid #16e4d5;color:#e0ffff;padding:12px;font:16px monospace}
#terminalForm button{background:#15e9d5;color:#001313;border:0;padding:12px}
@media(max-width:800px){.stone-trail,.brass-ledger,.radio-main,.verdant-editorial,.nexus-console-grid,.nexus-terminal-section{grid-template-columns:1fr}.stone-wall,.brass-plates{grid-template-columns:1fr}.verdant-grid{grid-template-columns:1fr;grid-template-rows:auto}.verdant-grid .verdant-tall{grid-row:auto}.verdant-grid article{min-height:300px}.matrix-rows article{grid-template-columns:1fr 1fr}.retro-hitlist li{grid-template-columns:45px 1fr 65px;gap:10px}.retro-hitlist li strong{font-size:15px}.brass-ledger{border-width:12px}.retro-cassette{max-width:550px}.nexus-hologram{min-height:320px}}

/* V5: tactile cassette + era-exclusive narrative chapters */
.retro-cassette{border:14px solid #2e153b;text-align:left;cursor:pointer;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .3s;transform-style:preserve-3d;position:relative}
.retro-cassette:hover{filter:brightness(1.08)}
.retro-cassette:focus-visible{outline:4px solid #5cf8f3;outline-offset:8px}
.retro-cassette .cassette-hint{font:10px Inter,sans-serif;letter-spacing:.1em;position:absolute;bottom:12px;right:20px}
html.retro-inverted .retro-cassette{transform:rotate(9deg) rotateY(180deg);background:#68e7ee}
html.retro-inverted .retro-cassette>*{transform:rotateY(180deg)}
html.retro-inverted .retro-cassette .cassette-reels{background:#c4fcff}
.retro-cassette.tape-flipping{animation:cassette-turn .72s ease-in-out}
@keyframes cassette-turn{0%{filter:brightness(1)}50%{filter:brightness(.55)}100%{filter:brightness(1)}}
.era-extra{padding:clamp(75px,10vw,145px) 7%;overflow:hidden;position:relative}
.era-extra h2{font-size:clamp(40px,6vw,88px);line-height:1.1;letter-spacing:-.055em}
.era-extra small{letter-spacing:.25em;font-size:12px}
.reveal-on-scroll{opacity:0;transform:translateY(55px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}
.reveal-on-scroll.in-view{opacity:1;transform:translateY(0)}
.stone-hunt{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:#54402a;color:#f4d4a0}
.stone-hunt h2{font-family:Georgia,serif;text-transform:uppercase}
.stone-footprints{display:flex;align-items:center;justify-content:space-around;min-height:250px;font-size:clamp(45px,7vw,100px);transform:rotate(-17deg)}
.stone-footprints span:nth-child(even){transform:translateY(75px)}
.stone-testimonial{background:#261b12;text-align:center;color:#ebd0a4}
.stone-testimonial blockquote{font:italic clamp(35px,5vw,75px)/1.2 Georgia,serif;margin:40px auto;max-width:950px}
.brass-timeline{background:#ded0ac;color:#3b3023}
.brass-timeline h2{font-family:Georgia,serif}
.brass-years{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:2px solid #8d7049;margin-top:55px}
.brass-years article{padding-top:25px}
.brass-years b{font:55px Georgia,serif;color:#866336}
.brass-letter{background:#eee0bd;color:#453522;margin:55px 7%;border:15px double #947343;text-align:center;box-shadow:15px 18px 0 #171b17}
.brass-letter h2{font-family:Georgia,serif}
.brass-letter p{font:italic 26px Georgia,serif}
.letter-corner{font-size:75px;color:#8b3329}
.retro-poster{text-align:center;background:repeating-linear-gradient(0deg,#200f45 0 20px,#280d4d 21px 22px);color:#ffef3c;border-block:12px solid #f33aa5}
.retro-poster h2{font:900 clamp(70px,13vw,190px)/.9 Oxanium,sans-serif;letter-spacing:-.08em;text-shadow:9px 9px #fa38a1,-7px -7px #1ae9e3}
.retro-poster p{font-size:19px;letter-spacing:.18em}
.retro-poster strong{display:inline-block;background:#fc44ad;color:#220c42;padding:17px 30px;margin-top:25px}
.retro-equalizer{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#f444b2;color:#220c42}
.retro-equalizer h2{font-family:Oxanium,sans-serif}
.equalizer-bars{display:flex;align-items:center;gap:9px;height:240px}
.equalizer-bars i{display:block;flex:1;height:40%;background:#270a47;animation:eq-bounce 1.1s ease-in-out infinite alternate;transform-origin:center}
.equalizer-bars i:nth-child(3n){height:80%;animation-delay:-.3s}
.equalizer-bars i:nth-child(4n){height:20%;animation-delay:-.8s}
.equalizer-bars i:nth-child(5n){height:60%;animation-delay:-.5s}
@keyframes eq-bounce{to{transform:scaleY(.3)}}
.verdant-materials{background:#faf8f0;color:#344e3e}
.verdant-materials h2{font-weight:500}
.material-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:50px}
.material-tiles article{background:#e5e8dd;padding:35px;min-height:350px;border-radius:8px}
.material-tiles article:nth-child(2){background:#d9e1dc}
.material-tiles article:nth-child(3){background:#eae1d2}
.material-tiles article span{display:block;text-align:center;font-size:120px;color:#79937c}
.material-tiles h3{font-size:26px;font-weight:500}
.verdant-note{background:#c8d4c5;color:#243e2d;text-align:center}
.verdant-note h2{font-weight:400}
.nexus-roadmap{background:#05111b;color:#d0fbff}
.nexus-roadmap h2{font-family:Oxanium,sans-serif}
.nexus-roadmap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}
.nexus-roadmap-grid article{border:1px solid #12f0d4;padding:35px;background:#0a2630}
.nexus-roadmap-grid b{font:35px Oxanium,sans-serif;color:#13e9d7}
.nexus-roadmap-grid h3{font:22px Oxanium,sans-serif}
.nexus-transmission{background:#0be2ce;color:#001b23;text-align:center}
.nexus-transmission h2{font-family:Oxanium,sans-serif}
.transmission-line{font:clamp(12px,2vw,25px) monospace;letter-spacing:.3em;margin:30px auto;overflow-wrap:anywhere}
@media(max-width:760px){.stone-hunt,.retro-equalizer{grid-template-columns:1fr}.brass-years,.material-tiles,.nexus-roadmap-grid{grid-template-columns:1fr}.retro-cassette{min-height:320px}.retro-cassette .cassette-reels i{font-size:65px}}
@media(prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}.equalizer-bars i{animation:none}}

/* V6: extra era-specific scenes, scrolling reveal and parallax */
.v6-reveal{opacity:0;transform:translate3d(0,65px,0);transition:opacity 1s ease,transform 1s cubic-bezier(.18,.65,.22,1)}
.v6-reveal.v6-visible{opacity:1;transform:translate3d(0,0,0)}
.v6-chapter{font-size:12px;letter-spacing:.3em;margin-bottom:30px}
.v6-stone-map,.v6-stone-fire,.v6-clockroom,.v6-brass-blueprint,.v6-retro-arcade,.v6-retro-fanclub,.v6-verdant-process,.v6-verdant-quote,.v6-nexus-scanner,.v6-nexus-city{padding:clamp(80px,10vw,150px) 7%;position:relative;overflow:hidden}
.v6-stone-map{background:#ad9164;color:#25180d;text-align:center}
.v6-stone-map h2,.v6-stone-fire h2{font:900 clamp(38px,5vw,75px)/1.12 Georgia,serif}
.v6-hunt-map{height:400px;max-width:950px;margin:55px auto;position:relative;border:9px solid #4b3823;background:repeating-linear-gradient(30deg,#c3a77a 0 18px,#c8ae81 20px 23px);box-shadow:16px 20px 0 #2b201b40}
.v6-hunt-route{position:absolute;left:19%;top:26%;width:62%;height:48%;border:5px dashed #4a3421;border-radius:50%;transform:rotate(-12deg)}
.v6-map-pin{position:absolute;font-size:62px;color:#47321e;animation:map-bob 3s ease-in-out infinite}
.v6-map-pin small{display:block;font:10px Inter,sans-serif;letter-spacing:.1em}
.pin-one{left:13%;top:18%}.pin-two{left:48%;top:50%;animation-delay:-1s}.pin-three{right:10%;top:15%;animation-delay:-2s}
@keyframes map-bob{50%{translate:0 -12px}}
.v6-stone-fire{background:#29180f;color:#e9c08b;display:grid;grid-template-columns:1fr 1.5fr;gap:8%;align-items:center}
.v6-fire-symbol{font-size:clamp(160px,24vw,370px);text-align:center;color:#e89739;text-shadow:0 0 60px #ef7129;animation:fire-pulse 3s ease-in-out infinite alternate}
@keyframes fire-pulse{to{text-shadow:0 0 130px #ffbc48;transform:scale(1.06)}}
.v6-stone-fire p{font-size:20px;line-height:1.8}
.v6-clockroom{background:#d7c39b;color:#36291b;text-align:center}
.v6-clockroom h2,.v6-brass-blueprint h2{font:normal clamp(45px,6vw,85px) Georgia,serif}
.v6-clock-face{width:min(430px,80vw);aspect-ratio:1;border:24px ridge #89683d;border-radius:50%;margin:45px auto;background:radial-gradient(circle,#e9dfc2,#b6a078);position:relative;box-shadow:15px 20px 35px #33251155,inset 0 0 35px #654d2b77}
.v6-clock-face>span{position:absolute;font:32px Georgia,serif}.clock-xii{top:6%;left:44%}.clock-iii{top:44%;right:6%}.clock-vi{bottom:6%;left:47%}.clock-ix{top:44%;left:6%}
.v6-clock-hand{position:absolute;left:50%;bottom:50%;width:6px;background:#35291d;transform-origin:bottom;border-radius:5px}
.v6-clock-hand.hour{height:26%;transform:rotate(30deg)}.v6-clock-hand.minute{height:38%;transform:rotate(165deg)}
.v6-clock-center{position:absolute;left:calc(50% - 10px);top:calc(50% - 10px);width:20px;height:20px;background:#4a3421;border-radius:50%}
.v6-brass-blueprint{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#163a48;color:#d6e8de}
.v6-blueprint-drawing{border:2px solid #b5d9d5;background:repeating-linear-gradient(0deg,transparent 0 29px,#d5f4ed24 30px 31px),repeating-linear-gradient(90deg,transparent 0 29px,#d5f4ed24 30px 31px);min-height:420px;display:grid;place-items:center;font-size:230px;position:relative;color:#a9d9d3}
.v6-blueprint-drawing span{position:absolute;bottom:25px;font:12px monospace;letter-spacing:.2em}
.v6-retro-arcade{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#160a36;color:#fb4bc1}
.v6-retro-arcade h2,.v6-retro-fanclub h2{font:900 clamp(40px,5vw,78px) Oxanium,sans-serif;text-shadow:4px 4px #00eee3}
.v6-arcade-screen{min-height:450px;background:#07091c;border:25px ridge #f83cae;box-shadow:15px 18px #00e9da;display:flex;flex-direction:column;justify-content:space-between;text-align:center;padding:30px;color:#1af6dc}
.v6-arcade-screen strong{font:900 clamp(38px,5vw,75px)/1 Oxanium,sans-serif;animation:arcade-glow 2s infinite alternate}
@keyframes arcade-glow{to{text-shadow:0 0 35px #12fce9}}
.v6-arcade-controls{display:flex;justify-content:space-between;font-size:30px;color:#f93da9}
.v6-retro-fanclub{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#ffdc36;color:#2a0b42}
.v6-fanclub-ticket{background:#fa3eae;color:#2a0b42;min-height:260px;padding:40px;display:flex;flex-direction:column;justify-content:space-between;border:8px dashed #2a0b42;transform:rotate(-6deg);box-shadow:14px 15px #220c45}
.v6-fanclub-ticket strong{font:900 clamp(30px,4vw,65px) Oxanium,sans-serif}
.v6-verdant-process{background:#edf1e8;color:#304739}
.v6-verdant-process h2,.v6-verdant-quote h2{font-weight:400}
.v6-process-line{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:70px;border-top:1px solid #718d78}
.v6-process-line article{padding-top:35px}.v6-process-line b{font-size:13px;letter-spacing:.2em}.v6-process-line h3{font-size:29px;font-weight:500}.v6-process-line p{line-height:1.8}
.v6-verdant-quote{background:#d7d7c6;color:#2b4532;text-align:center}
.v6-leaf{font-size:140px;color:#77987c}
.v6-verdant-quote blockquote{font:400 clamp(35px,5vw,76px)/1.2 Inter,sans-serif;letter-spacing:-.055em;max-width:1000px;margin:30px auto}
.v6-nexus-scanner{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:#071520;color:#c3f8f6}
.v6-nexus-scanner h2,.v6-nexus-city h2{font:900 clamp(40px,5vw,80px) Oxanium,sans-serif}
.v6-scan-status{color:#1bf4dc;font:13px monospace;margin-top:30px}
.v6-scan-face{height:440px;border:1px solid #16e5d6;display:grid;place-items:center;position:relative;background:repeating-linear-gradient(0deg,#00e6df09 0 10px,transparent 11px 20px)}
.v6-scan-face>span{font-size:230px;color:#15e5d7;text-shadow:0 0 60px #0fe6dc}
.v6-scan-face small{position:absolute;bottom:20px;letter-spacing:.25em}
.v6-scan-beam{position:absolute;left:0;right:0;height:3px;top:0;background:#1fffe9;box-shadow:0 0 35px #1fffe9;animation:scan-move 4s linear infinite}
@keyframes scan-move{50%{top:100%}100%{top:0}}
.v6-nexus-city{background:#010812;color:#cbffff;text-align:center}
.v6-skyline{height:300px;display:flex;align-items:end;justify-content:space-around;gap:12px;border-bottom:4px solid #16e7db;margin:70px auto 35px;max-width:1000px}
.v6-skyline i{flex:1;height:var(--tower,55%);background:repeating-linear-gradient(0deg,#13e5d822 0 13px,#13e5d888 14px 16px);border:1px solid #16e7db;box-shadow:0 0 20px #16e7db33}
.v6-skyline i:nth-child(3n){--tower:95%}.v6-skyline i:nth-child(2n){--tower:70%}.v6-skyline i:nth-child(4n){--tower:45%}
.retro-cassette .temporal-tooltip{pointer-events:none}
@media(max-width:800px){.v6-stone-fire,.v6-brass-blueprint,.v6-retro-arcade,.v6-retro-fanclub,.v6-nexus-scanner{grid-template-columns:1fr}.v6-process-line{grid-template-columns:1fr 1fr}.v6-hunt-map{height:300px}.v6-blueprint-drawing{min-height:300px}}
@media(prefers-reduced-motion:reduce){.v6-reveal{opacity:1;transform:none;transition:none}.v6-map-pin,.v6-fire-symbol,.v6-arcade-screen strong,.v6-scan-beam{animation:none}}

/* V7 / cassette rebuilt from CSS geometry with responsive proportions */
.retro-cassette{appearance:none;display:block;position:relative;aspect-ratio:1.62;width:100%;max-width:640px;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;transform:rotate(5deg);text-align:left;isolation:isolate;overflow:visible!important;cursor:pointer}
.retro-cassette:before,.retro-cassette:after{display:none!important}
.tape-shell{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:7% 8%;background:linear-gradient(155deg,#fc96c6,#f76eae 50%,#ce428e);border:clamp(5px,.85vw,12px) solid #3b144a;border-radius:5%/8%;box-shadow:16px 19px 0 #12071b,0 28px 40px #0007,inset 0 0 0 3px #ffc5e4;overflow:hidden}
.tape-shell:before{content:'';position:absolute;left:0;right:0;top:0;height:16%;background:linear-gradient(180deg,#fff8,transparent);pointer-events:none}
.tape-topline{font:900 clamp(19px,3.1vw,48px)/1 Oxanium,sans-serif;letter-spacing:-.06em;color:#32103e;white-space:nowrap;display:flex;justify-content:space-between;align-items:start;gap:10px}
.tape-topline em{font:700 clamp(6px,.65vw,10px)/1.5 Inter,sans-serif;letter-spacing:.04em;text-align:right;max-width:95px}
.tape-sticker{display:grid;grid-template-columns:14% 1fr 18%;align-items:center;gap:3%;background:#fce4ec;border-radius:9px;padding:4% 4%;box-shadow:0 4px 0 #33113c;min-height:49%}
.tape-side{font:900 clamp(28px,5vw,65px) Oxanium,sans-serif;color:#3b144a}
.tape-window{height:100%;min-height:65px;display:flex;justify-content:space-around;align-items:center;border:clamp(5px,.7vw,10px) solid #341040;border-radius:50px;background:linear-gradient(180deg,#37203f,#5a2d62 48%,#2a1434 52%,#44204c);position:relative;overflow:hidden}
.tape-ribbon{position:absolute;left:20%;right:20%;height:32%;background:repeating-linear-gradient(0deg,#261027 0 3px,#7d487e 4px 5px);z-index:0}
.tape-hub{position:relative;z-index:1;width:27%;aspect-ratio:1;border:clamp(4px,.6vw,9px) solid #f8d7ed;border-radius:50%;background:repeating-conic-gradient(#39123d 0 30deg,#f8d7ed 30deg 60deg);box-shadow:0 0 0 4px #39123d;animation:tape-spin 4s linear infinite}
.tape-meta{font:800 clamp(7px,.8vw,12px) Inter,sans-serif;color:#32103e;line-height:1.5}
.tape-bottom{display:flex;justify-content:space-between;font:800 clamp(8px,.95vw,13px) Inter,sans-serif;letter-spacing:.08em;color:#3b144a}
.tape-screw{position:absolute;font-size:clamp(9px,1.4vw,20px);color:#38133c;line-height:1}.screw-a{left:2%;top:2%}.screw-b{right:2%;top:2%}.screw-c{left:2%;bottom:2%}.screw-d{right:2%;bottom:2%}
.retro-cassette>.cassette-side-label{position:absolute;left:-9999px}
html.retro-inverted .retro-cassette{transform:rotate(5deg) rotateY(180deg)!important;background:transparent!important}
html.retro-inverted .retro-cassette .tape-shell{background:linear-gradient(155deg,#72e7ef,#31bed7,#258eaf)}
html.retro-inverted .retro-cassette .tape-shell>*{transform:rotateY(180deg)}
html.retro-inverted .retro-cassette .tape-hub{animation-direction:reverse}
@keyframes tape-spin{to{transform:rotate(360deg)}}
.retro-cassette .temporal-tooltip{position:absolute;z-index:20;pointer-events:none}
.v7-scene{position:relative;padding:clamp(85px,10vw,155px) 7%;overflow:hidden;min-height:560px}
.v7-scene h2{font-size:clamp(44px,6vw,90px);line-height:1.08;letter-spacing:-.06em;margin:20px 0}
.v7-scene small{font-size:12px;letter-spacing:.24em}
.v7-scene p{font-size:19px;line-height:1.8;max-width:550px}
[data-v7-reveal]{opacity:1;transform:none}
html.v7-motion [data-v7-reveal]{opacity:0;transform:translate3d(0,75px,0) scale(.975);transition:opacity .95s ease,transform 1s cubic-bezier(.18,.7,.2,1)}
html.v7-motion [data-v7-reveal].v7-in{opacity:1;transform:translate3d(0,0,0) scale(1)}
.v7-stone-gallery{display:grid;grid-template-columns:.8fr 1.2fr;gap:6%;background:#39291b;color:#e9c48d}
.v7-sticky-title{position:sticky;top:120px;align-self:start}
.v7-stone-gallery h2{font-family:Georgia,serif;text-transform:uppercase}
.v7-cave-panels{display:grid;gap:30px}
.v7-cave-panels article{background:#64482e;border:8px solid #8d6540;padding:35px;min-height:340px;box-shadow:inset 0 0 65px #20130a}
.v7-cave-panels article span{display:block;font-size:125px;color:#f2cc93}
.v7-cave-panels article b{display:block;font:900 25px Georgia,serif}
.v7-medieval-order{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;background:#e8d6af;color:#43341e}
.v7-medieval-order h2{font-family:Georgia,serif}
.v7-gear-assembly{height:420px;position:relative;border:12px double #96764b;background:radial-gradient(circle,#c7b08b,#a68b64)}
.v7-gear{position:absolute;color:#59442a;line-height:1;animation:v7-gears 18s linear infinite}
.gear-large{font-size:250px;left:10%;top:9%}.gear-medium{font-size:175px;right:4%;bottom:6%;animation-direction:reverse}.gear-small{font-size:105px;right:8%;top:4%;animation-duration:9s}
.v7-gear-assembly>span{position:absolute;bottom:10px;left:20px;font:11px Georgia,serif}
@keyframes v7-gears{to{transform:rotate(360deg)}}
.v7-retro-tv{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;background:#f5d43c;color:#260d45}
.v7-retro-tv h2{font-family:Oxanium,sans-serif;text-shadow:5px 5px #ff3ab0}
.v7-tv-frame{padding:7%;background:#381349;border:12px solid #f83cae;border-radius:22px;box-shadow:18px 20px #28113c}
.v7-tv-screen{height:350px;position:relative;overflow:hidden;border-radius:45% / 12%;background:linear-gradient(#29155e,#a21a95 65%,#220e4c)}
.v7-tv-sun{position:absolute;width:180px;height:180px;left:calc(50% - 90px);top:23%;border-radius:50%;background:repeating-linear-gradient(0deg,#faab58 0 19px,#ef5b92 20px 25px)}
.v7-tv-grid{position:absolute;inset:62% -50% -30%;background:repeating-linear-gradient(90deg,transparent 0 65px,#f43bbd 67px 69px),repeating-linear-gradient(0deg,transparent 0 36px,#f43bbd 38px 40px);transform:perspective(220px) rotateX(55deg)}
.v7-tv-screen b{position:absolute;top:20px;left:20px;color:#fff;letter-spacing:.3em}
.v7-tv-controls{text-align:right;color:#f8a2d6;padding-top:15px}
.v7-present-gallery{background:#f7f5ee;color:#314839}
.v7-present-gallery h2{font-weight:400}
.v7-present-objects{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:20px;margin-top:60px}
.v7-present-objects article{background:#e4e8dd;min-height:350px;padding:25px;display:flex;flex-direction:column;justify-content:space-between}
.v7-present-objects article:nth-child(2){background:#d5ddcf;transform:translateY(35px)}
.v7-object-shape{width:140px;height:180px;margin:auto;background:#a4b5a0;border-radius:50% 50% 22% 22%;box-shadow:22px 20px 0 #68896e33}
.shape-two{background:#ede6ce;border-radius:50%;width:180px;height:180px}.shape-three{background:#a8b7ac;border-radius:25px 25px 80px 80px}
.v7-cyber-data{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;background:#06131f;color:#bff9ff}
.v7-cyber-data h2{font-family:Oxanium,sans-serif}
.v7-data-network{height:450px;position:relative;background:repeating-radial-gradient(circle,#0fe6d622 0 1px,transparent 2px 55px);border:1px solid #16e6d66e}
.v7-data-circle{position:absolute;inset:30%;border:3px solid #18f7dc;border-radius:50%;display:grid;place-items:center;text-align:center;color:#17ffe4;font:30px Oxanium,sans-serif;box-shadow:0 0 40px #11e7d644;animation:v7-pulse 3s ease-in-out infinite}
.v7-data-network i{position:absolute;font-size:40px;color:#17f6dd;font-style:normal}.node-a{top:9%;left:12%}.node-b{top:20%;right:9%}.node-c{bottom:10%;left:20%}.node-d{bottom:13%;right:15%}
.v7-data-beam{position:absolute;inset:10%;border:1px dashed #0cebd488;border-radius:50%;animation:v7-gears 30s linear infinite}
@keyframes v7-pulse{50%{box-shadow:0 0 100px #11e7d699;transform:scale(1.07)}}
@media(max-width:850px){.v7-stone-gallery,.v7-medieval-order,.v7-retro-tv,.v7-cyber-data{grid-template-columns:1fr}.v7-present-objects{grid-template-columns:1fr}.v7-present-objects article:nth-child(2){transform:none}.v7-sticky-title{position:static}.retro-cassette{max-width:570px;margin:25px auto}.tape-topline{font-size:clamp(18px,5vw,40px)}.tape-meta{font-size:9px}}
@media(prefers-reduced-motion:reduce){html.v7-motion [data-v7-reveal]{opacity:1;transform:none;transition:none}.tape-hub,.v7-gear,.v7-data-beam,.v7-data-circle{animation:none}}

/* Progress-driven motion on bespoke sections */
.v7-cave-panels article:nth-child(2){margin-left:clamp(0px,6vw,90px)}
.v7-cave-panels article:nth-child(3){margin-left:clamp(0px,12vw,150px)}
.v7-stone-gallery .v7-cave-panels{translate:0 calc((.5 - var(--scene-progress,.5))*55px)}
.v7-retro-tv .v7-tv-sun{translate:0 calc((.5 - var(--scene-progress,.5))*65px)}
.v7-present-gallery .v7-present-objects{translate:0 calc((.5 - var(--scene-progress,.5))*60px)}
.v7-cyber-data .v7-data-network{translate:0 calc((.5 - var(--scene-progress,.5))*45px)}
.v7-medieval-order .v7-gear-assembly{translate:0 calc((.5 - var(--scene-progress,.5))*55px)}
@media(prefers-reduced-motion:reduce){.v7-stone-gallery .v7-cave-panels,.v7-retro-tv .v7-tv-sun,.v7-present-gallery .v7-present-objects,.v7-cyber-data .v7-data-network,.v7-medieval-order .v7-gear-assembly{translate:none}}

/* V8 — vector cassette; no overlapping HTML labels */
.retro-cassette#flipCassette{display:block!important;position:relative!important;aspect-ratio:640/400!important;max-width:650px!important;width:100%!important;min-height:0!important;height:auto!important;padding:0!important;margin:20px auto!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;transform:rotate(-5deg)!important;transition:transform .7s ease!important}
.retro-cassette#flipCassette .cassette-svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(15px 20px 0 #1a0828)}
.retro-cassette#flipCassette:hover{transform:rotate(-3deg) translateY(-9px)!important}
html.retro-inverted .retro-cassette#flipCassette{transform:rotate(-5deg) rotateY(180deg)!important}
html.retro-inverted .retro-cassette#flipCassette:hover{transform:rotate(-3deg) rotateY(180deg) translateY(-9px)!important}
html.retro-inverted .retro-cassette#flipCassette .cassette-svg{filter:drop-shadow(-15px 20px 0 #1a0828)}
html.retro-inverted .retro-cassette#flipCassette .cassette-svg>g,html.retro-inverted .retro-cassette#flipCassette .cassette-svg>text{transform-box:fill-box}
.retro-cassette#flipCassette .tape-reel{transform-box:fill-box;transform-origin:center;animation:reel-spin 4s linear infinite}
@keyframes reel-spin{to{rotate:360deg}}
.retro-cassette#flipCassette .cassette-tooltip{position:absolute;bottom:0;left:50%;translate:-50% 125%;white-space:nowrap;background:#f6ed42;color:#270a3d;padding:10px 17px;font:900 12px Inter,sans-serif;letter-spacing:.08em;opacity:0;transition:opacity .2s,translate .2s;pointer-events:none;box-shadow:5px 5px #ff4ab0}
.retro-cassette#flipCassette:hover .cassette-tooltip,.retro-cassette#flipCassette:focus-visible .cassette-tooltip{opacity:1;translate:-50% 105%}
html.retro-inverted .retro-cassette#flipCassette .cassette-tooltip{rotate:y 180deg}
.scrub-story{height:340vh;position:relative;--p:0;--rot:0deg;--rise:0px;--scale:1}
.scrub-sticky{position:sticky;top:0;height:100svh;min-height:570px;display:flex;align-items:center;overflow:hidden;isolation:isolate}
.scrub-stage{display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center;width:min(1280px,88%);margin:auto}
.scrub-copy{position:relative;z-index:3}.scrub-index{font:800 12px Inter,sans-serif;letter-spacing:.3em}
.scrub-copy h2{font-size:clamp(34px,5vw,78px);line-height:1.08;letter-spacing:-.055em;margin:25px 0}
.scrub-copy p{font-size:clamp(16px,1.7vw,22px);line-height:1.7;max-width:550px}
.scrub-steps{display:flex;justify-content:space-between;gap:10px;margin-top:50px;font:700 10px Inter,sans-serif;letter-spacing:.1em}
.scrub-steps span{opacity:.35;transition:opacity .1s}.scrub-steps span.active{opacity:1}
.scrub-track{height:4px;background:currentColor;opacity:.7;margin:16px 0 10px;position:relative}
.scrub-fill{height:100%;width:calc(var(--p)*100%);background:var(--scrub-accent,#ff4cae);box-shadow:0 0 15px var(--scrub-accent,#ff4cae)}
.scrub-counter{font:600 15px monospace;letter-spacing:.1em}
.scrub-art{aspect-ratio:1;max-height:65vh;position:relative;display:grid;place-items:center;perspective:800px}
.scrub-symbol{position:relative;z-index:2;font-size:clamp(140px,25vw,360px);line-height:1;transform:translateY(var(--rise)) rotate(var(--rot)) scale(var(--scale));will-change:transform;filter:drop-shadow(15px 25px 20px #0005)}
.scrub-orbit{position:absolute;inset:10%;border:3px solid currentColor;border-radius:50%;opacity:.5;transform:rotate(var(--rot)) scale(calc(.7 + var(--p)*.5))}
.scrub-orbit.orbit-two{inset:24%;border-style:dashed;transform:rotate(calc(var(--rot)*-1)) scale(calc(1.3 - var(--p)*.5))}
.scrub-layer{position:absolute;inset:20%;border:2px solid currentColor;opacity:calc(.15 + var(--p)*.6);transform:rotate(calc(var(--rot)*.4))}
.scrub-layer.layer-b{inset:33%;border-radius:30%;transform:rotate(calc(var(--rot)*-1))}
.scrub-stone{background:#332319;color:#f4d2a0;--scrub-accent:#f7a347}.scrub-stone .scrub-symbol{color:#edb474}
.scrub-medieval{background:#d7c19b;color:#3d2b1b;--scrub-accent:#8e5a28}.scrub-medieval .scrub-symbol{color:#9b7138}
.scrub-retro{background:linear-gradient(135deg,#260a4e,#720a68);color:#f8eaff;--scrub-accent:#20ffe3}.scrub-retro .scrub-symbol{color:#ff4bac;text-shadow:0 0 45px #f53baf}
.scrub-present{background:#e5ebdd;color:#2c4635;--scrub-accent:#5b8764}.scrub-present .scrub-symbol{color:#71957b}
.scrub-cyber{background:#020d17;color:#d5fffc;--scrub-accent:#00ffe0}.scrub-cyber .scrub-symbol{color:#13f4dd;text-shadow:0 0 50px #00ffe0}
@media(max-width:750px){.scrub-stage{grid-template-columns:1fr;gap:15px}.scrub-art{max-height:32svh;order:-1}.scrub-symbol{font-size:150px}.scrub-copy h2{font-size:clamp(28px,8vw,48px)}.scrub-steps{margin-top:25px}.scrub-sticky{min-height:0}.scrub-story{height:280vh}}
@media(prefers-reduced-motion:reduce){.scrub-story{height:auto}.scrub-sticky{position:relative;height:auto;padding:70px 0}.scrub-symbol,.scrub-orbit,.scrub-layer{transform:none!important}.retro-cassette#flipCassette .tape-reel{animation:none}}

/* V9: sticky scroll sequence fix — overflow:hidden on .epoch prevented viewport sticky */
.epoch{overflow:clip!important}
.scrub-story{height:260svh!important;position:relative;overflow:visible!important}
.scrub-sticky{position:sticky!important;top:0!important;height:100svh!important;min-height:0!important;max-height:100svh!important;display:grid!important;place-items:center!important;overflow:clip!important}
.scrub-stage{width:min(1200px,88vw)!important;max-height:calc(100svh - 110px);align-items:center!important}
.scrub-copy h2{font-size:clamp(27px,4.1vw,63px)!important;line-height:1.07!important;margin:14px 0 18px!important}
.scrub-copy p{font-size:clamp(14px,1.35vw,19px)!important}
.scrub-steps{margin-top:26px!important}
.scrub-art{max-height:min(60svh,550px)!important;min-height:0!important}
.scrub-phase-card{position:absolute;z-index:4;top:7%;left:4%;display:flex;gap:12px;align-items:center;font:800 11px Inter,sans-serif;letter-spacing:.13em;opacity:1;transform:translateY(calc((.5 - var(--p)) * 16px))}
.scrub-phase-number{display:grid;place-items:center;width:40px;height:40px;border:1px solid currentColor;border-radius:50%}
.scrub-finish{position:absolute;z-index:5;inset:12%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;text-align:center;opacity:var(--complete,0);transform:scale(calc(.72 + var(--complete,0)*.28));pointer-events:none;background:radial-gradient(circle,var(--finish-bg,#041923) 0%,transparent 73%)}
.scrub-finish-icon{font-size:clamp(65px,9vw,140px);line-height:1;color:var(--scrub-accent)}
.scrub-finish strong{font:900 clamp(20px,2.5vw,35px) Inter,sans-serif;letter-spacing:.08em}
.scrub-finish small{font:800 12px Inter,sans-serif;letter-spacing:.25em}
.scrub-cyber{--finish-bg:#063d41}.scrub-stone{--finish-bg:#6d4728}.scrub-medieval{--finish-bg:#dbc394}.scrub-retro{--finish-bg:#561a71}.scrub-present{--finish-bg:#d4e7d7}
.scrub-cyber .scrub-finish{filter:drop-shadow(0 0 22px #08ffe2)}
.scrub-cyber.is-complete .scrub-orbit{border-color:#11ffe2;box-shadow:0 0 45px #11ffe255}
.scrub-cyber.is-complete .scrub-finish-icon{animation:connected-pulse 1.5s ease-in-out infinite}
@keyframes connected-pulse{50%{transform:scale(1.16);filter:drop-shadow(0 0 25px #0affde)}}
@media(max-width:750px){.scrub-story{height:245svh!important}.scrub-stage{grid-template-columns:1fr!important;gap:8px!important;width:90vw!important;max-height:calc(100svh - 30px)}.scrub-art{max-height:34svh!important;order:-1}.scrub-copy h2{font-size:clamp(25px,7vw,40px)!important}.scrub-steps{margin-top:15px!important}.scrub-finish{inset:5%}.scrub-finish-icon{font-size:55px}}
@media(prefers-reduced-motion:reduce){.scrub-story{height:auto!important}.scrub-sticky{position:relative!important;height:auto!important;max-height:none!important;padding:70px 0}.scrub-stage{max-height:none}}
/* Retro SIDE B: full alternative visual language, including yellow sections */
html[data-theme="retro"] .epoch-retro .retro-hitlist,
html[data-theme="retro"] .epoch-retro .retro-radio,
html[data-theme="retro"] .epoch-retro .retro-poster,
html[data-theme="retro"] .epoch-retro .retro-equalizer,
html[data-theme="retro"] .epoch-retro .v6-retro-arcade,
html[data-theme="retro"] .epoch-retro .v6-retro-fanclub,
html[data-theme="retro"] .epoch-retro .v7-retro-tv,
html[data-theme="retro"] .epoch-retro .scrub-retro{transition:background .65s ease,color .65s ease,border-color .65s ease}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-radio{background:linear-gradient(135deg,#002b39,#064d48)!important;color:#cafff4!important;border-color:#48ff96!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-hitlist{background:#071e2a!important;color:#aaffd4!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-hitlist h2,
html[data-theme="retro"].retro-inverted .epoch-retro .retro-hitlist li{color:#b3ffe2!important;border-color:#40ff9e!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-hitlist li strong{color:#28ffbc!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-marquee{background:#1cffb0!important;color:#00292d!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-poster{background:repeating-linear-gradient(0deg,#002a32 0 20px,#063f45 21px 22px)!important;color:#b3ffdc!important;border-color:#1dffb6!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-poster h2{text-shadow:8px 8px #10eac5,-6px -6px #1576a5!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-poster strong{background:#32ffc1!important;color:#002c34!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-equalizer{background:#063d43!important;color:#e0ffed!important}
html[data-theme="retro"].retro-inverted .epoch-retro .equalizer-bars i{background:#1affb7!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v6-retro-arcade{background:#051d2a!important;color:#35ffc2!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v6-arcade-screen{border-color:#21f9bc!important;box-shadow:15px 18px #127b99!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v6-retro-fanclub{background:#073b46!important;color:#ccffef!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v6-fanclub-ticket{background:#24eeb3!important;color:#07313a!important;border-color:#08454b!important;box-shadow:14px 15px #13a1a6!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v7-retro-tv{background:#062e3a!important;color:#d2ffed!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v7-retro-tv h2{text-shadow:5px 5px #12a998!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v7-tv-frame{background:#063a40!important;border-color:#29ffb7!important;box-shadow:18px 20px #11838c!important}
html[data-theme="retro"].retro-inverted .epoch-retro .v7-tv-screen{filter:hue-rotate(145deg)}
html[data-theme="retro"].retro-inverted .epoch-retro .scrub-retro{background:linear-gradient(135deg,#03242c,#086255)!important;color:#c5ffed!important;--scrub-accent:#49ff9f}
html[data-theme="retro"].retro-inverted .epoch-retro .scrub-symbol{color:#4bffb7!important;text-shadow:0 0 45px #11ffad!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-cassette#flipCassette .cassette-svg{filter:hue-rotate(145deg) drop-shadow(-15px 20px 0 #082e38)}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-cassette#flipCassette .cassette-tooltip{background:#2bffb0!important;color:#06373a!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-cassette#flipCassette::after{display:none!important}

/* V10: Five genuinely different scroll-controlled stories */
html[data-theme="retro"]:not(.retro-inverted) .epoch-retro .retro-marquee{background:#24103c!important;color:#fff44e!important}
html[data-theme="retro"].retro-inverted .epoch-retro .retro-marquee{background:#1cffb0!important;color:#00292d!important}
.story26{height:320svh;position:relative;--progress:0;--step:0;--done:0}
.story26-pin{position:sticky;top:0;height:100svh;min-height:520px;display:grid;grid-template-columns:43% 57%;align-items:center;gap:2%;padding:clamp(22px,5vw,90px);overflow:hidden}
.story26-copy{position:relative;z-index:5}
.story26-copy small{font-size:12px;letter-spacing:.22em;font-weight:800}
.story26-copy h2{font-size:clamp(32px,4.7vw,76px);line-height:1.07;margin:24px 0;letter-spacing:-.05em}
.story26-copy p{font-size:clamp(16px,1.5vw,21px);line-height:1.7;max-width:510px}
.story26-progress{height:5px;background:currentColor;opacity:.7;margin:35px 0 16px;position:relative}
.story26-progress i{display:block;width:calc(var(--progress)*100%);height:100%;background:var(--accent,#fff);box-shadow:0 0 16px var(--accent,#fff)}
.story26-status{font:800 13px monospace;letter-spacing:.15em;min-height:30px}
.story26-visual{position:relative;min-width:0;max-height:76svh;aspect-ratio:1.18;display:grid;place-items:center;overflow:hidden}
.story26-stone{background:#342217;color:#f5d5a4;--accent:#f7aa59}
.hunt-land{width:100%;height:100%;position:relative;background:linear-gradient(#7c5338,#4e3424 65%,#3a281d);overflow:hidden;border-radius:40% 40% 2% 2%}
.hunt-sun{position:absolute;width:28%;aspect-ratio:1;border-radius:50%;background:#f3b967;left:60%;top:8%;transform:translateY(calc(var(--progress)*90px));box-shadow:0 0 75px #ffbc6477}
.hunt-mountains{position:absolute;left:0;right:0;bottom:20%;font-size:clamp(80px,13vw,180px);letter-spacing:-.2em;white-space:nowrap;color:#3a261c;transform:translateX(calc(var(--progress)*-50px))}
.hunt-tracks{position:absolute;bottom:10%;left:5%;color:#f6d29b;font-size:28px;opacity:calc(1 - var(--progress)*1.3);transform:translateX(calc(var(--progress)*-60px))}
.hunt-mammoth{position:absolute;font-size:clamp(100px,17vw,260px);line-height:1;right:0;top:22%;color:#e4bb88;transform:translateX(calc((1 - var(--progress))*180%)) scale(calc(.7 + var(--progress)*.5))}
.hunt-hunter{position:absolute;bottom:15%;left:10%;font-size:80px;color:#f9cc91;transform:translateX(calc(var(--progress)*150px))}
.hunt-fire{position:absolute;bottom:8%;left:42%;font-size:120px;color:#ff9e3e;opacity:var(--done);filter:drop-shadow(0 0 35px #ff8a2e)}
.hunt-caption{position:absolute;top:20px;left:22px;font-size:12px;letter-spacing:.2em}
.story26-medieval{background:#d8c49e;color:#3c2d1b;--accent:#885a30}
.story26-medieval .story26-copy h2{font-family:Georgia,serif}
.engine-draft{width:100%;height:100%;position:relative;background:repeating-linear-gradient(0deg,transparent 0 25px,#76572c22 26px 27px),repeating-linear-gradient(90deg,transparent 0 25px,#76572c22 26px 27px);border:12px double #84633d;overflow:hidden}
.engine-gear{position:absolute;color:#775632;line-height:1;transform:rotate(calc(var(--progress)*720deg));transition:none}
.engine-g1{font-size:clamp(150px,21vw,300px);top:9%;left:2%}
.engine-g2{font-size:clamp(110px,15vw,215px);right:1%;bottom:6%;transform:rotate(calc(var(--progress)*-720deg))}
.engine-piston{position:absolute;left:45%;top:12%;width:13%;height:75%;border:12px solid #8c673c;background:#b28b52;transform:translateY(calc((.5 - var(--progress))*90px));opacity:calc(.3 + var(--progress)*.7)}
.engine-smoke{position:absolute;right:12%;top:0;font-size:50px;color:#7c6d5b;opacity:var(--done);transform:translateY(calc(var(--progress)*-35px))}
.engine-seal{position:absolute;inset:28%;border:8px double #8b3c2b;border-radius:50%;color:#8b3c2b;display:grid;place-items:center;text-align:center;font:900 20px Georgia,serif;opacity:var(--done);transform:scale(calc(.3 + var(--done)*.7)) rotate(-15deg);background:#dfc9a5e8}
.engine-ruler{position:absolute;bottom:10px;left:15px;font:11px monospace}
.story26-retro{background:linear-gradient(130deg,#230b44,#5c165e);color:#fff1fb;--accent:#19f6e7}
.story26-retro .story26-copy h2{font-family:Oxanium,sans-serif}
.radio26{width:90%;height:77%;padding:7%;border-radius:25px;background:linear-gradient(145deg,#fba7da,#f351ac);border:14px solid #310e48;box-shadow:15px 20px #170824;display:flex;flex-direction:column;justify-content:space-between;color:#270e3e;transform:perspective(850px) rotateY(calc((.5 - var(--progress))*26deg))}
.radio26-top{font:900 clamp(17px,2.6vw,36px) Oxanium,sans-serif;display:flex;justify-content:space-between;align-items:center}
.radio26-top span{font:10px Inter,sans-serif}
.radio26-dial{height:26%;background:#250e3a;border:7px solid #42194e;position:relative;border-radius:8px}
.radio26-needle{position:absolute;top:-5px;bottom:-5px;left:calc(5% + var(--progress)*90%);width:4px;background:#4affd5;box-shadow:0 0 20px #4affd5}
.radio26-frequencies{color:#f7d7f0;position:absolute;left:5%;right:5%;top:40%;font-size:clamp(8px,.8vw,13px);white-space:nowrap;overflow:hidden}
.radio26-led{font:800 13px Oxanium,sans-serif;color:#f1f8f0}
.radio26-led:first-letter{color:#1effb0}
.radio26-speaker{display:flex;align-items:center;justify-content:space-between;height:23%;gap:8px}
.radio26-speaker i{width:9%;height:calc(15% + var(--progress)*75%);background:#2d0f44;transform:scaleY(calc(.4 + var(--progress)*.8))}
.radio26-speaker i:nth-child(2n){height:45%}.radio26-speaker i:nth-child(3n){height:85%}
.radio26-knobs{text-align:right;font-size:24px}
html.retro-inverted .story26-retro{background:linear-gradient(130deg,#04232f,#07554c)!important;color:#b5ffe3!important;--accent:#4bffab}
html.retro-inverted .radio26{filter:hue-rotate(140deg)}
.story26-present{background:#e9eee4;color:#2d4937;--accent:#63866b}
.story26-present .story26-copy h2{font-weight:400}
.vase26-studio{width:100%;height:100%;position:relative;background:#d5dfd1;overflow:hidden}
.vase26-guides{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 70px,#78947a22 71px 72px);opacity:calc(1 - var(--progress))}
.vase26-shadow{position:absolute;bottom:13%;left:28%;width:48%;height:8%;background:#47684b44;filter:blur(18px);transform:scaleX(calc(.4 + var(--progress)))}
.vase26-form{position:absolute;left:25%;top:14%;width:50%;height:72%;transform:scale(calc(.75 + var(--progress)*.25))}
.vase26-neck{position:absolute;top:0;left:35%;width:30%;height:26%;background:#819c83;border-radius:12px 12px 5px 5px;opacity:calc(.15 + var(--progress)*.85)}
.vase26-body{position:absolute;bottom:0;width:100%;height:80%;background:linear-gradient(100deg,#a4b7a0,#779779 45%,#b9c6b0);border-radius:36% 36% 24% 24%;clip-path:inset(0 calc((1 - var(--progress))*40%) 0 calc((1 - var(--progress))*40%) round 30%)}
.vase26-leaf{position:absolute;top:-17%;left:45%;font-size:140px;color:#4c7952;opacity:var(--done);transform:rotate(calc((1 - var(--progress))*-60deg))}
.vase26-label{position:absolute;bottom:15px;left:20px;font:11px Inter,sans-serif;letter-spacing:.2em}
.story26-cyber{background:#03121d;color:#c7fffb;--accent:#10fbe0}
.story26-cyber .story26-copy h2{font-family:Oxanium,sans-serif}
.net26{width:100%;height:100%;position:relative;display:grid;place-items:center;background:radial-gradient(circle,#07505a44,transparent 60%)}
.net26 svg{width:100%;height:100%;filter:drop-shadow(0 0 10px #12f8df);transform:rotate(calc(var(--progress)*25deg))}
.net26-lines{stroke-dasharray:1200;stroke-dashoffset:calc((1 - var(--progress))*1200);opacity:.85}
.net26-nodes circle{opacity:calc(.1 + var(--progress)*.9)}
.net26-core{position:absolute;inset:40%;border:3px solid #15ffe4;border-radius:50%;display:grid;place-items:center;font:900 clamp(22px,4vw,54px) Oxanium,sans-serif;box-shadow:0 0 calc(var(--progress)*75px) #0fffe1}
.net26-ready{position:absolute;bottom:12%;font:900 clamp(14px,2vw,26px) Oxanium,sans-serif;color:#2affd6;opacity:var(--done);text-shadow:0 0 30px #0affd8}
@media(max-width:800px){.story26-pin{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:5px;padding:24px 6%}.story26-copy h2{font-size:clamp(27px,6vw,45px);margin:10px 0}.story26-copy p{font-size:14px}.story26-progress{margin:12px 0}.story26-visual{max-height:50svh;aspect-ratio:1.3}.radio26{height:85%;padding:5%}.story26{height:260svh}}
@media(prefers-reduced-motion:reduce){.story26{height:auto}.story26-pin{position:relative;height:auto;min-height:0;padding-block:75px}.story26-visual{min-height:320px}}

/* V11: sticky viewport, no clipped finale, aligned contact width */
.story26-pin{box-sizing:border-box!important;grid-template-columns:minmax(0,44%) minmax(0,56%)!important;gap:0!important;padding:clamp(30px,4vw,64px) max(5vw,calc((100vw - 1440px)/2))!important}
.story26-visual{width:100%!important;max-width:min(100%,680px)!important;max-height:min(68svh,610px)!important;aspect-ratio:1.28!important;justify-self:center!important;overflow:visible!important}
.story26-cyber .net26{overflow:visible!important}
.story26-cyber .net26 svg{width:min(100%,530px)!important;height:auto!important;max-height:56svh!important;overflow:visible!important}
.story26-cyber .net26-core{inset:auto!important;width:17%;aspect-ratio:1;min-width:70px;display:grid;place-items:center}
.story26-cyber .net26-ready{bottom:4%!important;left:0;right:0;text-align:center;font-size:clamp(12px,1.4vw,20px)!important;white-space:normal}
.story26-copy{min-width:0;padding-right:clamp(20px,4vw,70px)}
.story26-copy h2{overflow-wrap:normal}
#contact .contact-grid{width:min(1440px,90vw)!important;max-width:1440px!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box}
#contact .contact-form{min-width:0}
#contact .contact-copy{min-width:0}
@media(max-width:800px){.story26-pin{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)!important;padding:28px 6%!important;gap:10px!important}.story26-copy{padding-right:0}.story26-visual{max-height:43svh!important;aspect-ratio:1.45!important}.story26-cyber .net26 svg{max-height:37svh!important}.story26-cyber .net26-ready{bottom:0!important}.story26-copy h2{font-size:clamp(26px,6vw,42px)!important}#contact .contact-grid{width:90vw!important}}
/* Fifth unique chapter in every era: scrubbed through its own narrative */
.v11-extra{--v11:0;position:relative;min-height:110svh;padding:clamp(65px,8vw,130px) 7%;display:grid;grid-template-columns:42% 58%;gap:2%;align-items:center;overflow:hidden}
.v11-extra h2{font-size:clamp(35px,5vw,78px);line-height:1.05;margin:20px 0}
.v11-extra p{font-size:19px;line-height:1.7;max-width:460px}
.v11-extra small{letter-spacing:.25em;font-size:12px;font-weight:800}
.v11-stone{background:#1c1919;color:#f1c993}
.v11-sky{height:440px;position:relative;border-radius:50% 50% 8px 8px;background:linear-gradient(#0e1326,#3b2530 75%,#a85d38);overflow:hidden}
.v11-stars{position:absolute;top:10%;left:4%;font-size:clamp(18px,3vw,45px);letter-spacing:.2em;opacity:calc(1 - var(--v11)*.9);transform:rotate(calc(var(--v11)*40deg))}
.v11-moon{position:absolute;top:5%;left:calc(8% + var(--v11)*67%);font-size:140px;color:#f7d8a4;transform:rotate(calc(var(--v11)*140deg))}
.v11-horizon{position:absolute;bottom:0;width:100%;height:30%;background:#171318;clip-path:polygon(0 60%,20% 20%,38% 70%,60% 10%,85% 50%,100% 10%,100% 100%,0 100%)}
.v11-sky>span{position:absolute;bottom:10px;left:15px;font-size:12px;letter-spacing:.2em}
.v11-medieval{background:#ead8b4;color:#382b20}
.v11-envelope{height:390px;position:relative;background:#a98654;border:8px solid #6d4a2e;perspective:800px;display:grid;place-items:center;overflow:hidden}
.v11-flap{position:absolute;inset:0;background:#d7b986;clip-path:polygon(0 0,100% 0,50% 58%);transform-origin:top;transform:rotateX(calc(var(--v11)*-170deg));z-index:3}
.v11-letter{position:relative;z-index:2;background:#f4e7c8;padding:35px;width:76%;min-height:260px;box-shadow:0 10px 30px #3b241d44;transform:translateY(calc((1 - var(--v11))*115px));font-family:Georgia,serif}
.v11-letter b{font-size:20px}.v11-letter p{font-size:16px}.v11-letter span{font-size:13px}
.v11-seal{position:absolute;z-index:4;top:45%;left:calc(50% - 25px);font-size:50px;color:#7e2e25;opacity:calc(1 - var(--v11)*2)}
.v11-retro{background:#200c3d;color:#fbe8fa}
.v11-retro h2{font-family:Oxanium,sans-serif;text-shadow:4px 4px #fc3eaa}
.v11-road{height:430px;position:relative;overflow:hidden;background:linear-gradient(#301059,#b0208c 65%,#180b3b 66%);perspective:260px}
.v11-sun{position:absolute;top:14%;left:calc(38% + var(--v11)*10%);width:170px;height:170px;border-radius:50%;background:repeating-linear-gradient(0deg,#ffb35e 0 16px,#fc5598 17px 22px)}
.v11-road-grid{position:absolute;inset:60% -80% -90%;background:repeating-linear-gradient(90deg,transparent 0 55px,#fc4db4 56px 59px),repeating-linear-gradient(0deg,transparent 0 28px,#fc4db4 29px 32px);transform:rotateX(55deg) translateY(calc(var(--v11)*120px))}
.v11-car{position:absolute;bottom:10%;left:calc(10% + var(--v11)*60%);font-size:130px;color:#0ff6e7;text-shadow:0 0 30px #00ffeb;transform:skew(-15deg)}
.v11-speed{position:absolute;top:20px;right:20px;font:900 22px Oxanium,sans-serif;color:#fff}
html.retro-inverted .v11-retro{background:#042e37!important;color:#aaffde!important}
html.retro-inverted .v11-road{filter:hue-rotate(140deg)}
.v11-present{background:#f1f0e8;color:#34503c}
.v11-room{height:450px;position:relative;background:#d6d4c5;overflow:hidden}
.v11-window{position:absolute;top:7%;left:12%;width:45%;height:66%;border:15px solid #a7b3a2;background:#b6d1d3;box-shadow:0 0 0 3px #e5e3d7}
.v11-window:before{content:'';position:absolute;left:47%;height:100%;width:8px;background:#a7b3a2}
.v11-daylight{position:absolute;inset:0;background:linear-gradient(115deg,#fff8,transparent);opacity:calc(1 - var(--v11)*.8)}
.v11-room-light{position:absolute;top:28%;left:38%;width:100%;height:95%;background:linear-gradient(110deg,#ffe5a85c,transparent);clip-path:polygon(0 0,30% 0,100% 100%,0 100%);transform:translateX(calc(var(--v11)*-90px));pointer-events:none}
.v11-room-plant{position:absolute;right:10%;bottom:8%;font-size:220px;color:#6c896e;transform:rotate(calc((var(--v11) - .5)*24deg))}
.v11-room>span{position:absolute;bottom:12px;left:18px;font:12px Inter,sans-serif;letter-spacing:.2em}
.v11-cyber{background:#020d17;color:#d1fff7}
.v11-cyber h2{font-family:Oxanium,sans-serif;font-size:clamp(31px,4vw,60px)}
.v11-decrypt{height:400px;display:grid;place-items:center;position:relative;border:1px solid #0cebd7;background:repeating-linear-gradient(0deg,#0b373a55 0 2px,transparent 3px 8px);overflow:hidden}
.v11-noise{position:absolute;inset:20px;color:#11c9c0;font:clamp(12px,1.5vw,21px)/2 monospace;word-break:break-all;opacity:calc(1 - var(--v11)*1.2);transform:translateY(calc(var(--v11)*-45px))}
.v11-message{text-align:center;font:900 clamp(22px,3vw,44px)/1.3 Oxanium,sans-serif;opacity:clamp(0,calc((var(--v11) - .4)*2.5),1);transform:scale(calc(.8 + var(--v11)*.2));text-shadow:0 0 30px #0affdb}
.v11-message strong{display:block;color:#16f8d8}.v11-message span{display:block;font:12px monospace;margin-top:30px}
@media(max-width:800px){.v11-extra{grid-template-columns:1fr;min-height:0;gap:30px}.v11-sky,.v11-envelope,.v11-road,.v11-room,.v11-decrypt{height:310px}.v11-moon{font-size:90px}.v11-car{font-size:85px}.v11-room-plant{font-size:150px}}
@media(prefers-reduced-motion:reduce){.v11-extra{--v11:1}}

/* V12 / four genuinely different page architectures. Retro remains untouched. */
/* STONE: cavernous irregular stone-wall gallery and broken-grid product artifacts */
.epoch-stone .epoch-hero{min-height:94svh}
.epoch-stone .stone-cave-shop{background:#34271e!important;display:grid!important;grid-template-columns:1fr 1.5fr!important;align-items:center;gap:4%;padding:120px 7%!important;color:#efd5a3!important}
.epoch-stone .stone-cave-shop>div:first-child{align-self:start;position:sticky;top:110px}
.epoch-stone .stone-wall{display:flex!important;flex-direction:column!important;gap:50px!important}
.epoch-stone .stone-wall article{width:86%;min-height:320px!important;clip-path:polygon(4% 0,95% 4%,100% 89%,89% 100%,0 94%,2% 12%);transform:rotate(-3deg);background:#73593e!important;border:9px solid #b68d5b!important}
.epoch-stone .stone-wall article:nth-child(even){align-self:end;transform:rotate(4deg)}
.epoch-stone .stone-warning{grid-column:2}
.epoch-stone .v7-stone-gallery{grid-template-columns:1fr 1fr!important;background:#a7875b!important;color:#2b2018!important}
.epoch-stone .v7-cave-panels article{clip-path:polygon(0 8%,93% 0,100% 88%,10% 100%);border:0!important;background:#493425!important;color:#e7c18e!important}
.epoch-stone .stone-trail{background:#d6b887!important;color:#36291c!important;display:flex!important;flex-direction:column!important;gap:65px!important}
.epoch-stone .stone-trail-list{align-self:flex-end;max-width:720px;columns:2;column-gap:50px}
.epoch-stone .v6-stone-map{background:#c4a67d!important}
.epoch-stone .story26-stone .story26-pin{grid-template-columns:55% 45%!important}
.v12-stone-passage{height:260svh;position:relative;--q:0;background:#1e1510;color:#f6d7a0}
.v12-stone-sticky{height:100svh;position:sticky;top:0;display:grid;grid-template-columns:58% 42%;align-items:center;overflow:hidden}
.v12-stone-wall{position:relative;height:100%;background:radial-gradient(ellipse at calc(10% + var(--q)*80%) 55%,#bb87506e 0%,#573e2c 18%,#201710 53%);display:grid;place-items:center;overflow:hidden}
.v12-stone-dust{position:absolute;inset:15% 10%;font-size:60px;letter-spacing:.3em;color:#cba675;opacity:calc(.1 + var(--q)*.7)}
.v12-stone-carving{display:flex;gap:3%;align-items:center;font-size:clamp(90px,12vw,230px);color:#e2b77b}
.v12-stone-carving span{opacity:clamp(.05,calc((var(--q) - var(--n,0)) * 3),1);filter:blur(calc((1 - var(--q))*4px))}
.v12-stone-carving span:nth-child(2){--n:.25}.v12-stone-carving span:nth-child(3){--n:.55}
.v12-stone-torch{position:absolute;bottom:5%;left:calc(2% + var(--q)*80%);font-size:100px;color:#ffaf56;text-shadow:0 0 50px #ff9c39}
.v12-stone-story{padding:8%}.v12-stone-story h2{font:900 clamp(36px,5vw,75px)/1.1 Georgia,serif}.v12-stone-story p{font-size:20px;line-height:1.7}
.v12-stone-caption{font-size:13px;letter-spacing:.2em;color:#f5ad58}
/* 1805: centered print folio, radial machinery, asymmetrical catalogue */
.epoch-medieval .epoch-hero{min-height:85svh}
.epoch-medieval .v6-clockroom{padding:110px 7%!important;background:#e8dcc0!important}
.epoch-medieval .brass-ledger{display:grid!important;grid-template-columns:35% 65%!important;background:#3b3025!important;color:#f5e2b6!important;padding:120px 9%!important}
.epoch-medieval .brass-seal{transform:rotate(-18deg) scale(1.3)}
.epoch-medieval .v7-medieval-order{grid-template-columns:60% 40%!important;background:#cbb38c!important}
.epoch-medieval .brass-catalog{background:#f0e4c9!important;color:#382a1b!important}
.epoch-medieval .brass-plates{display:grid!important;grid-template-columns:1fr 1.3fr!important;gap:35px!important}
.epoch-medieval .brass-plates article:first-child{grid-row:span 2!important;display:flex;flex-direction:column;justify-content:center;min-height:580px}
.epoch-medieval .brass-plates article:nth-child(2){transform:rotate(2deg)}
.epoch-medieval .brass-plates article:nth-child(3){transform:rotate(-2deg)}
.epoch-medieval .brass-timeline{background:#e0d0aa!important;color:#3a2d1d!important}
.epoch-medieval .v6-brass-blueprint{grid-template-columns:40% 60%!important}
.v12-medieval-instrument{--q:0;min-height:130svh;display:grid;grid-template-columns:42% 58%;align-items:center;padding:10% 8%;background:radial-gradient(circle at 75% 50%,#ebd9b1,#ac8859);color:#3a2c1a;overflow:hidden}
.v12-instrument-copy h2{font:400 clamp(40px,5vw,80px)/1.1 Georgia,serif}
.v12-instrument-copy p{max-width:400px;font-size:19px;line-height:1.7}
.v12-degree{font:14px monospace;letter-spacing:.15em}
.v12-astrolabe{aspect-ratio:1;position:relative;display:grid;place-items:center;filter:drop-shadow(15px 25px 18px #50331c55)}
.v12-ring{position:absolute;border:clamp(10px,1.8vw,26px) double #8b6535;border-radius:50%;box-shadow:inset 0 0 0 3px #e7ce93,0 0 0 3px #533d21;display:grid;place-items:start center}
.v12-ring span{font-size:42px;color:#64451d}
.v12-ring.ring-a{inset:2%;transform:rotate(calc(var(--q)*520deg))}
.v12-ring.ring-b{inset:15%;transform:rotate(calc(var(--q)*-760deg))}
.v12-ring.ring-c{inset:30%;transform:rotate(calc(var(--q)*950deg))}
.v12-needle{height:70%;width:6px;background:#5b3a1d;transform:rotate(calc(var(--q)*360deg));box-shadow:0 0 0 2px #e7cf9b}
.v12-center{position:absolute;font-size:85px;color:#53361b}
/* PRESENT: editorial magazine, open whitespace, typographic sections, offset product cards */
.epoch-present .epoch-hero{min-height:90svh}
.epoch-present .v7-present-gallery{background:#e1e8df!important;padding-top:160px!important;padding-bottom:160px!important}
.epoch-present .v7-present-gallery-heading{max-width:800px;margin-left:auto;text-align:right}
.epoch-present .v7-present-objects{gap:35px!important;grid-template-columns:1.2fr .8fr 1.1fr!important}
.epoch-present .v7-present-objects article:first-child{margin-top:110px}
.epoch-present .v7-present-objects article:last-child{margin-top:210px}
.epoch-present .verdant-editorial{background:#f8f6ef!important;display:grid!important;grid-template-columns:30% 70%!important;padding:140px 8%!important;gap:4%}
.epoch-present .verdant-collection{background:#f0ede4!important}
.epoch-present .verdant-values{background:#cad8ca!important;padding-block:110px!important}
.epoch-present .v6-verdant-process{background:#e1e6d8!important}
.epoch-present .v6-verdant-quote{padding-block:190px!important}
.epoch-present .story26-present .story26-pin{grid-template-columns:37% 63%!important}
.v12-present-magazine{--q:0;background:#faf9f5;color:#35473a;padding:45px 7% 130px}
.v12-magazine-top{display:flex;justify-content:space-between;border-bottom:1px solid #809887;padding-bottom:20px;font:700 12px Inter,sans-serif;letter-spacing:.18em}
.v12-magazine-layout{display:grid;grid-template-columns:58% 42%;gap:5%;margin-top:75px;align-items:center}
.v12-magazine-photo{height:clamp(450px,55vw,750px);background:#d1d8c8;position:relative;overflow:hidden;display:grid;place-items:center}
.v12-magazine-sun{position:absolute;width:65%;aspect-ratio:1;border-radius:50%;background:#f5ebc5;left:calc(-20% + var(--q)*50%);top:8%;filter:blur(10px)}
.v12-magazine-object{position:relative;width:40%;height:60%;border-radius:40% 40% 20% 20%;background:linear-gradient(105deg,#869c84,#c1cbb8,#6c896e);box-shadow:calc(10px + var(--q)*70px) 25px 30px #465f4850;transform:rotate(calc((var(--q) - .5)*16deg))}
.v12-magazine-photo>span{position:absolute;bottom:20px;left:20px;font-size:12px;letter-spacing:.2em}
.v12-magazine-copy{padding:6%}.v12-magazine-copy h2{font:400 clamp(45px,6vw,100px)/1.05 Inter,sans-serif;letter-spacing:-.07em}
.v12-magazine-copy p{font-size:19px;line-height:1.8}.v12-magazine-rule{height:1px;background:#899c89;margin:60px 0 25px}
/* 2099: dense HUD + horizontally differentiated diagnostics */
.epoch-cyber .epoch-hero{min-height:95svh}
.epoch-cyber .nexus-terminal-section{background:#020c16!important;display:grid!important;grid-template-columns:38% 62%!important;padding:140px 7%!important}
.epoch-cyber .nexus-console{background:#041825!important}
.epoch-cyber .nexus-matrix{background:#08212a!important}
.epoch-cyber .matrix-rows{display:flex!important;flex-direction:column!important;gap:0!important}
.epoch-cyber .matrix-rows article{display:grid!important;grid-template-columns:12% 28% 40% 20%!important;align-items:center!important;gap:0!important;padding:30px 25px!important;border-bottom:1px solid #2bd3ca66!important}
.epoch-cyber .v6-nexus-scanner{background:#0a2630!important;grid-template-columns:40% 60%!important}
.epoch-cyber .v6-nexus-city{background:#03111e!important}
.epoch-cyber .v7-cyber-data{background:#001019!important;grid-template-columns:38% 62%!important}
.epoch-cyber .story26-cyber{background:#051a22!important}
.epoch-cyber .v11-cyber{min-height:75svh!important}
.v12-cyber-monitor{--q:0;background:#000b14;color:#a8fff1;padding:65px 6% 120px}
.v12-monitor-header{display:flex;justify-content:space-between;border-top:1px solid #12f2d4;border-bottom:1px solid #12f2d4;padding:18px 0;font:12px monospace;letter-spacing:.2em}
.v12-monitor-layout{display:grid;grid-template-columns:45% 55%;gap:5%;align-items:center;min-height:600px}
.v12-monitor-copy h2{font:900 clamp(40px,5vw,80px)/1.1 Oxanium,sans-serif}.v12-monitor-copy p{max-width:480px;line-height:1.8;font-size:19px}
.v12-signal{font:700 16px monospace;color:#1bffe1}
.v12-monitor-wave{height:400px;border:1px solid #17d4c0;position:relative;overflow:hidden;background:repeating-linear-gradient(0deg,transparent 0 29px,#13d3be22 30px 31px),repeating-linear-gradient(90deg,transparent 0 29px,#13d3be22 30px 31px)}
.v12-monitor-bars{position:absolute;inset:15% 6%;display:flex;gap:3px;align-items:center;justify-content:space-between}
.v12-monitor-bars i{width:3%;height:calc(8% + var(--q)*var(--h)*1%);background:#12ffdc;box-shadow:0 0 20px #12ffe077;transform:scaleY(calc(.4 + var(--q)*.8))}
.v12-monitor-scan{position:absolute;left:calc(var(--q)*100%);top:0;bottom:0;width:3px;background:#c8fff6;box-shadow:0 0 40px #00ffe1}
.v12-monitor-wave>span{position:absolute;bottom:15px;left:15px;font:12px monospace}
@media(max-width:850px){
.epoch-stone .stone-cave-shop,.epoch-medieval .brass-ledger,.epoch-medieval .v7-medieval-order,.epoch-medieval .v6-brass-blueprint,.epoch-present .verdant-editorial,.epoch-cyber .nexus-terminal-section,.epoch-cyber .v6-nexus-scanner,.epoch-cyber .v7-cyber-data{grid-template-columns:1fr!important}
.epoch-stone .stone-cave-shop>div:first-child{position:static}.epoch-stone .stone-warning{grid-column:auto}
.epoch-medieval .brass-plates{grid-template-columns:1fr!important}.epoch-medieval .brass-plates article:first-child{grid-row:auto!important;min-height:300px}
.epoch-present .v7-present-objects{grid-template-columns:1fr!important}.epoch-present .v7-present-objects article{margin-top:0!important}
.epoch-cyber .matrix-rows article{grid-template-columns:1fr 1fr!important;gap:15px!important}
.v12-stone-sticky,.v12-medieval-instrument,.v12-magazine-layout,.v12-monitor-layout{grid-template-columns:1fr!important}
.v12-stone-sticky{grid-template-rows:55% 45%}.v12-stone-story{padding:15px 7%}.v12-stone-story h2{font-size:clamp(30px,7vw,50px)}.v12-stone-story p{font-size:14px}
.v12-medieval-instrument{gap:40px}.v12-astrolabe{width:min(80vw,460px);margin:auto}
.v12-magazine-photo{height:450px}.v12-magazine-copy{padding:20px 0}
.v12-monitor-layout{gap:25px;min-height:0}.v12-monitor-wave{height:300px}
}
@media(prefers-reduced-motion:reduce){.v12-stone-passage{height:auto}.v12-stone-sticky{position:relative;height:auto;min-height:650px}.v12-stone-passage,.v12-medieval-instrument,.v12-present-magazine,.v12-cyber-monitor{--q:1}}

/* V13 — corrections, unique replacement sections, no orphaned title letters */
/* Never break Hungarian words after one glyph; fit titles instead. */
.epoch h1,.epoch h2,.epoch h3,.contact h3,
.epoch p,.contact-copy>span {
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.epoch-present .verdant-editorial-copy h2 {
  font-size:clamp(32px,4.15vw,66px)!important;
  letter-spacing:-.065em!important;
  line-height:1.08!important;
}
.epoch-present .verdant-editorial {
  grid-template-columns:minmax(340px,44%) minmax(0,56%)!important;
  gap:2%!important;
}
.epoch-present .verdant-editorial-copy{min-width:0!important}
.epoch-present .verdant-editorial-copy h2{max-width:100%!important}
html[data-theme="cyber"] #contact .contact-copy h3{
  font-size:clamp(29px,3.9vw,66px)!important;
  line-height:1.09!important;
  letter-spacing:-.055em!important;
  max-width:100%!important;
}
#contact .contact-grid {
  width:min(1360px,90vw)!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(30px,4vw,75px)!important;
}
#contact .contact-copy,#contact .contact-form {min-width:0!important}
#contact .contact-copy h3 {overflow-wrap:normal!important;word-break:normal!important}
html[data-theme="cyber"] .epoch-cyber{
  --v13-page-width:min(1360px,90vw);
}
.epoch-cyber .nexus-terminal-section,
.epoch-cyber .v6-nexus-scanner,
.epoch-cyber .nexus-console,
.epoch-cyber .v7-cyber-data,
.epoch-cyber .nexus-matrix,
.epoch-cyber .v12-cyber-monitor,
.epoch-cyber .v11-cyber,
.epoch-cyber .nexus-roadmap,
.epoch-cyber .v6-nexus-city,
.epoch-cyber .nexus-transmission {
  box-sizing:border-box!important;
  padding-left:max(5vw,calc((100vw - 1360px)/2))!important;
  padding-right:max(5vw,calc((100vw - 1360px)/2))!important;
}
.epoch-cyber section{max-width:100%;min-width:0}
.epoch-cyber section>div,.epoch-cyber section article{min-width:0}
.epoch-cyber .nexus-terminal-section,
.epoch-cyber .v6-nexus-scanner,
.epoch-cyber .v7-cyber-data{gap:clamp(20px,3vw,55px)!important}
.epoch-cyber .nexus-terminal-section{grid-template-columns:minmax(0,40%) minmax(0,60%)!important}
.epoch-cyber .v6-nexus-scanner{grid-template-columns:minmax(0,40%) minmax(0,60%)!important}
.epoch-cyber .v7-cyber-data{grid-template-columns:minmax(0,40%) minmax(0,60%)!important}
.epoch-cyber .nexus-terminal,.epoch-cyber .nexus-hologram,.epoch-cyber .v7-data-network{max-width:100%;min-width:0}
.epoch-cyber .v11-cyber{grid-template-columns:minmax(0,44%) minmax(0,56%)!important;gap:0!important}
.epoch-cyber .v11-cyber h2{font-size:clamp(28px,3.4vw,52px)!important;overflow-wrap:normal!important}
.epoch-cyber .v11-decrypt{width:100%;min-width:0}
.epoch-cyber .v11-message{opacity:clamp(0,calc((var(--v11) - .72)*4.5),1)!important}
.epoch-cyber .v11-noise{opacity:calc(1 - var(--v11)*1.2)}
/* Contact background: cover entire section and fade into the footer without a hard seam. */
#contact.contact{position:relative!important;isolation:isolate;overflow:hidden!important;min-height:760px;padding-block:clamp(110px,10vw,180px)!important}
#contact.contact>.bg-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center center!important}
#contact.contact>.video-shade{position:absolute!important;inset:0!important;pointer-events:none;z-index:1!important}
#contact.contact:after{
  content:"";position:absolute;z-index:2;left:0;right:0;bottom:-1px;height:clamp(170px,25vw,360px);
  background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.13) 20%,var(--v13-contact-fade,#130c0a) 100%);
  pointer-events:none;
}
html[data-theme="stone"] #contact{--v13-contact-fade:#1c120c}
html[data-theme="medieval"] #contact{--v13-contact-fade:#1b1912}
html[data-theme="retro"] #contact{--v13-contact-fade:#190b2d}
html[data-theme="present"] #contact{--v13-contact-fade:#e6e8e0}
html[data-theme="cyber"] #contact{--v13-contact-fade:#030e18}
#contact .contact-grid{position:relative;z-index:4!important}
/* Retro: music starts after the tuning sequence reaches its finale. */
.story26-retro .story26-visual{overflow:visible!important}
.v13-music-notes{position:absolute;inset:-9%;z-index:4;pointer-events:none}
.v13-music-notes span{
  position:absolute;left:var(--x);top:var(--y);font:900 clamp(30px,4vw,70px) Georgia,serif;
  color:var(--note-color,#ffe949);opacity:0;
  text-shadow:0 0 15px #ff47b3;
}
.v13-music-notes span:nth-child(1){--x:5%;--y:20%;--delay:0s}
.v13-music-notes span:nth-child(2){--x:85%;--y:5%;--delay:.35s}
.v13-music-notes span:nth-child(3){--x:97%;--y:55%;--delay:.7s}
.v13-music-notes span:nth-child(4){--x:16%;--y:83%;--delay:1.1s}
.v13-music-notes span:nth-child(5){--x:65%;--y:90%;--delay:1.5s}
.v13-music-notes span:nth-child(6){--x:4%;--y:53%;--delay:1.9s}
.v13-music-notes span:nth-child(7){--x:75%;--y:30%;--delay:2.3s}
.story26-retro.is-playing .v13-music-notes span{
  animation:v13-float-note 3.3s ease-in-out var(--delay) infinite;
}
@keyframes v13-float-note{
  0%{opacity:0;transform:translateY(24px) rotate(-20deg) scale(.7)}
  22%{opacity:1}65%{opacity:.95}
  100%{opacity:0;transform:translateY(-110px) rotate(20deg) scale(1.15)}
}
html.retro-inverted .v13-music-notes{--note-color:#41ffac}
/* Medieval: not a grid of cards, a horizontal atelier display. */
.v13-brass-atelier{background:#e9d7b3;color:#332519;padding:90px 7% 110px;overflow:hidden}
.v13-atelier-header,.v13-atelier-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:2px solid #856641;padding:18px 0;font:800 11px Georgia,serif;letter-spacing:.16em}
.v13-atelier-grid{display:grid;grid-template-columns:37% 63%;gap:3%;padding:70px 0 80px;align-items:start}
.v13-atelier-lead{position:sticky;top:130px}
.v13-atelier-lead h2{font:400 clamp(44px,5vw,82px)/1.04 Georgia,serif!important;letter-spacing:-.06em}
.v13-atelier-lead p{font-size:19px;line-height:1.8;max-width:370px}
.v13-atelier-index{font:600 14px monospace;letter-spacing:.5em;margin-top:60px}
.v13-atelier-showcase{display:flex;flex-direction:column;gap:0}
.v13-atelier-piece{display:grid;grid-template-columns:43% 57%;align-items:center;gap:20px;min-height:265px;border-bottom:2px solid #92734d;padding:30px 15px}
.v13-atelier-piece:first-child{border-top:2px solid #92734d}
.v13-atelier-piece:nth-child(2){background:#dbc59b;padding-left:25px}
.v13-atelier-symbol{font-size:clamp(100px,13vw,220px);line-height:1;color:#886337;text-align:center;display:block;transition:transform .5s}
.v13-atelier-piece:hover .v13-atelier-symbol{transform:rotate(20deg) scale(1.07)}
.v13-atelier-piece h3{font:400 clamp(25px,3vw,43px) Georgia,serif!important}
.v13-atelier-piece p{font-size:15px;line-height:1.7}
.v13-atelier-footer a{color:inherit;text-decoration:underline}
/* Stone campaign: a panoramic cave wall instead of marketing cards */
.v13-stone-echo{background:#3a291c;color:#eac999;padding:110px 7% 70px;overflow:hidden}
.v13-echo-intro{max-width:790px}
.v13-echo-intro h2{font:900 clamp(42px,6vw,95px)/1.05 Georgia,serif!important}
.v13-echo-intro p{font-size:20px;line-height:1.7}
.v13-echo-wall{position:relative;min-height:550px;margin:75px -3% 55px;background:radial-gradient(ellipse at 55% 45%,#98724d,#4c3323 65%,#291b15);clip-path:polygon(1% 10%,12% 2%,35% 5%,49% 0,72% 8%,96% 2%,100% 20%,98% 89%,82% 100%,55% 94%,32% 100%,0 90%);display:flex;align-items:center;justify-content:space-evenly}
.v13-echo-glyph{font:900 clamp(100px,13vw,220px)/1 Georgia,serif;color:#e1b883;display:flex;flex-direction:column;align-items:center;gap:18px;transform:rotate(var(--turn))}
.v13-echo-glyph span{font:800 12px Inter,sans-serif;letter-spacing:.15em}
.glyph-one{--turn:-12deg}.glyph-two{--turn:8deg}.glyph-three{--turn:-6deg}
.v13-echo-hand{position:absolute;bottom:3%;right:12%;font-size:90px;color:#bd7e5a;opacity:.5}
.v13-echo-bottom{font:800 13px Inter,sans-serif;letter-spacing:.2em;border-top:1px solid #e5bd8e;padding-top:25px}
/* Stone craft ritual: stepped monument, not a text list */
.v13-stone-ritual{background:#c5a579;color:#322317;padding:130px 7% 90px;overflow:hidden}
.v13-ritual-head{max-width:900px}
.v13-ritual-head h2{font:900 clamp(48px,7vw,112px)/.99 Georgia,serif!important}
.v13-ritual-head p{font-size:20px;line-height:1.8}
.v13-ritual-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:90px 0 55px;align-items:end}
.v13-ritual-steps article{background:#513723;color:#f2d4a5;padding:45px 30px;min-height:310px;display:flex;flex-direction:column;justify-content:end;clip-path:polygon(0 6%,94% 0,100% 94%,8% 100%)}
.v13-ritual-steps article:nth-child(2){background:#6a452c;min-height:400px;transform:translateY(-28px)}
.v13-ritual-steps article:nth-child(3){background:#3c2a20;min-height:350px;transform:translateY(12px)}
.v13-ritual-steps article>span{font-size:110px;line-height:1}
.v13-ritual-steps article b{font-size:22px;letter-spacing:.1em}
.v13-ritual-steps article p{font-size:16px;line-height:1.6}
.v13-ritual-foot{display:flex;align-items:center;justify-content:space-between;gap:25px}
.v13-ritual-foot>span{font-size:12px;letter-spacing:.15em}
/* Stone hunt: full-bleed cinematic scrub with independent terrain and story panel */
.v13-hunt-story{--hunt:0;position:relative;height:290svh;background:#21170f;color:#ffe0ad}
.v13-hunt-pin{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:62% 38%;overflow:hidden}
.v13-hunt-sky{position:relative;overflow:hidden;background:linear-gradient(#4e3429,#b47a48 62%,#3a2c21 63%);isolation:isolate}
.v13-hunt-sun{position:absolute;top:10%;left:calc(15% + var(--hunt)*55%);width:170px;aspect-ratio:1;border-radius:50%;background:#ffd19a;box-shadow:0 0 90px #ffbd66a8}
.v13-hunt-mammoth{position:absolute;bottom:20%;right:calc(-80% + var(--hunt)*90%);font-size:clamp(180px,23vw,420px);line-height:1;color:#291b16;filter:drop-shadow(18px 25px 10px #291b1670)}
.v13-hunt-spears{position:absolute;bottom:22%;left:calc(-30% + var(--hunt)*45%);font-size:80px;color:#f7c98b;opacity:clamp(0,calc((var(--hunt) - .25)*3),1)}
.v13-hunt-tracks{position:absolute;bottom:8%;left:5%;font-size:30px;color:#c99b65;opacity:calc(1 - var(--hunt)*1.5)}
.v13-hunt-fire{position:absolute;bottom:16%;left:45%;font-size:clamp(90px,11vw,180px);color:#ffad3e;opacity:clamp(0,calc((var(--hunt) - .73)*5),1);filter:drop-shadow(0 0 35px #ff853a)}
.v13-hunt-text{padding:clamp(35px,6vw,100px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.v13-hunt-text h2{font:900 clamp(32px,4.5vw,70px)/1.07 Georgia,serif!important}
.v13-hunt-text p{font-size:18px;line-height:1.7}
.v13-hunt-state{font:800 13px Inter,sans-serif;letter-spacing:.15em;margin-top:25px}
.v13-hunt-meter{height:4px;background:#a27d58;margin-top:15px}
.v13-hunt-meter i{display:block;height:100%;width:calc(var(--hunt)*100%);background:#ffc57e}
@media(max-width:1000px){
 .epoch-present .verdant-editorial{grid-template-columns:1fr!important}
 .epoch-present .verdant-editorial-copy h2{font-size:clamp(36px,7vw,75px)!important}
 .v13-atelier-grid{grid-template-columns:1fr}.v13-atelier-lead{position:static}
 .v13-hunt-pin{grid-template-columns:1fr;grid-template-rows:50% 50%}
 .v13-hunt-text{padding:20px 7%}.v13-hunt-text h2{font-size:clamp(30px,6vw,48px)!important}
 .v13-hunt-text p{font-size:14px}
 .v13-ritual-steps{grid-template-columns:1fr}.v13-ritual-steps article,.v13-ritual-steps article:nth-child(2),.v13-ritual-steps article:nth-child(3){min-height:240px;transform:none}
 .v13-echo-wall{min-height:370px}.v13-echo-glyph{font-size:clamp(65px,15vw,130px)}
 html[data-theme="cyber"] #contact .contact-copy h3{font-size:clamp(28px,5vw,49px)!important}
}
@media(max-width:800px){
 #contact .contact-grid{grid-template-columns:1fr!important;gap:32px!important}
 #contact .contact-copy h3{font-size:clamp(30px,7vw,48px)!important}
 .epoch-cyber .nexus-terminal-section,.epoch-cyber .v6-nexus-scanner,.epoch-cyber .v7-cyber-data,.epoch-cyber .v11-cyber{grid-template-columns:1fr!important}
 .v13-atelier-piece{grid-template-columns:35% 65%}.v13-atelier-symbol{font-size:80px}
 .v13-echo-glyph span{font-size:9px}
 .v13-ritual-foot{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
 .v13-music-notes span{animation:none!important}
 .v13-hunt-story{height:auto;--hunt:1}
 .v13-hunt-pin{position:relative;min-height:850px;height:auto}
}

/* V14: reliable layout fixes and consistent cyber gutters */
.epoch-stone .v13-stone-echo,.epoch-stone .v13-stone-ritual,
.epoch-medieval .v13-brass-atelier{display:block!important;position:relative;box-sizing:border-box;width:100%;max-width:100%;font-family:Inter,sans-serif}
.epoch-stone .v13-stone-echo{background:#3a291c!important;color:#eac999!important;padding:110px max(5vw,calc((100vw - 1360px)/2)) 70px!important}
.epoch-stone .v13-stone-ritual{background:#c5a579!important;color:#322317!important;padding:130px max(5vw,calc((100vw - 1360px)/2)) 90px!important}
.epoch-medieval .v13-brass-atelier{background:#e9d7b3!important;color:#332519!important;padding:90px max(5vw,calc((100vw - 1360px)/2)) 110px!important}
.epoch-stone .v13-stone-echo h2,.epoch-stone .v13-stone-ritual h2,
.epoch-medieval .v13-brass-atelier h2{margin:24px 0!important;max-width:100%;overflow-wrap:normal!important}
.epoch-stone .v13-echo-wall{display:flex!important;align-items:center;justify-content:space-evenly}
.epoch-stone .v13-ritual-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
.epoch-medieval .v13-atelier-grid{display:grid!important;grid-template-columns:minmax(0,37fr) minmax(0,63fr)!important}
.epoch-medieval .v13-atelier-piece{display:grid!important;grid-template-columns:minmax(0,43fr) minmax(0,57fr)!important}
.epoch-cyber .v6-nexus-scanner{grid-template-columns:minmax(0,2fr) minmax(0,3fr)!important}
.epoch-cyber .v7-cyber-data{grid-template-columns:minmax(0,2fr) minmax(0,3fr)!important}
.epoch-cyber .nexus-terminal-section{grid-template-columns:minmax(0,2fr) minmax(0,3fr)!important}
.epoch-cyber .v12-monitor-layout{grid-template-columns:minmax(0,45fr) minmax(0,55fr)!important;gap:clamp(20px,3vw,55px)!important}
.epoch-cyber .v12-monitor-layout>*{min-width:0!important;max-width:100%!important}
.epoch-cyber .v6-scan-face,.epoch-cyber .v7-cyber-data>div,.epoch-cyber .v12-monitor-wave{box-sizing:border-box!important;max-width:100%!important}
.epoch-cyber .nexus-console-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.epoch-cyber .nexus-console-grid>*{min-width:0}
.epoch-cyber .v11-message{opacity:clamp(0,calc((var(--v11) - .78)*8),1)!important}
.epoch-cyber .v11-noise{opacity:clamp(0,calc(1 - (var(--v11) - .76)*6),1)!important}
.story26-retro .v13-music-notes{z-index:20!important;overflow:visible}
.story26-retro.is-playing .v13-music-notes span{animation:v13-float-note 3.3s ease-in-out var(--delay) infinite!important}
@media(max-width:850px){
.epoch-stone .v13-ritual-steps{grid-template-columns:1fr!important}
.epoch-medieval .v13-atelier-grid{grid-template-columns:1fr!important}
.epoch-cyber .v6-nexus-scanner,.epoch-cyber .v7-cyber-data,.epoch-cyber .nexus-terminal-section,.epoch-cyber .v12-monitor-layout,.epoch-cyber .nexus-console-grid{grid-template-columns:1fr!important}
}

/* V15: eliminate overflow rather than compressing columns into each other */
.epoch-cyber .v6-nexus-scanner,
.epoch-cyber .nexus-console-grid,
.epoch-cyber .v7-cyber-data,
.epoch-cyber .v12-monitor-layout,
.epoch-cyber .nexus-terminal-section,
.epoch-cyber .v11-cyber {
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(36px,5vw,96px)!important;
  align-items:center;
}
.epoch-cyber .v6-nexus-scanner>*,
.epoch-cyber .nexus-console-grid>*,
.epoch-cyber .v7-cyber-data>*,
.epoch-cyber .v12-monitor-layout>*,
.epoch-cyber .nexus-terminal-section>*,
.epoch-cyber .v11-cyber>*{min-width:0!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important}
.epoch-cyber .v6-nexus-scanner h2,
.epoch-cyber .nexus-console-grid h2,
.epoch-cyber .v12-monitor-layout h2,
.epoch-cyber .v7-cyber-data h2{
 font-size:clamp(28px,3.25vw,57px)!important;
 line-height:1.13!important;
 letter-spacing:-.04em!important;
 overflow-wrap:anywhere!important;
 max-width:100%!important;
}
.epoch-cyber .nexus-console-grid h2{font-size:clamp(30px,3.45vw,62px)!important}
.epoch-cyber .v6-nexus-scanner h2{font-size:clamp(30px,3.5vw,62px)!important}
.epoch-cyber .v12-monitor-layout h2{font-size:clamp(29px,3.3vw,60px)!important}
.epoch-cyber .v6-scan-face,.epoch-cyber .nexus-hologram,
.epoch-cyber .v12-monitor-wave,.epoch-cyber .v7-data-network{
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin-inline:0!important;
 transform:none!important;
}
.epoch-cyber .v6-scan-face{min-height:420px}
.epoch-cyber .nexus-console-grid .cyber-about-prop{max-width:100%!important}
.epoch-cyber .v11-cyber{
  min-height:220svh!important;
  align-items:start!important;
  padding-top:0!important;
  padding-bottom:0!important;
  overflow:visible!important;
}
.epoch-cyber .v11-cyber>div{
  position:sticky!important;
  top:clamp(85px,16vh,180px)!important;
  margin-top:0!important;
  align-self:start!important;
}
.epoch-cyber .v11-cyber h2{font-size:clamp(27px,3vw,49px)!important}
.epoch-cyber .v11-cyber .v11-decrypt{height:clamp(330px,52vh,480px)!important}
.epoch-cyber .v11-cyber .v11-message{opacity:clamp(0,calc((var(--v11) - .70)*7),1)!important}
.epoch-cyber .v11-cyber .v11-noise{opacity:clamp(0,calc((.85 - var(--v11))*7),1)!important}
/* Prehistoric ritual: large tactile pictograms, stepped stone slabs, clear rhythm. */
.epoch-stone .v13-stone-ritual{background:linear-gradient(150deg,#d9ba89,#ad8255)!important}
.epoch-stone .v13-ritual-steps{gap:clamp(16px,2.5vw,42px)!important;align-items:stretch!important;margin:80px 0!important}
.epoch-stone .v13-ritual-steps article{
 min-height:440px!important;clip-path:none!important;transform:none!important;
 border:2px solid #eacb98!important;border-radius:120px 120px 14px 14px!important;
 padding:42px clamp(20px,3vw,45px)!important;
 display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
 box-shadow:inset 0 0 0 10px #ffffff10,0 24px 38px #452b2038;
 background:linear-gradient(155deg,#745239,#3e291c)!important;
 position:relative;overflow:hidden;
}
.epoch-stone .v13-ritual-steps article:nth-child(2){background:linear-gradient(155deg,#986b45,#51351e)!important}
.epoch-stone .v13-ritual-steps article:nth-child(3){background:linear-gradient(155deg,#65452e,#281d15)!important}
.epoch-stone .v13-ritual-steps article>span{
 position:absolute;top:52px;left:0;right:0;text-align:center;
 font-size:clamp(90px,11vw,175px)!important;line-height:1!important;
 color:#ffdb9f;filter:drop-shadow(0 10px 12px #0005);
 transition:transform .5s ease;
}
.epoch-stone .v13-ritual-steps article:hover>span{transform:translateY(-12px) rotate(-8deg)}
.epoch-stone .v13-ritual-steps article b{font:900 clamp(23px,2.3vw,36px) Georgia,serif!important;letter-spacing:.02em!important}
.epoch-stone .v13-ritual-steps article p{font-size:16px!important;line-height:1.7!important;max-width:260px}
/* 2026: the anomaly is a dedicated, legible interactive card. */
.epoch-present .v15-present-anomaly{background:#dce7db;color:#254634;padding:75px max(5vw,calc((100vw - 1360px)/2)) 110px;display:block!important}
.v15-anomaly-meta{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #7d9b87;font-size:11px;letter-spacing:.2em;font-weight:800}
.v15-anomaly-content{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:8%;align-items:center;padding-top:75px}
.v15-anomaly-content h2{font:400 clamp(44px,5.2vw,88px)/1.08 Inter,sans-serif!important;letter-spacing:-.07em;margin:30px 0}
.v15-anomaly-content p{font-size:19px;line-height:1.8;max-width:520px}
.epoch-present .v15-anomaly-button{display:flex!important;align-items:center;gap:16px;width:auto!important;height:auto!important;min-height:72px!important;padding:18px 25px!important;margin-top:36px!important;border:1px solid #2c5542!important;border-radius:60px!important;background:#2a513d!important;color:#eff9eb!important;box-shadow:none!important;transform:none!important;cursor:pointer}
.epoch-present .v15-anomaly-button>span{font-size:30px;line-height:1}.epoch-present .v15-anomaly-button>b{font-size:12px;letter-spacing:.1em}
.epoch-present .v15-anomaly-button:hover{background:#173729!important;transform:translateY(-3px)!important}
.v15-anomaly-art{position:relative;aspect-ratio:1;background:radial-gradient(circle at 50% 48%,#f2f7df,#b5cdb7 65%,#83ab91);border-radius:50% 50% 43% 57%;display:grid;place-items:center;overflow:hidden}
.v15-anomaly-halo{position:absolute;inset:13%;border:1px dashed #4c8d65;border-radius:50%;animation:v15-rotate 24s linear infinite}
.v15-anomaly-leaf{font-size:clamp(150px,18vw,290px);color:#396d49;text-shadow:0 0 30px #d1ffab;animation:v15-float 5s ease-in-out infinite}
.v15-anomaly-art>span{position:absolute;bottom:10%;font:700 11px monospace;letter-spacing:.13em}
@keyframes v15-rotate{to{transform:rotate(360deg)}}
@keyframes v15-float{50%{transform:translateY(-22px) rotate(12deg)}}
@media(max-width:900px){
 .epoch-cyber .v6-nexus-scanner,.epoch-cyber .nexus-console-grid,.epoch-cyber .v7-cyber-data,.epoch-cyber .v12-monitor-layout,.epoch-cyber .nexus-terminal-section,.epoch-cyber .v11-cyber{grid-template-columns:minmax(0,1fr)!important;row-gap:32px!important}
 .epoch-cyber .v11-cyber{min-height:200svh!important}
 .epoch-cyber .v11-cyber>div{position:sticky!important;top:80px!important}
 .epoch-stone .v13-ritual-steps{grid-template-columns:1fr!important}
 .epoch-stone .v13-ritual-steps article{min-height:340px!important;border-radius:100px 100px 12px 12px!important}
 .v15-anomaly-content{grid-template-columns:1fr}.v15-anomaly-art{width:min(100%,450px);margin:auto}
}
@media(prefers-reduced-motion:reduce){.v15-anomaly-halo,.v15-anomaly-leaf{animation:none}}

/* V16 — bespoke navigation, botanical anomaly and responsive foundation */
header .shell{display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,36px);width:min(1500px,94vw);max-width:100%;min-width:0}
header .logo{flex:0 1 auto;min-width:0;white-space:nowrap}
header .links{display:flex;align-items:center;gap:clamp(8px,1.6vw,30px);min-width:0}
header .links a{white-space:nowrap;font-size:clamp(10px,.85vw,14px);transition:background .2s,color .2s,transform .2s}
header .era-picker{flex-shrink:0;min-width:0}
.v16-menu-toggle{display:none;align-items:center;gap:10px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;padding:12px 16px;font:800 12px Inter,sans-serif;letter-spacing:.1em}
.v16-menu-symbol{font-size:21px;line-height:1}
html[data-theme="stone"] header{background:#352416!important;border-bottom:7px solid #a47d50!important;box-shadow:0 7px 0 #1c140e}
html[data-theme="stone"] header .logo{font:900 24px Georgia,serif;letter-spacing:-.05em}
html[data-theme="stone"] header .links a{font-family:Georgia,serif;font-weight:900;letter-spacing:.06em;border-radius:4px 15px 4px 12px;padding:10px 8px}
html[data-theme="stone"] header .links a:hover{background:#ab8251;color:#25180e;transform:rotate(-3deg)}
html[data-theme="medieval"] header{background:#e5d4ac!important;border-bottom:3px double #6e4b24!important;box-shadow:0 4px 0 #c9ac79}
html[data-theme="medieval"] header .logo{font:700 23px Georgia,serif}
html[data-theme="medieval"] header .links a{font-family:Georgia,serif;text-transform:none;letter-spacing:.02em;padding:9px 5px;border-bottom:1px solid transparent}
html[data-theme="medieval"] header .links a:hover{border-bottom-color:#704521;transform:translateY(-2px)}
html[data-theme="retro"] header{background:#26043e!important;border-bottom:4px solid #ff36a6!important;box-shadow:0 4px 0 #16f9e6}
html[data-theme="retro"] header .logo{font:900 20px Oxanium,sans-serif}
html[data-theme="retro"] header .links a{font:700 11px Oxanium,sans-serif;text-shadow:2px 2px 0 #ff3698;padding:9px 6px}
html[data-theme="retro"] header .links a:hover{background:#ffde3c;color:#25073e;text-shadow:2px 2px 0 #1af5ed;transform:skew(-8deg)}
html[data-theme="present"] header{border-bottom:1px solid #b6c8b7!important;box-shadow:none}
html[data-theme="present"] header .logo{font:500 27px Inter,sans-serif;letter-spacing:-.08em}
html[data-theme="present"] header .links a{font:600 12px Inter,sans-serif;letter-spacing:-.02em;padding:10px 3px}
html[data-theme="present"] header .links a:hover{color:#50785c;transform:translateY(-3px)}
html[data-theme="cyber"] header{background:#02121c!important;border-bottom:1px solid #03e5da!important;box-shadow:0 0 20px #03e5da24}
html[data-theme="cyber"] header .logo{font:900 19px Oxanium,sans-serif}
html[data-theme="cyber"] header .links a{font:700 10px Oxanium,sans-serif;letter-spacing:.04em;padding:10px 6px;border:1px solid transparent}
html[data-theme="cyber"] header .links a:hover{border-color:#04e9db;background:#03e5da1c;text-shadow:0 0 12px #04e9db}
.v16-present-anomaly{background:#f0f2e9!important;color:#233d30!important;padding:65px max(5vw,calc((100vw - 1360px)/2)) 100px!important;overflow:hidden}
.v16-specimen-meta{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #a6b9a5;padding-bottom:20px;font:700 11px Inter,sans-serif;letter-spacing:.16em}
.v16-specimen-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,90px);align-items:center;padding-top:65px}
.v16-specimen-copy{min-width:0}
.v16-specimen-eyebrow{font:700 11px Inter,sans-serif;letter-spacing:.13em;color:#6a846d}
.epoch-present .v16-specimen-copy h2{font:500 clamp(43px,5vw,82px)/1.09 Inter,sans-serif!important;letter-spacing:-.075em;margin:32px 0!important;color:#263e31}
.v16-specimen-copy h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.05em;color:#648b67}
.v16-specimen-copy p{max-width:500px;font-size:clamp(16px,1.3vw,19px);line-height:1.8}
.epoch-present .v16-specimen-button{display:inline-flex!important;align-items:center;gap:16px;width:auto!important;min-height:58px!important;margin:25px 0 35px!important;padding:15px 23px!important;background:#244834!important;color:#f6f8ee!important;border:0!important;border-radius:3px!important;font:700 12px Inter,sans-serif;letter-spacing:.12em;cursor:pointer;transform:none!important;box-shadow:none!important}
.epoch-present .v16-specimen-button:hover{background:#446e50!important}
.v16-specimen-button span{font-size:24px}
.v16-specimen-index{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #b9c9b5;padding-top:16px;font:700 10px Inter,sans-serif;letter-spacing:.08em;color:#6c846d}
.v16-specimen-visual{height:clamp(390px,40vw,590px);position:relative;overflow:hidden;background:radial-gradient(ellipse at 52% 65%,#dce8cf,#b9ceb5 65%,#9eb89e);border-radius:48% 48% 4px 4px;isolation:isolate}
.v16-specimen-circle{position:absolute;left:50%;top:47%;width:65%;aspect-ratio:1;border:1px solid #618a6d80;border-radius:50%;transform:translate(-50%,-50%)}
.v16-specimen-circle.circle-b{width:84%;border-style:dashed;animation:v15-rotate 50s linear infinite;transform-origin:center}
.v16-specimen-stem{position:absolute;left:50%;bottom:12%;height:66%;width:7px;border-radius:100% 0 0 0;background:#325b3e;transform:rotate(-7deg);transform-origin:bottom}
.v16-specimen-stem i{position:absolute;display:block;bottom:var(--y);left:0;width:clamp(55px,7vw,115px);height:clamp(25px,4vw,58px);background:linear-gradient(125deg,#39694b,#83a877);border-radius:100% 0 100% 0;transform-origin:0 100%;transform:rotate(var(--angle));box-shadow:inset 10px -4px 14px #264a3850}
.v16-specimen-stem i:nth-child(1){--y:12%;--angle:-25deg}
.v16-specimen-stem i:nth-child(2){--y:30%;--angle:195deg}
.v16-specimen-stem i:nth-child(3){--y:49%;--angle:-28deg}
.v16-specimen-stem i:nth-child(4){--y:68%;--angle:190deg}
.v16-specimen-stem i:nth-child(5){--y:85%;--angle:-55deg}
.v16-specimen-base{position:absolute;bottom:8%;left:33%;width:36%;height:2px;background:#527b5d;box-shadow:0 0 0 1px #a1bfa5}
.v16-specimen-coordinates{position:absolute;left:20px;bottom:20px;font:700 10px monospace;color:#335941}
.v16-specimen-side-label{position:absolute;right:17px;top:28px;writing-mode:vertical-rl;font:700 10px Inter,sans-serif;letter-spacing:.25em;color:#557b60}
.v16-anomaly-close{position:fixed;z-index:100000;right:clamp(16px,3vw,50px);top:clamp(16px,3vw,50px);width:54px;height:54px;border:1px solid #3df7de;border-radius:50%;background:#031d27;color:#d7fff7;font:400 34px/1 Inter,sans-serif;cursor:pointer;display:none;place-items:center;box-shadow:0 0 25px #00f5dc44}
#timelineError.open .v16-anomaly-close{display:grid}
.v16-anomaly-close:hover,.v16-anomaly-close:focus-visible{background:#08dfd0;color:#001b23;outline:2px solid #fff;outline-offset:3px}
html[data-theme="stone"] .v16-anomaly-close{border-color:#d4a26c;background:#302017;color:#ffe0b1}
html[data-theme="present"] .v16-anomaly-close{border-color:#557e61;background:#e5f0df;color:#20462e}
@media(max-width:1200px){
 header .shell{width:min(100%,96vw);gap:12px}
 header .links{gap:8px}
 header .links a{font-size:10px!important}
 header .logo{font-size:clamp(15px,2vw,22px)!important}
}
@media(max-width:1050px){
 header .shell{display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand toggle" "picker picker";padding:12px 0;position:relative;align-items:center}
 header .logo{grid-area:brand}
 .v16-menu-toggle{grid-area:toggle;display:flex}
 header .era-picker{grid-area:picker;display:flex;max-width:100%;width:100%;justify-content:center;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
 header .links{display:none!important;position:absolute;z-index:1000;top:calc(100% + 5px);left:0;right:0;background:var(--v16-menu-bg,#202020);border:1px solid currentColor;padding:16px;flex-direction:column;align-items:stretch;box-shadow:0 15px 35px #0004}
 header .links.v16-open{display:flex!important}
 header .links a{display:block;padding:15px!important;font-size:13px!important;text-align:left}
 html[data-theme="stone"] header{--v16-menu-bg:#352416}
 html[data-theme="medieval"] header{--v16-menu-bg:#e5d4ac}
 html[data-theme="retro"] header{--v16-menu-bg:#26043e}
 html[data-theme="present"] header{--v16-menu-bg:#f8f7f1}
 html[data-theme="cyber"] header{--v16-menu-bg:#02121c}
 .v16-specimen-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:25px}
 .epoch-present .v16-specimen-copy h2{font-size:clamp(37px,5vw,60px)!important}
}
@media(max-width:700px){
 header .shell{width:94vw}
 header .era-picker{justify-content:flex-start}
 header .era-option{flex:0 0 auto}
 .v16-specimen-layout{grid-template-columns:1fr;gap:32px}
 .v16-specimen-visual{width:min(100%,500px);margin:auto;height:clamp(360px,85vw,520px)}
 .v16-specimen-meta{font-size:9px;flex-wrap:wrap}
 .epoch-present .v16-specimen-copy h2{font-size:clamp(38px,10vw,65px)!important}
 .epoch h1,.epoch h2,.epoch h3{max-width:100%;overflow-wrap:break-word}
 .epoch section{max-width:100%;box-sizing:border-box}
 .epoch img,.epoch video,.epoch svg{max-width:100%}
 #contact .contact-grid{width:90vw!important;grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:420px){
 header .logo{font-size:15px!important}
 .v16-menu-toggle{padding:9px 11px;font-size:10px}
 .epoch-present .v16-specimen-copy h2{font-size:37px!important}
 .v16-specimen-visual{height:350px}
}
@media(prefers-reduced-motion:reduce){.v16-specimen-circle{animation:none!important}}

/* V17 — 1805 engraved brass navigation */
html[data-theme="medieval"] header{background:#231c18!important;color:#e9d3a3!important;border:0!important;border-bottom:1px solid #a57c46!important;box-shadow:0 6px 0 #ae874c,0 8px 24px #0005!important}
html[data-theme="medieval"] header .shell{border-inline:1px solid #a57c4655;padding-inline:clamp(8px,2vw,28px)}
html[data-theme="medieval"] header .logo{font:700 clamp(16px,1.8vw,25px) Georgia,serif!important;color:#f4dfb7!important;letter-spacing:.07em!important;text-shadow:0 2px 0 #000}
html[data-theme="medieval"] header .links{gap:clamp(4px,1vw,18px)!important}
html[data-theme="medieval"] header .links a{position:relative;color:#e5c795!important;font:700 clamp(10px,.83vw,12px) Georgia,serif!important;letter-spacing:.09em!important;text-transform:uppercase!important;padding:12px 9px!important;border:1px solid transparent!important;transition:all .2s ease}
html[data-theme="medieval"] header .links a:before{content:"✦";display:inline-block;margin-right:8px;color:#bd985b;font-size:8px;vertical-align:2px}
html[data-theme="medieval"] header .links a:hover{background:#b58c4d!important;color:#211813!important;border-color:#e9c88a!important;transform:translateY(-2px)}
html[data-theme="medieval"] header .links a:hover:before{color:#2b1a0f}
html[data-theme="medieval"] .v16-menu-toggle{color:#e9d3a3!important;border:1px solid #a57c46!important;background:#39291d!important;font-family:Georgia,serif!important}
@media(max-width:1050px){html[data-theme="medieval"] header{--v16-menu-bg:#231c18!important}html[data-theme="medieval"] header .links{background:#231c18!important;border-color:#a57c46!important}}
/* V17 — gallery-quality contemporary anomaly */
html[data-theme="present"] .v17-anomaly{background:#f7f5ee!important;padding:clamp(55px,7vw,115px) max(5vw,calc((100vw - 1320px)/2)) clamp(60px,8vw,120px)!important;color:#253c2d!important}
.v17-anomaly-head,.v17-anomaly-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;font:700 10px Inter,sans-serif;letter-spacing:.16em;color:#627a64}
.v17-anomaly-head{padding-bottom:18px;border-bottom:1px solid #c6d0bf}
.v17-anomaly-foot{padding-top:18px;border-top:1px solid #c6d0bf}
.v17-anomaly-panel{display:grid;grid-template-columns:minmax(0,47fr) minmax(0,53fr);gap:clamp(28px,5vw,95px);align-items:center;padding:clamp(38px,5vw,75px) 0}
.v17-anomaly-illustration{position:relative;isolation:isolate;min-width:0;aspect-ratio:4/4.5;background:#d9dfce;overflow:hidden;border-radius:240px 240px 7px 7px}
.v17-anomaly-illustration:before{content:"";position:absolute;inset:17px;border:1px solid #a1b79b;border-radius:230px 230px 4px 4px;pointer-events:none}
.v17-arch{position:absolute;inset:12% 12% 10%;border-radius:50% 50% 0 0;border:1px solid #9eaf95;background:radial-gradient(circle at 55% 45%,#e5e9d8 0,#c2d1b6 68%,#afc3aa 100%)}
.v17-orbit{position:absolute;width:75%;aspect-ratio:1;top:23%;left:13%;border:1px dashed #72937680;border-radius:50%;animation:v17-rotate 65s linear infinite}
@keyframes v17-rotate{to{transform:rotate(360deg)}}
.v17-bloom{position:absolute;top:50%;left:50%;width:38%;aspect-ratio:1;transform:translate(-50%,-50%);filter:drop-shadow(0 12px 20px #52745236);animation:v17-breathe 5s ease-in-out infinite alternate}
@keyframes v17-breathe{to{transform:translate(-50%,-50%) scale(1.07) rotate(5deg)}}
.v17-petal{position:absolute;left:32%;top:-10%;width:36%;height:70%;background:linear-gradient(145deg,#759d75,#315f4b);border-radius:90% 5% 80% 5%;transform-origin:50% 85%;transform:rotate(var(--r));box-shadow:inset 5px 0 10px #e5f0df30}
.v17-petal.p1{--r:0deg}.v17-petal.p2{--r:60deg}.v17-petal.p3{--r:120deg}.v17-petal.p4{--r:180deg}.v17-petal.p5{--r:240deg}.v17-petal.p6{--r:300deg}
.v17-bloom-center{position:absolute;left:37%;top:37%;width:26%;aspect-ratio:1;border-radius:50%;background:#e7d3a5;box-shadow:0 0 0 5px #456f57}
.v17-plate-tag{position:absolute;bottom:26px;left:35px;color:#527358;font:700 10px Inter,sans-serif;letter-spacing:.13em}
.v17-anomaly-copy{min-width:0}
.v17-anomaly-kicker{display:flex;align-items:center;gap:10px;font:700 11px Inter,sans-serif;letter-spacing:.11em;color:#607963}
.v17-anomaly-kicker i{width:9px;height:9px;border-radius:50%;background:#c08b5c;box-shadow:0 0 0 5px #c08b5c24}
html[data-theme="present"] .v17-anomaly-copy h2{font:500 clamp(44px,5.4vw,87px)/1.08 Inter,sans-serif!important;letter-spacing:-.07em!important;color:#203d2e!important;margin:27px 0!important;overflow-wrap:normal!important}
.v17-anomaly-copy h2 em{font-family:Georgia,serif;font-weight:400;color:#7b966e;letter-spacing:-.06em}
.v17-anomaly-copy p{font:400 clamp(15px,1.3vw,19px)/1.8 Inter,sans-serif;max-width:490px;color:#516657}
.v17-anomaly-rule{display:flex;justify-content:space-between;gap:20px;max-width:450px;border-top:1px solid #b8c7b5;padding-top:18px;margin-top:30px;font:700 11px Inter,sans-serif;letter-spacing:.09em}
.v17-anomaly-rule strong{color:#aa7148}
html[data-theme="present"] .v17-anomaly-action{display:flex!important;align-items:center;justify-content:space-between;gap:24px;margin-top:35px!important;padding:17px 21px!important;background:#244534!important;border:0!important;border-radius:3px!important;box-shadow:none!important;color:#f7f5ee!important;min-height:58px!important;width:auto!important;font:700 11px Inter,sans-serif!important;letter-spacing:.1em;cursor:pointer}
html[data-theme="present"] .v17-anomaly-action:hover{background:#416a4a!important;transform:translateY(-2px)!important}
.v17-anomaly-action span{font-size:21px}
@media(max-width:800px){.v17-anomaly-panel{grid-template-columns:1fr;gap:30px}.v17-anomaly-illustration{width:min(100%,480px);margin:auto;aspect-ratio:1/1.08}.v17-anomaly-copy{max-width:580px}.v17-anomaly-copy h2{font-size:clamp(44px,9vw,72px)!important}}
@media(max-width:420px){.v17-anomaly-illustration{aspect-ratio:1/1.1}.v17-plate-tag{left:20px;bottom:18px;font-size:8px}.v17-anomaly-head,.v17-anomaly-foot{font-size:9px}html[data-theme="present"] .v17-anomaly-copy h2{font-size:42px!important}}
/* V17 — close control lives in the actual popup panel */
#timelineError.open .error-content{position:relative}
#timelineError .v17-anomaly-close{position:absolute!important;display:flex!important;align-items:center!important;justify-content:center!important;top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;z-index:2147483647!important;width:44px!important;height:44px!important;padding:0!important;background:#16202a!important;border:1px solid #5bf5ee!important;border-radius:50%!important;color:#fff!important;font:400 30px/1 Arial,sans-serif!important;box-shadow:0 0 20px #00ffff50!important;cursor:pointer!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
#timelineError .v17-anomaly-close:hover{background:#09b7b6!important;color:#001a1c!important}
#timelineError .error-content{box-sizing:border-box;max-height:calc(100dvh - 36px);overflow-y:auto}
@media(max-width:650px){#timelineError .error-content{padding:58px 20px 28px!important;width:min(96vw,720px)!important}#timelineError .error-content h2{font-size:clamp(75px,20vw,120px)!important}}
@media(prefers-reduced-motion:reduce){.v17-orbit,.v17-bloom{animation:none!important}}

/* V18 — the ACTUAL contemporary anomaly popup is .present-growth.
   Keep its dismiss button inside the curved panel, above decorations. */
.present-growth .growth-garden{isolation:isolate}
.present-growth .growth-garden>.growth-close{
 position:absolute!important;top:clamp(68px,8vw,90px)!important;right:clamp(68px,8vw,95px)!important;
 z-index:100!important;display:flex!important;align-items:center!important;justify-content:center!important;
 width:52px!important;height:52px!important;padding:0!important;margin:0!important;
 border:2px solid #294d39!important;border-radius:50%!important;
 background:#294d39!important;color:#fff!important;
 font:400 35px/1 Arial,sans-serif!important;cursor:pointer!important;
 visibility:visible!important;opacity:1!important;pointer-events:auto!important;
 box-shadow:0 5px 18px #183d2c33!important;transition:transform .2s,background .2s!important
}
.present-growth .growth-garden>.growth-close:hover{transform:scale(1.08)!important;background:#456e51!important}
.present-growth .growth-garden>.growth-close:focus-visible{outline:3px solid #345e42!important;outline-offset:4px!important}
@media(max-width:700px){
 .present-growth .growth-garden>.growth-close{top:15px!important;right:15px!important;width:46px!important;height:46px!important}
}

/* Vállalatok — responsive corrections */
html{scroll-padding-top:110px}
body{overflow-x:clip}
.epoch,.epoch section,.epoch-hero{max-width:100%;min-width:0}
.epoch img,.epoch video,.epoch svg{max-width:100%}
.epoch img{height:auto}
header{z-index:1002}
header .shell,header .links{min-width:0}
header .links a:focus-visible,.v16-menu-toggle:focus-visible,.era-option:focus-visible{outline:3px solid currentColor;outline-offset:3px}
@media(max-width:1050px){
 header .shell{position:relative}
 header .links.v16-open{max-height:min(65dvh,520px);overflow-y:auto;overscroll-behavior:contain}
 header .era-picker{justify-content:flex-start;gap:6px;-webkit-overflow-scrolling:touch}
 header .era-option{flex:0 0 auto}
}
@media(max-width:768px){
 .epoch-hero-inner{width:100%;max-width:100%;padding-inline:clamp(16px,5vw,36px);box-sizing:border-box}
 .epoch-hero h1,.epoch-hero h2{overflow-wrap:anywhere}
 .epoch section{box-sizing:border-box}
 .epoch :is(.v7-scene,.v13-atelier-grid,.verdant-editorial,.brass-ledger,.v17-anomaly-panel){min-width:0;max-width:100%}
 .epoch :is(.v13-atelier-grid,.verdant-editorial,.brass-ledger){grid-template-columns:minmax(0,1fr)}
 .epoch :is(h1,h2,h3,p){max-width:100%}
 .epoch :is(.v13-atelier-grid,.v7-scene,.verdant-editorial) > *{min-width:0}
 .epoch .epoch-button{max-width:100%;white-space:normal}
}
@media(max-width:480px){
 header .shell{padding-inline:12px}
 header .logo{min-width:0}
 header .era-picker{padding-bottom:4px}
 .epoch-hero-inner{padding-inline:18px}
 .epoch-hero h1{font-size:clamp(32px,11vw,62px)}
 .epoch-hero h2{font-size:clamp(25px,7.5vw,46px)}
}

/* V19 — era switcher replaces all era-specific navigation */
header .shell{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap;gap:clamp(8px,1.5vw,22px);width:min(1500px,calc(100% - 32px))!important;height:auto!important;min-height:78px;padding:10px 0!important}
header .back-to-studio{flex:0 0 auto;grid-area:auto!important}
header .logo{flex:0 1 auto;grid-area:auto!important}
header .era-picker{grid-area:auto!important;display:flex!important;flex:0 1 auto;justify-content:flex-end;align-items:center;gap:5px;min-width:0;max-width:100%;width:auto!important;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
header .era-option{flex:0 0 auto;min-width:0}
@media(max-width:1100px){
 header .shell{display:grid!important;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"back brand" "picker picker"!important;gap:10px 16px;min-height:0}
 header .back-to-studio{grid-area:back!important;justify-self:start}
 header .logo{grid-area:brand!important;justify-self:end;max-width:100%}
 header .era-picker{grid-area:picker!important;justify-content:flex-start!important;width:100%!important;max-width:100%;padding:2px 0 6px}
}
@media(max-width:600px){
 header .shell{width:calc(100% - 24px)!important;padding:8px 0!important;gap:8px}
 header .back-to-studio{font-size:9px;padding:8px!important}
 header .logo{font-size:clamp(12px,3.7vw,18px)!important;overflow:hidden;text-overflow:ellipsis}
 header .logo span{font-size:clamp(9px,2.5vw,12px);letter-spacing:.04em}
 header .era-picker{gap:6px;scroll-snap-type:x proximity}
 header .era-option{scroll-snap-align:center}
}


/* V20 — új korszakváltó: öt azonos méretű, jól érinthető korszak-kártya */
header .shell {
  width: min(1420px, calc(100% - 64px)) !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(130px,1fr) auto minmax(130px,1fr) !important;
  grid-template-areas: "back picker brand" !important;
  align-items: center !important;
  gap: clamp(14px,2vw,34px) !important;
  padding: 15px 0 !important;
}
header .back-to-studio {grid-area:back!important;grid-column:auto!important;justify-self:start!important}
header .logo {grid-area:brand!important;justify-self:end!important;margin:0!important}
header .era-picker {
  grid-area:picker!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:5px!important;
  width:min(650px,52vw)!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:6px!important;
  overflow:visible!important;
  border-radius:16px!important;
  background:rgba(9,6,18,.82)!important;
  border:1px solid rgba(255,255,255,.17)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(12px);
}
header .era-option {
  display:flex!important;flex-direction:column;align-items:center;justify-content:center;
  width:100%!important;min-width:0!important;min-height:54px!important;
  padding:9px 5px!important;border-radius:11px!important;
  text-align:center!important;white-space:nowrap!important;
  transition:background .2s,box-shadow .2s,transform .2s!important;
}
header .era-option b {font-size:clamp(8px,.75vw,11px)!important;letter-spacing:.03em!important;line-height:1.35!important}
header .era-option small {font-size:clamp(7px,.6vw,9px)!important;line-height:1.2!important;white-space:nowrap!important}
header .era-option.active {transform:none!important}
header .era-option:focus-visible {outline:2px solid #ff42ae!important;outline-offset:2px}
@media(max-width:1100px) {
 header .shell {
   grid-template-columns:1fr auto!important;
   grid-template-areas:"back brand" "picker picker"!important;
   row-gap:12px!important;
 }
 header .era-picker {justify-self:center!important;width:min(100%,720px)!important}
 header .era-option b {font-size:10px!important}
 header .era-option small {font-size:9px!important}
}
@media(max-width:600px) {
 header .shell {width:calc(100% - 28px)!important;gap:10px!important;padding:12px 0!important}
 header .back-to-studio {font-size:10px!important;padding:10px 11px!important}
 header .logo {max-width:100%!important}
 header .era-picker {
   width:100%!important;gap:4px!important;padding:5px!important;
   border-radius:13px!important;overflow:visible!important;
 }
 header .era-option {min-height:58px!important;padding:8px 2px!important;border-radius:9px!important}
 header .era-option b {font-size:clamp(7px,2.05vw,10px)!important;letter-spacing:0!important}
 header .era-option small {font-size:clamp(6px,1.8vw,9px)!important;letter-spacing:-.025em!important}
}
@media(max-width:360px) {
 header .shell {width:calc(100% - 18px)!important}
 header .era-picker {gap:2px!important;padding:4px!important}
 header .era-option {padding:7px 1px!important}
 header .era-option b {font-size:7px!important}
 header .era-option small {font-size:6px!important}
}
@media(prefers-reduced-motion:reduce) {
 header .era-option {transition:none!important}
}

/* Korszakváltás közben a fejléc teljesen eltűnik, az animáció zavartalan. */
body.locked > header, body.locked header { visibility:hidden !important; opacity:0 !important; pointer-events:none !important; }

/* Mobile: no scroll-pinned chapters on any of the five company eras */
.grecaptcha-badge{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.fk-recaptcha-disclosure{font-size:11px!important;line-height:1.6;opacity:.8;margin:12px 0}
.fk-recaptcha-disclosure a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:767px){
 .scrub-story,.story26,.v12-stone-passage,.v13-hunt-story,.v13-hunt-pin,.v12-stone-passage,.v11-cyber,.v13-hunt-story{height:auto!important;min-height:0!important;--progress:1!important;--done:1!important;--q:1!important;--hunt:1!important;--v11:1!important}
 .scrub-sticky,.story26-pin,.v12-stone-sticky,.v13-hunt-pin{position:relative!important;top:auto!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;transform:none!important}
 .scrub-sticky{padding:45px 0!important;display:block!important}
 .story26-pin{padding-block:55px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:18px!important}
 .story26-visual{max-height:none!important;min-height:240px}
 .v12-stone-sticky{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important}
 .v13-hunt-pin{display:block!important;padding:45px 5%!important}
}

/* FK / 2026-10-14: themed reCAPTCHA disclosure for every company era. */
#contact .fk-recaptcha-disclosure{position:relative;display:block;box-sizing:border-box;width:100%;max-width:100%;padding:13px 15px!important;margin:20px 0 0!important;opacity:1!important;font-size:11px!important;line-height:1.75!important;overflow-wrap:anywhere;border:1px solid transparent}
#contact .fk-recaptcha-era-label{display:block;margin-bottom:5px;font-weight:800;font-size:10px;letter-spacing:.12em}
#contact .fk-recaptcha-disclosure a{color:inherit!important;text-decoration:underline;text-underline-offset:3px;font-weight:700}
html[data-theme="stone"] #contact .fk-recaptcha-disclosure{background:#30261dcc;color:#f0d7ae;border-color:#bda074;border-radius:5px;font-family:Georgia,serif}
html[data-theme="stone"] #contact .fk-recaptcha-era-label:before{content:"A TÖRZS VÉDELME / BIZTONSÁGOS ÜZENET"}
html[data-theme="medieval"] #contact .fk-recaptcha-disclosure{background:#e7d4aeed;color:#4b3323;border:2px double #98734c;border-radius:2px;font-family:Georgia,serif}
html[data-theme="medieval"] #contact .fk-recaptcha-era-label:before{content:"UDVARI PECSÉT / ÜZENETVÉDELEM"}
html[data-theme="retro"] #contact .fk-recaptcha-disclosure{background:#240d44e8;color:#ffe5fa;border:1px solid #ff6fd3;box-shadow:3px 3px 0 #16dfdd;font-family:Oxanium,sans-serif}
html[data-theme="retro"] #contact .fk-recaptcha-era-label:before{content:"NEONWAVE / VÉDETT CSATORNA"}
html[data-theme="present"] #contact .fk-recaptcha-disclosure{background:#eef2e7f2;color:#25422f;border:1px solid #8aa893;border-radius:12px;font-family:Inter,sans-serif}
html[data-theme="present"] #contact .fk-recaptcha-era-label:before{content:"VERDANT / ADATVÉDELEM"}
html[data-theme="cyber"] #contact .fk-recaptcha-disclosure{background:#061924e8;color:#a8fff2;border:1px solid #26dcca;box-shadow:inset 3px 0 0 #ff4caf;font-family:Oxanium,sans-serif}
html[data-theme="cyber"] #contact .fk-recaptcha-era-label:before{content:"NEXUS-9 / TITKOSÍTOTT CSATORNA"}
/* Mobile: remove legacy 200svh pinned decrypt section and overlapping typography. */
@media(max-width:900px){
 .epoch-cyber .v11-cyber{position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important;gap:26px!important;padding:72px 5% 90px!important;--v11:1!important}
 .epoch-cyber .v11-cyber>div{position:relative!important;top:auto!important;bottom:auto!important;inset-inline:auto!important;transform:none!important;margin:0!important;align-self:stretch!important;width:100%!important;max-width:100%!important;min-width:0!important}
 .epoch-cyber .v11-cyber h2{font-size:clamp(28px,8vw,48px)!important;line-height:1.12!important;overflow-wrap:break-word!important}
 .epoch-cyber .v11-cyber p{font-size:clamp(15px,4vw,19px)!important;line-height:1.6!important}
 .epoch-cyber .v11-cyber .v11-decrypt{position:relative!important;height:clamp(260px,50svh,420px)!important;min-height:260px!important;display:grid!important;place-items:center!important;overflow:hidden!important}
 .epoch-cyber .v11-cyber .v11-message{position:relative!important;inset:auto!important;opacity:1!important;transform:none!important;font-size:clamp(21px,5.2vw,36px)!important;padding:12px!important;line-height:1.3!important}
 .epoch-cyber .v11-cyber .v11-noise{opacity:0!important;pointer-events:none!important}
}

/* FK mobile era: decoded signal must flow in the document, never overlay previous section. */
@media(max-width:900px){
 .epoch-cyber .v11-cyber{height:auto!important;min-height:0!important;overflow:visible!important;display:flex!important;flex-direction:column!important;gap:24px!important}
 .epoch-cyber .v11-cyber .v11-decrypt{position:relative!important;inset:auto!important;transform:none!important;min-height:280px!important;overflow:hidden!important}
 .epoch-cyber .v11-cyber .v11-message{position:relative!important;inset:auto!important;transform:none!important;line-height:1.4!important}
}

/* Vállalatok – reCAPTCHA tájékoztató javítása */

.fk-recaptcha-explain a{
	border: 0 !important;
	padding: 0 !important;
}