/* Ohana Baths — component styles */
.o0{position: fixed; inset: 0px; z-index: 80; background: rgb(240, 238, 234); color: rgb(95, 92, 88); display: flex; flex-direction: column; padding: 20px 20px 32px; box-sizing: border-box; overflow-y: auto; transition: clip-path 0.7s cubic-bezier(0.77, 0, 0.18, 1); clip-path: inset(0px 0px 100%); pointer-events: none;}
.o1{display: flex; justify-content: space-between; align-items: center; gap: 16px;}
.o2{display: flex; align-items: baseline; gap: 6px; font-family: "Playfair Display", serif;}
.o3{font-weight: 900; font-size: 30px; line-height: 1;}
.o4{font-weight: 400; font-size: 25px; line-height: 1;}
.o5{height: 44px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; cursor: pointer; font-family: Archivo, sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.06em; color: rgb(95, 92, 88);}
.o6{display: flex; flex-direction: column; margin-top: 32px; border-top: 1.5px solid rgb(201, 196, 190);}
.o7{display: flex; justify-content: space-between; align-items: center; padding: 18px 0px; border-bottom: 1.5px solid rgb(201, 196, 190); font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: 40px; line-height: 1; letter-spacing: -0.04em; transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.6s; transform: translateY(40px); opacity: 0;}
.o8{display: flex; gap: 12px; margin-top: 28px; transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.45s, opacity 0.6s 0.45s; transform: translateY(24px); opacity: 0;}
.o9{flex: 1 1 0%; height: 56px; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 600; letter-spacing: 0.05em; cursor: pointer;}
.o10{flex: 1 1 0%; height: 56px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 600; letter-spacing: 0.05em; cursor: pointer;}
.o11{position: fixed; top: 0px; right: 0px; bottom: 0px; z-index: 72; width: clamp(380px, 50vw, 760px); max-width: 100%; box-sizing: border-box; background: rgb(240, 238, 234); color: rgb(95, 92, 88); border-radius: 20px 0px 0px 20px; display: flex; flex-direction: column; transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1); transform: translateX(105%);}
.o12{display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 32px 32px 20px;}
.o13{display: flex; align-items: baseline; gap: 12px;}
.o14{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(32px, 3vw, 48px); line-height: 1; letter-spacing: -0.04em;}
.o15{font-size: 15px; font-weight: 600; letter-spacing: 0.06em;}
.o16{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; cursor: pointer; font-family: Archivo, sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.06em; color: rgb(95, 92, 88);}
.o17{margin: 0px 32px; background: rgb(233, 230, 224); border-radius: 12px; padding: 12px 16px; text-align: center; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; color: rgb(74, 71, 68);}
.o18{flex: 1 1 0%; overflow-y: auto; padding: 12px 32px; display: flex; flex-direction: column;}
.o19{display: grid; grid-template-columns: 96px minmax(0px, 1fr) auto; gap: 18px; align-items: center; padding: 20px 0px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o20{width: 96px; height: 96px; border-radius: 12px; background-position: center center; background-size: cover; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255);}
.o21{display: flex; flex-direction: column; gap: 6px; min-width: 0px;}
.o22{font-size: 15px; font-weight: 600; letter-spacing: 0.05em;}
.o23{font-size: 14px;}
.o24{display: flex; align-items: center; gap: 0px; margin-top: 6px; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; width: max-content;}
.o25{width: 36px; height: 34px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; cursor: pointer; color: rgb(98, 94, 90); font-size: 18px; font-family: Archivo, sans-serif;}
.o26{min-width: 22px; text-align: center; font-size: 15px; font-weight: 600;}
.o27{display: flex; flex-direction: column; align-items: flex-end; gap: 10px;}
.o28{font-size: 16px; font-weight: 600;}
.o29{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; padding: 0px; cursor: pointer; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 13px; font-weight: 500; text-decoration: underline;}
.o30{display: contents;}
.o31{flex: 1 1 0%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; text-align: center; padding: 48px 0px;}
.o32{font-family: "Playfair Display", serif; font-size: clamp(26px, 2.4vw, 36px);}
.o33{border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 12px 40px; font-size: 15px; font-weight: 500; letter-spacing: 0.05em;}
.o34{padding: 24px 32px 32px; border-top: 1.5px solid rgb(201, 196, 190); display: flex; flex-direction: column; gap: 12px;}
.o35{display: flex; justify-content: space-between; font-size: 15px;}
.o36{display: flex; justify-content: space-between; font-size: 18px; font-weight: 600; letter-spacing: 0.04em;}
.o37{margin-top: 8px; height: 60px; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 500; letter-spacing: 0.04em;}
.o38{font-size: 13px; text-align: center;}
.o39{position: fixed; inset: 0px; z-index: 70; background: rgba(40, 36, 33, 0.3); transition: opacity 0.35s; opacity: 0; pointer-events: none;}
.o40{position: fixed; top: 0px; left: 24px; right: 24px; z-index: 71; background: rgb(240, 238, 234); color: rgb(95, 92, 88); border-radius: 0px 0px 20px 20px; padding: 28px clamp(16px, 2.5vw, 32px) 36px; display: flex; flex-direction: column; gap: 24px; transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.35s; transform: translateY(-110%); opacity: 0; pointer-events: none;}
.o41{display: flex; align-items: center; gap: 16px; border-bottom: 1.5px solid rgb(98, 94, 90); padding-bottom: 12px;}
.o42{flex: 1 1 0%; min-width: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; background: transparent; font-family: Archivo, sans-serif; font-size: clamp(22px, 2.6vw, 40px); font-weight: 600; letter-spacing: -0.02em; color: rgb(95, 92, 88);}
.o43{display: flex; flex-wrap: wrap; align-items: center; gap: 10px;}
.o44{font-size: 13px; font-weight: 600; letter-spacing: 0.06em;}
.o45{border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 6px 16px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 13px; font-weight: 500; cursor: pointer;}
.o46{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: clamp(12px, 2vw, 24px);}
.o47{background: rgb(255, 255, 255); border-radius: 16px; padding: 14px; display: flex; flex-direction: column; gap: 12px; min-width: 0px;}
.o48{position: relative; height: clamp(140px, 14vw, 200px); border-radius: 12px; overflow: hidden;}
.o49{width: 100%; height: 100%; background-size: cover; background-position: center center;}
.o50{display: flex; justify-content: space-between; gap: 10px; font-size: 14px; font-weight: 600; letter-spacing: 0.05em;}
.o51{font-size: 13px; font-weight: 500;}
.o52{font-size: 16px;}
.o53{position: fixed; top: 0px; right: 0px; bottom: 0px; z-index: 71; width: min(440px, 100%); box-sizing: border-box; background: rgb(240, 238, 234); color: rgb(95, 92, 88); border-radius: 20px 0px 0px 20px; padding: 32px; display: flex; flex-direction: column; gap: 24px; overflow-y: auto; transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1); transform: translateX(105%);}
.o54{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: 40px; line-height: 1; letter-spacing: -0.04em;}
.o55{display: flex; gap: 24px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o56{border-width: medium medium 2px; border-style: none none solid; border-color: currentcolor currentcolor transparent; border-image: none; background: none; cursor: pointer; padding: 0px 0px 10px; margin-bottom: -1.5px; font-family: Archivo, sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.06em; color: rgb(168, 163, 157);}
.o57{display: flex; flex-direction: column; gap: 14px;}
.o58{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; border-radius: 14px; background: rgb(255, 255, 255); padding: 16px 18px; font-family: Archivo, sans-serif; font-size: 16px; color: rgb(98, 94, 90);}
.o59{height: 56px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 500; letter-spacing: 0.04em; cursor: pointer; margin-top: 6px;}
.o60{font-size: 14px; line-height: 1.5;}
.o61{font-size: 15px;}
.o62{display: flex; flex-direction: column;}
.o63{display: flex; justify-content: space-between; gap: 16px; padding: 18px 0px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o64{height: 56px; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 500; letter-spacing: 0.04em;}
.o65{height: 56px; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 500; letter-spacing: 0.04em; cursor: pointer;}
.o66{position: fixed; top: 0px; left: 24px; right: 24px; z-index: 50; background: rgb(240, 238, 234); border-radius: 0px 0px 16px 16px; box-shadow: rgba(0, 0, 0, 0.06) 0px 4px 20px; color: rgb(95, 92, 88); padding: 18px clamp(16px, 2.5vw, 32px); display: grid; grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; font-size: clamp(11px, 1.15vw, 15px); font-weight: 600; letter-spacing: 0.06em; white-space: nowrap; transition: transform 0.3s, opacity 0.3s; transform: translateY(-140%); opacity: 0; pointer-events: none;}
.o67{display: flex; align-items: center; min-width: 0px;}
.o68{color: inherit; display: none; flex-direction: column; justify-content: center; gap: 5px; width: 44px; height: 44px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; padding: 0px 10px 0px 0px; cursor: pointer; pointer-events: auto;}
.o69{display: block; width: 24px; height: 2px; background: currentcolor; border-radius: 1px;}
.o70{display: block; width: 16px; height: 2px; background: currentcolor; border-radius: 1px;}
.o71{display: flex; gap: clamp(12px, 2.5vw, 40px);}
.o72{display: flex; align-items: baseline; gap: 6px; font-family: "Playfair Display", serif; letter-spacing: 0px;}
.o73{font-weight: 900; font-size: clamp(24px, 2.6vw, 38px); line-height: 1;}
.o74{font-weight: 400; font-size: clamp(19px, 2.1vw, 31px); line-height: 1;}
.o75{display: flex; gap: clamp(12px, 2.5vw, 40px); justify-content: flex-end;}
.o76{position: fixed; inset: 0px; z-index: 54; background: rgba(40, 36, 33, 0.25); pointer-events: none; transition: opacity 0.35s; opacity: 0;}
.o77{position: fixed; top: 0px; left: 24px; right: 24px; z-index: 56; transition: opacity 0.35s, transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1); opacity: 0; transform: translateY(-24px); pointer-events: none; background: rgb(240, 238, 234); color: rgb(95, 92, 88); border-radius: 0px 0px 20px 20px; padding-bottom: 36px; display: flex; flex-direction: column; gap: 28px;}
.o78{padding: 28px clamp(16px, 2.5vw, 32px) 0px; display: grid; grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; font-size: clamp(11px, 1.15vw, 15px); font-weight: 600; letter-spacing: 0.06em; white-space: nowrap;}
.o79{font-weight: 900; font-size: clamp(26px, 3vw, 44px); line-height: 1;}
.o80{font-weight: 400; font-size: clamp(21px, 2.45vw, 36px); line-height: 1;}
.o81{display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(20px, 3.5vw, 56px); padding: 0px 16px;}
.o82{border-width: medium medium 2px; border-style: none none solid; border-color: currentcolor currentcolor transparent; border-image: none; background: none; cursor: pointer; padding: 0px 0px 8px; font-family: Archivo, sans-serif; font-size: clamp(13px, 1.3vw, 18px); font-weight: 600; letter-spacing: 0.06em; color: rgb(168, 163, 157);}
.o83{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: clamp(16px, 2.5vw, 40px); width: 100%; max-width: none; margin: 0px; padding: 0px clamp(16px, 2.5vw, 32px); box-sizing: border-box;}
.o84{position: relative; background: rgb(255, 255, 255); border-radius: 16px; padding: 18px; height: clamp(280px, 27vw, 400px); display: flex; flex-direction: column; gap: 14px; min-width: 0px; box-sizing: border-box; transition: box-shadow 0.25s; box-shadow: none;}
.o85{height: 20px; display: flex;}
.o86{flex: 1 1 0%; position: relative;}
.o87{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:12px}
.o88{display: flex; flex-direction: column; gap: 4px; transition: opacity 0.25s; opacity: 1;}
.o89{display: flex; justify-content: space-between; gap: 12px; font-size: clamp(12px, 1.1vw, 15px); font-weight: 600; letter-spacing: 0.05em;}
.o90{font-size: clamp(12px, 1vw, 14px); font-weight: 500;}
.o91{position: absolute; left: 14px; right: 14px; bottom: 14px; height: 52px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-family: Archivo, sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0.04em; cursor: pointer; transition: opacity 0.25s, transform 0.25s; opacity: 0; transform: translateY(10px); pointer-events: none;}
.o92{background: rgb(98, 94, 90); color: rgb(255, 255, 255); border-radius: 999px; padding: 4px 10px; font-size: 11px; font-weight: 600;}
.o93{align-self: center; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 10px 40px; font-size: clamp(13px, 1.2vw, 17px); font-weight: 500; letter-spacing: 0.05em; transition: background 0.25s, color 0.25s;}
.o94{padding: 16px 24px 24px; display: flex; flex-direction: column; gap: 16px; min-height: 100vh; box-sizing: border-box;}
.o95{background: rgb(233, 230, 224); border-radius: 12px; padding: 12px 16px; text-align: center; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; color: rgb(74, 71, 68);}
.o96{position: relative; border-radius: 16px; overflow: hidden; height: calc(-40px + 100vh); min-height: 520px; display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr);}
.o97{position: relative; background: rgb(201, 184, 168);}
.o98{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.o99{position: relative; background: rgb(220, 214, 207);}
.o100{position: absolute; inset: 0px 0px auto; height: 180px; background: linear-gradient(rgba(0, 0, 0, 0.28), rgba(0, 0, 0, 0)); pointer-events: none;}
.o101{position: absolute; inset: auto 0px 0px; height: 260px; background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3)); pointer-events: none;}
.o102{position: absolute; top: 0px; left: 0px; right: 0px; padding: 28px clamp(16px, 2.5vw, 32px); display: grid; grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; color: rgb(255, 255, 255); font-size: clamp(11px, 1.15vw, 15px); font-weight: 600; letter-spacing: 0.06em; white-space: nowrap; pointer-events: none;}
.o103{display: flex; gap: clamp(12px, 2.5vw, 40px); pointer-events: auto;}
.o104{display: flex; align-items: baseline; gap: 6px; font-family: "Playfair Display", serif; letter-spacing: 0px; pointer-events: auto;}
.o105{display: flex; gap: clamp(12px, 2.5vw, 40px); justify-content: flex-end; pointer-events: auto;}
.o106{position: absolute; right: 32px; bottom: 32px; display: flex; flex-direction: column; align-items: flex-end; gap: 20px; color: rgb(255, 255, 255); pointer-events: none;}
.o107{margin: 0px; font-family: "Playfair Display", serif; font-weight: 400; font-size: clamp(32px, 3.6vw, 56px); line-height: 1.05; text-align: right; text-wrap: pretty;}
.o108{pointer-events: auto; border: 1.5px solid rgb(255, 255, 255); border-radius: 999px; padding: 10px 32px; font-size: 15px; font-weight: 500; letter-spacing: 0.06em;}
.o109{margin-top: 16px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); border-radius: 16px; overflow: hidden; padding: clamp(14px, 1.6vw, 22px) 0px;}
.o110{display: flex; width: max-content; white-space: nowrap; animation: 48s linear 0s infinite normal none running ohanaLoop; will-change: transform; backface-visibility: hidden; transform: translateZ(0px); font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(24px, 3vw, 44px); line-height: 1; letter-spacing: -0.03em;}
.o111{display: inline-flex; align-items: center; gap: clamp(20px, 3vw, 48px); padding-right: clamp(20px, 3vw, 48px);}
.o112{width: 8px; height: 8px; border-radius: 50%; background: rgb(244, 242, 238); display: inline-block;}
.o113{position: relative; margin-top: 16px;}
.o114{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: clamp(16px, 2.5vw, 40px);}
.o115{position: relative; border-radius: 20px; overflow: hidden; background: rgb(233, 230, 225); display: flex; flex-direction: column; min-width: 0px; width: 100%; height: clamp(480px, 42vw, 640px); padding: clamp(20px, 2vw, 32px); box-sizing: border-box; color: rgb(98, 94, 90);}
.o116{position: absolute; inset: 0px; transition: opacity 0.35s; opacity: 0; pointer-events: none;}
.o117{position: relative; z-index: 1; display: flex; flex-wrap: wrap-reverse; justify-content: space-between; align-items: flex-start; gap: 8px 12px; pointer-events: none;}
.o118{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(44px, 4.6vw, 88px); line-height: 0.85; letter-spacing: -0.045em;}
.o119{flex: 1 1 0%; position: relative; margin: 16px 0px; transition: opacity 0.3s; opacity: 1;}
.o120{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:20px}
.o121{display: flex; flex-direction: column; gap: 8px; transition: opacity 0.3s; opacity: 1;}
.o122{display: flex; gap: 10px; align-items: center; font-size: 15px;}
.o123{letter-spacing: 2px;}
.o124{display: flex; justify-content: space-between; gap: 16px; font-size: clamp(15px, 1.3vw, 19px); font-weight: 600; letter-spacing: 0.05em;}
.o125{font-size: clamp(14px, 1.15vw, 17px); font-weight: 500;}
.o126{position: absolute; left: 16px; right: 16px; bottom: 16px; height: clamp(56px, 5vw, 72px); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(255, 255, 255); color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(14px, 1.4vw, 20px); font-weight: 500; letter-spacing: 0.03em; cursor: pointer; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 18px; transition: opacity 0.25s, transform 0.25s; opacity: 0; transform: translateY(12px); pointer-events: none;}
.o127{font-weight: 700;}
.o128{background: rgb(98, 94, 90); color: rgb(233, 230, 225); border-radius: 999px; padding: 5px 12px; font-size: 12px; font-weight: 600; white-space: nowrap;}
.o129{margin-top: 24px; background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(24px, 3.5vw, 52px); display: flex; flex-direction: column; gap: clamp(20px, 2.5vw, 36px); color: rgb(98, 94, 90);}
.o130{display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap;}
.o131{margin: 0px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(32px, 3.4vw, 56px); line-height: 1; letter-spacing: -0.04em;}
.o132{border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 10px 28px; font-size: clamp(13px, 1.1vw, 16px); font-weight: 500; letter-spacing: 0.05em; white-space: nowrap; transition: background 0.25s, color 0.25s;}
.o133{display: flex; flex-direction: column; gap: 16px; min-width: 0px;}
.o134{position: relative; aspect-ratio: 734 / 775; border-radius: 16px; overflow: hidden;}
.o135{display: flex; align-items: center; gap: 10px; font-family: Archivo, sans-serif; font-weight: 800; font-size: clamp(20px, 1.9vw, 30px); letter-spacing: -0.02em;}
.o136{display: inline-flex; align-items: center; justify-content: center; overflow: hidden; white-space: nowrap; box-sizing: border-box; width: 10px; height: 10px; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(235, 232, 227); font-size: 12px; font-weight: 700; letter-spacing: 0.04em; line-height: 1; transition: 0.3s;}
.o137{margin-top: 24px; background: rgb(235, 232, 227); border-radius: 20px; overflow: hidden; color: rgb(98, 94, 90);}
.o138{display: flex; justify-content: center; align-items: baseline; gap: 1.5vw; padding: clamp(32px, 5vw, 80px) 16px clamp(24px, 4vw, 64px); font-family: "Playfair Display", serif; white-space: nowrap; line-height: 0.9;}
.o139{font-weight: 900; font-size: 16vw; letter-spacing: -0.02em;}
.o140{font-weight: 400; font-size: 13vw;}
.o141{border-top: 1.5px solid rgb(143, 138, 133); display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.5fr);}
.o142{padding: clamp(24px, 3vw, 44px); border-right: 1.5px solid rgb(143, 138, 133); display: flex; flex-direction: column; gap: 18px; font-size: 16px; line-height: 1.45;}
.o143{display: flex; background: rgb(255, 255, 255); border-radius: 14px; overflow: hidden; max-width: 460px;}
.o144{flex: 1 1 0%; min-width: 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; padding: 16px 18px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: 16px; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; color: rgb(98, 94, 90); background: transparent;}
.o145{border-width: medium medium medium 1.5px; border-style: none none none solid; border-color: currentcolor currentcolor currentcolor rgb(235, 232, 227); border-image: none; background: rgb(255, 255, 255); padding: 0px 24px; font-style: inherit; font-variant: inherit; font-weight: 600; font-stretch: inherit; font-size: 15px; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; letter-spacing: 0.05em; color: rgb(98, 94, 90); cursor: pointer;}
.o146{text-decoration: underline;}
.o147{padding: clamp(24px, 3vw, 44px); display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 32px;}
.o148{display: flex; flex-direction: column; gap: 18px; min-width: 0px;}
.o149{font-size: 16px; line-height: 1.45;}
.o150{border-top: 1.5px solid rgb(143, 138, 133); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; padding: 20px clamp(24px, 3vw, 44px); font-size: 14px;}
.o151{background: rgb(98, 94, 90); color: rgb(244, 242, 238); text-align: center; padding: 22px 16px; font-size: 15px; font-weight: 500; letter-spacing: 0.02em;}
.o152{font-weight: 700; letter-spacing: 0.04em; color: rgb(244, 242, 238); opacity: 1;}
.o153{position: fixed; right: 0px; top: 50%; transform: translateY(-50%) rotate(180deg); z-index: 60; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; cursor: pointer; background: rgb(98, 94, 90); color: rgb(244, 242, 238); border-radius: 0px 16px 16px 0px; padding: 28px 16px; writing-mode: vertical-rl; font-family: Archivo, sans-serif; font-size: 18px; font-weight: 700; letter-spacing: 0.14em; box-shadow: rgba(0, 0, 0, 0.12) 0px 4px 18px;}
.o154{position: fixed; inset: 0px; z-index: 70; background: rgba(40, 36, 33, 0.35); display: flex; align-items: center; justify-content: center; padding: 24px;}
.o155{position: relative; width: 100%; max-width: 780px; background: rgb(235, 232, 227); border-radius: 20px; overflow: hidden; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); color: rgb(98, 94, 90);}
.o156{position: relative; min-height: 320px;}
.o157{padding: 48px 32px 32px; display: flex; flex-direction: column; justify-content: center; gap: 16px;}
.o158{position: absolute; top: 14px; right: 14px; z-index: 2; width: 36px; height: 36px; border-radius: 50%; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: transparent; color: rgb(98, 94, 90); font-size: 22px; cursor: pointer;}
.o159{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: 44px; line-height: 0.95; letter-spacing: -0.04em;}
.o160{display: flex; background: rgb(255, 255, 255); border-radius: 14px; overflow: hidden;}
.o161{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: rgb(98, 94, 90); color: rgb(244, 242, 238); padding: 0px 22px; font-style: inherit; font-variant: inherit; font-weight: 600; font-stretch: inherit; font-size: 15px; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; letter-spacing: 0.05em; cursor: pointer;}
.o162{padding: 16px 24px 24px; display: flex; flex-direction: column; gap: 16px; min-height: 100vh; box-sizing: border-box; color: rgb(98, 94, 90);}
.o163{position: relative; border-radius: 16px; overflow: hidden; height: clamp(420px, 44vw, 640px); background: rgb(216, 207, 198);}
.o164{position: absolute; inset: 0px; transition: opacity 0.5s; opacity: 0;}
.o165{position: absolute; inset: 0px; background: rgba(0, 0, 0, 0.18); pointer-events: none;}
.o166{z-index: 3; position: absolute; top: 0px; left: 0px; right: 0px; padding: 28px clamp(16px, 2.5vw, 32px); display: grid; grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; color: rgb(255, 255, 255); font-size: clamp(11px, 1.15vw, 15px); font-weight: 600; letter-spacing: 0.06em; white-space: nowrap; pointer-events: none;}
.o167{position: absolute; inset: 0px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; color: rgb(255, 255, 255); text-align: center; padding: 24px; pointer-events: none;}
.o168{margin: 0px; font-family: "Playfair Display", serif; font-weight: 400; font-size: clamp(30px, 3.6vw, 56px); line-height: 1.05; text-wrap: pretty;}
.o169{font-size: clamp(13px, 1.2vw, 16px); font-weight: 600; letter-spacing: 0.08em;}
.o170{display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; padding: 16px 0px 8px;}
.o171{border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 10px 24px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(13px, 1.1vw, 16px); font-weight: 500; letter-spacing: 0.05em; cursor: pointer; transition: background 0.25s, color 0.25s;}
.o172{display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; padding: 8px 4px 0px;}
.o173{margin: 0px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(28px, 3vw, 48px); line-height: 1; letter-spacing: -0.04em;}
.o174{font-size: 14px; font-weight: 600; letter-spacing: 0.06em;}
.o175{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: clamp(16px, 2vw, 28px);}
.o176{position: relative; overflow: hidden; background: rgb(255, 255, 255); border-radius: 16px; padding: 18px; height: clamp(380px, 30vw, 460px); display: flex; flex-direction: column; gap: 14px; min-width: 0px; box-sizing: border-box;}
.o177{position: relative; z-index: 1; height: 22px; display: flex; justify-content: space-between; align-items: center; gap: 8px;}
.o178{flex: 1 1 0%; position: relative; display: block; transition: opacity 0.3s; opacity: 1;}
.o179{display: flex; justify-content: space-between; gap: 12px; font-size: clamp(13px, 1.1vw, 15px); font-weight: 600; letter-spacing: 0.05em;}
.o180{display: flex; gap: 8px; white-space: nowrap;}
.o181{position: absolute; left: 14px; right: 14px; bottom: 14px; height: 56px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(255, 255, 255); color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(13px, 1.1vw, 15px); font-weight: 500; letter-spacing: 0.03em; cursor: pointer; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 18px; transition: opacity 0.25s, transform 0.25s; opacity: 0; transform: translateY(10px); pointer-events: none;}
.o182{background: rgb(165, 82, 63); color: rgb(255, 255, 255); border-radius: 999px; padding: 4px 10px; font-size: 11px; font-weight: 600;}
.o183{font-weight: 500; opacity: 0.6;}
.o184{position: relative; background: rgb(240, 238, 234); border-radius: 16px; padding: 28px clamp(16px, 2.5vw, 32px); display: grid; grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); gap: clamp(16px, 2vw, 32px); align-items: center; color: rgb(95, 92, 88); font-size: clamp(11px, 1.15vw, 15px); font-weight: 600; letter-spacing: 0.06em; white-space: nowrap; pointer-events: none;}
.o185{display: grid; grid-template-columns: minmax(0px, 1.1fr) minmax(0px, 1fr); gap: clamp(16px, 2.5vw, 40px); align-items: stretch;}
.o186{position: relative; border-radius: 20px; overflow: hidden; min-height: 560px; background: rgb(216, 207, 198);}
.o187{position: absolute; inset: 0px; transition: opacity 0.4s; opacity: 0;}
.o188{position: absolute; left: 20px; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; gap: 12px; z-index: 2;}
.o189{width: 56px; height: 56px; border-radius: 12px; overflow: hidden; padding: 0px; cursor: pointer; background: rgba(255, 255, 255, 0.35); border: 2px solid transparent; opacity: 0.7; transition: opacity 0.25s, border-color 0.25s;}
.o190{width: 100%; height: 100%; object-fit: cover; display: block;}
.o191{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(24px, 3vw, 48px); display: flex; flex-direction: column; gap: 22px;}
.o192{margin: 0px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(48px, 5.6vw, 96px); line-height: 0.9; letter-spacing: -0.045em;}
.o193{font-size: clamp(14px, 1.3vw, 18px); font-weight: 600; letter-spacing: 0.06em;}
.o194{margin: 0px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.6; text-wrap: pretty;}
.o195{height: 1.5px; background: rgb(201, 196, 190);}
.o196{height: 64px; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(16px, 1.5vw, 22px); font-weight: 500; letter-spacing: 0.03em; cursor: pointer; transition: background 0.25s, color 0.25s;}
.o197{display: flex; flex-direction: column; margin-top: 12px;}
.o198{border-bottom: 1.5px solid rgb(201, 196, 190);}
.o199{width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; cursor: pointer; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(15px, 1.4vw, 20px); font-weight: 600; letter-spacing: 0.05em; text-align: left;}
.o200{position: relative; width: 26px; height: 26px; border-radius: 50%; background: rgb(98, 94, 90); flex-shrink: 0;}
.o201{position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0px 0px -6px; background: rgb(235, 232, 227); border-radius: 1px;}
.o202{position: absolute; left: 50%; top: 50%; width: 2px; height: 12px; margin: -6px 0px 0px -1px; background: rgb(235, 232, 227); border-radius: 1px; transition: transform 0.25s; transform: scaleY(1);}
.o203{display: grid; grid-template-rows: 0fr; transition: grid-template-rows 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);}
.o204{overflow: hidden; min-height: 0px;}
.o205{margin: 0px 0px 20px; font-size: 16px; line-height: 1.6; text-wrap: pretty; transition: opacity 0.35s, transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1); opacity: 0; transform: translateY(-6px);}
.o206{margin-top: 24px; background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 64px); display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: clamp(24px, 4vw, 64px); align-items: center;}
.o207{display: flex; flex-direction: column; gap: 20px;}
.o208{font-size: 14px; font-weight: 600; letter-spacing: 0.08em;}
.o209{margin: 0px; font-size: clamp(15px, 1.25vw, 19px); line-height: 1.6; max-width: 520px; text-wrap: pretty;}
.o210{display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap;}
.o211{width: clamp(56px, 6vw, 88px); height: clamp(56px, 6vw, 88px); border-radius: 50%; border: 1.5px solid rgb(98, 94, 90); background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(15px, 1.4vw, 20px); font-weight: 600; cursor: pointer; transition: background 0.25s, color 0.25s;}
.o212{margin-top: 24px; display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: clamp(16px, 2.5vw, 40px);}
.o213{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 56px); display: flex; flex-direction: column; justify-content: flex-end; gap: 32px; min-height: 560px;}
.o214{margin: 0px; font-family: Archivo, sans-serif; font-weight: 500; font-size: clamp(26px, 2.6vw, 42px); line-height: 1.15; letter-spacing: -0.01em; text-wrap: pretty;}
.o215{display: flex; justify-content: space-between; gap: 24px; padding: 18px 0px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o216{font-size: 15px; font-weight: 600; letter-spacing: 0.06em; white-space: nowrap;}
.o217{font-size: 16px; line-height: 1.5; text-align: right; text-wrap: pretty;}
.o218{margin-top: 24px; display: flex; flex-direction: column; gap: 24px;}
.o219{flex: 1 1 0%; position: relative; display: block; margin: 16px 0px; transition: opacity 0.3s; opacity: 1;}
.o220{margin-top: 24px; margin-bottom: 96px; background: rgb(235, 232, 227); border-radius: 20px; overflow: hidden; color: rgb(98, 94, 90);}
.o221{position: fixed; left: 24px; right: 24px; bottom: 16px; z-index: 60; background: rgba(240, 238, 234, 0.94); backdrop-filter: blur(12px); border-radius: 16px; box-shadow: rgba(0, 0, 0, 0.1) 0px 6px 28px; padding: 12px 12px 12px 20px; display: flex; align-items: center; gap: clamp(12px, 2vw, 28px); color: rgb(98, 94, 90); transition: transform 0.35s, opacity 0.35s; transform: translateY(0px); opacity: 1; pointer-events: auto;}
.o222{position: relative; width: 52px; height: 52px; border-radius: 10px; overflow: hidden; flex-shrink: 0;}
.o223{font-size: clamp(14px, 1.4vw, 20px); font-weight: 600; letter-spacing: 0.05em; white-space: nowrap;}
.o224{margin-left: auto; height: 56px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); padding: 0px 32px; font-family: Archivo, sans-serif; font-size: clamp(14px, 1.3vw, 18px); font-weight: 500; letter-spacing: 0.03em; cursor: pointer; white-space: nowrap;}
.o225{margin: 0px; font-family: "Playfair Display", serif; font-weight: 400; font-size: clamp(30px, 3.6vw, 56px); line-height: 1.05;}
.o226{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.75fr); gap: clamp(16px, 2.5vw, 40px); align-items: start; margin-top: 24px;}
.o227{position: sticky; top: 110px; background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 3vw, 48px); display: flex; flex-direction: column; gap: 28px;}
.o228{display: flex; align-items: center; gap: 12px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; padding: 0px; cursor: pointer; text-align: left; font-family: Archivo, sans-serif; font-size: clamp(14px, 1.3vw, 18px); font-weight: 600; letter-spacing: 0.05em; color: rgb(98, 94, 90); transition: transform 0.3s; transform: translateX(-20px);}
.o229{width: 8px; height: 8px; border-radius: 50%; background: rgb(98, 94, 90); flex-shrink: 0; transition: opacity 0.3s; opacity: 0;}
.o230{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 64px); display: flex; flex-direction: column; gap: clamp(48px, 5vw, 80px);}
.o231{display: flex; flex-direction: column; gap: 12px; scroll-margin-top: 120px;}
.o232{margin: 0px 0px 12px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(28px, 2.8vw, 44px); line-height: 1; letter-spacing: -0.03em;}
.o233{display: flex; flex-direction: column; border-top: 1.5px solid rgb(201, 196, 190);}
.o234{width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; background: none; cursor: pointer; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: clamp(15px, 1.3vw, 19px); font-weight: 600; letter-spacing: 0.01em; text-align: left;}
.o235{position: relative; width: 28px; height: 28px; border-radius: 50%; background: rgb(98, 94, 90); flex-shrink: 0;}
.o236{position: absolute; left: 50%; top: 50%; width: 2px; height: 12px; margin: -6px 0px 0px -1px; background: rgb(235, 232, 227); border-radius: 1px; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); transform: scaleY(1);}
.o237{display: grid; grid-template-rows: 0fr; transition: grid-template-rows 0.45s cubic-bezier(0.4, 0, 0.2, 1);}
.o238{margin: 0px; padding: 0px 56px 24px 0px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.6; text-wrap: pretty; transition: opacity 0.35s; opacity: 0;}
.o239{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: clamp(16px, 2.5vw, 40px); margin-top: 24px;}
.o240{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 64px); display: flex; flex-direction: column; justify-content: space-between; gap: 40px; min-height: 560px;}
.o241{display: flex; flex-direction: column; gap: 24px;}
.o242{margin: 0px; font-family: Archivo, sans-serif; font-weight: 500; font-size: clamp(28px, 2.8vw, 46px); line-height: 1.12; letter-spacing: -0.01em; text-wrap: pretty;}
.o243{margin: 0px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.65; max-width: 560px; text-wrap: pretty;}
.o244{margin-top: 24px; display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: clamp(16px, 2.5vw, 40px);}
.o245{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(24px, 3vw, 44px); display: flex; flex-direction: column; gap: 20px; min-height: 320px; justify-content: space-between;}
.o246{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(40px, 4.4vw, 80px); line-height: 0.9; letter-spacing: -0.045em;}
.o247{margin: 0px; font-size: clamp(15px, 1.15vw, 17px); line-height: 1.6; text-wrap: pretty;}
.o248{margin-top: 24px; position: relative; border-radius: 20px; overflow: hidden; height: clamp(380px, 40vw, 620px); background: rgb(216, 207, 198);}
.o249{position: absolute; inset: 0px; background: rgba(0, 0, 0, 0.22); pointer-events: none;}
.o250{position: absolute; inset: 0px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 24px; padding: 24px; text-align: center; color: rgb(255, 255, 255); pointer-events: none;}
.o251{pointer-events: auto; border: 1.5px solid rgb(255, 255, 255); border-radius: 999px; padding: 12px 40px; font-size: clamp(13px, 1.2vw, 17px); font-weight: 500; letter-spacing: 0.05em; color: rgb(255, 255, 255); transition: background 0.25s, color 0.25s;}
.o252{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 64px); display: flex; flex-direction: column; gap: clamp(40px, 4vw, 64px);}
.o253{display: flex; flex-direction: column; gap: 16px; scroll-margin-top: 120px; padding-top: clamp(28px, 3vw, 40px); border-top: 1.5px solid rgb(201, 196, 190);}
.o254{margin: 0px 0px 4px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(24px, 2.4vw, 36px); line-height: 1; letter-spacing: -0.03em;}
.o255{margin: 0px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.65; max-width: 720px; text-wrap: pretty;}
.o256{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.4fr); gap: clamp(16px, 2.5vw, 40px); margin-top: 24px; align-items: start;}
.o257{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 3.5vw, 56px); display: flex; flex-direction: column; gap: 32px;}
.o258{font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(36px, 3.6vw, 60px); line-height: 0.95; letter-spacing: -0.04em;}
.o259{display: flex; gap: 16px; font-size: 16px;}
.o260{align-self: flex-start; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 12px 32px; font-size: 15px; font-weight: 500; letter-spacing: 0.05em;}
.o261{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 3.5vw, 56px); display: flex; flex-direction: column; gap: 24px;}
.o262{margin: 0px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(26px, 2.4vw, 38px); line-height: 1; letter-spacing: -0.03em;}
.o263{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: 14px;}
.o264{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; border-radius: 14px; background: rgb(255, 255, 255); padding: 16px 18px; font-family: Archivo, sans-serif; font-size: 16px; color: rgb(98, 94, 90); width: 100%; box-sizing: border-box; min-width: 0px;}
.o265{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; border-radius: 14px; background: rgb(255, 255, 255); padding: 16px 18px; font-family: Archivo, sans-serif; font-size: 16px; color: rgb(98, 94, 90); width: 100%; box-sizing: border-box; min-width: 0px; appearance: none; cursor: pointer;}
.o266{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; border-radius: 14px; background: rgb(255, 255, 255); padding: 16px 18px; font-family: Archivo, sans-serif; font-size: 16px; color: rgb(98, 94, 90); width: 100%; box-sizing: border-box; min-width: 0px; grid-column: 1 / -1; resize: vertical; line-height: 1.5;}
.o267{height: 60px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-family: Archivo, sans-serif; font-size: 16px; font-weight: 500; letter-spacing: 0.04em; cursor: pointer; grid-column: 1 / -1; margin-top: 6px;}
.o268{display: flex; flex-direction: column; gap: 20px; padding: 24px 0px;}
.o269{margin: 0px; font-size: clamp(15px, 1.2vw, 18px); line-height: 1.6;}
.o270{align-self: flex-start; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; padding: 12px 32px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 15px; font-weight: 500; letter-spacing: 0.05em; cursor: pointer;}
.o271{align-self: center; display: flex; align-items: baseline; gap: 6px; padding: 16px 0px 4px; font-family: "Playfair Display", serif; color: rgb(95, 92, 88);}
.o272{font-weight: 900; font-size: clamp(28px, 3vw, 44px); line-height: 1;}
.o273{font-weight: 400; font-size: clamp(23px, 2.45vw, 36px); line-height: 1;}
.o274{margin-top: 24px; background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(40px, 6vw, 96px); display: flex; flex-direction: column; align-items: center; gap: 24px; text-align: center;}
.o275{margin: 0px; font-size: 17px;}
.o276{margin-top: 24px; display: grid; grid-template-columns: minmax(0px, 1.4fr) minmax(0px, 1fr); gap: clamp(16px, 2.5vw, 40px); align-items: start;}
.o277{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 3.5vw, 56px); display: flex; flex-direction: column; gap: 40px;}
.o278{display: flex; flex-direction: column; gap: 16px;}
.o279{display: flex; justify-content: space-between; align-items: baseline; gap: 16px;}
.o280{margin: 0px 0px 2px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(26px, 2.4vw, 38px); line-height: 1; letter-spacing: -0.03em;}
.o281{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; outline: none; border-radius: 14px; background: rgb(255, 255, 255); padding: 16px 18px; font-family: Archivo, sans-serif; font-size: 16px; color: rgb(98, 94, 90); width: 100%; box-sizing: border-box; min-width: 0px; grid-column: 1 / -1;}
.o282{display: flex; justify-content: space-between; align-items: center; gap: 16px; background: rgb(255, 255, 255); border-radius: 14px; padding: 18px; border: 1.5px solid rgb(98, 94, 90);}
.o283{display: flex; align-items: center; gap: 14px; background: rgb(255, 255, 255); border-radius: 14px; padding: 18px; border: 1.5px solid transparent; cursor: pointer; text-align: left; font-family: Archivo, sans-serif; color: rgb(98, 94, 90);}
.o284{width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid rgb(98, 94, 90); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.o285{width: 10px; height: 10px; border-radius: 50%; background: rgb(98, 94, 90); transition: opacity 0.2s; opacity: 0;}
.o286{display: flex; flex-direction: column; gap: 2px;}
.o287{height: 64px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-family: Archivo, sans-serif; font-size: 18px; font-weight: 500; letter-spacing: 0.04em; cursor: pointer;}
.o288{position: sticky; top: 110px; background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(24px, 3vw, 44px); display: flex; flex-direction: column; gap: 8px;}
.o289{display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 8px;}
.o290{font-size: 14px; text-decoration: underline;}
.o291{display: grid; grid-template-columns: 72px minmax(0px, 1fr) auto; gap: 16px; align-items: center; padding: 14px 0px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o292{position: relative; width: 72px; height: 72px; border-radius: 12px; background-position: center center; background-size: cover; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255);}
.o293{position: absolute; top: -8px; right: -8px; min-width: 22px; height: 22px; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center;}
.o294{display: flex; flex-direction: column; gap: 4px; min-width: 0px;}
.o295{font-size: 15px; font-weight: 600;}
.o296{display: flex; justify-content: space-between; font-size: 15px; padding-top: 12px;}
.o297{display: flex; justify-content: space-between; font-size: 20px; font-weight: 600; letter-spacing: 0.04em; padding-top: 12px; border-top: 1.5px solid rgb(201, 196, 190); margin-top: 8px;}
.o298{margin-top: 28px; display: flex; flex-direction: column; gap: 12px;}
.o299{display: grid; grid-template-columns: 64px minmax(0px, 1fr) auto; gap: 14px; align-items: center; background: rgb(255, 255, 255); border-radius: 16px; padding: 10px 12px 10px 10px;}
.o300{width: 64px; height: 64px; border-radius: 12px; background-position: center center; background-size: cover; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(240, 238, 234);}
.o301{display: flex; flex-direction: column; gap: 3px; min-width: 0px;}
.o302{font-size: 14px; font-weight: 600; letter-spacing: 0.05em;}
.o303{font-size: 13px;}
.o304{height: 40px; padding: 0px 18px; border: 1.5px solid rgb(98, 94, 90); border-radius: 999px; background: transparent; color: rgb(98, 94, 90); font-family: Archivo, sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 0.05em; cursor: pointer; white-space: nowrap;}
.o305{position: relative; border-radius: 16px; overflow: hidden; height: clamp(260px, 24vw, 340px); background: rgb(216, 207, 198);}
.o306{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(28px, 4vw, 64px); display: flex; flex-direction: column; gap: 28px; min-height: 420px; justify-content: space-between;}
.o307{margin: 0px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(44px, 5vw, 88px); line-height: 0.9; letter-spacing: -0.045em;}
.o308{margin: 0px; font-size: clamp(16px, 1.3vw, 20px); line-height: 1.6; max-width: 600px; text-wrap: pretty;}
.o309{display: flex; flex-wrap: wrap; gap: 12px;}
.o310{height: 56px; padding: 0px 36px; border-radius: 999px; background: rgb(98, 94, 90); color: rgb(244, 242, 238); display: flex; align-items: center; font-size: 15px; font-weight: 500; letter-spacing: 0.04em;}
.o311{height: 56px; padding: 0px 36px; border-radius: 999px; border: 1.5px solid rgb(98, 94, 90); display: flex; align-items: center; font-size: 15px; font-weight: 500; letter-spacing: 0.04em;}
.o312{background: rgb(235, 232, 227); border-radius: 20px; padding: clamp(24px, 3vw, 44px); display: flex; flex-direction: column; gap: 8px;}
.o313{margin: 0px 0px 8px; font-family: Archivo, sans-serif; font-weight: 900; font-stretch: 110%; font-size: clamp(26px, 2.4vw, 38px); line-height: 1; letter-spacing: -0.03em;}
.o314{display: grid; grid-template-columns: 64px minmax(0px, 1fr) auto; gap: 16px; align-items: center; padding: 12px 0px; border-bottom: 1.5px solid rgb(201, 196, 190);}
.o315{width: 64px; height: 64px; border-radius: 12px; background-position: center center; background-size: cover; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255);}
.o316{display: flex; justify-content: space-between; font-size: 20px; font-weight: 600; letter-spacing: 0.04em; padding: 16px 0px;}
.o317{display: flex; justify-content: space-between; gap: 16px; padding: 14px 0px; border-top: 1.5px solid rgb(201, 196, 190);}
.o318{font-size: 15px; text-align: right;}

