.cnom-single-page{--cnom-green:#314d26;--cnom-dark:#172315;--cnom-accent:#d88445;--cnom-cream:#f7f3eb;--cnom-border:#e5ded2;--cnom-muted:#697165;color:#1f281d;background:#faf9f6;padding:42px 0 90px}.cnom-single-page *{box-sizing:border-box}.cnom-single-shell{width:min(1180px,calc(100% - 36px));margin:0 auto}.cnom-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:#737b70;font-size:.86rem;margin-bottom:28px}.cnom-breadcrumb a{color:var(--cnom-green);text-decoration:none}.cnom-campsite-header{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.cnom-eyebrow,.cnom-section-kicker{text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:.75rem;color:var(--cnom-accent)}.cnom-campsite-header h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1;margin:10px 0 12px;color:var(--cnom-dark)}.cnom-location-line{margin:0;color:var(--cnom-muted);font-size:1.06rem}.cnom-header-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.cnom-pill{background:#edf1e8;border:1px solid #dce5d4;color:var(--cnom-green);padding:7px 10px;border-radius:999px;font-size:.76rem;font-weight:750}.cnom-pill-featured{background:#fff1e6;border-color:#f1d4bd;color:#a9551d}.cnom-price-summary{min-width:190px;background:#fff;border:1px solid var(--cnom-border);border-radius:16px;padding:18px;text-align:right;box-shadow:0 12px 32px rgba(39,52,32,.07)}.cnom-price-summary small,.cnom-price-summary span{display:block;color:var(--cnom-muted);font-size:.76rem}.cnom-price-summary strong{display:block;color:var(--cnom-green);font-size:1.55rem;margin:3px 0}.cnom-hero-media{border-radius:24px;overflow:hidden;background:var(--cnom-green);box-shadow:0 20px 55px rgba(28,39,24,.13);margin-bottom:38px}.cnom-hero-image{display:block;width:100%;height:clamp(340px,54vw,590px);object-fit:cover}.cnom-hero-placeholder{height:clamp(330px,45vw,520px);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:radial-gradient(circle at 65% 25%,rgba(216,132,69,.45),transparent 25%),linear-gradient(135deg,#1a2c18,#526a36);text-align:center}.cnom-placeholder-icon{font-size:5rem}.cnom-hero-placeholder strong{font-size:clamp(1.7rem,4vw,3.2rem);margin-top:15px}.cnom-hero-placeholder small{opacity:.75;margin-top:7px}.cnom-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:38px;align-items:start}.cnom-main-content{min-width:0}.cnom-content-section,.cnom-detail-card{background:#fff;border:1px solid var(--cnom-border);border-radius:20px;padding:28px;margin:0 0 24px;box-shadow:0 8px 28px rgba(38,49,32,.045)}.cnom-content-section h2{font-size:clamp(1.45rem,3vw,2rem);margin:4px 0 18px;color:var(--cnom-dark)}.cnom-description{font-size:1rem;line-height:1.8;color:#4e574c;overflow-wrap:anywhere}.cnom-description img{display:none!important}.cnom-description p:first-child{margin-top:0}.cnom-description p:last-child{margin-bottom:0}.cnom-section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.cnom-section-heading-row h2{margin:5px 0 0}.cnom-text-link,.cnom-gps-row a{color:var(--cnom-green);font-weight:750;text-decoration:none}.cnom-content-section .cnom-map-app{margin:0}.cnom-content-section .cnom-map{border-radius:14px}.cnom-gps-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:14px;color:var(--cnom-muted);font-size:.88rem}.cnom-booking-card{position:sticky;top:30px;background:var(--cnom-dark);color:#fff;border-radius:20px;padding:25px;box-shadow:0 18px 48px rgba(24,35,21,.2)}.cnom-booking-card h2{margin:0 0 10px;color:#fff;font-size:1.45rem}.cnom-booking-card>p{margin:0 0 20px;color:rgba(255,255,255,.72);line-height:1.55;font-size:.9rem}.cnom-action{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 14px;margin-top:9px;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff!important;text-decoration:none!important;font-weight:750;font-size:.9rem}.cnom-action:hover{background:rgba(255,255,255,.08)}.cnom-action-primary{background:#638347;border-color:#638347}.cnom-action-primary:hover{background:#708e55}.cnom-booking-note{border-top:1px solid rgba(255,255,255,.13);margin-top:20px;padding-top:16px;color:rgba(255,255,255,.58);font-size:.74rem;line-height:1.5}.cnom-detail-card{max-width:none;padding:28px}.cnom-detail-card:before{content:'Campsite information';display:block;font-size:1.65rem;font-weight:800;color:var(--cnom-dark);margin-bottom:18px}.cnom-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cnom-detail-grid>div{background:var(--cnom-cream);padding:14px;border-radius:10px;border:1px solid #eee7dc}.cnom-detail-grid strong,.cnom-detail-grid span{display:block}.cnom-detail-grid strong{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:#7b8178}.cnom-detail-grid span{margin-top:5px;font-weight:650;color:#303a2d;overflow-wrap:anywhere}.cnom-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.cnom-gallery img{width:100%;height:220px;object-fit:cover;border-radius:11px}.cnom-video{position:relative;overflow:hidden;padding-top:56.25%;margin-top:24px;border-radius:12px}.cnom-video iframe{position:absolute;inset:0;width:100%;height:100%}.cnom-download{display:inline-block;padding:11px 16px;background:var(--cnom-green);color:#fff!important;border-radius:8px;text-decoration:none}.cnom-detail-card>h3{margin-top:28px}.cnom-detail-card>ul{padding-left:18px}.cnom-detail-card>ul a{color:var(--cnom-green)}
@media(max-width:900px){.cnom-page-layout{grid-template-columns:1fr}.cnom-booking-card{position:static}.cnom-campsite-header{align-items:flex-start}.cnom-price-summary{display:none}}
@media(max-width:650px){.cnom-single-page{padding:24px 0 60px}.cnom-single-shell{width:min(100% - 24px,1180px)}.cnom-campsite-header{display:block}.cnom-campsite-header h1{font-size:2.65rem}.cnom-hero-media{border-radius:16px}.cnom-hero-image,.cnom-hero-placeholder{height:330px}.cnom-content-section,.cnom-detail-card{padding:20px;border-radius:15px}.cnom-detail-grid,.cnom-gallery{grid-template-columns:1fr}.cnom-gallery img{height:auto}.cnom-section-heading-row{align-items:flex-start;flex-direction:column}.cnom-gps-row{display:block}.cnom-gps-row a{display:block;margin-top:8px}}
