
/* p73 공통 배경 */
body.page-73 { background:#000 !important; }
body.page-73 #wrap { background:#000 !important; }
body.page-73 #container { background:#000 !important; padding-bottom:0 !important; }
body.page-73 .detail-header-spacer { background:#000 !important; }

/* 실제 모바일 본문은 기존 구현을 유지하고 PC/태블릿만 레퍼런스 비율을 적용한다. */
.p73_reference_body { display:none; }
.p73_legacy_body { display:block; }
html.device-desktop body.page-73 .p73_reference_body,
html.device-tablet body.page-73 .p73_reference_body { display:block; }
html.device-desktop body.page-73 .p73_legacy_body,
html.device-tablet body.page-73 .p73_legacy_body { display:none; }

/* p73 Boucheron 레퍼런스 본문 */
.p73_reference_wrap{
  width:100%;
  overflow:hidden;
  background:#000;
  color:#fff;
  padding:0;
}
.p73_reference_row{
  display:flex;
  flex-direction:column;
  width:100%;
  max-width:1440px;
  margin:0 auto;
  padding:0 40px;
  box-sizing:border-box;
}
.p73_reference_row--intro{ margin-top:0; }

  /* 닫힌 상태에서는 첫 번째 영역 또는 이미 표시된 내비게이션 위에서만 nav를 유지한다. */
  body.page-73 #header:not(.nav-open):not(.open):not(:has(.header_top:hover, nav:hover)) nav{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    opacity:0 !important;
    overflow:hidden !important;
    pointer-events:none !important;
    border:none !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.page-73 #header:not(.nav-open):not(.open):not(:has(.header_top:hover, nav:hover)),
  body.page-73 #header:not(.nav-open):not(.open):not(:has(.header_top:hover, nav:hover)) .header_top,
  body.page-73 #header:not(.nav-open):not(.open):not(:has(.header_top:hover, nav:hover)) nav{
    transition:none !important;
  }

/* p73 헤더 활성 바 검은색 보장 */
body.page-73 #header nav .header-line {
  background: #000 !important;
}
@media (min-width:1025px){
  /* JavaScript가 실제 카테고리 폭을 지정하기 전 전체 헤더 폭이 노출되지 않게 한다. */
  body.page-73 #header nav .header-line{
    width:0;
  }
}


  /* 본문 첫 이미지 마진을 header_top 높이(80px)와 일치시켜 로고 상하 여백 대칭 완성 */
  html.device-desktop body.page-73 .p73_reference_row--intro,
  html.device-tablet body.page-73 .p73_reference_row--intro{
    margin-top:80px;
  }
  html.device-desktop body.page-73 .p73_reference_row,
  html.device-tablet body.page-73 .p73_reference_row{
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
    padding-left:13.0vw;
    padding-right:13.0vw;
  }

.p73_reference_media{
  display:block;
  width:100%;
  margin:0;
  overflow:hidden;
  background:#000;
}
.p73_reference_media--wide{ aspect-ratio:8 / 5; }
.p73_reference_media--portrait{ aspect-ratio:4 / 5; }
.p73_reference_media img,
.p73_reference_media video{
  display:block;
  width:100%;
  height:100%;
  border:0;
}
.p73_reference_media img{ object-fit:cover; }
.p73_reference_media video{ object-fit:contain; }

