@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Lato:wght@300;400;700&display=swap";:root{--color-cream: #fdf8f2;--color-ivory: #f5ede0;--color-blush: #e8b4a0;--color-rose: #c97b5c;--color-sage: #7a9e7e;--color-sage-light: #a8c5ab;--color-sage-dark: #4a6b4d;--color-gold: #c9a84c;--color-gold-light: #e8d49e;--color-charcoal: #2d2d2d;--color-warm-gray: #8a8a8a;--color-warm-white: #fffcf8;--font-serif: "Playfair Display", Georgia, serif;--font-sans: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition: all .4s ease;--container-width-lg: 78%;--container-width-md: 88%;--container-width-sm: 94%;--shadow-soft: 0 4px 24px rgba(0, 0, 0, .08);--shadow-medium: 0 8px 40px rgba(0, 0, 0, .12);--shadow-warm: 0 8px 32px rgba(201, 168, 76, .18)}html{scroll-behavior:smooth}*,:before,:after{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--color-cream);color:var(--color-charcoal);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.App{background-color:var(--color-cream);min-height:100vh}.navbar{background-color:#fdf8f2d1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);width:max-content;height:auto;display:flex;padding:.6rem 1.4rem;z-index:100;position:fixed;bottom:1.75rem;gap:.4rem;border-radius:3rem;border:1px solid rgba(201,168,76,.25);box-shadow:0 8px 32px #0000001f,0 2px 8px #c9a84c26;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.navbar:active{cursor:grabbing}.nav-items{display:flex;align-items:center;gap:.4rem}.nav-items a{background-color:transparent;padding:.75rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.1rem;color:#7a9e7e;transition:all .35s ease;text-decoration:none}.nav-items a:hover{background-color:#7a9e7e1f;color:#4a6b4d;transform:translateY(-2px)}.nav-items a.active{background-color:#4a6b4d;color:#fffcf8;box-shadow:0 4px 12px #4a6b4d59}.nav-items .timeline-link{background-color:transparent;padding:.75rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.1rem;color:#c9a84c;transition:all .35s ease;text-decoration:none}.nav-items .timeline-link:hover{background-color:#c9a84c1f;color:#c9a84c;transform:translateY(-2px)}.nav-items .blog-link{background-color:transparent;padding:.75rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.1rem;color:#e8b4a0;transition:all .35s ease;text-decoration:none}.nav-items .blog-link:hover{background-color:#e8b4a01f;color:#c97b5c;transform:translateY(-2px)}.mobile-trigger,.mobile-popup{display:none}@media (max-width: 768px){.navbar{flex-direction:column;align-items:center;padding:.5rem;gap:0}.desktop-items{display:none}.mobile-trigger{display:flex;flex-direction:column;align-items:center}.mobile-menu-btn{background-color:#fdf8f2e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.25);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#7a9e7e;font-size:1.5rem;transition:all .35s ease;box-shadow:0 4px 16px #0000001a}.mobile-menu-btn:hover{background-color:#4a6b4d;color:#fffcf8}.mobile-popup{display:flex;flex-direction:column;position:absolute;bottom:4rem;background-color:#fdf8f2f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:1.5rem;border:1px solid rgba(201,168,76,.25);box-shadow:0 8px 32px #00000026;padding:.75rem;gap:.25rem;min-width:160px}.mobile-popup__item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:1rem;color:#7a9e7e;text-decoration:none;font-family:Lato,sans-serif;font-size:.9rem;font-weight:500;transition:all .3s ease}.mobile-popup__item svg{font-size:1.2rem}.mobile-popup__item:hover{background-color:#7a9e7e1f;color:#4a6b4d}.mobile-popup__item.active{background-color:#4a6b4d;color:#fffcf8}.mobile-popup__item.timeline-link{color:#c9a84c}.mobile-popup__item.timeline-link:hover{background-color:#c9a84c1f;color:#c9a84c}.mobile-popup__item.timeline-link.active{background-color:#c9a84c;color:#fffcf8}.mobile-popup__item.blog-link{color:#e8b4a0}.mobile-popup__item.blog-link:hover{background-color:#e8b4a01f;color:#c97b5c}.mobile-popup__item.blog-link.active{background-color:#c97b5c;color:#fffcf8}}.hero-section{position:relative;width:100vw;height:100vh;overflow:hidden;background-color:#2d2d2d}@media screen and (max-width: 768px){.hero-section{height:100svh}}.carousel{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden}.carousel .carousel-inner{display:flex;height:100%;white-space:nowrap;transition:ease 1.2s}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#0000001a,#00000040 40%,#0000008c);z-index:2;pointer-events:none}.hero-content{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:3.5rem 5rem 5rem;pointer-events:none}@media screen and (max-width: 1024px){.hero-content{padding:3rem 4rem 4.5rem}}@media screen and (max-width: 768px){.hero-content{padding:2rem 2rem 6rem;text-align:center}}.hero-content .hero-eyebrow{display:inline-block;font-family:Lato,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#e8d49e;margin-bottom:1rem;opacity:.95}@media screen and (max-width: 768px){.hero-content .hero-eyebrow{font-size:.65rem}}.hero-content .hero-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:700;color:#fffcf8;line-height:1.1;letter-spacing:-.01em;margin-bottom:1.25rem}.hero-content .hero-title .hero-title-italic{font-style:italic;color:#e8d49e;display:block}@media screen and (max-width: 768px){.hero-content .hero-title{font-size:clamp(2rem,10vw,3rem);margin-bottom:1rem}}.hero-content .hero-subtitle{font-family:Lato,sans-serif;font-size:clamp(.95rem,1.5vw,1.15rem);font-weight:300;color:#fffcf8d1;letter-spacing:.04em;max-width:540px}@media screen and (max-width: 768px){.hero-content .hero-subtitle{max-width:100%;font-size:.9rem;margin:0 auto}}.carousel-item{display:inline-block;flex-shrink:0;width:100%;height:100%;overflow:hidden}.carousel-item .image-banner{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 8s ease}.carousel-item:hover .image-banner{transform:scale(1.03)}.carousel-control{background-color:#ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;position:absolute;height:48px;width:48px;border-radius:50%;color:#ffffffe6;cursor:pointer;z-index:4;top:50%;transform:translateY(-50%);transition:all .3s ease}.carousel-control:hover{background-color:#ffffff40;border-color:#ffffff80;color:#fff}.carousel-control.left{left:1.5rem}.carousel-control.right{right:1.5rem}@media screen and (max-width: 768px){.carousel-control{height:40px;width:40px;top:44%}.carousel-control.left{left:.75rem}.carousel-control.right{right:.75rem}}.carousel-indicators{position:absolute;z-index:4;bottom:2rem;right:5rem;display:flex;gap:.5rem;align-items:center}@media screen and (max-width: 768px){.carousel-indicators{right:50%;transform:translate(50%);bottom:3.5rem}}.carousel-indicators .carousel-indicator-item{width:8px;height:8px;border:1.5px solid rgba(255,255,255,.6);background:transparent;border-radius:50%;cursor:pointer;transition:all .3s ease;padding:0}.carousel-indicators .carousel-indicator-item.active{background:#e8d49e;border-color:#e8d49e;width:24px;border-radius:4px}.carousel-indicators .carousel-indicator-item:hover:not(.active){background:#ffffff80}.article-section{background-color:#fdf8f2;padding:6rem 0}@media screen and (max-width: 768px){.article-section{padding:4rem 0}}.article-section.alt-bg{background-color:#f5ede0}.article-section .article-inner{max-width:1100px;margin:0 auto;padding:0 3rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.article-section .article-inner.reverse{direction:rtl}.article-section .article-inner.reverse>*{direction:ltr}@media screen and (max-width: 900px){.article-section .article-inner{grid-template-columns:1fr;gap:2.5rem;padding:0 2rem}.article-section .article-inner.reverse{direction:ltr}}@media screen and (max-width: 600px){.article-section .article-inner{padding:0 1.5rem;gap:2rem}}.article-section .article-image-wrap{position:relative;border-radius:2rem;overflow:hidden;aspect-ratio:4/5;box-shadow:0 12px 48px #0000001f}.article-section .article-image-wrap:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:2px solid rgba(201,168,76,.3);border-radius:2.5rem;z-index:1;pointer-events:none;transition:all .4s ease}.article-section .article-image-wrap:hover:before{top:-14px;right:-14px;bottom:-14px;left:-14px;border-color:#c9a84c8c}.article-section .article-image-wrap .article-img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .6s ease,filter .5s ease;filter:saturate(.9)}.article-section .article-image-wrap:hover .article-img{transform:scale(1.04);filter:saturate(1.1)}@media screen and (max-width: 900px){.article-section .article-image-wrap{aspect-ratio:4/3;max-height:320px}}.article-section .article-content{display:flex;flex-direction:column;gap:1.5rem}.article-section .article-content .article-tag{display:inline-flex;align-items:center;gap:.5rem;font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#c9a84c;padding:.35rem 1rem;background-color:#c9a84c1a;border-radius:2rem;width:fit-content}.article-section .article-content .article-heading{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,3vw,2.4rem);font-weight:700;color:#2d2d2d;line-height:1.25}.article-section .article-content .article-divider{width:48px;height:3px;background:linear-gradient(90deg,#c9a84c,#e8d49e);border-radius:2px}.article-section .article-content .article-body{font-family:Lato,sans-serif;font-size:1rem;font-weight:400;line-height:1.85;color:#5a5a5a;text-align:left}.article-section .article-content .article-body strong{color:#2d2d2d;font-weight:700}.article-section .article-content .article-quote{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:1.1rem;color:#7a9e7e;border-left:3px solid #a8c5ab;padding-left:1.25rem;line-height:1.7}.article-section .article-content .article-stats{display:flex;gap:2rem;margin-top:.5rem}@media screen and (max-width: 480px){.article-section .article-content .article-stats{gap:1.5rem}}.article-section .article-content .article-stats .stat{display:flex;flex-direction:column;gap:.2rem}.article-section .article-content .article-stats .stat .stat-value{font-family:Playfair Display,Georgia,serif;font-size:1.85rem;font-weight:700;color:#c9a84c;line-height:1}.article-section .article-content .article-stats .stat .stat-label{font-family:Lato,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8a8a8a}.gallery-section{background-color:#fdf8f2;padding:5rem 0 4rem}.gallery-section .gallery-header{text-align:center;margin-bottom:2.5rem;padding:0 2rem}.gallery-section .gallery-header .gallery-eyebrow{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#c9a84c;display:block;margin-bottom:.75rem}.gallery-section .gallery-header .gallery-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;color:#2d2d2d}.gallery-section .horizontal{display:flex;padding:.5rem 2rem 1.5rem;max-width:100vw;overflow-x:auto;scroll-behavior:smooth;gap:1.25rem;scrollbar-width:none;-ms-overflow-style:none;cursor:grab}.gallery-section .horizontal::-webkit-scrollbar{display:none}.gallery-section .horizontal:active{cursor:grabbing}.gallery-section .horizontal .image-wrapper{flex-shrink:0;height:280px;border-radius:1.25rem;overflow:hidden;box-shadow:0 4px 20px #0000001a;transition:transform .35s ease,box-shadow .35s ease;position:relative}.gallery-section .horizontal .image-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 60%,rgba(0,0,0,.22) 100%);border-radius:inherit;opacity:0;transition:opacity .35s ease}.gallery-section .horizontal .image-wrapper:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 12px 36px #0000002e}.gallery-section .horizontal .image-wrapper:hover:after{opacity:1}.gallery-section .horizontal .image-wrapper .image{display:block;height:100%;width:auto;border-radius:inherit;transition:filter .35s ease}.gallery-section .horizontal:hover .image-wrapper:not(:hover) .image{filter:saturate(.55) brightness(.9)}.paralax{position:relative;overflow:hidden}.paralax .paralax-img{background-image:url(/assets/paralax-1-DMdKCCYp.JPG);height:75vh;background-attachment:fixed;background-position:center;background-repeat:no-repeat;background-size:cover;transition:filter 3s ease}@media screen and (max-width: 768px){.paralax .paralax-img{background-attachment:scroll;background-size:cover;height:60vh}}.paralax .gray{filter:grayscale(100%)}.paralax .paralax-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#00000061,#0000002e,#0000006b);z-index:1;pointer-events:none}.paralax .paralax-content{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;text-align:center;padding:2rem}.paralax .paralax-content .paralax-label{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#e8d49e;opacity:.9}.paralax .paralax-content .paralax-name{font-family:Playfair Display,Georgia,serif;font-size:clamp(2rem,5vw,4.5rem);font-weight:700;color:#fffcf8;letter-spacing:.06em;line-height:1.15;text-shadow:0 4px 24px rgba(0,0,0,.35)}@media screen and (max-width: 480px){.paralax .paralax-content .paralax-name{font-size:clamp(1.6rem,8vw,2.5rem);letter-spacing:.03em}}.paralax .paralax-content .paralax-tagline{font-family:Lato,sans-serif;font-style:italic;font-size:clamp(.85rem,1.5vw,1.1rem);font-weight:300;color:#fffcf8c7;letter-spacing:.06em}.paralax .paralax-content .paralax-ornament{width:60px;height:1px;background:linear-gradient(90deg,transparent,#e8d49e,transparent);margin:0 auto}.newsletter-section{background:linear-gradient(135deg,#4a6b4d,#7a9e7e);padding:6rem 2rem;text-align:center;position:relative;overflow:hidden}.newsletter-section:before{content:"";position:absolute;top:-80px;left:50%;transform:translate(-50%);width:160px;height:160px;border-radius:50%;background:#ffffff0a;pointer-events:none}.newsletter-section:after{content:"";position:absolute;bottom:-80px;right:-40px;width:260px;height:260px;border-radius:50%;background:#ffffff0a;pointer-events:none}.newsletter-section .newsletter-inner{position:relative;z-index:1;max-width:560px;margin:0 auto}.newsletter-section .newsletter-inner .newsletter-eyebrow{display:block;font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#e8d49e;margin-bottom:1.25rem}.newsletter-section .newsletter-inner .newsletter-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:#fffcf8;margin-bottom:.75rem;line-height:1.25}.newsletter-section .newsletter-inner .newsletter-subtitle{font-family:Lato,sans-serif;font-size:.95rem;font-weight:300;color:#fffcf8bf;margin-bottom:2.5rem;line-height:1.7}.newsletter-section .newsletter-inner .newsletter-form{display:flex;gap:.75rem;max-width:480px;margin:0 auto}.newsletter-section .newsletter-inner .newsletter-form input[type=email]{flex:1;padding:.9rem 1.25rem;background-color:#ffffff26;border:1.5px solid rgba(255,255,255,.3);border-radius:3rem;color:#fffcf8;font-family:Lato,sans-serif;font-size:.95rem;outline:none;transition:all .3s ease}.newsletter-section .newsletter-inner .newsletter-form input[type=email]::placeholder{color:#fffcf88c}.newsletter-section .newsletter-inner .newsletter-form input[type=email]:focus{background-color:#ffffff38;border-color:#e8d49eb3}.newsletter-section .newsletter-inner .newsletter-form .btn-submit{flex-shrink:0;padding:.9rem 1.75rem;background-color:#c9a84c;border:none;border-radius:3rem;color:#2d2d2d;font-family:Lato,sans-serif;font-size:.85rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .3s ease;white-space:nowrap}.newsletter-section .newsletter-inner .newsletter-form .btn-submit:hover{background-color:#e8d49e;transform:translateY(-2px);box-shadow:0 6px 20px #c9a84c73}.newsletter-section .newsletter-inner .newsletter-form .btn-submit:active{transform:translateY(0)}@media screen and (max-width: 480px){.newsletter-section .newsletter-inner .newsletter-form{flex-direction:column}.newsletter-section .newsletter-inner .newsletter-form input[type=email],.newsletter-section .newsletter-inner .newsletter-form .btn-submit{width:100%}}.footer{background-color:#2d2d2d;padding:2.5rem 3rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}@media screen and (max-width: 600px){.footer{flex-direction:column;text-align:center;padding:2rem 1.5rem}}.footer .footer-brand{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;font-weight:600;color:#e8d49e;letter-spacing:.06em}.footer .footer-copy{font-family:Lato,sans-serif;font-size:.82rem;color:#fffcf873;letter-spacing:.02em}.footer .footer-copy a{color:#fffcf8a6;text-decoration:none;position:relative;transition:color .3s ease}.footer .footer-copy a:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:#c9a84c;transform:scaleX(0);transform-origin:right;transition:transform .35s ease}.footer .footer-copy a:hover{color:#e8d49e}.footer .footer-copy a:hover:after{transform:scaleX(1);transform-origin:left}.footer .footer-heart{font-size:1.1rem;color:#c97b5c;animation:heartbeat 1.8s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.12)}56%{transform:scale(1)}}.timeline-page{background-color:#fdf8f2;min-height:100vh;padding:5rem 2rem 4rem;display:flex;flex-direction:column;align-items:center;gap:2rem}.timeline-top-bar{position:fixed;top:1.5rem;left:1.5rem;right:1.5rem;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem}.top-bar-right{display:flex;align-items:center;gap:.5rem}.timeline-home-btn{display:flex;align-items:center;gap:.5rem;background-color:#fdf8f2e6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.25);border-radius:2rem;padding:.6rem 1.2rem;color:#7a9e7e;font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .35s ease;box-shadow:0 4px 16px #00000014}.timeline-home-btn svg{font-size:1.1rem}.timeline-home-btn:hover{background-color:#4a6b4d;color:#fffcf8;border-color:#4a6b4d;transform:translateY(-2px);box-shadow:0 6px 20px #4a6b4d59}.timeline-header{text-align:center;margin-bottom:1rem}.timeline-header .timeline-eyebrow{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#c9a84c;display:block;margin-bottom:.75rem}.timeline-header .timeline-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#2d2d2d;margin-bottom:.75rem}.timeline-header .timeline-subtitle{font-family:Lato,sans-serif;font-size:1rem;color:#8a8a8a;max-width:480px;margin:0 auto;line-height:1.6}.timeline-carousel{display:flex;align-items:center;gap:1.5rem;width:100%;max-width:720px}.timeline-nav{background-color:#fdf8f2d1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(201,168,76,.25);border-radius:50%;width:52px;height:52px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#7a9e7e;font-size:1.5rem;transition:all .35s ease;box-shadow:0 4px 16px #00000014}.timeline-nav:hover{background-color:#4a6b4d;color:#fffcf8;transform:translateY(-2px);box-shadow:0 6px 20px #4a6b4d59}.timeline-nav:active{transform:translateY(0)}.timeline-card{flex:1;background-color:#fffcf8;border-radius:1.5rem;box-shadow:0 8px 40px #0000001a;overflow:hidden;transition:transform .4s ease,box-shadow .4s ease}.timeline-card:hover{transform:translateY(-4px);box-shadow:0 12px 48px #00000026}.timeline-card__image{width:100%;height:320px;background-color:#f5ede0;overflow:hidden;position:relative}.timeline-card__image img{width:100%;height:100%;object-fit:cover}.timeline-card__placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#f5ede0,#e8b4a0);cursor:pointer;transition:background .35s ease}.timeline-card__placeholder:hover{background:linear-gradient(135deg,#e8b4a0,#c97b5c)}.timeline-card__placeholder .placeholder-emoji{font-size:3rem;opacity:.8}.timeline-card__placeholder .placeholder-text{font-family:Playfair Display,Georgia,serif;font-size:1rem;color:#2d2d2d;font-weight:600}.timeline-card__placeholder .placeholder-hint{font-family:Lato,sans-serif;font-size:.75rem;color:#8a8a8a;letter-spacing:.05em}.timeline-card .file-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.timeline-card .image-change-btn{position:absolute;bottom:1rem;right:1rem;background-color:#fdf8f2e6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.25);border-radius:1.5rem;padding:.5rem 1rem;font-family:Lato,sans-serif;font-size:.75rem;font-weight:600;color:#7a9e7e;cursor:pointer;transition:all .35s ease;box-shadow:0 4px 16px #0000001a}.timeline-card .image-change-btn:hover{background-color:#4a6b4d;color:#fffcf8;border-color:#4a6b4d}.timeline-card__content{padding:1.75rem 2rem 1.5rem}.timeline-card__age{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:#c9a84c;display:block;margin-bottom:.5rem}.timeline-card__title{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:700;color:#2d2d2d;margin-bottom:.75rem}.timeline-card__description{font-family:Lato,sans-serif;font-size:.95rem;color:#8a8a8a;line-height:1.7}.timeline-card__progress{padding:0 2rem 1.5rem}.timeline-card .progress-label{font-family:Lato,sans-serif;font-size:.75rem;color:#c9a84c;font-weight:700;display:block;text-align:center;margin-bottom:.5rem}.timeline-card .progress-bar{height:4px;background-color:#f5ede0;border-radius:2px;overflow:hidden}.timeline-card .progress-bar__fill{height:100%;background:linear-gradient(90deg,#c9a84c,#e8d49e);border-radius:2px;transition:width .4s ease}.timeline-dots{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;max-width:500px}.timeline-dot{background-color:#f5ede0;border:none;border-radius:50%;width:10px;height:10px;cursor:pointer;transition:all .3s ease;padding:0}.timeline-dot--active{background-color:#c9a84c;transform:scale(1.3);box-shadow:0 2px 8px #c9a84c66}.timeline-dot:hover:not(.timeline-dot--active){background-color:#e8d49e}.timeline-nav-arrows{display:flex;gap:1rem;margin-top:.5rem}.timeline-arrow{font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.05em;color:#7a9e7e;background-color:transparent;border:1px solid rgba(122,158,126,.3);border-radius:2rem;padding:.6rem 1.5rem;cursor:pointer;transition:all .35s ease}.timeline-arrow:hover{background-color:#7a9e7e;color:#fffcf8;border-color:#7a9e7e;transform:translateY(-2px);box-shadow:0 4px 16px #7a9e7e59}.timeline-arrow:active{transform:translateY(0)}.timeline-arrow--left:hover{background-color:#4a6b4d;border-color:#4a6b4d}.timeline-arrow--right:hover{background-color:#c9a84c;border-color:#c9a84c}.birthday-countdown{background:linear-gradient(135deg,#fff9f0,#fff5e6);border:2px solid rgba(201,168,76,.3);border-radius:1.5rem;padding:2rem 2.5rem;text-align:center;margin-top:1rem;width:100%;max-width:420px}.birthday-countdown__cake{font-size:3.5rem;margin-bottom:.5rem;animation:bounce 2s ease-in-out infinite}.birthday-countdown__title{font-family:Playfair Display,Georgia,serif;font-size:1.4rem;font-weight:700;color:#2d2d2d;margin-bottom:.25rem}.birthday-countdown__subtitle{font-family:Lato,sans-serif;font-size:.85rem;color:#c9a84c;font-weight:600;letter-spacing:.05em;margin-bottom:1.25rem}.birthday-countdown__timer{display:flex;align-items:center;justify-content:center;gap:.5rem}.birthday-countdown__unit{display:flex;flex-direction:column;align-items:center;min-width:60px}.birthday-countdown .countdown-number{font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:700;color:#c9a84c;line-height:1}.birthday-countdown .countdown-label{font-family:Lato,sans-serif;font-size:.65rem;color:#8a8a8a;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem}.birthday-countdown .countdown-sep{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;color:#c9a84c;font-weight:700;margin-bottom:1rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width: 600px){.birthday-countdown{padding:1.5rem 1.25rem}.birthday-countdown__cake{font-size:2.5rem}.birthday-countdown .countdown-number{font-size:1.5rem}.birthday-countdown__unit{min-width:48px}.timeline-page{padding:4rem 1rem 3rem}.timeline-card__image{height:240px}.timeline-card__content{padding:1.25rem 1.5rem 1rem}.timeline-nav{width:42px;height:42px;font-size:1.2rem}}.tab-switcher{display:flex;gap:.5rem;background-color:#fdf8f2cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.2);border-radius:2rem;padding:.35rem}.tab-switcher__btn{background:transparent;border:none;border-radius:1.5rem;padding:.5rem 1.25rem;font-family:Lato,sans-serif;font-size:.82rem;font-weight:600;color:#8a8a8a;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.4rem}.tab-switcher__btn.active{background-color:#c9a84c;color:#fffcf8;box-shadow:0 2px 8px #c9a84c4d}.tab-switcher__btn:hover:not(.active){color:#2d2d2d;background-color:#c9a84c1a}.top-bar-auth{display:flex;align-items:center;gap:.75rem}.top-bar-auth .top-bar-email{font-family:Lato,sans-serif;font-size:.75rem;color:#8a8a8a;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-btn{display:flex;align-items:center;gap:.4rem;background-color:#fdf8f2e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.25);border-radius:2rem;padding:.5rem 1rem;color:#7a9e7e;font-family:Lato,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .35s ease;text-decoration:none}.tab-btn svg{font-size:1rem}.tab-btn:hover{background-color:#4a6b4d;color:#fffcf8;border-color:#4a6b4d}.tab-btn.login-btn{color:#c9a84c;border-color:#c9a84c4d}.tab-btn.login-btn:hover{background-color:#c9a84c;color:#fffcf8;border-color:#c9a84c}.logout-sm-btn{background:transparent;border:1px solid rgba(201,123,92,.3);color:#c97b5c;font-family:Lato,sans-serif;font-size:.75rem;font-weight:600;padding:.3rem .75rem;border-radius:2rem;cursor:pointer;transition:all .3s ease}.logout-sm-btn:hover{background-color:#c97b5c1a;border-color:#c97b5c}.growth-dashboard{width:100%;max-width:800px;display:flex;flex-direction:column;gap:2rem}.growth-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.growth-summary__card{background-color:#fffcf8;border-radius:1.25rem;padding:1.25rem 1rem;text-align:center;box-shadow:0 4px 20px #00000012;display:flex;flex-direction:column;gap:.25rem;transition:transform .3s ease,box-shadow .3s ease}.growth-summary__card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #0000001f}.growth-summary__label{font-family:Lato,sans-serif;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#c9a84c}.growth-summary__value{font-family:Playfair Display,Georgia,serif;font-size:1.6rem;font-weight:700;color:#2d2d2d;line-height:1.1}.growth-summary__sub{font-family:Lato,sans-serif;font-size:.65rem;color:#8a8a8a}.growth-charts{display:flex;flex-direction:column;gap:1.25rem}.growth-chart-card{background-color:#fffcf8;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 24px #00000014}.growth-chart-card__title{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;font-weight:700;color:#2d2d2d;margin-bottom:1rem;text-align:center}.growth-records{background-color:#fffcf8;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 24px #00000014}.growth-records__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.growth-records__header h3{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:700;color:#2d2d2d}.growth-add-btn{display:flex;align-items:center;gap:.4rem;background-color:#7a9e7e;border:none;border-radius:2rem;padding:.5rem 1rem;color:#fffcf8;font-family:Lato,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease}.growth-add-btn svg{font-size:1rem}.growth-add-btn:hover{background-color:#4a6b4d;transform:translateY(-2px);box-shadow:0 4px 12px #4a6b4d4d}.growth-form{background:linear-gradient(135deg,#fdf8f2,#f5ede0);border-radius:1rem;padding:1.25rem;margin-bottom:1.25rem}.growth-form__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.growth-form__header h4{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;color:#2d2d2d}.growth-form__header button{background:transparent;border:none;font-size:1.25rem;color:#8a8a8a;cursor:pointer;padding:.25rem}.growth-form__header button:hover{color:#c97b5c}.growth-form__row{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:.75rem}.growth-form .form-group{display:flex;flex-direction:column;gap:.3rem}.growth-form .form-group label{font-family:Lato,sans-serif;font-size:.7rem;font-weight:700;color:#7a9e7e;text-transform:uppercase;letter-spacing:.05em}.growth-form .form-group input{background-color:#fffcf8;border:1px solid rgba(201,168,76,.2);border-radius:.6rem;padding:.5rem .75rem;font-family:Lato,sans-serif;font-size:.85rem;color:#2d2d2d}.growth-form .form-group input:focus{outline:none;border-color:#c9a84c;box-shadow:0 0 0 2px #c9a84c26}.growth-form .form-group input::placeholder{color:#8a8a8a}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.75rem}.form-actions button{display:flex;align-items:center;gap:.4rem;padding:.6rem 1.25rem;border-radius:2rem;font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.form-actions .btn-cancel{background:transparent;border:1px solid rgba(138,138,138,.3);color:#8a8a8a}.form-actions .btn-cancel:hover{background-color:#f5ede0;color:#2d2d2d}.form-actions .btn-submit{background-color:#7a9e7e;border:none;color:#fffcf8}.form-actions .btn-submit:hover{background-color:#4a6b4d}.growth-empty{text-align:center;padding:2rem;color:#8a8a8a;font-family:Lato,sans-serif;font-size:.9rem}.growth-table{display:flex;flex-direction:column;gap:.5rem;max-height:320px;overflow-y:auto}.growth-table__header{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr 1fr 2fr 1fr;gap:.5rem;padding:.5rem .75rem;font-family:Lato,sans-serif;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#c9a84c;border-bottom:1px solid rgba(201,168,76,.15);position:sticky;top:0;background:#fffcf8}.growth-table__row{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr 1fr 2fr 1fr;gap:.5rem;padding:.6rem .75rem;font-family:Lato,sans-serif;font-size:.82rem;color:#5a5a5a;border-radius:.5rem;transition:background .2s ease;align-items:center}.growth-table__row:hover{background-color:#c9a84c0d}.growth-table__row .note-cell{color:#8a8a8a;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.growth-table__row .actions-cell{display:flex;gap:.35rem}.growth-table__row .actions-cell button{background:transparent;border:none;color:#8a8a8a;font-size:.95rem;cursor:pointer;padding:.2rem;border-radius:.3rem;transition:all .2s ease}.growth-table__row .actions-cell button:hover{color:#c97b5c;background-color:#c97b5c1a}.milestone-tracker{background-color:#fffcf8;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 24px #00000014}.milestone-tracker__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.milestone-tracker__header h3{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:700;color:#2d2d2d;display:flex;align-items:center;gap:.5rem}.milestone-tracker__header h3 svg{color:#c9a84c;font-size:1.3rem}.milestone-tracker .milestone-progress-badge{background-color:#c9a84c26;color:#b8963f;font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;padding:.3rem .75rem;border-radius:2rem}.milestone-category{margin-bottom:1.25rem}.milestone-category__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem;padding-bottom:.4rem;border-bottom:1px solid rgba(201,168,76,.15)}.milestone-category__header h4{font-family:Lato,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#7a9e7e}.milestone-category__header span{font-family:Lato,sans-serif;font-size:.72rem;color:#8a8a8a;font-weight:600}.milestone-list{display:flex;flex-wrap:wrap;gap:.5rem}.milestone-item{display:flex;align-items:center;gap:.5rem;background-color:#fdf8f2;border:1px solid rgba(201,168,76,.15);border-radius:.75rem;padding:.4rem .6rem .4rem .4rem;transition:all .3s ease}.milestone-item.achieved{background-color:#4a6b4d14;border-color:#4a6b4d40}.milestone-item .milestone-checkbox{width:22px;height:22px;border-radius:50%;border:2px solid rgba(201,168,76,.4);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s ease;padding:0;flex-shrink:0}.milestone-item .milestone-checkbox .milestone-empty-check{width:10px;height:10px;border-radius:50%;background-color:transparent}.milestone-item .milestone-checkbox svg{font-size:.85rem;color:#fff}.milestone-item .milestone-checkbox:hover:not(:disabled){border-color:#7a9e7e;background-color:#7a9e7e33}.milestone-item .milestone-checkbox:disabled{cursor:default}.milestone-item.achieved .milestone-checkbox{background-color:#7a9e7e;border-color:#7a9e7e}.milestone-item .milestone-info{display:flex;flex-direction:column;gap:.05rem}.milestone-item .milestone-name{font-family:Lato,sans-serif;font-size:.75rem;color:#2d2d2d;font-weight:500}.milestone-item .milestone-age{font-family:Lato,sans-serif;font-size:.62rem;color:#8a8a8a;font-weight:600}.milestone-item .milestone-achieved-badge{font-size:.7rem;color:#4a6b4d;font-weight:700}@media (max-width: 768px){.growth-summary,.growth-form__row{grid-template-columns:repeat(2,1fr)}.growth-table__header,.growth-table__row{grid-template-columns:2fr 1.5fr 1fr 1fr 1.5fr}.growth-table__header span:nth-child(5),.growth-table__row span:nth-child(5){display:none}}@media (max-width: 600px){.tab-switcher{width:100%}.tab-switcher__btn{flex:1;justify-content:center;font-size:.78rem;padding:.45rem .75rem}.growth-summary{grid-template-columns:repeat(2,1fr)}.growth-summary__value{font-size:1.3rem}.growth-form__row{grid-template-columns:1fr 1fr}.growth-table__header{display:none}.growth-table__row{grid-template-columns:1fr 1fr 1fr;gap:.35rem}.growth-table__row span:nth-child(5){display:none}.growth-table__row span:nth-child(6){grid-column:span 3;font-size:.72rem;color:#8a8a8a;padding-top:.25rem;border-top:1px solid rgba(201,168,76,.1);margin-top:.25rem}.milestone-list{gap:.35rem}.milestone-item .milestone-name{font-size:.7rem}}.blog-page{background-color:#fdf8f2;min-height:100vh;padding:5rem 2rem 4rem}.blog-top-bar{position:fixed;top:1.5rem;left:1.5rem;right:1.5rem;display:flex;justify-content:space-between;align-items:center;z-index:50}.blog-home-btn{display:flex;align-items:center;gap:.5rem;background-color:#fdf8f2e6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(201,168,76,.25);border-radius:2rem;padding:.6rem 1.2rem;color:#7a9e7e;font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .35s ease;box-shadow:0 4px 16px #00000014}.blog-home-btn svg{font-size:1.1rem}.blog-home-btn:hover{background-color:#4a6b4d;color:#fffcf8;border-color:#4a6b4d;transform:translateY(-2px);box-shadow:0 6px 20px #4a6b4d59}.blog-add-btn{display:flex;align-items:center;gap:.5rem;background-color:#c9a84c;border:none;border-radius:2rem;padding:.6rem 1.2rem;color:#fffcf8;font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .35s ease;box-shadow:0 4px 16px #c9a84c4d}.blog-add-btn svg{font-size:1.1rem}.blog-add-btn:hover{background-color:#b8963f;transform:translateY(-2px);box-shadow:0 6px 20px #c9a84c66}.blog-header{text-align:center;margin-bottom:3rem}.blog-header .blog-eyebrow{font-family:Lato,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#c9a84c;display:block;margin-bottom:.75rem}.blog-header .blog-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;color:#2d2d2d;margin-bottom:.75rem}.blog-header .blog-subtitle{font-family:Lato,sans-serif;font-size:1rem;color:#8a8a8a}.blog-write-form{background-color:#fffcf8;border-radius:1.5rem;box-shadow:0 8px 40px #0000001a;padding:2rem;margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto}.blog-write-form__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.blog-write-form__header h2{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;color:#2d2d2d}.blog-write-form .blog-close-btn{background:transparent;border:none;font-size:1.5rem;color:#8a8a8a;cursor:pointer;padding:.5rem;transition:color .3s ease}.blog-write-form .blog-close-btn:hover{color:#c97b5c}.blog-write-form form{display:flex;flex-direction:column;gap:1.25rem}.blog-write-form .form-group{display:flex;flex-direction:column;gap:.5rem}.blog-write-form .form-group label{font-family:Lato,sans-serif;font-size:.85rem;font-weight:700;color:#7a9e7e;letter-spacing:.05em;text-transform:uppercase}.blog-write-form .form-group input[type=text],.blog-write-form .form-group input[type=date],.blog-write-form .form-group textarea{background-color:#fdf8f2;border:1px solid rgba(201,168,76,.2);border-radius:.75rem;padding:.75rem 1rem;font-family:Lato,sans-serif;font-size:.95rem;color:#2d2d2d;transition:all .3s ease}.blog-write-form .form-group input[type=text]:focus,.blog-write-form .form-group input[type=date]:focus,.blog-write-form .form-group textarea:focus{outline:none;border-color:#c9a84c;box-shadow:0 0 0 3px #c9a84c26}.blog-write-form .form-group input[type=text]::placeholder,.blog-write-form .form-group input[type=date]::placeholder,.blog-write-form .form-group textarea::placeholder{color:#8a8a8a}.blog-write-form .form-group textarea{resize:vertical;min-height:120px}.blog-write-form .image-upload-area{display:flex;flex-direction:column;gap:1rem}.blog-write-form .image-upload-btn{display:inline-flex;align-items:center;gap:.5rem;background-color:#fdf8f2;border:2px dashed rgba(201,168,76,.3);border-radius:1rem;padding:1rem 1.5rem;color:#c9a84c;font-family:Lato,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-start}.blog-write-form .image-upload-btn svg{font-size:1.2rem}.blog-write-form .image-upload-btn:hover{background-color:#c9a84c1a;border-color:#c9a84c}.blog-write-form .image-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.blog-write-form .image-preview-item{position:relative;aspect-ratio:1;border-radius:.75rem;overflow:hidden}.blog-write-form .image-preview-item img{width:100%;height:100%;object-fit:cover}.blog-write-form .image-preview-item .image-remove-btn{position:absolute;top:.25rem;right:.25rem;background-color:#2d2d2dcc;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#fffcf8;font-size:.8rem;cursor:pointer;opacity:0;transition:opacity .3s ease}.blog-write-form .image-preview-item .image-remove-btn:hover{background-color:#c97b5c}.blog-write-form .image-preview-item:hover .image-remove-btn{opacity:1}.blog-write-form .form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.blog-write-form .form-actions button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:2rem;font-family:Lato,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .35s ease}.blog-write-form .form-actions .btn-cancel{background-color:transparent;border:1px solid rgba(138,138,138,.3);color:#8a8a8a}.blog-write-form .form-actions .btn-cancel:hover{background-color:#f5ede0;color:#2d2d2d}.blog-write-form .form-actions .btn-submit{background-color:#7a9e7e;border:none;color:#fffcf8}.blog-write-form .form-actions .btn-submit svg{font-size:1rem}.blog-write-form .form-actions .btn-submit:hover{background-color:#4a6b4d;transform:translateY(-2px);box-shadow:0 4px 16px #4a6b4d59}.blog-posts{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.blog-empty{text-align:center;padding:4rem 2rem;background-color:#fffcf8;border-radius:1.5rem;box-shadow:0 4px 24px #0000000f}.blog-empty__emoji{font-size:4rem;display:block;margin-bottom:1rem}.blog-empty p{font-family:Lato,sans-serif;color:#8a8a8a;font-size:1rem;margin-bottom:.5rem}.blog-empty p:last-child{font-size:.9rem}.blog-post{background-color:#fffcf8;border-radius:1.5rem;box-shadow:0 4px 24px #0000000f;padding:1.75rem;transition:transform .35s ease,box-shadow .35s ease}.blog-post:hover{transform:translateY(-4px);box-shadow:0 8px 40px #0000001a}.blog-post__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.blog-post__date{font-family:Lato,sans-serif;font-size:.75rem;font-weight:600;color:#c9a84c;letter-spacing:.05em;text-transform:uppercase}.blog-post__actions{display:flex;gap:.5rem}.blog-post__actions button{background:transparent;border:none;color:#8a8a8a;font-size:1rem;padding:.35rem;cursor:pointer;transition:all .3s ease;border-radius:.5rem}.blog-post__actions button:hover{color:#c97b5c;background-color:#c97b5c1a}.blog-post__title{font-family:Playfair Display,Georgia,serif;font-size:1.4rem;font-weight:700;color:#2d2d2d;margin-bottom:1rem}.blog-post__images{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.25rem;border-radius:1rem;overflow:hidden}.blog-post__images.single{grid-template-columns:1fr}.blog-post__image-wrapper{aspect-ratio:4/3;overflow:hidden;border-radius:.75rem}.blog-post__image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.blog-post__image-wrapper:hover img{transform:scale(1.05)}.blog-post__content{font-family:Lato,sans-serif;font-size:.95rem;color:#5a5a5a;line-height:1.8;white-space:pre-wrap}.blog-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#2d2d2d99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.blog-modal{background-color:#fffcf8;border-radius:1.5rem;padding:2rem;width:100%;max-width:400px;box-shadow:0 20px 60px #0003}.blog-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.blog-modal__header h2{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;color:#2d2d2d}.blog-modal__header button{background:transparent;border:none;font-size:1.5rem;color:#8a8a8a;cursor:pointer;padding:.25rem}.blog-modal__header button:hover{color:#c97b5c}.blog-modal form{display:flex;flex-direction:column;gap:1rem}.blog-modal .form-group{display:flex;flex-direction:column;gap:.5rem}.blog-modal .form-group label{font-family:Lato,sans-serif;font-size:.8rem;font-weight:700;color:#7a9e7e;letter-spacing:.05em;text-transform:uppercase}.blog-modal .form-group input{background-color:#fdf8f2;border:1px solid rgba(201,168,76,.2);border-radius:.75rem;padding:.75rem 1rem;font-family:Lato,sans-serif;font-size:.95rem;color:#2d2d2d;transition:all .3s ease}.blog-modal .form-group input:focus{outline:none;border-color:#c9a84c;box-shadow:0 0 0 3px #c9a84c26}.blog-modal .form-group input::placeholder{color:#8a8a8a}.blog-modal .blog-login-error{color:#c97b5c;font-family:Lato,sans-serif;font-size:.85rem;margin:0}.blog-modal .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.blog-modal .form-actions button{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.25rem;border-radius:2rem;font-family:Lato,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .35s ease}.blog-modal .form-actions .btn-cancel{background-color:transparent;border:1px solid rgba(138,138,138,.3);color:#8a8a8a}.blog-modal .form-actions .btn-cancel:hover{background-color:#f5ede0;color:#2d2d2d}.blog-modal .form-actions .btn-submit{background-color:#7a9e7e;border:none;color:#fffcf8}.blog-modal .form-actions .btn-submit:hover:not(:disabled){background-color:#4a6b4d}.blog-modal .form-actions .btn-submit:disabled{opacity:.6;cursor:not-allowed}.blog-user-bar{display:flex;align-items:center;gap:.75rem;justify-content:center;margin-bottom:1rem;font-family:Lato,sans-serif;font-size:.8rem;color:#8a8a8a}.blog-user-bar span:first-child{font-weight:600;color:#5a5a5a}.blog-auth-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .75rem;border-radius:2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.blog-auth-badge svg{font-size:.8rem}.blog-auth-badge.authorized{background-color:#4a6b4d26;color:#4a6b4d}.blog-auth-badge.viewer{background-color:#c9a84c26;color:#b8963f}.blog-logout-btn{background:transparent;border:1px solid rgba(201,123,92,.3);color:#c97b5c;font-family:Lato,sans-serif;font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:2rem;cursor:pointer;transition:all .3s ease}.blog-logout-btn:hover{background-color:#c97b5c1a;border-color:#c97b5c}@media (max-width: 600px){.blog-page{padding:4rem 1rem 3rem}.blog-top-bar{top:1rem;left:1rem;right:1rem}.blog-add-btn{padding:.6rem;border-radius:50%}.blog-add-btn span{display:none}.blog-add-btn svg{font-size:1.2rem}.blog-write-form{padding:1.25rem;margin:0 -.5rem 2rem}.blog-write-form .form-actions{flex-direction:column}.blog-write-form .form-actions button{width:100%;justify-content:center}.blog-post{padding:1.25rem}.blog-post__title{font-size:1.2rem}.blog-post__images{grid-template-columns:1fr}}body{margin:0;font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fdf8f2}
