/*
Theme Name: Sayaka Child
Template: cocoon-master
Version: 2.0.0
*/

/* ============ さやかの研究ノート v2「銀座サロン」調 ============ */
:root{
  --sy-ink:#2b2626;        /* 墨 */
  --sy-charcoal:#221f1f;   /* ヘッダー */
  --sy-ivory:#f7f4ef;      /* 地 */
  --sy-paper:#fffdf9;      /* カード */
  --sy-gold:#b5975a;       /* シャンパンゴールド */
  --sy-gold-l:#d8c49a;
  --sy-blush:#c9a3ab;      /* くすみピンク */
  --sy-line:#e5ddd2;       /* 罫線 */
  --sy-serif:"Yu Mincho","YuMincho","Hiragino Mincho ProN","Noto Serif JP",serif;
}
body{background:var(--sy-ivory); color:var(--sy-ink); font-feature-settings:"palt";}

/* ---- ヘッダー: 細身のダーク帯＋明朝ロゴ ---- */
#header-container{background:var(--sy-charcoal); border-bottom:1px solid rgba(216,196,154,.35); padding:8px 0 0;}
#header-container .site-name-text{color:#f3ece0; font-family:var(--sy-serif); font-weight:600; letter-spacing:.34em; font-size:26px;}
#header-container .tagline{color:#9d938a; font-size:11px; letter-spacing:.22em;}
#header-in{padding:10px 0;}
#navi{background:transparent; border-top:1px solid rgba(255,255,255,.08);}
#navi .navi-in>ul li{border:none;}
#navi .navi-in a{color:#d9d2c7; font-family:var(--sy-serif); font-weight:500; font-size:13.5px; letter-spacing:.18em; transition:.3s; height:52px; line-height:52px;}
#navi .navi-in a:hover{background:transparent; color:var(--sy-gold-l);}

/* ---- トップページ共通 ---- */
.home .entry-title{display:none;}
.home .article{padding:0; border:none; background:transparent;}
.home #sidebar{display:none;}
.home .content #main{width:100%; max-width:100%; margin:0; padding:0 14px; background:transparent; border:none; box-shadow:none;}
.home .breadcrumb{display:none;}
.home .sns-share,.home .sns-follow,.home .toc,.home .toc-container,
.home .date-tags,.home .post-date,.home .entry-date,.home .article-footer,
.home .author-info,.home .ad-area{display:none!important;}

