







/* 1a. Containers */


  



  


/* 1b. Colors */







/* 1c. Typography */





























/* 1d. Buttons */






























/* 1e. Forms */






























/* 1f. Icons */
















/* 1g. Cards */











/* 1h. Tables */













/* 1i. Website header */



























/* 1j. Website footer */













/* Drag and drop layout styles */

.dnd-section {
  padding: 60px 20px;
}

/* Padding on blog post sections */

.blog-post-section {
  padding: 60px 0;
}

/* .content-wrapper is used for blog post and system templates and .header-wrapper is used for the website header module */

.dnd-section > .row-fluid,
.content-wrapper,
.header__wrapper {
  max-width: 1000px;
}





html {
  font-size: 16px;
}

body {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  background-color: #ffffff;
  color: #231f20;
  font-size: 16px;
}

/* Paragraphs */

p {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
}

/* Anchors */

a {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #425b76;
}

a:hover,
a:focus {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #415239;
}

a:active {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #91a289;
}

/* Headings */

h1 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 40px;
  text-transform: none;
}

h2 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 32px;
  text-transform: none;
}

h3 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 28px;
  text-transform: none;
}

h4 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 24px;
  text-transform: none;
}

h5 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 20px;
  text-transform: none;
}

h6 {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 16px;
  text-transform: none;
}

/* Blockquotes */

blockquote {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  border-left-color: #3574E3;
  color: #231f20;
  font-size: 24px;
}

blockquote > footer {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  font-size: 16px;
}

/* Horizontal rules */

hr {
  border-bottom-color: #444444;
}





/* Primary button */

button,
.button,
.hs-button {
  border: 1px solid #425b76;

  padding-top: 10px;
padding-right: 20px;
padding-bottom: 10px;
padding-left: 20px;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
  border-radius: 0px;
  color: #ffffff;
  fill: #ffffff;
  font-size: 16px;
  text-transform: none;
}

button:hover,
button:focus,
button:active,
.button:hover,
.button:focus,
.button:active,
.hs-button:hover,
.hs-button:focus,
.hs-button:active {
  border: 1px solid #425b76;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(65, 82, 57, 1.0)

;
  color: #ffffff;
  fill: #ffffff;
}

button:active,
.button:active,
.hs-button:active {
  border: 1px solid #425b76;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: rgba(145, 162, 137, 100);
  border-color: #92abc6;
  color: #ffffff;
  fill: #ffffff;
}

/* Secondary button */

.button.button--secondary {
  border: 1px solid #425b76;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 0.0)

;
  border-radius: 0px;
  color: #425b76;
  fill: #425b76;
  text-transform: none;
}

.button.button--secondary:hover,
.button.button--secondary:focus,
.button.button--secondary:active {
  border: 1px solid #425b76;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
  color: #ffffff;
  fill: #ffffff;
}

.button.button--secondary:active {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: rgba(146, 171, 198, 100);
  border: 1px solid #425b76;

  border-color: #92abc6;
  color: #ffffff;
  fill: #ffffff;
}

/* Simple button */

.button.button--simple {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #425b76;
  fill: #425b76;
}

.button.button--simple:hover,
.button.button--simple:focus {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #415239;
  fill: #415239;
}

.button.button--simple:active {
  font-weight: 400; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #91a289;
  fill: #91a289;
}

/* Button sizing */

.button.button--small {
  padding-top: 10px;
padding-right: 20px;
padding-bottom: 10px;
padding-left: 20px;

  font-size: 14px;
}

.button.button--large {
  padding-top: 10px;
padding-right: 20px;
padding-bottom: 10px;
padding-left: 20px;

  font-size: 18px;
}





/* Form */

form {
  border: 1px none #3574E3;

  padding: 45px;

  background-color: 

  
  
    
  


  rgba(53, 116, 227, 1.0)

;
  border-radius: 0px;
}

/* Form title */

.form-title {
  border: 1px none #425b76;

  padding: 25px;

  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  color: #ffffff;
  font-size: 28px;
  text-transform: ;
}

/* Labels */

form label {
  padding-top: 6px;
padding-right: 0px;
padding-bottom: 6px;
padding-left: 0px;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #231f20;
  font-size: 16px;
}

/* Help text */

form legend {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #231f20;
  font-size: 14px;
}

/* Form fields */

form input[type='text'],
form input[type='email'],
form input[type='password'],
form input[type='tel'],
form input[type='number'],
form input[type='search'],
form select,
form textarea {
  border: 1px none #444444;

  padding: 10px;

  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  border-radius: 0px;
  color: #231f20;
  font-size: 16px;
}