.p73_reference h1,
.p73_reference h2,
.p73_reference h3{
  color:#fff;
  font-family:'outfit','Noto Sans KR',sans-serif;
  font-weight:300;
  text-align:center;
  text-transform:lowercase;
}
.p73_reference h1{
  margin:0 0 28px;
  font-size:60px;
  line-height:1;
}
.p73_reference h2{
  margin:28px 0 24px;
  font-size:28px;
  line-height:1;
}
.p73_reference h3{
  margin:0;
  font-size:20px;
  line-height:1;
}
.p73_reference p{
  margin:115px 0;
  color:#fff;
  font-family:'outfit','Noto Sans KR',sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1;
  text-align:center;
  word-break:keep-all;
}
.p73_reference .p73_reference_intro_title{
  margin:115px 0 0;
  font-size:20px;
  font-weight:400;
  line-height:1;
}
.p73_reference .p73_reference_intro_title em.outfit{
  font-size:20px;
  font-weight:350;
}
.p73_reference .p73_reference_intro_subtitle{
  margin:9px 0 115px;
  font-size:20px;
  font-weight:400;
  line-height:1;
}
.p73_reference .p73_spacer{
  height:25px;
  min-height:25px;
  line-height:1;
}
.p73_reference_copy{
  display:flex;
  flex-direction:column;
  width:100%;
  margin:115px 0;
}
.p73_reference_copy p{
  margin:0;
  font-weight:300;
  line-height:1;
}
.p73_reference_copy p em.outfit{ font-weight:250; }
.p73_reference_copy p + p{ margin-top:10px; }
.p73_reference_copy p:last-child{ margin-bottom:0; }
.p73_reference_pair{
  display:flex;
  align-items:stretch;
  width:100%;
}
.p73_reference_pair > .p73_reference_media{
  flex:1 1 50%;
  min-width:0;
  margin:0;
}

  html.device-desktop body.page-73 .p73_reference_pair,
  html.device-tablet body.page-73 .p73_reference_pair{
    padding:0;
    column-gap:8px;
    box-sizing:border-box;
  }
  html.device-desktop body.page-73 .p73_reference_pair > .p73_reference_media,
  html.device-tablet body.page-73 .p73_reference_pair > .p73_reference_media{
    margin:0;
  }

.p73_reference_wide_video{
  flex:none;
  width:100%;
  margin:0;
}

.p73_reference_archive_grid,
.p73_reference_promo{
  display:flex;
  align-items:stretch;
  width:100%;
}
.p73_reference_archive_item{
  display:flex;
  flex:1 1 25%;
  flex-direction:column;
  min-width:0;
  margin:24px;
}
.p73_reference_archive_item figure{
  flex:none;
  width:100%;
  margin:0;
  aspect-ratio:4 / 5;
}
.p73_reference_archive_item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.p73_reference_archive_item p{
  flex:none;
  width:100%;
}
.p73_reference_promo_side{
  flex:0 1 16.6667%;
  min-width:0;
  margin:24px;
}
.p73_reference_promo_main{
  flex:0 1 66.6667%;
  min-width:0;
  margin:24px;
}
.p73_reference_promo_title{
  display:flex;
  flex-direction:column;
  height:94px;
}
.p73_reference_promo_title h3{
  flex:none;
  height:25px;
  margin:16px 0 0;
}
.p73_reference_promo_title h3 + h3{ margin-top:16px; }
.p73_reference_promo_main figure{
  width:100%;
  margin:0 0 8px;
  aspect-ratio:1000 / 563;
}
.p73_reference_promo_main figure img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.p73_reference_promo_actions{
  height:40px;
  margin:20px 10px 10px;
  text-align:center;
}
.p73_reference_promo_actions a{
  display:inline-block;
  color:#fff;
  font-family:'outfit','Noto Sans KR',sans-serif;
  font-size:15px;
  line-height:1;
  text-decoration:none;
}

.p73_reference_grid_section{
  margin-bottom:115px;
}
.p73_reference_grid3{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  column-gap:8px;
  row-gap:65px;
  width:100%;
  box-sizing:border-box;
}
.p73_reference_grid_item{
  display:flex;
  flex-direction:column;
  width:100%;
  min-width:0;
}
.p73_reference_grid_item figure{
  display:block;
  width:100%;
  margin:0;
  aspect-ratio:4 / 5;
  overflow:hidden;
  background:#000;
}
.p73_reference_grid_item figure img{
  display:block;
  width:100%;
  height:100%;
  border:0;
  object-fit:cover;
}



/* p73 데스크톱/태블릿 전용 보정 */

  body.page-73 #container{
    border-bottom:1px solid rgba(171, 171, 168, 0.81) !important;
  }


