/* ═══════════════════════════════════════════════════════════
   quakemaster.css — Master stylesheet for CitrusMilo site
   Contains all structural, layout, typography, and neutral
   color styles shared across all site sections.
   Color theming is handled by section-specific stylesheets.
   ═══════════════════════════════════════════════════════════ */

/* ─── Custom fonts ─────────────────────────────────────── */
@font-face { font-family: BodhiGothic;  src: url(/bodhigothic.ttf); }
@font-face { font-family: BodhiSegoeui; src: url(/bodhisegoeui.ttf); }
@font-face { font-family: BodhiMitr;    src: url(/bodhimitr.ttf); }
@font-face { font-family: BodhiCoinage; src: url(/bodhicoinage.ttf); }

/* ─── Reset & base ─────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --text-primary:   #1a1a18;
  --text-secondary: #202020;
  --text-muted:     #7a7a72;
  --border:         rgba(0,0,0,0.10);
  --border-mid:     rgba(0,0,0,0.16);
  --bg-page:        #f9f9f9;
  --bg-card:        #ffffff;
  --bg-subtle:      #efefef;
  --radius-sm:      6px;
  --radius-md:      10px;
  --radius-lg:      14px;
  --font-body:      BodhiSegoeui, Verdana, Geneva, sans-serif, Helvetica, Arial; /*Georgia, 'Times New Roman', serif; */
  --font-ui:        -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:      'Courier New', monospace;
  --max-width:      1200px;
  --sidebar-w:      350px;
  --gap:            40px;
}

html {
  font-size: 12pt;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: var(--font-body);
  background: var(--bg-page);
  color: var(--text-primary);
  line-height: 1.7;
}

a { color: var(--link); text-decoration: none; }
a:hover { text-decoration: underline; }

img { display: block; max-width: 100%; }