/* ---- ヒーロー: 柔らかな光のグラデーション（自作・権利クリーン） ---- */
.sy-hero{position:relative; overflow:hidden; text-align:center; color:var(--sy-ink);
  padding:110px 30px 96px; margin:0 -14px; border-radius:0;
  background:
    radial-gradient(700px 340px at 18% 8%, rgba(201,163,171,.28), transparent 60%),
    radial-gradient(620px 360px at 84% 18%, rgba(216,196,154,.30), transparent 62%),
    radial-gradient(900px 460px at 50% 108%, rgba(201,163,171,.16), transparent 60%),
    linear-gradient(180deg,#fbf8f3 0%,#f6efe7 55%,#f3eadf 100%);}
.sy-hero::before{content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(120px 120px at 12% 72%, rgba(255,255,255,.75), transparent 70%),
    radial-gradient(90px 90px at 26% 30%, rgba(255,255,255,.6), transparent 70%),
    radial-gradient(150px 150px at 86% 66%, rgba(255,255,255,.65), transparent 70%),
    radial-gradient(70px 70px at 70% 22%, rgba(255,255,255,.5), transparent 70%);
  filter:blur(2px);}
.sy-hero>*{position:relative; z-index:1;}
.sy-badge{display:block; background:none; border:none; color:#8d8177; font-family:var(--sy-serif);
  font-size:12.5px; font-weight:500; letter-spacing:.42em; margin-bottom:26px; text-indent:.42em;}
.sy-badge b{color:var(--sy-gold); font-weight:600;}
.sy-hero h2{font-family:var(--sy-serif); color:var(--sy-ink); font-size:clamp(30px,4.6vw,46px); font-weight:600;
  letter-spacing:.16em; line-height:1.6; margin:0 0 10px; padding:0; border:none; background:none!important; box-shadow:none!important;}
.sy-hero h2::before,.sy-hero h2::after{display:none!important;}
.sy-hero .sy-accent{color:inherit; border-bottom:1px solid var(--sy-gold); padding-bottom:2px;}
.sy-en{display:block; color:var(--sy-gold); font-size:11px; letter-spacing:.5em; text-transform:uppercase; margin:18px 0 26px; text-indent:.5em; font-family:Georgia,serif;}
.sy-divider{width:56px; height:1px; background:var(--sy-gold); margin:26px auto;}
.sy-hero p.sy-lead{color:#6d6259; font-family:var(--sy-serif); font-size:clamp(13.5px,1.6vw,15.5px); line-height:2.4; letter-spacing:.14em; margin:0 auto 44px; max-width:600px;}
.sy-cta{display:flex; gap:18px; justify-content:center; flex-wrap:wrap;}
.sy-btn{display:inline-block; background:var(--sy-charcoal); color:#f3ece0!important; font-family:var(--sy-serif); font-weight:500;
  font-size:14px; letter-spacing:.28em; text-indent:.28em; padding:17px 44px; border-radius:0; border:1px solid var(--sy-charcoal);
  text-decoration:none!important; box-shadow:none; transition:.35s;}
.sy-btn:hover{background:transparent; color:var(--sy-ink)!important;}
.sy-btn--ghost{background:transparent; border:1px solid var(--sy-gold); color:#7c6a48!important;}
.sy-btn--ghost:hover{background:var(--sy-gold); color:#fff!important;}

/* ---- 実績バー: 罫線仕立て ---- */
.sy-stats{display:flex; justify-content:center; margin:0 auto; max-width:820px; background:var(--sy-paper);
  border:1px solid var(--sy-line); border-top:2px solid var(--sy-gold); border-radius:0; box-shadow:0 14px 40px rgba(43,38,38,.06);
  overflow:hidden; transform:translateY(-46px);}
.sy-stats div{flex:1; text-align:center; padding:26px 12px; border-right:1px solid var(--sy-line);}
.sy-stats div:last-child{border-right:none;}
.sy-stats .num{display:block; font-family:var(--sy-serif); font-size:19px; font-weight:600; color:var(--sy-ink); letter-spacing:.1em;}
.sy-stats .label{display:block; font-size:11px; color:#9d8f83; margin-top:8px; letter-spacing:.08em;}

/* ---- セクション見出し ---- */
.sy-sec{text-align:center; margin:56px 0 8px;}
.sy-sec .en{display:block; color:var(--sy-gold); font-weight:500; letter-spacing:.5em; text-indent:.5em; font-size:11px; text-transform:uppercase; margin-bottom:12px; font-family:Georgia,serif;}
.sy-sec h2{font-family:var(--sy-serif); font-size:clamp(21px,3vw,28px); font-weight:600; letter-spacing:.2em; color:var(--sy-ink); border:none; padding:0; margin:0; background:none!important;}
.sy-sec h2::before,.sy-sec h2::after{display:none!important;}
.sy-sec p{color:#9d8f83; font-size:13px; letter-spacing:.1em; margin-top:14px; font-family:var(--sy-serif);}

/* ---- 3本柱カード: 上質な白 ---- */
.sy-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:36px 0 20px;}
.sy-card{background:var(--sy-paper); border:1px solid var(--sy-line); border-radius:0; padding:40px 28px 34px; box-shadow:none; transition:.35s; text-align:center; border-top:none; position:relative;}
.sy-card::before{content:""; position:absolute; top:0; left:50%; transform:translateX(-50%); width:34px; height:2px; background:var(--sy-gold);}
.sy-card:hover{box-shadow:0 18px 44px rgba(43,38,38,.10); transform:translateY(-3px);}
.sy-card .ico{font-size:30px; line-height:1; margin-bottom:18px; display:block; filter:grayscale(.15) opacity(.9);}
.sy-card h3{font-family:var(--sy-serif); font-size:16.5px; font-weight:600; letter-spacing:.14em; color:var(--sy-ink); margin:0 0 14px; padding:0!important; border:none!important; background:none!important;}
.sy-card p{font-size:13px; line-height:2.15; letter-spacing:.06em; color:#6d6259; margin:0; text-align:left;}
.sy-card .tag{display:inline-block; margin-top:18px; font-size:10.5px; font-weight:500; letter-spacing:.24em; text-indent:.24em; color:var(--sy-gold); background:none; border:1px solid var(--sy-gold-l); border-radius:0; padding:6px 16px;}

/* ---- 運営者カード ---- */
.sy-owner{display:flex; align-items:center; gap:30px; background:var(--sy-paper); border:1px solid var(--sy-line); border-radius:0; padding:40px 44px; margin:32px 0 8px; box-shadow:none; flex-wrap:wrap;}
.sy-owner .face{width:84px; height:84px; border-radius:50%; background:linear-gradient(150deg,#efe4d3,var(--sy-blush)); display:flex; align-items:center; justify-content:center; font-size:36px; flex-shrink:0; box-shadow:none; border:1px solid var(--sy-line);}
.sy-owner .body{flex:1; min-width:240px;}
.sy-owner .name{font-family:var(--sy-serif); font-size:19px; font-weight:600; letter-spacing:.2em; color:var(--sy-ink); margin-bottom:8px;}
.sy-owner .name small{font-weight:500; color:var(--sy-gold); margin-left:12px; font-size:11px; letter-spacing:.2em;}
.sy-owner p{font-size:13px; line-height:2.15; letter-spacing:.05em; color:#6d6259; margin:0;}
.sy-owner .links{margin-top:14px;}
.sy-owner .links a{font-size:12px; font-weight:500; letter-spacing:.14em; color:var(--sy-gold); text-decoration:none; margin-right:22px; border-bottom:1px solid var(--sy-gold-l); padding-bottom:2px; font-family:var(--sy-serif);}

/* ---- 記事・下層ページも同トーン ---- */
.article h1,.article h2,.article h3,.entry-title{font-family:var(--sy-serif); letter-spacing:.08em;}
.article h2{background:none; border:none; border-left:2px solid var(--sy-gold); border-bottom:1px solid var(--sy-line); padding:10px 0 10px 16px; font-weight:600;}
.article h3{border:none; border-bottom:1px solid var(--sy-line); padding:8px 0; font-weight:600;}
#main{background:var(--sy-paper); border:1px solid var(--sy-line);}
.sns-share button, .sns-share a{border-radius:0;}

/* ---- フッター ---- */
.footer{background:var(--sy-charcoal);}
.footer-bottom,.footer .widget,.footer p,.footer a{color:#9d938a; font-size:12px; letter-spacing:.12em;}

/* ---- レスポンシブ ---- */
@media screen and (max-width:834px){
  #header-container .site-name-text{font-size:20px; letter-spacing:.22em;}
  .sy-cards{grid-template-columns:1fr;}
  .sy-hero{padding:72px 20px 78px;}
  .sy-stats{flex-wrap:wrap; transform:translateY(-30px);}
  .sy-stats div{flex:1 1 100%; border-right:none; border-bottom:1px solid var(--sy-line);}
  .sy-stats div:last-child{border-bottom:none;}
  .home .content #main{padding:0 8px;}
}
.sy-hero h2, .sy-sec h2{border:none!important; padding:0!important;}

/* ============ v3: SPS サロンレイアウト（左固定ナビ） ============ */
#header-container, #navi{display:none!important;}

#sps-nav{position:fixed; left:0; top:0; bottom:0; width:265px; z-index:9000; overflow-y:auto;
  background:linear-gradient(165deg,#2a2424 0%,#1d1a1a 70%,#241f1c 100%);
  border-right:1px solid rgba(216,196,154,.28); padding:38px 28px 30px; box-sizing:border-box;}
.sps-logo{text-align:center; margin-bottom:34px;}
.sps-monogram{width:92px; height:92px; margin:0 auto 14px; border:1px solid var(--sy-gold); border-radius:50%;
  display:flex; align-items:center; justify-content:center; position:relative;}
.sps-monogram::before{content:""; position:absolute; inset:5px; border:1px solid rgba(216,196,154,.4); border-radius:50%;}
.sps-monogram span{font-family:Georgia,var(--sy-serif); font-size:26px; letter-spacing:.14em; text-indent:.14em; color:var(--sy-gold-l);}
.sps-logo-en{font-family:Georgia,var(--sy-serif); color:#e9e2d6; font-size:14px; letter-spacing:.24em; text-transform:uppercase; line-height:1.6;}
.sps-logo-jp{color:#8f8579; font-size:10px; letter-spacing:.3em; margin-top:8px; text-indent:.3em;}
.sps-menu ul{list-style:none; margin:0; padding:0;}
.sps-menu li{border-bottom:1px solid rgba(255,255,255,.06);}
.sps-menu a{display:flex; align-items:baseline; gap:10px; padding:13px 4px; text-decoration:none; transition:.25s;}
.sps-menu a b{font-family:Georgia,var(--sy-serif); font-weight:500; font-size:15.5px; letter-spacing:.08em; color:#e9e2d6;}
.sps-menu a span{font-size:10px; color:#8f8579; letter-spacing:.14em;}
.sps-menu a:hover b{color:var(--sy-gold-l);}
.sps-menu a:hover{padding-left:10px;}
.sps-nav-cta{margin:26px 0 18px;}
.sps-nav-cta a{display:block; text-align:center; font-family:var(--sy-serif); font-size:13px; letter-spacing:.18em; text-indent:.18em;
  padding:14px 8px; margin-bottom:12px; text-decoration:none; transition:.3s; border:1px solid var(--sy-gold);}
.sps-nav-cta a.main{background:linear-gradient(135deg,var(--sy-gold),#9a7c42); color:#fff;}
.sps-nav-cta a.main:hover{filter:brightness(1.12);}
.sps-nav-cta a.sub{color:var(--sy-gold-l); background:transparent;}
.sps-nav-cta a.sub:hover{background:rgba(216,196,154,.12);}
.sps-nav-foot{color:#7c7268; font-size:10px; letter-spacing:.12em; line-height:2; text-align:center; border-top:1px solid rgba(255,255,255,.08); padding-top:16px;}

#sps-topbar{display:none;}

@media screen and (min-width:1024px){
  body{margin-left:265px;}
}
@media screen and (max-width:1023px){
  #sps-nav{transform:translateX(-100%); transition:transform .3s ease; width:280px;}
  body.sps-nav-open #sps-nav{transform:translateX(0); box-shadow:20px 0 60px rgba(0,0,0,.4);}
  #sps-topbar{display:flex; align-items:center; gap:14px; position:fixed; top:0; left:0; right:0; height:52px; z-index:8900;
    background:var(--sy-charcoal); border-bottom:1px solid rgba(216,196,154,.3); padding:0 14px;}
  #sps-topbar .t{font-family:Georgia,var(--sy-serif); color:#e9e2d6; font-size:13px; letter-spacing:.14em;}
  #sps-burger{background:none; border:1px solid rgba(216,196,154,.5); color:var(--sy-gold-l); font-size:16px; width:36px; height:36px; cursor:pointer;}
  body{padding-top:52px;}
}

/* ---- サロン下層ページ用パーツ ---- */
.sps-page-lead{text-align:center; font-family:var(--sy-serif); color:#6d6259; letter-spacing:.12em; line-height:2.4; margin:10px 0 34px;}
.sps-notice{background:var(--sy-paper); border:1px solid var(--sy-line); padding:34px 36px; margin-bottom:26px;}
.sps-notice h2{font-family:var(--sy-serif); font-size:18px; letter-spacing:.2em; color:var(--sy-ink);
  background:none!important; border:none!important; border-bottom:1px solid var(--sy-gold)!important; padding:0 0 12px!important; margin:0 0 18px;}
.sps-notice p{font-size:14px; line-height:2.2; letter-spacing:.05em; color:#5d5249;}
.sps-notice ul{font-size:14px; line-height:2.2; color:#5d5249;}
.sps-cta-row{margin-top:22px; display:flex; gap:14px; flex-wrap:wrap;}
.sps-faq dl{margin:0;}
.sps-faq dt{font-family:var(--sy-serif); font-size:15px; letter-spacing:.08em; color:var(--sy-ink); border-left:2px solid var(--sy-gold); padding:6px 0 6px 14px; margin-top:26px;}
.sps-faq dd{font-size:13.5px; line-height:2.1; color:#5d5249; margin:10px 0 0 16px; padding-bottom:18px; border-bottom:1px dashed var(--sy-line);}
.sps-therapist{display:flex; gap:36px; align-items:flex-start; background:var(--sy-paper); border:1px solid var(--sy-line); padding:38px; flex-wrap:wrap;}
.sps-therapist-photo{flex:0 0 300px; max-width:300px;}
.sps-therapist-photo img{width:100%; height:auto; display:block; border:1px solid var(--sy-line);}
.sps-therapist-body{flex:1; min-width:260px;}
.sps-therapist-body h2{font-family:var(--sy-serif); font-size:24px; letter-spacing:.24em; background:none!important; border:none!important; padding:0!important; margin:0 0 16px;}
.sps-therapist-body h2 small{font-size:11px; color:var(--sy-gold); letter-spacing:.26em; margin-left:14px;}
.sps-therapist-body p{font-size:14px; line-height:2.2; color:#5d5249;}

/* ---- サロン統一: サイドバー全廃・固定ページのブログパーツ除去 ---- */
#sidebar{display:none!important;}
.content #main{width:100%!important; max-width:1080px; margin:0 auto!important; float:none!important;}
.page .sns-share,.page .sns-follow,.page .toc,.page .toc-container,
.page .date-tags,.page .post-date,.page .entry-date,.page .article-footer,.page .author-info{display:none!important;}
.page .entry-title{font-family:var(--sy-serif); letter-spacing:.16em; font-size:26px; border-bottom:1px solid var(--sy-gold); padding-bottom:16px;}
/* 投稿ページのシェアボタンはモノトーンに */
.sns-share a{background:var(--sy-charcoal)!important; border-radius:0!important;}
.sns-share .sns-share-message{font-family:var(--sy-serif); letter-spacing:.2em; color:#9d8f83;}

/* ---- v4: 実写素材の組み込み ---- */
.sy-hero{
  background:
    linear-gradient(105deg, rgba(251,248,243,.95) 0%, rgba(251,248,243,.86) 42%, rgba(247,240,231,.55) 100%),
    url(/wp-content/uploads/2026/08/sps_hero.jpg) right 24%/cover no-repeat;
}
.sps-gallery{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:18px;}
.sps-gallery figure{margin:0;}
.sps-gallery img{width:100%; height:280px; object-fit:cover; object-position:top; display:block; border:1px solid var(--sy-line); filter:saturate(.96);}
.sps-gallery figcaption{font-family:var(--sy-serif); font-size:11px; letter-spacing:.2em; color:#9d8f83; text-align:center; padding-top:8px;}
.sy-owner .face{overflow:hidden;}
.sy-owner .face img{width:100%; height:100%; object-fit:cover; border-radius:50%;}
.sps-concept-visual{margin:0 0 26px;}
.sps-concept-visual img{width:100%; max-height:420px; object-fit:cover; object-position:center 18%; display:block; border:1px solid var(--sy-line);}
@media screen and (max-width:834px){
  .sps-gallery{grid-template-columns:repeat(2,1fr);}
  .sps-gallery img{height:220px;}
  .sy-hero{background-position:right 30%, right 24%;}
}
.sps-therapist-body h2 small{font-size:11px!important; color:var(--sy-gold)!important; letter-spacing:.26em!important; margin-left:14px!important; font-weight:500!important; vertical-align:middle;}
/* Conceptビジュアル: 帯→ 縦のエディトリアル配置に変更 */
.sps-concept-visual{text-align:center;}
.sps-concept-visual img{width:auto; max-width:min(440px,100%); max-height:620px; object-fit:contain; display:inline-block; border:1px solid var(--sy-line);}

/* ---- v5: P1実装（本日の施術/お知らせ/LINE/下部固定バー） ---- */
.sps-today{background:var(--sy-paper); border:1px solid var(--sy-line); border-top:2px solid var(--sy-gold); padding:26px 30px; max-width:820px; margin:0 auto;}
.sps-today-status{font-family:var(--sy-serif); font-size:15px; letter-spacing:.1em; color:var(--sy-ink); margin:0 0 14px; text-align:center;}
.sps-today-status.open::before{content:"● "; color:#2fa36b;}
.sps-today-list, .sps-news{list-style:none; margin:0; padding:0; max-width:820px; margin:0 auto;}
.sps-today-list li, .sps-news li{display:flex; gap:16px; align-items:baseline; border-bottom:1px dashed var(--sy-line); padding:10px 4px;}
.sps-today-list .d, .sps-news .d{font-family:Georgia,serif; font-size:12px; color:var(--sy-gold); letter-spacing:.08em; flex-shrink:0;}
.sps-today-list a, .sps-news a{font-size:13.5px; color:#5d5249; text-decoration:none; letter-spacing:.04em;}
.sps-today-list a:hover, .sps-news a:hover{color:var(--sy-pink-d, #c93a72);}
.sps-today-empty{font-size:13px; color:#9d8f83; text-align:center; margin:0;}
.sps-news{background:var(--sy-paper); border:1px solid var(--sy-line); padding:10px 26px 14px;}
/* 左ナビ: LINEボタンとSNS小ボタン列 */
.sps-nav-cta a.line{display:block; text-align:center; font-family:var(--sy-serif); font-size:13px; letter-spacing:.18em; text-indent:.18em; padding:13px 8px; margin-bottom:12px; text-decoration:none; border:1px solid #2fa36b; color:#7fd4a8; transition:.3s;}
.sps-nav-cta a.line:hover{background:#2fa36b; color:#fff;}
.sps-sns-row{display:flex; gap:8px;}
.sps-sns-row a{flex:1; text-align:center; font-family:Georgia,serif; font-size:11px; letter-spacing:.14em; padding:9px 2px; border:1px solid rgba(216,196,154,.4); color:#bfb4a5; text-decoration:none; transition:.3s;}
.sps-sns-row a:hover{border-color:var(--sy-gold); color:var(--sy-gold-l);}
/* モバイル下部固定バー */
#sps-bottombar{display:none;}
@media screen and (max-width:1023px){
  #sps-bottombar{display:flex; position:fixed; left:0; right:0; bottom:0; z-index:8800; background:rgba(29,26,26,.97); border-top:1px solid rgba(216,196,154,.35); backdrop-filter:blur(6px);}
  #sps-bottombar a{flex:1; text-align:center; padding:11px 2px; font-family:var(--sy-serif); font-size:11px; letter-spacing:.06em; line-height:1.35; color:#e9e2d6; text-decoration:none; border-right:1px solid rgba(255,255,255,.08);}
  #sps-bottombar a:last-child{border-right:none;}
  #sps-bottombar .bb-myfans{background:linear-gradient(135deg,var(--sy-gold),#9a7c42); font-weight:700;}
  #sps-bottombar .bb-line{color:#7fd4a8;}
  body{padding-bottom:58px;}
  .footer{padding-bottom:64px;}
}

/* ---- v6: FANZAレビュー記事パーツ ---- */
.sps-item{background:var(--sy-paper); border:1px solid var(--sy-line); padding:30px 32px; margin:30px 0;}
.sps-item h2{font-size:17px!important; line-height:1.7;}
.sps-item-head{display:flex; gap:24px; align-items:flex-start; flex-wrap:wrap; margin:16px 0;}
.sps-item-head > a{flex:0 0 280px; max-width:280px;}
.sps-item-head img{width:100%; height:auto; display:block; border:1px solid var(--sy-line);}
.sps-spec{flex:1; min-width:240px; border-collapse:collapse; font-size:13px; margin:0;}
.sps-spec th{font-family:var(--sy-serif); font-weight:600; color:#8a7a6b; text-align:left; padding:8px 14px 8px 0; border-bottom:1px dashed var(--sy-line); white-space:nowrap; letter-spacing:.08em; background:none; width:6.5em;}
.sps-spec td{padding:8px 0; border-bottom:1px dashed var(--sy-line); color:#5d5249;}
.sps-stars{color:var(--sy-gold); letter-spacing:.1em;}
.sps-item h3{font-size:14px!important; letter-spacing:.12em; color:var(--sy-ink); border-left:2px solid var(--sy-gold)!important; border-bottom:none!important; padding:2px 0 2px 12px!important; margin-top:8px;}
.sps-item h4.sps-sample-label{font-family:var(--sy-serif); font-size:12px; letter-spacing:.24em; color:var(--sy-gold); border:none; background:none; padding:0; margin:20px 0 8px;}
.sps-samples{display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:18px 0 6px;}
.sps-samples img{width:100%; height:150px; object-fit:cover; display:block; border:1px solid var(--sy-line); transition:.25s;}
.sps-samples a:hover img{opacity:.85;}
.sps-embed{position:relative; width:100%; padding-top:56.25%; margin:6px 0 4px; background:#000;}
.sps-embed iframe{position:absolute; inset:0; width:100%; height:100%;}
@media screen and (max-width:834px){
  .sps-item{padding:20px 16px;}
  .sps-item-head > a{flex:1 1 100%; max-width:100%;}
  .sps-samples{grid-template-columns:repeat(2,1fr);}
  .sps-samples img{height:130px;}
}