/* p73 전용 탑버튼 반전 (CSS 원 제거, 시안 이미지로 원형+화살표 일체형 적용) */
body.page-73 #footer.footer_white .fix_btn_box{
	 overflow:visible !important;
}
body.page-73 #footer.footer_black .fix_btn_box{
  overflow:visible !important;
}
body.page-73 #footer.footer_white .fix_btn_box .btn{
	position:relative;
	box-sizing:border-box !important;
	background-color:transparent !important;
	border:0 none !important;
	border-radius:0 !important;
	box-shadow:none !important;
	outline:none !important;
	color:#fff !important;
}
body.page-73 #footer.footer_black .fix_btn_box .btn{
  position:relative;
  box-sizing:border-box !important;
  background-color:transparent !important;
  border:0 none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:none !important;
  color:#fff !important;
}
body.page-73 #footer.footer_white .fix_btn_box .btn img{
	visibility:hidden !important;
}
body.page-73 #footer.footer_black .fix_btn_box .btn img{
  visibility:hidden !important;
}
body.page-73 #footer.footer_white .fix_btn_box .btn::after{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url('/img/inc-img/common/arrowup_btn_white.png?v=draft4') no-repeat center center;
	background-size:contain;
	pointer-events:none;
}
body.page-73 #footer.footer_black .fix_btn_box .btn::after{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:url('/img/inc-img/common/arrowup_btn_white.png?v=draft4') no-repeat center center;
  background-size:contain;
  pointer-events:none;
}

@media (min-width:1025px){
  /* nav::after 한 줄만 2·3차 영역 경계선으로 사용한다. */
  body.page-73 #header nav .deps_1 > li > .deps_2{
    border-top:0 !important;
    border-bottom:1px solid #fff !important;
  }
}

/* 모바일 legacy 본문 보존 */
.p73_wrap{
  background:#000;
  color:#fff;
  padding:40px 0 100px;
}
.p73_inner{
  max-width:1120px;
  margin:0 auto;
  padding:0 15px;
  box-sizing:border-box;
}
.p73_hero{
  width:72%;
  max-width:720px;
  margin:0 auto 115px;
  background:#000;
  overflow:hidden;
}
.p73_hero img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4 / 5;
  object-fit:cover;
  filter:grayscale(100%) contrast(1.08);
}
.p73_title{
  text-align:center;
  margin:0 auto 115px;
}
.p73_title h2{
  margin:0 0 12px;
  color:#fff;
  font-family:'Noto Sans KR',sans-serif;
  font-size:var(--h4-tit);
  font-weight:500;
  letter-spacing:.05em;
  line-height:1;
}
.p73_title p{
  margin:0;
  color:#aaa;
  font-family:'Noto Sans KR',sans-serif;
  font-size:var(--sub-txt);
  font-weight:400;
  letter-spacing:-.01em;
  line-height:1;
}
.p73_grid2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin:0 auto 80px;
  padding:0 15px;
  box-sizing:border-box;
}
.p73_grid2_item{
  position:relative;
  overflow:hidden;
  background:#000;
}
.p73_grid2_item img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(100%) contrast(1.06);
}
.p73_grid2_item--cover img{ aspect-ratio:4 / 5; }
.p73_grid2_item--product{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#000;
}
.p73_grid2_item--product img{
  aspect-ratio:4 / 5;
  padding:0;
  box-sizing:border-box;
  filter:grayscale(100%) contrast(1.1) brightness(1.02);
  background:#000;
  object-fit:cover;
}
.p73_text{
  max-width:680px;
  margin:0 auto 100px;
  text-align:center;
}
.p73_text p{
  margin:0;
  color:#e6e6e6;
  font-family:'Noto Sans KR',sans-serif;
  font-size:var(--sub-txt);
  font-weight:400;
  letter-spacing:-.01em;
  line-height:1;
  word-break:keep-all;
}
.p73_text p + p{ margin-top:8px; }
.p73_text p:last-child{ margin-bottom:0; }
.p73_text .p73_text_group{ margin-bottom:22px; }
.p73_text .p73_text_group:last-child{ margin-bottom:0; }



  #container{padding-bottom:0 !important;}
