/*
 Theme Name: good grief Child
 Template: good-grief
 Version: 1.0.0
 Description: Child theme for good grief (fixed 3-zone header + SSENSE-style PDP + global footer + debug outlines + color swatches)
 Author: hyprvsr
*/

/* =========================
   TYPOGRAPHY (Inter Font)
   ========================= */
body {
  margin: 0;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Apply Inter to all text elements */
h1, h2, h3, h4, h5, h6,
p, span, div, a, button, input, textarea, select,
.site-title, nav {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-optical-sizing: auto;
}

/* =========================
   GLOBAL VARS
   ========================= */
:root{
  --header-h: 55px;                                 /* fixed header height */
  --rail-w: clamp(340px, 26vw, 420px);              /* wider SAME width rails for perfect center */
}

/* =========================
   FIXED HEADER (3 zones)
   ========================= */
.site-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  height: var(--header-h);
  width: 100%;
  display: flex;
  align-items: center; /* vertical centering */
}

.site-header-inner{
  display: grid;
  grid-template-columns: 1fr auto 1fr;   /* left | center | right — keeps center exactly on viewport center */
  align-items: center;
  width: 100%;
  padding: 0 20px;
  gap: 12px;
}

.header-left   { justify-self: start; }
.header-center { justify-self: center; text-align: center; }
.header-right  { justify-self: end; }

/* header menus horizontal + centered vertically */
.site-header nav,
.site-header nav * { box-sizing: border-box; }
.site-header nav ul,
.site-header nav .menu { list-style:none!important; margin:0!important; padding:0!important; }
.site-header nav > ul,
.site-header nav > div > ul { display:flex!important; flex-direction:row!important; flex-wrap:nowrap; align-items:center; gap:24px; }
.site-header nav li { list-style:none!important; margin:0!important; padding:0!important; }
.site-header nav a{
  display:flex; align-items:center;
  height:var(--header-h);
  padding:0 4px;
  text-decoration:none; color:#111; font-weight:800; font-size:12px;
}

.site-header nav a:hover { text-decoration:underline; }

/* brand — center perfectly in header track */
.header-center .site-title{
  text-decoration:none; color:#000; font-weight:800; font-size:20px; letter-spacing:-0.5px;
  display:flex; align-items:center; height:var(--header-h); line-height:1; margin:0 auto;
}
.custom-logo-link{ display:flex; align-items:center; height:var(--header-h); margin:0 auto; }
.custom-logo-link img{ display:block; max-height:50px; height:auto; width:auto; margin:0 auto; }

/* push content below fixed header */
.site-main{ margin-top: var(--header-h); margin-left: 20px; margin-right: 20px; }

/* =========================
   PDP (SSENSE-style layout)
   ========================= */
.woocommerce-breadcrumb{ display:none!important; margin:0!important; padding:0!important; }

/* ---------- base visibility (order matters) ---------- */
.flex-desktop{ display:flex; width:100%; column-gap:20px; }  /* desktop shown by default */
/* GRID VERSION (new) */
.flex-2col    { display:none; gap:10px; }  /* hidden until <1200 */

/* FLEX VERSION (original - commented for easy rollback)
.flex-2col    { display:none; column-gap:10px; }
*/
.flex-1col    { display:none; flex-direction:column; row-gap:10px; } /* hidden until <600 */

/* ---------- responsive visibility toggles ---------- */
@media (max-width:1199px){
  .flex-desktop{ display:none; }
  .flex-2col{ 
    display: flex; 
    gap: 10px;
    align-items: flex-start; /* Don't stretch heights */
  }
  
  /* GRID VERSION (commented - was causing height issues)
  .flex-2col{ 
    display:grid; 
    grid-template-columns: 3fr 2fr; 
    align-items: start;
  }
  */
}
@media (max-width:700px){
  .flex-2col{ display:none; }
  .flex-1col{ display:flex; }
}