/* Form fields - placeholders */

::-webkit-input-placeholder {
  color: #444444;
}

::-moz-placeholder {
  color: #444444;
}

:-ms-input-placeholder {
  color: #444444;
}

:-moz-placeholder {
  color: #444444;
}

::placeholder {
  color: #444444;
}

/* Form fields - date picker */

form .hs-dateinput:before {
  right: 10px;
}

form .pika-table thead th {
  background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
  color: #ffffff;
}

form td.is-today .pika-button {
  color: #231f20;
}

form .is-selected .pika-button {
  background-color: #3574E3;
  color: #231f20;
}

form .pika-button:hover {
  background-color: #425b76 !important;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext *,
form .hs-richtext p,
form .hs-richtext h1,
form .hs-richtext h2,
form .hs-richtext h3,
form .hs-richtext h4,
form .hs-richtext h5,
form .hs-richtext h6 {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #231f20;
}

/* GDPR */

form .legal-consent-container,
form .legal-consent-container .hs-richtext,
form .legal-consent-container .hs-richtext p {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #231f20;
  font-size: 14px;
}

/* Submit button */



  form input[type='submit'],
  form .hs-button {
    border: 1px solid #425b76;

    font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
    background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
    border-radius: 0px;
    color: #ffffff;
    text-transform: none;
  }

  form input[type='submit']:hover,
  form input[type='submit']:focus,
  form .hs-button:hover,
  form .hs-button:focus {
    border: 1px solid #425b76;

    font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
    background-color: 

  
  
    
  


  rgba(65, 82, 57, 1.0)

;
    color: #ffffff;
  }

  form input[type='submit']:active,
  form .hs-button:active {
    border: 1px solid #425b76;

    font-family: Montserrat, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
    background-color: rgba(145, 162, 137, 100);
    border-color: #92abc6;
    color: #ffffff;
}





  form input[type='submit'],
  form .hs-button {
    padding-top: 10px;
padding-right: 20px;
padding-bottom: 10px;
padding-left: 20px;

    font-size: 16px;
  }



/* Inline thank you message */

.submitted-message {
  border: 1px none #3574E3;

  padding: 45px;

  background-color: 

  
  
    
  


  rgba(53, 116, 227, 1.0)

;
  border-radius: 0px;
}





/* Default icon (regular/dark) */

.icon {
  padding: 15px;

  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

.icon svg {
  fill: #ffffff;
  height: 16px;
  width: 16px;
}

/* Light icon */

.icon--light .icon {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

.icon--light svg {
  fill: #ffffff;
}

/* Size */

.icon--small svg {
  height: 12px;
  width: 12px;
}

.icon--small .icon {
  padding: 10px;

}

.icon--large svg {
  height: 24px;
  width: 24px;
}

.icon--large .icon {
  padding: 25px;

}





/* Table */

table {
  border: 1px solid #444444;

  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Table cells */

th,
td {
  border: 1px solid #444444;

  padding: 10px;

  color: #231f20;
}

/* Table header */

thead th,
thead td {
  background-color: 

  
  
    
  


  rgba(66, 91, 118, 1.0)

;
  color: #ffffff;
}

/* Table footer */

tfoot th,
tfoot td {
  background-color: 

  
  
    
  


  rgba(53, 116, 227, 1.0)

;
  color: #231f20;
}





/* Header container */

.header {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Header content color */

.header p,
.header h1,
.header h2,
.header h3,
.header h4,
.header h5,
.header h6,
.header a:not(.button),
.header span,
.header div,
.header li,
.header blockquote,
.header .tabs__tab,
.header .tabs__tab:hover,
.header .tabs__tab:focus,
.header .tabs__tab:active {
  color: #231f20;
}

/* Header top bar */

.header__top {
  background-color: 

  
  
    
  


  rgba(53, 116, 227, 1.0)

;
}

/* Language switcher */

.header__language-switcher-current-label > span {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #231f20;
  font-size: 16px;
  text-transform: none;
}

.header__language-switcher:hover .header__language-switcher-current-label > span,
.header__language-switcher:focus .header__language-switcher-current-label > span {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #000000;
}

.header__language-switcher-child-toggle svg {
  fill: #231f20;
}

/* Language switcher - submenu */

.header__language-switcher .lang_list_class {
  border-color: #444444;
}

.header__language-switcher .lang_list_class li {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

.header__language-switcher .lang_list_class a:not(.button) {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #231f20;
  font-size: 16px;
  text-transform: none;
}

.header__language-switcher .lang_list_class a:hover,
.header__language-switcher .lang_list_class a:focus {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  color: #000000;
}

.header__language-switcher .lang_list_class a:active {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Header bottom */

.header__bottom {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Logo */

.header__logo-company-name {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
  font-size: 40px;
  text-transform: none;
}

/* Menu */

@media (max-width: 767px) {
  .header__menu--mobile {
    background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  }
}

/* Menu items */

.header__menu-link {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  font-size: 16px;
  text-transform: none;
}

@media (max-width: 767px) {
  .header__menu-item--depth-1 {
    border-top: 1px solid #444444;
  }
}

/* Menu items - top level */

.header__menu-item--depth-1 > .header__menu-link:not(.button) {
  color: #231f20;
}

.header__menu-item--depth-1 > .header__menu-link:hover,
.header__menu-item--depth-1 > .header__menu-link:focus {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #000000;
}

.header__menu-item--depth-1 > .header__menu-link:active {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #505050;
}

.header__menu-item--depth-1 > .header__menu-link--active-link:not(.button) {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #000000;
}

.header__menu-item--depth-1 .header__menu-child-toggle svg {
  fill: #231f20;
}

/* Menu items - submenus */

.header__menu-submenu {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  border-color: #444444;
}

.header__menu-submenu .header__menu-link:not(.button) {
  color: #231f20;
}

.header__menu-submenu .header__menu-item:hover,
.header__menu-submenu .header__menu-item:focus {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

.header__menu-submenu .header__menu-link:hover,
.header__menu-submenu .header__menu-link:focus {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
  color: #000000;
}

.header__menu-submenu .header__menu-link:active {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

.header__menu-submenu .header__menu-link--active-link:not(.button) {
  color: ;
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Menu icons */

.header__menu-toggle svg {
  fill: #231f20;
}





/* Footer container */

.footer {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
}

/* Footer content color */

.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6,
.footer p,
.footer a:not(.button),
.footer span,
.footer div,
.footer li,
.footer blockquote,
.footer .tabs__tab,
.footer .tabs__tab:hover,
.footer .tabs__tab:focus,
.footer .tabs__tab:active {
  color: #231f20;
}

.footer hr {
  border-bottom-color: #231f20 !important;
}

/* Footer menu */

.footer .hs-menu-wrapper a {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #231f20;
  font-size: 16px;
  text-transform: none;
}

.footer .hs-menu-wrapper a:hover,
.footer .hs-menu-wrapper a:focus {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #000000;
}

.footer .hs-menu-wrapper a:active {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #505050;
}

.footer .hs-menu-wrapper .active > a {
  font-weight: bold; text-decoration: underline; font-family: Montserrat, sans-serif; font-style: normal;
  color: #000000;
}






/* Dark card */

.card--dark {
  border: 1px solid #231f20;

  background-color: 

  
  
    
  


  rgba(35, 31, 32, 1.0)

;
  border-radius: 0px;
  color: #ffffff;
}

.card--dark summary,
.card--dark p,
.card--dark h1,
.card--dark h2,
.card--dark h3,
.card--dark h4,
.card--dark h5,
.card--dark h6,
.card--dark a:not(.button),
.card--dark span,
.card--dark div,
.card--dark li,
.card--dark blockquote {
  color: #ffffff;
}

/* Light card */

.card--light {
  border: 1px solid #444444;

  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  border-radius: 0px;
  color: #231f20;
}

.card--light summary,
.card--light p,
.card--light h1,
.card--light h2,
.card--light h3,
.card--light h4,
.card--light h5,
.card--light h6,
.card--light a:not(.button),
.card--light span,
.card--light div,
.card--light li,
.card--light blockquote {
  color: #231f20;
}





/* Error templates */

.error-page:before {
  font-family: Montserrat, sans-serif; font-style: normal; font-weight: 400; text-decoration: none;
}

/* System templates */

#email-prefs-form,
#email-prefs-form h1,
#email-prefs-form h2 {
  color: #231f20;
}

/* Search template */

.hs-search-results__title {
  font-size: 32px;
}

/* Backup unsubscribe template */

.backup-unsubscribe input[type='email'] {
  font-size: 16px !important;
  padding: padding: 10px;
 !important;
}





/* Accordion */

.accordion__summary,
.accordion__summary:before {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  font-size: 24px;
}

.card--dark .accordion__summary:before {
  color: #ffffff;
}

.card--light .accordion__summary:before {
  color: #231f20;
}

/* Blog listing, recent posts, related posts, and blog post */

.blog-listing__post-title {
  text-transform: none;
}

.blog-listing__post-title-link {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #231f20;
}

.blog-listing__post-title-link:hover,
.blog-listing__post-title-link:focus {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #000000;
}

.blog-listing__post-title-link:active {
  font-family: 'Source Serif Pro', serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #736f70;
}

.blog-listing__post-tag {
  color: #231f20;
}

.blog-listing__post-tag:hover,
.blog-listing__post-tag:focus {
  color: #000000;
}

.blog-listing__post-tag:active {
  color: #736f70;
}

.blog-listing__post-author-name,
.blog-post__author-name {
  color: #231f20;
}

.blog-listing__post-author-name :hover,
.blog-listing__post-author-name :focus,
.blog-post__author-name:hover,
.blog-post__author-name:focus {
  color: #000000;
}

.blog-listing__post-author-name :active,
.blog-post__author-name:active {
  color: #736f70;
}

/* Image gallery */

.image-gallery__close-button-icon:hover,
.image-gallery__close-button-icon:focus {
  background-color: rgba(175, 175, 175, 1.0);
}

.image-gallery__close-button-icon:active {
  background-color: rgba(255, 255, 255, 1.0);
}

.icon--light .image-gallery__close-button-icon:hover,
.icon--light .image-gallery__close-button-icon:focus {
  background-color: rgba(175, 175, 175, 1.0);
}

.icon--light .image-gallery__close-button-icon:active {
  background-color: rgba(255, 255, 255, 1.0);
}

/* Pagination */

.pagination__link-icon svg {
  fill: #425b76;
  height: 16px;
  width: 16px;
}

.pagination__link:hover .pagination__link-icon svg,
.pagination__link:focus .pagination__link-icon svg {
  fill: #415239;
}

.pagination__link:active .pagination__link-icon svg {
  fill: #92abc6;
}

.pagination__link--active {
  border-color: #444444
}

/* Pricing card */

.pricing-card__heading {
  background-color: #425b76;
}

/* Social follow and social sharing */

.social-follow__icon:hover,
.social-follow__icon:focus,
.social-sharing__icon:hover,
.social-sharing__icon:focus {
  background-color: rgba(175, 175, 175, 1.0);
}

.social-follow__icon:active,
.social-sharing__icon:active {
  background-color: rgba(255, 255, 255, 1.0);
}

.icon--light .social-follow__icon:hover,
.icon--light .social-follow__icon:focus,
.icon--light .social-sharing__icon:hover,
.icon--light .social-sharing__icon:focus {
  background-color: rgba(175, 175, 175, 1.0);
}

.icon--light .social-follow__icon:active,
.icon--light .social-sharing__icon:active {
  background-color: rgba(255, 255, 255, 1.0);
}

/* Tabs */

.tabs__tab,
.tabs__tab:hover,
.tabs__tab:focus,
.tabs__tab:active {
  border-color: #231f20;
  color: #231f20;
}

/* ===== SOUNARIA x Bongiovi DPS Page Styles ===== */
.sounaria-hero { min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 120px 24px 80px; background: linear-gradient(160deg, #0d0d0d 0%, #1a0a2e 50%, #0d0d0d 100%); }
.sounaria-hero .badge { display: inline-block; font-size: 0.72rem; letter-spacing: 0.2em; color: #b06aff; border: 1px solid #b06aff; padding: 5px 16px; border-radius: 20px; margin-bottom: 32px; text-transform: uppercase; }
.sounaria-hero .logo { font-size: clamp(3rem,10vw,6.5rem); font-weight: 900; letter-spacing: 0.05em; color: #fff; line-height: 1; margin-bottom: 12px; font-family: 'Helvetica Neue', Arial, sans-serif; }
.sounaria-hero .sub { font-size: clamp(0.85rem,2vw,1rem); letter-spacing: 0.18em; color: rgba(255,255,255,0.55); margin-bottom: 48px; text-transform: uppercase; }
.sounaria-hero h1 { font-size: clamp(1.4rem,4vw,2.4rem); font-weight: 700; color: #fff; margin-bottom: 20px; line-height: 1.5; }
.sounaria-hero .desc { font-size: clamp(0.9rem,2vw,1.05rem); color: rgba(255,255,255,0.65); max-width: 600px; margin: 0 auto 56px; line-height: 1.9; }
.sounaria-hero .cta-group { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; }
.sounaria-hero .btn-primary { display: inline-block; padding: 14px 36px; background: #b06aff; color: #fff !important; font-size: 0.9rem; font-weight: 600; letter-spacing: 0.08em; border-radius: 3px; text-decoration: none; }
.sounaria-hero .btn-outline { display: inline-block; padding: 14px 36px; border: 1px solid rgba(255,255,255,0.4); color: #fff !important; font-size: 0.9rem; border-radius: 3px; text-decoration: none; }
.sounaria-section { padding: 96px 24px; }
.sounaria-section .inner { max-width: 1000px; margin: 0 auto; }
.sounaria-section .label { font-size: 0.72rem; letter-spacing: 0.22em; text-transform: uppercase; color: #b06aff; margin-bottom: 16px; }
.sounaria-section h2 { font-size: clamp(1.6rem,4vw,2.4rem); font-weight: 800; line-height: 1.35; margin-bottom: 24px; }
.sounaria-section .body { font-size: 1rem; color: #444; max-width: 700px; line-height: 1.9; }
.sounaria-concept { background: #f7f7f9; }
.concept-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); gap: 32px; margin-top: 56px; }
.concept-card { background: #fff; border-radius: 8px; padding: 36px 32px; border-top: 3px solid #b06aff; box-shadow: 0 2px 16px rgba(0,0,0,0.06); }
.concept-card .num { font-size: 2rem; font-weight: 900; color: #b06aff; opacity: 0.3; line-height: 1; margin-bottom: 12px; }
.concept-card h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: 12px; color: #1a1a1a; }
.concept-card p { font-size: 0.92rem; color: #555; line-height: 1.8; }
.dps-banner { background: linear-gradient(135deg,#ff6eb4 0%,#4fc3f7 100%); border-radius: 12px; padding: 48px 40px; color: #fff; margin-bottom: 56px; }
.dps-banner .dps-label { font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase; opacity: 0.85; margin-bottom: 16px; }
.dps-banner h2 { font-size: clamp(1.4rem,3.5vw,2rem); font-weight: 800; line-height: 1.3; margin-bottom: 16px; color: #fff; }
.dps-banner p { font-size: 0.95rem; opacity: 0.9; max-width: 600px; line-height: 1.8; }
.dps-features { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 24px; }
.dps-feature { padding: 28px 24px; border: 1px solid #e8e8ee; border-radius: 8px; }
.dps-feature .icon { font-size: 1.6rem; margin-bottom: 12px; }
.dps-feature h3 { font-size: 1rem; font-weight: 700; margin-bottom: 8px; color: #1a1a1a; }
.dps-feature p { font-size: 0.88rem; color: #666; line-height: 1.7; }
.sounaria-fusion { background: #0d0d0d; }
.sounaria-fusion .label { color: #b06aff; }
.sounaria-fusion h2 { color: #fff; }
.sounaria-fusion .body { color: rgba(255,255,255,0.65); }
.fusion-flow { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin-top: 56px; }
.fusion-item { text-align: center; padding: 32px 24px; flex: 1; min-width: 200px; }
.fusion-item .fi-icon { width: 72px; height: 72px; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; }
.fi-sounaria { background: rgba(176,106,255,0.2); border: 1px solid #b06aff; }
.fi-dps { background: rgba(79,195,247,0.2); border: 1px solid #4fc3f7; }
.fi-result { background: linear-gradient(135deg,rgba(176,106,255,0.3),rgba(79,195,247,0.3)); border: 1px solid rgba(255,255,255,0.3); }
.fusion-item h3 { font-size: 1rem; font-weight: 700; margin-bottom: 8px; color: #fff; }
.fusion-item p { font-size: 0.85rem; color: rgba(255,255,255,0.55); line-height: 1.7; }
.fusion-arrow { font-size: 1.5rem; color: rgba(255,255,255,0.25); padding: 0 16px; }
.sounaria-cta { background: linear-gradient(135deg, #1a0a2e 0%, #0d0d0d 100%); }
.sounaria-cta h2 { color: #fff; }
.sounaria-cta .body { color: rgba(255,255,255,0.65); text-align: center; max-width: 560px; margin: 0 auto 40px; }
.sounaria-cta .cta-btn { display: inline-block; padding: 16px 48px; background: #b06aff; color: #fff !important; font-size: 0.95rem; font-weight: 600; letter-spacing: 0.08em; border-radius: 3px; text-decoration: none; }
/* ===== END SOUNARIA Styles ===== */


/* ===== SOUNARIA Landing Page Styles ===== */
:root{
  --bg:#f7f7f5; --card:#ffffff; --text:#1f1f1c; --muted:#6d6b66; --line:#e7e3da;
  --accent:#b88b4a; --accent-dark:#8d6732; --accent-soft:#f3ece2;
  --shadow:0 10px 30px rgba(0,0,0,.06); --radius:18px; --max:1120px;
}
.sounaria-wrap{max-width:var(--max);margin:0 auto;padding:0 24px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif;color:var(--text);line-height:1.7}
.sounaria-wrap a{text-decoration:none;color:inherit}
.sounaria-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;font-weight:700;transition:.2s ease;cursor:pointer;border:1px solid transparent}
.sounaria-btn.primary{background:var(--accent);color:#fff}.sounaria-btn.primary:hover{background:var(--accent-dark)}
.sounaria-btn.secondary{background:#fff;border-color:var(--line);color:var(--text)}.sounaria-btn.secondary:hover{background:#fbfbfa}
.sounaria-hero{padding:72px 0 48px}.hero-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:28px;align-items:stretch}
.sounaria-panel{background:rgba(255,255,255,.76);border:1px solid rgba(231,227,218,.9);box-shadow:var(--shadow);border-radius:var(--radius)}
.hero-copy{padding:44px}.eyebrow{display:inline-block;padding:8px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:.84rem;font-weight:700;letter-spacing:.04em}
.sounaria-wrap h1{margin:18px 0 16px;font-size:clamp(2rem, 4vw, 3.7rem);line-height:1.15;letter-spacing:-.02em}
.sounaria-lead{color:var(--muted);font-size:1.05rem;margin:0 0 22px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.hero-visual{padding:28px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left, rgba(184,139,74,.18), transparent 32%),radial-gradient(circle at bottom right, rgba(141,103,50,.14), transparent 38%),linear-gradient(135deg,#fff 0%, #f4efe8 100%)}
.mock{width:min(100%,420px);aspect-ratio:4/5;border-radius:24px;border:1px solid rgba(184,139,74,.18);background:linear-gradient(180deg, rgba(255,255,255,.7), rgba(255,255,255,.95)),repeating-linear-gradient(90deg, transparent 0 24px, rgba(184,139,74,.05) 24px 25px);position:relative;box-shadow:0 20px 40px rgba(0,0,0,.08);overflow:hidden}
.mock:before{content:"SOUNARIA Display";position:absolute;left:18px;top:16px;font-size:.88rem;font-weight:800;color:var(--accent-dark);letter-spacing:.05em}
.mock-box{position:absolute;left:12%;right:12%;top:18%;bottom:18%;border:2px solid rgba(184,139,74,.45);border-radius:14px;background:rgba(255,255,255,.34);display:flex;align-items:center;justify-content:center}
.mock-object{width:45%;aspect-ratio:1/1;border-radius:16px;background:linear-gradient(180deg,#d8c3a1,#b88b4a);box-shadow:0 8px 24px rgba(141,103,50,.28);position:relative}
.mock-object:after{content:"♪";position:absolute;right:-24px;top:18%;font-size:2rem;color:var(--accent-dark);opacity:.72}
.sounaria-section{padding:24px 0 56px}.sec-head{margin-bottom:20px}.sec-head h2{margin:0 0 8px;font-size:clamp(1.5rem,2.6vw,2.3rem)}.sec-head p{margin:0;color:var(--muted)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sounaria-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px}
.sounaria-card h3{margin:0 0 8px;font-size:1.08rem}.sounaria-card p{margin:0;color:var(--muted);font-size:.96rem}
.sounaria-icon{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--accent-dark);margin-bottom:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-list{display:grid;gap:12px}
.feature{padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:14px}.feature strong{display:block;margin-bottom:4px}.feature span{color:var(--muted);font-size:.95rem}
.sounaria-cta{padding:30px;background:linear-gradient(135deg,#fff 0%, #f3ece2 100%);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.sounaria-cta h3{margin:0 0 8px;font-size:1.5rem}.sounaria-cta p{margin:0;color:var(--muted)}
.smallnote{margin-top:10px;font-size:.84rem;color:var(--muted)}
@media (max-width: 900px){.hero-grid,.split,.grid-3{grid-template-columns:1fr}.sounaria-hero{padding-top:42px}.hero-copy{padding:28px}.hero-visual{min-height:320px}}
/* ===== END SOUNARIA Styles ===== */