@charset "utf-8";
/* YASUMI / ORIGINAL SALON DESIGN / NON-PUBLIC PREVIEW / 2026-10-28
01 foundation 02 header/hero 03 sections 04 staff 05 Goope modules 06 footer/dock 07 navigation 08 responsive.
Replaces layered BlackboardSingle presentation CSS. Template functionality and tags are retained. */
:root{--ivory:#faf8f1;--paper:#fffefb;--sage:#e5ebdf;--green:#29483a;--muted:#687568;--gold:#a28c56;--line:#dce1d5;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--dock:72px;--header:calc(76px + env(safe-area-inset-top));}
*{box-sizing:border-box}html{font-size:62.5%;height:100%;overflow:hidden;scroll-behavior:smooth}body.yasumi-salon{margin:0;padding-top:var(--header);height:100%;overflow:hidden;background:var(--ivory);color:var(--green);font:16px/1.9 'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,ul,ol,dl,dd{margin:0;padding:0}h1,h2,h3,h4{font-weight:400}ul{list-style:none}a{color:inherit;text-decoration:none}a img{border:0}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}a,button{transition:color .2s,background .2s,opacity .2s}a:hover{color:#71815f}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:5px}[hidden]{display:none!important}iframe{max-width:100%;border:0}table{border-collapse:collapse;width:100%}#container{height:calc(100dvh - var(--dock) - var(--header));margin-top:0;overflow-y:auto;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:16px;padding-top:0;overscroll-behavior-y:contain}#container [id]{scroll-margin-top:0}
/* 02 / Header and original slideshow */
#header{position:fixed;top:0!important;left:0;right:0;height:var(--header);z-index:1000;background:var(--ivory);border-bottom:1px solid var(--line);box-shadow:0 2px 10px rgba(41,72,58,.04)}.header_inner{height:100%;max-width:1240px;margin:auto;padding:env(safe-area-inset-top) 24px 0;display:flex;align-items:center;justify-content:space-between;gap:32px}#header h1{font:27px/1.2 var(--serif);letter-spacing:.16em}#header h1 a{display:block}#header h1 img{max-width:180px;max-height:44px;object-fit:contain}.header_left,.header_right,.site_title,.caption_replace,.scroll_icon{display:none!important}.ys-desktop-nav ul{display:flex;gap:32px;align-items:center}.ys-desktop-nav a{display:flex;flex-direction:column;align-items:center;line-height:1.6;padding:8px 0}.ys-desktop-nav a span{font:14px/1.5 Georgia,serif;letter-spacing:.12em}.ys-desktop-nav small{font-size:10px;color:var(--muted)}.ys-desktop-nav a:before{display:none}#wrap_slider{position:relative;height:0;background:var(--sage)}body#top #wrap_slider{height:min(64vw,660px)}#slider{position:relative;width:100%;height:100%;max-width:1280px;margin:auto;overflow:hidden}#slider .slick-list,#slider .slick-track,#slider .article{height:100%}#slider .article{position:relative;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}#slider .article img{display:block!important;visibility:visible!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important;object-fit:contain;max-width:none!important}#slider .article:before{display:none}#slider .slick-dots{position:absolute;bottom:12px;width:100%;display:flex;gap:8px;justify-content:center}#slider .slick-dots button{width:8px;height:8px;padding:0;border:0;border-radius:100%;background:var(--green);font-size:0;opacity:.4}#slider .slick-active button{opacity:1}
/* 03 / Unified sections */
#contents_box{position:relative;top:0!important;transform:none!important}#content{padding:0 24px;background:var(--ivory)}#contents_inner{max-width:1120px;margin:auto;padding:64px 0}.main_inner{width:100%;float:none}.sidebar{display:none}#contents_inner>div>h2,#custom_staff>h2{font:32px/1.5 var(--serif);text-align:center;margin:12px 0 40px}h2>div{display:none}.yasumi-intro{text-align:center;max-width:740px;margin:0 auto;padding:40px 24px 44px;border-bottom:1px solid var(--line)}body#top #contents_inner{padding-top:0}.yasumi-eyebrow{font:11px/1.6 Georgia,serif;letter-spacing:.25em;color:var(--gold);margin:0 0 20px}.yasumi-intro h2{font:clamp(26px,4.5vw,38px)/1.7 var(--serif);letter-spacing:.06em;margin-bottom:24px}.yasumi-intro p{margin:16px 0;font-size:15px;line-height:2.2}.yasumi-intro .yasumi-lead{font:19px/2 var(--serif)}.yasumi-features{display:flex;justify-content:center;gap:24px;margin-top:28px;font-size:12px;color:var(--muted)}.yasumi-features li+li{border-left:1px solid var(--line);padding-left:24px}#welcome_area{margin:0}.ys-section{padding:60px 0;border-bottom:1px solid var(--line)}.ys-section-heading{text-align:center;margin-bottom:28px}.ys-section-heading p{font:16px/1.5 Georgia,serif;letter-spacing:.2em;color:var(--gold);margin-bottom:10px}.ys-section-heading h2{font:28px/1.6 var(--serif);letter-spacing:.06em}.ys-offer-grid,.ys-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ys-card{min-width:0;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 30px rgba(42,68,44,.035)}.ys-card>a{display:block}.ys-card img{display:block;width:100%;height:auto!important}.ys-card-caption{padding:16px 18px;margin:0!important;font-size:13px;letter-spacing:.06em;color:var(--muted)}.yasumi-discount-banner{max-width:none;margin:0;line-height:0}.ys-offer-grid .ys-card{align-self:start}.ys-therapist-feature{margin:72px 0 0;padding:64px 8%;background:linear-gradient(90deg,rgba(250,248,241,.9),rgba(250,248,241,.3)),url('https://cdn.goope.jp/222618/261026223152-6adf5648e1c7b.jpg') center/cover;border:1px solid var(--line);border-radius:8px;position:relative}.ys-therapist-feature h2{font:36px/1.7 var(--serif);letter-spacing:.07em;margin:16px 0}.ys-therapist-feature p:not(.yasumi-eyebrow){font-size:15px;color:var(--muted);max-width:340px}.ys-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:52px;padding:12px 24px;margin-top:26px;background:var(--green);color:var(--paper);border:1px solid var(--green);font-size:14px;letter-spacing:.05em;border-radius:3px}.ys-button:hover{background:#3e5c45;color:white}.ys-system-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;max-width:940px;margin:auto}.ys-system-inner>a{display:block;max-width:440px;margin:auto}.ys-system-inner img{display:block;width:100%;height:auto!important;border-radius:8px;border:1px solid var(--line)}.ys-system-note h3{font:32px/1.8 var(--serif);margin:16px 0 24px}.ys-system-note>p:not(.yasumi-eyebrow){font-size:15px;line-height:2;color:var(--muted)}.ys-text-link{display:inline-block;border-bottom:1px solid var(--gold);margin-top:24px;font:22px/1.8 Georgia,serif;letter-spacing:.06em}.ys-section-note{text-align:center;font-size:14px;color:var(--muted);margin-top:28px!important}.ys-room-card .ys-card-caption{font:18px/1.8 var(--serif)}.ys-partners{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;margin:32px auto}.ys-partners>a{font-size:11px!important;line-height:1.4}.ys-partners img{max-width:130px!important;max-height:42px;object-fit:contain}
/* 04 / Native Goope staff cards: registration and descriptions unchanged */
#custom_staff.ys-staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}#custom_staff>br{display:none}#custom_staff .staff_wrap{display:flex;flex-direction:column;min-width:0;margin:0;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 8px 26px rgba(39,64,42,.04)}#custom_staff .staff_wrap:before,#custom_staff .staff_wrap:after{display:none}#custom_staff .staff--image{float:none;width:100%;height:auto;aspect-ratio:3/4;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#e8ebe2;margin:0;padding:0}#custom_staff .staff__text{float:none;width:100%;margin:0;padding:22px 18px}#custom_staff .staff__text--name{font:27px/1.5 var(--serif);letter-spacing:.1em;margin:0 0 6px;color:var(--green)}#custom_staff .staff__text--job{min-height:22px;font-size:12px;line-height:1.8;margin-bottom:16px;color:var(--muted)}.ys-profile{margin-top:18px;border-top:1px solid var(--line)}.ys-profile summary{cursor:pointer;font-size:13px;padding:15px 0;line-height:1.7;min-height:48px;list-style:none;display:flex;justify-content:space-between;gap:4px}.ys-profile summary:after{content:'＋';color:var(--gold)}.ys-profile[open] summary:after{content:'－'}.ys-profile summary::-webkit-details-marker{display:none}#custom_staff .staff__text--description{font-size:15px;line-height:1.95;color:var(--green);overflow-wrap:anywhere}.staff__text--description p{margin:0 0 16px!important}.staff__text--description img{height:auto!important;max-width:100%;margin:16px auto}.staff__text--description a{text-decoration:underline;text-underline-offset:3px}.ys-staff-eyebrow{text-align:center}.ys-staff-title{text-align:center;font:34px/1.5 var(--serif);margin:8px 0 40px}.staff_wrap:target{outline:2px solid var(--gold);outline-offset:4px}
/* 05 / Existing Goope page modules */
.textfield{overflow-wrap:anywhere}.textfield img{max-width:100%!important;height:auto!important}.textfield p{margin:.7em 0}.textfield li{list-style:disc inside}.textfield ol li{list-style:decimal inside}.textfield iframe{max-width:100%!important}.textfield a{text-underline-offset:4px}.clear:after{content:'';display:block;clear:both}.main_inner h3{font:24px/1.7 var(--serif);margin:24px 0 16px}.main_inner h4{font-size:17px;color:var(--green);margin:16px 0}.info_body,.photo_list_items,.album,.menu_items,.schedule_detail{margin-bottom:40px}.info_body>.textfield{padding-top:20px}.info_body .photo img{max-height:600px;object-fit:contain}.photo_thumb{display:inline-block;width:calc(33.333% - 16px);margin:8px}.photo_thumb img{width:100%;height:auto}.album_title{font:22px/1.7 var(--serif);margin:24px 0}.photo_image img{max-width:100%;height:auto}.menu_body{display:flow-root}.menu_photo{float:left;width:36%;margin:0 24px 24px 0}.menu_price{font-size:22px;color:var(--gold)}.menu_category{margin-bottom:24px}.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:36px auto}.pager a{padding:6px 14px;border:1px solid var(--line)}.pager .chk{background:var(--sage)}#information_area,.section{margin:60px 0}.section>h2,#information_area>h2{font:28px/1.6 var(--serif);text-align:center;margin-bottom:30px}#information_area li{border-bottom:1px solid var(--line);padding:18px 0}#information_area li span{color:var(--muted);font-size:13px;margin-right:20px}.btn_details{text-align:center;margin-top:24px}.btn_details a{display:inline-block;border:1px solid var(--line);padding:12px 24px}.section_photo .list{display:flex;gap:16px}.section_photo li{width:180px}.section_photo .arrow-prev,.section_photo .arrow-next{cursor:pointer}.map{margin-bottom:32px}.map iframe{width:100%;height:300px;border-radius:8px}.table_detail{table-layout:fixed;background:var(--paper);font-size:15px}.table_detail th,.table_detail td{padding:20px 24px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.table_detail th{width:24%;font-weight:400;color:var(--muted);font-size:13px}.table_detail a{text-decoration:underline}.contact_area_wrap,.personal_info,.reservation .form form{max-width:640px;width:100%;margin:0 auto}.contact_area,.reservation_area{margin-bottom:28px}label{display:inline-block;margin-bottom:8px}input[type=text],input[type=email],input[type=tel],textarea,select{max-width:100%;padding:12px;border:1px solid var(--line);background:var(--paper);color:var(--green);border-radius:3px}input[type=text],input[type=email],input[type=tel],textarea{width:100%}textarea{min-height:160px}input[type=submit],input[type=button],.contact .button{background:var(--green);color:var(--paper);border:0;padding:14px 28px;min-height:48px;cursor:pointer}.personal_info{font-size:13px;margin-top:40px}.requier,.required{color:#a14d42}.table_calendar{table-layout:fixed;margin:24px 0}.table_calendar td{position:relative;border:1px solid var(--line);height:100px;vertical-align:top;padding:6px}.table_calendar th{padding:10px}.table_calendar .sun,.table_calendar .holiday{color:#ac5149}.calendar_header{text-align:center}.schedule{margin:24px 0}.schedule_category{background:var(--sage);padding:4px 8px}.coupon_body{margin:24px 0}.coupon_qr{margin:16px}.reservation .summary{text-align:center;margin:32px 0}.reservation_photo img{max-width:100%}.today_area,.qr_area,.counter_area,.totop{display:none!important}
/* 06 / Footer and reserved phone dock */
#footer{background:#e7ecdf;border-top:1px solid #d3dbcb;padding:56px 24px 36px;text-align:center}#footer_inner{max-width:1120px;margin:auto}.ys-footer-brand p{font:10px/1.8 Georgia,serif;letter-spacing:.2em;color:var(--muted)}.ys-footer-brand strong{display:block;font:32px/1.8 var(--serif);letter-spacing:.16em;margin:8px 0}.ys-footer-brand>span{font-size:13px;color:var(--muted)}.ys-footer-nav ul{display:flex;justify-content:center;gap:30px;margin:30px 0}.ys-footer-nav a{font:12px/1.7 Georgia,serif;letter-spacing:.08em}.ys-footer-nav small{display:none}.copyright{font-size:11px;margin-top:32px}/* Footer service/admin links hidden at owner request. */
#footer .powered{display:none!important}.footer_social_wrap{margin:20px}.footer_social_wrap:empty,#gadgets:has(.inner:empty){display:none}.introduction img{max-width:100%}#navi_parts{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.navi_parts_detail img,.navi_parts_detail iframe{max-width:100%}.fixed-phone-banner{position:fixed;bottom:0;left:0;width:100%;height:var(--dock);padding:10px 20px max(10px,env(safe-area-inset-bottom));z-index:3000;border-top:1px solid var(--line);background:var(--ivory);display:flex;align-items:center;justify-content:center}.fixed-phone-banner>a{display:flex;align-items:center;justify-content:center;gap:24px;max-width:600px;width:100%;height:100%;background:var(--green);color:var(--paper);border-radius:4px}.fixed-phone-banner img{width:174px;height:54px;object-fit:contain}.ys-phone-text{display:flex;align-items:center;gap:18px}.ys-phone-text small{font-size:12px;letter-spacing:.08em}.ys-phone-text strong{font:24px/1.2 Georgia,serif;letter-spacing:.05em}
/* 07 / Accessible slow sliding menu */
#yasumi-menu-open{display:none;position:fixed;right:16px;top:14px;z-index:5100;width:44px;height:44px;padding:9px 7px;border:0;background:transparent;cursor:pointer}#yasumi-menu-open span{display:block;height:1px;margin:6px 0;background:var(--green)}html.yasumi-menu-visible #container{overflow:hidden}#yasumi-menu{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:linear-gradient(150deg,#faf8f1,#e0e9d8);color:var(--green)}#yasumi-menu::backdrop{background:rgba(25,45,32,.18)}.yasumi-menu-close{position:absolute;right:22px;top:24px;display:flex;flex-direction:column;align-items:center;width:52px;border:0;background:transparent;color:var(--green);cursor:pointer}.yasumi-menu-close span{font:40px/1 Georgia,serif}.yasumi-menu-close small{font:10px/1.8 Georgia,serif;letter-spacing:.1em}#yasumi-menu nav{padding:110px 24px 50px 0}#yasumi-menu li{margin-bottom:18px}#yasumi-menu nav a{display:flex;align-items:center;gap:15px;min-height:62px;padding:12px 0}#yasumi-menu nav a:before{content:'';width:32px;height:1px;background:var(--gold)}#yasumi-menu nav span{font:25px/1.4 Georgia,serif;letter-spacing:.07em}#yasumi-menu nav small{font-size:12px;color:var(--muted)}#yasumi-menu[open]{animation:ys-menu-in 1.2s cubic-bezier(.22,.75,.25,1) both}#yasumi-menu[open].is-closing{animation:ys-menu-out 1.2s cubic-bezier(.4,0,.6,1) both;pointer-events:none}@keyframes ys-menu-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes ys-menu-out{from{transform:translateX(0)}to{transform:translateX(-100%)}}
/* 08 / Mobile-first content priorities */
@media(max-width:900px){.ys-desktop-nav{display:none}#yasumi-menu-open{display:block}.header_inner{justify-content:center}#custom_staff.ys-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ys-system-inner{gap:32px}}
@media(max-width:600px){:root{--header:calc(66px + env(safe-area-inset-top));--dock:calc(64px + env(safe-area-inset-bottom))}body{font-size:16px}.header_inner{padding:env(safe-area-inset-top) 64px 0}#header h1{font-size:24px}#yasumi-menu-open{top:calc(10px + env(safe-area-inset-top))}body#top #wrap_slider{height:75vw}#content{padding:0 20px}#contents_inner{padding:42px 0}#contents_inner>div>h2{font-size:27px;margin-bottom:30px}.yasumi-intro{padding:28px 0 30px}.yasumi-intro h2{font-size:25px;letter-spacing:.01em;margin-bottom:20px}.yasumi-intro p{font-size:14px}.yasumi-intro .yasumi-lead{font-size:17px}.yasumi-intro>p:not(.yasumi-lead):not(.yasumi-eyebrow){display:none}.yasumi-features{gap:12px;font-size:11px}.yasumi-features li+li{padding-left:12px}.ys-section{padding:36px 0}.ys-section-heading{margin-bottom:20px}.ys-section-heading p{font-size:14px}.ys-section-heading h2{font-size:23px}.ys-offer-grid,.ys-room-grid{grid-template-columns:1fr;gap:16px}.ys-card-caption{padding:12px 16px;font-size:12px}.ys-therapist-feature{padding:36px 24px;margin-top:48px}.ys-therapist-feature h2{font-size:28px}.ys-therapist-feature p:not(.yasumi-eyebrow){font-size:14px}.ys-button{width:100%;gap:16px}.ys-system-inner{grid-template-columns:1fr;gap:28px}.ys-system-note{text-align:center}.ys-system-note h3{font-size:24px;margin:10px 0 16px}.ys-system-note p:not(.yasumi-eyebrow){font-size:14px}.ys-system-note .yasumi-eyebrow{display:none}.ys-section-note{font-size:13px;text-align:left}.ys-room-card .ys-card-caption{font-size:17px}#custom_staff.ys-staff-grid{gap:16px 12px}#custom_staff .staff__text{padding:15px 12px}#custom_staff .staff__text--name{font-size:23px}#custom_staff .staff__text--job{font-size:11px}#custom_staff .staff__text--description{font-size:14px;line-height:1.85}.ys-profile summary{font-size:11px}.staff_wrap:has(.ys-profile[open]){grid-column:1/-1}#custom_staff .staff_wrap:has(.ys-profile[open]) .staff--image{max-height:380px}.table_detail tr,.table_detail th,.table_detail td{display:block;width:100%}.table_detail th{padding:16px 18px 0;border:0}.table_detail td{padding:4px 18px 18px}.map iframe{height:240px}.menu_photo{float:none;width:100%;margin:0 0 20px}.table_calendar td{height:64px;padding:3px}.photo_thumb{width:calc(50% - 16px)}#footer{padding:40px 20px 28px}.ys-footer-nav ul{gap:20px}.ys-footer-nav a{font-size:11px}.fixed-phone-banner{padding:8px 16px calc(8px + env(safe-area-inset-bottom))}.fixed-phone-banner img{display:none}.fixed-phone-banner>a{gap:0}.ys-phone-text{display:flex;flex-direction:column;gap:2px}.ys-phone-text small{font-size:10px;letter-spacing:.12em}.ys-phone-text strong{font-size:23px}.copyright{font-size:10px}}
@media(max-width:360px){#content{padding:0 16px}.ys-profile summary{font-size:10px}.yasumi-intro h2{font-size:22px}.yasumi-features{gap:8px}.yasumi-features li+li{padding-left:8px}}
@media(prefers-reduced-motion:reduce){html,#container{scroll-behavior:auto}#yasumi-menu[open],#yasumi-menu[open].is-closing{animation:none}*{transition:none!important}.fadeIn{animation:none}}

/* Preserved Goope icon and image viewer compatibility */
@font-face {
  font-family: 'icomoon';
  src: url('/css/social-icon-fonts/social-icon.eot?3koa62');
  src: url('/css/social-icon-fonts/social-icon.eot?3koa62#iefix') format('embedded-opentype'), url('/css/social-icon-fonts/social-icon.ttf?3koa62') format('truetype'), url('/css/social-icon-fonts/social-icon.woff?3koa62') format('woff'), url('/css/social-icon-fonts/social-icon.svg?3koa62#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-instagram:before {
  content: "\e900";
  color: #fff;
  font-size: 30px;
  padding: 0 5px;
}
.icon-facebook:before {
  content: "\e901";
  color: #fff;
  font-size: 30px;
  padding: 0 5px;
}
.icon-twitter:before {
  content: "\e902";
  color: #fff;
  font-size: 30px;
  padding: 0 5px;
}
#colorbox,
#cboxOverlay,
#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
}
#cboxWrapper {
  max-width: none;
}
#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}
#cboxMiddleLeft,
#cboxBottomLeft {
  clear: left;
}
#cboxContent {
  position: relative;
}
#cboxContent button {
  border: none;
}
#cboxContent button:focus {
  outline: none;
}
#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
#cboxTitle {
  margin: 0;
}
#cboxLoadingOverlay,
#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
  cursor: pointer;
}
#colorbox.cb #cboxPrevious,
#colorbox.cb #cboxNext,
#colorbox.cb #cboxClose {
  background: transparent;
  text-indent: 0;
  font-size: 30px;
  font-size: 3rem;
  color: #ffffff;
  color: rgba(255, 255, 255, 0.8);
}
.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}
.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}
#colorbox,
#cboxContent,
#cboxLoadedContent {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000000;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}
#colorbox {
  outline: 0;
}
#cboxContent {
  margin-top: 30px;
  background: #000;
  background: transparent;
}
.cboxIframe {
  background: #fff;
}
#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}
#cboxLoadedContent {
  padding: 40px;
  border: 2px solid #131313;
  border: none;
  background: #ffffff;
  background: #131313;
  background: transparent;
}
#cboxTitle {
  position: absolute;
  top: -20px;
  left: 0;
  color: #ccc;
}
#cboxCurrent {
  position: absolute;
  top: 6px;
  right: 50px;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: 'Montserrat', sans-serif;
  color: rgba(255, 255, 255, 0.8);
}
#cboxLoadingGraphic {
  background: none;
}
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active,
#cboxNext:active,
#cboxSlideshow:active,
#cboxClose:active {
  outline: 0;
}
#cboxSlideshow {
  position: absolute;
  top: -20px;
  right: 90px;
  color: #fff;
}
#cboxPrevious,
#cboxNext,
#cboxClose {
  z-index: 1000;
}
#cboxPrevious:hover,
#cboxNext:hover,
#cboxClose:hover {
  cursor: pointer;
  color: #ffffff;
}
#cboxPrevious {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -32px;
  background-repeat: no-repeat;
  background-position: top left;
  width: 28px;
  height: 65px;
  text-indent: -9999px;
}
#cboxPrevious:hover {
  background-position: bottom left;
}
#cboxNext {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -32px;
  background-repeat: no-repeat;
  background-position: top right;
  width: 28px;
  height: 65px;
  text-indent: -9999px;
}
#cboxNext:hover {
  background-position: bottom right;
}
#cboxClose {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  background-repeat: no-repeat;
  background-position: top center;
  width: 38px;
  height: 38px;
  text-indent: -9999px;
}
#cboxClose:hover {
  background-position: bottom center;
}