/* hover states */
.oh0:hover { opacity: 1 !important; background: rgb(98, 94, 90) !important; color: rgb(240, 238, 234) !important; }
.oh1:hover { opacity: 1 !important; background: rgb(79, 75, 71) !important; }
.oh2:hover { background: rgb(98, 94, 90) !important; color: rgb(240, 238, 234) !important; }
.oh3:hover { opacity: 1 !important; box-shadow: rgba(0, 0, 0, 0.07) 0px 6px 24px !important; }
.oh4:hover { background: rgb(79, 75, 71) !important; }
.oh5:hover { background: rgb(98, 94, 90) !important; color: rgb(244, 242, 238) !important; }
.oh6:hover { opacity: 1 !important; }
.oh7:hover { background: rgb(247, 245, 242) !important; }
.oh8:hover { opacity: 1 !important; background: rgb(98, 94, 90) !important; color: rgb(235, 232, 227) !important; }
.oh9:hover { background: rgb(98, 94, 90) !important; color: rgb(255, 255, 255) !important; }
.oh10:hover { opacity: 0.75 !important; }
.oh11:hover { opacity: 1 !important; background: rgb(255, 255, 255) !important; color: rgb(98, 94, 90) !important; }
.oh12:hover { opacity: 1 !important; background: rgb(98, 94, 90) !important; color: rgb(244, 242, 238) !important; }

