/*
Theme Name: Peti CAD Engineering
Theme URI: https://kuslitspeter.hu/
Author: Kuslits Péter
Description: Egyoldalas, filmszerű, reszponzív mérnöki portfóliótéma.
Version: 0.3.0
Text Domain: peticad
*/

:root{
  --bg:#0a0f12; --bg2:#11171b; --ink:#f1f3f4; --muted:#aab1b5;
  --bronze:#c58a3b; --bronze2:#dfa65d; --line:rgba(255,255,255,.17);
  --max:1480px; --header:70px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;background:var(--bg)} body{margin:0;background:var(--bg);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;overflow-x:hidden} a{color:inherit;text-decoration:none} img{max-width:100%}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.08;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,transparent 1px 4px),repeating-linear-gradient(-45deg,rgba(0,0,0,.15) 0 1px,transparent 1px 5px);mix-blend-mode:soft-light}.pc-shell{width:min(calc(100% - 80px),var(--max));margin:auto;position:relative;z-index:4}

.pc-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header);background:linear-gradient(180deg,rgba(5,8,10,.94),rgba(5,8,10,.72),transparent);backdrop-filter:blur(8px)}.pc-header__inner{width:min(calc(100% - 80px),var(--max));height:100%;margin:auto;display:flex;align-items:center;gap:20px}.pc-brand{display:block;min-width:max-content}.pc-brand b{display:block;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-stretch:condensed;font-size:1.7rem;line-height:.9;letter-spacing:.025em}.pc-brand span{display:block;margin-top:5px;font-size:.58rem;letter-spacing:.34em;color:#c9ced1}.pc-header__motto{border-left:1px solid rgba(255,255,255,.28);padding-left:17px;font-size:.6rem;line-height:1.35;letter-spacing:.18em;color:#b5bdc1}.pc-contact-link{margin-left:auto;border:1px solid rgba(197,138,59,.8);padding:10px 17px;font-size:.66rem;letter-spacing:.14em;font-weight:700;transition:.2s}.pc-contact-link:hover{background:var(--bronze);color:#101214}.pc-contact-link i{font-style:normal;margin-left:7px}.pc-progress{position:fixed;right:24px;top:70px;z-index:90;width:50px;background:rgba(6,9,11,.8);border-left:1px solid rgba(255,255,255,.08);padding:15px 0 13px;display:grid}.pc-progress a{height:27px;display:grid;place-items:center;color:#687176;font:600 .62rem/1 "Segoe UI",sans-serif;transition:.2s}.pc-progress a.is-active{color:var(--bronze2);font-size:.78rem}

[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .68s ease,transform .68s cubic-bezier(.2,.75,.25,1)}[data-reveal].is-visible{opacity:1;transform:none}[data-reveal-delay="1"]{transition-delay:.08s}[data-reveal-delay="2"]{transition-delay:.16s}[data-reveal-delay="3"]{transition-delay:.24s}

.pc-hero{position:relative;min-height:86svh;padding-top:var(--header);overflow:hidden;background:#0a0f12}.pc-hero__image{position:absolute;inset:0 0 0 42%;background-size:cover;background-position:center;filter:saturate(.35) contrast(1.06) brightness(.78);transform:scale(1.04);will-change:transform}.pc-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,#090d10 0%,rgba(9,13,16,.95) 35%,rgba(9,13,16,.42) 64%,rgba(9,13,16,.56) 100%),linear-gradient(180deg,transparent 72%,#0b1013 100%)}.pc-hero__content{min-height:86svh;display:flex;flex-direction:column;justify-content:center;padding-top:60px;padding-bottom:48px}.pc-kicker{font-size:.68rem;letter-spacing:.23em;text-transform:uppercase;color:#bcc3c7;margin-bottom:16px}.pc-hero__title{margin:0;max-width:950px;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-stretch:condensed;font-weight:800;font-size:clamp(3.2rem,6.1vw,7rem);letter-spacing:-.018em;line-height:.92;text-transform:uppercase;text-shadow:0 8px 30px rgba(0,0,0,.45)}.pc-hero__title span{color:var(--bronze2);text-shadow:0 4px 20px rgba(197,138,59,.13)}.pc-hero__meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:20px;font-weight:600;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.pc-hero__meta span:not(:last-child):after{content:"|";margin-left:24px;color:#777f84}.pc-scrollcue{display:inline-flex;align-items:center;gap:10px;width:max-content;margin-top:42px;color:#bdc4c7;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase}.pc-scrollcue i{font-style:normal;font-size:1.2rem;color:var(--bronze2);animation:bob 1.7s infinite ease-in-out}@keyframes bob{50%{transform:translateY(5px)}}

.pc-statement{position:relative;min-height:42svh;background:linear-gradient(120deg,#eef0f1,#cfd4d7 58%,#e7eaeb);color:#151a1d;overflow:hidden;border-top:1px solid #f7f8f8;border-bottom:1px solid #aab1b5}.pc-statement__art{position:absolute;right:0;top:0;width:45%;height:100%;background-size:cover;background-position:center;opacity:.86;filter:saturate(.4) contrast(.95)}.pc-statement__art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#d7dbdd 0%,rgba(215,219,221,.48) 30%,rgba(215,219,221,.1) 100%)}.pc-statement__grid{min-height:42svh;display:grid;grid-template-columns:1fr .95fr .55fr;gap:44px;align-items:center;padding-top:42px;padding-bottom:42px}.pc-statement__headline h2{margin:0;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:clamp(2.7rem,4.2vw,5.1rem);line-height:.92;letter-spacing:-.02em}.pc-statement__headline strong{display:block;margin-top:8px;color:var(--bronze);font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:clamp(1.35rem,2.15vw,2.7rem);letter-spacing:.01em}.pc-statement__copy{position:relative;z-index:2;font-size:.92rem;line-height:1.45;max-width:560px}.pc-statement__copy p{margin:.25rem 0 .8rem}.pc-signature{margin-top:14px;font-family:"Segoe Script","Brush Script MT",cursive;font-size:1.55rem}.pc-signature span{font-family:"Segoe UI",sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-left:12px}.pc-statement__motto{position:relative;z-index:2;display:grid;gap:4px;font-size:.72rem;letter-spacing:.12em;font-weight:700}

.pc-band{position:relative;min-height:66svh;overflow:hidden;border-bottom:1px solid var(--line);background:#0a0f12}.pc-band__image{position:absolute;inset:0 9% 0 33%;background-size:cover;background-position:center;filter:saturate(.24) contrast(1.05) brightness(.72);transform:scale(1.03);will-change:transform}.pc-band__shade{position:absolute;inset:0;background:linear-gradient(90deg,#0a0f12 0%,rgba(10,15,18,.97) 28%,rgba(10,15,18,.35) 55%,rgba(10,15,18,.88) 100%)}.pc-band__layout{min-height:66svh;display:grid;grid-template-columns:70px 1fr 240px;align-items:center;gap:28px}.pc-band__number{align-self:start;margin-top:48px;color:#cbd0d3;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:1.05rem;position:relative}.pc-band__number:after{content:"";display:inline-block;width:38px;height:1px;background:var(--bronze);margin-left:12px;vertical-align:middle;opacity:.65}.pc-band__copy{align-self:center;max-width:560px}.pc-band__copy h2{margin:0;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:clamp(2.45rem,4vw,4.9rem);line-height:.92;letter-spacing:-.018em}.pc-band__copy p{margin:16px 0 0;color:#d0d5d7;font-size:.73rem;line-height:1.55;letter-spacing:.06em;font-weight:600}.pc-band__aside{justify-self:end;font-size:.69rem;line-height:1.65;letter-spacing:.11em;color:#c6cdd0;border-bottom:1px solid rgba(255,255,255,.26);padding-bottom:10px}.pc-band--parametric{min-height:62svh}.pc-band--parametric .pc-band__layout{min-height:62svh}.pc-band--parametric .pc-band__image{inset:0 8% 0 39%}

.pc-projects{background:linear-gradient(180deg,#0d1215,#080c0f);padding:34px 0;border-bottom:1px solid var(--line)}.pc-projects__row{display:grid;grid-template-columns:190px 1fr;gap:28px;align-items:stretch}.pc-projects__title{display:flex;gap:18px;align-items:flex-start}.pc-projects__title span,.pc-workflow__title span,.pc-about__heading>span,.pc-contact__headline>span{color:#d7dbdd;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:1rem}.pc-projects__title h2,.pc-workflow__title h2{margin:22px 0 0 -34px;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:2rem;line-height:.94}.pc-projects__cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pc-project{min-width:0;background:#12181c;border:1px solid rgba(255,255,255,.12);overflow:hidden;transition:.25s}.pc-project:hover{transform:translateY(-3px);border-color:rgba(197,138,59,.65)}.pc-project__image{aspect-ratio:2.15/1;background-size:cover;background-position:center;filter:saturate(.4) contrast(1.03)}.pc-project__body{position:relative;padding:10px 34px 10px 11px;background:linear-gradient(180deg,#11171a,#0b0f12)}.pc-project__body b{display:block;font-size:.64rem;text-transform:uppercase;color:#d0d6d9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-project__body b:first-letter{color:var(--bronze2)}.pc-project__body span{display:block;margin-top:3px;color:#aeb6ba;font-size:.58rem}.pc-project__body i{position:absolute;right:10px;top:12px;color:var(--bronze2);font-style:normal}

.pc-workflow{background:#0b1013;padding:28px 0;border-bottom:1px solid var(--line)}.pc-workflow__row{display:grid;grid-template-columns:210px 1fr 250px;gap:26px;align-items:center}.pc-workflow__title{display:flex;gap:18px}.pc-workflow__title h2{font-size:1.28rem;margin:2px 0 0}.pc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.pc-step{position:relative;padding-left:32px}.pc-step:not(:last-child):after{content:"→";position:absolute;right:-4px;top:8px;color:#929a9e}.pc-step em{position:absolute;left:0;top:0;width:23px;height:23px;border:1px solid rgba(197,138,59,.6);display:grid;place-items:center;font-style:normal;font-size:.5rem;color:var(--bronze2)}.pc-step b{display:block;font-size:.74rem}.pc-step small{display:block;margin-top:3px;color:#a8b0b4;font-size:.63rem}.pc-workflow__claim{border-left:2px solid var(--bronze);padding-left:20px;font-size:.71rem;line-height:1.45;letter-spacing:.08em}.pc-workflow__claim strong{color:var(--bronze2)}

.pc-about{position:relative;padding:62px 0 66px;background:linear-gradient(120deg,#0b1013,#141b20);border-bottom:1px solid var(--line)}.pc-about:after{content:"";position:absolute;right:-6%;top:-25%;width:46%;height:150%;background:url('assets/images/wireframe.svg') center/contain no-repeat;opacity:.07}.pc-about__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center}.pc-about__heading{display:grid;grid-template-columns:42px 1fr;gap:8px}.pc-about__heading h2{margin:0;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:clamp(2.2rem,3.8vw,4.3rem);line-height:.95}.pc-about__heading strong{color:var(--bronze2)}.pc-about__skills{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.pc-about__skills div{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.015)}.pc-about__skills b{display:block;font-size:.78rem}.pc-about__skills span{display:block;margin-top:4px;color:#9fa8ac;font-size:.68rem}

.pc-contact{position:relative;min-height:58svh;overflow:hidden;background:#090d10}.pc-contact__image{position:absolute;inset:0 0 0 48%;background-size:cover;background-position:center;filter:saturate(.28) contrast(1.05) brightness(.65)}.pc-contact__shade{position:absolute;inset:0;background:linear-gradient(90deg,#090d10 0%,rgba(9,13,16,.98) 38%,rgba(9,13,16,.48) 70%,rgba(9,13,16,.72) 100%)}.pc-contact__grid{min-height:58svh;display:grid;grid-template-columns:1fr .65fr 220px;gap:48px;align-items:center}.pc-contact__headline{display:grid;grid-template-columns:42px 1fr;gap:8px}.pc-contact__headline h2{margin:0;font-family:Bahnschrift,"Arial Narrow",sans-serif;font-size:clamp(2.3rem,4.25vw,5rem);line-height:.93}.pc-contact__headline strong{color:var(--bronze2)}.pc-contact__details{display:grid;gap:6px;font-size:.74rem}.pc-contact__details b{font-size:.9rem}.pc-contact__details span,.pc-contact__details a{color:#c1c7ca}.pc-placeholder{opacity:.55}.pc-contact__button{justify-self:end;border:1px solid var(--bronze);padding:14px 24px;color:var(--bronze2);font-size:.7rem;font-weight:800;letter-spacing:.12em}.pc-contact__button:hover{background:var(--bronze);color:#101214}.pc-contact__button i{font-style:normal;margin-left:12px}.pc-footer{background:#06090b;border-top:1px solid rgba(255,255,255,.08);padding:18px 0;color:#7e888d}.pc-footer .pc-shell{display:flex;justify-content:space-between;gap:20px;font-size:.58rem;letter-spacing:.13em}.pc-footer b{color:#cfd4d6}

@media(max-width:1100px){.pc-progress{display:none}.pc-shell,.pc-header__inner{width:min(calc(100% - 44px),var(--max))}.pc-statement__grid{grid-template-columns:1fr 1fr}.pc-statement__motto{display:none}.pc-band__layout{grid-template-columns:54px 1fr 180px}.pc-projects__row{grid-template-columns:150px 1fr}.pc-projects__cards{grid-template-columns:1fr 1fr}.pc-workflow__row{grid-template-columns:180px 1fr}.pc-workflow__claim{display:none}.pc-contact__grid{grid-template-columns:1fr .8fr}.pc-contact__button{grid-column:2;justify-self:start}}

@media(max-width:760px){:root{--header:60px}.pc-shell,.pc-header__inner{width:calc(100% - 30px)}.pc-header__motto{display:none}.pc-brand b{font-size:1.25rem}.pc-brand span{font-size:.48rem}.pc-contact-link{font-size:.58rem;padding:8px 11px}.pc-hero{min-height:92svh}.pc-hero__content{min-height:92svh;padding-top:46px}.pc-hero__image{inset:0;opacity:.64;background-position:62% center}.pc-hero__shade{background:linear-gradient(180deg,rgba(8,12,14,.62),rgba(8,12,14,.83) 55%,#090d10 100%),linear-gradient(90deg,#090d10 0%,rgba(9,13,16,.25) 100%)}.pc-hero__title{font-size:clamp(2.7rem,13vw,4.7rem);line-height:.9}.pc-hero__meta{font-size:.64rem;display:grid;gap:7px}.pc-hero__meta span:not(:last-child):after{display:none}.pc-scrollcue{margin-top:28px}.pc-statement{min-height:auto}.pc-statement__art{width:100%;height:48%;top:auto;bottom:0;opacity:.35}.pc-statement__grid{min-height:auto;display:block;padding:42px 0 170px}.pc-statement__headline h2{font-size:clamp(2.4rem,11vw,4.1rem)}.pc-statement__headline strong{font-size:clamp(1.35rem,6vw,2rem)}.pc-statement__copy{margin-top:24px;font-size:.86rem;max-width:92%}.pc-band,.pc-band--parametric{min-height:76svh}.pc-band__image,.pc-band--parametric .pc-band__image{inset:32% 0 0 0;background-position:center}.pc-band__shade{background:linear-gradient(180deg,#0a0f12 0%,rgba(10,15,18,.96) 37%,rgba(10,15,18,.25) 72%,#0a0f12 100%)}.pc-band__layout,.pc-band--parametric .pc-band__layout{min-height:76svh;display:block;padding-top:42px}.pc-band__number{margin:0 0 16px}.pc-band__copy h2{font-size:clamp(2.25rem,11vw,4rem)}.pc-band__aside{position:absolute;bottom:28px;right:0;text-align:right}.pc-projects{padding:38px 0}.pc-projects__row{display:block}.pc-projects__title{margin-bottom:22px}.pc-projects__title h2{margin:0;font-size:1.8rem}.pc-projects__cards{display:grid;grid-template-columns:1fr;gap:12px}.pc-project__image{aspect-ratio:2.25/1}.pc-workflow{padding:40px 0}.pc-workflow__row{display:block}.pc-workflow__title{margin-bottom:26px}.pc-steps{grid-template-columns:1fr 1fr;gap:26px 16px}.pc-step:not(:last-child):after{display:none}.pc-about{padding:48px 0}.pc-about__grid{display:block}.pc-about__heading h2{font-size:clamp(2.2rem,10vw,3.8rem)}.pc-about__skills{margin-top:28px;grid-template-columns:1fr}.pc-contact{min-height:72svh}.pc-contact__image{inset:38% 0 0 0;opacity:.55}.pc-contact__shade{background:linear-gradient(180deg,#090d10 0%,rgba(9,13,16,.96) 45%,rgba(9,13,16,.4) 100%)}.pc-contact__grid{min-height:72svh;display:block;padding-top:48px}.pc-contact__headline h2{font-size:clamp(2.2rem,11vw,4.1rem)}.pc-contact__details{margin:28px 0 0 50px}.pc-contact__button{display:inline-block;margin:24px 0 0 50px}.pc-footer .pc-shell{display:block}.pc-footer span{display:block;margin-top:5px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none;transition:none}.pc-scrollcue i{animation:none}}
