/*
Theme Name: SEVEN PEBBLES Media
Theme URI: https://seven-pebbles.jp/
Author: SEVEN PEBBLES
Description: A light editorial theme for the /media/ WordPress section.
Version: 1.0.5
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: seven-pebbles-media
*/

:root{color-scheme:light;--paper:#f1f1f1;--ink:#25282c;--muted:#656b70;--line:#25282c24;--teal:#267c78;--lime:#d7e577;--white:#fff;--content:1120px;--reading:980px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--teal)}
img{display:block;max-width:100%;height:auto}
.skip-link{position:absolute;top:-100px;left:16px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px}.skip-link:focus{top:12px}
.site-header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);gap:30px}
.brand{display:inline-flex;flex-direction:column;font-size:19px;font-weight:900;line-height:.86;letter-spacing:-.04em}.brand-dot{color:var(--teal)}
.main-nav{display:flex;align-items:center;gap:clamp(16px,2.6vw,38px);font-size:11px;font-weight:700;letter-spacing:.13em}.main-nav a{white-space:nowrap}.main-nav .contact-link{border:1px solid var(--ink);border-radius:99px;padding:12px 22px}
.wrap{width:min(var(--content),calc(100% - 48px));margin-inline:auto}.reading{width:min(var(--reading),calc(100% - 48px));margin-inline:auto}
.breadcrumbs{padding:28px 0 0;color:var(--muted);font-size:11px;letter-spacing:.11em;text-transform:uppercase}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs span{margin:0 10px;color:#9a9da0}
.archive-hero{padding:48px 0 58px;border-bottom:1px solid var(--line)}.eyebrow{margin:0 0 16px;color:var(--teal);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.archive-hero h1{margin:0;font-size:clamp(42px,7vw,88px);line-height:1.08;letter-spacing:-.055em}.archive-intro{max-width:620px;margin:22px 0 0;color:#555b60;font-size:15px}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px;padding:54px 0 92px}.post-card{min-width:0}.post-card__image{display:block;overflow:hidden;background:#e1e3e1;aspect-ratio:16/9}.post-card__image img{width:100%;height:100%;object-fit:contain}.post-card__placeholder{height:100%;background:linear-gradient(135deg,#e7e9e6,#d5dedb)}.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:16px 0 10px;color:var(--muted);font-size:11px;line-height:1.5}.post-category{display:inline-flex;align-items:center;min-height:27px;padding:4px 11px;border:1px solid #25282c55;border-radius:99px;color:var(--ink);font-size:10px;letter-spacing:.07em}.post-card h2{margin:0;font-size:20px;line-height:1.55;letter-spacing:-.025em}.post-card h2 a:hover{color:var(--teal)}.post-card__excerpt{margin:10px 0 0;color:#646a6e;font-size:13px;line-height:1.8}
.pagination{display:flex;justify-content:center;align-items:center;gap:8px;padding:0 0 96px}.pagination .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:12px}.pagination .current{background:var(--ink);color:#fff}.pagination .next,.pagination .prev{width:auto;padding:0 16px;border-radius:99px}
.article-head{padding:38px 0 32px}.article-head h1{margin:0;font-size:clamp(34px,5.3vw,64px);line-height:1.35;letter-spacing:-.045em}.article-lead{margin:20px 0 0;color:#565d61;font-size:17px;line-height:1.9}.article-cover{margin:0 0 58px;background:#e1e3e1}.article-cover img{width:100%;max-height:650px;object-fit:cover}.article-body{padding-bottom:34px}.article-body>*{max-width:var(--reading);margin-left:auto;margin-right:auto}.article-body>.alignwide{max-width:var(--content)}.article-body>.alignfull{max-width:none;width:100vw;position:relative;left:50%;transform:translateX(-50%)}.article-body h2{margin-top:2.5em;margin-bottom:.8em;padding-left:18px;border-left:4px solid var(--teal);font-size:clamp(26px,3.8vw,38px);line-height:1.45;letter-spacing:-.035em}.article-body h3{margin-top:2.1em;margin-bottom:.65em;font-size:clamp(20px,2.6vw,26px);line-height:1.5}.article-body p{margin-top:0;margin-bottom:1.35em}.article-body ul,.article-body ol{padding:22px 28px 22px 48px;background:#fff;border:1px solid var(--line);border-radius:3px}.article-body li+li{margin-top:9px}.article-body blockquote{margin-top:2em;margin-bottom:2em;padding:20px 26px;border-left:3px solid var(--teal);background:#e9ece9;color:#4e5559}.article-body figure{margin-top:2.5em;margin-bottom:2.5em}.article-body figcaption{margin-top:9px;color:var(--muted);font-size:12px;text-align:center}.article-body .wp-block-image img{width:100%;height:auto}.article-body .wp-block-columns{gap:28px;margin-top:2em;margin-bottom:2em}.article-body .wp-block-column{min-width:0}.article-body .wp-block-table{overflow-x:auto}.article-body table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.article-body th,.article-body td{padding:13px 16px;border:1px solid #d4d7d6;text-align:left;vertical-align:top}.article-body th{background:#e8ebea;font-weight:700}.article-body .wp-block-buttons{margin:20px 0}.article-body .wp-block-button__link{background:var(--teal);border-radius:99px;padding:14px 24px;font-size:14px;font-weight:700}.article-body .wp-block-separator{border-color:var(--line);margin-top:3em;margin-bottom:3em}
.takeaway{max-width:var(--reading);margin:20px auto 76px;padding:clamp(26px,5vw,54px);background:var(--ink);color:#fff}.takeaway__label{margin:0 0 16px;color:var(--lime);font-size:11px;font-weight:700;letter-spacing:.18em}.takeaway h2{margin:0;font-size:clamp(24px,3.5vw,38px);line-height:1.55}.takeaway p{margin:14px 0 0;color:#e2e5e6;font-size:14px}
.media-cta{margin:0;padding:78px 24px 84px;background:var(--teal);color:#fff;text-align:center}.media-cta__label{margin:0 0 14px;color:#e0eaa0;font-size:11px;letter-spacing:.16em;font-weight:700}.media-cta h2{max-width:760px;margin:0 auto;font-size:clamp(30px,5vw,54px);line-height:1.4;letter-spacing:-.04em}.media-cta p{margin:16px 0 28px;color:#eaf1ef;font-size:14px}.media-cta__button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border:1px solid #fff;border-radius:99px;color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em}.media-cta__button:hover{background:#fff;color:var(--teal)}
.site-footer{padding:36px clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);font-size:11px}.footer-nav{display:flex;flex-wrap:wrap;gap:10px 22px;color:#53595d;font-weight:700;letter-spacing:.08em}.copyright{color:#696e72;white-space:nowrap}
.search-form{display:flex;gap:8px;max-width:420px;margin:32px auto 0}.search-form input{min-width:0;flex:1;padding:12px 14px;border:1px solid var(--line);background:#fff;font:inherit}.search-form button{padding:0 18px;border:0;background:var(--ink);color:#fff;font:inherit}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.site-header{height:auto;min-height:82px;align-items:flex-start;padding-top:22px;padding-bottom:18px}.main-nav{justify-content:flex-end;flex-wrap:wrap;gap:12px 18px}.main-nav .contact-link{padding:8px 15px}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}}
@media(max-width:600px){body{font-size:15px}.site-header{display:block;padding:19px 20px 14px}.brand{font-size:17px}.main-nav{justify-content:flex-start;margin-top:18px;gap:10px 17px;font-size:10px}.main-nav .contact-link{padding:7px 12px}.wrap,.reading{width:calc(100% - 40px)}.breadcrumbs{padding-top:22px;font-size:10px}.archive-hero{padding:38px 0 42px}.archive-hero h1{font-size:48px}.archive-intro{font-size:14px}.post-grid{grid-template-columns:1fr;gap:32px;padding:38px 0 68px}.post-card__image{aspect-ratio:16/9}.post-card h2{font-size:19px}.pagination{padding-bottom:68px}.article-head{padding:28px 0 24px}.article-head h1{font-size:36px}.article-lead{font-size:15px}.article-cover{margin-bottom:38px}.article-body ul,.article-body ol{padding:18px 20px 18px 40px}.article-body .wp-block-columns{display:block}.article-body .wp-block-column+.wp-block-column{margin-top:20px}.takeaway{margin:12px 20px 52px;padding:25px 22px}.media-cta{padding:58px 20px 62px}.site-footer{display:block;padding:27px 20px}.footer-nav{gap:12px 17px}.copyright{display:block;margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* Article recommendations share the archive thumbnail and grid styles. */
.media-recommendations{margin-top:42px;padding:38px 0 88px;border-top:1px solid var(--line)}
.media-recommendations__header h2{margin:0;font-size:clamp(26px,3.8vw,38px);line-height:1.45;letter-spacing:-.035em}
.media-recommendations__grid{padding:28px 0 0}
.media-recommendations .post-card h3{margin:16px 0 0;font-size:20px;line-height:1.55;letter-spacing:-.025em;overflow-wrap:anywhere}
.media-recommendations a:focus-visible{outline:2px solid var(--teal);outline-offset:4px}
@media(max-width:600px){.media-recommendations{margin-top:24px;padding:28px 0 60px}.media-recommendations__grid{padding-top:24px}.media-recommendations .post-card h3{font-size:19px}}

/* Keep scrollable tables inside the article reading column. */
.article-body > [style*="overflow-x"]:has(> table){max-width:var(--reading) !important;margin-inline:auto}
