/* Isolated portfolio styles: existing pages and case templates stay unchanged. */
.portfolio{background:#24221f;color:#fff9ed;scroll-margin-top:100px;border-radius:36px;margin:20px max(12px,calc((100% - 1320px)/2));overflow:hidden}
.portfolio-inner{padding-top:76px;padding-bottom:52px}
.portfolio-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:44px}
.portfolio .eyebrow{color:#d5f268;margin-bottom:20px}
.portfolio h2{font-size:clamp(40px,5.6vw,76px);line-height:1.02;letter-spacing:-.055em;margin:0;color:#fff9ed}
.portfolio h2 em{font-style:normal;color:#ff865a}
.portfolio-intro{max-width:310px;font-size:16px;line-height:1.65;color:#d0c9be;margin:0 0 5px}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.project-card{display:flex;flex-direction:column;min-width:0;border-radius:22px;overflow:hidden;background:#fff9ed;color:#23211f;border:1px solid #ffffff24;transition:transform .25s,box-shadow .25s}
.project-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #0004}
.project-card:focus-visible{outline:3px solid #d5f268;outline-offset:5px}
.project-cover{position:relative;padding:32px 28px 0;aspect-ratio:1.64;overflow:hidden;background:#e9dfcb}
.project-remavto .project-cover{background:#414340}
.project-baseos .project-cover{background:#d5cdf1}
.project-zdeshnee .project-cover{background:#d9e5b9}
.project-window{overflow:hidden;border:1px solid #23211f26;border-radius:10px 10px 0 0;box-shadow:0 8px 26px #0003;transform:rotate(-2deg);transform-origin:center;transition:transform .35s;background:#fff}
.project-remavto .project-window,.project-zdeshnee .project-window{transform:rotate(2deg)}
.project-card:hover .project-window{transform:rotate(0deg) translateY(-5px)}
.project-window-bar{display:flex;align-items:center;gap:18px;background:#fff9ed;color:#625c52;padding:7px 12px;font-size:10px;white-space:nowrap;overflow:hidden}
.project-window-bar span{font-size:8px;letter-spacing:2px;color:#9c8e79}
.project-window img{width:100%;height:auto;display:block}
.project-label{position:absolute;left:20px;bottom:15px;padding:7px 12px;border-radius:100px;background:#fff9ed;color:#23211f;font-size:11px;font-weight:650;box-shadow:0 3px 14px #0002}
.project-content{padding:26px 30px 28px;display:flex;flex-direction:column;flex:1}
.project-topline{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.12em;font-weight:650;color:#685e50}
.project-open{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eee5d5;color:#23211f;font-size:24px;letter-spacing:0;transition:background .2s,transform .2s}
.project-card:hover .project-open{background:#ff865a;transform:rotate(6deg)}
.project-content h3{font-size:clamp(26px,3vw,37px);line-height:1.1;letter-spacing:-.045em;margin:10px 0 14px}
.project-content p{font-size:16px;line-height:1.55;margin:0 0 22px;max-width:450px;color:#635b50}
.project-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.project-tags span{border:1px solid #23211f25;border-radius:100px;padding:4px 10px;font-size:11px;color:#625b50}
.project-link{margin-top:24px;padding-top:16px;border-top:1px solid #23211f20;display:flex;justify-content:space-between;font-size:13px;font-weight:650}
.project-link span{font-size:20px;line-height:1}
.portfolio-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:36px}
.portfolio-bottom p{font-size:18px;max-width:400px;margin:0;color:#d0c9be}
.portfolio-bottom strong{color:#fff9ed;font-weight:600}
.portfolio-bottom .button{white-space:nowrap;gap:22px}
.portfolio-case .case-step-number{font-size:13px;font-weight:700;margin-bottom:24px;display:block}
.portfolio-case .case-card.violet{background:#ff6b35;color:#23211f}
.portfolio-case .case-card.violet h3,.portfolio-case .case-card.violet p{color:#23211f}
.portfolio-case .case-gallery{align-items:center}
.portfolio-case .case-gallery .phone{max-width:280px;margin:auto}
.portfolio-case .case-details{margin-top:36px;max-width:920px}
.portfolio-case .case-result-note{max-width:740px;margin:24px 0 0;color:#625b50;font-size:15px}
.portfolio-case .case-cta .button.ghost{color:#fff9ed;border-color:#fff9ed;background:transparent}
.portfolio-case .case-cta .button.ghost:hover{color:#23211f;background:#fff9ed}
.portfolio-case .case-hero .hero-inner>*{min-width:0}
.portfolio-case .case-gallery img{display:block}
.portfolio-case .site-footer .footer-req{color:#d0c9be}
@media(min-width:761px) and (max-width:1050px){.brand-home .hero-flame{max-width:100%}}
@media(max-width:380px){.portfolio-case .site-header{gap:8px;padding-inline:12px}.portfolio-case .top-nav .button{font-size:10px;padding-inline:9px}}
@media(max-width:900px){.portfolio-heading{align-items:flex-start;flex-direction:column;gap:24px}.portfolio-intro{max-width:none}.portfolio-intro br{display:none}.project-cover{padding:25px 20px 0}.project-content{padding:22px}.portfolio-case .case-hero .hero-inner{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.portfolio{margin:8px;border-radius:25px}.portfolio-inner{width:calc(100% - 32px);padding:42px 0 32px}.portfolio-heading{margin-bottom:30px;gap:20px}.portfolio h2{font-size:clamp(36px,9.7vw,56px)}.portfolio-intro{font-size:15px}.portfolio-grid{grid-template-columns:minmax(0,1fr);gap:20px}.project-cover{padding:25px 24px 0;aspect-ratio:1.5}.project-content{padding:20px}.project-content h3{font-size:30px}.project-content p{font-size:15px}.project-topline{font-size:9px}.project-tags span{font-size:10px}.portfolio-bottom{flex-direction:column;align-items:stretch;gap:20px;padding-top:28px}.portfolio-bottom p{font-size:17px}.portfolio-bottom .button{justify-content:space-between}.portfolio-case .case-stats{grid-template-columns:minmax(0,1fr)}.portfolio-case .case-gallery{grid-template-columns:minmax(0,1fr)}.portfolio-case .case-cta .button{white-space:normal}.portfolio-case .hero-visual{min-width:0}}
@media(prefers-reduced-motion:reduce){.project-card,.project-window,.project-open{transition:none}.project-card:hover,.project-card:hover .project-window{transform:none}}
