:root{--primary-brown: #5c4c3a;--secondary-brown: #7a6a58;--light-brown: #6b5b4a;--warm-accent: #c17b47;--warm-accent-light: #d4965a;--cream: #f5f1eb;--light-cream: #faf8f5;--off-white: #fefcfa;--beige: #e8ddc7;--font-serif: "Georgia", "Times New Roman", serif;--font-sans: "Helvetica Neue", "Arial", sans-serif;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 48px;--spacing-xxl: 64px;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .05);--shadow-md: 0 8px 25px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .1);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:var(--font-sans);font-weight:300;line-height:1.6;color:var(--light-brown);background-color:var(--off-white);min-height:100vh}button{border:none;background:none;font-family:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.navigation{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:fixed;top:0;left:0;right:0;z-index:1000;padding:0;box-shadow:0 2px 20px #0000001a}.nav-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:10px}.nav-logo{font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:400;color:#5c4c3a;text-decoration:none;transition:color .3s ease}.nav-logo:hover{color:#c17b47}.nav-links{display:flex;align-items:center;gap:32px}.nav-link{font-family:Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:400;color:#6b5b4a;text-decoration:none;transition:color .3s ease;position:relative}.nav-link:hover{color:#5c4c3a}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:#c17b47;transition:width .3s ease}.nav-link:hover:after{width:100%}.nav-cta{background:linear-gradient(135deg,#c17b47,#d4965a);color:#fff!important;padding:12px 24px;border-radius:25px;transition:all .3s ease}.nav-cta:after{display:none}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px #c17b474d;color:#fff!important}@media (max-width: 768px){.nav-container{padding:16px 20px}.nav-links{gap:20px}.nav-link{font-size:.9rem}.nav-cta{padding:10px 20px;font-size:.9rem}}.nav-toggle{display:none;background:transparent;border:none;align-items:center;justify-content:center;cursor:pointer}.hamburger{display:inline-flex;flex-direction:column;gap:5px;width:28px;height:20px}.hamburger span{display:block;height:2px;background:#6b5b4a;border-radius:2px;transition:transform .25s ease,opacity .25s ease}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media (max-width: 768px){.nav-toggle{display:flex}.nav-container{position:relative}.nav-links{position:absolute;top:64px;right:20px;display:none;flex-direction:column;gap:14px;padding:12px;background:#fffffffa;border-radius:10px;box-shadow:0 12px 30px #0000001f;min-width:180px;z-index:1100;transition:opacity .2s ease,transform .2s ease;transform-origin:top right}.nav-links.open{display:flex;opacity:1;transform:scale(1)}.nav-links .nav-cta{display:block;width:100%;text-align:center}}.banner{padding:100px 20px;text-align:center;background:linear-gradient(135deg,#f5f1eb,#e8ddc7);margin-bottom:80px;position:relative;overflow:hidden}.banner:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(139,117,92,.05) 0%,transparent 70%);animation:subtle-pulse 8s ease-in-out infinite}@keyframes subtle-pulse{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.1) rotate(5deg)}}.banner-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.banner-title{font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,4rem);color:#5c4c3a;margin-bottom:24px;font-weight:400;line-height:1.2;opacity:0;transform:translateY(30px);animation:fade-in-up 1s ease-out .3s forwards}.banner-subtitle{font-family:Helvetica Neue,Arial,sans-serif;font-size:clamp(1.2rem,2.5vw,1.6rem);color:#7a6a58;line-height:1.6;font-weight:300;opacity:0;transform:translateY(30px);animation:fade-in-up 1s ease-out .6s forwards}@media (max-width: 768px){.banner{padding:40px 16px;margin-bottom:48px}.banner-content{max-width:95%;padding:0 8px}.banner-title{font-size:clamp(1.6rem,6vw,2.4rem)}.banner-subtitle{font-size:clamp(1rem,3.5vw,1.25rem)}}.section{padding:80px 20px;margin-bottom:60px;opacity:0;transform:translateY(50px);animation:fade-in-section .8s ease-out forwards}.section:nth-child(odd){background-color:#faf8f5}.section:nth-child(2n){background-color:#fff}.section-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.full-width .section-content{grid-template-columns:1fr;text-align:center;max-width:900px}.image-left .section-content{grid-template-areas:"image text"}.image-right .section-content{grid-template-areas:"text image"}.image-content{grid-area:image}.text-content{grid-area:text}.full-width-text{grid-area:auto}.section-title{font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,2.8rem);color:#5c4c3a;margin-bottom:32px;font-weight:400;line-height:1.3}.section-text{font-family:Helvetica Neue,Arial,sans-serif;font-size:1.125rem;line-height:1.8;color:#6b5b4a;font-weight:300}.section-text p{margin-bottom:20px}.section-text p:last-child{margin-bottom:0}.section-text ol{margin-bottom:20px;padding-left:24px}.section-text ol:last-child{margin-bottom:0}.section-text li{margin-bottom:12px;line-height:1.8}.section-text li:last-child{margin-bottom:0}.section-image{width:100%;height:auto;border-radius:12px;box-shadow:0 20px 40px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.section-image:hover{transform:translateY(-5px);box-shadow:0 25px 50px #00000026}@keyframes fade-in-section{to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.section{padding:60px 20px}.section-content{grid-template-columns:1fr;gap:40px;text-align:center}.image-left .section-content,.image-right .section-content{grid-template-areas:"image" "text"}.section-title{margin-bottom:24px}}.cta-section{padding:80px 20px;text-align:center;background:linear-gradient(135deg,#f5f1eb,#e8ddc7)}.cta-button{display:inline-block;padding:18px 48px;background:linear-gradient(135deg,#c17b47,#d4965a);color:#fff;text-decoration:none;border:none;border-radius:50px;font-family:Helvetica Neue,Arial,sans-serif;font-size:1.125rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #c17b474d;position:relative;overflow:hidden}.cta-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cta-button:hover{transform:translateY(-3px);box-shadow:0 12px 35px #c17b4766;background:linear-gradient(135deg,#d4965a,#c17b47)}.cta-button:hover:before{left:100%}.cta-button:active{transform:translateY(-1px);box-shadow:0 6px 20px #c17b474d}@media (max-width: 768px){.cta-section{padding:60px 20px}.cta-button{padding:16px 36px;font-size:1rem}}.accordion-section{padding:80px 20px;background-color:#faf8f5}.accordion-container{max-width:800px;margin:0 auto}.accordion-main-title{font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,2.8rem);color:#5c4c3a;text-align:center;margin-bottom:48px;font-weight:400}.accordion{border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001a;background:#fff}.accordion-item{border-bottom:1px solid #e8ddc7}.accordion-item:last-child{border-bottom:none}.accordion-header{width:100%;padding:24px 32px;background:none;border:none;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;position:relative}.accordion-header:hover{background-color:#f5f1eb}.accordion-header.active{background-color:#e8ddc7}.accordion-title{font-family:Georgia,Times New Roman,serif;font-size:1.25rem;color:#5c4c3a;font-weight:400}.accordion-icon{font-size:1.5rem;color:#c17b47;font-weight:300;transition:transform .3s ease;line-height:1}.accordion-icon.rotate{transform:rotate(45deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.accordion-content.open{max-height:500px}.accordion-text{padding:0 32px 32px;font-family:Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.7;color:#6b5b4a;font-weight:300}.accordion-text p{margin-bottom:16px}.accordion-text p:last-child{margin-bottom:0}@media (max-width: 768px){.accordion-section{padding:60px 20px}.accordion-header{padding:20px 24px}.accordion-title{font-size:1.125rem}.accordion-text{padding:0 24px 24px}}.quote-section{padding:100px 20px;background:linear-gradient(135deg,#5c4c3a,#7a6a58);text-align:center;position:relative;overflow:hidden}.quote-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.05) 0%,transparent 50%)}.quote-container{max-width:800px;margin:0 auto;position:relative;z-index:1}.quote-text{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2.2rem);color:#f5f1eb;line-height:1.5;margin:0 0 32px;font-weight:300;font-style:italic;opacity:0;transform:translateY(30px);animation:fade-in-up 1s ease-out .3s forwards}.quote-author{font-family:Helvetica Neue,Arial,sans-serif;font-size:1.125rem;color:#c17b47;font-weight:400;font-style:normal;opacity:0;transform:translateY(20px);animation:fade-in-up 1s ease-out .6s forwards}@keyframes fade-in-up{to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.quote-section{padding:80px 20px}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#6b5b4a;background-color:#fefcfa}.App{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:80px}h1,h2,h3,h4,h5,h6{font-family:Georgia,Times New Roman,serif;color:#5c4c3a;font-weight:400;line-height:1.3}p{margin-bottom:16px}p:last-child{margin-bottom:0}@media (max-width: 768px){.main-content{padding-top:70px}}.lesson-section{background:linear-gradient(135deg,#5c4c3a,#7a6a58);color:#f5f1eb}.lesson-section .section-title{color:#f5f1eb}.lesson-section .section-text{color:#e8ddc7}*{transition:opacity .3s ease,transform .3s ease}.contact-form-section{padding:80px 20px;background-color:#faf8f5}.contact-container{max-width:1000px;margin:0 auto}.contact-content{text-align:center}.contact-content h2{font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,2.8rem);color:#5c4c3a;margin-bottom:32px;font-weight:400}.contact-content p{font-family:Helvetica Neue,Arial,sans-serif;font-size:1.125rem;line-height:1.8;color:#6b5b4a;margin-bottom:48px}.contact-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:48px;margin-top:48px;text-align:left}.contact-form{background:#fff;padding:48px;border-radius:12px;box-shadow:0 20px 40px #0000001a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group{margin-bottom:24px}.form-group label{display:block;font-family:Georgia,Times New Roman,serif;font-size:1rem;color:#5c4c3a;margin-bottom:8px;font-weight:400}.form-group input,.form-group select,.form-group textarea{width:100%;padding:16px;border:2px solid #e8ddc7;border-radius:8px;font-family:Helvetica Neue,Arial,sans-serif;font-size:1rem;color:#6b5b4a;background-color:#fefcfa;transition:border-color .3s ease,box-shadow .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#c17b47;box-shadow:0 0 0 3px #c17b471a}.form-group textarea{resize:vertical;min-height:120px}.form-submit-btn{width:100%;padding:18px 24px;background:linear-gradient(135deg,#c17b47,#d4965a);color:#fff;border:none;border-radius:8px;font-family:Helvetica Neue,Arial,sans-serif;font-size:1.125rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:16px}.form-submit-btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px #c17b474d}.form-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-message{margin-top:16px;padding:16px;border-radius:8px;text-align:center;font-weight:500}.form-message.success{background-color:#d4f5d4;color:#2d5a2d;border:1px solid #7fb07f}.form-message.error{background-color:#f5d4d4;color:#5a2d2d;border:1px solid #bf7f7f}.contact-info{background:#fff;padding:32px;border-radius:12px;box-shadow:0 10px 30px #0000001a;height:fit-content}.contact-info h3{font-family:Georgia,Times New Roman,serif;font-size:1.5rem;color:#5c4c3a;margin-bottom:24px;font-weight:400}.contact-info p{font-size:1rem;margin-bottom:16px;line-height:1.6}.contact-info p:last-child{margin-bottom:0}.contact-info strong{color:#c17b47;font-weight:500}@media (max-width: 968px){.contact-wrapper{grid-template-columns:1fr;gap:32px}.form-row{grid-template-columns:1fr;gap:16px}}@media (max-width: 768px){.contact-form-section{padding:60px 20px}.contact-form{padding:32px 24px}.contact-info{padding:24px}}.reduced-image-height .section-image{max-height:800px;object-fit:cover;object-position:center top}@media (max-width: 768px){.reduced-image-height .section-image{max-height:300px}}@media print{.navigation,.cta-button{display:none}}