/* ---- interaction states (toggled by main.js) ---- */
[hidden]{display:none!important}
[data-s~="barT"]{transform:translateY(140%);opacity:0;pointer-events:none}
[data-s~="stickyTransform"]{transform:translateY(-140%);opacity:0;pointer-events:none}
body.bar [data-s~="barT"]{transform:translateY(0);opacity:1;pointer-events:auto}
body.scrolled [data-s~="stickyTransform"]{transform:translateY(0);opacity:1;pointer-events:auto}
body.mnav [data-s~="mnClip"]{clip-path:inset(0 0 0 0 round 0px);pointer-events:auto}
body.mnav [data-s~="l.t"]{transform:translateY(0);opacity:1}
body.mnav [data-s~="l.t"]:nth-child(1){transition-delay:.18s}
body.mnav [data-s~="l.t"]:nth-child(2){transition-delay:.23s}
body.mnav [data-s~="l.t"]:nth-child(3){transition-delay:.28s}
body.mnav [data-s~="l.t"]:nth-child(4){transition-delay:.33s}
body.mnav [data-s~="l.t"]:nth-child(5){transition-delay:.38s}
body.mnav [data-s~="l.t"]:nth-child(6){transition-delay:.43s}
body.mnav [data-s~="mnBtnT"]{transform:translateY(0);opacity:1}
body.ux [data-s~="uxDim"]{opacity:1;pointer-events:auto}
body.ux-cart [data-s~="ctT"]{transform:translateX(0)}
body.ux-search [data-s~="srT"]{transform:translateY(0);opacity:1;pointer-events:auto}
body.ux-account [data-s~="acT"]{transform:translateX(0)}
body.scrolled [data-s~="stickyTransform"]{transform:translateY(0);opacity:1;pointer-events:auto}
body.bar [data-s~="barT"]{transform:translateY(0);opacity:1;pointer-events:auto}
body.mega [data-s~="megaOp"]{opacity:1}
body.mega [data-s~="megaT"]{transform:translateY(0);pointer-events:auto}
.is-on[data-s~="t.color"]{color:#5f5c58;border-bottom-color:#5f5c58}
[data-enter]:hover [data-s~="p.lifeOpacity"],[data-enter]:hover [data-s~="m.lifeOp"],[data-enter]:hover [data-s~="r.lifeOp"]{opacity:1;pointer-events:auto}
[data-enter]:hover [data-s~="p.restOpacity"],[data-enter]:hover [data-s~="r.restOp"],[data-enter]:hover [data-s~="m.infoOp"]{opacity:0}
[data-enter]:hover [data-s~="p.btnOpacity"],[data-enter]:hover [data-s~="m.btnOp"],[data-enter]:hover [data-s~="r.btnOp"]{opacity:1;transform:translateY(0);pointer-events:auto}
[data-enter]:hover[data-s~="m.shadow"]{box-shadow:0 6px 24px rgba(0,0,0,.07)}
[data-s~="a0.w"],[data-s~="a1.w"],[data-s~="a2.w"]{font-size:0}
[data-enter]:hover [data-s~="a0.w"],[data-enter]:hover [data-s~="a1.w"],[data-enter]:hover [data-s~="a2.w"]{width:86px;height:28px;font-size:12px}
.is-on[data-s~="hb.op"],.is-on[data-s~="g.op"]{opacity:1}
.is-on[data-s~="g.ring"]{border-color:#fff;opacity:1}
.is-on[data-s~="c.bg"],.is-on[data-s~="st.bg"]{background:#625e5a;color:#f4f2ee}
.is-open>[data-s~="a.rows"],.is-open>[data-s~="q.rows"]{grid-template-rows:1fr}
.is-open [data-s~="a.op"],.is-open [data-s~="q.op"]{opacity:1;transform:translateY(0)}
.is-open [data-s~="a.vT"],.is-open [data-s~="q.vT"]{transform:scaleY(0)}
.is-on[data-s~="n.shift"]{transform:translateX(0)}
.is-on [data-s~="n.dot"]{opacity:1}
.is-on[data-s~="p.ring"]{border-color:#625e5a}
.is-on [data-s~="p.dot"]{opacity:1}
