 @charset "UTF-8";

 html {
     overflow-x: hidden;
 }

 *, *::before, *::after {
		   box-sizing: border-box;
	       }

 body {
     margin: 0;
     font-family: 'Vegur', sans-serif;
     color: #1a1c1e;
     background: #f9f9fc;
     line-height: 1.5;
 }

 img {
     max-width: 100%;
     height: auto;
 }

 a {
     color: #106802;
 }

 h1, h2, h3, h4, h5, h6 {
     font-family: 'Vegur', sans-serif;
 }

 p {
     margin-top: 0;
 }

 ul {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 :root {
     --pico-color: #1a1c1e;
     --libreoffice-primary-color: #106802;
 }

  @font-face {
     font-family: 'Vegur';
     src: url('/themes/libreofficenew/fonts/Vegur-Regular.otf') format('opentype');
     font-weight: 400;
     font-style: normal;
 }

 @font-face {
     font-family: 'Vegur';
     src: url('/themes/libreofficenew/fonts/Vegur-Bold.otf') format('opentype');
     font-weight: 700;
     font-style: normal;
 }

 .site-header {
     position: fixed;
     top: 0;
     left: 0;
     right: 0;
     z-index: 999;
     background: rgba(255, 255, 255, 0.8);
     backdrop-filter: blur(20px);
     -webkit-backdrop-filter: blur(20px);
     padding: 0 2rem;
     border-bottom: 1px solid var(--libreoffice-primary-color);
     margin-bottom: 12px;
 }

 .site-header nav {
     display: flex;
     align-items: center;
     justify-content: space-between;
     height: 4rem;
 }

 .site-header ul {
     display: flex;
     align-items: center;
     gap: 0.5rem;
 }

 .site-header li {
     display: flex;
     align-items: center;
 }

 .site-header li img {
     height: 2.5rem;
     display: block;
 }

 .site-header a:not([role="button"]) {
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     letter-spacing: -0.02em;
     color: #71717a;
     text-decoration: none;
     background: transparent;
     line-height: 1;
 }

 .site-header a:not([role="button"]):hover {
     color: var(--libreoffice-primary-color);
     background: transparent;
 }

 .site-header a[role="button"] {
     display: inline-flex;
     align-items: center;
     background-color: var(--libreoffice-primary-color);
     color: #fff;
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 1rem;
     padding: 0.75rem 1.5rem;
     text-decoration: none;
     border: none;
     cursor: pointer;
     line-height: 1;
     white-space: nowrap;
 }

 .site-header a[role="button"]:hover {
     background-color: #0d5201;
 }

 body {
     padding-top: calc(4rem + 13px);
 }

 .editorial-grid {
     display: grid;
     grid-template-columns: repeat(12, 1fr);
     gap: 1.5rem;
 }

 @media (min-width: 768px) {
     .editorial-grid {
	 gap: 3rem;
     }
 }

 .col-span-12 { grid-column: span 12; }
 .col-span-10 { grid-column: span 10; }

 @media (min-width: 1024px) {
     .col-start-8-lg { grid-column-start: 8; }
     .col-span-5-lg { grid-column: span 5; }
 }

 .text-bleed {
     letter-spacing: -0.05em;
     line-height: 0.85;
 }

 .hero-section {
     padding: 2rem 1rem 6rem;
     position: relative;
     overflow: hidden;
 }

 @media (min-width: 768px) {
     .hero-section {
	 padding: 2rem 2rem 8rem;
     }
 }

 .hero-label {
     display: inline-block;
     color: var(--libreoffice-primary-color);
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 0.75rem;
     text-transform: uppercase;
     letter-spacing: 0.2em;
     margin-bottom: 1.5rem;
 }

 .hero-headline {
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 14vw;
     line-height: 0.85;
     letter-spacing: -0.05em;
     margin-bottom: 2rem;
 }

 @media (min-width: 480px) {
     .hero-headline {
	 font-size: 12vw;
     }
 }

 @media (min-width: 1024px) {
     .hero-headline {
	 font-size: 9rem;
     }
 }

 .hero-headline-accent {
     color: var(--libreoffice-primary-color);
 }

 .hero-meta {
     grid-column: 1 / -1;
     padding-top: 2rem;
     border-left: 4px solid var(--libreoffice-primary-color);
     padding-left: 1.5rem;
 }

 @media (min-width: 1024px) {
     .hero-meta {
	 grid-column: 6 / 13;
	 padding-left: 3rem;
     }
 }

 .hero-desc {
     font-family: 'Vegur', sans-serif;
     font-size: 1.5rem;
     line-height: 1.625;
     color: var(--pico-color, #1a1c1e);
     margin-bottom: 2rem;
     max-width: 36rem;
 }

 .hero-details {
     display: flex;
     flex-direction: column;
     gap: 3rem;
 }

 @media (min-width: 768px) {
     .hero-details {
	 flex-direction: row;
	 gap: 3rem;
     }
 }

 .hero-detail-label {
     display: block;
     color: var(--libreoffice-primary-color);
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 0.75rem;
     text-transform: uppercase;
     letter-spacing: 0.2em;
     margin-bottom: 0.25rem;
 }

 .hero-detail-value {
     font-family: 'Vegur', sans-serif;
     font-weight: 500;
     font-size: 1.25rem;
     color: var(--pico-color, #1a1c1e);
 }

 .venue-section {
     background-color: #f3f3f6;
     padding: 4rem 1rem;
     margin-bottom: 0;
 }

 @media (min-width: 768px) {
     .venue-section {
	 padding: 8rem 2rem;
     }
 }

 .venue-heading {
     grid-column: 1 / -1;
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 3.75rem;
     line-height: 1.1;
     margin-bottom: 3rem;
 }

 @media (min-width: 768px) {
     .venue-heading {
	 grid-column: span 4;
	 margin-bottom: 0;
     }
 }

 .venue-content {
     grid-column: 1 / -1;
     display: flex;
     flex-direction: column;
 }

 @media (min-width: 768px) {
     .venue-content {
	 grid-column: 5 / -1;
     }
 }

 .venue-image {
     aspect-ratio: 16 / 9;
     width: 100%;
     margin-bottom: 3rem;
     filter: grayscale(1) contrast(1.25);
     transition: filter 0.7s;
     overflow: hidden;
 }

 .venue-image:hover {
     filter: grayscale(0) contrast(1);
 }

 .venue-image img {
     width: 100%;
     height: 100%;
     object-fit: cover;
 }

 .venue-info {
     display: flex;
     flex-direction: column;
     gap: 2rem;
 }

 @media (min-width: 768px) {
     .venue-info {
	 flex-direction: row;
	 justify-content: space-between;
	 align-items: flex-end;
     }
 }

 .venue-text {
     font-family: 'Vegur', sans-serif;
     font-size: 1.25rem;
     line-height: 1.625;
     color: var(--pico-color, #1a1c1e);
     max-width: 28rem;
 }

 .venue-link {
     font-family: 'Vegur', sans-serif;
     font-size: 1.125rem;
     font-weight: 500;
     color: var(--libreoffice-primary-color);
     text-decoration: none;
     white-space: nowrap;
     display: inline;
     transition: color 0.2s;
 }

 .venue-link:hover {
     color: var(--libreoffice-primary-color);
     border-color: var(--libreoffice-primary-color);
 }

 .cfp-section {
     background-color: var(--libreoffice-primary-color);
     color: #ffffff;
     padding: 4rem 1rem;
     margin-bottom: 0;
     position: relative;
     overflow: hidden;
 }

 @media (min-width: 768px) {
     .cfp-section {
	 padding: 8rem 2rem;
     }
 }

 .cfp-section h2 {
     color: #ffffff;
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 10vw;
     margin-bottom: 3rem;
 }

 @media (min-width: 1024px) {
     .cfp-section h2 {
	 font-size: 7rem;
     }
 }

 .cfp-section p {
     color: #ffffff;
     font-size: 1.125rem;
     line-height: 1.7;
     margin-bottom: 1.5rem;
     max-width: 56rem;
 }

 .cfp-watermark {
     position: absolute;
     right: 0;
     bottom: 0;
     font-size: 30rem;
     font-weight: 700;
     color: #ffffff;
     opacity: 0.07;
     transform: translate(25%, 25%);
     user-select: none;
     pointer-events: none;
     font-family: 'Vegur', sans-serif;
     line-height: 1;
 }

 .cfp-content {
     max-width: 56rem;
     position: relative;
     z-index: 10;
 }

 .cfp-deadline {
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 1.25rem;
     margin-top: 2rem;
     margin-bottom: 2.5rem;
     color: #ffffff;
 }

 .cfp-button {
     display: inline-block;
     background-color: #ffffff;
     color: var(--libreoffice-primary-color);
     font-family: 'Vegur', sans-serif;
     font-weight: 700;
     font-size: 1.25rem;
     padding: 1.25rem 3rem;
     text-decoration: none;
     border: none;
     cursor: pointer;
     transition: background-color 0.2s;
 }

 .cfp-button:hover {
     background-color: #e0e0e0;
 }

 .site-footer {
     padding: 24px 2rem;
     display: grid;
     grid-template-columns: 1fr;
     border-top: 1px solid #f5f5f4;
     gap: 2rem;
 }

 @media (min-width: 768px) {
     .site-footer {
	 grid-template-columns: 2fr 4fr;
     }
 }

 .site-footer .copyright {
     font-size: 0.8rem;
     color: #89827e;
     line-height: 1.6;
 }

 .site-footer a {
     text-decoration: none;
     color: var(--libreoffice-primary-color);
 }

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

 .site-footer .cnotice {
     font-family: 'Vegur', sans-serif;
     color: var(--pico-color, #1a1c1e);
     font-weight: 700;
     margin-bottom: 0.5rem;
 }
 