/* Copied unchanged from the Contentful block 2FIQPUbuwggTYm0w0thMNR on Nov 13 2026. Do not edit in place: upload a new version. */
/* CAMP PAGE: ONE-COLUMN LAYOUT CSS (universal)  v2.8
     v2.3: modal frame and grade square look moved to Universal 1 v2.5
     (U1b shared components); this sheet keeps the page layout only.
     Styles for "Camp Page - One Column Layout". Link once per site on every
     one-column camp page, right BEFORE the layout block. Tokens come from
     Universal 1 - Core. v2.1: no photo zoom on tile hover (Chrome showed a
     gap beside the photo); the card lifts and rings instead. Styles for the
     Bus details / Site details links under the camp day (layout v2.3).
     Tile grid by count: 1 to 5 tiles in one row, 6 to 10 in two balanced
     rows (6: 3+3, 7: 4+3, 8: 4+4, 9: 5+4, 10: 5+5); 3 columns under
     1000px, 2 under 760px, 1 under 560px. The five-tile banner is gone.
     v2.2: inline panel links (Bus & field site / Site details) in the
     transport line, What to pack at the same size; h1 hidden until the
     admin feed names it. v2.4: Extended Camp tiles (layout v2.6): time
     rows (.cp-tile-rows), text cards (.cp-tile-text) and tiles without a
     photo (.cp-tile-noimg). v2.5: 2-up tiles span the full block with
     16:9 photos; a 1-up tile is a feature card, 16:9 photo left and text
     right (stacks on phones).
     v2.6 (Oct 27 2026): when the hero card is taller than the photo, the photo grows to match, so the white card never runs past the photo into the color band.
     v2.8 (Oct 28 2026): .cp-pointer, the triangle under the selected site pill that points at the site card (layout v3.2 places it). */

