.banner-section{position:relative;width:100%;height:calc(100vh - 6.9rem);overflow:hidden;background:linear-gradient(135deg,#3b1112,#5b1c1d)}@media(max-width:768px){.banner-section{height:calc(100vh - 5.6rem)}}.banner-section .floating-boxes{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.banner-section .floating-boxes .box-image{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);opacity:.15;transform:rotate(var(--rotation));animation:floatUpDown var(--duration) ease-in-out infinite;animation-delay:var(--delay);filter:drop-shadow(0 10px 30px rgba(0,0,0,.2));transition:opacity .3s ease}@media(max-width:1024px){.banner-section .floating-boxes .box-image{opacity:.1}}@media(max-width:768px){.banner-section .floating-boxes .box-image{opacity:.08}}.banner-section .floating-boxes .box-image img{filter:brightness(0) invert(1);opacity:.8}.banner-section .banner-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,transparent 0,rgba(59,17,18,.2) 100%);z-index:2}.banner-section .banner-wrapper{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6rem;width:100%;height:100%;padding:0 12rem;z-index:4}@media(max-width:1024px){.banner-section .banner-wrapper{padding:0 6rem;gap:4rem}}@media(max-width:768px){.banner-section .banner-wrapper{padding:0 2rem;gap:3rem}}.banner-section .banner-content{display:flex;flex-direction:column;align-items:center;text-align:center;color:#e9e1d3}@media(max-width:768px){.banner-section .banner-content{gap:2rem}}.banner-section .banner-title{display:flex;flex-direction:column;font-size:5rem;font-weight:700;line-height:1.3;letter-spacing:.2rem;margin-bottom:4rem}@media(max-width:1024px){.banner-section .banner-title{font-size:4rem;margin-bottom:3rem}}@media(max-width:768px){.banner-section .banner-title{font-size:3rem;margin-bottom:2rem;line-height:1.4;letter-spacing:.1rem}}.banner-section .banner-title .title-line{opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease-out forwards}.banner-section .banner-title .title-line:first-child{animation-delay:.2s}.banner-section .banner-title .title-line:nth-child(2){animation-delay:.5s}.banner-section .banner-title .title-line:nth-child(3){animation-delay:.8s}.banner-section .banner-title .title-line.highlight{font-size:1.05em;margin-top:.8rem;font-weight:800;letter-spacing:.05em;background:linear-gradient(135deg,#c87872,#f0d5b8 25%,#fff5e6 50%,#f0d5b8 75%,#c87872);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp 1s ease-out forwards;animation-delay:.8s}@media(max-width:768px){.banner-section .banner-title .title-line.highlight{font-size:1.02em;margin-top:.4rem}}.banner-section .banner-subtitle{display:flex;flex-direction:column;font-size:3.2rem;font-weight:500;line-height:1.4;opacity:.95}@media(max-width:1024px){.banner-section .banner-subtitle{font-size:2.4rem}}@media(max-width:768px){.banner-section .banner-subtitle{font-size:1.8rem;line-height:1.5}}.banner-section .banner-subtitle .subtitle-line{opacity:0;transform:translateY(20px);animation:fadeInUp 1s ease-out forwards}.banner-section .banner-subtitle .subtitle-line:first-child{animation-delay:1.2s}.banner-section .banner-subtitle .subtitle-line:nth-child(2){animation-delay:1.5s}.banner-section .banner-buttons{display:flex;justify-content:center;align-items:center;gap:1.6rem;opacity:0;transform:translateY(20px);animation:fadeInUp 1s ease-out forwards;animation-delay:1.8s}@media(max-width:768px){.banner-section .banner-buttons{flex-direction:column;align-items:center;gap:1.2rem;width:100%}}.banner-section .banner-buttons .banner-btn{position:relative;padding:12px 32px;border-radius:.8rem;border:2px solid #e9e1d3;background-color:transparent;color:#e9e1d3;font-size:1.8rem;font-weight:600;cursor:pointer;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}@media(max-width:1024px){.banner-section .banner-buttons .banner-btn{padding:10px 24px;font-size:1.6rem}}@media(max-width:768px){.banner-section .banner-buttons .banner-btn{padding:12px 20px;width:60%;min-width:18.8rem;font-size:1.5rem}}.banner-section .banner-buttons .banner-btn>span{position:relative;z-index:2}.banner-section .banner-buttons .banner-btn .btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transition:left .5s;z-index:1}.banner-section .banner-buttons .banner-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px hsla(38,33%,87%,.4);background-color:#e9e1d3;color:#3b1112}@media(max-width:768px){.banner-section .banner-buttons .banner-btn:hover{transform:translateY(0)}}.banner-section .banner-buttons .banner-btn:hover .btn-shine{left:100%}.banner-section .banner-buttons .banner-btn:active{transform:translateY(-1px)}@media(max-width:768px){.banner-section .banner-buttons .banner-btn:active{transform:translateY(0)}}@keyframes floatUpDown{0%,to{transform:translateY(0) rotate(var(--rotation))}50%{transform:translateY(-40px) rotate(calc(var(--rotation) + 5deg))}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.portfolio-section{width:100%;padding:10rem 6rem;background-color:#f0eeeb}@media(max-width:1024px){.portfolio-section{padding:8rem 4rem}}@media(max-width:768px){.portfolio-section{padding:6rem 2rem}}.portfolio-section .section-title{font-size:3.2rem;font-weight:700;color:#5b1c1d;margin-bottom:4rem}@media(max-width:1024px){.portfolio-section .section-title{font-size:2.8rem;margin-bottom:3rem}}@media(max-width:768px){.portfolio-section .section-title{font-size:2.4rem;margin-bottom:2.4rem}}.portfolio-section .portfolio-list{display:grid;grid-template-columns:repeat(4,1fr);gap:3rem}@media(min-width:769px)and (max-width:1024px){.portfolio-section .portfolio-list{grid-template-columns:repeat(3,1fr);gap:2.4rem}}@media(max-width:768px){.portfolio-section .portfolio-list{grid-template-columns:repeat(2,1fr);gap:1.6rem}}.portfolio-section .portfolio-list>li{height:auto;max-height:30rem}@media(max-width:1024px){.portfolio-section .portfolio-list>li{max-height:25rem}}@media(max-width:768px){.portfolio-section .portfolio-list>li{max-height:20rem}}.portfolio-section .portfolio-list>li.view-all-button{display:flex;justify-content:center;align-items:center;padding:0;background:transparent;border:2px solid rgba(91,28,29,.2);border-radius:1rem;overflow:hidden;transition:all .3s ease}@media(max-width:768px){.portfolio-section .portfolio-list>li.view-all-button{border-radius:.8rem}}.portfolio-section .portfolio-list>li.view-all-button:hover{transform:scale(1.01);background:rgba(91,28,29,.04);border-color:#3b1112;box-shadow:0 10px 30px rgba(91,28,29,.15)}@media(max-width:768px){.portfolio-section .portfolio-list>li.view-all-button:hover{transform:scale(1)}}.portfolio-section .portfolio-list>li.view-all-button:hover .view-all-link:before{transform:translateX(8px)}.portfolio-section .portfolio-list>li.view-all-button:hover .view-all-link:after{opacity:.1;transform:scale(1.5)}.portfolio-section .portfolio-list>li.view-all-button .view-all-link{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.2rem;width:100%;height:100%;padding:2rem;color:#3b1112;transition:all .3s ease}@media(max-width:768px){.portfolio-section .portfolio-list>li.view-all-button .view-all-link{gap:1rem;padding:1.6rem}}.portfolio-section .portfolio-list>li.view-all-button .view-all-link:before{content:"→";font-size:4rem;font-weight:300;transition:transform .3s ease;z-index:1}@media(max-width:1024px){.portfolio-section .portfolio-list>li.view-all-button .view-all-link:before{font-size:3.5rem}}@media(max-width:768px){.portfolio-section .portfolio-list>li.view-all-button .view-all-link:before{font-size:3rem}}.portfolio-section .portfolio-list>li.view-all-button .view-all-link span{position:relative;font-size:1.8rem;font-weight:600;letter-spacing:.05em;z-index:1}@media(max-width:1024px){.portfolio-section .portfolio-list>li.view-all-button .view-all-link span{font-size:1.6rem}}@media(max-width:768px){.portfolio-section .portfolio-list>li.view-all-button .view-all-link span{font-size:1.4rem}}