/* Exploring Mombasa — My Coast
 * All rules are scoped to .emc or the My Coast body class so Traveler/EventPrime remain untouched.
 */
/* Defensive reset: Traveler and optimisation plugins can apply very broad page/SVG rules. */
body.emc-my-coast-page #primary.emc-page-shell,
body.emc-my-coast-page .emc-page-shell{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:var(--emc-native-header-overlap,0px) 0 0!important;
  float:none!important;
  clear:both!important;
  overflow:visible!important;
}
body.emc-my-coast-page .emc-page-shell>.emc{width:100%!important;max-width:none!important;margin:0!important;}
.emc{
  --emc-ink:#11384d;
  --emc-ink-2:#1c4b60;
  --emc-turq:#08b8ad;
  --emc-turq-dark:#078f89;
  --emc-aqua:#dff8f4;
  --emc-mango:#ffc93d;
  --emc-coral:#ff6f52;
  --emc-coral-soft:#fff0eb;
  --emc-ivory:#fff9ed;
  --emc-paper:#fff;
  --emc-soft:#f6f4ee;
  --emc-line:#e7e5df;
  --emc-muted:#667987;
  --emc-shadow:0 16px 40px rgba(17,56,77,.10);
  --emc-shadow-sm:0 8px 24px rgba(17,56,77,.08);
  color:var(--emc-ink);
  background:var(--emc-ivory);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.5;
  min-height:55vh;
}
.emc *{box-sizing:border-box}
.emc a{color:inherit;text-decoration:none}
.emc button,.emc input,.emc select,.emc textarea{font:inherit}
.emc button{cursor:pointer}
.emc svg{display:block!important;width:20px!important;height:20px!important;max-width:20px!important;min-width:20px!important;max-height:20px!important;min-height:20px!important;flex:0 0 20px!important}
body.emc-my-coast-page{background:var(--emc-ivory,#fff9ed)}
body.emc-my-coast-page .emc-page-shell{scroll-margin-top:var(--emc-native-header-overlap,0px)}
body.emc-my-coast-page .page-title,body.emc-my-coast-page .banner,body.emc-my-coast-page .st-breadcrumb,body.emc-my-coast-page .breadcrumb{display:none}

/* Hero */
.emc .emc-hero,
.emc.emc-auth-wrap .emc-auth-hero{
  position:relative;overflow:hidden;color:#fff;
  background:radial-gradient(circle at 84% 18%,rgba(255,201,61,.98) 0 68px,transparent 69px),linear-gradient(115deg,#0a6f86 0%,#08b8ad 54%,#29c8b5 100%);
}
.emc .emc-hero{padding:42px max(24px,calc((100vw - 1380px)/2))}
.emc .emc-hero:after,.emc .emc-auth-hero:after{content:"";position:absolute;right:-100px;bottom:-125px;width:520px;height:245px;border:36px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(-8deg);pointer-events:none}
.emc .emc-hero-row{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:22px}
.emc .emc-eyebrow{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;opacity:.92}
.emc .emc-eyebrow--ink{color:var(--emc-turq-dark);opacity:1}
.emc .emc-hero h1,.emc .emc-auth-hero h1{margin:7px 0 8px;font:700 clamp(36px,4.8vw,58px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-1.5px;color:#fff}
.emc .emc-hero p,.emc .emc-auth-hero p{margin:0;max-width:680px;color:#fff;font-size:15px;opacity:.95}
.emc .emc-hero-pills{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.emc .emc-hero-pills span{background:rgba(255,255,255,.94);color:var(--emc-ink);padding:9px 13px;border-radius:999px;font-size:11px;font-weight:900;box-shadow:var(--emc-shadow-sm)}

/* Notices */
.emc .emc-notice{max-width:1332px;margin:18px auto 0;padding:12px 15px;border-radius:13px;font-size:13px;font-weight:750}
.emc .emc-notice--success{background:#e6f8ef;color:#176541;border:1px solid #bee8d2}
.emc .emc-notice--error{background:#fff0ed;color:#963c32;border:1px solid #f2c4bc}
.emc .emc-notice--warning{background:#fff6d7;color:#7a5a00;border:1px solid #ecd995}

/* Shell */
.emc .emc-layout{max-width:1380px;margin:28px auto 56px;padding:0 24px;display:grid;grid-template-columns:238px minmax(0,1fr);gap:28px}
.emc .emc-sidebar{position:sticky;top:24px;align-self:start;background:#fff;border:1px solid var(--emc-line);border-radius:24px;padding:12px;box-shadow:var(--emc-shadow-sm);z-index:2}
.emc .emc-profile-chip{display:flex;align-items:center;gap:11px;padding:10px 9px 14px;border-bottom:1px solid var(--emc-line);margin-bottom:8px}
.emc .emc-profile-chip img,.emc .emc-moments-user img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:linear-gradient(135deg,var(--emc-mango),#ffe7a1)}
.emc .emc-profile-chip strong{display:block;font-size:13px;line-height:1.25}
.emc .emc-profile-chip span{display:block;font-size:10px;color:var(--emc-muted);margin-top:2px}
.emc .emc-nav-title{padding:13px 11px 7px;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#95a1a8}
.emc .emc-nav-item{width:100%;border:0;background:transparent;color:var(--emc-ink);display:flex;gap:10px;align-items:center;padding:10px 11px;border-radius:12px;font-size:12px;font-weight:800;text-align:left;margin:2px 0;transition:.15s ease}
.emc .emc-nav-item:hover{background:var(--emc-soft);color:var(--emc-ink)}
.emc .emc-nav-item.is-active{background:var(--emc-ink);color:#fff}
.emc .emc-nav-item b{margin-left:auto;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--emc-mango);color:var(--emc-ink);display:grid;place-items:center;font-size:9px}
.emc .emc-nav-item--logout{color:#a64037}
.emc .emc-nav-sep{height:1px;background:var(--emc-line);margin:9px 0}
.emc .emc-main{min-width:0}
.emc .emc-mobile-tabs{display:none}

/* Section headings / buttons */
.emc .emc-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:0 0 18px}
.emc .emc-section-head h2{margin:0;color:var(--emc-ink);font:700 34px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.6px}
.emc .emc-section-head p{margin:6px 0 0;color:var(--emc-muted);font-size:12px}
.emc .emc-btn{border:0;border-radius:12px;padding:11px 15px;font-weight:900;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.25;box-shadow:none;transition:transform .14s ease,box-shadow .14s ease}
.emc .emc-btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(17,56,77,.10)}
.emc .emc-btn--ink{background:var(--emc-ink);color:#fff}
.emc .emc-btn--turq{background:var(--emc-turq);color:#fff}
.emc .emc-btn--coral{background:var(--emc-coral);color:#fff}
.emc .emc-btn--mango{background:var(--emc-mango);color:var(--emc-ink)}
.emc .emc-btn--ghost{background:#fff;color:var(--emc-ink);border:1px solid var(--emc-line)}
.emc .emc-btn--white{background:#fff;color:var(--emc-ink)}
.emc .emc-btn--glass{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.28)}
.emc .emc-btn--danger{background:#fff0ed;color:#a64037;border:1px solid #f1c7c0}
.emc .emc-text-link,.emc .emc-panel-title>a{color:var(--emc-turq-dark);font-size:11px;font-weight:900}

/* Overview */
.emc .emc-welcome-card{background:#fff;border:1px solid var(--emc-line);border-radius:22px;padding:22px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:20px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-next-card{min-height:230px;color:#fff;border-radius:18px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;background:linear-gradient(110deg,rgba(17,56,77,.97),rgba(17,56,77,.70)),var(--emc-bg,linear-gradient(135deg,#1f6178,#173b4b));background-size:cover;background-position:center}
.emc .emc-next-card:after{content:"COAST";position:absolute;right:-16px;bottom:-33px;font:900 84px/1 Georgia,serif;color:rgba(255,255,255,.055);letter-spacing:-5px}
.emc .emc-next-card--empty{background:linear-gradient(125deg,#10566c,#0c7f8c 56%,#08aaa1)}
.emc .emc-next-card h3{position:relative;z-index:1;margin:7px 0;color:#fff;font:700 30px/1.05 Georgia,"Times New Roman",serif;max-width:560px}
.emc .emc-kicker{position:relative;z-index:1;display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}
.emc .emc-kicker i{display:block;width:8px;height:8px;border-radius:50%;background:var(--emc-mango)}
.emc .emc-meta{position:relative;z-index:1;font-size:12px;opacity:.88}
.emc .emc-actions{position:relative;z-index:1;display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
.emc .emc-quick-panel{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.emc .emc-stat{min-height:106px;border-radius:16px;padding:15px;border:1px solid var(--emc-line)}
.emc .emc-stat--aqua{background:var(--emc-aqua)}
.emc .emc-stat--mango{background:#fff3c8}
.emc .emc-stat--coral{background:var(--emc-coral-soft)}
.emc .emc-stat--blue{background:#edf4ff}
.emc .emc-stat strong{display:block;font:700 28px/1 Georgia,serif;color:var(--emc-ink)}
.emc .emc-stat span{font-size:10px;color:var(--emc-muted);font-weight:800}
.emc .emc-two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:20px}
.emc .emc-panel{background:#fff;border:1px solid var(--emc-line);border-radius:22px;padding:20px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.emc .emc-panel-title h3{color:var(--emc-ink);font:700 21px/1 Georgia,serif;margin:0}
.emc .emc-plan-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--emc-line)}
.emc .emc-plan-row:first-of-type{border-top:0}
.emc .emc-plan-row h4{margin:0 0 4px;color:var(--emc-ink);font-size:12px;font-weight:850}
.emc .emc-plan-row p{margin:0;color:var(--emc-muted);font-size:10px}
.emc .emc-date{border-radius:13px;background:var(--emc-ink);color:#fff;text-align:center;padding:9px 4px}
.emc .emc-date b{font-size:20px;display:block;line-height:1}
.emc .emc-date span{font-size:8px;font-weight:900;letter-spacing:.12em}
.emc .emc-status{display:inline-flex;width:max-content;max-width:100%;font-size:9px;font-weight:900;padding:6px 8px;border-radius:999px;background:var(--emc-aqua);color:#087d77;text-transform:capitalize}
.emc .emc-status.is-danger{background:var(--emc-coral-soft);color:#b84937}
.emc .emc-status.is-warning{background:#fff3c8;color:#866600}
.emc .emc-status.is-neutral{background:#edf0f2;color:#536875}
.emc .emc-coast-intro{padding:6px 0 2px}
.emc .emc-coast-intro strong{display:block;font:700 20px/1.15 Georgia,serif;margin-bottom:8px}
.emc .emc-coast-intro p{font-size:11px;color:var(--emc-muted);margin:0 0 14px}
.emc .emc-saved-panel{margin-top:20px}
.emc .emc-saved-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.emc .emc-mini-card{overflow:hidden;border:1px solid var(--emc-line);border-radius:15px;background:#fff}
.emc .emc-mini-photo{height:88px;background:linear-gradient(145deg,#34c9bc 0 45%,#1189a0 46% 70%,#f6d9a1 71%);background-size:cover;background-position:center}
.emc .emc-mini-card div:last-child{padding:10px}
.emc .emc-mini-card h4{color:var(--emc-ink);font-size:11px;margin:0 0 3px}
.emc .emc-mini-card p{font-size:9px;color:var(--emc-muted);margin:0}
.emc .emc-empty-inline{padding:18px 4px;color:var(--emc-muted);font-size:11px}
.emc .emc-empty-inline strong,.emc .emc-empty-inline span{display:block}
.emc .emc-empty-inline strong{color:var(--emc-ink);margin-bottom:4px;font-size:12px}
.emc .emc-manage-callout{margin-top:20px;background:linear-gradient(115deg,#fff2c3,#ffe6d8);border:1px solid #f3d58d;border-radius:18px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:18px}
.emc .emc-manage-callout h3{font:700 21px/1 Georgia,serif;margin:0 0 5px;color:var(--emc-ink)}
.emc .emc-manage-callout p{font-size:10px;color:#775d42;margin:0;max-width:650px}

/* Tabs + booking lists */
.emc .emc-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:4px;margin-bottom:18px;scrollbar-width:none}
.emc .emc-tabs::-webkit-scrollbar,.emc .emc-mobile-tabs::-webkit-scrollbar{display:none}
.emc .emc-tabs button,.emc .emc-tabs a{white-space:nowrap;border:1px solid var(--emc-line);background:#fff;color:var(--emc-ink);border-radius:999px;padding:9px 13px;font-size:10px;font-weight:900;line-height:1.2}
.emc .emc-tabs .is-active{background:var(--emc-ink);color:#fff;border-color:var(--emc-ink)}
.emc [hidden]{display:none!important}
.emc .emc-booking-list,.emc .emc-ticket-list{display:grid;gap:12px}
.emc .emc-booking-card{background:#fff;border:1px solid var(--emc-line);border-radius:18px;display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px;box-shadow:0 6px 18px rgba(17,56,77,.05)}
.emc .emc-booking-photo{height:84px;border-radius:13px;background:linear-gradient(145deg,#1a8193,#20b5aa 55%,#f7d27c);background-size:cover;background-position:center}
.emc .emc-booking-copy h3{color:var(--emc-ink);font-size:14px;margin:3px 0 5px}
.emc .emc-booking-copy p{font-size:10px;color:var(--emc-muted);margin:2px 0}
.emc .emc-booking-actions{text-align:right;min-width:145px}
.emc .emc-booking-actions strong{display:block;font-size:12px;margin-bottom:8px}

/* Detail */
.emc .emc-detail-card{background:#fff;border:1px solid var(--emc-line);border-radius:22px;overflow:hidden;display:grid;grid-template-columns:minmax(220px,.75fr) 1.25fr;box-shadow:var(--emc-shadow-sm)}
.emc .emc-detail-media{min-height:330px;background:linear-gradient(145deg,#0d758a,#18afa6 58%,#f1d48a);background-size:cover;background-position:center}
.emc .emc-detail-body{padding:28px}
.emc .emc-detail-body h2{color:var(--emc-ink);font:700 32px/1.06 Georgia,serif;margin:6px 0 12px}
.emc .emc-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:20px 0}
.emc .emc-detail-facts div{background:var(--emc-soft);border-radius:13px;padding:12px}
.emc .emc-detail-facts small{display:block;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--emc-muted);font-weight:900;margin-bottom:4px}
.emc .emc-detail-facts strong{font-size:11px;color:var(--emc-ink)}

/* Event tickets */
.emc .emc-ticket{background:#fff;border:1px solid var(--emc-line);border-radius:20px;display:grid;grid-template-columns:150px minmax(0,1fr) 180px;overflow:hidden;box-shadow:var(--emc-shadow-sm)}
.emc .emc-ticket-art{min-height:150px;background:linear-gradient(150deg,var(--emc-coral) 0 40%,var(--emc-mango) 40% 63%,var(--emc-turq) 63%);background-size:cover;background-position:center;display:grid;place-items:center}
.emc .emc-ticket-art span{padding:10px;color:#fff;font:900 20px/1.05 Georgia,serif;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.18)}
.emc .emc-ticket-body{padding:20px}
.emc .emc-ticket-body h3{margin:5px 0 8px;color:var(--emc-ink);font:700 23px/1.05 Georgia,serif}
.emc .emc-ticket-body p{margin:4px 0;font-size:10px;color:var(--emc-muted)}
.emc .emc-ticket-side{border-left:1px dashed #d8d8d2;padding:17px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:15px}
.emc .emc-ticket-actions{display:flex;flex-direction:column;gap:8px;width:100%}

/* Saved */
.emc .emc-saved-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.emc .emc-saved-card{background:#fff;border:1px solid var(--emc-line);border-radius:17px;overflow:hidden;box-shadow:0 6px 20px rgba(17,56,77,.05);transition:transform .15s ease,box-shadow .15s ease}
.emc .emc-saved-card:hover{transform:translateY(-2px);box-shadow:var(--emc-shadow-sm)}
.emc .emc-saved-photo{height:160px;background:linear-gradient(145deg,#22bcae,#0b7891 62%,#f6d487);background-size:cover;background-position:center}
.emc .emc-saved-copy{padding:13px}
.emc .emc-saved-copy small{font-size:8px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--emc-turq-dark)}
.emc .emc-saved-copy h3{color:var(--emc-ink);font-size:12px;margin:5px 0}
.emc .emc-saved-copy p{font-size:9px;color:var(--emc-muted);margin:0}

/* Coast Moments */
.emc .emc-moments-profile{background:linear-gradient(120deg,#fff,#f6fffd);border:1px solid var(--emc-line);border-radius:20px;padding:18px;display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:16px}
.emc .emc-moments-user{display:flex;gap:13px;align-items:center}
.emc .emc-moments-user img{width:56px;height:56px}
.emc .emc-moments-user strong{font-size:13px}
.emc .emc-moments-user p{font-size:10px;color:var(--emc-muted);margin:3px 0 0}
.emc .emc-moment-stats{display:flex;gap:22px;flex-wrap:wrap}
.emc .emc-moment-stats strong{display:block;font:700 21px/1 Georgia,serif;color:var(--emc-ink)}
.emc .emc-moment-stats span{font-size:9px;color:var(--emc-muted)}
.emc .emc-embedded-moments{background:#fff;border:1px solid var(--emc-line);border-radius:22px;padding:20px;box-shadow:var(--emc-shadow-sm);overflow:hidden}
/* Suppress common page-shell elements if the selected Coast Moments page content happens to include them. */
.emc .emc-embedded-moments .page-header,.emc .emc-embedded-moments .breadcrumb,.emc .emc-embedded-moments header.site-header,.emc .emc-embedded-moments footer.site-footer{display:none!important}

/* Empty states */
.emc .emc-empty-state{background:#fff;border:1px solid var(--emc-line);border-radius:20px;text-align:center;padding:38px 24px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-empty-state h3{font:700 22px/1 Georgia,serif;color:var(--emc-ink);margin:0 0 7px}
.emc .emc-empty-state p{font-size:11px;color:var(--emc-muted);max-width:520px;margin:0 auto 14px}
.emc .emc-empty-icon{width:54px;height:54px;border-radius:50%;background:var(--emc-aqua);display:grid;place-items:center;margin:0 auto 12px;color:var(--emc-turq-dark)}

/* Messages */
.emc .emc-message-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:16px}
.emc .emc-thread-list,.emc .emc-conversation{background:#fff;border:1px solid var(--emc-line);border-radius:18px;overflow:hidden}
.emc .emc-thread{padding:13px;border-bottom:1px solid var(--emc-line);display:flex;gap:10px;align-items:center}
.emc .emc-thread.is-active{background:var(--emc-aqua)}
.emc .emc-thread:last-child{border-bottom:0}
.emc .emc-thread img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--emc-soft)}
.emc .emc-thread h4{font-size:11px;color:var(--emc-ink);margin:0 0 3px;display:flex;align-items:center;gap:7px}
.emc .emc-thread h4 b{background:var(--emc-coral);color:#fff;border-radius:999px;font-size:8px;padding:2px 5px}
.emc .emc-thread p{font-size:9px;color:var(--emc-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:205px}
.emc .emc-conversation{padding:18px;min-height:410px;display:flex;flex-direction:column}
.emc .emc-conversation>header{padding-bottom:12px;border-bottom:1px solid var(--emc-line);font-weight:900;font-size:13px}
.emc .emc-bubbles{display:flex;flex-direction:column;gap:10px;padding:12px 0}
.emc .emc-bubble{max-width:72%;padding:11px 13px;border-radius:15px;background:var(--emc-soft);font-size:11px;color:var(--emc-ink)}
.emc .emc-bubble.is-mine{align-self:flex-end;background:var(--emc-ink);color:#fff}
.emc .emc-bubble small{display:block;margin-top:5px;font-size:8px;opacity:.65}
.emc .emc-reply{margin-top:auto;display:flex;gap:8px;padding-top:14px;border-top:1px solid var(--emc-line)}
.emc .emc-reply textarea{flex:1;min-height:45px;max-height:130px;resize:vertical;border:1px solid var(--emc-line);border-radius:12px;padding:10px 11px;color:var(--emc-ink);background:#fff}

/* Account */
.emc .emc-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.emc .emc-settings-card{background:#fff;border:1px solid var(--emc-line);border-radius:18px;padding:18px;box-shadow:0 6px 18px rgba(17,56,77,.04)}
.emc .emc-settings-card--full{grid-column:1/-1}
.emc .emc-settings-card h3{font:700 19px/1 Georgia,serif;color:var(--emc-ink);margin:0 0 14px}
.emc .emc-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.emc .emc-field{display:block;margin:0 0 10px}
.emc .emc-field--full{grid-column:1/-1}
.emc .emc-field>span,.emc .emc-field label{display:block;font-size:9px;font-weight:900;margin-bottom:6px;color:var(--emc-ink)}
.emc .emc-field input,.emc .emc-field select,.emc .emc-field textarea{width:100%;border:1px solid #d9ddd9;background:#fff;border-radius:11px;padding:10px 11px;color:var(--emc-ink);min-height:42px}
.emc .emc-field input:focus,.emc .emc-field select:focus,.emc .emc-field textarea:focus{outline:2px solid rgba(8,184,173,.18);border-color:var(--emc-turq)}
.emc .emc-avatar-edit{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.emc .emc-avatar-edit img{width:68px;height:68px;border-radius:50%;object-fit:cover;background:var(--emc-soft)}
.emc .emc-help{font-size:9px;color:var(--emc-muted);margin:6px 0}
.emc .emc-data-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--emc-line)}
.emc .emc-data-row:first-of-type{border-top:0}
.emc .emc-data-row h4{font-size:11px;color:var(--emc-ink);margin:0 0 3px}
.emc .emc-data-row p{font-size:9px;color:var(--emc-muted);margin:0}
.emc .emc-account-dl{display:grid;grid-template-columns:150px 1fr;gap:9px 16px;margin:0}
.emc .emc-account-dl dt{font-size:9px;color:var(--emc-muted);font-weight:850}
.emc .emc-account-dl dd{font-size:11px;color:var(--emc-ink);margin:0}

/* Auth */
.emc.emc-auth-wrap{background:var(--emc-ivory);padding-bottom:56px}
.emc .emc-auth-hero{padding:46px max(24px,calc((100vw - 1180px)/2));display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.emc .emc-auth-hero>div{position:relative;z-index:1}
.emc .emc-auth-chip{background:#fff;color:var(--emc-ink);border-radius:999px;padding:10px 14px;font-size:10px;font-weight:900;box-shadow:var(--emc-shadow-sm)}
.emc .emc-auth-grid{max-width:1000px;margin:28px auto 0;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.emc .emc-auth-card{background:#fff;border:1px solid var(--emc-line);border-radius:22px;padding:24px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-auth-card--bright{background:linear-gradient(145deg,#fff9e9,#f3fffc)}
.emc .emc-auth-card h2{font:700 29px/1 Georgia,serif;color:var(--emc-ink);margin:6px 0 8px}
.emc .emc-auth-card>p{font-size:11px;color:var(--emc-muted);margin:0 0 18px}
.emc .emc-auth-card .emc-btn{margin-top:6px;width:100%}
.emc .emc-auth-link{display:block;text-align:center;font-size:10px;font-weight:850;color:var(--emc-turq-dark);margin-top:12px}
.emc .emc-check{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--emc-muted);margin:8px 0}
.emc .emc-check input{accent-color:var(--emc-turq)}

/* Mobile bottom navigation */
.emc .emc-bottom-nav,.emc .emc-more-sheet{display:none}

@media(max-width:1100px){
  .emc .emc-layout{grid-template-columns:205px minmax(0,1fr);gap:18px}
  .emc .emc-saved-grid{grid-template-columns:repeat(3,1fr)}
  .emc .emc-saved-strip{grid-template-columns:repeat(2,1fr)}
  .emc .emc-two-col{grid-template-columns:1fr}
  .emc .emc-welcome-card{grid-template-columns:1fr}
  .emc .emc-ticket{grid-template-columns:120px minmax(0,1fr) 155px}
}

@media(max-width:780px){
  body.emc-my-coast-page{padding-bottom:72px}
  .emc .emc-hero{padding:27px 17px 24px}
  .emc .emc-hero-row{display:block}
  .emc .emc-hero h1{font-size:39px}
  .emc .emc-hero p{font-size:11px}
  .emc .emc-hero-pills{justify-content:flex-start;margin-top:15px}
  .emc .emc-hero-pills span{font-size:9px;padding:7px 9px}
  .emc .emc-hero-pills span:nth-child(3){display:none}
  .emc .emc-notice{margin:12px 14px 0}
  .emc .emc-layout{display:block;margin:18px auto 30px;padding:0 14px}
  .emc .emc-sidebar{display:none}
  .emc .emc-mobile-tabs{display:flex;gap:7px;overflow:auto;margin:0 -14px 16px;padding:0 14px 3px;scrollbar-width:none}
  .emc .emc-mobile-tabs a{white-space:nowrap;border:1px solid var(--emc-line);background:#fff;border-radius:999px;padding:9px 12px;font-size:9px;font-weight:900;color:var(--emc-ink)}
  .emc .emc-mobile-tabs a.is-active{background:var(--emc-ink);color:#fff}
  .emc .emc-section-head{align-items:flex-start}
  .emc .emc-section-head h2{font-size:28px}
  .emc .emc-section-head .emc-btn{padding:9px 11px}
  .emc .emc-welcome-card{padding:12px;border-radius:18px}
  .emc .emc-next-card{min-height:205px;padding:18px}
  .emc .emc-next-card h3{font-size:25px}
  .emc .emc-quick-panel{grid-template-columns:repeat(4,140px);overflow:auto;margin-right:-12px;padding-bottom:4px}
  .emc .emc-stat{min-height:90px}
  .emc .emc-two-col{gap:14px;margin-top:14px}
  .emc .emc-panel{padding:14px;border-radius:18px}
  .emc .emc-plan-row{grid-template-columns:48px 1fr}
  .emc .emc-plan-row>.emc-status{grid-column:2;justify-self:start}
  .emc .emc-saved-strip{display:flex;overflow:auto;margin-right:-14px}
  .emc .emc-mini-card{min-width:185px}
  .emc .emc-manage-callout{display:block}
  .emc .emc-manage-callout .emc-btn{margin-top:12px}
  .emc .emc-booking-card{grid-template-columns:82px 1fr;gap:11px}
  .emc .emc-booking-photo{height:75px}
  .emc .emc-booking-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;min-width:0;border-top:1px solid var(--emc-line);padding-top:9px;text-align:left}
  .emc .emc-booking-actions strong{margin:0}
  .emc .emc-detail-card{grid-template-columns:1fr}
  .emc .emc-detail-media{min-height:220px}
  .emc .emc-detail-body{padding:18px}
  .emc .emc-detail-body h2{font-size:26px}
  .emc .emc-ticket{grid-template-columns:95px minmax(0,1fr)}
  .emc .emc-ticket-art{min-height:130px}
  .emc .emc-ticket-body{padding:14px}
  .emc .emc-ticket-body h3{font-size:19px}
  .emc .emc-ticket-side{grid-column:1/-1;border-left:0;border-top:1px dashed #d8d8d2;flex-direction:row;align-items:center;padding:12px 14px}
  .emc .emc-ticket-actions{width:auto;align-items:flex-end}
  .emc .emc-saved-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .emc .emc-saved-photo{height:120px}
  .emc .emc-moments-profile{align-items:flex-start;display:block}
  .emc .emc-moment-stats{margin-top:16px;gap:18px}
  .emc .emc-message-layout{grid-template-columns:1fr}
  .emc .emc-conversation{min-height:320px}
  .emc .emc-account-grid{grid-template-columns:1fr}
  .emc .emc-settings-card--full{grid-column:auto}
  .emc .emc-field-grid{grid-template-columns:1fr}
  .emc .emc-field--full{grid-column:auto}
  .emc .emc-auth-hero{padding:30px 17px;display:block}
  .emc .emc-auth-chip{display:inline-block;margin-top:15px}
  .emc .emc-auth-grid{grid-template-columns:1fr;padding:0 14px;margin-top:16px}
  .emc .emc-auth-card{padding:18px}
  .emc .emc-bottom-nav{position:fixed;z-index:9998;left:10px;right:10px;bottom:10px;height:58px;background:rgba(17,56,77,.98);color:#fff;border-radius:18px;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 16px 44px rgba(8,39,55,.35);padding:5px}
  .emc .emc-bottom-nav a,.emc .emc-bottom-nav button{border:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:13px;font-size:8px;font-weight:800;opacity:.75;padding:3px}
  .emc .emc-bottom-nav a.is-active{background:#fff;color:var(--emc-ink);opacity:1}
  .emc .emc-bottom-nav svg{width:17px;height:17px}
  .emc .emc-more-sheet{position:fixed;z-index:9999;left:10px;right:10px;bottom:77px;background:#fff;border-radius:20px;box-shadow:0 20px 60px rgba(17,56,77,.28);padding:10px;border:1px solid var(--emc-line)}
  .emc .emc-more-sheet.is-open{display:block}
  .emc .emc-more-sheet a{display:block;width:100%;padding:12px;border-radius:12px;font-size:11px;font-weight:900;color:var(--emc-ink)}
  .emc .emc-more-sheet a:hover{background:var(--emc-soft)}
}

@media(max-width:460px){
  .emc .emc-saved-grid{grid-template-columns:1fr 1fr}
  .emc .emc-detail-facts{grid-template-columns:1fr}
  .emc .emc-data-row{display:block}
  .emc .emc-data-row .emc-btn{margin-top:10px}
  .emc .emc-account-dl{grid-template-columns:105px 1fr}
}

/* Runtime status classes emitted by EMC_Renderer. */
.emc .emc-status--green{background:var(--emc-aqua);color:#087d77}
.emc .emc-status--gold{background:#fff3c8;color:#866600}
.emc .emc-status--coral{background:var(--emc-coral-soft);color:#b84937}
.emc .emc-nav-badge{margin-left:auto;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--emc-mango);color:var(--emc-ink);display:grid;place-items:center;font-size:9px;font-weight:900}
.emc .emc-conversation>header{display:flex;align-items:center;gap:10px}
.emc .emc-conversation>header img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--emc-soft)}
.emc .emc-conversation>header strong,.emc .emc-conversation>header span{display:block}
.emc .emc-conversation>header span{font-size:9px;color:var(--emc-muted);font-weight:500;margin-top:2px}
.emc .emc-more-sheet a{position:relative}
.emc .emc-more-sheet a b{float:right;background:var(--emc-coral);color:#fff;border-radius:999px;font-size:8px;padding:2px 6px}
.emc .emc-more-sheet a.is-danger{color:#a64037}

/* Traveler customer functionality completion */
.emc .emc-btn--danger-soft{background:#fff0ed;color:#a64037;border:1px solid #f1c7c0}
.emc .emc-btn--danger-soft:hover{background:#ffe5df}
.emc .emc-text-link--danger{display:inline-block;margin-top:7px;border:0;background:transparent;color:#a64037;font-size:9px;font-weight:900;padding:0}
.emc .emc-detail-facts span{display:block;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--emc-muted);font-weight:900;margin-bottom:4px}
.emc .emc-tabs--status{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;padding-bottom:3px}
.emc .emc-tabs--status::-webkit-scrollbar{display:none}
.emc .emc-tabs--status button{flex:0 0 auto}

.emc .emc-native-booking-panel{margin-top:16px}
.emc .emc-native-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;background:var(--emc-aqua);color:var(--emc-turq-dark);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.emc .emc-loading{min-height:82px;display:grid;place-items:center;color:var(--emc-muted);font-size:10px;text-align:center}
.emc .emc-inline-error{padding:13px;border-radius:12px;background:#fff0ed;color:#9a4035;border:1px solid #f2cac3;font-size:10px}
.emc .emc-native-booking-details{color:var(--emc-ink);font-size:10px;overflow:hidden}
.emc .emc-native-booking-details .container,.emc .emc-native-booking-details .container-fluid{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.emc .emc-native-booking-details .row{display:flex;flex-wrap:wrap;margin:0 -7px!important}
.emc .emc-native-booking-details [class*="col-"]{min-width:0;padding:0 7px!important;float:none!important}
.emc .emc-native-booking-details .col-md-6,.emc .emc-native-booking-details .col-sm-6{width:50%}
.emc .emc-native-booking-details .col-md-4,.emc .emc-native-booking-details .col-sm-4{width:33.333%}
.emc .emc-native-booking-details .col-md-8,.emc .emc-native-booking-details .col-sm-8{width:66.666%}
.emc .emc-native-booking-details .col-md-12,.emc .emc-native-booking-details .col-sm-12{width:100%}
.emc .emc-native-booking-details h3,.emc .emc-native-booking-details h4,.emc .emc-native-booking-details h5{color:var(--emc-ink)!important;margin-top:8px;margin-bottom:8px}
.emc .emc-native-booking-details p{color:var(--emc-muted);font-size:10px}
.emc .emc-native-booking-details table{width:100%!important;border-collapse:collapse;margin:10px 0;background:#fff}
.emc .emc-native-booking-details th,.emc .emc-native-booking-details td{padding:9px 8px!important;border-bottom:1px solid var(--emc-line)!important;text-align:left!important;font-size:9px!important;vertical-align:top}
.emc .emc-native-booking-details th{color:var(--emc-muted);font-weight:900;background:var(--emc-soft)}
.emc .emc-native-booking-details .nav-tabs{display:flex;gap:7px;list-style:none;margin:0 0 13px!important;padding:0!important;border-bottom:1px solid var(--emc-line);overflow-x:auto}
.emc .emc-native-booking-details .nav-tabs li{list-style:none;margin:0!important;padding:0!important}
.emc .emc-native-booking-details .nav-tabs a{display:block;padding:8px 10px;color:var(--emc-muted)!important;font-size:9px;font-weight:900;border:0!important;background:transparent!important;white-space:nowrap}
.emc .emc-native-booking-details .nav-tabs li.active a{color:var(--emc-ink)!important;border-bottom:2px solid var(--emc-turq)!important}
.emc .emc-native-booking-details .tab-pane{display:none}
.emc .emc-native-booking-details .tab-pane.active{display:block}
.emc .emc-native-booking-details .item_booking_detail,.emc .emc-native-booking-details .booking-item-payment{border:1px solid var(--emc-line)!important;border-radius:13px!important;padding:12px!important;margin:9px 0!important;background:#fff!important;box-shadow:none!important}
.emc .emc-native-booking-details img{max-width:100%;height:auto}
.emc .emc-native-booking-details .btn{border-radius:10px!important;padding:8px 11px!important;font-size:9px!important;text-transform:none!important;box-shadow:none!important}

.emc .emc-saved-card{position:relative}
.emc .emc-saved-link{display:block}
.emc .emc-unsave-form{position:absolute;right:8px;top:8px;z-index:3;margin:0}
.emc .emc-unsave-form button{border:1px solid rgba(17,56,77,.10);background:rgba(255,255,255,.95);color:#a64037;border-radius:999px;padding:7px 9px;display:flex;align-items:center;gap:5px;font-size:8px;font-weight:900;box-shadow:0 5px 16px rgba(17,56,77,.10)}
.emc .emc-unsave-form button svg{width:13px!important;height:13px!important;fill:#ff6f52;stroke:#ff6f52}
.emc .emc-unsave-form button:hover{background:#fff0ed}

.emc .emc-check-field{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--emc-line);background:var(--emc-soft);border-radius:12px;padding:11px 12px;margin-bottom:12px}
.emc .emc-check-field input{width:16px!important;height:16px!important;min-height:0!important;margin:1px 0 0;accent-color:var(--emc-turq)}
.emc .emc-check-field span{font-size:9px;color:var(--emc-muted);font-weight:700;line-height:1.45}

/* Traveler cancellation flow inside My Coast */
html.emc-modal-open{overflow:hidden}
.emc .emc-modal[hidden]{display:none!important}
.emc .emc-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px}
.emc .emc-modal-backdrop{position:absolute;inset:0;background:rgba(7,31,45,.62);backdrop-filter:blur(4px)}
.emc .emc-modal-dialog{position:relative;z-index:1;width:min(620px,100%);max-height:min(760px,92vh);display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 28px 90px rgba(7,31,45,.30);overflow:hidden}
.emc .emc-modal-dialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:18px 20px;border-bottom:1px solid var(--emc-line)}
.emc .emc-modal-dialog>header h2{font:700 25px/1 Georgia,serif;color:var(--emc-ink);margin:4px 0 0}
.emc .emc-modal-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--emc-line);background:#fff;color:var(--emc-ink);display:grid;place-items:center;font-size:22px;line-height:1}
.emc .emc-modal-body{padding:18px 20px;overflow:auto;min-height:150px}
.emc .emc-modal-dialog>footer{display:flex;justify-content:flex-end;gap:8px;padding:13px 20px;border-top:1px solid var(--emc-line);background:#fff}
.emc .emc-modal.is-busy .emc-modal-body{opacity:.64;pointer-events:none}
.emc .emc-modal-body .info>div{margin:5px 0;font-size:10px}
.emc .emc-modal-body .clearfix{display:flex;justify-content:space-between;gap:12px}
.emc .emc-modal-body .pull-right{margin-left:auto;float:none!important}
.emc .emc-modal-body .line{height:1px;background:var(--emc-line);margin:10px 0}
.emc .emc-modal-body .alert{border-radius:13px;padding:12px 13px;margin:12px 0!important;border:1px solid var(--emc-line);font-size:10px}
.emc .emc-modal-body .alert-warning{background:#fff7dc;border-color:#f1dda2;color:#705b24}
.emc .emc-modal-body .alert-info{background:var(--emc-aqua);border-color:#bcece7;color:#176c68}
.emc .emc-modal-body .text-danger{color:#a64037!important}
.emc .emc-modal-body .form-group{display:grid;gap:8px;margin:10px 0}
.emc .emc-modal-body .form-group label{display:block;font-size:10px;color:var(--emc-ink);font-weight:750}
.emc .emc-modal-body .form-group label:has(input[type="radio"]){display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--emc-line);border-radius:10px;padding:9px 10px}
.emc .emc-modal-body input[type="radio"]{accent-color:var(--emc-turq)}
.emc .emc-modal-body input[type="text"],.emc .emc-modal-body input[type="email"],.emc .emc-modal-body textarea,.emc .emc-modal-body select{width:100%;border:1px solid #d9ddd9!important;border-radius:10px!important;padding:9px 10px!important;background:#fff!important;color:var(--emc-ink)!important;min-height:40px!important;box-shadow:none!important}
.emc .emc-modal-body textarea{min-height:90px!important;resize:vertical}
.emc .emc-modal-body .hide,.emc .emc-modal-body .hidden{display:none!important}
.emc .emc-modal-body .form-get-account{display:none!important}
.emc .emc-modal-body .error{border-color:#cf5b4d!important;background:#fff5f3!important}
.emc .emc-modal-body .emc-field-error{outline:1px solid #cf5b4d;border-radius:10px}
.emc .emc-modal-body .fa,.emc .emc-modal-body i.fa{font-size:14px!important;width:auto!important;height:auto!important}

/* Traveler review form inside My Coast */
.emc .emc-native-review{overflow:hidden}
.emc .emc-native-review .container,.emc .emc-native-review .container-fluid{width:100%!important;max-width:none!important;padding:0!important}
.emc .emc-native-review .row{margin:0!important}
.emc .emc-native-review [class*="col-"]{float:none!important;width:100%!important;padding:0!important}
.emc .emc-native-review h3,.emc .emc-native-review h4{color:var(--emc-ink)!important}
.emc .emc-native-review label{font-size:10px;color:var(--emc-ink);font-weight:850}
.emc .emc-native-review input[type="text"],.emc .emc-native-review input[type="email"],.emc .emc-native-review textarea,.emc .emc-native-review select{width:100%!important;border:1px solid var(--emc-line)!important;border-radius:11px!important;padding:10px 11px!important;box-shadow:none!important;background:#fff!important;color:var(--emc-ink)!important}
.emc .emc-native-review textarea{min-height:130px}
.emc .emc-native-review input[type="submit"],.emc .emc-native-review button[type="submit"]{border:0!important;border-radius:11px!important;background:var(--emc-ink)!important;color:#fff!important;padding:10px 14px!important;font-size:10px!important;font-weight:900!important}
.emc .emc-native-review .booking-item-rating-stars,.emc .emc-native-review .fa-star,.emc .emc-native-review .fa-star-o{font-size:18px!important;width:auto!important;height:auto!important}

@media(max-width:780px){
  .emc .emc-native-booking-details .col-md-6,.emc .emc-native-booking-details .col-sm-6,.emc .emc-native-booking-details .col-md-4,.emc .emc-native-booking-details .col-sm-4,.emc .emc-native-booking-details .col-md-8,.emc .emc-native-booking-details .col-sm-8{width:100%}
  .emc .emc-unsave-form button span{display:none}
  .emc .emc-modal{padding:8px;align-items:end}
  .emc .emc-modal-dialog{width:100%;max-height:90vh;border-radius:20px 20px 12px 12px}
  .emc .emc-modal-dialog>header,.emc .emc-modal-body,.emc .emc-modal-dialog>footer{padding-left:15px;padding-right:15px}
}

/* 0.1.4 native-header bridge.
 * Traveler header style 2 is absolutely positioned on desktop. Reserve its known
 * baseline height immediately to avoid a flash of overlapped hero content; the
 * runtime measurement in my-coast.js then replaces this with the actual live height.
 */
@media (min-width:992px){
  body.emc-my-coast-page.st-header-2 .emc-page-shell{
    --emc-native-header-overlap:92px;
  }
}

/* 0.1.5 — Coast Stories / Trip Reports */
.emc .emc-text-link--share{display:inline-block;margin-top:7px;color:var(--emc-turq-dark);font-size:9px;font-weight:900}
.emc .emc-story-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.emc .emc-story-summary>div{background:#fff;border:1px solid var(--emc-line);border-radius:15px;padding:14px;box-shadow:0 6px 18px rgba(17,56,77,.045)}
.emc .emc-story-summary strong{display:block;font:700 25px/1 Georgia,serif;color:var(--emc-ink)}
.emc .emc-story-summary span{display:block;margin-top:4px;color:var(--emc-muted);font-size:9px;font-weight:800}
.emc .emc-story-tabs{display:flex;gap:7px;background:#fff;border:1px solid var(--emc-line);border-radius:16px;padding:5px;margin-bottom:16px;box-shadow:0 5px 16px rgba(17,56,77,.04)}
.emc .emc-story-tabs a{padding:9px 13px;border-radius:11px;font-size:10px;font-weight:900;color:var(--emc-muted)}
.emc .emc-story-tabs a.is-active{background:var(--emc-ink);color:#fff}
.emc .emc-trip-report-prompt{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(110deg,#fff5cf,#fff0e9 62%,#e7fbf7);border:1px solid #efdca4;border-radius:19px;padding:18px 19px;margin-bottom:16px}
.emc .emc-trip-report-prompt h3{font:700 22px/1.08 Georgia,serif;color:var(--emc-ink);margin:4px 0 5px}
.emc .emc-trip-report-prompt p{font-size:10px;color:#6f6551;margin:0;max-width:670px}
.emc .emc-my-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.emc .emc-my-report-card{display:grid;grid-template-columns:145px minmax(0,1fr);overflow:hidden;background:#fff;border:1px solid var(--emc-line);border-radius:18px;box-shadow:0 7px 22px rgba(17,56,77,.055)}
.emc .emc-my-report-media{min-height:168px;background:linear-gradient(145deg,#0d7890,#2dbcae 55%,#efd17e);background-size:cover;background-position:center}
.emc .emc-my-report-body{padding:15px;min-width:0}
.emc .emc-my-report-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
.emc .emc-my-report-meta>span:first-child{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--emc-turq-dark)}
.emc .emc-my-report-card h3{font:700 19px/1.08 Georgia,serif;color:var(--emc-ink);margin:0 0 7px}
.emc .emc-my-report-card p{font-size:10px;color:var(--emc-muted);margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.emc .emc-my-report-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.emc .emc-empty-state--story{background:linear-gradient(145deg,#fff,#f2fffc)}

/* Share chooser */
.emc .emc-share-chooser{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.emc .emc-share-choice{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;background:#fff;border:1px solid var(--emc-line);border-radius:22px;padding:22px;box-shadow:var(--emc-shadow-sm);transition:.16s ease}
.emc .emc-share-choice:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(17,56,77,.12)}
.emc .emc-share-choice--report{background:linear-gradient(145deg,#fff9e7,#fff)}
.emc .emc-share-choice--moment{background:linear-gradient(145deg,#eafffb,#fff)}
.emc .emc-share-choice-icon{width:56px;height:56px;border-radius:17px;display:grid;place-items:center;background:var(--emc-ink);color:#fff}
.emc .emc-share-choice-icon svg{width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important}
.emc .emc-share-choice h3{font:700 24px/1.05 Georgia,serif;color:var(--emc-ink);margin:5px 0 7px}
.emc .emc-share-choice p{font-size:10px;color:var(--emc-muted);margin:0 0 13px;max-width:460px}
.emc .emc-share-choice strong{font-size:10px;color:var(--emc-turq-dark)}

/* Trip Report form */
.emc .emc-inline-note{background:#fff6d7;color:#6e570c;border:1px solid #eedb99;border-radius:12px;padding:11px 13px;margin-bottom:12px;font-size:10px;font-weight:750}
.emc .emc-trip-report-form{display:grid;gap:14px}
.emc .emc-report-form-card,.emc .emc-report-submit-card{background:#fff;border:1px solid var(--emc-line);border-radius:21px;padding:20px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-report-step{display:flex;align-items:flex-start;gap:12px;margin-bottom:17px}
.emc .emc-report-step>span{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--emc-ink);color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em;flex:0 0 36px}
.emc .emc-report-step h3{font:700 21px/1 Georgia,serif;color:var(--emc-ink);margin:1px 0 5px}
.emc .emc-report-step p{font-size:10px;color:var(--emc-muted);margin:0}
.emc .emc-trip-report-form .emc-field input,.emc .emc-trip-report-form .emc-field textarea,.emc .emc-trip-report-form .emc-field select{width:100%;border:1px solid #d9ddd9;background:#fff;color:var(--emc-ink);border-radius:11px;padding:10px 11px;box-shadow:none!important;min-height:42px}
.emc .emc-trip-report-form .emc-field textarea{resize:vertical;line-height:1.55}
.emc .emc-trip-report-form .emc-field>span{display:block;font-size:9px;font-weight:900;margin-bottom:6px;color:var(--emc-ink)}
.emc .emc-trip-report-form .emc-field>small{display:block;color:var(--emc-muted);font-size:8px;margin-top:5px}
.emc .emc-date-pair>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.emc .emc-chip-field{border:0;padding:0;margin:15px 0 0}
.emc .emc-chip-field legend{font-size:9px;color:var(--emc-ink);font-weight:900;margin-bottom:8px}
.emc .emc-chip-field legend small{color:var(--emc-muted);font-weight:600;margin-left:5px}
.emc .emc-chip-field>div{display:flex;gap:7px;flex-wrap:wrap}
.emc .emc-chip-field label{margin:0}
.emc .emc-chip-field input{position:absolute;opacity:0;pointer-events:none}
.emc .emc-chip-field span{display:block;border:1px solid var(--emc-line);background:#fff;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:850;color:var(--emc-muted);cursor:pointer}
.emc .emc-chip-field input:checked+span{background:var(--emc-ink);border-color:var(--emc-ink);color:#fff}
.emc .emc-writing-prompts{margin-top:14px;border-top:1px solid var(--emc-line);padding-top:13px}
.emc .emc-writing-prompts summary{cursor:pointer;font-size:10px;font-weight:900;color:var(--emc-turq-dark);margin-bottom:12px}
.emc .emc-prompt-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.emc .emc-prompt-grid label{display:block}
.emc .emc-prompt-grid label>span{display:block;font-size:9px;font-weight:850;color:var(--emc-ink);margin-bottom:5px}
.emc .emc-prompt-grid textarea{width:100%;border:1px solid var(--emc-line);border-radius:11px;padding:9px 10px;resize:vertical;min-height:78px;color:var(--emc-ink);background:#fff}
.emc .emc-prompt-wide{grid-column:1/-1}
.emc .emc-photo-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1.5px dashed #b8d9d5;background:#f5fffd;border-radius:17px;padding:28px 18px;cursor:pointer;transition:.15s ease}
.emc .emc-photo-drop:hover,.emc .emc-photo-drop.is-dragover{background:#eafff9;border-color:var(--emc-turq)}
.emc .emc-photo-drop input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.emc .emc-photo-drop-icon{width:48px;height:48px;border-radius:50%;background:var(--emc-aqua);color:var(--emc-turq-dark);display:grid;place-items:center;margin-bottom:8px}
.emc .emc-photo-drop strong{font-size:11px;color:var(--emc-ink)}
.emc .emc-photo-drop small{font-size:8px;color:var(--emc-muted);margin-top:3px}
.emc .emc-photo-preview,.emc .emc-existing-photos{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:10px}
.emc .emc-photo-preview:empty{display:none}
.emc .emc-photo-preview figure{margin:0;position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--emc-soft)}
.emc .emc-photo-preview img,.emc .emc-existing-photos img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}
.emc .emc-photo-preview figcaption{position:absolute;right:4px;bottom:4px;border-radius:999px;padding:2px 5px;background:rgba(17,56,77,.84);color:#fff;font-size:7px;font-weight:900}
.emc .emc-report-submit-card>div{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--emc-line);padding-top:14px}
.emc .emc-report-submit-card p{margin:0;color:var(--emc-muted);font-size:9px;max-width:620px}

/* Public Trip Reports */
.emc-trip-public-shell{background:var(--emc-ivory);min-height:60vh}
body.emc-trip-report-page .page-title,body.emc-trip-report-page .banner,body.emc-trip-report-page .st-breadcrumb,body.emc-trip-report-page .breadcrumb{display:none!important}
.emc .emc-public-report-hero{position:relative;min-height:470px;display:flex;align-items:end;background:linear-gradient(140deg,#176f7d,#0a4b66);background-image:var(--emc-report-cover,linear-gradient(140deg,#176f7d,#0a4b66));background-size:cover;background-position:center;color:#fff}
.emc .emc-public-report-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,24,35,.08),rgba(4,24,35,.82))}
.emc .emc-public-report-hero-inner{position:relative;z-index:1;width:min(1040px,calc(100% - 36px));margin:0 auto;padding:44px 0}
.emc .emc-public-report-hero h1{font:700 clamp(38px,6vw,68px)/.98 Georgia,serif;color:#fff;margin:7px 0 14px;max-width:900px;letter-spacing:-1.5px}
.emc .emc-public-report-byline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:10px;color:rgba(255,255,255,.9)}
.emc .emc-public-report-byline img{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.8)}
.emc .emc-public-report-byline span+span:before{content:"·";margin-right:10px}
.emc .emc-public-report-layout{width:min(1040px,calc(100% - 36px));margin:34px auto 60px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:34px}
.emc .emc-public-report-main{min-width:0}
.emc .emc-public-report-intro-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}
.emc .emc-public-report-intro-meta span{border-radius:999px;background:var(--emc-aqua);color:var(--emc-turq-dark);padding:6px 9px;font-size:8px;font-weight:900}
.emc .emc-public-report-story{font:400 17px/1.8 Georgia,serif;color:#243f4c}
.emc .emc-public-report-story p{margin:0 0 1.35em}
.emc .emc-public-report-story h2,.emc .emc-public-report-story h3{font-family:Georgia,serif;color:var(--emc-ink)}
.emc .emc-practical-notes{margin-top:34px;border-top:1px solid var(--emc-line);padding-top:27px}
.emc .emc-practical-notes>h2,.emc .emc-report-gallery>h2{font:700 30px/1 Georgia,serif;color:var(--emc-ink);margin:5px 0 17px}
.emc .emc-practical-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.emc .emc-practical-grid>div{background:#fff;border:1px solid var(--emc-line);border-radius:15px;padding:14px}
.emc .emc-practical-grid h3{font-size:11px;color:var(--emc-ink);margin:0 0 5px}
.emc .emc-practical-grid p{font-size:10px;color:var(--emc-muted);margin:0}
.emc .emc-report-gallery{margin-top:34px;border-top:1px solid var(--emc-line);padding-top:27px}
.emc .emc-report-gallery>div{columns:2;column-gap:8px}
.emc .emc-report-gallery figure{break-inside:avoid;margin:0 0 8px}
.emc .emc-report-gallery img{display:block;width:100%;height:auto;border-radius:13px}
.emc .emc-public-report-aside{display:grid;align-content:start;gap:12px;position:sticky;top:24px;align-self:start}
.emc .emc-contributor-card,.emc .emc-public-report-cta{background:#fff;border:1px solid var(--emc-line);border-radius:18px;padding:17px;box-shadow:var(--emc-shadow-sm)}
.emc .emc-contributor-card img{width:58px;height:58px;border-radius:50%;object-fit:cover;margin-bottom:10px}
.emc .emc-contributor-card h3,.emc .emc-public-report-cta h3{font:700 19px/1.08 Georgia,serif;color:var(--emc-ink);margin:4px 0 6px}
.emc .emc-contributor-card p,.emc .emc-public-report-cta p{font-size:9px;color:var(--emc-muted);margin:0 0 12px}
.emc .emc-report-archive-hero{background:linear-gradient(115deg,#0a6f86,#08b8ad 58%,#28c6b4);color:#fff;padding:58px max(24px,calc((100vw - 1120px)/2));position:relative;overflow:hidden}
.emc .emc-report-archive-hero:after{content:"COAST";position:absolute;right:-20px;bottom:-50px;font:900 150px/1 Georgia,serif;color:rgba(255,255,255,.075);letter-spacing:-9px}
.emc .emc-report-archive-hero h1{font:700 clamp(40px,6vw,68px)/.98 Georgia,serif;color:#fff;margin:7px 0 10px}
.emc .emc-report-archive-hero p{max-width:660px;color:#fff;font-size:12px;margin:0 0 18px;position:relative;z-index:1}
.emc .emc-report-archive-hero .emc-btn{position:relative;z-index:1}
.emc .emc-report-archive-wrap{width:min(1120px,calc(100% - 36px));margin:30px auto 60px}
.emc .emc-report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.emc .emc-report-card{background:#fff;border:1px solid var(--emc-line);border-radius:18px;overflow:hidden;box-shadow:var(--emc-shadow-sm)}
.emc .emc-report-card-media{display:block;height:210px;background:linear-gradient(145deg,#0d7890,#2dbcae 55%,#efd17e);background-size:cover;background-position:center}
.emc .emc-report-card-body{padding:15px}
.emc .emc-report-card h3{font:700 21px/1.05 Georgia,serif;color:var(--emc-ink);margin:5px 0 7px}
.emc .emc-report-card p{font-size:10px;color:var(--emc-muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.emc .emc-report-pagination{margin-top:24px}
.emc .emc-report-pagination .nav-links{display:flex;gap:7px;justify-content:center}
.emc .emc-report-pagination a,.emc .emc-report-pagination span{display:grid;place-items:center;min-width:36px;height:36px;padding:0 9px;border-radius:10px;border:1px solid var(--emc-line);background:#fff;font-size:9px;font-weight:900;color:var(--emc-ink)}
.emc .emc-report-pagination .current{background:var(--emc-ink);color:#fff}
.emc .emc-public-cards .emc-report-grid{grid-template-columns:repeat(3,1fr)}

@media (min-width:992px){body.emc-trip-report-page.st-header-2 .emc-trip-public-shell{--emc-native-header-overlap:92px}}

@media(max-width:980px){
  .emc .emc-my-report-grid{grid-template-columns:1fr}
  .emc .emc-report-grid,.emc .emc-public-cards .emc-report-grid{grid-template-columns:repeat(2,1fr)}
  .emc .emc-public-report-layout{grid-template-columns:1fr}
  .emc .emc-public-report-aside{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:780px){
  .emc .emc-story-summary{grid-template-columns:repeat(4,135px);overflow:auto;margin-right:-14px;padding-bottom:3px}
  .emc .emc-story-tabs{overflow:auto}
  .emc .emc-trip-report-prompt{display:block}
  .emc .emc-trip-report-prompt .emc-btn{margin-top:12px}
  .emc .emc-share-chooser{grid-template-columns:1fr}
  .emc .emc-share-choice{padding:17px;grid-template-columns:48px 1fr}
  .emc .emc-share-choice-icon{width:46px;height:46px;border-radius:14px}
  .emc .emc-report-form-card,.emc .emc-report-submit-card{padding:15px;border-radius:18px}
  .emc .emc-date-pair>div,.emc .emc-prompt-grid{grid-template-columns:1fr}
  .emc .emc-prompt-wide{grid-column:auto}
  .emc .emc-photo-preview,.emc .emc-existing-photos{grid-template-columns:repeat(4,1fr)}
  .emc .emc-report-submit-card>div{display:block}
  .emc .emc-report-submit-card .emc-btn{margin-top:11px;width:100%}
  .emc .emc-my-report-card{grid-template-columns:105px minmax(0,1fr)}
  .emc .emc-my-report-media{min-height:155px}
  .emc .emc-public-report-hero{min-height:390px}
  .emc .emc-public-report-hero-inner{padding:30px 0}
  .emc .emc-public-report-layout{margin-top:22px;gap:20px}
  .emc .emc-public-report-aside{grid-template-columns:1fr}
  .emc .emc-practical-grid{grid-template-columns:1fr}
  .emc .emc-report-gallery>div{columns:1}
  .emc .emc-report-grid,.emc .emc-public-cards .emc-report-grid{grid-template-columns:1fr 1fr;gap:10px}
  .emc .emc-report-card-media{height:150px}
  .emc .emc-report-card h3{font-size:17px}
}
@media(max-width:460px){
  .emc .emc-photo-preview,.emc .emc-existing-photos{grid-template-columns:repeat(3,1fr)}
  .emc .emc-my-report-card{grid-template-columns:1fr}
  .emc .emc-my-report-media{min-height:180px}
  .emc .emc-report-grid,.emc .emc-public-cards .emc-report-grid{grid-template-columns:1fr}
  .emc .emc-report-card-media{height:200px}
}
.emc .emc-existing-photos label{position:relative;display:block;margin:0}
.emc .emc-existing-photos label>span{position:absolute;left:4px;right:4px;bottom:4px;display:flex;align-items:center;justify-content:center;gap:4px;background:rgba(17,56,77,.86);color:#fff;border-radius:7px;padding:3px 4px;font-size:7px;font-weight:900;cursor:pointer}
.emc .emc-existing-photos input{width:11px!important;height:11px!important;min-height:0!important;margin:0;accent-color:var(--emc-coral)}
body.emc-trip-report-page .emc-trip-public-shell{padding-top:var(--emc-native-header-overlap,0px)}
.emc .emc-sidebar-share{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px 2px 8px;padding:9px 10px;border-radius:11px;background:var(--emc-turq);color:#fff;font-size:9px;font-weight:900;box-shadow:0 7px 16px rgba(8,184,173,.18)}
.emc .emc-sidebar-share:hover{background:var(--emc-turq-dark);color:#fff}
.emc .emc-sidebar-share svg{width:15px!important;height:15px!important;max-width:15px!important;min-width:15px!important;max-height:15px!important;min-height:15px!important;flex-basis:15px!important}


/* 0.1.7 — restore the visual cover on embedded Coast Moment cards.
 * Coast Moments may lazy-render its own card media only on the standalone page;
 * My Coast promotes the same original image into a dependable 4:3 cover.
 */
.emc .emc-embedded-moments .emc-moment-card-enhanced{min-width:0}
.emc .emc-embedded-moments .emc-moment-cover{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:4/3!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#0d7890,#2dbcae 58%,#efd17e)!important;
  margin:0 0 11px!important;
  text-decoration:none!important;
}
.emc .emc-embedded-moments .emc-moment-cover img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  margin:0!important;
  padding:0!important;
  opacity:1!important;
  visibility:visible!important;
}
.emc .emc-embedded-moments .emc-moment-gallery-count{
  position:absolute!important;
  right:8px!important;
  bottom:8px!important;
  min-width:27px!important;
  height:27px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(17,56,77,.88)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 4px 12px rgba(0,0,0,.16)!important;
}
@media(max-width:780px){
  .emc .emc-embedded-moments .emc-moment-cover{border-radius:12px!important;margin-bottom:9px!important}
}


/* 0.1.8 — compact Coast Moment gallery.
 * Visual content uses a 3 x 4 desktop grid (12 initially), two columns on tablet,
 * and compact two/one-column mobile behaviour. The Moment photo sits above the
 * metadata instead of beside it, and the large nested white panel is removed.
 */
.emc .emc-embedded-moments{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.emc .emc-embedded-moments .emc-moment-grid-host{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
}
.emc .emc-embedded-moments .emc-moment-grid-host>.emc-moment-grid-proxy{
  display:contents!important;
}
.emc .emc-embedded-moments .emc-moment-grid-host>:not(.emc-moment-card-enhanced):not(.emc-moment-grid-proxy):not(.emc-moment-load-more){
  grid-column:1/-1!important;
}
.emc .emc-embedded-moments .emc-moment-card-enhanced{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--emc-line)!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(17,56,77,.06)!important;
  text-decoration:none!important;
}
.emc .emc-embedded-moments .emc-moment-card-enhanced:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(17,56,77,.10)!important;
}
.emc .emc-embedded-moments .emc-moment-card-body{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  padding:13px 14px 14px!important;
  margin:0!important;
  background:#fff!important;
}
.emc .emc-embedded-moments .emc-moment-card-body>*:first-child{margin-top:0!important}
.emc .emc-embedded-moments .emc-moment-card-body>*:last-child{margin-bottom:0!important}
.emc .emc-embedded-moments .emc-moment-cover{
  flex:0 0 auto!important;
  width:100%!important;
  aspect-ratio:4/3!important;
  margin:0!important;
  border-radius:0!important;
}
.emc .emc-embedded-moments .emc-native-moment-image{display:none!important}
.emc .emc-embedded-moments .emc-moment-page-hidden{display:none!important}
.emc .emc-embedded-moments .emc-moment-load-more{
  grid-column:1/-1!important;
  justify-self:center!important;
  min-width:132px!important;
  margin:8px auto 0!important;
  border:1px solid var(--emc-ink)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--emc-ink)!important;
  padding:10px 18px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.emc .emc-embedded-moments .emc-moment-load-more:hover{
  background:var(--emc-ink)!important;
  color:#fff!important;
}
.emc .emc-embedded-moments .emc-moment-load-more[hidden]{display:none!important}

/* Different Moment views keep the same visual language.
 * My Moments, Following, Saved, Liked and Pending use the photo grid.
 * Comments is intentionally denser because the comment itself is the useful content.
 */
.emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-grid-host{
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-card-enhanced{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  border-radius:14px!important;
}
.emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-cover{
  height:100%!important;
  min-height:105px!important;
  aspect-ratio:auto!important;
}
.emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-card-body{
  align-self:center!important;
  padding:12px 14px!important;
}
.emc .emc-embedded-moments[data-emc-moment-view="pending"] .emc-moment-card-enhanced{
  outline:2px solid rgba(255,201,61,.28)!important;
  outline-offset:-2px!important;
}

@media(max-width:1050px){
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
}
@media(max-width:780px){
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .emc .emc-embedded-moments .emc-moment-card-body{padding:10px 11px 11px!important}
  .emc .emc-embedded-moments .emc-moment-load-more{margin-top:6px!important}
  .emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-card-enhanced{
    grid-template-columns:92px minmax(0,1fr)!important;
  }
}
@media(max-width:420px){
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:1fr!important;
  }
  .emc .emc-embedded-moments[data-emc-moment-view="comments"] .emc-moment-card-enhanced{
    grid-template-columns:84px minmax(0,1fr)!important;
  }
}


/* 0.1.9 — direct-child Coast Moment grid fix.
 * Some Coast Moments account templates output Moment cards directly inside
 * .emc-embedded-moments. In 0.1.8 the JS correctly promoted that element to
 * the grid host, but the CSS only targeted descendant grid hosts. The result
 * was a full-width 4:3 image. Support the embedded root itself as a grid host
 * and keep all non-card controls spanning the complete row.
 */
.emc .emc-embedded-moments.emc-moment-grid-host,
.emc .emc-embedded-moments .emc-moment-grid-host{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
}
.emc .emc-embedded-moments.emc-moment-grid-host>.emc-moment-grid-proxy,
.emc .emc-embedded-moments .emc-moment-grid-host>.emc-moment-grid-proxy{
  display:contents!important;
}
.emc .emc-embedded-moments.emc-moment-grid-host>:not(.emc-moment-card-enhanced):not(.emc-moment-grid-proxy):not(.emc-moment-load-more),
.emc .emc-embedded-moments .emc-moment-grid-host>:not(.emc-moment-card-enhanced):not(.emc-moment-grid-proxy):not(.emc-moment-load-more){
  grid-column:1/-1!important;
}
.emc .emc-embedded-moments.emc-moment-grid-host>.emc-moment-card-enhanced,
.emc .emc-embedded-moments .emc-moment-grid-host>.emc-moment-card-enhanced{
  grid-column:auto!important;
  align-self:start!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
.emc .emc-embedded-moments.emc-moment-grid-host>.emc-moment-load-more,
.emc .emc-embedded-moments .emc-moment-grid-host>.emc-moment-load-more{
  grid-column:1/-1!important;
}

/* Prevent legacy Coast Moments rules or image attributes from allowing the
 * visual to dictate card width/height. The grid owns width; the cover owns 4:3.
 */
.emc .emc-embedded-moments .emc-moment-card-enhanced .emc-moment-cover,
.emc .emc-embedded-moments.emc-moment-grid-host>.emc-moment-card-enhanced .emc-moment-cover{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:4/3!important;
}
.emc .emc-embedded-moments .emc-moment-card-enhanced .emc-moment-cover>img,
.emc .emc-embedded-moments.emc-moment-grid-host>.emc-moment-card-enhanced .emc-moment-cover>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:cover!important;
}

@media(max-width:1050px){
  .emc .emc-embedded-moments.emc-moment-grid-host,
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
}
@media(max-width:780px){
  .emc .emc-embedded-moments.emc-moment-grid-host,
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
@media(max-width:420px){
  .emc .emc-embedded-moments.emc-moment-grid-host,
  .emc .emc-embedded-moments .emc-moment-grid-host{
    grid-template-columns:1fr!important;
  }
}


/* 0.1.12 — compact embedded Moment card height.
 * The native Coast Moments renderer can leave its own fixed/min-height card shell
 * inside the My Coast visual card. Flatten that legacy shell so the card is driven
 * only by the 4:3 image plus the actual title/author/engagement content.
 */
.emc .emc-embedded-moments .emc-moment-card-enhanced{
  height:max-content!important;
  min-height:0!important;
  max-height:none!important;
  align-self:start!important;
}
.emc .emc-embedded-moments .emc-moment-card-enhanced .emc-moment-card-body{
  display:block!important;
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
/* Remove the old card shell when the embedded Moment markup wraps all text in
 * another div/article/section. The new outer card already supplies background,
 * border, radius and shadow. */
.emc .emc-embedded-moments .emc-moment-card-body > div,
.emc .emc-embedded-moments .emc-moment-card-body > article,
.emc .emc-embedded-moments .emc-moment-card-body > section,
.emc .emc-embedded-moments .emc-moment-card-body > li{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:visible!important;
}
/* Legacy layouts sometimes put the height one level deeper. Neutralise only
 * structural block wrappers; links, buttons, icons and media keep their sizing. */
.emc .emc-embedded-moments .emc-moment-card-body div,
.emc .emc-embedded-moments .emc-moment-card-body article,
.emc .emc-embedded-moments .emc-moment-card-body section{
  min-height:0!important;
  max-height:none!important;
}
.emc .emc-embedded-moments .emc-moment-card-body > div > div,
.emc .emc-embedded-moments .emc-moment-card-body > article > div,
.emc .emc-embedded-moments .emc-moment-card-body > section > div{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  flex-grow:0!important;
}


/* 0.1.13 — remove the real source of the post-metadata blank area.
 * The legacy Coast Moments renderer wraps its lazy image in a fixed-height
 * media shell. 0.1.12 flattened generic divs, but the live shell can be an
 * anchor/figure/picture and therefore continued reserving space after the
 * promoted My Coast cover. Hide that redundant shell itself.
 */
.emc .emc-embedded-moments .emc-native-moment-media-shell,
.emc .emc-embedded-moments .emc-moment-card-body a:has(.emc-native-moment-image),
.emc .emc-embedded-moments .emc-moment-card-body figure:has(.emc-native-moment-image),
.emc .emc-embedded-moments .emc-moment-card-body picture:has(.emc-native-moment-image){
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
/* Defensive cleanup for lazy media placeholders that survive without an image
 * node. The card body is metadata-only in My Coast; visual media belongs in the
 * promoted 4:3 cover above it. */
.emc .emc-embedded-moments .emc-moment-card-body > [class*="media"],
.emc .emc-embedded-moments .emc-moment-card-body > [class*="gallery"],
.emc .emc-embedded-moments .emc-moment-card-body > [class*="photo"],
.emc .emc-embedded-moments .emc-moment-card-body > [class*="image"]{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}

/* 0.1.14 — deterministic Coast Moment card body.
 * Visual Moment tabs no longer inherit Coast Moments' native card DOM. The
 * card is rebuilt from the existing Moment title, contributor and engagement
 * values, so there is no legacy shell left to reserve blank height.
 */
.emc .emc-embedded-moments .emc-moment-card-clean{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}
.emc .emc-embedded-moments .emc-moment-card-body--clean{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  padding:13px 14px 12px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
.emc .emc-embedded-moments .emc-moment-clean-title{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:var(--emc-ink)!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:900!important;
  text-decoration:none!important;
}
.emc .emc-embedded-moments .emc-moment-clean-title:hover{color:var(--emc-turq-dark)!important}
.emc .emc-embedded-moments .emc-moment-clean-author{
  margin:0!important;
  padding:0!important;
  color:var(--emc-turq-dark)!important;
  font-size:10px!important;
  line-height:1.35!important;
  font-weight:750!important;
}
.emc .emc-embedded-moments .emc-moment-clean-engagement{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:2px!important;
  padding-top:8px!important;
  border-top:1px solid var(--emc-line)!important;
  min-height:0!important;
}
.emc .emc-embedded-moments .emc-moment-clean-engagement>span{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  padding:0!important;
  font-size:9px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
.emc .emc-embedded-moments .emc-moment-clean-like{color:var(--emc-coral)!important}
.emc .emc-embedded-moments .emc-moment-clean-comments{color:var(--emc-muted)!important;margin-left:auto!important}
.emc .emc-embedded-moments .emc-moment-clean-engagement svg{
  display:block!important;
  width:13px!important;
  height:13px!important;
  min-width:13px!important;
  max-width:13px!important;
  min-height:13px!important;
  max-height:13px!important;
  flex:0 0 13px!important;
}
@media(max-width:780px){
  .emc .emc-embedded-moments .emc-moment-card-body--clean{padding:10px 11px!important;gap:6px!important}
  .emc .emc-embedded-moments .emc-moment-clean-title{font-size:12px!important}
}


/* 0.1.15 — fully My Coast-owned visual Moment card. */
.emc .emc-embedded-moments .emc-moment-card-owned{
  box-sizing:border-box!important;
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  font-size:initial!important;
  line-height:normal!important;
  visibility:visible!important;
  opacity:1!important;
}
.emc .emc-embedded-moments .emc-moment-card-owned>.emc-moment-card-body--clean{
  box-sizing:border-box!important;
  position:relative!important;
  display:flex!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  visibility:visible!important;
  opacity:1!important;
  color:var(--emc-ink)!important;
  background:#fff!important;
}
.emc .emc-embedded-moments .emc-moment-card-owned>.emc-moment-card-body--clean>*{
  visibility:visible!important;
  opacity:1!important;
}


/* 0.1.18 — final Coast Moment metadata polish. */
.emc .emc-embedded-moments .emc-moment-clean-author{
  color:var(--emc-turq-dark)!important;
  text-decoration:none!important;
  font-weight:700!important;
}
.emc .emc-embedded-moments a.emc-moment-clean-author:hover{
  text-decoration:underline!important;
}
.emc .emc-embedded-moments .emc-moment-clean-like,
.emc .emc-embedded-moments .emc-moment-clean-comments{
  white-space:nowrap!important;
}
