/* ぷらキャン v0.9.18 → native Gutenberg block theme, isolated to .pc-* components.
   beta.6: controlled visual staggering; beta.5 Grid/margin normalization remains. */
:root{--pc-deep:#21392f;--pc-darker:#1a3429;--pc-beige:#e7ded0;--pc-sand:#f8f4e9;--pc-ink:#203b30;--pc-warm:#98613d;--pc-sage:#4b6757;--pc-wide:1136px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:clip}
img{max-width:100%;height:auto}
.pc-site-header a,.pc-site-footer a,.pc-section a{text-decoration:none}
.pc-layout{max-width:var(--pc-wide)!important;width:min(calc(100% - 56px),var(--pc-wide));margin-inline:auto!important;min-width:0}
.pc-layout>*{max-width:none!important}
.pc-section{margin:0!important;position:relative;isolation:isolate;padding:clamp(48px,5.55vw,80px) 0;overflow:hidden}
.pc-section>.pc-layout{position:relative;z-index:1}
.pc-section .wp-block-image{margin:0}
.pc-section img{display:block;width:100%;height:100%;object-fit:cover}
/* Gutenberg assigns is-layout-flow/constrained to block wrappers even when our
   design uses CSS Grid or Flex. Its default sibling margins otherwise make
   every card after the first start progressively lower. Reset ONLY direct
   layout children, not paragraph spacing or ordinary article content. */
.pc-section :is(.pc-hero-grid,.pc-hero-photo-grid,.pc-place-grid,.pc-ig-grid,.pc-latest-grid,.pc-moment-grid,.pc-reuse-grid) > *,
.pc-section .pc-post-card > :is(.pc-post-thumbnail,.pc-post-body),
.pc-section .pc-place-card > :is(.wp-block-image,.pc-place-card-copy) {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}
.pc-section-head{margin-bottom:26px}
.pc-section-title{font-size:clamp(26px,2.7vw,36px);font-weight:850;letter-spacing:-.05em;line-height:1.35;margin:8px 0 7px}
.pc-kicker{font-size:11px;font-weight:750;line-height:1.6;letter-spacing:.15em;color:#e9c29a;margin:0;text-transform:uppercase}
.pc-kicker::before{content:"";width:17px;height:1px;display:inline-block;background:currentColor;vertical-align:middle;margin-right:9px}
.pc-section-lead{max-width:700px;font-size:14px;line-height:1.95;margin:0;color:inherit;opacity:.91}
.pc-with-icon::before{content:"";display:inline-block;width:28px;height:28px;vertical-align:-5px;margin-right:12px;background-color:currentColor;opacity:.74;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.pc-icon-tent::before{-webkit-mask-image:url(../icons/tent.svg);mask-image:url(../icons/tent.svg)}
.pc-icon-book::before{-webkit-mask-image:url(../icons/book.svg);mask-image:url(../icons/book.svg)}
.pc-icon-camera::before{-webkit-mask-image:url(../icons/camera.svg);mask-image:url(../icons/camera.svg)}
.pc-icon-shovel::before{-webkit-mask-image:url(../icons/shovel.svg);mask-image:url(../icons/shovel.svg)}
.pc-icon-grill::before{-webkit-mask-image:url(../icons/grill.svg);mask-image:url(../icons/grill.svg)}
.wp-block-buttons{gap:10px}
.pc-section .wp-block-button__link{display:inline-flex;align-items:center;min-height:44px;justify-content:center;padding:11px 20px;border-radius:5px;font-size:13px;line-height:1.4;font-weight:750;transition:background .2s ease,color .2s ease}
.pc-primary-btn .wp-block-button__link{background:#214234;color:#fff9ec;border:1px solid #214234}
.pc-primary-btn .wp-block-button__link:hover{background:#335a46;color:#fff9ec}
.pc-outline-btn .wp-block-button__link{border:1px solid #718676;background:#ffffff19;color:#214234}
.pc-outline-btn .wp-block-button__link:hover{background:#21423415;color:#214234}
.pc-text-btn .wp-block-button__link{background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:6px 0;min-height:34px;color:inherit;font-size:12px}
.pc-text-btn .wp-block-button__link:hover{background:transparent;opacity:.72}
.pc-demo-note,.pc-ig-disclaimer{font-size:11px;line-height:1.65;color:#5b6f60;margin:7px 0 0}
/* Header / footer are fixed deep greens. Native WordPress Navigation owns mobile menu. */
.pc-site-header{background:#21392f!important;color:#edf1e7;position:relative;z-index:15;margin:0!important;border-bottom:1px solid #354c3f;padding:0!important}
.pc-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:24px;max-width:var(--pc-wide);margin:0 auto}
.pc-site-logo{font-size:24px;font-weight:900;letter-spacing:-.06em;margin:0;color:#f1f2e7;line-height:1.25}
.pc-site-logo a,.pc-footer-site-title a{color:inherit!important}
.pc-site-nav{font-size:13px;font-weight:750}
.pc-site-nav .wp-block-navigation-item__content{border-radius:5px;padding:9px 12px;color:#dbe5d8}
.pc-site-nav .wp-block-navigation-item__content:hover{background:#385346;color:white}
.pc-site-header .wp-block-navigation__responsive-container-open{color:#f4f5e9}
.pc-site-footer{position:relative;overflow:hidden;isolation:isolate;background:#1a3429!important;color:#e8f0e3;margin:0!important;padding:52px 0 18px!important}
.pc-footer-inner{max-width:var(--pc-wide);margin:0 auto;position:relative;z-index:1}
.pc-footer-site-title{font-size:26px;font-weight:900;margin:0 0 12px;letter-spacing:-.05em}
.pc-footer-text{max-width:500px;color:#c6d6c7;line-height:1.9;font-size:13px}
.pc-footer-links{margin-top:25px;line-height:2.4;font-size:13px}
.pc-footer-links a{color:#e6efdf;border-bottom:1px solid #6f8a78}
.pc-footer-copy{font-size:11px;color:#b3c9b7;border-top:1px solid #446355;padding-top:19px;margin:38px 0 0}
/* Hero: warm beige, photo collage. */
.pc-hero{background:#e7ded0;color:#203b30;padding:36px 0 26px}
.pc-hero-grid{display:grid;grid-template-columns:minmax(0,.90fr) minmax(0,1.10fr);gap:clamp(25px,4.2vw,60px);align-items:center;min-height:526px}
.pc-hero-text{padding:12px 0}
.pc-hero .pc-kicker{color:#805c41}
.pc-hero-title{font-size:clamp(37px,4.2vw,61px);line-height:1.35;letter-spacing:-.065em;color:#1d392e;font-weight:900;margin:24px 0 19px;white-space:normal}
.pc-hero-title span{color:#98613d}
.pc-hero-copy{font-size:14px;line-height:2.02;max-width:490px;color:#40574a;margin:0 0 26px}
.pc-hero-note{font-size:12px;color:#536658;margin-top:20px}
.pc-hero-photo-grid{min-width:0;height:480px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.74fr);grid-template-rows:1fr;gap:11px;position:relative}
.pc-hero-photo-main,.pc-hero-photo-side{height:100%;min-height:0;border-radius:9px;overflow:hidden;background:#355043}
.pc-hero-photo-main .wp-block-image,.pc-hero-photo-side .wp-block-image{height:100%}
.pc-hero-photo-main img{object-position:52% 45%}
.pc-hero-photo-side img{object-position:52% 50%}
.pc-hero-photo-slip{position:absolute;left:-22px;bottom:-17px;width:31%;padding:6px 6px 0;border-radius:5px;background:#fff7e8;box-shadow:0 9px 20px #172f2750;transform:rotate(-3deg);z-index:3}
.pc-hero-photo-slip .wp-block-image{height:auto}
.pc-hero-photo-slip img{aspect-ratio:1.52;object-fit:cover;border-radius:2px}
.pc-photo-slip-caption{font-size:10px;color:#4d5346;font-weight:750;padding:6px 3px 9px;text-align:center;margin:0}
.pc-hero-foot{width:min(calc(100% - 56px),var(--pc-wide));margin:14px auto 0;color:#536659;font-size:11px;line-height:1.8;border-top:1px solid #486a572e;padding-top:14px;letter-spacing:.015em}
/* Five cards: one stream + four small, preserved as 5 distinct Gutenberg groups */
.pc-place-section{background:linear-gradient(180deg,#3e594a 0%,#4b6757 55%,#4c6858 100%);color:#f8f8ee}
.pc-place-section .pc-kicker{color:#f2e0c4}
.pc-place-section .pc-section-lead{color:#f2f6ee}
.pc-place-grid{display:grid;grid-template-columns:1.23fr 1fr 1fr;grid-template-rows:repeat(2,minmax(220px,auto));gap:14px;align-items:stretch}
.pc-place-card{display:flex;flex-direction:column;min-height:0;overflow:hidden;border-radius:11px;background:#dfe7dd;color:#20382d;border:1px solid #b9c9b9}
.pc-place-card:nth-child(2){background:#e1e6da}.pc-place-card:nth-child(3){background:#d8e5dd}.pc-place-card:nth-child(4){background:#e1e5d6}.pc-place-card:nth-child(5){background:#dae2d8}
.pc-place-card .wp-block-image{position:relative;display:block;width:100%;height:126px;flex:0 0 126px;min-width:0;overflow:hidden}
.pc-place-card .wp-block-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.pc-place-card-copy{padding:12px 15px 15px;flex:1}
.pc-card-overline{font-size:9px;letter-spacing:.07em;color:#5b7160;font-weight:850;margin:0}
.pc-card-title{font-weight:850;font-size:clamp(15px,1.2vw,19px);letter-spacing:-.035em;margin:5px 0}
.pc-card-text{font-size:11px;color:#54675a;line-height:1.65;margin:0}
.pc-place-card .pc-demo-note{font-size:9px;color:#84674f}
.pc-place-stream{grid-row:span 2}
.pc-place-stream .wp-block-image{height:auto;min-height:0;flex:1 1 0}
.pc-place-stream .wp-block-image img{object-position:center 45%;height:100%}
.pc-place-stream .pc-place-card-copy{flex:0 0 auto;padding:17px 19px 19px}
/* Instagram: preview only, real provider integration must be manual and optional */
.pc-instagram-section{background:#e7ded0;color:#203b30;border-block:1px solid #cdbfae}
.pc-instagram-section .pc-kicker{color:#805c41}
.pc-instagram-section .pc-section-title{color:#1d392e}
.pc-instagram-section .pc-section-lead{color:#40574a}
.pc-ig-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.pc-ig-tile{position:relative;min-width:0;min-height:0;overflow:hidden;aspect-ratio:1/1;border-radius:9px;background:#cdd5c9}
.pc-ig-tile .wp-block-image{position:absolute;inset:0;width:100%;height:100%;margin:0}
.pc-ig-tile img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.pc-ig-tile:hover img{transform:scale(1.025)}
.pc-ig-disclaimer{color:#536658;margin:15px 0 13px}
/* Journal: green background; editable dynamic query 4 posts */
.pc-journal-section{background:linear-gradient(155deg,#55715e 0%,#577260 55%,#536d5c 100%);color:#f8f9f1}
/* Native Query Loop markup: ul.wp-block-post-template > li.wp-block-post > .pc-post-card. */
.pc-latest-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);grid-template-rows:repeat(3,minmax(145px,auto));gap:12px 20px;align-items:stretch}
.pc-latest-grid>.wp-block-post{background:#dfe6da;color:#20382c;border:1px solid #afc2af;border-radius:10px;overflow:hidden;min-width:0;min-height:0;display:block;margin:0}
.pc-latest-grid>.wp-block-post:first-child{grid-row:1 / span 3}
.pc-latest-grid .pc-post-card{width:100%;height:100%;min-width:0;min-height:0;display:grid;grid-template-columns:38% minmax(0,1fr);margin:0!important;gap:0}
.pc-latest-grid .pc-post-card>*{min-width:0;max-width:none!important;margin-inline:0!important}
.pc-latest-grid>.wp-block-post:first-child>.pc-post-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;height:100%}
.pc-post-thumbnail{position:relative;display:block;width:100%;height:100%;min-height:0;margin:0!important;overflow:hidden;background:#c5d4c5}
.pc-post-thumbnail a{position:absolute;inset:0;display:block;width:100%;height:100%}
.pc-post-thumbnail img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.pc-latest-grid>.wp-block-post:first-child .pc-post-thumbnail{height:100%;min-height:230px;max-height:none}
.pc-post-body{padding:14px 17px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.pc-latest-grid>.wp-block-post:first-child .pc-post-body{padding:20px 24px;min-height:125px;justify-content:flex-start}
.pc-post-date{font-size:11px;color:#627968;letter-spacing:.04em}
.pc-post-title{font-size:clamp(15px,1.25vw,19px);font-weight:800;line-height:1.5;letter-spacing:-.03em;margin:5px 0 8px;color:#20382c}
.pc-latest-grid>.wp-block-post:first-child .pc-post-title{font-size:23px}
.pc-post-excerpt{font-size:12px;line-height:1.8;color:#465e4e;margin:0}
.pc-latest-grid>.wp-block-post:not(:first-child) .pc-post-excerpt{display:none}
.pc-post-title a{color:inherit!important;text-decoration:none!important}
/* A post with no featured image must not reserve an empty photo column. */
.pc-latest-grid>.wp-block-post:not(:first-child)>.pc-post-card:not(:has(.pc-post-thumbnail)){grid-template-columns:minmax(0,1fr)}
.pc-latest-grid>.wp-block-post:first-child>.pc-post-card:not(:has(.pc-post-thumbnail)){grid-template-rows:auto;align-content:start}
/* Photos: darker family */
.pc-moments-section{background:linear-gradient(160deg,#405a4c 0%,#445f50 100%);color:#f2f3e9}
.pc-moment-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,.92fr) minmax(0,.92fr);grid-template-rows:clamp(260px,29vw,360px);gap:14px;align-items:stretch}
.pc-moment-tile{position:relative;min-width:0;min-height:0;height:100%;overflow:hidden;border-radius:9px;background:#304c3b}
.pc-moment-tile .wp-block-image{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0}
.pc-moment-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.pc-moment-tile::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#10241cbe);pointer-events:none}
.pc-moment-caption{position:absolute;z-index:1;bottom:16px;left:18px;color:#fff;font-size:15px;font-weight:800;margin:0}
/* Reuse, third beige section */
.pc-reuse-section{background:#e7ded0;color:#203b30}
.pc-reuse-section .pc-kicker{color:#805c41}
.pc-reuse-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:clamp(25px,5vw,70px);align-items:center}
.pc-reuse-section .pc-section-lead{color:#40574a;max-width:450px;margin-bottom:20px}
.pc-reuse-image{margin:0!important;overflow:hidden;border-radius:8px 52px 8px 8px}
.pc-reuse-image img{aspect-ratio:1.6}
/* Future */
.pc-future-section{background:linear-gradient(145deg,#4c6756,#496454);color:#f8f9f0}
.pc-future-section .pc-section-lead{max-width:670px;color:#f2f6ee}
/* Decorations: subdued and never interactive; use mask so tone can be changed by CSS. */
.pc-decor-place::after,.pc-decor-journal::after,.pc-decor-moments::after,.pc-decor-reuse::after,.pc-decor-future::after,.pc-decor-name::after,.pc-decor-footer::after{
 content:"";position:absolute;pointer-events:none;width:270px;height:196px;background:#d9e5d7;opacity:.14;z-index:0;
 -webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;
}
.pc-decor-place::after{right:-80px;top:20px;-webkit-mask-image:url(../decor/place-right.svg);mask-image:url(../decor/place-right.svg)}
.pc-decor-journal::after{right:-95px;top:35px;-webkit-mask-image:url(../decor/journal.svg);mask-image:url(../decor/journal.svg)}
.pc-decor-moments::after{right:-90px;top:15px;-webkit-mask-image:url(../decor/moments.svg);mask-image:url(../decor/moments.svg)}
.pc-decor-reuse::after{left:-110px;bottom:-10px;background:#647f69;opacity:.2;-webkit-mask-image:url(../decor/reuse.svg);mask-image:url(../decor/reuse.svg)}
.pc-decor-future::after{right:-90px;bottom:-30px;-webkit-mask-image:url(../decor/future.svg);mask-image:url(../decor/future.svg)}
.pc-decor-name::after{right:-115px;top:5px;background:#8d866a;opacity:.22;-webkit-mask-image:url(../decor/hero.svg);mask-image:url(../decor/hero.svg)}
.pc-decor-footer::after{right:-100px;bottom:20px;-webkit-mask-image:url(../decor/future.svg);mask-image:url(../decor/future.svg)}
/* Archive, articles, and place page use lighter editorial typography */
.pc-archive-page{margin:0!important;background:#f3f1e9;padding:50px 0 90px}
.pc-page-title{font-size:clamp(35px,4.5vw,52px);line-height:1.35;letter-spacing:-.06em;margin:8px 0 19px;color:#1d392e}
.pc-archive-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:30px;padding:0}
.pc-archive-card{background:#fffdf7;border-radius:10px;border:1px solid #d6ded0;overflow:hidden;display:flex;flex-direction:column}
.pc-archive-image{margin:0!important}
.pc-archive-image img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}
.pc-archive-card-content{padding:17px 18px 22px}
.pc-archive-card-title{font-size:18px;font-weight:800;margin:6px 0 11px;line-height:1.55}
.pc-archive-card a{color:#203b30}
.pc-archive-card .wp-block-post-excerpt{font-size:13px;color:#516657}
.pc-single-wrap,.pc-regular-page{margin:0!important;background:#faf9f5;padding:42px 0 90px}
.pc-article-content{max-width:760px;margin-inline:auto;padding:0 18px;font-size:16px;line-height:2.1}
.pc-single-title{font-size:clamp(32px,4vw,50px);letter-spacing:-.055em;line-height:1.45;margin:12px 0 10px}
.pc-single-date,.pc-post-terms{font-size:12px;color:#627968}
.pc-single-image{margin:24px 0 45px!important}
.pc-single-image img{width:100%;max-height:490px;object-fit:cover;border-radius:9px}
.pc-article-content .wp-block-post-content h2{font-size:28px;margin-top:2.3em}
.pc-article-content .wp-block-post-content p{margin:0 0 1.7em}
.pc-place-intro-section{background:#e7ded0;color:#203b30}
.pc-place-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.pc-place-overview-image img{aspect-ratio:1.35;border-radius:10px 58px 10px 10px}
.pc-place-info-section{background:#f4f2ea;color:#203b30}
.pc-place-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:29px}
.pc-info-card{background:#fffdf6;padding:20px;border:1px solid #d6dfd1;border-radius:10px;min-height:160px}
.pc-info-title{font-size:19px;margin:0 0 9px}
.pc-info-card p{font-size:13px;line-height:1.9;color:#566b5c}
.pc-name-section{background:#ede7dc;color:#203b30}
.pc-name-section .pc-kicker{color:#8a674f}
.pc-name-section .pc-section-lead{margin-bottom:12px}
.pc-gallery-page-section{background:#1b362b;color:#f6f5ee;min-height:500px}
.pc-gallery-page-section .pc-page-title{color:#f7f5ea}
.pc-gallery-page-section .pc-demo-note{color:#d9e3d6}
.pc-photo-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.pc-gallery-sample{height:215px;overflow:hidden;border-radius:7px}
.pc-gallery-sample img{height:100%}
.pc-404-page{padding:100px 0;background:#e7ded0;color:#203b30}
/* Tablet */
@media(max-width:1000px){
 .pc-hero-grid{grid-template-columns:.91fr 1.09fr;gap:28px}
 .pc-hero-title{font-size:clamp(32px,4.3vw,46px)}
 .pc-hero-photo-grid{height:400px}
 .pc-latest-grid{gap:12px}
 .pc-place-grid{gap:10px}
}
@media(max-width:820px){
 .pc-hero-grid,.pc-reuse-grid,.pc-place-overview-grid{grid-template-columns:1fr;gap:25px}
 .pc-hero-grid{min-height:0}
 .pc-hero-photo-grid{height:clamp(300px,55vw,450px)}
 .pc-latest-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-auto-rows:auto}
 .pc-latest-grid>.wp-block-post:first-child{grid-row:auto}
 .pc-latest-grid>.wp-block-post:not(:first-child)>.pc-post-card{grid-template-columns:36% minmax(0,1fr);min-height:135px}
 .pc-latest-grid>.wp-block-post:first-child .pc-post-thumbnail{height:auto;min-height:0;aspect-ratio:1.72;position:relative}
 .pc-moment-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:280px 200px}
 .pc-moment-wide{grid-column:span 2}
 .pc-moment-tile{min-height:0}
 .pc-place-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
 .pc-place-stream{grid-column:span 2;display:grid;grid-template-columns:1.15fr 1fr;min-height:240px}
 .pc-place-stream .wp-block-image{height:100%;min-height:230px;flex:auto}
 .pc-place-stream .pc-place-card-copy{display:flex;flex-direction:column;justify-content:center}
 .pc-place-info-grid{grid-template-columns:1fr 1fr}
 .pc-archive-grid{grid-template-columns:1fr 1fr}
}
/* Mobile */
@media(max-width:620px){
 .pc-layout{width:calc(100% - 32px)}
 .pc-site-header .pc-header-inner{width:calc(100% - 32px)!important;min-height:61px;gap:10px}
 .pc-site-logo{font-size:21px}
 .pc-site-header .wp-block-navigation__responsive-container.is-menu-open{background:#21392f;color:#f5f5eb}
 .pc-site-header .wp-block-navigation__responsive-container.is-menu-open a{color:#f4f4e9}
 .pc-site-footer{padding:42px 0 17px!important}
 .pc-footer-inner{width:calc(100% - 32px)}
 .pc-section{padding:44px 0}
 .pc-section-title{font-size:26px}
 .pc-with-icon::before{width:23px;height:23px;vertical-align:-4px;margin-right:9px}
 .pc-section-lead{font-size:13px;line-height:1.9}
 .pc-hero{padding:24px 0 19px}
 .pc-hero-title{font-size:clamp(34px,8.6vw,44px);line-height:1.31;margin:19px 0 16px}
 .pc-hero-copy{font-size:13px;line-height:1.95;margin-bottom:20px}
 .pc-hero-note{font-size:11px;margin:15px 0 0}
 .pc-hero-photo-grid{height:290px;grid-template-columns:1.42fr .85fr;gap:7px}
 .pc-hero-photo-slip{width:39%;left:10px;bottom:-8px;padding:4px 4px 0;transform:rotate(-2deg)}
 .pc-photo-slip-caption{font-size:8px;padding:4px 2px 6px}
 .pc-hero-foot{width:calc(100% - 32px);font-size:10px;margin-top:16px}
 .pc-place-grid{gap:9px}
 .pc-place-stream{display:flex;grid-column:span 2;min-height:0}
 .pc-place-grid .pc-place-stream .wp-block-image{height:210px;min-height:0;flex:0 0 210px}
 .pc-place-card .wp-block-image{height:108px;flex:0 0 108px}
 .pc-place-stream .pc-place-card-copy{display:block}
 .pc-place-card-copy{padding:11px 12px 13px}
 .pc-card-title{font-size:15px;line-height:1.45}
 .pc-card-text{font-size:11px}
 .pc-ig-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .pc-ig-tile{border-radius:7px}
 .pc-ig-disclaimer{font-size:11px}
 .pc-latest-grid>.wp-block-post:not(:first-child)>.pc-post-card{grid-template-columns:38% 1fr}
 .pc-post-body{padding:12px}
 .pc-latest-grid>.wp-block-post:first-child .pc-post-body{padding:17px 20px}
 .pc-latest-grid>.wp-block-post:first-child .pc-post-thumbnail{height:auto;min-height:0;aspect-ratio:1.62}
 .pc-latest-grid>.wp-block-post:first-child .pc-post-title{font-size:19px}
 .pc-post-title{font-size:15px}
 .pc-post-date{font-size:10px}
 .pc-moment-grid{gap:9px;grid-template-rows:230px 155px}
 .pc-moment-tile{min-height:0}
 .pc-moment-wide{min-height:0}
 .pc-moment-caption{font-size:13px;left:11px;bottom:12px}
 .pc-reuse-grid{gap:25px}
 .pc-reuse-image img{aspect-ratio:1.6}
 .pc-future-section{padding-bottom:55px}
 .pc-decor-place::after,.pc-decor-journal::after,.pc-decor-moments::after,.pc-decor-future::after{right:-135px;width:220px;opacity:.09}
 .pc-decor-reuse::after{left:-155px;width:210px;opacity:.10}
 .pc-archive-page{padding:28px 0 55px}
 .pc-archive-grid,.pc-place-info-grid{grid-template-columns:1fr}
 .pc-photo-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .pc-gallery-sample{height:155px}
 .pc-page-title{font-size:33px}
 .pc-article-content{padding:0 16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Layout fidelity refinements found in the 1440px proof. */
.pc-hero-title{font-size:clamp(34px,3.62vw,52px)}
.pc-hero-grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr)}
.pc-section .wp-block-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.pc-hero-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.pc-hero-foot p{font-size:11px;line-height:1.6;margin:0}
.pc-section-head{position:relative}
.pc-section-head>.wp-block-buttons{position:absolute;right:0;top:18px}
@media(max-width:1000px){.pc-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
@media(max-width:820px){.pc-hero-grid{grid-template-columns:1fr}}
@media(max-width:620px){.pc-hero-title{font-size:clamp(32px,8.3vw,42px)}.pc-section-head>.wp-block-buttons{position:static;margin-top:13px}}


/* v1.0.0-beta.2: page canvas layout fix.
   Existing post_content is NOT rewritten; this also handles beta.1 hero groups
   already saved without alignfull, provided the new home template is selected. */
.pc-landing-canvas,
.pc-landing-canvas > .wp-block-post-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.pc-landing-canvas > .wp-block-post-content > .pc-section {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
.pc-landing-canvas > .wp-block-post-content > .pc-section + .pc-section {
    margin-block-start: 0 !important;
}

/* v1.0.0-beta.7: stronger playful offsets for Instagram and moments while keeping the hero as-is.
   These are VISUAL transforms on named cards, not WordPress block margins.
   Grid placement, dimensions, crop and the four-post query are unchanged.
   Do not apply transforms to text or the large journal card. */
@media (min-width: 1001px) {
  .pc-hero .pc-hero-photo-side { transform: translateY(18px); }
  .pc-hero .pc-hero-foot { margin-top: 29px; }
  .pc-place-grid > .pc-place-card:nth-child(2) { transform: translateY(6px); }
  .pc-place-grid > .pc-place-card:nth-child(3) { transform: translateY(10px); }
  .pc-place-grid > .pc-place-card:nth-child(4) { transform: translateY(3px); }
  .pc-place-grid > .pc-place-card:nth-child(5) { transform: translateY(7px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(2) { transform: translateY(12px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(3) { transform: translateY(20px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(4) { transform: translateY(10px); }
   .pc-ig-disclaimer { margin-top: 36px; }
   .pc-moment-grid > .pc-moment-tile:nth-child(2) { transform: translateY(16px); }
   .pc-moment-grid > .pc-moment-tile:nth-child(3) { transform: translateY(11px); }
}
@media (min-width: 821px) and (max-width: 1000px) {
  .pc-hero .pc-hero-photo-side { transform: translateY(12px); }
  .pc-hero .pc-hero-foot { margin-top: 23px; }
  .pc-place-grid > .pc-place-card:nth-child(2) { transform: translateY(4px); }
  .pc-place-grid > .pc-place-card:nth-child(3) { transform: translateY(7px); }
  .pc-place-grid > .pc-place-card:nth-child(4) { transform: translateY(2px); }
  .pc-place-grid > .pc-place-card:nth-child(5) { transform: translateY(4px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(2) { transform: translateY(9px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(3) { transform: translateY(14px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(4) { transform: translateY(7px); }
   .pc-ig-disclaimer { margin-top: 30px; }
   .pc-moment-grid > .pc-moment-tile:nth-child(2) { transform: translateY(10px); }
    .pc-moment-grid > .pc-moment-tile:nth-child(3) { transform: translateY(11px); }
}
@media (min-width: 621px) and (max-width: 820px) {
  .pc-hero .pc-hero-photo-side { transform: translateY(10px); }
  .pc-hero .pc-hero-foot { margin-top: 23px; }
  /* At two columns, keep the five place cards in a clean matrix. */
   .pc-ig-grid > .pc-ig-tile:nth-child(2) { transform: translateY(9px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(3) { transform: translateY(12px); }
   .pc-ig-grid > .pc-ig-tile:nth-child(4) { transform: translateY(6px); }
   .pc-ig-disclaimer { margin-top: 28px; }
   .pc-moment-grid > .pc-moment-tile:nth-child(2) { transform: translateY(9px); }
    .pc-moment-grid > .pc-moment-tile:nth-child(3) { transform: translateY(11px); }
}
@media (max-width: 620px) {
  .pc-hero .pc-hero-photo-side { transform: translateY(8px); }
  .pc-hero .pc-hero-foot { margin-top: 23px; }
  /* Instagram is 2x2 here: gently lower the right-hand column. */
   .pc-ig-grid > .pc-ig-tile:nth-child(even) { transform: translateY(10px); }
   .pc-ig-disclaimer { margin-top: 27px; }
   .pc-moment-grid > .pc-moment-tile:nth-child(2) { transform: translateY(8px); }
   .pc-moment-grid > .pc-moment-tile:nth-child(3) { transform: translateY(11px); }
}


/* v1.0.0-beta.15: improve small-screen legibility without changing the
   fixed photo layouts, gutters, stagger offsets, colors or footer separator.
   Restrict changes to 620px and below to keep PC fidelity. */
@media (max-width: 620px) {
  .pc-section .pc-section-lead { font-size: 14px; line-height: 1.85; }
  .pc-section .pc-kicker { font-size: 11.5px; letter-spacing: .12em; }
  .pc-hero-copy { font-size: 14px; line-height: 1.9; }
  .pc-hero-note { font-size: 12px; }
  .pc-hero-foot, .pc-hero-foot p { font-size: 11px; }
  .pc-card-overline { font-size: 10.5px; line-height: 1.55; }
  .pc-card-title { font-size: 16px; line-height: 1.45; }
  .pc-card-text { font-size: 12.5px; line-height: 1.65; }
  .pc-place-card .pc-demo-note { font-size: 10.5px; line-height: 1.6; }
  .pc-ig-disclaimer, .pc-demo-note { font-size: 12px; line-height: 1.65; }
  .pc-post-date { font-size: 11.5px; }
  .pc-post-title { font-size: 16px; line-height: 1.5; }
  .pc-post-excerpt { font-size: 13px; line-height: 1.75; }
  .pc-moment-caption { font-size: 14px; }
  .pc-footer-text, .pc-footer-links { font-size: 14px; }
  .pc-footer-copy { font-size: 12px; }
  .pc-photo-slip-caption { font-size: 9px; }
}