/* Final component alignment and generated empty section cleanup */
#contents_inner h2:empty,.staff__text__social:empty{display:none}.footer_social_wrap [class^="icon-"]:before{color:var(--green)}

@media(min-width:901px){#custom_staff .staff_wrap:has(.ys-profile[open]){grid-column:span 2}#custom_staff .staff_wrap:has(.ys-profile[open]) .staff--image{max-height:420px}}

/* 2026-10-28 refinement / same-site live staff cards and compact spacing */
.ys-therapist-feature.ys-home-therapists{margin:28px 0 0;padding:28px 0 0;background:none;border:0;border-radius:0;text-align:center}
.ys-home-therapists>.yasumi-eyebrow{font:16px/1.5 Georgia,serif;letter-spacing:.2em;margin:0 0 10px}
.ys-home-therapists h2{font:28px/1.6 var(--serif);letter-spacing:.06em;margin:0 0 12px}
.ys-home-therapists p:not(.yasumi-eyebrow){max-width:none;font-size:14px;margin:0 auto 24px;color:var(--muted)}
.ys-home-staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;text-align:left}
.ys-home-staff-card{display:block;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 6px 20px rgba(41,72,58,.035)}
.ys-home-staff-card:hover{color:var(--green);box-shadow:0 8px 24px rgba(41,72,58,.08)}
.ys-home-staff-card img{display:block;width:100%;height:auto!important;aspect-ratio:3/4;object-fit:contain;background:#e8ebe2}
.ys-home-staff-meta{display:flex;flex-direction:column;padding:16px 18px;gap:6px}
.ys-home-staff-meta strong{font:26px/1.5 var(--serif);letter-spacing:.08em}
.ys-home-staff-more{font-size:11px;color:var(--muted);letter-spacing:.02em}
.ys-home-therapists>.ys-button{margin-top:24px}
.ys-staff-fallback{padding:16px 0}
.textfield .fixed-phone-banner{display:none!important}
@media(max-width:900px){.ys-home-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.ys-therapist-feature.ys-home-therapists{margin:20px 0 0;padding:20px 0 0}.ys-home-therapists>.yasumi-eyebrow{font-size:14px}.ys-home-therapists h2{font-size:23px;margin:0 0 10px}.ys-home-therapists p:not(.yasumi-eyebrow){font-size:13px;margin-bottom:20px}.ys-home-staff-grid{gap:16px 12px}.ys-home-staff-meta{padding:12px;gap:4px}.ys-home-staff-meta strong{font-size:23px}.ys-home-staff-more{font-size:10px}.ys-home-therapists>.ys-button{margin-top:20px}}
