
body .cm-kyst{--cm-bla:#0091b3;--cm-lys:#00b4d8;--cm-sand:#f7f4ee;--cm-strek:#ece6da;--cm-mork:#1d2330;--cm-gra:#5a606a}
body .cm-kyst>*{max-width:1240px;padding-left:clamp(16px,4vw,40px);padding-right:clamp(16px,4vw,40px)}
body .cm-kyst>ul{padding-left:calc(clamp(16px,4vw,40px) + 22px)}
body .cm-kyst>.cm-full,body .cm-kyst>.fp-shell{max-width:none}
body .cm-kyst>.cm-anchor{height:0;padding:0;margin:0 auto}
body .cm-kyst h2{font-size:clamp(25px,2.6vw,34px);font-weight:800;margin:64px auto 14px;letter-spacing:-.015em}
body .cm-kyst h3{font-size:19px}
body .cm-kyst .cm-byline{font-size:13.5px;color:#6b7280;margin:-10px auto 10px}
body /* helt */
.cm-hero{position:relative;padding:0!important;margin:0 0 34px;min-height:clamp(420px,72vh,720px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0b3a4a}
body .cm-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
body .cm-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,20,30,.05) 30%,rgba(5,20,30,.72) 100%)}
body .cm-hero-inner{position:relative;z-index:1;width:100%;max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px) clamp(28px,6vh,64px)}
body .cm-hero .cm-eye{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;color:#bdeefa}
body .cm-hero h1{font-size:clamp(34px,5.6vw,68px);line-height:1.05;font-weight:800;margin:0 0 14px;color:#fff;letter-spacing:-.02em;max-width:900px}
body .cm-hero .cm-tagline{font-size:clamp(17px,1.6vw,21px);color:rgba(255,255,255,.93);margin:0 0 22px;max-width:680px}
body .cm-hero .cm-cta{display:flex;gap:12px;flex-wrap:wrap}
body .cm-hero .cm-cta a{background:#fff;color:#075f73;font-weight:700;text-decoration:none;padding:12px 22px;border-radius:99px;font-size:15px}
body .cm-hero .cm-cta a.cm-ghost{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.7)}
body .cm-hero .cm-credit{position:absolute;right:10px;bottom:6px;z-index:1;font-size:11px;color:rgba(255,255,255,.75);margin:0}
body .cm-hero .cm-credit a{color:rgba(255,255,255,.85)}
body /* ikonfliser */
.cm-glance{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;list-style:none;margin:0 auto!important}
body .cm-glance li{background:var(--cm-sand);border-radius:16px;padding:18px 18px 16px;margin:0;font-size:15px;line-height:1.5}
body .cm-glance .cm-ico{color:var(--cm-bla);display:block;margin:0 0 8px}
body .cm-glance strong{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#8a8475;margin:0 0 3px}
body /* kart */
.cm-kyst .fp-shell{display:flex;gap:16px;flex-wrap:nowrap;padding:6px clamp(16px,3vw,40px) 0;max-width:1640px;margin:0 auto}
body .cm-kyst .fp-shell>.wp-block-column{min-width:0}
body .cm-kyst .cm-maplinks{font-size:14.5px;color:var(--cm-gra);margin-top:12px}
body /* bildekort */
.cm-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:22px auto 0}
body .cm-area,body .cm-card,body .cm-nabo{background:#fff;border:1px solid #eee;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(15,26,40,.09);display:flex;flex-direction:column}
body .cm-kyst .cm-img{margin:0;position:relative}
body .cm-kyst .cm-img img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block;border-radius:0}
body .cm-area .cm-img img{aspect-ratio:4/3}
body .cm-abody,body .cm-cbody{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
body .cm-tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--cm-bla);margin:0 0 6px;display:block}
body .cm-area h3,body .cm-card h3,body .cm-nabo h3{font-size:21px;line-height:1.22;margin:0 0 8px}
body .cm-area p,body .cm-card p,body .cm-nabo p{font-size:15px;line-height:1.6;margin:0 0 12px}
body .cm-zone{list-style:none;margin:4px 0 0!important;padding:12px 0 0!important;border-top:1px solid var(--cm-strek)}
body .cm-zone li{font-size:14.5px;line-height:1.5;margin:0 0 9px;padding-left:16px;position:relative}
body .cm-zone li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;background:var(--cm-lys)}
body .cm-zone a{font-weight:700}
body .cm-inland{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:0;border-radius:18px;overflow:hidden;background:var(--cm-sand);margin:22px auto 0;padding:0!important;max-width:calc(1240px - 2*clamp(16px,4vw,40px))}
body .cm-inland .cm-img img{height:100%;aspect-ratio:auto;min-height:220px}
body .cm-inland .cm-ibody{padding:20px 24px}
body .cm-inland ul{margin:0;padding-left:20px}
body /* temafliser */
.cm-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:18px auto 0}
body .cm-tile{position:relative;display:block;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff!important;aspect-ratio:16/10;background:#0b3a4a}
body .cm-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}
body .cm-tile:hover img{transform:scale(1.04)}
body .cm-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.68))}
body .cm-tile span{position:absolute;left:18px;right:18px;bottom:14px;z-index:1}
body .cm-tile b{display:block;font-size:21px;line-height:1.2}
body .cm-tile i{display:block;font-style:normal;font-size:14px;opacity:.92}
body /* kortgrid */
.cm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:18px auto 0}
body .cm-cards.cm-to{grid-template-columns:repeat(2,1fr)}
body .cm-kyst .fp-cards{padding:16px clamp(16px,4vw,40px) 6px}
body .cm-kyst .fp-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));max-width:100%}
body /* bo */
.cm-stay{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px auto 0}
body .cm-stay>div{background:#fff;border:1px solid #eee;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(15,26,40,.09);display:flex;flex-direction:column}
body .cm-stay .cm-sbody{padding:14px 18px 18px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
body .cm-stay h3{margin:0 0 4px;font-size:18px}
body .cm-stay p{font-size:14.5px;margin:0}
body .cm-stay .cm-suits{display:inline-block;margin-top:10px;font-size:12px;font-weight:700;color:#075f73;background:#e3f7fc;border-radius:99px;padding:4px 10px}
body /* ting å gjøre og dager: bilde til venstre, body tekst til høyre */
.cm-feature,body .cm-day{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:center;margin:26px auto}
body .cm-feature .cm-img img,body .cm-day .cm-img img{border-radius:16px}
body .cm-feature h3{margin:0 0 8px;font-size:22px}
body .cm-day{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px;margin:16px auto;background:#fff;border:1px solid var(--cm-strek);border-radius:18px;padding:12px!important;max-width:calc(1240px - 2*clamp(16px,4vw,40px))}
body .cm-day p{margin:0}
body .cm-dnum{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--cm-bla);border-radius:99px;padding:4px 12px;margin:0 0 8px!important}
body .cm-day h4{font-size:19px;margin:0 0 6px}
body .cm-plan{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8a8475;margin:34px auto 4px}
body /* klima */
.cm-months{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:14px auto 16px}
body .cm-month{background:var(--cm-sand);border-radius:16px;padding:16px;text-align:center}
body .cm-month b{display:block;font-size:14px;color:#8a8475;text-transform:uppercase;letter-spacing:.08em}
body .cm-month .cm-t{display:block;font-size:28px;font-weight:800;color:var(--cm-mork);margin:4px 0}
body .cm-month span{font-size:13.5px;color:var(--cm-gra)}
body /* ikonkort */
.cm-icards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:14px auto 0}
body .cm-icards>div{background:var(--cm-sand);border-radius:16px;padding:20px}
body .cm-icards .cm-ico{color:var(--cm-bla);margin:0 0 6px}
body .cm-icards h3{margin:0 0 6px}
body .cm-icards p{font-size:15px;margin:0}
body .cm-safe{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:14px auto 0!important}
body .cm-safe li{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--cm-strek);border-radius:14px;padding:14px 16px;margin:0;font-size:15px}
body .cm-safe .cm-ico{flex:0 0 auto;color:#c0392b}
body /* FAQ */
.cm-faq{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:14px auto 0}
body .cm-faq>div{border:1px solid var(--cm-strek);border-radius:16px;padding:18px 20px}
body .cm-faq h3{margin:0 0 6px;font-size:17px}
body .cm-faq p{margin:0;font-size:15px}
body /* naboer */
.cm-cards.cm-naboer{grid-template-columns:repeat(2,1fr)}
body .cm-nabo a.cm-more,body .cm-card a.cm-more,body .cm-area a.cm-more{font-weight:700;text-decoration:none;margin-top:auto}
body /* annonser og partnere: merket, body aldri i helten */
.cm-aff,body .cm-hus,body .cm-sponsor{border-radius:16px;margin:24px auto;max-width:calc(1240px - 2*clamp(16px,4vw,40px))}
body .cm-aff{border:1px solid #e5e7eb;background:#fff;padding:16px 20px 18px!important;display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:start}
body .cm-aff .cm-ico{grid-row:span 3;color:var(--cm-bla);width:34px;height:34px}
body .cm-aff p{margin:0 0 6px;font-size:15px}
body .cm-aff a{font-weight:700}
body .cm-hus{border:1.5px dashed #c9d6da;background:#f9fbfc;padding:16px 20px!important;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
body .cm-hus p{margin:0;font-size:15px;flex:1 1 300px}
body .cm-hus a{display:inline-block;border:1.5px solid #075f73;color:#075f73;font-weight:700;text-decoration:none;padding:8px 18px;border-radius:99px;font-size:14px}
body .cm-sponsor{background:linear-gradient(135deg,#0a7d6b,#075f73);color:#fff;padding:20px 24px!important}
body .cm-sponsor p{color:rgba(255,255,255,.92);margin:0 0 10px}
body .cm-sponsor a{display:inline-block;background:#fff;color:#075f73;font-weight:700;text-decoration:none;padding:10px 20px;border-radius:99px}
body .cm-lbl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#8a9aa0;margin:0 0 6px;flex-basis:100%;grid-column:1/-1}
body .cm-sponsor .cm-lbl{color:rgba(255,255,255,.75)}
body .cm-kyst .cm-credits{font-size:13px;color:#7a818b}
body .cm-kyst .cm-credits a{color:#7a818b}
@media(max-width:1000px){body .cm-areas,body .cm-cards,body .cm-tiles,body .cm-icards{grid-template-columns:repeat(2,1fr)}body .cm-months{grid-template-columns:repeat(3,1fr)}body .cm-kyst .fp-shell{flex-wrap:wrap}body .cm-kyst .fp-shell>.fp-side{flex-basis:100%!important;height:auto;max-height:260px}body .cm-kyst .fp-shell>.fp-mapwrap{flex:1 1 60%!important}body .cm-kyst .fp-shell>.fp-panelcol{flex:1 1 30%!important}}
@media(max-width:700px){body .cm-areas,body .cm-cards,body .cm-cards.cm-to,body .cm-cards.cm-naboer,body .cm-tiles,body .cm-icards,body .cm-faq,body .cm-inland{grid-template-columns:1fr}body .cm-months{grid-template-columns:repeat(2,1fr)}body .cm-feature,body .cm-day{grid-template-columns:1fr;gap:12px}body .cm-kyst .fp-shell>.wp-block-column{flex-basis:100%!important}body .cm-kyst .fp-panel{height:auto}body .cm-tile{aspect-ratio:16/9}body .cm-hero{min-height:480px}}
