.service-detail-button{display:inline-flex;align-items:center;min-height:44px;margin-top:18px;padding:10px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:500 14px Arial;cursor:pointer;pointer-events:auto}
.film-ready .service-detail-button{color:#f6c8e7}
.about-section{padding:85px 0 65px;background:#faf9fc;color:#2c2031}
.about-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.about-eyebrow{font-size:10px;letter-spacing:.15em;color:#926389}
.about-section h2{font-size:clamp(34px,4.4vw,62px);font-weight:400;line-height:1.1;letter-spacing:-.045em;margin:24px 0}.about-section h2 em{font-family:Georgia,serif;font-weight:400;color:#94477f}
.about-experience{display:flex;align-items:center;gap:20px;margin-top:30px}.about-experience strong{font-size:70px;line-height:1;font-weight:400;letter-spacing:-.06em;color:#8b3a78}.about-experience span{font-size:10px;letter-spacing:.1em;line-height:1.9;color:#8c718f}
.about-copy p{font-size:15px;line-height:1.85;color:#6b5b70;margin:0 0 18px}.about-copy .about-lead{font-size:21px;line-height:1.55;color:#39253c;letter-spacing:-.02em}
.about-purpose{display:grid;grid-template-columns:1fr 1fr;gap:6%;border-top:1px solid #e2d5e5;margin-top:40px;padding-top:35px}.about-purpose h3{font-size:23px;line-height:1.35;letter-spacing:-.025em;font-weight:400;margin:15px 0}.about-purpose p{font-size:14px;line-height:1.8;color:#6b5b70;margin:0}
.mobile-contact{display:none}
.brochure-download{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:22px 25px;border:1px solid #d9c8df;border-radius:12px;background:#f2eaf5;color:#69375f}.brochure-download strong{display:block;font-size:17px;font-weight:400}.brochure-download small{display:block;font-size:12px;color:#846c88;margin-top:8px}.brochure-action{font-size:14px;white-space:nowrap}.brochure-download:hover{background:#ebdfef}.contact-brochure{display:block;width:fit-content;font-size:13px;color:#edb8da;margin-top:25px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:500px){.brochure-download{align-items:flex-start;flex-direction:column;padding:20px}.brochure-action{align-self:flex-end}}
@media(max-width:700px){.about-section{padding:55px 0 40px}.about-layout,.about-purpose{grid-template-columns:1fr;gap:30px}.about-experience{margin:24px 0 8px}.about-experience strong{font-size:56px}.about-copy .about-lead{font-size:19px}.about-purpose{margin-top:20px;padding-top:30px}.mobile-contact:not([hidden]){display:flex;position:fixed;z-index:15;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));padding:6px;gap:6px;border:1px solid #71526e;border-radius:14px;background:#211829f5;box-shadow:0 8px 30px #0005}.mobile-contact a{display:flex;justify-content:center;align-items:center;gap:24px;min-height:46px;flex:1;border-radius:9px;color:#f2ddec;font-size:14px}.mobile-contact a:last-child{background:#edc5df;color:#32162c}body:has(dialog[open]) .mobile-contact{display:none}}
.service-guide{padding:85px 0;background:#19111f;color:#f5edf6}
.guide-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:32px}
.guide-eyebrow{font-size:10px;letter-spacing:.18em;color:#df9bc9}
.guide-heading h2,.faq-section h2{font-size:clamp(34px,4vw,54px);line-height:1.1;font-weight:400;letter-spacing:-.04em;margin:18px 0 0}
.guide-heading p,.faq-section p{font-size:15px;line-height:1.7;color:#c9b9d0}
.guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.guide-grid button{display:flex;flex-direction:column;gap:22px;text-align:left;color:inherit;font-family:inherit;border:1px solid #493449;border-radius:12px;background:linear-gradient(135deg,#ffffff06,transparent);padding:24px;cursor:pointer;transition:background .2s,border-color .2s}
.guide-grid button:hover{background:#332039;border-color:#cb8eb9}.guide-grid button:focus-visible,.faq-list summary:focus-visible{outline:3px solid #edb0da;outline-offset:4px}
.guide-number{font-size:9px;letter-spacing:.08em;color:#dba8cc}.guide-grid strong{font-weight:400;font-size:20px;line-height:1.4;letter-spacing:-.025em}
.guide-action{display:flex;justify-content:space-between;gap:10px;margin-top:auto;font-size:11px;line-height:1.5;color:#c5b0cb}.guide-action b{font-size:18px;font-weight:400;color:#f4bee0}
.guide-help{font-size:13px;line-height:1.8;color:#c9b9d0;margin:28px 0 0}.guide-help a,.faq-list a{color:#f0bedf;text-decoration:underline;text-underline-offset:4px}
.faq-section{padding:80px 0;background:#1b1422;color:#f5edf6}.faq-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:70px}
.faq-list details{border-bottom:1px solid #49364e}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:16px;line-height:1.5;padding:22px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:24px;color:#df9bc9}.faq-list details[open] summary:after{content:'−'}.faq-list details p{margin:0;padding:0 25px 24px 0;font-size:14px}
@media(max-width:1100px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-layout{gap:35px}}
@media(max-width:700px){.service-guide,.faq-section{padding:55px 0}.guide-heading{display:block}.guide-grid{gap:10px}.guide-grid button{padding:17px;gap:16px}.guide-grid strong{font-size:17px}.guide-action{font-size:10px}.guide-number{font-size:8px}.faq-layout{grid-template-columns:1fr;gap:20px}.faq-list summary{font-size:15px}}
@media(max-width:359px){.guide-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.guide-grid button{transition:none}}
.service-detail-button:focus-visible,.service-dialog button:focus-visible{outline:3px solid #d94aab;outline-offset:5px}
.service-dialog{width:min(800px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:hidden;margin:auto;padding:0;background:#211829;color:#f9f4fc;border:1px solid #74516c;border-radius:16px;box-shadow:0 30px 100px #0009}
.service-dialog[open]{display:flex;flex-direction:column}
.detail-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 24px 12px 36px;border-bottom:1px solid #ffffff15;flex-shrink:0}
.detail-body{padding:8px 36px 30px;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-color:#a474a0 #211829}
.detail-bottom{padding:16px 36px;border-top:1px solid #ffffff15;flex-shrink:0;background:#211829}
.detail-top{background:linear-gradient(110deg,#61234a44,#39265b33);border-top:3px solid #db69b4}
.detail-nav{display:flex;gap:8px;padding:12px 36px 4px;flex-shrink:0}
.detail-nav button{min-height:40px;border:1px solid #85627b;border-radius:22px;padding:8px 18px;background:transparent;color:#e9d2e4;font:13px Arial;cursor:pointer}
.detail-nav button:hover{background:#efcee41a;border-color:#edb9d9}
.detail-body .detail-section-title,.detail-process,.detail-brief{scroll-margin-top:16px}
@media(min-width:701px){.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-list li{padding:20px!important;border:1px solid #ffffff18;border-radius:10px;background:linear-gradient(135deg,#ffffff06,transparent)}.detail-list li:before{display:none}}
.service-dialog::backdrop{background:#0c0816c9;backdrop-filter:blur(8px)}
.detail-close{flex-shrink:0;width:44px;height:44px;border:0;border-radius:50%;background:#ffffff0d;color:white;font:28px Arial;cursor:pointer}
.detail-eyebrow{display:block;margin-right:20px;color:#e4a8cf;font-size:10px;letter-spacing:.15em}
.service-dialog h2{font-size:clamp(27px,4vw,38px);font-weight:500;letter-spacing:-.035em;line-height:1.15;margin:24px 0 16px}
.detail-intro{color:#d3c6da;line-height:1.7;font-size:16px}
.detail-list{list-style:none;padding:0;margin:25px 0}.detail-list li{padding:13px 0 13px 22px;border-bottom:1px solid #ffffff18;font-size:15px;line-height:1.6;position:relative}.detail-list li:before{content:'↗';position:absolute;left:0;color:#eaa4cf}
.detail-section-title{font-size:17px;font-weight:500;margin:28px 0 0;color:#f1c5e2}
.detail-list{margin-top:8px}.detail-list strong{font-weight:500;color:#fff}.detail-list p{margin:6px 0 0;color:#cfc0d5;font-size:14px;line-height:1.75}
.detail-process{padding-left:24px;margin:16px 0 28px}.detail-process li{padding:8px 0 8px 8px;font-size:14px;line-height:1.7;color:#d3c6da}.detail-process li::marker{color:#eaa4cf;font-weight:600}
.detail-brief{padding:20px;background:#ffffff06;border-radius:8px}.detail-brief h3{font-size:16px;margin:0 0 8px}.detail-brief p{font-size:14px;color:#cfc0d5;line-height:1.7;margin:0}
.detail-quote{margin:0;width:100%;min-height:48px;padding:14px;border:0;border-radius:6px;background:#efcee4;color:#30152b;font:600 14px Arial;cursor:pointer}
@media(max-width:700px){.detail-top{padding:10px 12px 10px 20px}.detail-nav{padding:10px 20px 4px}.detail-body{padding:4px 20px 24px}.detail-bottom{padding:12px 20px}.detail-eyebrow{font-size:9px;letter-spacing:.1em;margin:0}.service-detail-button{margin-top:10px;font-size:13px}.film-ready article h3{margin:12px 0}.film-ready .tags{margin-top:12px}}
@media(min-width:701px) and (max-height:700px){.service-detail-button{margin-top:8px}}
@media(max-width:700px) and (max-height:740px){.film-ready article,.js-motion .film-ready article{top:18%}.film-ready article h3{font-size:32px;line-height:1.1}.film-ready .tags{display:none}.film-ready article p{font-size:14px;line-height:1.5}}