.tc.cp{--guild:var(--g-forest)}
.tc.cp.cp-mariners{--guild:var(--g-mariner)}
.tc.cp.cp-wilders{--guild:var(--g-wilder)}
.tc.cp.cp-artisans{--guild:var(--g-artisan)}
.tc.cp section{padding:2.75rem 0}
.tc.cp section.cp-tight{padding:1.5rem 0 2.25rem}
.tc.cp .cp-wrap{max-width:1120px;margin:0 auto;padding:0 1rem}
.tc.cp .cp-head{text-align:center;margin-bottom:1.25rem}
.tc.cp .cp-head h2{margin-bottom:.35rem}
.tc.cp .cp-head h2::after{background:var(--guild)}
.tc.cp .cp-head p{max-width:70ch;margin:.85rem auto 0;color:var(--ink);line-height:1.65}
.tc.cp .cp-eyebrow{display:block;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--guild);margin-bottom:.25rem}
.tc.cp .cp-pills{padding:1.5rem 0 1.25rem}
.tc.cp #cp-about .cp-pills{padding:1.6rem 0 0}
.tc.cp #cp-about .cp-pills .cp-wrap{padding:0}
.tc.cp .cp-pills .badge-row{margin-bottom:0}
.tc.cp .cp-pills .free-badge{flex:1 1 200px;max-width:260px}
.tc.cp .cp-pills .free-badge,.tc.cp .cp-pills .free-badge.badge-rangers{--pc:var(--g-forest);--pt:var(--soft);--pt:color-mix(in srgb,var(--pc) 10%,#fff);background:var(--pt);border:1.5px solid var(--pc);box-shadow:none;transition:background .15s}
.tc.cp .cp-pills .free-badge.badge-mariners{--pc:var(--g-mariner)}
.tc.cp .cp-pills .free-badge.badge-wilders{--pc:var(--g-wilder)}
.tc.cp .cp-pills .free-badge.badge-artisans{--pc:var(--g-artisan)}
.tc.cp .cp-pills .free-badge a,.tc.cp .cp-pills .free-badge a:visited{padding:.5rem .9rem;font-size:.88rem;color:var(--pc);border-radius:999px;outline:none}
.tc.cp .cp-pills .free-badge:focus-within{box-shadow:0 0 0 3px rgba(0,0,0,.12)}
.tc.cp .cp-pills .free-badge:hover,.tc.cp .cp-pills .free-badge:focus-within{background:var(--pc);transform:none}
.tc.cp .cp-pills .free-badge:hover a,.tc.cp .cp-pills .free-badge:focus-within a{color:#fff}
.tc.cp .cp-prose{max-width:860px;margin:0 auto;text-align:center}
.tc.cp .cp-prose h3{font-size:clamp(1.3rem,2.2vw,1.6rem);margin:1.6rem 0 .6rem;color:var(--ink)}
.tc.cp .cp-prose h3:first-child{margin-top:0}
.tc.cp .cp-prose h3 b{color:var(--amber)}
.tc.cp .cp-prose h4{font-size:1.1rem;margin:1.4rem 0 .5rem}
.tc.cp .cp-prose p{font-size:1.05rem;line-height:1.7;margin:0 0 1rem}
.tc.cp .cp-prose ul{list-style:none;margin:0 auto 1rem;padding:0;max-width:70ch;text-align:left}
.tc.cp .cp-prose ul li{position:relative;padding-left:1.5rem;margin-bottom:.45rem;line-height:1.6}
.tc.cp .cp-prose ul li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--green);font-weight:800}
.tc.cp .cp-prose hr{border:0;border-top:1px dashed var(--line);margin:1.5rem auto;max-width:240px}
.tc.cp .cp-prose span[style],.tc.cp .cp-prose font{color:var(--guild) !important;font-weight:800}
.tc.cp .cp-feature{margin:0 0 1.25rem}
.tc.cp .cp-callout{background:var(--soft);border-left:4px solid var(--guild);border-radius:0 .6rem .6rem 0;padding:.8rem 1rem;margin:0 auto .9rem;max-width:70ch;text-align:left}
.tc.cp .cp-callout p{margin:0}
.tc.cp .cp-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-top:1.5rem}
.tc.cp .cp-tiles[data-n="3"]{grid-template-columns:repeat(3,1fr);gap:1.25rem}
.tc.cp .cp-tiles[data-n="2"]{grid-template-columns:repeat(2,1fr);gap:1.5rem}
.tc.cp .cp-tiles[data-n="1"]{grid-template-columns:1fr}
.tc.cp .cp-tiles[data-n="5"],.tc.cp .cp-tiles[data-n="9"],.tc.cp .cp-tiles[data-n="10"]{grid-template-columns:repeat(5,1fr);gap:.9rem}
.tc.cp .cp-tiles[data-n="6"]{grid-template-columns:repeat(3,1fr);gap:1.25rem}
.tc.cp .cp-tiles[data-n="7"],.tc.cp .cp-tiles[data-n="8"]{grid-template-columns:repeat(4,1fr)}
.tc.cp .cp-tiles[data-n="5"] .cp-tile-body,.tc.cp .cp-tiles[data-n="9"] .cp-tile-body,.tc.cp .cp-tiles[data-n="10"] .cp-tile-body{padding:.9rem .9rem 1rem}
.tc.cp .cp-tiles[data-n="5"] .cp-tile-body h3,.tc.cp .cp-tiles[data-n="9"] .cp-tile-body h3,.tc.cp .cp-tiles[data-n="10"] .cp-tile-body h3{font-size:1rem}
.tc.cp .cp-tile{--tile:var(--guild);position:relative;background:#fff;border:1px solid var(--line);border-top:4px solid var(--tile);border-radius:1rem;overflow:hidden;isolation:isolate;box-shadow:0 1px 3px rgba(0,0,0,.06);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.tc.cp .cp-tile:hover{transform:translateY(-4px);border-color:var(--tile);box-shadow:0 0 0 2px var(--tile),0 12px 26px rgba(0,0,0,.14)}
.tc.cp .cp-tile.cp-on{box-shadow:0 0 0 3px var(--tile),0 10px 24px rgba(0,0,0,.12)}
.tc.cp .cp-tile-img{aspect-ratio:4/3;overflow:hidden;background:var(--soft);width:100%;isolation:isolate}
.tc.cp .cp-tile-img img{width:100%;height:100%;object-fit:cover;display:block}
.tc.cp .cp-gsq{position:absolute;top:.75rem;left:.75rem;width:58px;border-radius:.5rem;overflow:hidden;background:var(--tile);color:#fff;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.25);font-family:var(--display);line-height:1}
.tc.cp .cp-gsq-cap{display:block;font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.3rem 0 .2rem;background:rgba(0,0,0,.22)}
.tc.cp .cp-gsq-num{display:block;font-size:1.05rem;font-weight:900;padding:.35rem .15rem .4rem;white-space:nowrap}
.tc.cp .cp-tile-body{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;flex:1}
.tc.cp .cp-tile-body h3{font-size:1.08rem;margin:0 0 .25rem;color:var(--guild)}
.tc.cp .cp-tile-body p.cp-tile-sub{flex:0 0 auto;font-size:.82rem;font-weight:700;color:var(--mute);margin:0 0 .55rem}
.tc.cp .cp-tile-body p{font-size:.9rem;line-height:1.6;color:var(--ink);margin:0 0 1rem;flex:1}
.tc.cp .cp-tile-btn{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;gap:.35rem;padding:.55rem 1rem;border-radius:999px;border:2px solid var(--guild);background:#fff;color:var(--guild);font-weight:800;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s}
.tc.cp .cp-tile-btn:hover,.tc.cp .cp-tile-btn:focus,.tc.cp .cp-tile:hover .cp-tile-btn{background:var(--tile);border-color:var(--tile);color:#fff;text-decoration:none}
.tc.cp .cp-tiles-group{margin-top:1.75rem}
.tc.cp .cp-tiles-group>h3{text-align:center;font-size:1.25rem;margin:0 0 .2rem}
.tc.cp .cp-tiles-group>.cp-group-intro{text-align:center;color:var(--mute);margin:0;line-height:1.5}
.tc.cp .cp-tiles-group .cp-tiles{margin-top:1rem}
.tc.cp .cp-banner{display:grid;grid-template-columns:minmax(220px,34%) 1fr;margin-top:1.1rem}
.tc.cp .cp-banner .cp-tile-img{aspect-ratio:auto;min-height:200px}
.tc.cp .cp-banner .cp-tile-body{padding:1.2rem 1.4rem}
.tc.cp .cp-banner .cp-tile-body p{flex:0 0 auto;max-width:70ch}
.tc.cp .cp-tile-rows{list-style:none;margin:.25rem 0 1rem;padding:0;flex:1}
.tc.cp .cp-tile-rows li{display:grid;grid-template-columns:auto 1fr;gap:.05rem .6rem;align-items:baseline;padding:.55rem 0;border-bottom:1px dashed var(--line)}
.tc.cp .cp-tile-rows li:last-child{border-bottom:0}
.tc.cp .cp-tile-rows b{font-family:var(--display);font-weight:800;font-size:.92rem;color:var(--guild)}
.tc.cp .cp-tile-rows span{font-weight:800;font-size:1rem;color:var(--ink);white-space:nowrap;text-align:right}
.tc.cp .cp-tile-rows small{grid-column:1 / -1;font-size:.8rem;font-weight:700;color:var(--mute)}
.tc.cp .cp-tile-text{flex:1;font-size:.92rem;line-height:1.6;color:var(--ink);margin:0 0 1rem}
.tc.cp .cp-tile-text p{margin:0 0 .6rem;flex:0 0 auto;font-size:.92rem}
.tc.cp .cp-tile-text ul{list-style:none;margin:0 0 .6rem;padding:0}
.tc.cp .cp-tile-text ul li{position:relative;padding-left:1.4rem;margin:0 0 .3rem;line-height:1.5}
.tc.cp .cp-tile-text ul li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--guild);font-weight:800}
.tc.cp .cp-tile-text a{color:var(--guild);font-weight:700}
.tc.cp .cp-tile-noimg .cp-tile-body{padding-top:1.25rem}
.tc.cp .cp-tiles[data-n="2"] .cp-tile-img{aspect-ratio:16/9}
.tc.cp .cp-tiles[data-n="2"] .cp-tile-body{padding:1.15rem 1.4rem 1.3rem}
.tc.cp .cp-tiles[data-n="2"] .cp-tile-body h3{font-size:1.25rem}
.tc.cp .cp-tiles[data-n="1"] .cp-tile{display:grid;grid-template-columns:minmax(0,56%) minmax(0,1fr)}
.tc.cp .cp-tiles[data-n="1"] .cp-tile.cp-tile-noimg{grid-template-columns:1fr}
.tc.cp .cp-tiles[data-n="1"] .cp-tile-img{aspect-ratio:16/9;height:100%}
.tc.cp .cp-tiles[data-n="1"] .cp-tile-body{padding:1.5rem 1.75rem;justify-content:center}
.tc.cp .cp-tiles[data-n="1"] .cp-tile-body h3{font-size:1.4rem}
.tc.cp .cp-tiles[data-n="1"] .cp-tile-body p,.tc.cp .cp-tiles[data-n="1"] .cp-tile-rows,.tc.cp .cp-tiles[data-n="1"] .cp-tile-text{flex:0 0 auto}
.tc.cp .cp-sibs{margin:2.25rem auto 0;text-align:center}
.tc.cp .cp-sibs.cp-sibs-solo{margin-top:0}
.tc.cp .cp-sibs h3{font-size:clamp(1.25rem,2vw,1.5rem);margin:0 0 .3rem}
.tc.cp .cp-sibs-lbl{display:block;max-width:70ch;margin:0 auto 1.1rem;color:var(--ink);line-height:1.6}
.tc.cp .cp-sibs-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1000px;margin:0 auto}
.tc.cp .cp-sibs-row[data-n="2"]{grid-template-columns:repeat(2,1fr);max-width:700px}
.tc.cp .cp-sibs-row[data-n="1"]{grid-template-columns:1fr;max-width:360px}
.tc.cp .cp-sib,.tc.cp .cp-sib:visited{--sib:var(--guild);display:grid;grid-template-columns:104px 1fr;align-items:center;text-align:left;min-height:104px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--sib);border-radius:1rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06);color:var(--ink);text-decoration:none;transition:transform .2s,box-shadow .2s}
.tc.cp .cp-sib:hover,.tc.cp .cp-sib:focus{transform:translateY(-4px);border-color:var(--sib);box-shadow:0 0 0 2px var(--sib),0 10px 24px rgba(0,0,0,.12);text-decoration:none;color:var(--ink)}
.tc.cp .cp-sib-img{align-self:stretch;position:relative;display:block;background:var(--sib);overflow:hidden}
.tc.cp .cp-sib-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tc.cp .cp-sib-txt{padding:.85rem 1rem .9rem .95rem}
.tc.cp .cp-sib b{display:block;font-family:var(--display);font-size:1.05rem;line-height:1.2;color:var(--ink)}
.tc.cp .cp-sib-txt span{display:block;margin-top:.3rem;font-size:.9rem;font-weight:700;line-height:1.3;color:var(--sib)}
.tc.cp .cp-wyd{max-width:70ch;margin:0 auto}
.tc.cp .cp-wyd.cp-wide{max-width:1000px}
.tc.cp .cp-wyd p{line-height:1.7;max-width:70ch;margin:0 auto 1rem;text-align:center}
.tc.cp .cp-wyd ul{list-style:none;margin:0 0 1rem;padding:1.25rem 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1.75rem;background:var(--soft);border:1px solid var(--line);border-left:5px solid var(--guild);border-radius:0 1rem 1rem 0}
.tc.cp .cp-wyd.cp-wide ul{grid-template-columns:repeat(3,1fr)}
.tc.cp .cp-wyd ul li{position:relative;padding-left:1.6rem;line-height:1.55;font-size:1rem;font-weight:600}
.tc.cp .cp-wyd ul li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--guild);font-weight:900;font-size:1.05rem}
.tc.cp .cp-wyd p:last-child{margin-bottom:0}
.tc.cp .cp-wyd-card{display:grid;grid-template-columns:minmax(240px,34%) 1fr;max-width:1000px;margin:0 auto;background:#fff;border:1px solid var(--line);border-top:4px solid var(--guild);border-radius:1rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.tc.cp .cp-wyd-img{position:relative;min-height:240px;background:var(--soft)}
.tc.cp .cp-wyd-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tc.cp .cp-wyd-bd{padding:1.3rem 1.5rem 1.4rem}
.tc.cp .cp-wyd-card p{text-align:left;max-width:none;margin:0 0 .9rem}
.tc.cp .cp-wyd-card ul{background:none;border:0;border-radius:0;padding:0;margin:0;grid-template-columns:1fr 1fr;gap:.55rem 1.5rem}
.tc.cp .cp-wyd-card ul li{font-size:.97rem}
.tc.cp .cp-feat{display:grid;grid-template-columns:200px 1fr;max-width:1000px;margin:2rem auto 0;background:#fff;border:1px solid var(--line);border-top:4px solid var(--amber);border-radius:1rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06);text-align:left}
.tc.cp .cp-feat-img{position:relative;min-height:300px;background:var(--soft)}
.tc.cp .cp-feat-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.tc.cp .cp-feat-bd{padding:1.25rem 1.5rem 1.35rem;align-self:center}
.tc.cp .cp-feat .cp-eyebrow{color:var(--amber)}
.tc.cp .cp-feat h3{font-size:1.3rem;margin:0 0 .5rem;color:var(--ink)}
.tc.cp .cp-feat p{font-size:.97rem;line-height:1.6;margin:0 0 .9rem;max-width:70ch}
.tc.cp .cp-feat p a{color:var(--guild);font-weight:700}
.tc.cp .cp-tabs{display:flex;gap:.5rem;align-items:stretch;margin:1.25rem auto 0;max-width:960px;padding:0;position:relative;z-index:1}
.tc.cp .cp-tab{--tc:var(--guild);--tint:var(--soft);--tint:color-mix(in srgb,var(--tc) 11%,#fff);--tint2:var(--soft);--tint2:color-mix(in srgb,var(--tc) 6%,#fff);flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.85rem .6rem .8rem;background:var(--tint);border:2px solid var(--line);border-top:4px solid var(--tc);border-bottom:0;border-radius:1rem 1rem 0 0;cursor:pointer;font-family:var(--display);font-weight:800;font-size:.95rem;color:var(--ink);transition:color .15s,background .15s}
.tc.cp .cp-tab:not([aria-selected="true"]):hover{color:var(--tc);background:#fff}
.tc.cp .cp-tab[aria-selected="true"]{color:var(--tc);background:var(--tint2);border-color:var(--tc);border-width:2px 2px 0;border-top-width:4px;margin-bottom:-5px;padding-bottom:calc(.8rem + 5px);position:relative;z-index:2}
.tc.cp .cp-tab-ic{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid var(--tc);color:var(--tc);transition:background .15s,color .15s}
.tc.cp .cp-tab-ic svg{width:30px;height:30px}
.tc.cp .cp-tab[aria-selected="true"] .cp-tab-ic{background:var(--tc);color:#fff}
.tc.cp .cp-tab .cp-must-tag{display:inline-block;font-family:var(--body);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;background:var(--g-wilder);color:#fff;border-radius:999px;padding:.15rem .5rem}
.tc.cp .cp-panes{--tc:var(--guild);max-width:960px;margin:0 auto;background:#fff;border:2px solid var(--tc);border-top-width:4px;border-radius:0 0 1rem 1rem;box-shadow:0 4px 14px rgba(0,0,0,.07);transition:border-color .15s}
.tc.cp .cp-pane{--tc:var(--guild);--tint:var(--soft);--tint:color-mix(in srgb,var(--tc) 6%,#fff);display:none;padding:1.6rem 2rem 1.75rem;background:linear-gradient(180deg,var(--tint),#fff 70%);border-radius:0 0 .9rem .9rem}
.tc.cp .cp-pane.cp-on{display:block}
.tc.cp .cp-pane-in{display:grid;grid-template-columns:96px 1fr;gap:1.5rem;align-items:start;max-width:860px;margin:0 auto}
.tc.cp .cp-pane-ic{width:96px;height:96px;border-radius:1.25rem;background:var(--tc);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.tc.cp .cp-pane-ic svg{width:54px;height:54px}
.tc.cp .cp-pane h3{font-size:1.35rem;margin:.1rem 0 .6rem;color:var(--tc)}
.tc.cp .cp-pane p{font-size:1rem;line-height:1.7;margin:0 0 .85rem;max-width:70ch}
.tc.cp .cp-pane p.cp-note{}
.tc.cp .cp-pane ul,.tc.cp .cp-pane ol{margin:0 0 .85rem 1.25rem;padding:0;max-width:70ch}
.tc.cp .cp-pane ul{list-style:none;margin-left:0}
.tc.cp .cp-pane ul li{position:relative;padding-left:1.5rem;margin-bottom:.4rem;line-height:1.6}
.tc.cp .cp-pane ul li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--green);font-weight:800}
.tc.cp .cp-pane ol li{margin-bottom:.4rem;line-height:1.6}
.tc.cp .cp-more{display:inline-flex;align-items:center;margin-top:.25rem;padding:.55rem 1rem;border-radius:999px;border:2px solid var(--tc);background:#fff;color:var(--tc);font-weight:800;font-size:.92rem;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}
.tc.cp .cp-more::after{content:" \203a";margin-left:.25rem}
.tc.cp .cp-more:hover{background:var(--tc);color:#fff}
#tcp.cp-tcp #tcp-loc-tabs,#tcp.cp-tcp #tcp-addr-bar{display:none !important}
#tcp.cp-nocamp #tcp-camps,#tcp.cp-nograde #tcp-grades{display:none !important}
#tcp.cp-nocamp.cp-nograde #tcp-filter-bar{display:none !important}
#tcp .cp-sitebox{padding:2px 24px 14px;background:#f7f7f8;position:relative}
#tcp .cp-pointer{position:absolute;bottom:-16px;left:0;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid var(--tcp-loc,#2d5730);transition:left .18s cubic-bezier(.4,0,.2,1),border-bottom-color .2s;pointer-events:none;z-index:2}
#tcp .cp-sites{display:flex;flex-wrap:wrap;gap:.55rem;margin:0}
#tcp .cp-site{display:flex;align-items:center;gap:.6rem;padding:.5rem .9rem .5rem .55rem;border:2px solid var(--line,#e9ecef);border-radius:999px;background:#fff;cursor:pointer;font:inherit;font-weight:800;color:#121212;transition:border-color .15s,background .15s}
#tcp .cp-site .cp-site-dot{width:30px;height:30px;border-radius:50%;background:var(--lc);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:900;letter-spacing:.02em}
#tcp .cp-site.cp-on{border-color:var(--lc);background:var(--lc);color:#fff}
#tcp .cp-site.cp-on .cp-site-dot{box-shadow:0 0 0 2px #fff}
#tcp .cp-site:focus-visible{outline:2px solid #3b5323;outline-offset:2px}
#tcp .cp-panel{border:1.5px solid var(--line,#e9ecef);border-top:5px solid var(--tcp-loc,#2d5730);border-radius:14px;background:#fff;margin:16px 24px 4px;overflow:hidden}
#tcp .cp-panel-hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;padding:.9rem 1.1rem .7rem;border-bottom:1px dashed var(--line,#e9ecef)}
#tcp .cp-panel-hd b{font-family:'Nunito',system-ui,sans-serif;font-size:1.15rem;font-weight:900}
#tcp .cp-panel-hd a,#tcp .cp-panel-hd span{font-size:.92rem;color:#121212}
#tcp .cp-panel-hd a{color:#3b5323;font-weight:700;text-decoration:underline;text-decoration-color:rgba(59,83,35,.35)}
#tcp .cp-panel-bd{display:grid;grid-template-columns:1.1fr 1fr;gap:1rem 1.5rem;padding:1rem 1.1rem 1.1rem}
#tcp .cp-day h4,#tcp .cp-hours h4{font-family:'Nunito',system-ui,sans-serif;font-size:.8rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#646b74;margin:0 0 .55rem}
#tcp .cp-day ol{list-style:none;margin:0;padding:0;position:relative}
#tcp .cp-day ol::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--line,#e9ecef)}
#tcp .cp-day li{position:relative;display:grid;grid-template-columns:112px 1fr;gap:.5rem;padding:0 0 .55rem 1.5rem;font-size:.93rem;line-height:1.4}
#tcp .cp-day li::before{content:"";position:absolute;left:3px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--tcp-loc,#2d5730)}
#tcp .cp-day li.cp-mid{grid-template-columns:1fr;padding-bottom:.4rem}
#tcp .cp-day li.cp-mid::before{background:#fff;border:2px solid var(--tcp-loc,#2d5730);box-sizing:border-box;width:8px;height:8px;left:4px;top:6px}
#tcp .cp-day li b{font-weight:800;color:#121212;white-space:nowrap}
#tcp .cp-day li span{color:#121212}
#tcp .cp-day li.cp-mid span{color:#646b74}
#tcp .cp-day p.cp-transport{margin:.55rem 0 0;font-size:.88rem;line-height:1.5;color:#121212}
#tcp .cp-transport button.cp-inl{background:none;border:0;padding:0;margin:0 .1rem;font:inherit;font-weight:800;color:#8b3a3a;cursor:pointer;white-space:nowrap}
#tcp .cp-transport button.cp-inl::after{content:" \203a"}
#tcp .cp-transport button.cp-inl:hover{text-decoration:underline}
.tc-hero .hero-title.cp-pending{visibility:hidden}
#tcp .cp-hours{border-left:1px dashed var(--line,#e9ecef);padding-left:1.5rem}
#tcp .cp-hours-rows{display:flex;flex-direction:column;gap:.4rem;margin:0 0 .7rem}
#tcp .cp-hour{display:grid;grid-template-columns:1fr auto;gap:.25rem .75rem;align-items:center;padding:.5rem .75rem;border:1px solid var(--line,#e9ecef);border-radius:10px;background:#f7f7f8;font-size:.92rem}
#tcp .cp-hour b{display:block;font-weight:800}
#tcp .cp-hour small{display:block;color:#646b74;font-size:.82rem}
#tcp .cp-hour .cp-price{font-weight:900;font-family:'Nunito',system-ui,sans-serif;font-size:1rem}
#tcp .cp-hours-note{font-size:.85rem;color:#646b74;margin:0 0 .7rem;line-height:1.45}
#tcp .cp-hours-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
#tcp .cp-hours-actions a,#tcp .cp-hours-actions a:visited{display:inline-flex;align-items:center;padding:.55rem 1rem;border-radius:999px;background:#3b5323;color:#fff;font-weight:800;font-size:.9rem;text-decoration:none}
#tcp .cp-hours-actions a:hover{background:#2d3f1a;color:#fff}
#tcp .cp-hours-actions button{background:none;border:0;padding:.4rem .25rem;font:inherit;font-size:.88rem;font-weight:800;color:#8b3a3a;cursor:pointer}
#tcp .cp-hours-actions button::after{content:" \203a"}
#tcp .cp-hours-actions button:hover{text-decoration:underline}
#tcp .cp-pick-lbl{font-family:'Nunito',system-ui,sans-serif;font-size:.8rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#646b74;margin:0 0 .5rem}
.tc.cp .cp-contact{text-align:center;padding:1.5rem 0 2.5rem}
.tc.cp .cp-contact p{max-width:70ch;margin:0 auto;font-size:.98rem;line-height:1.65}
.tc.cp .cp-contact a{white-space:nowrap}
.cp-modal-bd .cp-pk{list-style:none;margin:0 0 1.1rem;padding:0;border-top:1px solid #e9ecef}
.cp-modal-bd .cp-pk li{display:grid;grid-template-columns:160px 1fr;gap:.2rem .9rem;padding:.55rem 0;margin:0;border-bottom:1px solid #e9ecef;font-size:.92rem;line-height:1.5}
.cp-modal-bd .cp-pk b{font-family:'Nunito',system-ui,sans-serif;font-weight:800;color:#121212}
.cp-modal-bd .cp-pk em{display:inline-block;font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--guild,#2d5730);border-radius:999px;padding:.1rem .45rem;margin-top:.2rem}
.cp-modal-bd .cp-pk span{color:#333}
@media (max-width:1000px){
.tc.cp .cp-tiles,.tc.cp .cp-tiles[data-n="7"],.tc.cp .cp-tiles[data-n="8"],.tc.cp .cp-tiles[data-n="10"]{grid-template-columns:repeat(2,1fr)}
.tc.cp .cp-tiles[data-n="3"],.tc.cp .cp-tiles[data-n="5"],.tc.cp .cp-tiles[data-n="6"],.tc.cp .cp-tiles[data-n="9"]{grid-template-columns:repeat(3,1fr);gap:.9rem}
.tc.cp .cp-tiles[data-n="5"] .cp-tile-body,.tc.cp .cp-tiles[data-n="9"] .cp-tile-body,.tc.cp .cp-tiles[data-n="10"] .cp-tile-body{padding:1rem 1.1rem 1.15rem}
.tc.cp .cp-tiles[data-n="5"] .cp-tile-body h3,.tc.cp .cp-tiles[data-n="9"] .cp-tile-body h3,.tc.cp .cp-tiles[data-n="10"] .cp-tile-body h3{font-size:1.08rem}
}
@media (max-width:900px){
#tcp .cp-sitebox{padding-left:14px;padding-right:14px}
#tcp .cp-panel{margin-left:14px;margin-right:14px}
}
@media (max-width:760px){
.tc.cp section{padding:2.1rem 0}
.tc.cp .cp-tiles[data-n="3"],.tc.cp .cp-tiles[data-n="5"],.tc.cp .cp-tiles[data-n="6"],.tc.cp .cp-tiles[data-n="9"]{grid-template-columns:1fr 1fr}
.tc.cp .cp-banner{grid-template-columns:1fr}
.tc.cp .cp-tiles[data-n="1"] .cp-tile{grid-template-columns:1fr}
.tc.cp .cp-tiles[data-n="1"] .cp-tile-body{padding:1.1rem 1.2rem 1.25rem}
.tc.cp .cp-banner .cp-tile-img{aspect-ratio:16/9;min-height:0}
.tc.cp .cp-wyd ul,.tc.cp .cp-wyd.cp-wide ul,.tc.cp .cp-wyd-card ul{grid-template-columns:1fr}
.tc.cp .cp-wyd-card{grid-template-columns:1fr}
.tc.cp .cp-wyd-img{min-height:0;aspect-ratio:16/9}
.tc.cp .cp-feat{grid-template-columns:1fr}
.tc.cp .cp-feat-img{min-height:0;aspect-ratio:3/2}
.tc.cp .cp-feat-img img{object-position:center 20%}
.tc.cp .cp-sibs-row,.tc.cp .cp-sibs-row[data-n="2"]{grid-template-columns:1fr;max-width:420px}
#tcp .cp-panel-bd{grid-template-columns:1fr}
#tcp .cp-hours{border-left:0;padding-left:0;border-top:1px dashed var(--line,#e9ecef);padding-top:1rem}
.tc.cp .cp-tabs{flex-wrap:wrap;gap:.4rem;padding:0;align-items:stretch}
.tc.cp .cp-tab,.tc.cp .cp-tab[aria-selected="true"]{flex:1 1 42%;font-size:.88rem;padding:.7rem .4rem .6rem;border-radius:.8rem;border-bottom:2px solid var(--line);margin-bottom:0}
.tc.cp .cp-tab[aria-selected="true"]{border:2px solid var(--tc);border-top-width:4px}
.tc.cp .cp-panes{margin-top:.5rem;border-radius:1rem}
.tc.cp .cp-tab-ic{width:44px;height:44px}
.tc.cp .cp-tab-ic svg{width:24px;height:24px}
.tc.cp .cp-pane{padding:1.2rem 1.1rem 1.3rem}
.tc.cp .cp-pane-in{grid-template-columns:1fr;gap:.75rem}
.tc.cp .cp-pane-ic{width:64px;height:64px;border-radius:1rem}
.tc.cp .cp-pane-ic svg{width:36px;height:36px}
}
@media (max-width:560px){
.tc.cp .cp-tiles,.tc.cp .cp-tiles[data-n="2"],.tc.cp .cp-tiles[data-n="3"],.tc.cp .cp-tiles[data-n="5"],.tc.cp .cp-tiles[data-n="6"],.tc.cp .cp-tiles[data-n="9"]{grid-template-columns:1fr}
.tc.cp .cp-pills .free-badge{flex:1 1 46%;max-width:none}
.tc.cp .cp-pills .free-badge a{padding:.7rem .6rem;font-size:.9rem}
#tcp .cp-site{flex:1 1 45%;justify-content:flex-start}
#tcp .cp-day li{grid-template-columns:1fr;gap:.1rem}
.cp-modal-bd .cp-pk li{grid-template-columns:1fr;gap:.1rem}
}
@media (prefers-reduced-motion:reduce){
.tc.cp .cp-tile,.tc.cp .cp-tile-img img{transition:none}
}
@media (min-width:1120px){
.tc .hero-slider{align-self:stretch;height:auto!important;min-height:clamp(440px,33cqw,520px);max-height:none;aspect-ratio:auto}
}
