:root{--color-gold: #C5A065;--color-gold-dark: #b08d55;--color-sage: #8F9F85;--color-sage-light: #AABCA0;--color-tan: #F3EFE6;--color-tan-dark: #E6E0D4;--color-white: #FFFFFF;--color-text-dark: #333333;--color-text-light: #666666;--font-family-base: "Inter", system-ui, -apple-system, sans-serif;--font-family-display: "Playfair Display", serif;--max-width: 1460px;--header-height: 80px;--shadow-sm: 0 2px 4px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.1);--radius-sm: 4px;--radius-md: 12px;--radius-lg: 20px}:root{font-family:var(--font-family-base);line-height:1.5;font-weight:400;color:var(--color-text-dark);background-color:var(--color-tan);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-tan)}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-base);color:var(--color-gold);text-transform:uppercase;letter-spacing:1px}button{cursor:pointer;border:none;background:none;font-family:inherit}a{text-decoration:none;color:inherit}.app-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}main{width:100%}.bento-wrapper{max-width:var(--max-width);margin:auto;padding:1rem 4rem}.bento-grid{display:grid;grid-template-columns:1fr;gap:2rem;width:100%;height:auto;grid-template-areas:"ap" "air" "pixel"}@media(min-width:900px)and (max-width:1024px){.bento-wrapper{padding:0!important;margin:0!important;max-width:100%!important}.bento-grid{display:grid;grid-template-columns:4fr 3fr 5fr;grid-template-rows:1fr;height:100vh;gap:0;width:100%;grid-template-areas:"ap air pixel";transition:grid-template-columns 1.2s cubic-bezier(.2,1,.2,1)}.bento-grid:has(.area-ap:hover){grid-template-columns:8fr 2.5fr 3.5fr}.bento-grid:has(.area-air:hover){grid-template-columns:3fr 8fr 3fr}.bento-grid:has(.area-pixel:hover){grid-template-columns:3.5fr 2.5fr 8fr}.bento-cell{transition:transform .7s cubic-bezier(.2,1,.2,1),opacity .7s cubic-bezier(.2,1,.2,1)}.bento-grid:has(.bento-cell:hover) .bento-cell:not(:hover){transform:scale(.98);opacity:.6}.area-action{display:none}}@media(min-width:1025px){.bento-grid{grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:1fr;height:80vh;grid-template-areas:"ap air pixel"}}.area-ap{grid-area:ap}.area-air{grid-area:air}.area-pixel{grid-area:pixel}.area-action{grid-area:action}.area-ap .bento-content{justify-content:flex-start;align-items:flex-start;padding:1rem}.area-air .bento-content,.area-pixel .bento-content{justify-content:center;align-items:center;padding:2.5rem;background:none}.mission_statement{font-weight:700;margin:1rem 0 .5rem}.mission_statement_text{padding-bottom:1rem}.inquiry-button{width:100%;padding:1.5rem;margin-top:auto;background-color:#3d5a52;color:#d4a5a5;border:none;border-radius:0;font-size:2rem;font-weight:400;letter-spacing:.3em;cursor:pointer;transition:all .3s ease;text-transform:uppercase}.inquiry-button:hover{background-color:#2d4a42;transform:translateY(-2px)}.area-ap .bento-title{font-size:25cqw;font-weight:800;line-height:.9;letter-spacing:-.04em;color:var(--color-text-dark)}.area-ap .bento-description{font-size:3.5cqw;line-height:1.6;margin-top:2.5rem;max-width:80%;color:#555;font-weight:400;text-align:center;font-family:var(--font-family-body, sans-serif)}.area-air .bento-title,.area-pixel .bento-title{font-size:10cqw;font-family:Outfit,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.05em;line-height:1.1;text-shadow:none}.bento-cell.area-air .bento-title{color:#3d5a52}.area-pixel .bento-title{color:#fff}.area-action .bento-content{justify-content:center;padding:0;background-color:var(--color-text-dark)}.area-action .bento-title{display:none}.action-content{display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:100%;width:100%;gap:1rem;padding:0 2rem}.action-content p{font-family:var(--font-family-display, serif);font-size:2.8rem;font-weight:400;font-style:italic;margin:0;color:#fff;letter-spacing:.02em;line-height:1}.cta-button{padding:1.5rem 3rem;font-size:1rem;background-color:#fff;color:var(--color-text-dark);border:none;border-radius:4px;font-weight:800;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);text-transform:uppercase;letter-spacing:.25em;white-space:nowrap;display:flex;align-items:center;justify-content:center;min-width:200px}.cta-button:hover{background-color:#f0f0f0;transform:translateY(-2px);box-shadow:0 4px 15px #ffffff26}@keyframes simplePulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@media(max-width:899px){.bento-wrapper{margin:0!important;padding:0!important;max-width:100%!important}.bento-grid{gap:0}.area-air,.area-pixel{min-height:450px}.apCellContent .mission_statement_text{padding-bottom:1rem}}.bento-cell{position:relative;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;container-type:inline-size}.bento-cell:hover{transform:translateY(-4px)}.bento-cell:first-child:hover{transform:translateY(0)}.bento-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;transition:transform .5s ease,opacity .8s ease-out;opacity:0}.bento-bg.loaded{opacity:1}.bento-cell:hover .bento-bg{transform:scale(1.05)}.apCellContent{display:grid;justify-content:space-between;height:100%}.apCellContent p{padding:0 1rem}.bento-content{position:relative;z-index:2;padding:1.5rem;height:100%;display:flex;flex-direction:column;justify-content:flex-end}.overlay-content{background:linear-gradient(to top,rgba(0,0,0,.6),transparent);color:#fff;justify-content:flex-end}.overlay-content .bento-title,.overlay-content .bento-subtitle{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.theme-light{background-color:var(--color-tan);color:var(--color-text-dark)}.theme-gold{background-color:var(--color-gold);color:#fff}.theme-gold .bento-subtitle,.theme-gold .bento-title{color:#fff}.theme-sage{background-color:var(--color-sage);color:#fff}.theme-sage .bento-subtitle,.theme-sage .bento-title{color:#fff}.theme-green{background-color:var(--color-sage-light);color:#fff}.theme-tan{background-color:var(--color-tan-dark);color:var(--color-text-dark)}.bento-title{font-family:var(--font-family-display, serif);font-size:1.5rem;margin-bottom:.5rem;font-weight:500;text-transform:uppercase}.bento-logo{max-width:100%;max-height:300px;height:auto;object-fit:contain;align-self:flex-start;margin:auto;opacity:0;transition:opacity .8s ease-out}.bento-logo.loaded{opacity:1}.bento-subtitle{font-size:.8rem;text-transform:uppercase;letter-spacing:2px;opacity:.8;margin-bottom:.25rem}.booking-page-wrapper{width:100%;min-height:100vh;background-color:#fff9f5;font-family:Outfit,sans-serif}.image-column{height:40vh;width:100%}.booking-image{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease-out}.booking-image.loaded{opacity:1}.contact-info-column{padding:2rem 1.5rem}.back-button{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;font-family:Outfit,sans-serif;font-size:1rem;color:#555;padding:0;margin-bottom:2rem;transition:color .2s ease}.back-button:hover{color:#2f4f4f;transform:translate(-5px)}.contact-heading{color:#2f4f4f;font-family:Outfit,sans-serif;font-weight:400;font-size:3.5rem;line-height:1.1;margin:0 0 2rem}.contact-details{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.detail-item h3{font-size:1.1rem;font-weight:500;margin:0 0 .25rem;color:#333}.detail-item p{font-size:1.1rem;font-weight:400;margin:0;color:#555}.detail-item a.phone-link{font-size:1.1rem;font-weight:400;margin:0;color:#555;text-decoration:none;display:block;transition:color .2s ease}.detail-item a.phone-link:hover{color:#2f4f4f}.booking-form{display:flex;flex-direction:column;gap:1.2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;color:#555;font-weight:500}.form-group input,.form-group textarea{padding:.8rem;border:1px solid #ccc;border-radius:4px;background-color:#fff;font-family:Outfit,sans-serif;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2f4f4f}.submit-button{padding:1rem;background-color:#2f4f4f;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:.5rem}.submit-button:hover{background-color:#1a2e2e}.error-message{color:#d32f2f;margin-top:1rem;text-align:center;font-size:.9rem}.error-text-small{color:#d32f2f;font-size:.8rem;margin-top:.25rem;display:block}.success-message-wrapper{padding:2rem}.success-message{text-align:center;padding:2rem;background-color:#2f4f4f0d;border-radius:8px;animation:fadeIn .8s ease-out}.success-message h3{color:#2f4f4f;font-size:1.8rem;margin-bottom:1rem}.reset-button{margin-top:1.5rem;background:none;border:1px solid #2f4f4f;padding:.5rem 1rem;color:#2f4f4f;cursor:pointer;font-family:inherit;border-radius:4px;transition:all .2s}.reset-button:hover{background-color:#2f4f4f;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1024px){.booking-page-wrapper{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:100vh}.image-column{order:2;height:100%}.contact-info-column{order:1;padding:0;display:flex;align-items:center;justify-content:center}.contact-content-inner{width:100%;max-width:450px}.contact-heading{font-size:4rem}}
