/* Melli's production studio layer — warm editorial typography and a clear brief. */
html[data-scene=films] .navigation{background:#24191eed;border-color:#d8b4a32c}html[data-scene=films] .nav-links button{color:#ecdcd0}html[data-scene=films] .languages button[aria-pressed=true]{color:#efb1a6}html[data-scene=films] .navigation .nav-action{color:#efb1a6;border-color:#efb1a640}html[data-scene=films] .mark>span{color:#df9a92}
.light-wash{opacity:calc(1 - var(--collection-opacity)*.96)}
.scene-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,#663c3338 0,transparent 48%,#0b070b8c 100%);opacity:var(--collection-opacity)}
.site-footer{flex-wrap:wrap}.site-footer>small{flex-basis:100%;color:#8a776d;font-size:9px;line-height:1.7;letter-spacing:.02em}
.closing>p{max-width:370px;font-size:13px;line-height:1.8}.closing>img{width:140px;flex:none}
@media(max-width:760px){.site-footer>small{grid-column:1/-1;font-size:8px}.closing>p{text-align:left;max-width:none;font-size:11px}.closing>img{width:110px}}
:root{--studio-gutter:8vw;--wine:#3b2025;--wine-quiet:#cdb9b4;--rule:1px solid #8e6b5329}
.navigation .mark{min-width:140px}.mark img{width:140px;height:52px}.mark>span{font-size:7px;letter-spacing:.3em;margin:0 0 5px 10px}.nav-links{gap:28px}
.light-wash{background:radial-gradient(ellipse at 74% 44%,#fffaf2 0%,#fffaf280 24%,transparent 53%),radial-gradient(ellipse at 91% 80%,#e9c6ba55,transparent 49%)}
.intro-copy{max-width:390px}.intro-copy p{max-width:365px;margin-bottom:18px}.intro-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.secondary-link{display:inline-flex;align-items:center;gap:12px;min-height:42px;padding:4px 0;background:none;color:var(--ink);font-size:11px;border-bottom:1px solid #8e6b5345}.secondary-link:hover{color:var(--red);border-color:var(--red)}
.hero-services{display:flex;flex-wrap:wrap;align-items:center;gap:8px 15px;list-style:none;margin:0 0 23px;padding:0;color:#78665f;font-size:9px;line-height:1.6;letter-spacing:.045em}.hero-services>*+*{position:relative;padding-left:14px}.hero-services>*+*:before{content:'';position:absolute;left:0;top:.7em;width:3px;height:3px;background:#b82b3870;border-radius:50%}
.shot-label{position:absolute;z-index:4;right:8vw;top:20%;display:flex;align-items:center;gap:10px;margin:0;color:#8b6f65;font-size:9px;letter-spacing:.12em;line-height:1.5;opacity:var(--intro-opacity);pointer-events:none}.shot-label:before{content:'';width:22px;height:1px;background:#b82b3880}.character-caption{position:absolute;z-index:4;right:8vw;bottom:17vh;max-width:190px;margin:0;color:var(--muted);font-size:10px;line-height:1.7;text-align:right;opacity:var(--intro-opacity);pointer-events:none}.character-caption strong{display:block;color:var(--red);font-size:10px;font-weight:500;letter-spacing:.04em;margin-bottom:5px}
.collection-caption{color:#ead7c8}.collection-bottom{color:#c7afa6}.wide-type{color:#be7e824d}.film-card{width:min(32vw,440px);height:min(45vh,350px)}.stage-footer{color:var(--footer-color,var(--muted))}.stage-footer .scroll-hint{color:inherit}.thread-eyelet{position:absolute;right:20px;bottom:22px;z-index:4;width:10px;height:10px;border:2px solid #c74a54;border-radius:50%;box-shadow:inset 0 1px 1px #ffd3a787,0 1px 3px #1509084d;pointer-events:none}
.services,.faq-section,.contact-section{scroll-margin-top:105px;padding:110px var(--studio-gutter)}
.section-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:22px 12vw;align-items:end;margin-bottom:62px}.section-heading>.eyebrow{grid-column:1/-1;margin:0;color:var(--red)}.section-heading h2{margin:0;font-size:clamp(42px,4.9vw,76px);font-weight:450;letter-spacing:-.055em;line-height:1.05}.section-heading h2 em,.contact-copy h2 em{font-family:'Instrument Serif',Georgia,serif;font-size:1.1em;font-weight:400;color:var(--red);letter-spacing:-.025em}.section-heading>p:not(.eyebrow){margin:0;max-width:365px;font-size:14px;line-height:1.85;color:var(--muted)}
.services{position:relative;background:var(--wine);color:#f6f1e8;overflow:hidden}.services:before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:#76534f}.services .section-heading>.eyebrow{color:#e8a798}.services .section-heading h2 em{color:#e7a496}.services .section-heading>p:not(.eyebrow){color:var(--wine-quiet)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #e5cfc22d}.service-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:35px 30px 0 0}.service-card+.service-card{border-left:1px solid #e5cfc22d;padding-left:30px}.service-card:last-child{padding-right:0}.service-index{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.08em;color:#e8a798}.service-index:after{content:'';width:28px;height:1px;background:#e8a79855}.service-card h3{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(34px,3.2vw,48px);font-weight:400;line-height:1.1;letter-spacing:-.025em;margin:38px 0 20px}.service-card>p{color:var(--wine-quiet);font-size:13px;line-height:1.85;margin:0 0 27px;max-width:305px}.service-deliverables{list-style:none;margin:0 0 35px;padding:0;font-size:11px;line-height:1.6;color:#ead8d1}.service-deliverables li{position:relative;padding:8px 0 8px 14px;border-bottom:1px solid #e5cfc213}.service-deliverables li:before{content:'';position:absolute;left:0;top:15px;width:3px;height:3px;border-radius:50%;background:#d68a80}.service-format{margin-top:auto;padding-top:18px;color:#bba29a;font-size:9px;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #e5cfc22d}
.service-card .service-format{margin-top:auto;margin-bottom:0;max-width:none;font-size:9px;line-height:1.7;color:#bba29a}
.ending{padding-top:115px;padding-bottom:105px}.ending .process-label{grid-column:1/-1;margin:5px 0 -40px;color:var(--red);font-size:10px;letter-spacing:.14em}.ending .process{padding-bottom:0}.ending .closing{padding-bottom:0}
.faq-section{display:grid;grid-template-columns:1fr 1.25fr;gap:10vw;background:#f6f1e8;border-top:var(--rule);border-bottom:var(--rule)}.faq-section .section-heading{display:block;margin:0}.faq-section .section-heading>.eyebrow{margin:0 0 26px}.faq-section .section-heading h2{font-size:clamp(38px,4.1vw,62px)}.faq-section .section-heading>p:not(.eyebrow){font-size:13px;max-width:310px;margin-top:25px}.faq-list{border-top:var(--rule)}.faq-list details{border-bottom:var(--rule)}.faq-list summary{position:relative;list-style:none;padding:25px 35px 25px 0;color:var(--ink);font-size:14px;line-height:1.6;font-weight:500;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:2px;top:24px;color:var(--red);font-size:23px;line-height:1}.faq-list details[open]>summary:after{content:'−'}.faq-list summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}.faq-list details>p{font-size:13px;line-height:1.85;color:var(--muted);max-width:490px;margin:0 30px 27px 0}
.contact-section{display:grid;grid-template-columns:1fr 1.12fr;gap:11vw;align-items:start;background:#eee6da}.contact-copy>.eyebrow{color:var(--red);margin:0 0 26px}.contact-copy h2{font-size:clamp(44px,5.4vw,84px);line-height:1.04;font-weight:450;letter-spacing:-.055em;margin:0 0 32px}.contact-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted);max-width:315px;margin:0}.brief-form{padding-top:3px;min-width:0}.brief-form label{display:block;color:var(--ink);font-size:11px;line-height:1.6}.brief-form label>span{display:block;margin-bottom:9px}.brief-form .field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.brief-form input,.brief-form select,.brief-form textarea{display:block;width:100%;min-width:0;min-height:45px;margin:6px 0 24px;padding:10px 0 12px;font:inherit;font-size:13px;line-height:1.7;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #8e6b5350;border-radius:0;box-shadow:none}.brief-form input::placeholder,.brief-form textarea::placeholder{color:#8b7e75;opacity:1}.brief-form select{padding-right:24px;cursor:pointer}.brief-form select option{color:var(--ink);background:#f6f1e8}.brief-form textarea{min-height:98px;resize:vertical}.brief-form input:focus,.brief-form select:focus,.brief-form textarea:focus{outline:0;border-bottom-color:var(--red);box-shadow:0 1px 0 var(--red)}.brief-form .form-note{font-size:10px;line-height:1.75;color:var(--muted);margin:0 0 23px;max-width:430px}.brief-form .primary{margin-top:2px;gap:48px}.brief-form .form-status{color:var(--red);font-size:12px;line-height:1.8;margin:18px 0 0;max-width:430px}.brief-form .form-status:empty{display:none}
.site-footer{display:flex;align-items:center;gap:32px;padding:42px var(--studio-gutter) 50px;background:#f6f1e8;border-top:var(--rule)}.site-footer>img{width:152px;height:auto;max-height:65px;object-fit:contain}.site-footer>p{color:var(--muted);font-size:10px;line-height:1.7;margin:0;max-width:265px}.footer-links{display:flex;align-items:center;gap:24px;margin-left:auto}.footer-links button,.footer-links a{padding:8px 0;background:none;color:var(--red);font-size:11px;line-height:1.5;border:0;border-bottom:1px solid transparent}.footer-links button:hover,.footer-links a:hover{border-bottom-color:#b82b3855}
html[lang=ko] .section-heading h2,html[lang=ko] .contact-copy h2{font-size:clamp(35px,4.2vw,65px);line-height:1.25;letter-spacing:-.065em}html[lang=ko] .section-heading h2 em,html[lang=ko] .contact-copy h2 em{font-family:'Noto Sans KR',sans-serif;font-style:normal;font-size:1em;letter-spacing:inherit}html[lang=ko] .service-card h3{font-family:'Noto Sans KR',sans-serif;font-size:clamp(25px,2.3vw,35px);font-weight:400;letter-spacing:-.05em;line-height:1.3}html[lang=ko] .hero-services{letter-spacing:0}
@media(min-width:1600px){.services,.faq-section,.contact-section{padding-block:135px}.intro-copy p{font-size:15px;max-width:370px}.section-heading>p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:15px}.service-card>p,.faq-list details>p{font-size:14px}}
@media(max-width:1050px) and (min-width:761px){:root{--studio-gutter:6vw}.navigation{gap:23px}.nav-links{gap:20px}.navigation .nav-action{gap:17px;padding:11px 13px}.service-card{padding-right:22px}.service-card+.service-card{padding-left:22px}.section-heading{gap:20px 7vw}.faq-section,.contact-section{gap:7vw}.shot-label,.character-caption{right:6vw}.intro-actions{gap:18px}.hero-services{font-size:8px;gap:8px 11px}.hero-services>*+*{padding-left:11px}}
@media(max-width:760px){
  :root{--studio-gutter:25px}.navigation{height:79px;gap:14px}.navigation .mark{min-width:80px}.mark img{width:88px;height:33px}.mark>span{font-size:5.5px;letter-spacing:.23em;margin:0 0 4px 6px}.nav-links{gap:12px}.nav-links button{font-size:10px}.languages{gap:4px}.languages button{font-size:9px}.intro-copy,.intro-copy p{max-width:300px}.intro-copy p{font-size:12px;line-height:1.65;margin-bottom:12px}.hero-services{font-size:8px;line-height:1.55;margin-bottom:16px;gap:7px 11px}.hero-services>*+*{padding-left:11px}.intro-actions{gap:18px}.secondary-link{font-size:10px;min-height:39px}.shot-label{right:27px;top:38%;font-size:7px;letter-spacing:.08em;gap:7px}.shot-label:before{width:15px}.character-caption{display:none}.film-card{width:57vw;height:min(48vh,430px)}.thread-eyelet{right:15px;bottom:18px;width:9px;height:9px}
  .services,.faq-section,.contact-section{padding:70px var(--studio-gutter);scroll-margin-top:79px}.section-heading{display:block;margin-bottom:38px}.section-heading>.eyebrow{margin:0 0 24px;font-size:9px}.section-heading h2{font-size:44px;line-height:1.08}.section-heading>p:not(.eyebrow){font-size:12px;line-height:1.8;margin-top:25px;max-width:330px}.service-grid{display:block}.service-card,.service-card+.service-card,.service-card:last-child{padding:30px 0 32px;border-left:0;border-bottom:1px solid #e5cfc22d}.service-card:last-child{border-bottom:0;padding-bottom:0}.service-index{font-size:10px}.service-card h3{font-size:40px;margin:24px 0 15px}.service-card>p{font-size:12px;max-width:100%;margin-bottom:21px}.service-deliverables{margin-bottom:24px;font-size:11px}.service-deliverables li{padding-block:8px}.service-format{font-size:8px;padding-top:15px}
  .ending{padding-top:72px;padding-bottom:67px}.ending .process-label{margin:40px 0 24px;font-size:9px}.ending .process{padding-bottom:0}.ending .closing{margin-top:15px;padding-bottom:0}.faq-section{display:block}.faq-section .section-heading{margin-bottom:35px}.faq-section .section-heading h2{font-size:42px}.faq-section .section-heading>p:not(.eyebrow){font-size:12px;margin-top:20px}.faq-list summary{font-size:12px;padding-block:22px}.faq-list summary:after{top:22px;font-size:21px}.faq-list details>p{font-size:12px;margin-bottom:23px}
  .contact-section{display:block}.contact-copy{margin-bottom:43px}.contact-copy>.eyebrow{font-size:9px;margin-bottom:23px}.contact-copy h2{font-size:48px;margin-bottom:24px}.contact-copy>p:not(.eyebrow){font-size:12px;max-width:300px}.brief-form .field-row{gap:20px}.brief-form label{font-size:10px}.brief-form input,.brief-form select,.brief-form textarea{font-size:16px;min-height:44px;margin-bottom:24px;padding-bottom:11px}.brief-form textarea{min-height:110px}.brief-form .form-note{font-size:10px;max-width:100%}.brief-form .primary{font-size:11px;padding:14px 19px}.brief-form .form-status{font-size:11px}
  .site-footer{display:grid;grid-template-columns:1fr 1fr;gap:23px 15px;padding:32px var(--studio-gutter) 55px}.site-footer>img{width:125px;max-height:48px}.site-footer>p{font-size:9px;text-align:right;justify-self:end;max-width:155px}.footer-links{grid-column:1/-1;margin-left:0;gap:25px}.footer-links button,.footer-links a{font-size:10px}html[lang=ko] .section-heading h2,html[lang=ko] .contact-copy h2{font-size:35px;line-height:1.3}html[lang=ko] .service-card h3{font-size:28px;line-height:1.3}
}
@media(max-width:380px){.navigation{margin-inline:18px;gap:10px}.navigation .mark{min-width:71px}.mark img{width:77px;height:29px}.nav-links{gap:10px}.nav-links button{font-size:9px}.languages button{font-size:8px}.hero-services{font-size:7px;gap:6px 9px}.hero-services>*+*{padding-left:9px}.intro-actions{gap:15px}.secondary-link{font-size:9px}.brief-form .field-row{grid-template-columns:1fr;gap:0}.section-heading h2{font-size:40px}.contact-copy h2{font-size:44px}}
@media(max-height:600px) and (orientation:landscape){
  .navigation{height:66px}.mark img{width:110px;height:35px}.navigation .mark{min-width:110px}.mark>span{font-size:5px;margin-bottom:3px}.intro{padding-top:calc(66px + 3vh)}.intro>.eyebrow{font-size:7px;margin-bottom:9px}.intro h1{font-size:clamp(29px,4vw,50px);line-height:1.02}.intro h1 em{font-size:1.08em}.intro-bottom{bottom:14vh}.intro-copy,.intro-copy p{max-width:40vw}.intro-copy p{font-size:10px;line-height:1.45;margin-bottom:10px}.hero-services{font-size:7px;margin-bottom:12px;gap:7px 11px}.intro-actions{gap:17px}.primary{font-size:10px;padding:10px 15px}.secondary-link{font-size:9px;min-height:31px}.shot-label{top:23%;right:7vw;font-size:7px}.character-caption{display:none}.film-card{width:28vw;height:48vh}.services,.faq-section,.contact-section{scroll-margin-top:66px;padding-block:68px}.section-heading h2{font-size:42px}.contact-copy h2{font-size:46px}html[lang=ko] .intro h1{font-size:3.8vw;line-height:1.15}
}
@media(prefers-reduced-motion:reduce){.secondary-link,.faq-list summary{transition:none}}
/* A visible stitch joins each live 3D connector behind the image card. */
.thread-eyelet::after{content:'';position:absolute;top:7px;left:3px;width:3px;height:30px;border-radius:50%;background:linear-gradient(90deg,#952234,#e46767,#a52c3b);box-shadow:0 0 2px #f5a79755}
