/*
Theme Name: AITIVE Portfolio
Theme URI: https://ai-tive.net/
Author: AITIVE
Description: Cinematic customizable AI video portfolio theme for Cafe24 Managed WordPress. YouTube and MP4 play inside the site; built-in content management.
Version: 2.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: aitive-portfolio
*/
:root{color-scheme:dark;--bg:#09090d;--bg2:#111218;--panel:#18191f;--line:rgba(255,255,255,.13);--ink:#f4f4f7;--muted:#a8a8b1;--max:1380px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",Arial,sans-serif;font-size:15px;line-height:1.6}
button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{color:#fff}img{max-width:100%;display:block}
.aitive-container{width:min(calc(100% - 112px),var(--max));margin-inline:auto}.aitive-sr-only,.aitive-skip{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.aitive-skip:focus{position:fixed!important;top:10px;left:10px;width:auto;height:auto;clip:auto;background:white;color:black;z-index:9999;padding:10px}
.aitive-header{height:78px;background:rgba(8,9,13,.96);border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:5}.aitive-header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.aitive-brand,.aitive-footer-brand{min-width:150px;display:inline-flex;align-items:center}.aitive-logo-word{font-weight:800;font-size:31px;letter-spacing:-1.6px;line-height:1}.aitive-logo-img{max-height:64px;object-fit:contain;object-position:left center}.aitive-nav{display:flex;gap:50px;align-items:center;font-weight:600;font-size:14px}.aitive-nav a:hover{opacity:.68}.aitive-header-inquiry,.aitive-hero-actions a{border:1px solid #3d3e46;background:rgba(15,15,21,.58);padding:10px 25px;border-radius:5px;font-size:14px;transition:background .18s,transform .18s}.aitive-header-inquiry:hover,.aitive-hero-actions a:hover{background:#292a32;transform:translateY(-1px)}
.aitive-hero{aspect-ratio:16/9;min-height:0;position:relative;isolation:isolate;overflow:hidden;background:#10111b}.aitive-hero-bg,.aitive-hero-video,.aitive-hero-dim{position:absolute;inset:0;pointer-events:none}.aitive-hero-bg{z-index:-3;background-size:cover;background-position:center}.aitive-hero-video{z-index:-2;overflow:hidden}.aitive-hero-video iframe{position:absolute;border:0;top:50%;left:50%;width:100%;height:100%;min-width:177.78vh;min-height:56.25vw;transform:translate(-50%,-50%);pointer-events:none}.aitive-hero-dim{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.09) 64%,rgba(0,0,0,.03));background-color:rgba(0,0,0,var(--hero-opacity))}
.aitive-hero-title,.aitive-hero-subtitle{position:absolute;margin:0;text-shadow:0 2px 15px rgba(0,0,0,.65);max-width:min(75%,1050px);overflow-wrap:break-word}.aitive-hero-title{left:var(--title-x);top:var(--title-y);font-size:clamp(23px,var(--title-size),90px);font-weight:760;line-height:1.12;letter-spacing:-.025em}.aitive-hero-subtitle{left:var(--subtitle-x);top:var(--subtitle-y);font-size:clamp(12px,var(--subtitle-size),42px);font-weight:400;line-height:1.45}.aitive-hero-actions{position:absolute;left:7%;bottom:13%;display:flex;gap:13px}.aitive-hero-actions a{min-width:150px;text-align:center;backdrop-filter:blur(8px)}
.aitive-portfolio-section{border-bottom:1px solid var(--line);padding:74px 0 88px;background:radial-gradient(circle at 52% 5%,#1a1b24 0,#101116 45%,#09090c 100%)}.aitive-portfolio-section:nth-child(even){background:radial-gradient(circle at 53% 10%,#171922 0,#0d0e13 54%,#09090c 100%)}.aitive-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:22px;margin-bottom:30px}.aitive-section-head h2{font-size:27px;letter-spacing:-.02em;margin:0;font-weight:760}.aitive-more{font-size:14px;color:#c8c8d0;border-bottom:1px solid #676773;padding-bottom:5px;white-space:nowrap}.aitive-more:hover{color:#fff}
.aitive-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px;align-items:start}.aitive-video-card{min-width:0}.aitive-thumb{position:relative;display:block;width:100%;padding:0;overflow:hidden;border-radius:10px;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.17);background:linear-gradient(130deg,#252b36,#0b0d12 75%);color:#fff;text-align:left;appearance:none;transition:transform .2s,border-color .2s,box-shadow .2s}.aitive-thumb:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.52);box-shadow:0 12px 40px rgba(0,0,0,.35)}.aitive-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}.aitive-thumb:hover img{transform:scale(1.035)}.aitive-thumb::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8));pointer-events:none}.aitive-card-bottom{position:absolute;z-index:2;left:13px;bottom:14px;right:12px;display:flex;align-items:center;gap:10px;min-width:0;font-size:15px;font-weight:650;text-shadow:0 2px 10px rgba(0,0,0,.7)}.aitive-play-mark{display:grid;place-items:center;width:36px;height:36px;flex:none;font-size:15px;line-height:1;background:rgba(0,0,0,.66);border-radius:6px}.aitive-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aitive-no-image{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:linear-gradient(140deg,#1c2633,#101116 65%,#34271f)}.aitive-no-image span{font-weight:850;letter-spacing:.22em;font-size:24px;color:#c3b1a2}.aitive-no-image small{font-size:10px;color:#858b95;letter-spacing:.14em}
.aitive-gallery-shorts .aitive-thumb{aspect-ratio:9/16}.aitive-gallery-shorts{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px;max-width:1240px;margin-inline:auto}.aitive-gallery-shorts .aitive-video-card{width:100%;max-width:290px;margin-inline:auto}.aitive-gallery-shorts .aitive-thumb img{object-fit:cover;object-position:center}.aitive-gallery-shorts .aitive-card-bottom{font-size:13px;left:10px;right:10px;bottom:11px;gap:8px}.aitive-gallery-shorts .aitive-play-mark{width:32px;height:32px}.aitive-shorts-section{padding-bottom:105px}.aitive-empty{min-height:165px;border:1px dashed rgba(255,255,255,.14);border-radius:10px;display:grid;place-content:center;text-align:center;background:rgba(255,255,255,.015);color:#80818c}.aitive-empty span{letter-spacing:.24em;font-size:11px;color:#747782}.aitive-empty p{margin:6px 0}.aitive-empty a{font-size:13px;color:#d6d6e0;text-decoration:underline}
.aitive-about-section{padding:80px 0 85px;background:radial-gradient(ellipse at 50% 30%,#1b1c24 0,#0a0b0e 70%)}.aitive-about-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px}.aitive-about-main>h2,.aitive-contact-panel>h2{font-size:26px;line-height:1.3;margin:0 0 35px}.aitive-about-main>h3{font-size:18px;margin:0 0 15px}.aitive-about-main>p{color:#cacbd0;max-width:730px;line-height:1.9}.aitive-about-details{margin-top:50px;padding:28px;border:1px solid var(--line);border-radius:10px;max-width:410px;display:flex;flex-direction:column;gap:15px}.aitive-contact-brand{margin-bottom:4px}.aitive-about-details>a{font-size:14px}.aitive-socials{display:flex;gap:16px;color:#dadade;font-size:13px}.aitive-contact-panel{border:1px solid rgba(255,255,255,.15);padding:28px 28px 24px;border-radius:10px;background:rgba(9,9,14,.55);align-self:start}.aitive-contact-panel>h2{font-size:25px;margin:0 0 20px}.aitive-contact-panel form{display:grid;gap:12px}.aitive-contact-panel input,.aitive-contact-panel textarea{width:100%;color:#f8f8fa;background:linear-gradient(120deg,#202027,#15151a);padding:12px;border-radius:5px;border:1px solid #45454e;outline:0;resize:vertical}.aitive-contact-panel input:focus,.aitive-contact-panel textarea:focus{border-color:#a0a0b1}.aitive-contact-panel button{color:#fff;background:linear-gradient(#323239,#1b1b21);border:1px solid #50505a;border-radius:6px;padding:12px}.aitive-honeypot{position:absolute;left:-9999px;max-height:1px;overflow:hidden}.aitive-form-message{padding:9px;border-radius:4px;font-size:13px}.aitive-form-message.success{background:#13372a;color:#b2f4d5}.aitive-form-message.error{background:#432025;color:#f7bec6}
.aitive-footer{border-top:1px solid var(--line);background:#08090c}.aitive-footer-inner{min-height:115px;display:flex;align-items:center;gap:24px;justify-content:space-between}.aitive-footer p{font-size:12px;color:#9798a1}.aitive-footer a:last-child{font-size:12px;color:#b9b9c1}
.aitive-archive-intro{padding:85px 0 46px;background:radial-gradient(ellipse at 60% 20%,#252630,#0b0b10 68%)}.aitive-archive-intro h1{font-size:clamp(42px,5vw,72px);line-height:1.18;letter-spacing:-.035em;margin:14px 0}.aitive-archive-intro p{color:#b9bac4}.aitive-eyebrow{color:#c8a68a!important;font-weight:700;font-size:12px;letter-spacing:.18em}.aitive-filter{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:38px}.aitive-filter a{border:1px solid #46464e;padding:9px 17px;border-radius:30px;font-size:13px;color:#c3c3cc}.aitive-filter a:hover,.aitive-filter a.is-active{background:#fff;color:#101114;border-color:white}.aitive-archive-grid-section{padding:55px 0 110px;min-height:45vh}.aitive-archive-empty{color:#afb0bb;padding:80px 0}.nav-links{display:flex;justify-content:center;gap:18px;margin-top:54px}.nav-links .page-numbers{border:1px solid #44454c;padding:8px 15px;border-radius:6px}.nav-links .current{background:white;color:#141414}.aitive-single{min-height:80vh;padding:65px 0 120px}.aitive-single .aitive-container{max-width:1020px}.aitive-single h1{font-size:clamp(32px,4vw,58px);margin:18px 0}.aitive-back{font-size:13px;color:#c4c4cd}.aitive-inline-player{width:100%;aspect-ratio:16/9;margin-top:38px;border-radius:10px;overflow:hidden;background:#000}.aitive-inline-player.is-vertical{max-width:460px;aspect-ratio:9/16;margin-inline:auto}.aitive-inline-player iframe{height:100%;width:100%;border:0}.aitive-detail-photo{margin:30px 0}.aitive-single-description{font-size:17px;color:#ceced5;line-height:2;margin-top:38px}.aitive-inline-link{border-bottom:1px solid #888}
.aitive-modal[hidden]{display:none}.aitive-modal{position:fixed;z-index:99999;inset:0;display:flex;align-items:center;justify-content:center;padding:22px}.aitive-modal-shade{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(11px)}.aitive-modal-content{z-index:1;width:min(94vw,1150px);background:#09090e;border:1px solid #383841;box-shadow:0 30px 110px #000;border-radius:12px;overflow:hidden}.aitive-modal-top{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;gap:12px}.aitive-modal-top strong{font-size:15px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.aitive-modal-close{background:#2a2a33;border:1px solid #585864;border-radius:5px;color:white;padding:6px 12px}.aitive-modal-video{aspect-ratio:16/9;background:#000}.aitive-modal-video.is-shorts{aspect-ratio:9/16;max-height:calc(90vh - 80px);width:fit-content;max-width:100%;margin:auto}.aitive-modal-video iframe{width:100%;height:100%;border:0;display:block}.aitive-modal-video.is-shorts iframe{width:min(calc((90vh - 80px)*.5625),90vw);height:min(calc(90vh - 80px),160vw)}body.aitive-modal-open{overflow:hidden}
@media(max-width:1000px){.aitive-container{width:min(calc(100% - 64px),var(--max))}.aitive-about-layout{grid-template-columns:minmax(0,1fr) 330px;gap:25px}.aitive-gallery{gap:22px 16px}.aitive-portfolio-section{padding:54px 0 70px}.aitive-hero-actions{bottom:10%}}
@media (min-width:701px) and (max-width:950px){.aitive-gallery-shorts{grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px}}
@media(max-width:700px){.aitive-container{width:min(calc(100% - 34px),var(--max))}.aitive-header{height:66px}.aitive-brand,.aitive-footer-brand{min-width:0}.aitive-logo-word{font-size:27px}.aitive-logo-img{max-height:48px}.aitive-header-inner{gap:12px}.aitive-nav{gap:14px;font-size:12px}.aitive-header-inquiry{display:none}.aitive-hero-title,.aitive-hero-subtitle{max-width:86%;text-shadow:0 1px 10px #000}.aitive-hero-title{font-size:clamp(15px,3.4vw,var(--title-size))}.aitive-hero-subtitle{font-size:clamp(10px,2vw,var(--subtitle-size))}.aitive-hero-actions{left:7%;bottom:8%;gap:7px}.aitive-hero-actions a{font-size:10px;min-width:auto;padding:5px 11px}.aitive-section-head{margin-bottom:20px}.aitive-section-head h2{font-size:23px}.aitive-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.aitive-gallery-shorts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:20px 12px}.aitive-card-bottom{font-size:12px;left:7px;right:6px;bottom:7px;gap:5px}.aitive-play-mark{width:26px;height:26px;font-size:11px}.aitive-about-layout{grid-template-columns:1fr}.aitive-about-section{padding:60px 0}.aitive-contact-panel{width:100%}.aitive-footer-inner{min-height:120px;flex-wrap:wrap;justify-content:center;text-align:center;gap:6px 20px}.aitive-footer-brand{width:100%;justify-content:center}.aitive-gallery-shorts .aitive-video-card{max-width:320px}.aitive-archive-intro{padding:60px 0 38px}}
@media(max-width:410px){.aitive-nav{gap:9px;font-size:11px}.aitive-header-inner{gap:4px}.aitive-logo-word{font-size:24px}.aitive-hero-actions a{padding:4px 8px}.aitive-portfolio-section{padding:42px 0 55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.aitive-thumb,.aitive-thumb img,.aitive-header-inquiry,.aitive-hero-actions a{transition:none}}

/* Local MP4 player added in v1.1 */
.aitive-modal-video video,.aitive-inline-player video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.aitive-modal-video.is-shorts video{width:min(calc((90vh - 80px)*.5625),90vw);height:min(calc(90vh - 80px),160vw)}

@media(max-width:700px){.aitive-gallery-shorts .aitive-card-bottom{font-size:11px;left:6px;right:6px;bottom:7px;gap:5px}.aitive-gallery-shorts .aitive-play-mark{width:26px;height:26px}}

/* v1.5: consistent AI-SHORTS cards on the home page, View More and all-works archive. */
.aitive-gallery .aitive-video-card.is-shorts .aitive-thumb{aspect-ratio:9/16}
.aitive-gallery:not(.aitive-gallery-shorts) .aitive-video-card.is-shorts{width:100%;max-width:290px;margin-inline:auto}
.aitive-archive-grid-section .aitive-gallery-shorts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px;max-width:1240px;margin-inline:auto}
.aitive-archive-grid-section .aitive-gallery-shorts .aitive-video-card{width:100%;max-width:290px;margin-inline:auto}
@media (min-width:701px) and (max-width:950px){.aitive-archive-grid-section .aitive-gallery-shorts{grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px}}
@media (max-width:700px){.aitive-archive-grid-section .aitive-gallery-shorts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;max-width:none}}

/* v1.6: retain 9:16 frame, avoid pixelated stretched generated thumbnails when possible.
   The displayed resolution still depends on the ORIGINAL image supplied. */
.aitive-gallery-shorts .aitive-thumb img,
.aitive-video-card.is-shorts .aitive-thumb img {
  image-rendering: auto;
  object-fit: cover;
  object-position: center;
}

/* v1.8: business info, editable categories and layout options */
.aitive-business-info{display:flex;flex-wrap:wrap;gap:8px 22px;padding:0 0 24px;color:#a6a7b0;font-size:12px;line-height:1.8}
.aitive-business-info span{overflow-wrap:anywhere}.aitive-business-info strong{font-weight:550;color:#e3e3e8;margin-right:5px}
@media(max-width:700px){.aitive-business-info{gap:4px 16px;padding-bottom:22px;font-size:11px}}

/* v2.0 — Compact footer business identification above copyright. */
.aitive-footer-inner{display:grid;grid-template-columns:minmax(110px,160px) minmax(0,1fr) minmax(90px,160px);align-items:center;column-gap:22px;min-height:130px;padding-block:28px}
.aitive-footer-brand{justify-self:start}
.aitive-footer-meta{text-align:center;min-width:0;display:flex;flex-direction:column;align-items:center;gap:9px}
.aitive-footer-meta .aitive-business-info,.aitive-footer-meta .aitive-business-extra{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:3px 0;width:100%;padding:0;font-size:12px;line-height:1.8;color:#b8b8c2}
.aitive-footer-meta .aitive-business-info span,.aitive-footer-meta .aitive-business-extra span{white-space:normal;overflow-wrap:anywhere}
.aitive-footer-meta .aitive-business-info span:not(:last-child)::after,.aitive-footer-meta .aitive-business-extra span:not(:last-child)::after{content:'|';display:inline-block;color:#656670;margin:0 10px}
.aitive-footer .aitive-copyright{margin:0;color:#898a94;font-size:12px}
.aitive-footer-all{justify-self:end;white-space:nowrap;font-size:12px;color:#c2c2ca}
@media(max-width:1050px){.aitive-footer-inner{grid-template-columns:100px minmax(0,1fr) 75px;gap:18px}.aitive-footer-meta .aitive-business-info,.aitive-footer-meta .aitive-business-extra{font-size:11px}}
@media(max-width:700px){.aitive-footer-inner{display:flex;flex-direction:column;align-items:center;gap:18px;min-height:0;padding-block:28px}.aitive-footer-brand{justify-self:center;width:auto;justify-content:center}.aitive-footer-meta{order:1}.aitive-footer-all{order:2;align-self:center}.aitive-footer-meta .aitive-business-info,.aitive-footer-meta .aitive-business-extra{gap:3px 0}.aitive-footer-meta .aitive-business-info span:not(:last-child)::after,.aitive-footer-meta .aitive-business-extra span:not(:last-child)::after{margin:0 7px}}
