    body {
      margin: 0;
      padding: 0;
      font-family: 'Noto Sans KR', sans-serif;
      background-color: #ecf0f1;
      letter-spacing: -0.5px;
      line-height: 1.6;
    }
    
    h2 {
      letter-spacing: -0.5px;
    }
    
    * {
      margin: 0;
      padding: 0;
    }

    /* ºñÁÖ¾ó */
    .hero {
      width: 100%;
      height: 680px;
      background: url('https://www.palmtour.co.kr/event/europe_guide/images/visual_bg.jpg') top center no-repeat;
      background-color: #ecf0f1;
      position: relative;
      color: white;
    }
    
    .hero-textbox {
      position: absolute;
      top: 40%;
      left: 50%;
      transform: translate(-50%, -50%);
      text-align: center;
    }
    
    .hero-subtitle {
      font-size: 26px;
      font-weight: 500;
      margin-bottom: 8px;
      line-height: 1.3;
    }
    
    .hero-title {
      font-size: 3.2rem;
      font-weight: 700;
      line-height: 1.2;
      margin-bottom: 12px;
      margin-top: 16px;
    }
    
    .hero-script {
      font-family: 'Playfair Display', cursive;
      font-size: 34px;
      opacity: 0.85;
      margin-top: 4px;
    }
    
    .info-section {
		  width: 1100px;
		  position: absolute;
		  top: 80%;
		  left: 50%;
		  transform: translateX(-50%);
		  background-color: #ecf0f1;
		  padding: 42px 70px;
		  border-radius: 20px;
		}
    
    .info-container {
      width: 960px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    
    .info-text {
      width: 65%;
    }
    
    .info-text h2 {
      font-size: 26px;
      font-weight: 700;
      margin-bottom: 16px;
      color: #292929;
      line-height: 1.4;
    }
    
    .info-text p {
      font-size: 17px;
      line-height: 1.7;
      color: #595959;
      margin-bottom: 12px;
    }
    
    .info-text .stitle {
      font-size: 18px;
      font-weight: 700;
      color: #292929;
    }
    
    .info-img {
      width: 280px;
      height: 280px;
      border-radius: 50%;
      overflow: hidden;
	  margin-top:-12px;
    }
    
    .info-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* vs */
    .comparison-section {
      background-color: #ecf0f1;
      padding: 80px 0;
      margin-top: 200px;
      overflow: hidden;
    }
    
    .comparison-container {
      width: 1220px;
      margin: 0 auto;
      text-align: center;
    }
    
    .comparison-title {
      font-size: 34px;
      font-weight: 700;
      color: #2c5aa0;
      margin: 0 0 60px 0;
      position: relative;
      line-height: 1.3;
    }
    
    .comparison-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #2c5aa0;
    }
    
    .comparison-wrapper {
      width: 1220px;
      border-radius: 20px;
      background-color: #fff;
      display: flex;
      align-items: center;
      position: relative;
    }

    .comparison-card {
      padding: 40px 60px 20px;
      position: relative;
      flex: 1;
    }

    .vs-circle {
      width: 52px;
      height: 52px;
      background-color: #4d4d4d;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      font-size: 28px;
      font-weight: 400;
      z-index: 10;
      border: 2px solid #fff;
      box-sizing: border-box;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
    }

    .comparison-card:last-child::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 1px;
      background-color: #ddd;
    }
    
    .card-title {
      font-size: 23px;
      font-weight: 700;
      color: #292929;
      margin-bottom: 24px;
      text-align: left;
      line-height: 1.3;
    }
    
    .feature-item {
      width: 100%;
      display: flex;
      align-items: flex-start;
      margin-bottom: 22px;
      text-align: left;
    }
    
    .feature-item::before {
      content: '\2713';
      color: #e74c3c;
      font-weight: bold;
      font-size: 16px;
      margin-right: 14px;
      margin-top: 2px;
    }
    
    .feature-text {
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
    }

    /* Çã´Ï¹® ÀåÁ¡ ¼½¼Ç */
    .honeymoon-features {
      background-color: #fff;
      padding: 80px 0;
    }
    
    .features-container {
      width: 1240px;
      margin: 0 auto;
      text-align: center;
    }
    
    .features-title {
      font-size: 34px;
      font-weight: 700;
      color: #194d87;
      margin: 0 0 60px 0;
      position: relative;
      line-height: 1.3;
    }
    
    .features-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #194d87;
    }
    
    .features-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 26px;
    }
    
    .feature-card {
      background-color: #ecf0f1;
      padding: 44px 32px;
      border-radius: 16px;
      text-align: center;
    }
    
    .feature-card h3 {
      font-size: 22px;
      font-weight: 700;
      color: #194d87;
      margin-bottom: 24px;
      line-height: 1.3;
    }
    
    .feature-card p {
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
      margin: 0;
    }

    /* À¯·´ ¹ÝÀÚÀ¯ »óÇ° ¼½¼Ç Å°Æ÷ÀÎÆ® */
    .product-section {
      background: url('https://www.palmtour.co.kr/event/europe_guide/images/keypoint_bg1.jpg') center center no-repeat;
      background-size: cover;
      background-color: #095288;
      padding: 80px 0;
    }
    
    .product-container {
      width: 1240px;
      margin: 0 auto;
      text-align: center;
    }
    
    .product-title {
      font-size: 34px;
      font-weight: 700;
      color: #fff;
      margin-bottom: 70px;
      position: relative;
      line-height: 1.3;
    }
    
    .product-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #fff;
    }
    
    .product-content {
      display: flex;
      align-items: center;
      gap: 0;
      height: 460px;
    }
    
    .product-text {
      width: 50%;
      background-color: #fff;
      padding: 40px 60px;
      height: 460px;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      text-align: left;
      border-radius: 20px 0 0 20px;
      overflow: hidden;
    }
    
    .product-text h3 {
      font-size: 24px;
      font-weight: 700;
      color: #292929;
      margin-bottom: 20px;
      line-height: 1.3;
    }
    
    .product-text .text-item {
      display: block;
      align-items: flex-start;
      margin-bottom: 12px;
      font-size: 16px;
      font-weight: 400;
      color: #595959;
      line-height: 1.5;
      padding-left: 20px;
      position: relative;
    }
    
    .product-text .text-item::before {
      content: '\2713';
      color: #e74c3c;
      font-weight: bold;
      font-size: 16px;
      position: absolute;
      left: 0;
      top: 0;
      flex-shrink: 0;
    }
    
    .product-text .small-text {
      font-size: 14px;
      color: #666;
      margin-top: 4px;
      display: block;
    }
    
    .product-image {
      width: 50%;
      height: 460px;
      overflow: hidden;
      border-radius: 0 20px 20px 0;
    }
    
    .product-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* Ç×°ø ÀÌµ¿½Ã°£ ¼½¼Ç */
    .flight-section {
      background-color: #ecf0f1;
      padding: 80px 0;
    }
    
    .flight-container {
      width: 890px;
      margin: 0 auto;
      text-align: center;
    }
    
    .flight-title {
      font-size: 34px;
      font-weight: 700;
      color: #2c5aa0;
      margin: 0 0 60px 0;
      position: relative;
      line-height: 1.3;
    }
    
    .flight-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #2c5aa0;
    }
    
    .flight-map {
      width: 100%;
      border-radius: 20px;
      overflow: hidden;
    }
    
    .flight-map img {
      width: 100%;
      height: auto;
      display: block;
    }

    /* Áö¿ª¾È³» ¼½¼Ç */
    .region-guide {
      background-color: #fff;
      padding: 80px 0;
    }
    
    .region-container {
      width: 1000px;
      margin: 0 auto;
      text-align: center;
    }
    
    .region-title {
      font-size: 34px;
      font-weight: 700;
      color: #194d87;
      margin: 0 0 70px 0;
      position: relative;
      line-height: 1.3;
    }
    
    .region-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #194d87;
    }

    /* ÅÇ ¸Þ´º */
    .tab-menu {
      display: flex;
      justify-content: center;
      margin-bottom: 44px;
      gap: 3px;
    }
    
    .tab-button {
      background-color: #fff;
      border: 1px solid #ccc;
      font-size: 20px;
      padding: 22px 42px;
      cursor: pointer;
      color: #393939;
      transition: all 0.3s ease;
      flex: 1;
      font-weight: 500;
    }
    
    .tab-button.active {
      background-color: #095288;
      color: #fff;
      border-color: #095288;
    }
    
    .tab-button:hover:not(.active) {
      background-color: #f8f9fa;
    }

    /* ÅÇ ÄÜÅÙÃ÷ */
    .tab-content {
      display: none;
    }
    
    .tab-content.active {
      display: block;
    }

    /* Áö¿ª ºñÁÖ¾ó */
    .region-visual {
      width: 1000px;
      height: 780px;
      position: relative;
      margin-bottom: 44px;
      border-radius: 20px;
      overflow: hidden;
      box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    }
    
    .region-visual img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* Áö¿ª Á¤º¸ */
    .region-info {
      text-align: left;
      margin: 0 22px 44px;
    }
    
    .region-info h3 {
      font-size: 22px;
      font-weight: 700;
      color: #292929;
      margin: 0 0 16px 0;
      line-height: 1.4;
    }
    
    .region-info p {
      font-size: 16px;
      color: #595959;
      line-height: 1.7;
      margin: 0;
      padding-bottom: 34px;
      border-bottom: 1px solid #ddd;
    }

    /* ½½¶óÀÌµå¿Í Á¤º¸ ¹Ú½º ¿µ¿ª */
    .region-details {
      display: flex;
      gap: 40px;
      position: relative;
      padding: 0 22px 0;
    }

    /* ½½¶óÀÌµå ¿µ¿ª */
    .region-slider {
      width: 600px;
      height: 670px;
      position: relative;
      border-radius: 20px;
      overflow: hidden;
    }
    
    .slider-container {
      width: 100%;
      height: 100%;
      position: relative;
    }
    
    .slide {
      display: none;
      width: 100%;
      height: 100%;
    }
    
    .slide.active {
      display: block;
    }
    
    .slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* ½½¶óÀÌµå È­»ìÇ¥ */
    .slider-arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 50px;
      height: 50px;
      background: rgba(0,0,0,0.5);
      border: none;
      border-radius: 50%;
      color: #fff;
      font-size: 18px;
      cursor: pointer;
      z-index: 10;
      transition: background 0.3s ease;
    }
    
    .slider-arrow:hover {
      background: rgba(0,0,0,0.7);
    }
    
    .slider-arrow.prev {
      left: 20px;
    }
    
    .slider-arrow.next {
      right: 20px;
    }

    /* Æ÷ÀÎÆ® ¸®½ºÆ® */
    .region-points {
      flex: 1;
      text-align: left;
      padding-left: 44px;
      position: relative;
    }

    .region-points::before {
      content: '';
      position: absolute;
      left: 0;
      top: -44px;
      width: 1px;
      height: calc(100% + 44px);
      background-color: #ddd;
    }

    .point-item {
      margin-bottom: 24px;
      padding: 0 0 22px 0;
      border-bottom: 1px solid #ddd;
      position: relative;
    }

    .point-item::before {
      content: '\2022';
      position: absolute;
      left: 0;
      top: 0;
      color: #095288;
      font-weight: bold;
      font-size: 18px;
    }
    
    .point-item span {
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
      padding-left: 22px;
      display: block;
    }

    /* µµ½Ãº° ÀÌµ¿½Ã°£ ¹Ú½º */
    .travel-time-box {
      background-color: #ecf0f1;
      padding: 32px 26px 32px 20px;
      border-radius: 20px;
      margin-top: 44px;
    }
    
    .travel-time-box h4 {
      font-size: 18px;
      font-weight: 700;
      color: #292929;
      margin: 0 0 16px 0;
      line-height: 1.3;
    }
    
    .time-item {
      margin-bottom: 10px;
      font-size: 15px;
      color: #595959;
      line-height: 1.6;
      position: relative;
      padding-left: 10px;
    }
    
    .time-item::before {
      content: '¡¤';
      position: absolute;
      left: 0;
      color: #595959;
      font-weight: bold;
    }
    
    .time-item:last-child {
      margin-bottom: 0;
    }

    /* 2026 À¯·´ ÃßÃµ»óÇ° ¼½¼Ç */
    .europe-packages {
      background-color: #ecf0f1;
      padding: 80px 0;
    }
    
    .packages-container {
      width: 1280px;
      margin: 0 auto;
      text-align: center;
    }
    
    .packages-title {
      font-size: 34px;
      font-weight: 700;
      color: #194d87;
      margin: 0 0 70px 0;
      position: relative;
      line-height: 1.3;
    }
    
    .packages-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #194d87;
    }

    /* ÆÐÅ°Áö ÅÇ ¸Þ´º */
    .package-tab-menu {
      display: flex;
      justify-content: center;
      margin-bottom: 44px;
      gap: 2px;
    }
    
    .package-tab-button {
      background-color: #fff;
      border: 1px solid #ccc;
      font-size: 20px;
      padding: 22px 32px;
      cursor: pointer;
      color: #393939;
      transition: all 0.3s ease;
      flex: 1;
      font-weight: 500;
    }
    
    .package-tab-button.active {
      background-color: #095288;
      color: #fff;
      border-color: #095288;
    }

    /* ÆÐÅ°Áö ÄÜÅÙÃ÷ */
    .package-tab-content {
      display: none;
    }
    
    .package-tab-content.active {
      display: block;
    }

    /* ÆÐÅ°Áö ¸ÞÀÎ ¿µ¿ª */
    .package-main {
      display: flex;
      gap: 44px;
      margin-bottom: 44px;
      padding: 44px 0;
    }

    /* ÆÐÅ°Áö ÀÌ¹ÌÁö */
    .package-image {
      width: 50%;
      border-radius: 15px;
      overflow: hidden;
      flex-shrink: 0;
    }
    
    .package-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* ÆÐÅ°Áö Á¤º¸ */
    .package-info {
      width: 50%;
      text-align: left;
      flex-shrink: 0;
      display: flex;
      flex-direction: column;
      padding: 0 12px;
    }

    /* Á¦¸ñ ¿µ¿ª ÇÑ ÁÙ ¹èÄ¡ */
    .package-title-wrapper {
      display: flex;
      align-items: baseline;
      margin-bottom: 24px;
      gap: 12px;
    }

    .package-main-title {
      font-size: 64px;
      font-weight: 600;
      color: #2C3E50;
      margin: 0;
      flex-shrink: 0;
      line-height: 1.3;
    }

    .package-subtitle {
      font-size: 22px;
      color: #2C3E50;
      margin: 0;
      font-weight: 500;
	  margin-left:4px;
    }

    /* ÆÐÅ°Áö ÀÏÁ¤ ½ºÅ¸ÀÏ */
    .package-duration {
      font-size: 16px;
      color: #595959;
      line-height: 1.7;
      margin-bottom: 28px;
      font-weight: 500;
    }

    /* Å°Æ÷ÀÎÆ® ¹Ú½º */
    .keypoint-box {
      background-color: #fff;
      border: 2px solid #D9D9D9;
	  box-sizing:border-box;
      padding: 24px 28px;
      border-radius: 15px;
      margin: 0 54px 16px 0;
      flex-grow: 1;
    }
    
    .keypoint-title {
      font-size: 22px;
      font-weight: 700;
      color: #2C3E50;
      margin: 0 0 12px 0;
      line-height: 1.3;
    }
    
    .keypoint-item {
      display: flex;
      align-items: flex-start;
      margin-bottom: 8px;
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
    }
    
    .keypoint-item::before {
      content: '\2611'; /* ? À¯´ÏÄÚµå ÀÌ½ºÄÉÀÌÇÁ */
      color: #2C3E50;
      font-size: 18px;
      margin-right: 8px;
      margin-top: 0px;
      flex-shrink: 0;
    }

    /* ÆÊÅõ¾î Æ¯Àü ¹Ú½º */
    .special-box {
      background-color: #fff;
      border: 2px solid #D9D9D9;
	  box-sizing:border-box;
      padding: 24px 28px;
      border-radius: 15px;
      margin-right: 54px;
      flex-grow: 1;
    }
    
    .special-title {
      font-size: 22px;
      font-weight: 700;
      color: #2C3E50;
      margin: 0 0 12px 0;
      line-height: 1.3;
    }
    
    .special-item {
      margin-bottom: 6px;
      padding-left: 14px;
      position: relative;
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
    }
    
    .special-item::before {
      content: '\2022'; /* ? À¯´ÏÄÚµå ÀÌ½ºÄÉÀÌÇÁ */
      position: absolute;
      left: 0;
      color: #2C3E50;
      font-weight: bold;
    }

    /* Åõ¾î ¿É¼Ç ±×¸®µå */
    .tour-options {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 22px;
      background-color: #fff;
      padding: 32px;
      border-radius: 20px;
    }
    
    .tour-option {
      position: relative;
      overflow: hidden;
      height: 349px;
      border-radius: 15px;
    }
    
    .tour-option img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* ½ºÆäÀÎ ½º³ÀÃÔ¿µ ¼½¼Ç */
    .spain-snap-section {
      background-color: #fff;
      padding: 80px 0;
    }

    .spain-snap-container {
      width: 1240px;
      margin: 0 auto;
      text-align: center;
    }

    .spain-snap-title {
      font-size: 34px;
      font-weight: 700;
      color: #194d87;
      margin: 0 0 60px 0;
      position: relative;
      line-height: 1.3;
    }

    .spain-snap-title::after {
      content: '';
      position: absolute;
      bottom: -18px;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background-color: #194d87;
    }

    /* ¼­ºñ½º ¹Ú½º */
    .service-boxes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 32px;
      margin-bottom: 70px;
    }

    .service-box {
      background-color: #ecf0f1;
      border-radius: 20px;
      padding: 34px 34px 34px 34px;
      text-align: left;
    }

    .service-box h3 {
      font-size: 24px;
      font-weight: 700;
      color: #292929;
      margin: 0 0 24px 0;
      line-height: 1.3;
    }

    .service-box ul {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .service-box li {
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
      margin-bottom: 16px;
      position: relative;
      padding-left: 18px;
    }

    .service-box li::before {
      content: '\2022'; /* ? À¯´ÏÄÚµå ÀÌ½ºÄÉÀÌÇÁ */
      position: absolute;
      left: 0;
      color: #194d87;
      font-weight: bold;
      font-size: 18px;
    }

    /* µµ½Ãº° Ä«µå */
    .cities-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 22px;
      margin-bottom: 70px;
    }

    .city-card {
      background-color: #ecf0f1;
      border-radius: 16px;
      overflow: hidden;
      text-align: center;
    }

    .city-card img {
      width: 100%;
      height: 200px;
      object-fit: cover;
    }

    .city-info {
      padding: 24px 32px 24px 32px;
      text-align: left;
    }

    .city-name {
      font-size: 22px;
      font-weight: 700;
      color: #292929;
      margin: 0 0 16px 0;
      line-height: 1.3;
    }

    .city-features {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .city-features li {
      font-size: 17px;
      color: #595959;
      line-height: 1.7;
      margin-bottom: 10px;
      position: relative;
      padding-left: 18px;
    }

    .city-features li::before {
      content: '\2022'; /* ? À¯´ÏÄÚµå ÀÌ½ºÄÉÀÌÇÁ */
      position: absolute;
      top: -2px;
      left: 0;
      color: #194d87;
      font-weight: bold;
      font-size: 18px;
    }

    .snap-name {
      font-size: 24px;
      font-weight: 700;
      color: #292929;
      margin-bottom: 34px;
      text-align: left;
      line-height: 1.3;
    }

    .snap-image-container {
      width: 100%;
      text-align: center;
    }

    .snap-image-container img {
      width: 100%;
      height: auto;
      border-radius: 20px;
    }