/* Left & Right rails — vertically center inner content */
.d-col-left,
.d-col-right{
  flex: 0 0 var(--rail-w);
  position: sticky;
  top: var(--header-h);
  height: calc(100vh - var(--header-h));

  display: flex;                 /* vertical centering wrapper */
  flex-direction: column;
  justify-content: center;       /* center vertically */
}
.d-col-left > .left-inner,
.d-col-right > .right-inner{
  width: 100%;
}

/* Make all left-column text uniform (paragraph look) */
.pdp-left-meta-top,
.pdp-left-title,
.pdp-left-desc,
.pdp-left-sku{
  font-size: 12px;
  line-height: 1.5;
  color: #111;
  margin: 0 0 12px;
  font-weight: 500;
}

/* Desktop layout paragraph spacing */
.d-col-left p,
.pdp-left-desc p {
  margin-bottom: 12px;
}

/* Remove margin between brand and title - better method */
.pdp-section-meta {
  margin-bottom: 0 !important;
}
.pdp-left-meta-top {
  margin-bottom: 0 !important;
}
.pdp-left-meta-top{ text-transform:none; letter-spacing:0; color:#111; }
.pdp-left-meta-top a{ color:inherit; text-decoration:none; }

/* Middle column — centered to viewport with symmetric rails */
.d-col-center{
  flex: 1 1 auto;
  min-width: 0;
  margin-top: 10px;

  display: flex;
  flex-direction: column;
  align-items: center;            /* horizontal centering of images column */
}
.d-col-center > *{ max-width:100%; margin-left:auto; margin-right:auto; }
/* 70px spacing between photos */
.d-col-center .woocommerce-product-gallery__image,
.d-col-center > *{ margin: 0 0 70px; width:100%;}

/* Image sizing: 100vh minus (header + 15px) */
.d-col-center img{
  height: calc(100vh - (var(--header-h) + 15px));
  width: auto;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}

/* Desktop: show magnifying-glass "+" when hovering center-column images */
.flex-desktop .d-col-center .woocommerce-product-gallery__image a,
.flex-desktop .d-col-center .woocommerce-product-gallery__image img{
  cursor: zoom-in;
}

/* NON-carousel images in 2-col/1-col (fallback for products with single image) */
.two-photos > .woocommerce-product-gallery__image img,
.one-photos > .woocommerce-product-gallery__image img{
  height: calc(100vh - (var(--header-h) + 15px));
  width: auto;
  object-fit: contain;
  display: block;
  margin: 0 auto;
}

/* ========== TABLET & MOBILE LAYOUTS ========== */

/* 2 columns container & children (default under 1200px: 60/40) */
/* GRID VERSION (new) - no flex sizing needed, grid handles it */
.two-photos{
  margin-top:10px;
  display:flex; flex-direction:column; align-items:flex-start; /* Top align for carousel */
  flex: 0 0 calc(60% - 5px); /* 60% width minus half the gap */
  align-self: flex-start; /* Don't stretch vertically */
}
.two-photos > .woocommerce-product-gallery__image{ margin:0 0 70px; width:100%;}
.two-photos > .pdp-carousel-container{ margin:0; align-self: flex-start; } /* Top align carousel */
.two-side{
  margin-top:30px;  /* made consistent with .two-photos */
  display:flex; flex-direction:column; row-gap:0;
  flex: 0 0 calc(40% - 5px); /* 40% width minus half the gap */
}

/* Tablet 2-column layout text sizing */
.two-side .pdp-section-meta,
.two-side .pdp-section-title,
.two-side .pdp-section-description,
.two-side .pdp-left-meta-top,
.two-side .pdp-left-title,
.two-side .pdp-left-desc,
.two-side .pdp-left-sku {
  font-size: 12px;
  font-weight: 500;
}

/* Tablet layout paragraph spacing */
.two-side p,
.two-side .pdp-section-meta,
.two-side .pdp-section-title,
.two-side .pdp-section-description,
.two-side .pdp-left-meta-top,
.two-side .pdp-left-title,
.two-side .pdp-left-desc,
.two-side .pdp-left-sku {
  margin-bottom: 12px;
}

/* Remove margin between brand and title in tablet layout */
.two-side .pdp-section-meta {
  margin-bottom: 0 !important;
}

/* FLEX VERSION (original - commented for easy rollback)
.two-photos{
  flex:0 0 calc(60% - 5px);
  margin-top:10px;
  display:flex; flex-direction:column; align-items:center;
}
.two-side{
  flex:0 0 calc(40% - 5px);
  margin-top:16px;
  display:flex; flex-direction:column; row-gap:0;
}
*/

/* Switch the 2-col split to 50/50 at ≤800px */
@media (max-width:800px){
  .two-photos {
    flex: 0 0 calc(50% - 5px) !important; /* 50% width minus half the gap */
    width: calc(50% - 5px) !important;
  }
  
  .two-side {
    flex: 0 0 calc(50% - 5px) !important; /* 50% width minus half the gap */
    width: calc(50% - 5px) !important;
  }
}

/* 1 column stack containers (turn on at ≤700px via toggle above) */
.one-photos{ display:flex; flex-direction:column; align-items:flex-start; margin-top:10px; } /* Top align for carousel */
.one-photos > .woocommerce-product-gallery__image{ margin:0 0 70px; width:100%;}
.one-photos > .pdp-carousel-container{ margin:0; align-self: stretch; width:100%; } /* Full width carousel */
.one-right{ display:flex; flex-direction:column; row-gap:0; }

/* Mobile 1-column layout text sizing */
.one-right .pdp-section-meta,
.one-right .pdp-section-title,
.one-right .pdp-section-description,
.one-right .pdp-left-meta-top,
.one-right .pdp-left-title,
.one-right .pdp-left-desc,
.one-right .pdp-left-sku {
  font-size: 12px;
  font-weight: 500;
}

/* Mobile layout paragraph spacing */
.one-right p,
.one-right .pdp-section-meta,
.one-right .pdp-section-title,
.one-right .pdp-section-description,
.one-right .pdp-left-meta-top,
.one-right .pdp-left-title,
.one-right .pdp-left-desc,
.one-right .pdp-left-sku {
  margin-bottom: 12px;
}

/* Remove margin between brand and title in mobile layout */
.one-right .pdp-section-meta {
  margin-bottom: 0 !important;
}

/* Title spacing across layouts */
.pdp-left-title {
  margin-bottom: 0 !important;
}
.pdp-section-title {
  margin-bottom: 18px !important;
}

/* Buybox text sizing across all layouts */
.pdp-section-buybox,
.pdp-section-buybox *,
.d-col-right .pdp-section-buybox,
.d-col-right .pdp-section-buybox *,
.two-side .pdp-section-buybox,
.two-side .pdp-section-buybox *,
.one-right .pdp-section-buybox,
.one-right .pdp-section-buybox * {
  font-size: 12px !important;
  font-weight: 500 !important;
}

/* Reordered layout containers (same styling as originals) */
.two-side-reordered{
  margin-top:10px;
  display:flex; flex-direction:column; row-gap:0;
  /* Grid item - takes remaining space in 2-column grid */
}
.one-right-reordered{ 
  display:flex; flex-direction:column; row-gap:0; 
}

/* =========================
   GLOBAL FOOTER
   ========================= */
.site-footer{ border-top:1px solid #eee; background:#fff; }
.footer-inner{ max-width:100%; margin:0; padding:0; }
.footer-fallback{ text-align:center; font-size:.9rem; color:#666; }

/* =========================
   DEBUG OUTLINES — comment out when done
   ========================= */
/* .site-header            { outline:1px solid cyan!important; }
.site-header-inner      { outline:1px solid #0ff!important; }
.header-left            { outline:1px solid lime!important; }
.header-center          { outline:1px solid magenta!important; }
.header-right           { outline:1px solid blue!important; } */

/* .flex-desktop           { outline:1px dashed lime!important; }
.d-col-left             { outline:1px solid lime!important; }
.d-col-center           { outline:1px solid blue!important; }
.d-col-right            { outline:1px solid magenta!important; } */

/* .flex-2col              { outline:1px dashed cyan!important; }
.two-photos             { outline:1px solid blue!important; }
.two-side               { outline:1px solid magenta!important; }
.two-side-reordered     { outline:1px solid magenta!important; } */

/* .flex-1col              { outline:1px dashed cyan!important; }
.one-photos             { outline:1px solid blue!important; }
.one-right              { outline:1px solid magenta!important; }
.one-right-reordered    { outline:1px solid magenta!important; } */

/* .main-photo,
.gallery-photo          { outline:1px dotted blue!important; }
.site-footer            { outline:1px solid cyan!important; }
.footer-inner           { outline:1px solid lime!important; } */

/* TEMP centerline (remove when done) */
/* body::before{
  content:"";
  position:fixed; inset:0 auto 0 50%;
  width:1px; background:red; z-index:9999; pointer-events:none;
} */



/* ===== Ensure 1-column stack at ≤700px (visibility wins) ===== */
@media (max-width:700px){
  .flex-2col { display: none !important; }
  .flex-1col { display: flex !important; }
}

/* =========================
   CAROUSEL (2-col & 1-col only)
   ========================= */
/* Moved to carousel images section above */

.pdp-carousel-track {
  display: flex;
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); /* Smooth easing */
  width: 100%;
  touch-action: pan-y; /* allow vertical scroll; we handle horizontal */
  user-select: none;
  cursor: grab;
  flex: 0 0 auto; /* explicit height below ensures visibility */
  height: calc(100vh - var(--header-h) - 40px);
  min-height: 0;
  overflow: hidden; /* ensure images never overlap dots area */
}

.pdp-carousel-slide {
  /* All slides in horizontal row */
  flex: 0 0 100%; /* Each slide takes full width */
  width: 100%;
  display: flex; /* center image within available height */
  align-items: flex-start; /* top align image */
  justify-content: center;
  height: 100%;
}

/* Override Woo default which hides non-first gallery images */
.pdp-carousel-slide .woocommerce-product-gallery__image {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  transform: none !important;
}

.pdp-carousel-slide .woocommerce-product-gallery__image a {
  display: block !important;
}

.pdp-carousel-track.dragging {
  cursor: grabbing;
}

/* Remove old show/hide logic - now using transform */

.pdp-carousel-slide-link { display:block; width:100%; height:100%; }
.pdp-carousel-bg{
  width: 100%;
  height: 100%;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Smooth transitions once images are preloaded */
.pdp-carousel-slide.smooth-transition {
  transition: opacity 0.2s ease;
}

/* Loading state for non-preloaded images */
.pdp-carousel-slide img[data-loading="true"] {
  opacity: 0.7;
}

/* Carousel container - hide slides outside view */
.pdp-carousel-container {
  position: relative;
  width: 100%;
  overflow: visible; /* Let dot bar be visible */
  display: flex; /* vertical stack: track above dots */
  flex-direction: column;
  aspect-ratio: 0.45 / 1; /* requested ratio */
  max-height: calc(100vh - var(--header-h));
}

/* 2-column and 1-column: limit carousel to 70% width and center it */
.two-photos .pdp-carousel-container,
.one-photos .pdp-carousel-container {
  width: 100%;
  margin: 0; /* Full width in these columns */
}

/* Remove the problematic height matching - let columns size naturally */

/* 1-column layout: same simple approach */

/* Carousel dots - fixed height at bottom */
.pdp-carousel-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  padding: 0;
  height: 40px; /* reserve for 40x40 dots */
  flex-shrink: 0; /* Don't shrink */
}

/* Swiper bullets styled like our dots (7px inside 40x40 hit area) */
.swiper-pagination {
  position: static !important;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  margin: 20px 0; /* 20px top/bottom as requested */
  gap: 0;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 0 !important;
  left: 0; right: 0;
  width: 100%;
}
.swiper-pagination-bullet {
  width: 40px !important;
  height: 40px !important;
  display: inline-block !important;
  position: relative;
  background: transparent !important;
  opacity: 1 !important;
  margin: 0 !important; /* remove default side margins */
  vertical-align: middle;
}
.swiper-pagination-bullet::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #ccc;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background-color 0.2s ease;
}
.swiper-pagination-bullet-active::before {
  background-color: #000;
}
.swiper-pagination-bullet:hover::before {
  background-color: #666;
}

/* Zoom-in cursor over carousel images */
.pdp-carousel-container .pdp-carousel-slide-link,
.pdp-carousel-container .pdp-carousel-bg{
  cursor: zoom-in;
}

.pdp-carousel-dot {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.pdp-carousel-dot::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #ccc;
  display: block;
  transition: background-color 0.2s ease;
}

.pdp-carousel-dot.active::before {
  background-color: #000;
}

.pdp-carousel-dot:hover::before {
  background-color: #666;
}

/* =========================
   SINGLE BUYBOX POSITIONING
   ========================= */

/* Single buybox instance - positioned normally in desktop, moved by JavaScript for other layouts */
.pdp-buybox-single {
  /* Default styling - no special positioning */
  width: 100%;
  position: static;
  display: block;
}

/* Placeholder divs - initially hidden, shown when buybox is moved into them */
.pdp-buybox-placeholder {
  visibility: hidden;
  pointer-events: none;
  min-height: 50px; /* Maintain some space for layout */
}

/* When placeholder contains buybox, make it visible */
.pdp-buybox-placeholder:has(.pdp-buybox-single) {
  visibility: visible;
  pointer-events: all;
}

/* =========================
   COLOR SWATCHES
   ========================= */

/* Color swatches container */
.color-swatches-container {
  margin: 0 0 15px 0;
  padding: 0; /* Remove any padding */
}

/* =========================
   PDP LIGHTBOX OVERLAY
   ========================= */
.pdp-lightbox-overlay{
  position: fixed;
  inset: 0;
  background: #fff;
  z-index: 10000;
  display: flex;
  cursor: zoom-out; /* native minus glass on supported browsers */
}

.pdp-lightbox-inner{
  position: relative;
  flex: 1 1 auto;
  height: 100vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.pdp-lightbox-images{
  width: 100%;
  max-width: 90vw;
  margin: 0 auto;
  padding: 20px 0 40px;
}

.pdp-lightbox-image{ margin: 0 0 60px; }
.pdp-lightbox-image img{
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: none; /* allow full resolution, constrained by viewport width */
  margin: 0 auto;
}

.pdp-lightbox-close{
  position: fixed;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  z-index: 10002;
  cursor: pointer; /* ensure pointer, not zoom-out */
  display: flex;
  justify-content: center;
  align-items: center;
}

.pdp-lightbox-bullets{
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 0;
  z-index: 10001;
}

.pdp-lightbox-bullet-wrap{
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  cursor: pointer;
  color: gray;
  width: 60px;
  height: 60px;
}

.pdp-lightbox-bullet{
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ccc;
  border: none;
  padding: 0;
  cursor: pointer; /* ensure pointer, not zoom-out */
}

.pdp-lightbox-bullet.active{ background:#000; }

/* Hide bullets on 1-col layout (≤700px) */
@media (max-width:700px){
  .pdp-lightbox-bullets{ display:none; }
}

/* Scroll lock handled via fixed-body method in JS (no class needed) */

/* Center the shared loader class when used inside the image lightbox */
.pdp-lightbox-overlay > .pdp-sizeguide-loading{
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  z-index: 10003;
  color: #111;
  font-size: 12px;
  font-weight: 500;
}

/* Selected color name display - left aligned */
.selected-color-name {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  margin: 0 0 8px 0; /* Clean margin, no offset */
  padding: 0; /* No padding */
  min-height: 20px; /* Prevents layout shift */
  text-align: left;
}

/* Swatches grid */
.color-swatches {
  display: flex;
  flex-wrap: wrap;
  gap: 12px; /* Increased gap to accommodate 24px outline */
  align-items: center;
  margin: 0; /* Remove any margin */
  padding: 0; /* Remove any padding */
  transform: translateX(4px); /* Nudge right to align with text */
}

/* Individual color swatch button */
.color-swatch {
  width: 16px;
  height: 16px;
  border: none;
  border-radius: 0; /* Perfect square, no rounding */
  cursor: pointer;
  transition: all 0.2s ease;
  background: none;
  padding: 0;
  position: relative;
  overflow: visible; /* Allow outline to show outside */
}

/* Color swatch hover state */
.color-swatch:hover {
  /* Subtle hover effect */
  opacity: 0.8;
}

/* Selected color swatch - double border effect (white + black) */
.color-swatch.selected {
  /* Create double border: inner white (3px) + outer black (4px) for better spacing */
  box-shadow: 
    0 0 0 3px #fff,    /* Inner white border (margin effect) */
    0 0 0 4px #000;    /* Outer black border */
}

/* Remove checkmark overlay - no text inside */
.color-swatch.selected::after {
  display: none;
}

/* Undefined color swatches - white box with dashed border */
.color-swatch-undefined {
  background-color: #fff;
  border: 1px dashed #ccc !important;
}

.color-swatch-undefined:hover {
  border-color: #999 !important;
  opacity: 1; /* Override the opacity hover effect */
}

.color-swatch-undefined.selected {
  /* Same double border effect but with dashed inner border */
  box-shadow: 
    0 0 0 3px #fff,    /* Inner white border (margin effect) */
    0 0 0 4px #000;    /* Outer black border */
  border: 1px dashed #666 !important; /* Keep the dashed border visible */
}

/* Remove focus outline - no blue highlight on click */
.color-swatch:focus {
  outline: none;
}

/* Remove any browser default focus styles */
.color-swatch:focus,
.color-swatch:active {
  outline: none;
  border: none;
}

/* Special handling for white/light colors - add subtle border for visibility */
.color-swatch[style*="background-color: #fff"],
.color-swatch[style*="background-color: #ffffff"],
.color-swatch[style*="background-color: white"] {
  border: 1px solid #e0e0e0;
}

.color-swatch[style*="background-color: #fff"].selected,
.color-swatch[style*="background-color: #ffffff"].selected,
.color-swatch[style*="background-color: white"].selected {
  box-shadow: 
    0 0 0 3px #fff,    /* Inner white border (margin effect) - updated to 3px */
    0 0 0 4px #000;    /* Outer black border - same double border effect */
}

/* Mobile responsiveness */
@media (max-width: 600px) {
  .color-swatch {
    width: 16px; /* Keep same size on mobile */
    height: 16px;
  }
  
  .color-swatches {
    gap: 10px; /* Slightly smaller gap on mobile */
  }
  
  .selected-color-name {
    font-size: 13px;
  }
}

/* =========================
   TEXT SELECTION
   ========================= */
::selection {
  background: #111;
  color: #fff;
}
::-moz-selection {
  background: #111;
  color: #fff;
}

/* PDP brand link hover underline */
.pdp-meta-brand a:hover {
  text-decoration: underline;
}

/* PDP custom fields layout */
.pdp-custom-fields {
  line-height: 1.5;
}

/* PDP custom fields link styling */
.pdp-custom-fields a {
  text-decoration: underline;
  color: #111;
}