/* ─── Site header structure ────────────────────────────── */
div#ikarosheader {width:100%; text-align: center; background-color:#34356f; height:165px; max-height:165px; box-sizing: border-box; margin: 0px; padding: 0px;  }
@media (min-width: 1800px) {  div#ikarosheader { background: no-repeat scroll 50% 0 transparent; }}
@media (max-width: 1800px) and (min-width: 1200px) {  div#ikarosheader { background: no-repeat scroll 50% 0 transparent; }}
@media (max-width: 1200px) and (min-width: 750px) {  div#ikarosheader { background: no-repeat scroll 50% 0 transparent; }}
@media (max-width: 750px) {  div#ikarosheader { background: no-repeat scroll 50% 0 transparent; }}
@media (max-width: 600px) { div#ikarosheader {max-height:0px; height:0px;}} /* 9/8/2024: 90px */

div#ikarosborderbar1 { width: 100%; text-align: center; height: 1px; max-height: 1px; box-sizing: border-box; margin: 0px; padding: 0px; }
@media (max-width: 600px) { div#ikarosborderbar1 { display: none; } }
div#ikarostitlebox { width: 100%; text-align: center; box-sizing: border-box; margin: 0px; padding: 0px; position: relative; box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .2); }
div#titlebannercontainer { position: relative; text-align: left; vertical-align: middle; border: 0px; max-width: 1300px; margin: auto; padding-top: 12px; padding-bottom: 12px; }
div#titlebannerleftwrapper { display: inline-block; padding-left: 48px; }
div#titlebannerrightwrapper { display: inline-block; position: absolute; right: 0; margin-top: 8px; padding-right: 60px; }
div#titlebannerB1 { display: inline-block; font-family: BodhiCoinage; font-weight: bold; -webkit-font-smoothing: none; text-rendering: optimizeLegibility; font-size: 15pt; letter-spacing: 0.06em; line-height: 17pt; color: #FFFFFF; padding-right: 10px; text-shadow: 1px 1px 3px rgba(0,0,0,.5); min-width: 420px; }
img.circlelogo { border-radius: 50%; max-width: 48px; max-height: 48px; float: left; margin-right: 18px; }
@media (min-width: 1250px) { div#titlebannerleftwrapper { padding-left: 48px; } div#titlebannerrightwrapper { padding-right: 60px; }   }
@media (max-width: 1250px) and (min-width: 768px) { div#titlebannerleftwrapper { padding-left: 14px; } div#titlebannerrightwrapper { padding-right: 30px; } }
@media (max-width: 768px) { div#titlebannerleftwrapper { padding-left: 12px; } div#titlebannerrightwrapper { padding-right: 10px; } div#titlebannercontainer { padding-top: 8px; padding-bottom:8px; }}
@media (max-width: 768px) { div#titlebannerB1 { font-size: 12pt; line-height: 13pt; min-width: 330px; margin-top: 2px; } div#titlebannerrightwrapper { margin-top: 4px; } img.circlelogo { max-width: 38px; max-height: 38px; margin-right: 12px; } }
div#citrusmenu, div#zionmenu, div#acadiamenu, div#yosemitemenu { max-width: 650px; margin-left: auto; margin-right: auto; text-align: right; font-size: 11pt; font-family: Calibri, Helvetica, sans-serif; min-height: 40px; box-sizing: border-box; overflow: hidden; padding-top: 3px; display: inline-flex; }
@media (max-width: 1050px) { div#citrusmenu, div#zionmenu, div#acadiamenu, div#yosemitemenu { max-width: 250px; width: 250px; } }
a:link.plainheader { color: #FFFFFF; text-decoration: none; background-color: transparent; outline: none !important; }
a:visited.plainheader { color: #FFFFFF; text-decoration: none; background-color: transparent; outline: none !important; }
a:active.plainheader { color: #FFFFFF; text-decoration: none; background-color: transparent; outline: none !important; }
a:hover.plainheader { color: #FFFFFF; text-decoration: none; background-color: transparent; outline: none !important; }

/* ─── Page wrapper ─────────────────────────────────────── */
.maindiv {
  max-width: 1232px;
  margin: 0 auto;
  padding: 20px 16px 12px;
}

/* ─── Page title ───────────────────────────────────────── */
h1.pagetitle { width: 100%; border-bottom: 1px solid #D0D0D0; margin-left: 0px; padding-left: 0px; margin-right: 0px; padding-right: 0px; margin-bottom: 18px; padding-bottom: 0px; margin-top: 25px; font-size: 19pt; line-height: 21pt; transform: scaleY(1.05); font-family: BodhiCoinage, Arial, Helvetica, Verdana, sans-serif; font-weight: bold; color: #000000; letter-spacing: 0.01em; text-align: center; }
span.toptitlesmaller {font-size: 18pt; line-height: 18pt;}
span.keeptogether {display:inline-block; write-space:nowrap;}
@media (max-width: 768px) { h1.pagetitle { width: 100%; font-size: 17pt; line-height: 18pt; transform: scaleY(1.05); letter-spacing: 0px; } span.toptitlesmaller {font-size: 15pt;}}


/* NAVBAR BOXES, TOP AND BOTTOM */
p.topnavbar { margin-top: 24px; margin-bottom: 28px; text-align: center; line-height: 2.4; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
span.navbuttongroups { white-space: nowrap; padding-left: 6px; padding-right: 6px; }
a.navbutton { text-decoration: none; color: white !important; padding: 1px 10px 2px 10px; height: 2em; border: 0px; border-radius: 10px; font-weight: normal; font-size: 11pt; margin-left: 1px; margin-right: 1px; box-shadow: 0px 2px 3px 0 rgba(0, 0, 0, 0.2); display: inline-flex; align-items: center; justify-content: center; line-height: 1; vertical-align: middle; }
p.bottomnavbar { margin-top: 22px; margin-bottom: 24px; text-align: center; line-height: 2.4; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;}
a.navbuttonbottomcurrent { text-decoration: none; color: white !important; padding: 1px 10px 2px 10px; height: 2em; border: 0px; border-radius: 10px; font-weight: bold; font-size: 11pt; margin-left: 1px; margin-right: 1px; box-shadow: 0px 2px 3px 0 rgba(0, 0, 0, 0.2); display: inline-flex; align-items: center; justify-content: center; line-height: 1; vertical-align: middle; }

/* ─── Hero image ───────────────────────────────────────── */
.hero {
  width: 100%;
  aspect-ratio: 3 / 1;
  border-radius: var(--radius-lg);
  overflow: hidden;
  position: relative;
  margin-bottom: 32px;
}

.hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
}

.hero-caption {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 20px 14px 8px;
  background: linear-gradient(0deg, rgba(0,0,0,0.48) 0%, transparent 100%);
  font-family: var(--font-ui);
  font-size: 9.75pt;
  color: rgba(255,255,255,0.78);
  font-style: italic;
  line-height: 1.3;
}

/* ─── Mobile info bar ──────────────────────────────────── */
.mobile-info-bar {
  display: none;
  border-radius: var(--radius-md);
  padding: 10px 14px;
  margin-bottom: 12px;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  user-select: none;
}

.mobile-stats { display: flex; gap: 18px; }

.mobile-stat-label {
  font-family: var(--font-ui);
  font-size: 6pt;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 1px;
}

.mobile-stat-val {
  font-family: var(--font-ui);
  font-size: 9pt; line-height: 11pt;
  font-weight: 700;
}

.mobile-caret {
  font-size: 20pt;
  font-weight: 900;
  transition: transform 0.2s;
  line-height: 1;
}

.mobile-caret.open { transform: rotate(180deg); }

.mobile-info-panel {
  display: none;
  border: 0.5px solid var(--border-mid);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-bottom: 16px;
}

.mobile-info-panel.open { display: block; }

/* ─── Two-column layout ────────────────────────────────── */
.layout2col {
  display: grid;
  grid-template-columns: 1fr var(--sidebar-w);
  gap: var(--gap);
  align-items: start;
}

/* ─── Single-column layout (no sidebar) ───────────────── */
.layout1col {
  max-width: 780px;
}

/* ─── Prose ────────────────────────────────────────────── */
.prose {
  min-width: 0;
}
.prose h2 {
  font-family: var(--font-ui);
  font-size: 16pt;
  font-weight: 700;
  color: var(--text-primary);
  margin: 30px 0 14px;
  padding-bottom: 0px;
  border-bottom: 1px solid #D0D0D0;
  line-height: 1.2;
}

.prose h2:first-child { margin-top: 0; }

.prose p:not(.topnavbar):not(.bottomnavbar) {
  font-size: 13pt;
  color: var(--text-secondary);
  margin-bottom: 20px;
  line-height: 1.75;
}

.prose a { color: var(--link); }

/* ─── Photo page article ───────────────────────────────── */
.photopage {
  max-width: 800px;
  margin-top: 48px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  min-width: 0;
}

/* Warning box */
.warning-box {
  border-left: 3px solid var(--warning-border);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  padding: 10px 14px;
  margin: 28px 0;
}

.warning-box p {
  font-family: var(--font-ui);
  font-size: 11pt !IMPORTANT;
  font-weight: 600;
  color: var(--warning-text);
  line-height: 1.6 !IMPORTANT;
  margin: 0 !IMPORTANT;
  -webkit-text-size-adjust: 100% !IMPORTANT;
  text-size-adjust: 100% !IMPORTANT;
}

/* Inline trail photos */
.trail-photo { margin: 28px 0 36px; }

.trail-photo img {
  width: 100%;
  border-radius: var(--radius-md);
  display: block;
}

.trail-photo figcaption {
  font-family: var(--font-ui);
  font-size: 10pt;
  color: var(--text-muted);
  margin-top: 6px;
  text-align: center;
  font-style: italic;
  line-height: 1.4;
}

/* Vertical trail photos */
.trail-photo-vert { margin: 28px 0 36px; }

.trail-photo-vert img {
  display: block;
  max-height: 700px;
  max-width: 65%;
  width: auto;
  height: auto;
  border-radius: var(--radius-md);
  margin-left: auto;
  margin-right: auto;
}

.trail-photo-vert figcaption {
  font-family: var(--font-ui);
  font-size: 10pt;
  color: var(--text-muted);
  margin-top: 6px;
  text-align: center;
  font-style: italic;
  line-height: 1.4;
}

/* Inline trail map */
.trail-map { margin: 16px 0 28px; text-align: center; }

.trail-map img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-md);
}

.trail-map figcaption {
  font-family: var(--font-ui);
  font-size: 10pt;
  color: var(--text-muted);
  margin-top: 6px;
  text-align: center;
  font-style: italic;
  line-height: 1.4;
}

/* Map links — Option A card rows */
.map-links-box { background: #ece5dd; border-radius: var(--radius-md); padding: 14px 16px; margin: 14px 0 28px; }
.map-link-row { display: flex; align-items: center; gap: 14px; padding: 10px 14px; background: var(--bg-card); border-radius: var(--radius-sm); border: 0.5px solid var(--border-mid); margin-bottom: 8px; text-decoration: none; transition: background 0.15s; }
.map-link-row:last-child { margin-bottom: 0; }
.map-link-row:hover { background: var(--bg-subtle); text-decoration: none; }
.map-link-icon { width: 100px; height: 75px; flex-shrink: 0; border-radius: 6px; overflow: hidden; border: 0.5px solid var(--border-mid); }
.map-link-text { flex: 1; }
.map-link-label { font-family: var(--font-ui); font-size: 9pt; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); margin-bottom: 3px; }
.map-link-title { font-family: var(--font-ui); font-size: 13pt; font-weight: 600; color: var(--text-primary); line-height: 1.1; }
.map-link-arrow { font-size: 16px; flex-shrink: 0; font-weight: 700; }

/* Disclaimer block */
.disclaimer {
  background: var(--bg-card);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  padding: 12px 14px;
  margin: 28px 0 !IMPORTANT;
  font-family: var(--font-ui);
  font-size: 11pt;
  color: var(--text-muted);
  line-height: 1.6;
  -webkit-text-size-adjust: 100% !IMPORTANT;
  text-size-adjust: 100% !IMPORTANT;
}

/* ─── Unordered list ───────────────────────────────────── */
.prose ul {
  list-style-position: outside;
  padding-left: 1.2em;
  margin-top: 0;
  margin-bottom: 20px;
  color: var(--text-secondary);
  font-size: 13pt;
}

.prose ul li {
  margin-bottom: 1em;
  line-height: 1.75;
}

li.flat {margin-bottom: 3px !IMPORTANT;}

/* Inline ad strip */
.inline-ad {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--bg-card);
  border: 0.5px solid var(--border-mid);
  border-radius: var(--radius-md);
  padding: 10px 12px;
  margin: 18px 0;
  text-decoration: none;
  transition: background 0.15s;
}

.inline-ad:hover { background: var(--bg-subtle); text-decoration: none; }

.inline-ad-img {
  width: 52px;
  height: 52px;
  object-fit: cover;
  border-radius: var(--radius-sm);
  flex-shrink: 0;
  border: 0.5px solid var(--border);
}

.inline-ad-text { flex: 1; }

.inline-ad-eyebrow {
  font-family: var(--font-ui);
  font-size: 6.75pt;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 2px;
}

.inline-ad-title {
  font-family: var(--font-ui);
  font-size: 9.75pt;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 2px;
}

.inline-ad-cta {
  font-family: var(--font-ui);
  font-size: 8.25pt;
  color: var(--link);
}

/* ─── Sidebar ───────────────────────────────────────────── */
.sidebar {
  position: sticky;
  top: 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-bottom: 78px;
}

/* Info card */
.info-card {
  border: 0.5px solid var(--border-mid);
  border-radius: var(--radius-lg);
  overflow: hidden;
  margin-bottom: 24px;
}

.info-card-header {
  padding: 9px 11px;
}

.info-card-title {
  font-family: var(--font-ui);
  font-size: 11pt; line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.03em; padding-bottom:4px;
}

.info-card-sub {
  font-family: var(--font-ui);
  font-size: 9pt;
  margin-top: -1px;
}

.info-row {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  padding: 6px 10px;
  border-bottom: 0.5px solid var(--border);
}

.info-row:last-child { border-bottom: none; }

.info-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--text-muted);
}

.info-label {
  font-family: var(--font-ui);
  font-size: 7.5pt;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 2px;
}

.info-val {
  font-family: var(--font-ui);
  font-size: 9.75pt;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.4;
}

.info-val img { display: inline; vertical-align: middle; }
.info-val img:first-child { margin-left: -6px; }

.pill {
  display: inline-block;
  font-size: 6.75pt;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 10px;
  margin-left: 2px;
  vertical-align: middle;
}

/* Sidebar box ad */
.sidebar-box {
  background: var(--bg-card);
  border: 0.5px solid var(--border-mid);
  border-radius: var(--radius-md);
  overflow: hidden;
  text-decoration: none;
  display: block;
  transition: background 0.15s;
}

.sidebar-box:hover { background: var(--bg-subtle); text-decoration: none; }

.sidebar-box-img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
  border-bottom: 0.5px solid var(--border);
}

.sidebar-box-body { padding: 8px 10px; }

.sidebar-box-eyebrow {
  font-family: var(--font-ui);
  font-size: 6pt;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 3px;
}

.sidebar-box-title {
  font-family: var(--font-ui);
  font-size: 9pt;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 3px;
  line-height: 1.3;
}

.sidebar-box-cta {
  font-family: var(--font-ui);
  font-size: 7.5pt;
  color: var(--link);
}

/* ─── Site footer structure ─────────────────────────────── */
div#ikarosfooter { width: 100%; text-align: center; box-sizing: border-box; margin-top: 24px; padding: 0px; box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .4); }
div#ikarosfooterbox { position: relative; text-align: left; vertical-align: middle; max-width: 1300px; margin: auto; padding-top: 10px; padding-bottom: 12px; min-height: 50px; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: normal; font-size: 10pt; line-height: 14pt; box-sizing: border-box; }
@media (min-width: 1000px) { div#ikarosfooterbox { padding-left: 50px; padding-right: 50px; } }
@media (max-width: 1000px) and (min-width: 650px) { div#ikarosfooterbox { padding-left: 35px; padding-right: 35px; } }
@media (max-width: 650px) { div#ikarosfooterbox { padding-top: 5px; padding-left: 20px; padding-right: 20px; } }
div#footerlinkbox { width: 93%; margin: auto; text-align: center; margin-top: 10px; margin-bottom: 15px; }
@media (max-width: 900px) { div#footerlinkbox { width: 100%; } }
#footerlinkbox img { display: inline; }
a:link.invisible { text-decoration: none; background-color: transparent; outline: none !important; }
a:visited.invisible { text-decoration: none; background-color: transparent; outline: none !important; }
a:active.invisible { text-decoration: none; background-color: transparent; outline: none !important; }
a:hover.invisible { text-decoration: none; background-color: transparent; outline: none !important; }
a:focus.invisible { text-decoration: none; background-color: transparent; outline: none !important; }

/* ─── Responsive — mobile ─────────────────────────────── */
@media (max-width: 768px) {
  .maindiv { padding: 14px 12px 32px; }
  .hero { aspect-ratio: 3 / 2; border-radius: var(--radius-md); }
  .mobile-info-bar { display: flex; }
  .layout2col { grid-template-columns: 1fr; }
  .sidebar { display: none; }
  .prose h2 { font-size: 15pt; }
  .prose p:not(.bottomnavbar)  { font-size: 12pt !important; line-height: 1.6 !important; }
  .prose ul { font-size: 12pt !important; line-height: 1.6 !important; }
  .prose .warning-box p { font-size: 9.75pt !important; }
  .prose h2:first-of-type { margin-top: 16px; }
  .prose .disclaimer {font-size: 9.75pt;}
}

/* ─── Force mobile panel hidden on desktop ────────────── */
@media (min-width: 769px) {
  .mobile-info-bar  { display: none !important; }
  .mobile-info-panel { display: none !important; }
}

@media (max-width: 768px) {
  .hero {
    width: calc(100% + 24px);
    margin-left: -12px;
    margin-right: -12px;
    aspect-ratio: 3 / 2;
    border-radius: 0;
  }
  .trail-photo img {
    width: calc(100% + 24px);
    margin-left: -12px;
    margin-right: -12px;
    border-radius: 0;
    max-width: none;
  }
}




/* admachine */
div.admachine-container {border-radius: 15px; background-color: #E0E0E0; text-align: center; margin-left: 0%; margin-right: 0%; margin-top: 46px; margin-bottom: 46px; border: 1px solid #D0D0D0; overflow: hidden;  padding: 20px 10px; display: flex; justify-content: center; gap: 42px; flex-wrap: nowrap;}
div.admachine-box {width: 300px; height: 250px; background-color: #fff; border: 1px solid #bbb; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 18px; color: #666; border-radius: 5px; overflow: hidden;}
a.plain-link {color: inherit; text-decoration: none; }
@media (max-width: 650px) {div.admachine-container { margin-left:-15px; margin-right:-15px; border-radius:0px; }}
/* Hide third ad when viewport is too narrow */
@media (max-width: 1050px) {div.admachine-box:nth-child(3) {display: none;} div.admachine-container {gap:100px;}    }
/* Hide second ad when viewport is even narrower */
@media (max-width: 800px) {div.admachine-box:nth-child(2) {display: none;} }

/* centered table to limit responsive ads */
table.responsivead {text-align:center; margin-left:auto; margin-right:auto; font-family: Tahoma,Verdana,Geneva,sans-serif,Helvetica,Arial,sans-serif;
	margin-top:28px; margin-bottom:24px; width:100%; max-width:100%;}
/* @media (max-width: 800px) {table.responsivead { width:95%; max-width:95%; }} */

div.responsivead {border-radius:15px; background-color:#E0E0E0; text-align:center; margin-left:0%; margin-right:0%; margin-top:46px; margin-bottom:46px; border:2px solid #E0E0E0; overflow:hidden !important; max-width:100%; width:100%;}

/* BIG PHOTOS */
table.photobox {border-spacing:0; border-radius:18px; overflow:hidden; margin-left:auto; margin-right:auto; margin-top:75px; margin-bottom:10px; padding:0px; box-shadow: 0px 2px 8px 0 rgba(0, 0, 0, 0.5);}
table.photoboxsmallcenter {border-spacing:0; border-radius:8px; overflow:hidden; margin-left:auto; margin-right:auto; margin-top:75px; margin-bottom:10px; padding:0px; box-shadow: 0px 2px 8px 0 rgba(0, 0, 0, 0.5);}
@media (max-width:650px) {table.photobox {margin-left:-15px; margin-right:-15px; border-radius:0px;}} /* 7/2024 */
td.photoboximg {padding:0px; margin:0px; text-align:center; border:0px; border-style:solid; border-color:#181818; } /* border used to be 5px, solid */
@media (max-width: 650px) {  td.photoboximg { border:0px; border-style:none }}
td.photoboximgnoborder {padding:0px; margin:0px; text-align:center; border:0px;}

table.photoboxcaptionhorz {margin-left:auto; margin-right:auto; margin-top:5px; padding:0px; max-width:800px; margin-bottom:90px;} /* margin-bottom used to be 70 */
@media (max-width: 650px) {  table.photoboxcaptionhorz { padding-left:5%; padding-right:5%; } }
table.photoboxcaptionvert {margin-left:auto; margin-right:auto; margin-top:5px; padding:0px; max-width:600px; margin-bottom:90px;} /* margin-bottom used to be 70 */
@media (max-width: 650px) {  table.photoboxcaptionvert { padding-left:5%; padding-right:5%; } }
td.photoboxcaption {font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 11pt; line-height: 16pt; font-style: italic; text-align: center; color: #202020;}

img.photo {max-width: 100%; height: auto; border:0px; border-color:#202020;	border-style:solid; padding:0px; margin:0px; display:block;} /* color used to be 303030 border 1px */
@media (max-width: 650px) {  img.photo { border:0px; border-style:none; }}
img.photonoborder {max-width: 100%; height: auto; border:none; display:block;}

a.buyphoto {background-color: #34356f; vertical-align:text-top; white-space: nowrap;
    text-decoration: none; color: white;
    padding:1px 12px 1px 12px; border:0px; border-radius: 8px;
	font-size:9pt; font-weight:bold; font-style:normal; margin-left:6px; margin-right:1px; }
a.buyphoto:hover {background-color: #7070ee;}

.buyphoto2 {display: block; /* inline block for same line */ margin-top: 2px; background-color: transparent !important;}
a.buyphoto2 img {width: 26px; height: 22px; opacity: 0.3; display: inline;
  vertical-align: top; margin-top: 2px; transition: opacity 0.3s ease, box-shadow 0.3s ease; background-color: transparent !important; }
.buyphoto2:hover img {opacity: 1; /* box-shadow: 0 0 12px rgba(200, 200, 200, 0.8); */ /* warm glow */
  background-color: transparent !important;
  filter: drop-shadow(0 0 8px rgba(180, 180, 180, 0.8)); /* inner glow illusion */
  cursor: pointer;}


/* PANORAMA and MAP alternate body */
body#contentlargemap {background-color:#eaedf0;} 
body#contentpanorama {background-color:#FFFFFF}
div#ikaroscontentlargemap {border: 0px solid red; margin-left:auto; margin-right:auto; margin-top:0px; margin-bottom:0px; padding:15px;  color:#000000; box-sizing: border-box; }
div#ikaroscontentpanorama {border: 0px solid red; margin-left:auto; margin-right:auto; margin-top:0px; padding-top:0px; padding-left:0px; padding-right:0px; margin-bottom:0px; padding-bottom:0px;  color:#000000; box-sizing: border-box; }
img.largemap {border: 1px solid #B0B0B0; border-radius:12px; height: auto; display: block; max-width: none; margin: 0 auto;}
@media (max-width: 768px) {img.largemap { max-width: 100%; height: auto; border-radius:0px;} div#ikaroscontentlargemap {padding:0px;} }
img.panorama {border: 1px solid #B0B0B0; border-radius:12px; margin-top:15px; margin-bottom:20px; margin-left:22px; margin-right:22px; box-shadow: 0px 2px 8px 0 rgba(0, 0, 0, 0.5);}
@media (max-width: 800px) { img.panorama {max-width:225%;} }
  
  
