@charset "utf-8";

/* =========================================================
   RESET / BASE
========================================================= */
* {box-sizing:border-box; margin:0; padding:0;}
html {scroll-behavior:smooth; background:#0b0d12;}
html.rzo_modal_open,
html.rzo_sheet_open {overflow:hidden;}
body {margin:0; font-size:18px; font-family:'Paperlogy','Pretendard','Noto Sans KR',Arial,sans-serif; color:#111827; background:#fff; word-break:keep-all; overflow-wrap:break-word; -webkit-font-smoothing:antialiased;}
ul,ol {list-style:none;}
a {color:inherit; text-decoration:none;}
img {display:block; max-width:100%;}
input,select,textarea {font:inherit; color:inherit; border-radius:0; outline:none;}
input[type="button"],input[type="submit"] {appearance:none; -webkit-appearance:none; cursor:pointer;}
[hidden] {display:none !important;}
.hp_field {position:absolute !important; left:-99999px !important; width:1px !important; height:1px !important; opacity:0 !important; pointer-events:none !important;}

.rzo_site {width:100%; overflow:hidden; background:#fff;}
.rzo_container {width:min(1480px,calc(100% - 100px)); margin:0 auto;}
.rzo_container.rzo_wide_container {width:100%; max-width:none; padding-left:50px; padding-right:50px;}
.rzo_section {position:relative; padding:150px 0; text-align:center;}
.rzo_section_kicker {margin-bottom:24px; font-size:18px; line-height:1; letter-spacing:.28em; font-weight:700; color:var(--rzo-accent);}
.rzo_section h2 {font-size:clamp(44px,5.2vw,84px); line-height:.98; letter-spacing:-.05em; font-weight:700; color:#101216;}
.rzo_section_lead {max-width:800px; margin:34px auto 0; font-size:20px; line-height:1.75; color:#676d79;}
.rzo_title_en {max-width:900px; margin:22px auto 0; font-size:20px; line-height:1.5; letter-spacing:.08em; font-weight:600; color:#8a909a;}
.rzo_portfolio .rzo_title_en {color:#858b96;}




/* =========================================================
   HEADER
========================================================= */
.rzo_header {position:fixed; top:0; left:0; width:100%; height:92px; z-index:100; color:#fff; border-bottom:1px solid rgba(255,255,255,.16); transition:background .25s,border-color .25s,height .25s,color .25s;}
.rzo_header.is_scrolled {height:76px; color:#111827; background:rgba(255,255,255,.96); border-bottom-color:#e8eaf0; backdrop-filter:blur(14px);}
.rzo_header_inner {height:100%; display:flex; align-items:center; justify-content:space-between; gap:45px;}
.rzo_logo a {display:flex; align-items:center; line-height:1;}
.rzo_logo img {width:130px; height:auto;}
.rzo_navi {margin-left:auto;}
.rzo_navi ul {display:flex; align-items:center; gap:38px;}
.rzo_navi a {font-size:18px; line-height:1; font-weight:300; letter-spacing:.06em; opacity:.82; transition:opacity .2s;}
.rzo_navi a:hover {opacity:1;}
.rzo_header_contact a {display:flex; align-items:center; height:42px; padding:0 20px; border:1px solid currentColor; font-size:18px; font-weight:300; letter-spacing:.02em;}




/* =========================================================
   HERO
========================================================= */
.rzo_hero {position:relative; height:100svh; min-height:760px; color:#fff; background:#090b10; overflow:hidden; text-align:center;}
.rzo_hero_video,
.rzo_hero_fallback,
.rzo_hero_dim {position:absolute; inset:0;}
.rzo_hero_video {overflow:hidden; pointer-events:none;}
.rzo_hero_video iframe {position:absolute; top:50%; left:50%; width:177.77777778vh; min-width:100%; height:56.25vw; min-height:100%; transform:translate(-50%,-50%); pointer-events:none;}
.rzo_hero_fallback {background:radial-gradient(circle at 30% 30%,#273456 0,#111827 34%,#090b10 76%);}
.rzo_hero_dim {background:#02040a; pointer-events:none;}
.rzo_hero_content {position:relative; z-index:2; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding-top:65px;}
.rzo_hero_eyebrow {margin-bottom:30px; font-size:18px; font-weight:600; letter-spacing:.28em; opacity:.75;}
.rzo_hero h1 {max-width:1040px; font-size:clamp(52px,6vw,96px); line-height:1.08; letter-spacing:-.055em; font-weight:700;}
.rzo_hero_title_en {margin-top:28px; font-size:22px; line-height:1.4; letter-spacing:.12em; font-weight:600; color:rgba(255,255,255,.72);}
.rzo_hero p {max-width:700px; margin-top:34px; font-size:20px; line-height:1.7; font-weight:300; color:rgba(255,255,255,.78);}
.rzo_hero_keywords {display:flex; flex-wrap:wrap; justify-content:center; gap:9px 25px; margin-top:42px; font-size:18px; letter-spacing:.19em; color:rgba(255,255,255,.62);}
.rzo_scroll_down {position:absolute; z-index:3; left:50%; bottom:30px; transform:translateX(-50%); display:flex; gap:10px; align-items:center; font-size:18px; letter-spacing:.08em; opacity:.72;}
.rzo_scroll_down span {font-size:18px;}




/* =========================================================
   ABOUT
========================================================= */
.rzo_about {background:#fff;}
.rzo_about_year {margin-bottom:18px; font-size:18px; letter-spacing:.08em; color:#8d94a0;}
.rzo_about_year strong {font-size:clamp(64px,8vw,128px); letter-spacing:-.07em; line-height:.8; color:#111827; vertical-align:middle; margin-left:8px;}
.rzo_about h2 {max-width:1100px; margin:40px auto 0;}
.rzo_about_points {margin-top:80px; border-top:1px solid #e8eaf0; border-bottom:1px solid #e8eaf0;}
.rzo_about_points ul {display:grid; grid-template-columns:repeat(4,1fr);}
.rzo_about_points li {min-height:190px; padding:45px 25px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-right:1px solid #e8eaf0;}
.rzo_about_points li:last-child {border-right:0;}
.rzo_about_points strong {font-size:36px; line-height:1; letter-spacing:-.04em;}
.rzo_about_points span {margin-top:15px; font-size:18px; letter-spacing:.16em; color:#858b96;}




/* =========================================================
   SERVICES
========================================================= */
.rzo_services {background:#f5f6f8;}
.rzo_services h2 {margin-bottom:0;}
.rzo_services .rzo_title_en {margin-bottom:75px;}
.rzo_service_list {border-top:1px solid #cfd3db;}
.rzo_service_list li {display:grid; grid-template-columns:90px minmax(250px,1fr) 1.45fr; gap:30px; align-items:center; min-height:145px; padding:30px 22px; border-bottom:1px solid #cfd3db; text-align:left; transition:background .2s,transform .2s;}
.rzo_service_list li:hover {background:#fff; transform:translateX(5px);}
.rzo_service_list li > span {font-size:18px; color:#8c919c;}
.rzo_service_list strong {font-size:33px; letter-spacing:-.04em;}
.rzo_service_list p {font-size:18px; line-height:1.7; color:#6c727d;}




/* =========================================================
   PORTFOLIO
========================================================= */
.rzo_portfolio {background:#101216; color:#fff;}
.rzo_portfolio h2 {color:#fff;}
.rzo_portfolio .rzo_section_lead {color:#999faa;}
.rzo_portfolio_tabs {margin-top:65px; overflow:auto hidden; scrollbar-width:none;}
.rzo_portfolio_tabs::-webkit-scrollbar,
.rzo_photo_tabs::-webkit-scrollbar {display:none;}
.rzo_portfolio_tabs ul {display:flex; width:max-content; min-width:100%; justify-content:center; gap:10px;}
.rzo_portfolio_tabs a {display:flex; align-items:center; justify-content:center; min-width:112px; height:48px; padding:0 22px; border:1px solid #3a3d45; font-size:18px; color:#979ca7; transition:.2s;}
.rzo_portfolio_tabs a.on,
.rzo_portfolio_tabs a:hover {color:#111827; background:#fff; border-color:#fff;}
.rzo_photo_tabs {margin-top:18px; overflow:auto hidden; scrollbar-width:none;}
.rzo_photo_tabs ul {display:flex; width:max-content; min-width:100%; justify-content:center; gap:20px;}
.rzo_photo_tabs a {position:relative; display:block; padding:8px 2px; font-size:18px; color:#777d88;}
.rzo_photo_tabs a.on {color:#fff;}
.rzo_photo_tabs a.on:after {content:''; position:absolute; left:0; right:0; bottom:0; height:1px; background:#fff;}
.rzo_portfolio_grid {--rzo-cols:4; display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; margin:54px -10px -34px;}
.rzo_portfolio_item {width:calc(100% / var(--rzo-cols)); padding:0 10px 34px; text-align:left;}
.rzo_work_card,
.rzo_video_card,
.rzo_photo_card {display:block; width:100%; color:#fff;}
.rzo_work_image,
.rzo_video_thumb,
.rzo_photo_view {position:relative; width:100%; aspect-ratio:4/3; background:#1b1e25; overflow:hidden;}
.rzo_work_image img,
.rzo_video_thumb img,
.rzo_photo_view img {width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.rzo_work_card:hover .rzo_work_image img,
.rzo_video_card:hover .rzo_video_thumb img {transform:scale(1.035);}
.rzo_work_image > span {position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:18px; letter-spacing:.12em; color:#59606d;}
.rzo_work_info,
.rzo_video_info,
.rzo_photo_info {padding:22px 4px 0;}
.rzo_work_meta,
.rzo_video_info > span,
.rzo_photo_info > span {font-size:18px; line-height:1.3; letter-spacing:.08em; color:#737985;}
.rzo_work_info h3,
.rzo_video_info h3,
.rzo_photo_info h3 {margin-top:9px; font-size:22px; line-height:1.3; letter-spacing:-.03em; font-weight:600;}
.rzo_work_info p,
.rzo_video_info p,
.rzo_photo_info p {margin-top:10px; font-size:18px; line-height:1.65; color:#858b96;}
.rzo_work_links {display:flex; flex-wrap:wrap; gap:9px 16px; margin-top:16px;}
.rzo_work_links a {font-size:18px; line-height:1; letter-spacing:.1em; color:#c8cbd1; border-bottom:1px solid #555b66; padding-bottom:5px;}
.rzo_play_icon {position:absolute; top:50%; left:50%; width:70px; height:70px; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,.92); color:#111827; font-size:25px; box-shadow:0 10px 35px rgba(0,0,0,.24);}
.rzo_photo_view ul,
.rzo_photo_view li {position:absolute; inset:0;}
.rzo_photo_view li {opacity:0; transition:opacity .35s;}
.rzo_photo_view li.on {opacity:1;}
.rzo_photo_prev,
.rzo_photo_next {position:absolute; z-index:2; top:50%; width:40px; height:40px; margin-top:-20px; display:flex; align-items:center; justify-content:center; border-radius:50%; color:#fff; background:rgba(0,0,0,.46); font-size:30px; line-height:1;}
.rzo_photo_prev {left:12px;}
.rzo_photo_next {right:12px;}
.rzo_photo_count {position:absolute; z-index:2; right:13px; bottom:12px; padding:6px 9px; border-radius:20px; background:rgba(0,0,0,.55); font-size:18px; color:#fff;}
.rzo_photo_count b {font-weight:600;}
.rzo_more_wrap {display:flex; justify-content:center; margin-top:60px;}
.rzo_more {display:inline-flex; align-items:center; gap:20px; height:56px; padding:0 30px; border:1px solid #454952; font-size:18px; letter-spacing:.13em; color:#d9dce2;}
.rzo_more span {font-size:19px; font-weight:300;}
.rzo_more:hover {background:#fff; color:#111827; border-color:#fff;}

.rzo_video_modal {position:fixed; inset:0; z-index:100000;}
.rzo_video_modal_bg {position:absolute; inset:0; background:rgba(0,0,0,.86);}
.rzo_video_modal_box {position:absolute; top:50%; left:50%; width:min(1100px,calc(100% - 70px)); transform:translate(-50%,-50%);}
.rzo_video_modal_close {position:absolute; right:0; top:-50px; z-index:2; font-size:42px; line-height:1; color:#fff; font-weight:200;}
.rzo_video_modal_frame {position:relative; width:100%; aspect-ratio:16/9; background:#000;}
.rzo_video_modal-frame iframe,
.rzo_video_modal_frame iframe {position:absolute; inset:0; width:100%; height:100%;}




/* =========================================================
   WHY RZO
========================================================= */
.rzo_strength {background:#fff;}
.rzo_strength h2 {margin-bottom:0;}
.rzo_strength .rzo_title_en {margin-bottom:78px;}
.rzo_strength_grid ul {display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #dadde3; border-left:1px solid #dadde3;}
.rzo_strength_grid li {min-height:300px; padding:45px 34px; text-align:left; border-right:1px solid #dadde3; border-bottom:1px solid #dadde3;}
.rzo_strength_grid li > span {display:block; margin-bottom:60px; font-size:18px; color:#8a909a;}
.rzo_strength_grid h3 {font-size:26px; letter-spacing:-.035em;}
.rzo_strength_grid p {margin-top:18px; font-size:18px; line-height:1.75; color:#717782;}




/* =========================================================
   PARTNERS
========================================================= */
.rzo_partners {background:#f5f6f8;}
.rzo_partner_grid {--rzo-partner-cols:6; display:flex; flex-wrap:wrap; justify-content:center; margin:65px -7px -14px;}
.rzo_partner_item {width:calc(100% / var(--rzo-partner-cols)); padding:0 7px 14px;}
.rzo_partner_item > a,
.rzo_partner_item > img {display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:2.2/1; padding:24px; background:#fff; border:1px solid #e6e8ed; transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;}
.rzo_partner_item img {width:100%; height:100%; object-fit:contain; filter:none; opacity:1; transition:transform .28s ease;}
.rzo_partner_item > img {object-fit:contain;}
.rzo_partner_item:hover > a,
.rzo_partner_item:hover > img {transform:scale(1.025); border-color:#d9dde5; box-shadow:0 12px 28px rgba(17,24,39,.08);}
.rzo_partner_item:hover img {transform:scale(1.03); filter:none; opacity:1;}
.rzo_partners .rzo_more {color:#555b65; border-color:#cfd3da;}
.rzo_partners .rzo_more:hover {background:#111827; color:#fff; border-color:#111827;}




/* =========================================================
   CONTACT
========================================================= */
.rzo_contact {padding-bottom:190px; background:#111827; color:#fff;}
.rzo_contact_head {display:block; text-align:center; padding-bottom:55px; border-bottom:1px solid #343841;}
.rzo_contact_head h2 {color:#fff; font-size:clamp(52px,6vw,96px);}
.rzo_contact_title_en {margin-left:auto; margin-right:auto; color:#777e89; text-align:center;}
.rzo_contact_head > p {max-width:760px; margin:30px auto 0; padding:0; font-size:18px; line-height:1.7; color:#9ba1ac; text-align:center;}
.rzo_detail_form {margin-top:35px;}
.rzo_contact_fields {display:grid; grid-template-columns:repeat(2,1fr); gap:0 50px; text-align:left;}
.rzo_contact_field {padding:25px 0 28px; border-bottom:1px solid #343841;}
.rzo_contact_field_textarea {grid-column:1/-1;}
.rzo_contact_label {margin-bottom:12px; font-size:18px; letter-spacing:.04em; color:#8e949f;}
.rzo_contact_label strong {margin-left:3px; color:var(--rzo-accent);}
.rzo_contact_control .write_input_text,
.rzo_contact_control .write_input_select,
.rzo_contact_control .write_input_text2,
.rzo_contact_control input[type="text"],
.rzo_contact_control input[type="tel"],
.rzo_contact_control input[type="number"],
.rzo_contact_control input[type="date"],
.rzo_contact_control select,
.rzo_contact_control textarea {width:100%; min-height:48px; padding:0; border:0; border-bottom:0; background:transparent; color:#fff; font-size:18px;}
.rzo_contact_control textarea {height:150px; padding-top:5px; resize:vertical; line-height:1.7;}
.rzo_contact_control select {background:#111827;}
.rzo_contact_control option {background:#fff; color:#111827;}
.rzo_contact_control ::placeholder {color:#5d636e;}
.rzo_email_field {display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px;}
.rzo_email_field .rzo_email_direct {grid-column:1/-1; margin-top:10px;}
.rzo_email_at {color:#777e89;}
.rzo_dynamic_choice + label,
.rzo_contact_control label {cursor:pointer;}
.rzo_contact_control > span {display:inline-flex; align-items:center; gap:6px; margin:8px 20px 8px 0; font-size:18px; color:#d9dce2;}
.rzo_other_input {margin-top:12px !important;}
.rzo_contact_privacy {display:flex; align-items:center; justify-content:flex-start; gap:18px; margin-top:26px; font-size:18px; color:#9399a4; text-align:left;}
.rzo_contact_privacy label {display:flex; align-items:center; gap:8px;}
.rzo_contact_privacy a {color:#fff; border-bottom:1px solid #666c76; padding-bottom:2px;}
.rzo_contact_submit {display:flex; justify-content:center; margin-top:46px;}
.rzo_contact_submit input {width:min(360px,100%); height:72px; border:1px solid #fff; color:#111827; background:#fff; font-size:18px; font-weight:700; letter-spacing:.02em; transition:.2s;}
.rzo_contact_submit input:hover {color:#fff; background:var(--rzo-accent); border-color:var(--rzo-accent);}




/* =========================================================
   QUICK INQUIRY
========================================================= */
.rzo_quickbar {position:fixed; left:0; bottom:0; z-index:90; width:100%; height:96px; background:rgba(8,10,15,.97); color:#fff; border-top:1px solid rgba(255,255,255,.12); backdrop-filter:blur(12px);}
.rzo_quickbar_inner {height:100%; display:grid; grid-template-columns:minmax(190px,260px) minmax(0,900px); align-items:center; justify-content:center; gap:26px;}
.rzo_quickbar_contact {min-width:0; text-align:left;}
.rzo_quickbar_slogan {display:block; margin-bottom:5px; font-size:18px; line-height:1.3; font-weight:300; letter-spacing:.02em; color:#8f96a2;}
.rzo_quickbar_phone {display:inline-block; font-size:27px; line-height:1; font-weight:700; letter-spacing:-.03em; color:#fff; white-space:nowrap;}
.rzo_quick_form {display:grid; grid-template-columns:minmax(95px,.65fr) minmax(120px,.78fr) minmax(160px,1.2fr) auto auto; align-items:center; gap:8px; min-width:0; width:100%;}
.rzo_quick_field {min-width:0; width:auto;}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {width:100%; min-width:0; height:46px; padding:0 13px; color:#e8eaf0; background:#191c23; border:1px solid #2d313a; font-size:18px; resize:none;}
.rzo_quick_field select option {background:#fff; color:#111827;}
.rzo_quick_privacy {display:flex; align-items:center; justify-content:center; gap:12px; margin:0 12px; padding:0 5px; white-space:nowrap; font-size:18px; color:#858c98;}
.rzo_quick_privacy label {display:flex; align-items:center; gap:7px;}
.rzo_quick_privacy_link {margin-left:4px; color:#d9dce2; border-bottom:1px solid #5a606b; padding-bottom:2px;}
.rzo_quick_submit {min-width:126px; height:46px; padding:0 16px; border:0; background:var(--rzo-accent); color:#fff; font-size:18px; font-weight:700; white-space:nowrap;}
.rzo_inquiry_toast {position:fixed; z-index:100010; left:50%; bottom:125px; transform:translate(-50%,15px); min-width:280px; max-width:calc(100% - 40px); padding:16px 24px; color:#fff; background:#111827; box-shadow:0 10px 40px rgba(0,0,0,.2); text-align:center; font-size:18px; opacity:0; transition:.3s;}
.rzo_inquiry_toast.on {opacity:1; transform:translate(-50%,0);}




/* =========================================================
   FOOTER
========================================================= */
.rzo_footer {padding:80px 0 145px; background:#090b10; color:#fff; text-align:left;}
.rzo_footer_top {display:flex; align-items:flex-end; justify-content:space-between; padding-bottom:35px; border-bottom:1px solid #282b31;}
.rzo_footer_brand a {display:inline-flex; align-items:center;}
.rzo_footer_brand img {width:200px; height:auto;}
.rzo_to_top {font-size:18px; letter-spacing:.13em; color:#8e949f;}
.rzo_footer_info {margin-top:30px;}
.rzo_footer_info ul {display:flex; flex-wrap:wrap; gap:8px 22px;}
.rzo_footer_info li {font-size:18px; line-height:1.5; color:#737985;}
.rzo_footer_copy {margin-top:20px; font-size:18px; letter-spacing:.04em; color:#4c515a;}
.rzo_footer_copy a {color:inherit;}




/* =========================================================
   SCROLL MOTION
========================================================= */
.rzo_motion_ready .rzo_reveal {opacity:0; transform:translateY(34px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1); transition-delay:var(--rzo-reveal-delay,0ms); will-change:opacity,transform;}
.rzo_motion_ready .rzo_reveal.rzo_reveal_left {transform:translateX(-34px);}
.rzo_motion_ready .rzo_reveal.rzo_reveal_right {transform:translateX(34px);}
.rzo_motion_ready .rzo_reveal.rzo_revealed {opacity:1; transform:translate3d(0,0,0);}
@media (prefers-reduced-motion:reduce) {
    .rzo_motion_ready .rzo_reveal {opacity:1; transform:none; transition:none;}
}




/* =========================================================
   RZO POPUP
========================================================= */
.rzo_popup_group {position:absolute; top:0; left:0; width:100%; height:0; z-index:120; pointer-events:none;}
.rzo_popup {position:fixed; max-width:calc(100vw - 20px); background:#fff; border:var(--popup-border-width,0) solid var(--popup-border-color,#fff); box-shadow:0 8px 35px rgba(0,0,0,.28); overflow:hidden; cursor:move; pointer-events:auto;}
.rzo_popup.rzo_popup_absolute {position:absolute;}
.rzo_popup_contents {width:100%; height:calc(100% - 42px); overflow:auto; cursor:auto;}
.rzo_popup_contents img {max-width:100%; height:auto;}
.rzo_popup.dragging {cursor:grabbing;}
.rzo_popup.rzo_popup_image,
.rzo_popup.rzo_popup_youtube {height:auto !important;}
.rzo_popup.rzo_popup_image .rzo_popup_contents,
.rzo_popup.rzo_popup_youtube .rzo_popup_contents {height:auto; overflow:hidden; font-size:0; line-height:0;}
.rzo_popup_image_file {display:block; width:100%; height:auto;}
.rzo_popup_video_box {position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden;}
.rzo_popup_video_box.rzo_popup_video_shorts {aspect-ratio:9/16;}
.rzo_popup_video_box iframe {position:absolute; inset:0; width:100%; height:100%;}
.rzo_popup_btn {display:flex; background:#111;}
.rzo_popup_btn input {flex:1; height:42px; border:0; border-left:1px solid rgba(255,255,255,.15); color:#fff; background:#111; font-size:18px;}
.rzo_popup_close_all {position:fixed; left:50%; bottom:25px; transform:translateX(-50%); z-index:999999; height:44px; padding:0 28px; color:#fff; background:rgba(0,0,0,.88); border:1px solid rgba(255,255,255,.25); border-radius:24px; box-shadow:0 4px 18px rgba(0,0,0,.25); white-space:nowrap;}




/* =========================================================
   PRIVACY WINDOW
========================================================= */
.privacy_body {background:#fff;}
.privacy_wrap {width:100%; padding:22px;}
.privacy_title {padding:8px 0 13px; border-bottom:2px solid #111827; font-size:23px; line-height:1.35; font-weight:650;}
.privacy_comment {padding-top:8px; font-size:18px; line-height:1.75; color:#4f5661;}
.privacy_comment li {position:relative; padding:8px 0 8px 14px;}
.privacy_comment li:before {content:'•'; position:absolute; top:8px; left:0;}
.privacy_close {margin-top:18px; text-align:center;}
.privacy_close input {height:42px; padding:0 28px; border:0; color:#fff; background:#111827;}




/* =========================================================
   TABLET / MOBILE
========================================================= */
@media (max-width:1100px) {
    .rzo_container {width:min(100% - 50px,1480px);}
    .rzo_container.rzo_wide_container {width:100%; padding-left:25px; padding-right:25px;}
    .rzo_navi {display:none;}
    .rzo_header_contact {margin-left:auto;}
    .rzo_service_list li {grid-template-columns:60px .8fr 1.2fr;}
    .rzo_about_points ul,
    .rzo_strength_grid ul {grid-template-columns:repeat(2,1fr);}
    .rzo_about_points li:nth-child(2) {border-right:0;}
    .rzo_about_points li:nth-child(-n+2) {border-bottom:1px solid #e8eaf0;}
    .rzo_quickbar {height:128px;}
    .rzo_quickbar_inner {display:flex; flex-direction:column; justify-content:center; gap:9px;}
    .rzo_quickbar_contact {display:flex; align-items:center; justify-content:center; gap:18px; width:100%; text-align:center;}
    .rzo_quickbar_slogan {margin:0;}
    .rzo_quickbar_phone {font-size:24px;}
    .rzo_quick_form {width:min(100%,880px); grid-template-columns:minmax(95px,.65fr) minmax(120px,.8fr) minmax(160px,1.2fr) auto auto;}
    .rzo_quick_privacy {margin:0 7px;}
}

@media (max-width:750px) {
    body {font-size:15px;}
    .rzo_container {width:calc(100% - 36px);}
    .rzo_container.rzo_wide_container {width:100%; padding-left:18px; padding-right:18px;}
    .rzo_section {padding:90px 0;}
    .rzo_section_kicker {margin-bottom:18px; font-size:15px;}
    .rzo_section h2 {font-size:42px; line-height:1.02;}
    .rzo_section_lead {margin-top:23px; font-size:15px; line-height:1.72;}
    .rzo_title_en {margin-top:16px; font-size:15px; line-height:1.55; letter-spacing:.05em;}

    .rzo_header {height:68px;}
    .rzo_logo img {width:135px;}
    .rzo_header.is_scrolled {height:62px;}
    .rzo_logo img {width:150px;}
    .rzo_header_contact a {height:38px; padding:0 13px; font-size:15px;}

    .rzo_hero {min-height:660px;}
    .rzo_hero_content {padding-top:50px;}
    .rzo_hero_eyebrow {margin-bottom:24px; font-size:15px; letter-spacing:.2em;}
    .rzo_hero h1 {font-size:42px; line-height:1.15; letter-spacing:-.045em;}
    .rzo_hero_title_en {margin-top:20px; font-size:15px; line-height:1.5; letter-spacing:.08em;}
    .rzo_hero p {margin-top:26px; font-size:15px; line-height:1.65;}
    .rzo_hero_keywords {gap:8px 15px; margin-top:30px; font-size:15px;}
    .rzo_scroll_down {bottom:18px;}

    .rzo_about_year {font-size:15px;}
    .rzo_about_year strong {display:block; margin:14px 0 0; font-size:80px;}
    .rzo_about h2 {margin-top:28px;}
    .rzo_about_points {margin-top:50px;}
    .rzo_about_points li {min-height:132px; padding:26px 12px;}
    .rzo_about_points strong {font-size:27px;}
    .rzo_about_points span {font-size:15px;}

    .rzo_services h2 {margin-bottom:0;}
    .rzo_services .rzo_title_en {margin-bottom:48px;}
    .rzo_service_list li {display:block; min-height:0; padding:28px 4px; text-align:center;}
    .rzo_service_list li:hover {transform:none;}
    .rzo_service_list li > span {display:block; margin-bottom:10px;}
    .rzo_service_list strong {font-size:25px;}
    .rzo_service_list p {margin-top:10px; font-size:15px;}

    .rzo_portfolio_tabs {margin-top:45px; margin-left:-18px; margin-right:-18px; padding:0 18px;}
    .rzo_portfolio_tabs ul {justify-content:flex-start; min-width:max-content;}
    .rzo_portfolio_tabs a {min-width:auto; height:44px; padding:0 17px; font-size:15px;}
    .rzo_photo_tabs {margin-left:-18px; margin-right:-18px; padding:0 18px;}
    .rzo_photo_tabs ul {justify-content:flex-start; min-width:max-content;}
    .rzo_portfolio_grid {margin:38px -5px -25px;}
    .rzo_portfolio_item {padding:0 5px 25px;}
    .rzo_work_info,
    .rzo_video_info,
    .rzo_photo_info {padding-top:14px;}
    .rzo_work_info h3,
    .rzo_video_info h3,
    .rzo_photo_info h3 {font-size:17px;}
    .rzo_work_info p,
    .rzo_video_info p,
    .rzo_photo_info p {font-size:15px; line-height:1.55;}
    .rzo_work-links,
    .rzo_work_links {gap:7px 10px; margin-top:12px;}
    .rzo_play_icon {width:50px; height:50px; font-size:19px;}
    .rzo_photo_prev,
    .rzo_photo_next {width:34px; height:34px; margin-top:-17px;}
    .rzo_more_wrap {margin-top:42px;}
    .rzo_more {height:50px; padding:0 25px;}
    .rzo_video_modal_box {width:calc(100% - 28px);}

    .rzo_strength h2 {margin-bottom:0;}
    .rzo_strength .rzo_title_en {margin-bottom:48px;}
    .rzo_strength_grid li {min-height:220px; padding:28px 20px;}
    .rzo_strength_grid li > span {margin-bottom:35px;}
    .rzo_strength_grid h3 {font-size:21px;}
    .rzo_strength_grid p {font-size:15px;}

    .rzo_partner_grid {margin:45px -4px -8px;}
    .rzo_partner_item {padding:0 4px 8px;}
    .rzo_partner_item > a,
    .rzo_partner_item > img {padding:12px;}

    .rzo_contact {padding-bottom:110px;}
    .rzo_contact_head {display:block; padding-bottom:35px; text-align:center;}
    .rzo_contact_head > p {margin:25px auto 0; padding:0; font-size:15px;}
    .rzo_contact_fields {display:block;}
    .rzo_contact_field {padding:20px 0;}
    .rzo_contact-control .write_input_text,
    .rzo_contact_control .write_input_text,
    .rzo_contact_control .write_input_select,
    .rzo_contact_control .write_input_text2,
    .rzo_contact_control input,
    .rzo_contact_control select,
    .rzo_contact_control textarea {font-size:16px;}
    .rzo_contact_privacy {flex-wrap:wrap; justify-content:center; font-size:15px;}
    .rzo_contact_submit {margin-top:35px;}
    .rzo_contact_submit input {height:60px;}

    .rzo_quickbar {height:158px; padding-bottom:env(safe-area-inset-bottom);}
    .rzo_quickbar_inner {display:flex; flex-direction:column; justify-content:center; gap:8px; padding-left:12px; padding-right:12px;}
    .rzo_quickbar_contact {display:block; width:100%; text-align:center;}
    .rzo_quickbar_slogan {margin:0 0 2px; font-size:15px; line-height:1.25; letter-spacing:0;}
    .rzo_quickbar_phone {font-size:22px; line-height:1.05;}
    .rzo_quick_form {display:grid; width:100%; grid-template-columns:.78fr .95fr 1.35fr; grid-template-areas:"name phone content" "privacy privacy submit"; gap:6px;}
    .rzo_quick_name {grid-area:name;}
    .rzo_quick_phone {grid-area:phone;}
    .rzo_quick_content {grid-area:content;}
    .rzo_quick_field input,
    .rzo_quick_field select,
    .rzo_quick_field textarea {height:38px; padding:0 8px; font-size:15px;}
    .rzo_quick_privacy {grid-area:privacy; justify-content:flex-start; gap:8px; margin:0; padding:0 8px; font-size:15px; overflow:visible;}
    .rzo_quick_privacy label {gap:5px;}
    .rzo_quick_privacy_link {margin-left:5px;}
    .rzo_quick_submit {grid-area:submit; min-width:0; width:100%; height:38px; padding:0 8px; font-size:15px;}
    .rzo_inquiry_toast {bottom:178px;}

    .rzo_footer {padding:60px 0 calc(185px + env(safe-area-inset-bottom)); text-align:center;}
    .rzo_footer_top {display:block; text-align:center;}
    .rzo_footer_brand img {width:165px;}
    .rzo_to_top {display:inline-block; margin-top:25px;}
    .rzo_footer_info ul {justify-content:center; gap:6px 13px;}
    .rzo_footer_info li {font-size:15px;}
    .rzo_footer_copy {font-size:15px;}

    .rzo_popup {left:10px !important; top:10px !important; width:calc(100% - 20px) !important; border-width:var(--popup-border-width-mobile,0);}
    .rzo_popup_close_all {bottom:80px; height:42px; padding:0 20px; font-size:15px;}
}

@media (max-width:420px) {
    .rzo_quickbar {height:166px;}
    .rzo_quickbar_inner {padding-left:8px; padding-right:8px;}
    .rzo_quick_form {gap:5px;}
    .rzo_quick_field input,
    .rzo_quick_field textarea {padding:0 6px;}
    .rzo_quick_privacy {padding:0 4px; gap:5px; font-size:15px;}
    .rzo_quick_submit {padding:0 5px;}
    .rzo_inquiry_toast {bottom:186px;}
    .rzo_footer {padding-bottom:calc(193px + env(safe-area-inset-bottom));}
    .rzo_hero h1 {font-size:38px; line-height:1.16;}
    .rzo_section h2 {font-size:37px;}
    .rzo_about_points strong {font-size:24px;}
    .rzo_strength_grid h3 {font-size:18px;}
    .rzo_strength_grid li {padding:24px 14px;}
}





/* =========================================================
   COMPLETE
========================================================= */
.complete_body {min-height:100vh; display:flex; align-items:center; justify-content:center; padding:28px 24px; background:#fff; text-align:center;}
.complete_box {width:100%; max-width:460px; padding:28px 24px 24px; background:#fff;}
.complete_logo {display:flex; align-items:center; justify-content:center; min-height:88px; padding-bottom:23px; border-bottom:2px solid #111827;}
.complete_logo img {display:block; width:178px; max-width:72%; height:auto;}
.complete_box strong {display:block; margin-top:31px; font-size:24px; line-height:1.45; font-weight:700; letter-spacing:-.035em; color:#111827;}
.complete_box p {margin-top:11px; font-size:17px; line-height:1.65; font-weight:400; letter-spacing:-.02em; color:#727986;}
.complete_box input[type="button"] {margin-top:30px; min-width:140px; height:46px; padding:0 30px; border:1px solid #111827; background:#111827; color:#fff; font-size:16px; font-weight:600;}
.complete_box input[type="button"]:hover {background:var(--rzo-accent); border-color:var(--rzo-accent); color:#111827;}






/* =========================================================
   RZO BRAND REFINEMENT V1.10
========================================================= */
:root {
    --rzo-accent:#fec734;
    --rzo-accent-dark:#d8a600;
    --rzo-ink:#101216;
    --rzo-deep:#0b0e14;
    --rzo-soft:#f6f6f4;
    --rzo-line:#e2e3e6;
    --rzo-quickbar-height:94px;
}

.rzo_section_kicker {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    color:var(--rzo-accent);
    font-weight:600;
    letter-spacing:.24em;
}
.rzo_section_kicker:after {
    content:'';
    width:34px;
    height:1px;
    background:currentColor;
    opacity:.78;
}
.rzo_section h2 {
    font-weight:650;
    letter-spacing:-.045em;
}
.rzo_section_lead {
    color:#626873;
}
.rzo_title_en {
    font-weight:400;
    letter-spacing:.12em;
}

.rzo_header {
    border-bottom-color:rgba(255,255,255,.13);
}
.rzo_header.is_scrolled {
    box-shadow:0 1px 0 rgba(17,24,39,.035);
}
.rzo_navi ul {
    gap:42px;
}
.rzo_navi a {
    position:relative;
    font-weight:300;
}
.rzo_navi a:after {
    content:'';
    position:absolute;
    left:0;
    right:100%;
    bottom:-11px;
    height:1px;
    background:var(--rzo-accent);
    transition:right .25s ease;
}
.rzo_navi a:hover:after {
    right:0;
}

.rzo_services {
    background:#f6f6f4;
}
.rzo_service_list li {
    position:relative;
    transition:background .25s ease,transform .25s ease,color .25s ease;
}
.rzo_service_list li:before {
    content:'';
    position:absolute;
    left:0;
    top:-1px;
    width:0;
    height:2px;
    background:var(--rzo-accent);
    transition:width .32s ease;
}
.rzo_service_list li:hover:before {
    width:100%;
}
.rzo_service_list li:hover > span {
    color:var(--rzo-accent-dark);
}

.rzo_portfolio {
    background:#0c0f14;
}
.rzo_portfolio_tabs a.on,
.rzo_portfolio_tabs a:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}
.rzo_photo_tabs a.on:after {
    background:var(--rzo-accent);
}
.rzo_work_card,
.rzo_video_card,
.rzo_photo_card {
    transition:transform .28s ease;
}
.rzo_work_card:hover,
.rzo_video_card:hover,
.rzo_photo_card:hover {
    transform:translateY(-4px);
}
.rzo_work_links a {
    transition:color .2s ease,border-color .2s ease;
}
.rzo_work_links a:hover {
    color:var(--rzo-accent);
    border-color:var(--rzo-accent);
}
.rzo_card_category {
    display:none;
}
.rzo_portfolio_grid[data-active-category="all"] .rzo_card_category {
    display:block;
}
.rzo_more {
    transition:background .22s ease,color .22s ease,border-color .22s ease;
}
.rzo_portfolio .rzo_more:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}

.rzo_strength_grid li {
    position:relative;
    transition:background .24s ease;
}
.rzo_strength_grid li:before {
    content:'';
    position:absolute;
    left:-1px;
    right:-1px;
    top:-1px;
    height:2px;
    background:transparent;
    transition:background .24s ease;
}
.rzo_strength_grid li:hover {
    background:#faf9f5;
}
.rzo_strength_grid li:hover:before {
    background:var(--rzo-accent);
}

.rzo_partners {
    background:#f5f5f3;
}
.rzo_partner_item > a,
.rzo_partner_item > img {
    padding:10px;
    border-color:#dedfdf;
    transition:transform .28s ease,border-color .28s ease,background .28s ease;
}
.rzo_partner_item img {
    width:100%;
    height:100%;
    max-width:96%;
    max-height:90%;
}
.rzo_partner_item:hover > a,
.rzo_partner_item:hover > img {
    transform:scale(1.025);
    border-color:#cfc9b7;
    box-shadow:none;
}
.rzo_partner_item:hover img {
    transform:scale(1.055);
}
.rzo_partners .rzo_more:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}

.rzo_contact {
    background:#101722;
}
.rzo_contact_label strong {
    color:var(--rzo-accent);
}
.rzo_contact_submit input:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}

.rzo_quickbar {
    height:var(--rzo-quickbar-height);
    background:var(--rzo-accent);
    color:#111;
    border-top:0;
    backdrop-filter:none;
}
.rzo_quickbar_inner {
    height:100%;
    grid-template-columns:minmax(330px,430px) minmax(0,820px);
    gap:28px;
}
.rzo_quickbar_contact {
    display:flex;
    align-items:center;
    gap:16px;
    min-width:0;
    color:#fff;
}
.rzo_quickbar_symbol {
    flex:0 0 48px;
    width:48px;
}
.rzo_quickbar_symbol img {
    width:100%;
    height:auto;
}
.rzo_quickbar_text {
    display:flex;
    align-items:baseline;
    gap:14px;
    min-width:0;
}
.rzo_quickbar_slogan {
    margin:0;
    color:rgba(255,255,255,.88);
    font-weight:400;
    white-space:nowrap;
}
.rzo_quickbar_phone {
    color:#fff;
    font-size:28px;
    white-space:nowrap;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    color:#111827;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(17,24,39,.13);
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:#77735f;
}
.rzo_quick_privacy {
    color:#4a3a12;
}
.rzo_quick_privacy_link {
    color:#31270d;
    border-color:rgba(49,39,13,.42);
}
.rzo_quick_submit {
    color:#fff;
    background:#101722;
    transition:background .2s ease,color .2s ease;
}
.rzo_quick_submit:hover {
    color:#101722;
    background:#fff;
}

.rzo_to_top_fixed {
    position:fixed;
    z-index:91;
    right:30px;
    bottom:calc(var(--rzo-quickbar-height) + 18px);
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    border:1px solid #d7d9dd;
    background:#fff;
    color:#111827;
    font-size:24px;
    line-height:1;
    letter-spacing:0;
    transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.rzo_to_top_fixed:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
    transform:translateY(-2px);
}

.rzo_footer {
    background:#090b10;
}
.rzo_footer_top {
    align-items:center;
}
.rzo_footer_brand img {
    width:205px;
}





/* =========================================================
   RZO BRAND REFINEMENT V1.10 - RESPONSIVE
========================================================= */
@media (max-width:1100px) {
    :root {
        --rzo-quickbar-height:132px;
    }

    .rzo_quickbar_inner {
        display:flex;
        flex-direction:column;
        justify-content:center;
        gap:8px;
    }
    .rzo_quickbar_contact {
        justify-content:center;
        width:100%;
        text-align:center;
    }
    .rzo_quickbar_text {
        justify-content:center;
    }
    .rzo_quick_form {
        width:min(100%,900px);
    }
    .rzo_to_top_fixed {
        right:24px;
    }
}

@media (max-width:750px) {
    .rzo_header_inner {
        gap:18px;
    }
    .rzo_logo img {
        width:100px;
    }

    .rzo_partner_item > a,
    .rzo_partner_item > img {
        padding:5px;
    }
    .rzo_partner_item img {
        max-width:98%;
        max-height:94%;
    }

    .rzo_quickbar_contact {
        display:flex;
        align-items:center;
        justify-content:center;
        gap:12px;
    }
    .rzo_quickbar_symbol {
        flex-basis:38px;
        width:38px;
    }
    .rzo_quickbar_text {
        display:flex;
        flex-direction:row;
        align-items:baseline;
        justify-content:center;
        gap:12px;
    }
    .rzo_quickbar_slogan {
        margin:0;
        font-size:15px;
    }
    .rzo_quickbar_phone {
        font-size:21px;
    }
    .rzo_to_top_fixed {
        right:14px;
        width:44px;
        height:44px;
        font-size:21px;
    }

    .rzo_footer_brand img {
        width:170px;
    }
}

@media (max-width:640px) {
    :root {
        --rzo-quickbar-height:170px;
    }

    .rzo_quickbar {
        height:var(--rzo-quickbar-height);
    }
    .rzo_quickbar_inner {
        gap:7px;
        padding-left:10px;
        padding-right:10px;
    }
    .rzo_quick_form {
        display:grid;
        width:100%;
        grid-template-columns:.8fr .95fr 1.35fr;
        grid-template-areas:"name phone content" "privacy privacy submit";
        gap:6px;
    }
    .rzo_quick_name {grid-area:name;}
    .rzo_quick_phone {grid-area:phone;}
    .rzo_quick_content {grid-area:content;}
    .rzo_quick_privacy {
        grid-area:privacy;
        justify-content:flex-start;
        gap:7px;
        margin:0;
        padding:0 5px;
        font-size:15px;
    }
    .rzo_quick_submit {
        grid-area:submit;
        min-width:0;
        width:100%;
        height:38px;
        padding:0 7px;
        font-size:15px;
    }
    .rzo_quick_field input,
    .rzo_quick_field select,
    .rzo_quick_field textarea {
        height:38px;
        padding:0 7px;
        font-size:15px;
    }
    .rzo_footer {
        padding-bottom:calc(var(--rzo-quickbar-height) + 34px + env(safe-area-inset-bottom));
    }
    .rzo_inquiry_toast {
        bottom:calc(var(--rzo-quickbar-height) + 18px);
    }
}

@media (max-width:480px) {
    :root {
        --rzo-quickbar-height:184px;
    }

    .rzo_quickbar_contact {
        gap:9px;
    }
    .rzo_quickbar_symbol {
        flex-basis:34px;
        width:34px;
    }
    .rzo_quickbar_text {
        flex-direction:column;
        align-items:flex-start;
        gap:1px;
        text-align:left;
    }
    .rzo_quickbar_slogan {
        white-space:normal;
    }
    .rzo_quickbar_phone {
        font-size:20px;
    }
    .rzo_quick_privacy {
        white-space:normal;
    }
}





/* =========================================================
   RZO UI DETAIL REFINEMENT V1.11
========================================================= */
.rzo_partner_grid {
    margin:65px -5px -10px;
}
.rzo_partner_item {
    padding:0 5px 10px;
}
.rzo_partner_item > a,
.rzo_partner_item > img {
    padding:6px;
}
.rzo_partner_item img {
    max-width:99%;
    max-height:96%;
}

.rzo_play_icon {
    width:50px;
    height:50px;
    font-size:18px;
    box-shadow:0 6px 22px rgba(0,0,0,.20);
    transition:transform .2s ease,background .2s ease;
}
.rzo_video_card:hover .rzo_play_icon {
    transform:translate(-50%,-50%) scale(1.06);
    background:#fff;
}

.rzo_photo_prev,
.rzo_photo_next {
    width:30px;
    height:30px;
    margin-top:-15px;
    border:1px solid rgba(255,255,255,.35);
    border-radius:0;
    background:rgba(0,0,0,.38);
    font-size:18px;
    font-weight:300;
}
.rzo_photo_prev {left:8px;}
.rzo_photo_next {right:8px;}
.rzo_photo_count {
    right:8px;
    bottom:8px;
    padding:4px 6px;
    border-radius:0;
    background:rgba(0,0,0,.46);
    font-size:12px;
    line-height:1;
    letter-spacing:.02em;
}
.rzo_photo_count b {font-size:inherit;}

.rzo_work_links {
    gap:8px;
    margin-top:18px;
}
.rzo_work_links a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:40px;
    padding:0 13px;
    border:1px solid #4a4f58;
    border-bottom:1px solid #4a4f58;
    color:#d9dce2;
    font-size:18px;
    line-height:1;
    letter-spacing:0;
    transition:color .2s ease,border-color .2s ease,background .2s ease;
}
.rzo_work_links a .material-symbols-outlined {
    font-size:19px;
    font-weight:300;
}
.rzo_work_links a:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}

.rzo_quickbar {
    color:#111;
}
.rzo_quickbar_inner {
    grid-template-columns:minmax(420px,470px) minmax(0,700px);
    gap:16px;
    padding-left:28px !important;
    padding-right:28px !important;
}
.rzo_quickbar_contact {
    color:#111;
}
.rzo_quickbar_text {
    gap:12px;
    flex-wrap:nowrap;
}
.rzo_quickbar_slogan {
    color:rgba(17,17,17,.72);
    font-weight:400;
}
.rzo_quickbar_phone {
    flex:0 0 auto;
    color:#111;
    font-size:27px;
}
.rzo_quick_form {
    grid-template-columns:minmax(82px,.62fr) minmax(100px,.78fr) minmax(145px,1.15fr) auto auto;
    gap:6px;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    color:#111;
    background:rgba(255,255,255,.95);
    border-color:rgba(255,255,255,.72);
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:rgba(17,17,17,.62);
}
.rzo_quick_privacy {
    gap:9px;
    margin:0 7px;
    padding:0 4px;
    color:#111;
}
.rzo_quick_privacy label,
.rzo_quick_privacy span {
    color:#111;
}
.rzo_quick_privacy_link {
    margin-left:4px;
    color:#111;
    border-color:rgba(17,17,17,.38);
}




/* =========================================================
   RZO UI DETAIL REFINEMENT V1.11 - RESPONSIVE
========================================================= */
@media (max-width:1320px) and (min-width:1101px) {
    .rzo_quickbar_inner {
        grid-template-columns:minmax(390px,430px) minmax(0,1fr);
        gap:12px;
        padding-left:18px !important;
        padding-right:18px !important;
    }
    .rzo_quickbar_symbol {
        flex-basis:42px;
        width:42px;
    }
    .rzo_quickbar_text {
        gap:9px;
    }
    .rzo_quickbar_phone {
        font-size:24px;
    }
    .rzo_quick_form {
        grid-template-columns:minmax(76px,.58fr) minmax(94px,.72fr) minmax(125px,1fr) auto auto;
        gap:5px;
    }
    .rzo_quick_privacy {
        gap:6px;
        margin:0 3px;
        padding:0 2px;
    }
    .rzo_quick_submit {
        min-width:112px;
        padding-left:10px;
        padding-right:10px;
    }
}

@media (max-width:1100px) {
    .rzo_quickbar_inner {
        padding-left:16px !important;
        padding-right:16px !important;
    }
    .rzo_quickbar_contact {
        color:#111;
    }
    .rzo_quickbar_slogan,
    .rzo_quickbar_phone,
    .rzo_quick_privacy,
    .rzo_quick_privacy label,
    .rzo_quick_privacy span,
    .rzo_quick_privacy_link {
        color:#111;
    }
    .rzo_quick_privacy_link {
        border-color:rgba(17,17,17,.38);
    }
}

@media (max-width:750px) {
    .rzo_partner_grid {
        margin:45px -5px -10px;
    }
    .rzo_partner_item {
        padding:0 5px 10px;
    }
    .rzo_partner_item > a,
    .rzo_partner_item > img {
        padding:4px;
    }

    .rzo_work_links a {
        min-height:36px;
        padding:0 10px;
        font-size:15px;
    }
    .rzo_work_links a .material-symbols-outlined {
        font-size:17px;
    }
    .rzo_play_icon {
        width:40px;
        height:40px;
        font-size:15px;
    }
    .rzo_photo_prev,
    .rzo_photo_next {
        width:26px;
        height:26px;
        margin-top:-13px;
        font-size:15px;
    }
    .rzo_photo_prev {left:6px;}
    .rzo_photo_next {right:6px;}
    .rzo_photo_count {
        right:6px;
        bottom:6px;
        padding:3px 5px;
        font-size:11px;
    }

    .rzo_quickbar_slogan,
    .rzo_quickbar_phone,
    .rzo_quick_privacy,
    .rzo_quick_privacy label,
    .rzo_quick_privacy span,
    .rzo_quick_privacy_link {
        color:#111;
    }
}




/* =========================================================
   RZO PORTFOLIO / QUICKBAR REFINEMENT V1.12
========================================================= */
.rzo_portfolio {
    background:#fff;
    color:#111827;
}
.rzo_portfolio h2 {
    color:#111827;
}
.rzo_portfolio .rzo_title_en,
.rzo_portfolio .rzo_section_lead {
    color:#777d87;
}
.rzo_portfolio_tabs a {
    border-color:#d9dce1;
    color:#777d87;
    background:#fff;
}
.rzo_portfolio_tabs a.on,
.rzo_portfolio_tabs a:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}
.rzo_photo_tabs a {
    color:#8a9099;
}
.rzo_photo_tabs a.on {
    color:#111827;
}
.rzo_photo_tabs a.on:after {
    background:var(--rzo-accent);
}
.rzo_portfolio_grid {
    margin-top:50px;
}
.rzo_work_card,
.rzo_video_card,
.rzo_photo_card {
    color:#111827;
    transform:none;
}
.rzo_work_card:hover,
.rzo_video_card:hover,
.rzo_photo_card:hover {
    transform:none;
}
.rzo_work_image,
.rzo_video_thumb,
.rzo_photo_view {
    aspect-ratio:16/11;
    background:#f1f2f4;
}
.rzo_work_image img,
.rzo_video_thumb img,
.rzo_photo_view img {
    transition:transform .48s cubic-bezier(.2,.7,.2,1);
}
.rzo_work_card:hover .rzo_work_image img,
.rzo_video_card:hover .rzo_video_thumb img {
    transform:scale(1.025);
}
.rzo_work_info,
.rzo_video_info,
.rzo_photo_info {
    padding:13px 4px 0;
}
.rzo_work_heading {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:5px 9px;
    min-width:0;
}
.rzo_work_heading h3,
.rzo_work_info h3,
.rzo_video_info h3,
.rzo_photo_info h3 {
    margin:0;
    font-size:17px;
    line-height:1.35;
    letter-spacing:-.035em;
    font-weight:600;
    color:#111827;
}
.rzo_work_category {
    flex:0 0 auto;
    font-size:13px;
    line-height:1.4;
    letter-spacing:0;
    font-weight:300;
    color:#8a9099;
}
.rzo_work_info p,
.rzo_video_info p,
.rzo_photo_info p {
    margin-top:8px;
    font-size:15px;
    line-height:1.6;
    letter-spacing:-.02em;
    color:#707680;
}
.rzo_work_image > span {
    color:#9aa0aa;
}
.rzo_work_overlay {
    position:absolute;
    inset:0;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    padding:24px;
    color:#fff;
    background:rgba(12,15,20,.82);
    opacity:0;
    visibility:hidden;
    transition:opacity .28s ease,visibility .28s ease;
}
.rzo_work_card:hover .rzo_work_overlay,
.rzo_work_card:focus-within .rzo_work_overlay {
    opacity:1;
    visibility:visible;
}
.rzo_work_overlay_info {
    width:100%;
    margin:0;
}
.rzo_work_overlay_info > div {
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:10px;
    padding:3px 0;
    font-size:13px;
    line-height:1.45;
}
.rzo_work_overlay_info dt {
    font-weight:600;
    color:var(--rzo-accent);
}
.rzo_work_overlay_info dd {
    min-width:0;
    margin:0;
    color:#fff;
    overflow-wrap:anywhere;
}
.rzo_work_view {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:86px;
    height:36px;
    margin-top:15px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.72);
    color:#fff;
    background:transparent;
    font-size:13px;
    font-weight:500;
    letter-spacing:.04em;
    transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.rzo_work_view .material-symbols-outlined {
    font-size:15px;
    font-weight:300;
}
.rzo_work_view:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}
.rzo_work_links {
    display:none;
}
.rzo_play_icon {
    width:42px;
    height:42px;
    font-size:15px;
    box-shadow:0 5px 18px rgba(0,0,0,.16);
}
.rzo_photo_view {
    cursor:grab;
    touch-action:pan-y;
    user-select:none;
    -webkit-user-select:none;
}
.rzo_photo_card.is_dragging .rzo_photo_view {
    cursor:grabbing;
}
.rzo_photo_prev,
.rzo_photo_next {
    width:26px;
    height:26px;
    margin-top:-13px;
    font-size:15px;
    background:rgba(0,0,0,.34);
}
.rzo_photo_prev {left:7px;}
.rzo_photo_next {right:7px;}
.rzo_photo_count {
    right:7px;
    bottom:7px;
    padding:3px 5px;
    font-size:11px;
    background:rgba(0,0,0,.4);
}
.rzo_portfolio .rzo_more {
    color:#555b65;
    border-color:#cfd3da;
}
.rzo_portfolio .rzo_more:hover {
    color:#111;
    background:var(--rzo-accent);
    border-color:var(--rzo-accent);
}

.rzo_quickbar_inner {
    grid-template-columns:max-content minmax(0,720px);
    gap:38px;
}
.rzo_quickbar_contact {
    width:max-content;
    padding-right:34px;
    border-right:1px solid rgba(17,17,17,.20);
}
.rzo_quickbar_text {
    overflow:visible;
}
.rzo_quickbar_phone {
    color:#111;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    color:#111;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(17,17,17,.25);
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:rgba(17,17,17,.68);
}
.rzo_quick_privacy,
.rzo_quick_privacy label,
.rzo_quick_privacy span,
.rzo_quick_privacy_link {
    color:#111;
}
.rzo_quick_privacy_link {
    border-color:rgba(17,17,17,.4);
}

@media (hover:none) {
    .rzo_work_overlay {
        inset:auto 8px 8px auto;
        width:auto;
        height:auto;
        padding:0;
        background:transparent;
        opacity:1;
        visibility:visible;
    }
    .rzo_work_overlay_info {
        display:none;
    }
    .rzo_work_view {
        min-width:62px;
        height:32px;
        margin:0;
        padding:0 10px;
        color:#111;
        background:rgba(255,255,255,.94);
        border-color:rgba(17,17,17,.15);
        box-shadow:0 3px 12px rgba(0,0,0,.10);
    }
}

@media (max-width:1320px) and (min-width:1101px) {
    .rzo_quickbar_inner {
        grid-template-columns:max-content minmax(0,1fr);
        gap:24px;
    }
    .rzo_quickbar_contact {
        padding-right:24px;
    }
}

@media (max-width:1100px) {
    .rzo_quickbar_contact {
        width:auto;
        padding-right:0;
        border-right:0;
    }
}

@media (max-width:750px) {
    .rzo_portfolio_grid {
        margin-top:34px;
    }
    .rzo_work_info,
    .rzo_video_info,
    .rzo_photo_info {
        padding-top:10px;
    }
    .rzo_work_heading {
        gap:4px 7px;
    }
    .rzo_work_heading h3,
    .rzo_work_info h3,
    .rzo_video_info h3,
    .rzo_photo_info h3 {
        font-size:15px;
    }
    .rzo_work_category {
        font-size:12px;
    }
    .rzo_work_info p,
    .rzo_video_info p,
    .rzo_photo_info p {
        margin-top:6px;
        font-size:14px;
        line-height:1.55;
    }
    .rzo_play_icon {
        width:36px;
        height:36px;
        font-size:13px;
    }
    .rzo_photo_prev,
    .rzo_photo_next {
        width:24px;
        height:24px;
        margin-top:-12px;
        font-size:14px;
    }
    .rzo_photo_count {
        font-size:10px;
    }
}




/* =========================================================
   RZO VISUAL / PHOTO VIEWER REFINEMENT V1.14
========================================================= */
.rzo_footer {
    padding-top:58px;
}
.rzo_footer_top {
    padding-bottom:0;
    border-bottom:0;
}
.rzo_footer_brand img {
    width:150px;
}
.rzo_footer_info {
    margin-top:30px;
}

.rzo_quickbar {
    height:auto;
    min-height:66px;
    padding:10px 0;
}
.rzo_quickbar_inner {
    height:auto;
    grid-template-columns:max-content minmax(0,720px);
    gap:52px;
}
.rzo_quickbar_symbol img {
    filter:brightness(0);
}
.rzo_quickbar_phone {
    font-weight:900;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    background:rgba(255,255,255,.95);
    color:#111;
    border-color:rgba(17,17,17,.18);
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:rgba(17,17,17,.58);
}

.rzo_strength {
    background:#f6f0e6;
}
.rzo_partners {
    background:#fff;
}

.rzo_point_icon {
    display:block;
    margin-bottom:18px;
    font-size:38px;
    line-height:1;
    font-weight:300;
    color:var(--rzo-accent-dark);
}
.rzo_about_points li {
    transition:background .25s ease,transform .25s ease;
}
.rzo_about_points li:hover {
    background:#fbf8f1;
    transform:translateY(-3px);
}

.rzo_service_list li {
    grid-template-columns:64px 54px minmax(220px,.9fr) 1.45fr;
}
.rzo_service_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    font-size:32px;
    line-height:1;
    font-weight:300;
    color:var(--rzo-accent-dark);
}
.rzo_service_list li:hover .rzo_service_icon {
    transform:translateY(-2px);
}

.rzo_strength_grid li {
    min-height:310px;
}
.rzo_strength_top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:48px;
}
.rzo_strength_top > span {
    font-size:18px;
    color:#8a8174;
}
.rzo_strength_icon {
    font-size:38px;
    line-height:1;
    font-weight:300;
    color:var(--rzo-accent-dark);
}

.rzo_detail_form {
    padding:34px 38px 38px;
    border:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.025);
}
.rzo_contact_field {
    padding:18px 0 22px;
    border-bottom:0;
}
.rzo_contact_control .write_input_text,
.rzo_contact_control .write_input_select,
.rzo_contact_control .write_input_text2,
.rzo_contact_control input[type="text"],
.rzo_contact_control input[type="tel"],
.rzo_contact_control input[type="number"],
.rzo_contact_control input[type="date"],
.rzo_contact_control select,
.rzo_contact_control textarea {
    min-height:52px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.035);
    transition:border-color .2s ease,background .2s ease;
}
.rzo_contact_control textarea {
    height:150px;
    padding:14px;
}
.rzo_contact_control select {
    background:#151d2a;
}
.rzo_contact_control .write_input_text:focus,
.rzo_contact_control .write_input_select:focus,
.rzo_contact_control .write_input_text2:focus,
.rzo_contact_control input[type="text"]:focus,
.rzo_contact_control input[type="tel"]:focus,
.rzo_contact_control input[type="number"]:focus,
.rzo_contact_control input[type="date"]:focus,
.rzo_contact_control select:focus,
.rzo_contact_control textarea:focus {
    border-color:rgba(229,179,47,.88);
    background:rgba(255,255,255,.055);
}
.rzo_email_field .rzo_email_at {
    padding:0 3px;
}

.rzo_photo_view {
    cursor:zoom-in;
}
.rzo_photo_card.is_dragging .rzo_photo_view {
    cursor:grabbing;
}
.rzo_photo_prev,
.rzo_photo_next {
    z-index:4;
    cursor:pointer;
}

.rzo_photo_modal {
    position:fixed;
    inset:0;
    z-index:100100;
}
.rzo_photo_modal_bg {
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.9);
}
.rzo_photo_modal_box {
    position:absolute;
    top:50%;
    left:50%;
    width:min(1280px,calc(100% - 80px));
    transform:translate(-50%,-50%);
}
.rzo_photo_modal_close {
    position:absolute;
    z-index:5;
    top:-50px;
    right:0;
    color:#fff;
    font-size:38px;
    line-height:1;
    font-weight:200;
}
.rzo_photo_modal_stage {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:min(78vh,820px);
    overflow:hidden;
    background:#090909;
    touch-action:pan-y;
    user-select:none;
    -webkit-user-select:none;
}
.rzo_photo_modal_stage img {
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    max-height:100%;
    object-fit:contain;
}
.rzo_photo_modal_prev,
.rzo_photo_modal_next {
    position:absolute;
    z-index:4;
    top:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:54px;
    margin-top:-27px;
    color:#fff;
    background:rgba(0,0,0,.38);
    border:1px solid rgba(255,255,255,.26);
    font-size:28px;
    line-height:1;
}
.rzo_photo_modal_prev {left:16px;}
.rzo_photo_modal_next {right:16px;}
.rzo_photo_modal_count {
    position:absolute;
    z-index:4;
    right:16px;
    bottom:14px;
    padding:5px 8px;
    background:rgba(0,0,0,.52);
    color:#fff;
    font-size:12px;
    line-height:1;
}
.rzo_photo_modal_title {
    margin-top:15px;
    color:#fff;
    font-size:16px;
    line-height:1.5;
    text-align:center;
}

@media (max-width:1320px) and (min-width:1101px) {
    .rzo_quickbar_inner {
        gap:34px;
    }
}

@media (max-width:1100px) {
    .rzo_service_list li {
        grid-template-columns:52px 46px minmax(180px,.8fr) 1.2fr;
        gap:22px;
    }
    .rzo_service_icon {
        width:38px;
        height:38px;
        font-size:28px;
    }
    .rzo_quickbar {
        min-height:118px;
        padding:10px 0;
    }
    .rzo_quickbar_inner {
        gap:10px;
    }
}

@media (max-width:750px) {
    .rzo_footer {
        padding-top:46px;
    }
    .rzo_footer_brand img {
        width:128px;
    }
    .rzo_footer_info {
        margin-top:30px;
    }
    .rzo_point_icon {
        margin-bottom:12px;
        font-size:30px;
    }
    .rzo_service_list li {
        display:grid;
        grid-template-columns:34px 38px minmax(0,1fr);
        gap:8px 12px;
        align-items:center;
        text-align:left;
    }
    .rzo_service_list li > span {
        margin:0;
    }
    .rzo_service_icon {
        width:34px;
        height:34px;
        font-size:26px;
    }
    .rzo_service_list strong {
        font-size:22px;
    }
    .rzo_service_list p {
        grid-column:2 / 4;
        margin-top:0;
        padding-top:5px;
    }
    .rzo_strength_grid li {
        min-height:220px;
    }
    .rzo_strength_top {
        margin-bottom:24px;
    }
    .rzo_strength_top > span {
        font-size:15px;
    }
    .rzo_strength_icon {
        font-size:30px;
    }
    .rzo_detail_form {
        padding:20px 18px 26px;
    }
    .rzo_contact_field {
        padding:13px 0 15px;
    }
    .rzo_contact_control .write_input_text,
    .rzo_contact_control .write_input_select,
    .rzo_contact_control .write_input_text2,
    .rzo_contact_control input,
    .rzo_contact_control select,
    .rzo_contact_control textarea {
        min-height:46px;
        padding-left:11px;
        padding-right:11px;
    }
    .rzo_contact_control textarea {
        padding-top:11px;
        padding-bottom:11px;
    }
    .rzo_photo_modal_box {
        width:calc(100% - 24px);
    }
    .rzo_photo_modal_stage {
        height:72vh;
    }
    .rzo_photo_modal_close {
        top:-42px;
        font-size:34px;
    }
    .rzo_photo_modal_prev,
    .rzo_photo_modal_next {
        width:34px;
        height:44px;
        margin-top:-22px;
        font-size:22px;
    }
    .rzo_photo_modal_prev {left:7px;}
    .rzo_photo_modal_next {right:7px;}
    .rzo_photo_modal_count {
        right:8px;
        bottom:8px;
        font-size:10px;
    }
    .rzo_photo_modal_title {
        margin-top:10px;
        font-size:15px;
    }
}

@media (max-width:640px) {
    .rzo_quickbar {
        min-height:150px;
        padding:10px 0 calc(10px + env(safe-area-inset-bottom));
    }
}

@media (max-width:480px) {
    .rzo_quickbar {
        min-height:164px;
    }
}

/* V1.14 quickbar height sync for fixed utility positions */
:root {--rzo-quickbar-height:66px;}
@media (max-width:1100px) {:root {--rzo-quickbar-height:118px;}}
@media (max-width:640px) {:root {--rzo-quickbar-height:150px;}}
@media (max-width:480px) {:root {--rzo-quickbar-height:164px;}}





/* =========================================================
   RZO CORPORATE V1.15
   ICON / ACTIVE NAV / MODAL MOTION / PREMIUM PATTERN / HERO CLIENT MARQUEE
========================================================= */
.material-symbols-outlined {
    font-family:'Material Symbols Outlined' !important;
    font-weight:normal;
    font-style:normal;
    font-size:inherit;
    line-height:1;
    letter-spacing:normal;
    text-transform:none;
    display:inline-block;
    white-space:nowrap;
    word-wrap:normal;
    direction:ltr;
    -webkit-font-feature-settings:'liga';
    -webkit-font-smoothing:antialiased;
    font-feature-settings:'liga';
}

.rzo_navi a.is_active {
    opacity:1;
}
.rzo_navi a.is_active:after {
    right:0;
    height:2px;
    background:#fec734;
}

.rzo_section > .rzo_container {
    position:relative;
    z-index:1;
}
.rzo_services,
.rzo_strength,
.rzo_contact {
    overflow:hidden;
}
.rzo_services:before,
.rzo_strength:before,
.rzo_contact:before {
    content:'';
    position:absolute;
    z-index:0;
    pointer-events:none;
}
.rzo_services:before {
    width:760px;
    height:760px;
    top:-260px;
    right:-180px;
    opacity:.25;
    background:
        repeating-linear-gradient(135deg,rgba(254,199,52,.16) 0 1px,transparent 1px 24px),
        repeating-linear-gradient(45deg,rgba(17,24,39,.035) 0 1px,transparent 1px 24px);
    -webkit-mask-image:radial-gradient(circle at center,#000 0 38%,transparent 72%);
    mask-image:radial-gradient(circle at center,#000 0 38%,transparent 72%);
    transform:rotate(8deg);
}
.rzo_strength:before {
    width:640px;
    height:640px;
    left:-160px;
    bottom:-230px;
    opacity:.28;
    background:
        radial-gradient(circle,rgba(254,199,52,.22) 0 1.3px,transparent 1.5px) 0 0/22px 22px;
    -webkit-mask-image:radial-gradient(circle at center,#000 0 28%,transparent 70%);
    mask-image:radial-gradient(circle at center,#000 0 28%,transparent 70%);
}
.rzo_contact:before {
    width:720px;
    height:720px;
    right:-270px;
    top:-250px;
    opacity:.12;
    background:
        repeating-radial-gradient(circle at center,rgba(254,199,52,.42) 0 1px,transparent 1px 22px);
    -webkit-mask-image:radial-gradient(circle at center,#000 0 32%,transparent 70%);
    mask-image:radial-gradient(circle at center,#000 0 32%,transparent 70%);
}

.rzo_video_modal_bg,
.rzo_photo_modal_bg {
    opacity:0;
    transition:opacity .26s ease;
}
.rzo_video_modal_box,
.rzo_photo_modal_box {
    opacity:0;
    transform:translate(-50%,-47%) scale(.965);
    transition:opacity .26s ease,transform .32s cubic-bezier(.22,.61,.36,1);
}
.rzo_video_modal.is_open .rzo_video_modal_bg,
.rzo_photo_modal.is_open .rzo_photo_modal_bg {
    opacity:1;
}
.rzo_video_modal.is_open .rzo_video_modal_box,
.rzo_photo_modal.is_open .rzo_photo_modal_box {
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
}
.rzo_video_modal.is_closing .rzo_video_modal_bg,
.rzo_photo_modal.is_closing .rzo_photo_modal_bg {
    opacity:0;
}
.rzo_video_modal.is_closing .rzo_video_modal_box,
.rzo_photo_modal.is_closing .rzo_photo_modal_box {
    opacity:0;
    transform:translate(-50%,-47%) scale(.965);
}

.rzo_hero_partner_marquee {
    position:absolute;
    z-index:3;
    left:0;
    right:0;
    bottom:0;
    height:108px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:rgba(7,10,16,.68);
    border-top:1px solid rgba(255,255,255,.10);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.rzo_hero_partner_track {
    display:flex;
    flex:none;
    width:max-content;
    will-change:transform;
    animation:rzoPartnerMarquee 58s linear infinite;
}
.rzo_hero_partner_marquee.rzo_partner_pause_y:hover .rzo_hero_partner_track {
    animation-play-state:paused;
}
.rzo_hero_partner_group {
    display:flex;
    flex:none;
    align-items:center;
    gap:72px;
    padding-right:72px;
}
.rzo_hero_partner_logo {
    flex:0 0 auto;
    width:150px;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.rzo_hero_partner_logo img {
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain;
    filter:grayscale(1) brightness(0) invert(1);
    opacity:.72;
    transition:opacity .25s ease,transform .25s ease;
}
.rzo_hero_partner_logo:hover img {
    opacity:1;
    transform:scale(1.05);
}
.rzo_hero_partner_marquee + .rzo_scroll_down {
    bottom:132px;
}
@keyframes rzoPartnerMarquee {
    from {transform:translate3d(0,0,0);}
    to {transform:translate3d(-50%,0,0);}
}

@media (max-width:750px) {
    .rzo_services:before {width:460px;height:460px;right:-210px;top:-120px;}
    .rzo_strength:before {width:420px;height:420px;left:-190px;bottom:-130px;}
    .rzo_contact:before {width:430px;height:430px;right:-210px;top:-120px;}
    .rzo_hero_partner_marquee {height:76px;}
    .rzo_hero_partner_group {gap:42px;padding-right:42px;}
    .rzo_hero_partner_logo {width:112px;height:38px;}
    .rzo_hero_partner_track {animation-duration:44s;}
    .rzo_hero_partner_marquee + .rzo_scroll_down {bottom:92px;}
}

@media (prefers-reduced-motion:reduce) {
    .rzo_hero_partner_track {animation-play-state:paused;}
    .rzo_video_modal_bg,
    .rzo_photo_modal_bg,
    .rzo_video_modal_box,
    .rzo_photo_modal_box {transition:none;}
}




/* =========================================================
   RZO CORPORATE V1.17
   HERO PARTNERS / ICON SCALE / PORTFOLIO TOP ALIGN / HEADER PROGRESS
========================================================= */

/* 인트로 하단 파트너 로고: 더 크고 시원하게 */
.rzo_hero_partner_marquee {
    height:154px;
}
.rzo_hero_partner_track {
    animation-duration:var(--rzo-partner-duration, 48s) !important;
}
.rzo_hero_partner_group {
    gap:96px;
    padding-right:96px;
}
.rzo_hero_partner_logo {
    width:240px;
    height:92px;
}
.rzo_hero_partner_logo img {
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
}

/* ABOUT / WHAT WE DO / WHY RZO 아이콘: 큼직하고 얇은 라인 */
.rzo_point_icon.material-symbols-outlined,
.rzo_service_icon.material-symbols-outlined,
.rzo_strength_icon.material-symbols-outlined {
    font-family:'Material Symbols Outlined' !important;
    font-style:normal !important;
    font-weight:200 !important;
    line-height:1 !important;
    font-variation-settings:'FILL' 0,'wght' 200,'GRAD' 0,'opsz' 48 !important;
}
.rzo_point_icon.material-symbols-outlined {
    margin-bottom:24px;
    font-size:74px !important;
}
.rzo_service_icon.material-symbols-outlined {
    width:82px;
    height:82px;
    font-size:68px !important;
    display:flex;
    align-items:center;
    justify-content:center;
}
.rzo_strength_icon.material-symbols-outlined {
    font-size:70px !important;
}
.rzo_service_list li {
    grid-template-columns:64px 94px minmax(220px,.9fr) 1.45fr;
}

/* 홈페이지 포트폴리오 썸네일은 항상 첨부 이미지의 상단부터 표시 */
.rzo_work_image img {
    width:100%;
    height:100%;
    object-fit:cover !important;
    object-position:50% 0 !important;
}

/* 영상 / 촬영 확대뷰는 헤더, 퀵상담, 상단버튼 등 모든 고정 UI보다 위 */
.rzo_video_modal,
.rzo_photo_modal {
    position:fixed !important;
    z-index:2147483000 !important;
}
.rzo_video_modal_bg,
.rzo_photo_modal_bg {
    background:rgba(0,0,0,.94) !important;
}

/* 헤더 하단 1px 스크롤 진행 라인 */
.rzo_header {
    --rzo-scroll-progress:0%;
}
.rzo_header_progress {
    position:absolute !important;
    z-index:999 !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:1px !important;
    overflow:hidden !important;
    background:rgba(254,199,52,.16) !important;
    pointer-events:none !important;
}
.rzo_header_progress span {
    display:block !important;
    width:0;
    height:1px !important;
    background:#fec734 !important;
    transition:width .06s linear;
    will-change:width;
}

.rzo_scroll_down {
    display:none !important;
}

@media (max-width:1100px) {
    .rzo_hero_partner_marquee {height:132px;}
    .rzo_hero_partner_group {gap:72px;padding-right:72px;}
    .rzo_hero_partner_logo {width:205px;height:78px;}
    .rzo_service_list li {grid-template-columns:52px 82px minmax(180px,.8fr) 1.2fr;}
    .rzo_service_icon.material-symbols-outlined {width:72px;height:72px;font-size:60px !important;}
}

@media (max-width:750px) {
    .rzo_hero_partner_marquee {height:108px;}
    .rzo_hero_partner_group {gap:54px;padding-right:54px;}
    .rzo_hero_partner_logo {width:170px;height:64px;}
    .rzo_point_icon.material-symbols-outlined {margin-bottom:16px;font-size:56px !important;}
    .rzo_service_icon.material-symbols-outlined {width:60px;height:60px;font-size:50px !important;}
    .rzo_strength_icon.material-symbols-outlined {font-size:56px !important;}
}

@media (max-width:480px) {
    .rzo_hero_partner_marquee {height:98px;}
    .rzo_hero_partner_group {gap:44px;padding-right:44px;}
    .rzo_hero_partner_logo {width:150px;height:56px;}
    .rzo_point_icon.material-symbols-outlined {font-size:50px !important;}
}





/* =========================================================
   RZO CORPORATE V1.18
   HERO PARTNER GAP / POINT COLOR / PORTFOLIO IMAGE RENDERING
========================================================= */

/* 전체 포인트 컬러를 THE RZO #fec734 하나로 통일 */
:root {
    --rzo-accent:#fec734;
    --rzo-accent-dark:#fec734;
}

/* 인트로 파트너 롤링: 큰 로고는 유지하고 로고 사이 간격만 촘촘하게 */
.rzo_hero_partner_group {
    gap:30px;
    padding-right:30px;
}

/* 아이콘은 별도 진한 골드 없이 포인트 컬러 그대로 사용 */
.rzo_point_icon,
.rzo_service_icon,
.rzo_strength_icon,
.rzo_point_icon.material-symbols-outlined,
.rzo_service_icon.material-symbols-outlined,
.rzo_strength_icon.material-symbols-outlined {
    color:#fec734 !important;
}

/* 큰 원본 이미지를 카드 크기로 축소할 때 브라우저 리샘플링을 최대한 부드럽게 */
.rzo_work_image img,
.rzo_video_thumb img,
.rzo_photo_view img {
    display:block;
    image-rendering:auto;
    -ms-interpolation-mode:bicubic;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
}
.rzo_work_card:hover .rzo_work_image img,
.rzo_video_card:hover .rzo_video_thumb img {
    transform:translateZ(0) scale(1.025);
    -webkit-transform:translateZ(0) scale(1.025);
}

@media (max-width:1100px) {
    .rzo_hero_partner_group {gap:24px;padding-right:24px;}
}

@media (max-width:750px) {
    .rzo_hero_partner_group {gap:18px;padding-right:18px;}
}

@media (max-width:480px) {
    .rzo_hero_partner_group {gap:14px;padding-right:14px;}
}





/* =========================================================
   RZO CORPORATE V1.19
   QUICK FORM / SECTION TEXTURE / HERO PARTNER DISPLAY OPTIONS
========================================================= */

/* 하단 고정상담 입력폼: 흰색 5% 투명 배경을 최종값으로 고정 */
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    background:rgba(255,255,255,.05) !important;
    color:#111 !important;
    border-color:rgba(17,17,17,.24) !important;
    box-shadow:none !important;
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:rgba(17,17,17,.62) !important;
}


/* 인트로 파트너 롤링: 관리자 선택에 따라 컬러 / 흑백 / 흰색 단색 */
.rzo_hero_partner_marquee.rzo_partner_mode_color .rzo_hero_partner_logo img {
    filter:none !important;
    opacity:.95;
}
.rzo_hero_partner_marquee.rzo_partner_mode_gray .rzo_hero_partner_logo img {
    filter:grayscale(1) !important;
    opacity:.82;
}
.rzo_hero_partner_marquee.rzo_partner_mode_white .rzo_hero_partner_logo img {
    filter:grayscale(1) brightness(0) invert(1) !important;
    opacity:.82;
}
.rzo_hero_partner_marquee.rzo_partner_pause_n:hover .rzo_hero_partner_track {
    animation-play-state:running !important;
}
.rzo_hero_partner_marquee.rzo_partner_pause_y:hover .rzo_hero_partner_track {
    animation-play-state:paused !important;
}


/* 섹션별로 서로 다른 아주 옅은 패턴을 사용해 구획과 고급감을 강화 */
.rzo_about,
.rzo_portfolio,
.rzo_partners {
    overflow:hidden;
}
.rzo_about:before,
.rzo_portfolio:before,
.rzo_partners:before {
    content:'';
    position:absolute;
    z-index:0;
    pointer-events:none;
}
.rzo_about:before {
    width:760px;
    height:760px;
    left:-310px;
    top:-280px;
    opacity:.38;
    background:
        linear-gradient(135deg,rgba(254,199,52,.055) 25%,transparent 25%) 0 0/34px 34px,
        linear-gradient(315deg,rgba(17,24,39,.026) 25%,transparent 25%) 17px 17px/34px 34px;
    -webkit-mask-image:radial-gradient(circle at center,#000 0 38%,transparent 73%);
    mask-image:radial-gradient(circle at center,#000 0 38%,transparent 73%);
    transform:rotate(-7deg);
}
.rzo_portfolio:before {
    width:820px;
    height:820px;
    right:-350px;
    top:-270px;
    opacity:.42;
    background:
        repeating-radial-gradient(circle at center,rgba(254,199,52,.095) 0 1px,transparent 1px 28px);
    -webkit-mask-image:radial-gradient(circle at center,#000 0 30%,transparent 70%);
    mask-image:radial-gradient(circle at center,#000 0 30%,transparent 70%);
}
.rzo_partners:before {
    width:100%;
    height:100%;
    inset:0;
    opacity:.5;
    background:
        linear-gradient(120deg,transparent 0 58%,rgba(254,199,52,.035) 58% 58.15%,transparent 58.15%),
        linear-gradient(60deg,transparent 0 72%,rgba(17,24,39,.022) 72% 72.12%,transparent 72.12%);
}

.rzo_services:after,
.rzo_strength:after,
.rzo_contact:after {
    content:'';
    position:absolute;
    z-index:0;
    pointer-events:none;
}
.rzo_services:after {
    width:560px;
    height:560px;
    left:-230px;
    bottom:-210px;
    opacity:.22;
    background:radial-gradient(circle,rgba(17,24,39,.13) 0 1px,transparent 1.4px) 0 0/24px 24px;
    -webkit-mask-image:radial-gradient(circle at center,#000 0 30%,transparent 72%);
    mask-image:radial-gradient(circle at center,#000 0 30%,transparent 72%);
}
.rzo_strength:after {
    width:720px;
    height:720px;
    right:-280px;
    top:-260px;
    opacity:.2;
    background:repeating-linear-gradient(135deg,rgba(111,83,45,.12) 0 1px,transparent 1px 26px);
    -webkit-mask-image:radial-gradient(circle at center,#000 0 34%,transparent 72%);
    mask-image:radial-gradient(circle at center,#000 0 34%,transparent 72%);
}
.rzo_contact:after {
    width:520px;
    height:520px;
    left:-220px;
    bottom:-200px;
    opacity:.14;
    background:repeating-linear-gradient(45deg,rgba(254,199,52,.55) 0 1px,transparent 1px 25px);
    -webkit-mask-image:radial-gradient(circle at center,#000 0 32%,transparent 72%);
    mask-image:radial-gradient(circle at center,#000 0 32%,transparent 72%);
}


@media (max-width:750px) {
    .rzo_about:before {width:430px;height:430px;left:-230px;top:-100px;}
    .rzo_portfolio:before {width:460px;height:460px;right:-250px;top:-110px;}
    .rzo_services:after {width:360px;height:360px;left:-190px;bottom:-100px;}
    .rzo_strength:after {width:390px;height:390px;right:-210px;top:-110px;}
    .rzo_contact:after {width:340px;height:340px;left:-190px;bottom:-100px;}
}





/* =========================================================
   RZO CORPORATE V1.20
   HEADER CLEANUP / REPLAY MOTION / PREMIUM BACKGROUND
========================================================= */

/* 기본 헤더 구분선은 제거하고 실제 스크롤 진행선만 남김 */
.rzo_header,
.rzo_header.is_scrolled {
    border-bottom:0 !important;
}
.rzo_header_progress {
    background:transparent !important;
}

/* 포트폴리오 탭을 누를 때마다 카드가 다시 자연스럽게 등장 */
@keyframes rzoPortfolioTabEnter {
    0% {opacity:0; transform:translate3d(0,22px,0) scale(.985);}
    100% {opacity:1; transform:translate3d(0,0,0) scale(1);}
}
.rzo_portfolio_item.rzo_tab_enter {
    animation:rzoPortfolioTabEnter .58s cubic-bezier(.2,.72,.2,1) both;
    animation-delay:var(--rzo-tab-delay,0ms);
}

/* 섹션 모션은 화면을 벗어났다가 다시 들어오면 재생 */
.rzo_motion_ready .rzo_reveal {
    transition-duration:.72s;
}

/* 고급스러운 섹션 배경: 과한 이미지 대신 선/빛/패턴을 레이어로 사용 */
.rzo_about {
    background:
        radial-gradient(circle at 8% 16%,rgba(254,199,52,.14) 0 1px,transparent 1.4px) 0 0/24px 24px,
        linear-gradient(135deg,rgba(254,199,52,.045),transparent 34%),
        #fff;
}
.rzo_about:before {
    width:720px !important;
    height:720px !important;
    left:-340px !important;
    top:-250px !important;
    opacity:1 !important;
    border:1px solid rgba(254,199,52,.20);
    border-radius:50%;
    background:transparent !important;
    box-shadow:0 0 0 72px rgba(254,199,52,.025),0 0 0 144px rgba(17,24,39,.018);
    -webkit-mask-image:none !important;
    mask-image:none !important;
    transform:none !important;
}

.rzo_services {
    background:
        linear-gradient(112deg,rgba(254,199,52,.075),transparent 28%),
        linear-gradient(180deg,#f8f6f1,#f4f1ea) !important;
}
.rzo_services:before {
    width:100% !important;
    height:100% !important;
    inset:0 !important;
    opacity:1 !important;
    background:
        repeating-linear-gradient(135deg,rgba(17,24,39,.026) 0 1px,transparent 1px 34px),
        repeating-linear-gradient(45deg,rgba(254,199,52,.035) 0 1px,transparent 1px 34px) !important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 36%,#000 100%) !important;
    mask-image:linear-gradient(90deg,transparent 0,#000 36%,#000 100%) !important;
    transform:none !important;
}
.rzo_services:after {
    width:520px !important;
    height:520px !important;
    left:-210px !important;
    bottom:-210px !important;
    opacity:1 !important;
    border:1px solid rgba(254,199,52,.22);
    border-radius:50%;
    background:transparent !important;
    box-shadow:0 0 0 54px rgba(254,199,52,.028);
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

.rzo_portfolio {
    background:
        radial-gradient(circle at 92% 12%,rgba(254,199,52,.12) 0 1px,transparent 1.45px) 0 0/26px 26px,
        linear-gradient(180deg,#fff,#fdfcf9) !important;
}
.rzo_portfolio:before {
    width:760px !important;
    height:760px !important;
    right:-360px !important;
    top:-230px !important;
    opacity:1 !important;
    border:1px solid rgba(17,24,39,.07);
    border-radius:50%;
    background:transparent !important;
    box-shadow:0 0 0 78px rgba(254,199,52,.035),0 0 0 156px rgba(17,24,39,.018);
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

.rzo_strength {
    background:
        radial-gradient(circle at 84% 26%,rgba(254,199,52,.10),transparent 25%),
        linear-gradient(180deg,#f2eee5,#eee9df) !important;
}
.rzo_strength:before {
    width:100% !important;
    height:100% !important;
    inset:0 !important;
    opacity:1 !important;
    background:repeating-linear-gradient(132deg,transparent 0 30px,rgba(111,83,45,.055) 30px 31px,transparent 31px 62px) !important;
    -webkit-mask-image:linear-gradient(90deg,#000,transparent 72%) !important;
    mask-image:linear-gradient(90deg,#000,transparent 72%) !important;
}
.rzo_strength:after {
    width:620px !important;
    height:620px !important;
    right:-260px !important;
    top:-220px !important;
    opacity:1 !important;
    border:1px solid rgba(254,199,52,.18);
    border-radius:50%;
    background:transparent !important;
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

.rzo_partners {
    background:
        linear-gradient(120deg,rgba(254,199,52,.055),transparent 28%),
        #fff !important;
}
.rzo_partners:before {
    width:100% !important;
    height:100% !important;
    inset:0 !important;
    opacity:1 !important;
    background:
        linear-gradient(90deg,transparent 0 11%,rgba(17,24,39,.035) 11% 11.06%,transparent 11.06% 89%,rgba(17,24,39,.035) 89% 89.06%,transparent 89.06%),
        radial-gradient(circle at 18% 70%,rgba(254,199,52,.10) 0 1px,transparent 1.3px) 0 0/30px 30px !important;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%) !important;
    mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%) !important;
}

.rzo_contact {
    background:
        radial-gradient(circle at 82% 18%,rgba(254,199,52,.12),transparent 24%),
        linear-gradient(180deg,#12161e,#0d1016) !important;
}
.rzo_contact:before {
    width:100% !important;
    height:100% !important;
    inset:0 !important;
    opacity:1 !important;
    background:
        repeating-linear-gradient(135deg,transparent 0 38px,rgba(255,255,255,.025) 38px 39px,transparent 39px 78px),
        repeating-linear-gradient(45deg,transparent 0 52px,rgba(254,199,52,.045) 52px 53px,transparent 53px 104px) !important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28%,#000 100%) !important;
    mask-image:linear-gradient(90deg,transparent 0,#000 28%,#000 100%) !important;
}
.rzo_contact:after {
    width:520px !important;
    height:520px !important;
    left:-250px !important;
    bottom:-240px !important;
    opacity:1 !important;
    border:1px solid rgba(254,199,52,.24);
    border-radius:50%;
    background:transparent !important;
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

@media (max-width:750px) {
    .rzo_about:before {width:420px !important;height:420px !important;left:-260px !important;top:-110px !important;}
    .rzo_services:after {width:330px !important;height:330px !important;left:-210px !important;bottom:-130px !important;}
    .rzo_portfolio:before {width:430px !important;height:430px !important;right:-270px !important;top:-120px !important;}
    .rzo_strength:after {width:360px !important;height:360px !important;right:-230px !important;top:-120px !important;}
    .rzo_contact:after {width:330px !important;height:330px !important;left:-220px !important;bottom:-140px !important;}
}

@media (prefers-reduced-motion:reduce) {
    .rzo_portfolio_item.rzo_tab_enter {animation:none !important;}
}




/* =========================================================
   RZO CORPORATE V1.21
   QUICKBAR REVEAL / PHOTO SLIDE MOTION
========================================================= */

/* 페이지 최상단에서는 하단 고정 상담바를 화면 아래로 숨기고 1px 이상 스크롤 시 노출 */
.rzo_quickbar {
    transform:translate3d(0,calc(100% + 4px),0);
    opacity:0;
    pointer-events:none;
    transition:transform .36s cubic-bezier(.22,.72,.2,1),opacity .22s ease;
    will-change:transform;
}
.rzo_quickbar.is_visible {
    transform:translate3d(0,0,0);
    opacity:1;
    pointer-events:auto;
}

/* 촬영 목록 슬라이더: 페이드가 아닌 실제 좌우 이동 */
.rzo_photo_view {
    cursor:grab;
    touch-action:pan-y;
}
.rzo_photo_card.is_dragging .rzo_photo_view {
    cursor:grabbing;
}
.rzo_photo_view [data-photo-track] {
    position:absolute !important;
    inset:0 !important;
    display:flex !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    will-change:transform;
}
.rzo_photo_view [data-photo-track] > li {
    position:relative !important;
    inset:auto !important;
    flex:0 0 100% !important;
    width:100% !important;
    height:100% !important;
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
}
.rzo_photo_view [data-photo-track] > li img {
    pointer-events:none;
    user-select:none;
    -webkit-user-select:none;
}

/* 확대 뷰어도 동일한 좌우 슬라이드 방식 */
.rzo_photo_modal_stage {
    cursor:grab;
}
.rzo_photo_modal_stage:active {
    cursor:grabbing;
}
.rzo_photo_modal_track {
    position:absolute;
    inset:0;
    display:flex;
    width:100%;
    height:100%;
    will-change:transform;
}
.rzo_photo_modal_slide {
    flex:0 0 100%;
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
}
.rzo_photo_modal_slide img {
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    max-height:100%;
    object-fit:contain;
    pointer-events:none;
    user-select:none;
    -webkit-user-select:none;
}

@media (prefers-reduced-motion:reduce) {
    .rzo_quickbar {transition:none;}
}




/* =========================================================
   RZO CORPORATE V1.22
   HERO CENTER / TOP BUTTON / QUICKBAR BALANCE / PHOTO FIRST SLIDE
========================================================= */

/* 인트로 파트너 롤링이 차지하는 영역을 제외한 실제 히어로 영역 안에서 콘텐츠 중앙정렬 */
.rzo_hero_content {
    height:calc(100% - 154px);
    padding-top:92px;
}

/* 맨 위 버튼도 하단 상담바와 동일하게 최상단에서는 숨기고 1px 이상 스크롤 시 노출 */
.rzo_to_top_fixed {
    opacity:0;
    pointer-events:none;
    transform:translate3d(0,12px,0);
    transition:opacity .22s ease,transform .30s cubic-bezier(.22,.72,.2,1),background .2s ease,border-color .2s ease,color .2s ease;
}
.rzo_to_top_fixed.is_visible {
    opacity:1;
    pointer-events:auto;
    transform:translate3d(0,0,0);
}
.rzo_to_top_fixed.is_visible:hover {
    transform:translate3d(0,-2px,0);
}

/* 하단 고정상담: 전화번호 블록과 폼 사이 여백을 넓히고 구분선 좌우 여백을 동일하게 */
.rzo_quickbar_inner {
    gap:48px;
}
.rzo_quickbar_contact {
    padding-right:48px;
}

@media (max-width:1320px) and (min-width:1101px) {
    .rzo_quickbar_inner {
        gap:30px;
    }
    .rzo_quickbar_contact {
        padding-right:30px;
    }
}

@media (max-width:1100px) {
    .rzo_hero_content {
        height:calc(100% - 132px);
        padding-top:76px;
    }
    .rzo_quickbar_inner {
        gap:10px;
    }
    .rzo_quickbar_contact {
        padding-right:0;
    }
}

@media (max-width:750px) {
    .rzo_hero_content {
        height:calc(100% - 108px);
        padding-top:68px;
    }
}

@media (max-width:480px) {
    .rzo_hero_content {
        height:calc(100% - 98px);
        padding-top:62px;
    }
}

@media (prefers-reduced-motion:reduce) {
    .rzo_to_top_fixed {transition:none;}
}





/* =========================================================
   RZO CORPORATE V1.23
   TOP BUTTON QUICKBAR GAP BALANCE
========================================================= */

/* 화면 우측 여백과 하단 고정 상담바 위 여백을 같은 값으로 맞춤 */
.rzo_to_top_fixed {
    right:30px;
    bottom:calc(var(--rzo-quickbar-height) + 30px);
}

@media (max-width:1100px) {
    .rzo_to_top_fixed {
        right:24px;
        bottom:calc(var(--rzo-quickbar-height) + 24px);
    }
}

@media (max-width:750px) {
    .rzo_to_top_fixed {
        right:14px;
        bottom:calc(var(--rzo-quickbar-height) + 14px);
    }
}



/* =========================================================
   RZO CORPORATE V1.26 · PREMIUM SECTION BACKGROUND REFINEMENT
   구조는 유지하고 빛/미세그리드/골드 헤어라인을 섹션별로 다르게 적용
========================================================= */
.rzo_about {
    background-color:#fff !important;
    background-image:
        radial-gradient(circle at 12% 10%,rgba(254,199,52,.18),transparent 24%),
        radial-gradient(circle at 92% 88%,rgba(17,24,39,.035),transparent 26%),
        radial-gradient(circle,rgba(197,151,27,.16) 1px,transparent 1.2px) !important;
    background-size:auto,auto,28px 28px !important;
    background-position:center,center,0 0 !important;
}
.rzo_services {
    background-color:#f7f4ed !important;
    background-image:
        linear-gradient(120deg,rgba(254,199,52,.13),transparent 32%),
        linear-gradient(30deg,rgba(17,24,39,.025) 1px,transparent 1px),
        linear-gradient(120deg,rgba(17,24,39,.022) 1px,transparent 1px) !important;
    background-size:auto,42px 42px,42px 42px !important;
}
.rzo_portfolio {
    background-color:#fff !important;
    background-image:
        radial-gradient(circle at 92% 8%,rgba(254,199,52,.13),transparent 22%),
        linear-gradient(90deg,rgba(17,24,39,.028) 1px,transparent 1px),
        linear-gradient(rgba(17,24,39,.022) 1px,transparent 1px) !important;
    background-size:auto,72px 72px,72px 72px !important;
}
.rzo_strength {
    background-color:#eee8dc !important;
    background-image:
        radial-gradient(ellipse at 16% 16%,rgba(255,255,255,.72),transparent 38%),
        radial-gradient(ellipse at 88% 78%,rgba(254,199,52,.13),transparent 34%),
        repeating-radial-gradient(circle at 100% 0,transparent 0 48px,rgba(111,83,45,.045) 49px 50px,transparent 51px 96px) !important;
}
.rzo_partners {
    background-color:#fbfaf7 !important;
    background-image:
        linear-gradient(90deg,transparent 0 10%,rgba(17,24,39,.03) 10% 10.05%,transparent 10.05% 89.95%,rgba(17,24,39,.03) 89.95% 90%,transparent 90%),
        radial-gradient(circle at 50% -8%,rgba(254,199,52,.15),transparent 34%),
        radial-gradient(circle,rgba(17,24,39,.045) .8px,transparent 1px) !important;
    background-size:auto,auto,32px 32px !important;
}
.rzo_contact {
    background-color:#0e1117 !important;
    background-image:
        radial-gradient(circle at 82% 12%,rgba(254,199,52,.17),transparent 28%),
        linear-gradient(135deg,rgba(255,255,255,.028) 1px,transparent 1px),
        linear-gradient(45deg,rgba(254,199,52,.035) 1px,transparent 1px),
        linear-gradient(180deg,#121720,#0b0e13) !important;
    background-size:auto,54px 54px,78px 78px,auto !important;
}

/* 기존 장식 원은 유지하되 배경과 자연스럽게 섞이도록 강도 조정 */
.rzo_about:before,.rzo_portfolio:before,.rzo_strength:after {opacity:.72 !important;}
.rzo_services:before,.rzo_partners:before,.rzo_contact:before {opacity:.55 !important;}

@media (max-width:750px) {
    .rzo_about {background-size:auto,auto,24px 24px !important;}
    .rzo_services {background-size:auto,34px 34px,34px 34px !important;}
    .rzo_portfolio {background-size:auto,56px 56px,56px 56px !important;}
    .rzo_partners {background-size:auto,auto,28px 28px !important;}
    .rzo_contact {background-size:auto,44px 44px,64px 64px,auto !important;}
}





/* =========================================================
   RZO CORPORATE V1.28
   CLEAN PREMIUM SECTION BACKGROUNDS
   - 패턴은 흰색 섹션에만 제한적으로 사용
   - 비백색 섹션은 단색으로 정리해 섹션 구분과 가독성 강화
========================================================= */

/* 이전 버전의 반복 패턴/장식 초기화 */
.rzo_about,
.rzo_services,
.rzo_portfolio,
.rzo_strength,
.rzo_partners,
.rzo_contact {
    background-image:none !important;
}

.rzo_about:before,
.rzo_about:after,
.rzo_services:before,
.rzo_services:after,
.rzo_portfolio:before,
.rzo_portfolio:after,
.rzo_strength:before,
.rzo_strength:after,
.rzo_partners:before,
.rzo_partners:after,
.rzo_contact:before,
.rzo_contact:after {
    display:none !important;
}

/* 흰색 섹션 01 : 회사소개 — 대형 골드 링을 아주 옅게 */
.rzo_about {
    position:relative;
    overflow:hidden;
    background-color:#fff !important;
    background-image:radial-gradient(circle at 10% 10%,rgba(254,199,52,.055),transparent 30%) !important;
}
.rzo_about:before {
    content:'';
    display:block !important;
    position:absolute;
    z-index:0;
    left:-245px;
    top:-205px;
    width:650px;
    height:650px;
    border:1px solid rgba(254,199,52,.12);
    border-radius:50%;
    box-shadow:
        0 0 0 78px rgba(254,199,52,.024),
        0 0 0 156px rgba(254,199,52,.014);
    background:none !important;
    opacity:1 !important;
    pointer-events:none;
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

/* 비백색 섹션 : 반복 무늬 없이 단색으로 단정하게 */
.rzo_services {
    background-color:#f5f2eb !important;
}
.rzo_strength {
    background-color:#eee7dc !important;
}
.rzo_contact {
    background-color:#101216 !important;
}

/* 흰색 섹션 02 : 포트폴리오 — 우측 상단에 아주 옅은 골드 광원/링 */
.rzo_portfolio {
    position:relative;
    overflow:hidden;
    background-color:#fff !important;
    background-image:radial-gradient(circle at 94% 8%,rgba(254,199,52,.06),transparent 27%) !important;
}
.rzo_portfolio:before {
    content:'';
    display:block !important;
    position:absolute;
    z-index:0;
    right:-310px;
    top:-250px;
    width:720px;
    height:720px;
    border:1px solid rgba(254,199,52,.105);
    border-radius:50%;
    box-shadow:0 0 0 92px rgba(254,199,52,.016);
    background:none !important;
    opacity:1 !important;
    pointer-events:none;
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

/* 흰색 섹션 03 : 파트너 — 하단 광원 + 중앙 헤어라인만 사용 */
.rzo_partners {
    position:relative;
    overflow:hidden;
    background-color:#fff !important;
    background-image:radial-gradient(ellipse at 50% 105%,rgba(254,199,52,.055),transparent 46%) !important;
}
.rzo_partners:before {
    content:'';
    display:block !important;
    position:absolute;
    z-index:0;
    left:50%;
    top:0;
    width:min(1180px,calc(100% - 80px));
    height:1px;
    transform:translateX(-50%);
    background:linear-gradient(90deg,transparent,rgba(254,199,52,.16),transparent) !important;
    opacity:1 !important;
    pointer-events:none;
    -webkit-mask-image:none !important;
    mask-image:none !important;
}

/* 장식이 콘텐츠 위로 올라오지 않도록 */
.rzo_about > .rzo_container,
.rzo_services > .rzo_container,
.rzo_portfolio > .rzo_container,
.rzo_strength > .rzo_container,
.rzo_partners > .rzo_container,
.rzo_contact > .rzo_container {
    position:relative;
    z-index:1;
}

@media (max-width:750px) {
    .rzo_about:before {
        left:-300px;
        top:-230px;
        width:560px;
        height:560px;
        box-shadow:0 0 0 58px rgba(254,199,52,.022);
    }
    .rzo_portfolio:before {
        right:-330px;
        top:-245px;
        width:600px;
        height:600px;
        box-shadow:none;
    }
    .rzo_partners:before {
        width:calc(100% - 40px);
    }
}




/* =========================================================
   RZO CORPORATE V1.29
   PARTNER WHITE VARIANT / LIGHTER WARM SECTIONS
========================================================= */

/* 흰색 단색 모드는 CSS 필터가 아니라 별도 생성한 투명 PNG를 사용 */
.rzo_hero_partner_marquee.rzo_partner_mode_white .rzo_hero_partner_logo img {
    filter:none !important;
    opacity:.94 !important;
}

/* WHAT WE DO / WHY RZO : 기존 웜톤을 훨씬 연하게 정리 */
.rzo_services {
    background-color:#fbfaf7 !important;
}
.rzo_strength {
    background-color:#f8f5ef !important;
}




/* =========================================================
   RZO CORPORATE V1.30
   PROCESS SECTION / PREMIUM WHITE SECTION BRAND MOTIF
========================================================= */

/* WHAT WE DO 하단 제작 프로세스 */
.rzo_process {
    position:relative;
    margin-top:118px;
    padding-top:92px;
    border-top:1px solid rgba(17,24,39,.10);
}
.rzo_process_head {
    max-width:860px;
    margin:0 auto;
    text-align:center;
}
.rzo_process_kicker {
    margin-bottom:18px;
    font-size:18px;
    line-height:1;
    letter-spacing:.26em;
    font-weight:700;
    color:var(--rzo-accent);
}
.rzo_process_head h3 {
    margin:0;
    font-size:clamp(38px,4vw,60px);
    line-height:1.08;
    letter-spacing:-.045em;
    font-weight:700;
    color:#111827;
}
.rzo_process_head > p {
    max-width:700px;
    margin:26px auto 0;
    font-size:18px;
    line-height:1.75;
    color:#737984;
}
.rzo_process_list {
    position:relative;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    margin:62px 0 0;
    padding:0;
    list-style:none;
}
.rzo_process_list:before {
    content:'';
    position:absolute;
    z-index:0;
    left:5%;
    right:5%;
    top:51px;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(17,24,39,.18) 8%,rgba(17,24,39,.18) 92%,transparent);
    pointer-events:none;
}
.rzo_process_item {
    position:relative;
    z-index:1;
    min-height:228px;
    padding:26px 20px 28px;
    border:1px solid rgba(17,24,39,.10);
    background:rgba(255,255,255,.82);
    text-align:left;
    transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease;
    overflow:hidden;
}
.rzo_process_item:before {
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:2px;
    background:var(--rzo-accent);
    transform:scaleX(0);
    transform-origin:left center;
    transition:transform .3s ease;
}
.rzo_process_item:hover {
    transform:translateY(-7px);
    border-color:rgba(254,199,52,.42);
    background:#fff;
    box-shadow:0 20px 46px rgba(17,24,39,.08);
}
.rzo_process_item:hover:before {
    transform:scaleX(1);
}
.rzo_process_top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:30px;
}
.rzo_process_no {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border:1px solid rgba(17,24,39,.16);
    background:#fff;
    font-size:13px;
    line-height:1;
    font-weight:500;
    color:#6f7580;
}
.rzo_process_top .material-symbols-outlined {
    font-family:'Material Symbols Outlined' !important;
    font-size:38px !important;
    line-height:1 !important;
    font-weight:200 !important;
    color:var(--rzo-accent);
    font-variation-settings:'FILL' 0,'wght' 200,'GRAD' 0,'opsz' 48 !important;
}
.rzo_process_item > strong {
    display:block;
    font-size:21px;
    line-height:1.25;
    letter-spacing:-.035em;
    font-weight:650;
    color:#111827;
}
.rzo_process_item > em {
    display:block;
    margin-top:8px;
    font-size:12px;
    line-height:1.2;
    letter-spacing:.14em;
    font-style:normal;
    font-weight:500;
    color:#9a9fa8;
}
.rzo_process_item > p {
    margin-top:19px;
    font-size:16px;
    line-height:1.7;
    letter-spacing:-.02em;
    color:#737984;
}

/* 흰색 섹션 3곳은 동일한 브랜드 모티프로 통일 */
.rzo_about,
.rzo_portfolio,
.rzo_partners {
    --rzo-white-motif-x:7%;
    --rzo-white-motif-y:50%;
    position:relative;
    overflow:hidden;
    background-color:#fff !important;
    background-image:
        radial-gradient(circle at var(--rzo-white-motif-x) var(--rzo-white-motif-y),rgba(254,199,52,.12),rgba(254,199,52,.045) 16%,transparent 37%),
        linear-gradient(180deg,rgba(254,199,52,.018),transparent 18%,transparent 82%,rgba(17,24,39,.012)) !important;
}
.rzo_portfolio {
    --rzo-white-motif-x:93%;
    --rzo-white-motif-y:30%;
}
.rzo_partners {
    --rzo-white-motif-x:10%;
    --rzo-white-motif-y:72%;
}
.rzo_about:before,
.rzo_portfolio:before,
.rzo_partners:before {
    content:'';
    display:block !important;
    position:absolute;
    z-index:0;
    width:720px;
    height:720px;
    opacity:.075 !important;
    background:var(--rzo-accent) !important;
    -webkit-mask:url('img/rzo_icon_white.png') center/contain no-repeat !important;
    mask:url('img/rzo_icon_white.png') center/contain no-repeat !important;
    pointer-events:none;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
.rzo_about:before {
    left:-245px;
    top:50%;
    transform:translateY(-50%) rotate(-8deg) !important;
}
.rzo_portfolio:before {
    right:-260px;
    left:auto !important;
    top:50%;
    transform:translateY(-50%) rotate(9deg) !important;
}
.rzo_partners:before {
    left:-235px;
    top:50%;
    transform:translateY(-50%) rotate(-5deg) !important;
}
.rzo_about:after,
.rzo_portfolio:after,
.rzo_partners:after {
    content:'';
    display:block !important;
    position:absolute;
    z-index:0;
    width:520px;
    height:520px;
    border:1px solid rgba(254,199,52,.15);
    border-radius:50%;
    pointer-events:none;
    opacity:1 !important;
    background:transparent !important;
}
.rzo_about:after {
    left:-335px;
    top:14%;
}
.rzo_portfolio:after {
    right:-340px;
    top:9%;
}
.rzo_partners:after {
    left:-330px;
    bottom:-200px;
}
.rzo_about > .rzo_container,
.rzo_portfolio > .rzo_container,
.rzo_partners > .rzo_container {
    position:relative;
    z-index:1;
}

@media (max-width:1200px) {
    .rzo_process_list {grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
    .rzo_process_list:before {display:none;}
}

@media (max-width:750px) {
    .rzo_process {margin-top:78px;padding-top:62px;}
    .rzo_process_kicker {font-size:15px;}
    .rzo_process_head h3 {font-size:34px;line-height:1.12;}
    .rzo_process_head > p {margin-top:20px;font-size:15px;line-height:1.7;}
    .rzo_process_list {grid-template-columns:repeat(2,minmax(0,1fr));margin-top:40px;gap:10px;}
    .rzo_process_item {min-height:205px;padding:22px 16px;}
    .rzo_process_top {margin-bottom:22px;}
    .rzo_process_no {width:34px;height:34px;font-size:12px;}
    .rzo_process_top .material-symbols-outlined {font-size:33px !important;}
    .rzo_process_item > strong {font-size:18px;}
    .rzo_process_item > em {font-size:10px;letter-spacing:.10em;}
    .rzo_process_item > p {margin-top:14px;font-size:15px;line-height:1.62;}

    .rzo_about:before,
    .rzo_portfolio:before,
    .rzo_partners:before {
        width:480px;
        height:480px;
        opacity:.055 !important;
    }
    .rzo_about:before {left:-280px;}
    .rzo_portfolio:before {right:-285px;}
    .rzo_partners:before {left:-280px;}
    .rzo_about:after,
    .rzo_portfolio:after,
    .rzo_partners:after {
        width:330px;
        height:330px;
        border-color:rgba(254,199,52,.11);
    }
}

@media (max-width:480px) {
    .rzo_process_list {grid-template-columns:1fr;}
    .rzo_process_item {min-height:0;}
    .rzo_about:after,
    .rzo_portfolio:after,
    .rzo_partners:after {display:none !important;}
}

/* V1.30 font baseline: 홈페이지 PC 18px / 모바일 15px 기준 유지 */
@media (min-width:751px) {
    .rzo_process_no,
    .rzo_process_item > em,
    .rzo_process_item > p {font-size:18px;}
}
@media (max-width:750px) {
    .rzo_process_no,
    .rzo_process_item > em,
    .rzo_process_item > p {font-size:15px;}
}




/* =========================================================
   RZO CORPORATE V1.31
   COMPACT PROCESS SECTION
========================================================= */

.rzo_process {
    margin-top:82px;
    padding-top:48px;
    border-top:1px solid rgba(17,24,39,.08);
}
.rzo_process_head {
    max-width:none;
    margin:0 0 28px;
    text-align:left;
    display:flex;
    align-items:flex-end;
    gap:18px;
}
.rzo_process_kicker {
    margin:0;
    font-size:14px;
    line-height:1;
    letter-spacing:.20em;
    font-weight:600;
    color:var(--rzo-accent);
}
.rzo_process_head h3 {
    margin:0;
    font-size:26px;
    line-height:1.2;
    letter-spacing:-.03em;
    font-weight:650;
    color:#111827;
}
.rzo_process_head > p {display:none !important;}
.rzo_process_list {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:0;
    margin:0;
    border-top:1px solid rgba(17,24,39,.10);
    border-bottom:1px solid rgba(17,24,39,.10);
}
.rzo_process_list:before {display:none !important;}
.rzo_process_item {
    min-height:136px;
    padding:18px 18px 20px;
    border:0;
    border-right:1px solid rgba(17,24,39,.08);
    background:rgba(255,255,255,.42);
    box-shadow:none;
    overflow:hidden;
}
.rzo_process_item:last-child {border-right:0;}
.rzo_process_item:before {
    top:auto;
    bottom:0;
    height:2px;
}
.rzo_process_item:hover {
    transform:none;
    border-color:rgba(17,24,39,.08);
    background:rgba(255,255,255,.78);
    box-shadow:none;
}
.rzo_process_top {
    margin-bottom:16px;
}
.rzo_process_no {
    width:auto;
    height:auto;
    border:0;
    background:transparent;
    font-size:12px;
    color:#8b9099;
}
.rzo_process_top .material-symbols-outlined {
    font-size:30px !important;
    font-weight:200 !important;
}
.rzo_process_item > strong {
    font-size:18px;
    line-height:1.25;
    font-weight:650;
}
.rzo_process_item > em {
    margin-top:5px;
    font-size:10px;
    letter-spacing:.11em;
}
.rzo_process_item > p {display:none !important;}

@media (max-width:1200px) {
    .rzo_process_list {grid-template-columns:repeat(3,minmax(0,1fr));}
    .rzo_process_item:nth-child(3n) {border-right:0;}
    .rzo_process_item:nth-child(n+4) {border-top:1px solid rgba(17,24,39,.08);}
}

@media (max-width:750px) {
    .rzo_process {margin-top:58px;padding-top:36px;}
    .rzo_process_head {margin-bottom:22px;gap:12px;align-items:center;}
    .rzo_process_kicker {font-size:12px;}
    .rzo_process_head h3 {font-size:22px;line-height:1.2;}
    .rzo_process_list {grid-template-columns:repeat(2,minmax(0,1fr));}
    .rzo_process_item,
    .rzo_process_item:nth-child(3n) {
        min-height:122px;
        padding:16px 14px 18px;
        border-right:1px solid rgba(17,24,39,.08);
        border-top:0;
    }
    .rzo_process_item:nth-child(2n) {border-right:0;}
    .rzo_process_item:nth-child(n+3) {border-top:1px solid rgba(17,24,39,.08);}
    .rzo_process_top {margin-bottom:13px;}
    .rzo_process_top .material-symbols-outlined {font-size:27px !important;}
    .rzo_process_item > strong {font-size:16px;}
    .rzo_process_item > em {font-size:9px;}
}

@media (max-width:480px) {
    .rzo_process_head {display:block;text-align:center;}
    .rzo_process_kicker {margin-bottom:9px;}
    .rzo_process_list {grid-template-columns:repeat(2,minmax(0,1fr));}
    .rzo_process_item {min-height:116px;}
}




/* =========================================================
   RZO CORPORATE V1.32
   PROCESS CENTER TITLE / ARROW FLOW
========================================================= */
.rzo_process {
    margin-top:88px;
    padding-top:54px;
}
.rzo_process_head {
    display:block;
    max-width:820px;
    margin:0 auto 42px;
    text-align:center;
}
.rzo_process_kicker {
    display:block;
    margin:0 0 12px;
    font-size:14px;
    line-height:1;
    letter-spacing:.22em;
    font-weight:600;
    color:var(--rzo-accent);
}
.rzo_process_head h3 {
    margin:0;
    font-size:30px;
    line-height:1.2;
    letter-spacing:-.035em;
    font-weight:650;
    color:#111827;
}
.rzo_process_list {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:34px;
    margin:0;
    padding:0;
    border:0;
    list-style:none;
}
.rzo_process_item,
.rzo_process_item:nth-child(3n),
.rzo_process_item:nth-child(n+4) {
    position:relative;
    min-height:144px;
    padding:21px 16px 22px;
    border:1px solid rgba(17,24,39,.09);
    background:rgba(255,255,255,.66);
    text-align:center;
    overflow:visible;
}
.rzo_process_item:last-child {border-right:1px solid rgba(17,24,39,.09);}
.rzo_process_item:before {
    top:0;
    bottom:auto;
    height:2px;
    transform:scaleX(0);
}
.rzo_process_item:hover {
    transform:translateY(-3px);
    border-color:rgba(254,199,52,.46);
    background:#fff;
    box-shadow:0 14px 34px rgba(17,24,39,.055);
}
.rzo_process_item:hover:before {transform:scaleX(1);}
.rzo_process_item:not(:last-child):after {
    content:'→';
    position:absolute;
    z-index:3;
    top:50%;
    right:-27px;
    width:20px;
    height:24px;
    margin-top:-12px;
    font-size:24px;
    line-height:24px;
    font-family:Arial,sans-serif;
    font-weight:400;
    color:var(--rzo-accent);
    pointer-events:none;
}
.rzo_process_top {
    justify-content:center;
    gap:12px;
    margin-bottom:15px;
}
.rzo_process_no {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border:1px solid rgba(17,24,39,.13);
    background:#fff;
    font-size:12px;
    line-height:1;
    font-weight:500;
    color:#737984;
}
.rzo_process_top .material-symbols-outlined {
    font-size:31px !important;
    color:var(--rzo-accent);
}
.rzo_process_item > strong {
    display:block;
    font-size:18px;
    line-height:1.3;
    font-weight:650;
    color:#111827;
}
.rzo_process_item > em {
    display:block;
    margin-top:7px;
    font-size:11px;
    line-height:1.25;
    letter-spacing:.10em;
    font-style:normal;
    font-weight:500;
    color:#9398a1;
}
.rzo_process_item > p {display:none !important;}

@media (max-width:1200px) and (min-width:751px) {
    .rzo_process_list {grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 34px;}
    .rzo_process_item:nth-child(4) {grid-column:3;grid-row:2;}
    .rzo_process_item:nth-child(5) {grid-column:2;grid-row:2;}
    .rzo_process_item:nth-child(6) {grid-column:1;grid-row:2;}
    .rzo_process_item:nth-child(3):after {
        content:'↓';
        top:auto;
        right:50%;
        bottom:-27px;
        width:24px;
        height:20px;
        margin:0 -12px 0 0;
        font-size:23px;
        line-height:20px;
    }
    .rzo_process_item:nth-child(4):after,
    .rzo_process_item:nth-child(5):after {
        content:'←';
        top:50%;
        right:auto;
        left:-27px;
        bottom:auto;
        width:20px;
        height:24px;
        margin:-12px 0 0;
        font-size:24px;
        line-height:24px;
    }
    .rzo_process_item:nth-child(6):after {display:none;}
}

@media (max-width:750px) {
    .rzo_process {margin-top:62px;padding-top:40px;}
    .rzo_process_head {margin:0 auto 30px;text-align:center;}
    .rzo_process_kicker {margin:0 0 10px;font-size:12px;}
    .rzo_process_head h3 {font-size:24px;line-height:1.25;}
    .rzo_process_list {
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:repeat(3,auto);
        gap:30px 24px;
    }
    .rzo_process_item,
    .rzo_process_item:nth-child(3n),
    .rzo_process_item:nth-child(n+4) {
        min-height:128px;
        padding:18px 12px 19px;
        border:1px solid rgba(17,24,39,.09);
    }

    /* 모바일 2열 지그재그 순서: 01 → 02 ↓ 03 ← 04 ↓ 05 → 06 */
    .rzo_process_item:nth-child(1) {grid-column:1;grid-row:1;}
    .rzo_process_item:nth-child(2) {grid-column:2;grid-row:1;}
    .rzo_process_item:nth-child(3) {grid-column:2;grid-row:2;}
    .rzo_process_item:nth-child(4) {grid-column:1;grid-row:2;}
    .rzo_process_item:nth-child(5) {grid-column:1;grid-row:3;}
    .rzo_process_item:nth-child(6) {grid-column:2;grid-row:3;}

    .rzo_process_item:not(:last-child):after {
        z-index:4;
        width:18px;
        height:20px;
        margin:0;
        font-size:21px;
        line-height:20px;
        text-align:center;
    }
    .rzo_process_item:nth-child(1):after,
    .rzo_process_item:nth-child(5):after {
        content:'→';
        top:50%;
        right:-22px;
        bottom:auto;
        left:auto;
        margin-top:-10px;
    }
    .rzo_process_item:nth-child(2):after {
        content:'↓';
        top:auto;
        right:50%;
        bottom:-25px;
        left:auto;
        margin-right:-9px;
    }
    .rzo_process_item:nth-child(3):after {
        content:'←';
        top:50%;
        right:auto;
        bottom:auto;
        left:-22px;
        margin-top:-10px;
    }
    .rzo_process_item:nth-child(4):after {
        content:'↓';
        top:auto;
        right:50%;
        bottom:-25px;
        left:auto;
        margin-right:-9px;
    }
    .rzo_process_item:nth-child(6):after {display:none;}

    .rzo_process_top {margin-bottom:12px;}
    .rzo_process_no {width:32px;height:32px;font-size:12px;}
    .rzo_process_top .material-symbols-outlined {font-size:28px !important;}
    .rzo_process_item > strong {font-size:17px;}
    .rzo_process_item > em {font-size:10px;letter-spacing:.06em;}
}

@media (max-width:380px) {
    .rzo_process_list {gap:28px 20px;}
    .rzo_process_item,
    .rzo_process_item:nth-child(3n),
    .rzo_process_item:nth-child(n+4) {padding-left:9px;padding-right:9px;}
    .rzo_process_item:nth-child(1):after,
    .rzo_process_item:nth-child(5):after {right:-20px;}
    .rzo_process_item:nth-child(3):after {left:-20px;}
    .rzo_process_item > strong {font-size:16px;}
    .rzo_process_item > em {font-size:9px;}
}





/* =========================================================
   RZO CORPORATE V1.35
   QUICKBAR LINE SHARPNESS
========================================================= */

/* 하단 고정상담 라인 선명도: 반투명/분수 픽셀 느낌을 줄이고 1px 실선으로 통일 */
.rzo_quickbar_contact {
    position:relative;
    border-right:0;
}
.rzo_quickbar_contact:after {
    content:'';
    position:absolute;
    top:14px;
    right:0;
    bottom:14px;
    width:1px;
    background:#c79a13;
    opacity:1;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    border:1px solid #c79a13 !important;
}
.rzo_quick_privacy_link {
    border-bottom-color:#9b7611 !important;
}

@media (max-width:1100px) {
    .rzo_quickbar_contact:after {display:none;}
}




/* =========================================================
   RZO CORPORATE V1.39
   QUICKBAR PLACEHOLDER / SHARPNESS / MOBILE ALIGNMENT
========================================================= */

/*
 * 표시된 하단 고정상담 영역에 transform 합성 레이어가 남으면
 * Windows Chrome에서 1px 라인과 텍스트가 흐릿하게 보일 수 있습니다.
 * 숨김/노출은 bottom 위치 이동으로 처리하고 transform은 사용하지 않습니다.
 */
.rzo_quickbar {
    bottom:calc(0px - var(--rzo-quickbar-height) - 24px);
    transform:none !important;
    will-change:auto;
    transition:bottom .36s cubic-bezier(.22,.72,.2,1),opacity .22s ease;
}
.rzo_quickbar.is_visible {
    bottom:0;
    transform:none !important;
}

/* 하단바의 문자와 1px 라인은 투명 색상 대신 실색으로 고정 */
.rzo_quickbar_slogan {
    color:#5b4610;
}
.rzo_quick_field input,
.rzo_quick_field select,
.rzo_quick_field textarea {
    border:1px solid #b88905 !important;
}
.rzo_quick_field input::placeholder,
.rzo_quick_field textarea::placeholder {
    color:#655018 !important;
    opacity:1;
}
.rzo_quick_privacy_link {
    border-bottom-color:#85630a !important;
}
.rzo_quickbar_contact:after {
    background:#b88905;
}

/* 모바일: R 심볼과 슬로건/전화번호를 한 덩어리처럼 더 촘촘하게 정렬 */
@media (max-width:480px) {
    .rzo_quickbar_inner {
        gap:5px;
    }
    .rzo_quickbar_contact {
        width:max-content;
        max-width:100%;
        margin:0 auto;
        gap:6px;
        align-items:center;
        justify-content:center;
    }
    .rzo_quickbar_symbol {
        flex:0 0 37px;
        width:37px;
    }
    .rzo_quickbar_symbol img {
        display:block;
        width:37px;
        height:auto;
    }
    .rzo_quickbar_text {
        gap:0;
        line-height:1;
    }
    .rzo_quickbar_slogan {
        margin:0;
        font-size:14px;
        line-height:1.15;
    }
    .rzo_quickbar_phone {
        margin-top:1px;
        font-size:21px;
        line-height:1.08;
    }
}

@media (prefers-reduced-motion:reduce) {
    .rzo_quickbar {
        transition:none !important;
    }
}





/* =========================================================
   RZO CORPORATE V1.42
   SOURCE FORMAT / HERO PARTNER LOGO SCALE
========================================================= */

/* 인트로 파트너 롤링 영역 높이는 유지하고 로고 자체 크기만 확대 */
.rzo_hero_partner_logo {
    width:280px;
    height:106px;
}

@media (max-width:1100px) {
    .rzo_hero_partner_logo {
        width:235px;
        height:90px;
    }
}

@media (max-width:750px) {
    .rzo_hero_partner_logo {
        width:195px;
        height:74px;
    }
}

@media (max-width:480px) {
    .rzo_hero_partner_logo {
        width:170px;
        height:64px;
    }
}




/* =========================================================
   RZO CORPORATE V1.43
   MOBILE PORTFOLIO CONSISTENCY / CATEGORY TABS
========================================================= */

@media (max-width:750px) {
    /* 모바일 메인 카테고리: 6개를 3열 × 2줄로 가운데 정렬 */
    .rzo_portfolio_tabs {
        margin-left:0;
        margin-right:0;
        padding:0;
        overflow:visible;
    }
    .rzo_portfolio_tabs ul {
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        width:100%;
        min-width:0;
        gap:8px;
        justify-content:center;
    }
    .rzo_portfolio_tabs li {
        min-width:0;
    }
    .rzo_portfolio_tabs a {
        width:100%;
        min-width:0;
        height:44px;
        padding:0 6px;
        white-space:nowrap;
        text-align:center;
    }

    /* 사진 하위 카테고리도 모바일에서 가운데 정렬하고 가로 잘림 방지 */
    .rzo_photo_tabs {
        margin-left:0;
        margin-right:0;
        padding:0;
        overflow:visible;
    }
    .rzo_photo_tabs ul {
        width:100%;
        min-width:0;
        justify-content:center;
        flex-wrap:wrap;
    }

    /*
     * 실제 휴대폰은 터치 후 :hover/:focus-within 상태가 남을 수 있어
     * 카드 전체 상세 오버레이가 노출되던 현상이 있었습니다.
     * 750px 이하에서는 기기 종류와 관계없이 View 버튼형으로 고정합니다.
     */
    .rzo_work_card .rzo_work_overlay,
    .rzo_work_card:hover .rzo_work_overlay,
    .rzo_work_card:focus-within .rzo_work_overlay {
        inset:auto 7px 7px auto;
        width:auto;
        height:auto;
        padding:0;
        background:transparent;
        opacity:1;
        visibility:visible;
    }
    .rzo_work_card .rzo_work_overlay_info,
    .rzo_work_card:hover .rzo_work_overlay_info,
    .rzo_work_card:focus-within .rzo_work_overlay_info {
        display:none;
    }
    .rzo_work_card .rzo_work_view,
    .rzo_work_card:hover .rzo_work_view,
    .rzo_work_card:focus-within .rzo_work_view {
        min-width:62px;
        height:32px;
        margin:0;
        padding:0 10px;
        color:#111;
        background:#fff;
        border-color:#d6d8dc;
        box-shadow:none;
    }
    .rzo_work_card:hover .rzo_work_image img,
    .rzo_work_card:focus-within .rzo_work_image img {
        transform:translateZ(0);
        -webkit-transform:translateZ(0);
    }
}

@media (max-width:380px) {
    .rzo_portfolio_tabs a {
        font-size:14px;
        padding:0 4px;
    }
}




/* =========================================================
   RZO CORPORATE V1.44
   SECTION ORDER / MOBILE PHOTO TABS / BACKGROUND FLOW
========================================================= */

/*
 * 섹션 내용 순서는 변경하지만 기존 배경색 흐름은 유지합니다.
 * 흰색 → 웜톤 → 흰색 → 베이지 → 흰색 → 다크
 */
.rzo_partners.rzo_section_slot_02 {
    background-color:#f5f2eb !important;
    background-image:none !important;
}
.rzo_partners.rzo_section_slot_02:before,
.rzo_partners.rzo_section_slot_02:after {
    display:none !important;
}
.rzo_services.rzo_section_slot_05 {
    background-color:#fff !important;
    background-image:none !important;
}
.rzo_services.rzo_section_slot_05:before,
.rzo_services.rzo_section_slot_05:after {
    display:none !important;
}

@media (max-width:750px) {
    /* 메인 카테고리보다 사진 하위분류가 더 커 보이지 않도록 한 단계 작게 */
    .rzo_photo_tabs a {
        font-size:13px;
        line-height:1.45;
        padding:7px 2px;
    }
}

@media (max-width:380px) {
    .rzo_photo_tabs a {
        font-size:12px;
    }
}





/* =========================================================
   HEADER / FOOTER LOGO V1.45
========================================================= */
.rzo_footer_logo {
    position:relative;
    display:block;
    width:100px;
}
.rzo_footer_brand .rzo_footer_logo img {
    display:block;
    width:100%;
    max-width:none;
    height:auto;
}
.rzo_footer_logo_white {
    filter:brightness(0) invert(1);
}
.rzo_footer_logo_gold {
    position:absolute;
    top:0;
    left:0;
    clip-path:inset(0 53% 0 0);
}

@media (max-width:750px) {
    .rzo_footer_logo {
        width:80px;
    }
}
