p, h1, body { margin: 0; } p, span, h1, h2, h3, h4, ul, li, a { cursor: default; font-family: 'Poppins'; } h1, h2, h3, h4 { color: white; text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.4); font-family: Georgia, serif; } body { color: #F7F7F7; background-color: #222222; } a { cursor: pointer; text-decoration: none; } a:not(.navbar-section,.card-container,.btn) { text-decoration: none; span { cursor: pointer; } &:link { color: #48b6e9; } &:visited { color: #06a1e9; } &:hover { color: #7ac3e5; } &:active { color: #1a729b; } } button { span { cursor: pointer; } h3 { cursor: pointer; } } input[type="checkbox"] { appearance: none; -webkit-appearance: none; flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; border: 1px solid #c4ae59; border-radius: 2px; background: transparent; cursor: pointer; display: grid; place-content: center; } input[type="checkbox"]::before { content: ""; width: 10px; height: 10px; background: #c4ae59; clip-path: polygon( 14% 44%, 0 65%, 42% 100%, 100% 16%, 80% 0, 38% 68% ); transform: scale(0); transition: transform 0.15s ease; } input[type="checkbox"]:checked::before { transform: scale(1); } input[type="checkbox"]:focus-visible { outline: 2px solid #c4ae59; outline-offset: 3px; } html { font-size: clamp(0.8rem, 1vw, 2rem); } .form__group { position: relative; padding: 1em 0 0; margin-top: 10px; width: 100%; } .form__field { font-family: inherit; width: 100%; border: 0; border-bottom: 2px solid #8b8b8b; outline: 0; font-size: 1.3rem; color: #F7F7F7; padding: 7px 0; background: transparent; transition: border-color 0.2s; &::placeholder { color: transparent; } &:placeholder-shown ~ .form__label { font-size: 1.3rem; cursor: text; top: 20px; } } .form__label { position: absolute; top: 0; display: block; transition: 0.2s; font-size: 1rem; color: #8b8b8b; } .form__field { &:required,&:invalid { box-shadow:none; } } .form__field:focus { ~ .form__label { position: absolute; top: 0; display: block; transition: 0.2s; font-size: 1rem; color: #c4ae59; font-weight:700; } padding-bottom: 6px; font-weight: 700; border-width: 3px; border-image: linear-gradient(to right, #6b6b6b, #aa9954); border-image-slice: 1; } textarea.form__field { resize: vertical; } textarea.form__field::-webkit-scrollbar-track { box-shadow: inset 0 0 6px rgba(0,0,0,0.3); border-radius: 10px; background-color: #202122f2; } textarea.form__field::-webkit-scrollbar { width: 7px; background-color: rgb(0 0 0); } textarea.form__field::-webkit-scrollbar-thumb { background-color: #c4ae59; border: 1px solid #3f404d; border-radius: 0.2rem; } .hide { display: none !important; } .btn { border: none; padding: 1em; padding-top: 0.7em; padding-bottom: 0.7em; background-color: #eeeeee; color: #444444; cursor: pointer; transition: all 0.1s; box-shadow: 0 3px 13px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); font-family: 'Poppins'; text-transform: uppercase; font-size: 0.75em; letter-spacing: 0.075em; transition: all 0.15s; } .btn.rounded { border-radius: 5px; } .btn.dark { color: #F2F2F2; background-color: #121212; box-shadow: 0 3px 13px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2), 0 10px 25px rgba(0, 0, 0, 0.2); } .btn.gold { background-color: #c4ae59; color: white; &[disabled] { color: #908c8c; background-color: #7a6d3e; cursor: unset; h3, span { color: #908c8c; cursor: unset; } } } .btn.bold { padding: 12px; padding-left: 18px; padding-right: 18px; font-size: 1em; font-weight: 700; transition: all 0.2s; } .btn:hover { background-color: #AAAAAA; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); } .btn.dark:hover { color: #c4ae59; background-color: #1B1B1B; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2), 0 10px 25px rgba(0, 0, 0, 0.2), inset 0px 0px 75px -15px #d2cbcb15; } .btn.gold:hover:not([disabled]) { background-color: #a49249; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); } .btn:active { background-color: #CCCCCC; } table { color: #F7F7F7; } th, td { padding: 20px; } table.vertical-table { } table.vertical-table tr, thead, tbody { display: block; float: left; } table.vertical-table th, table.vertical-table td { display: block; } .tag-button { display: flex; justify-content: center; width: 33%; padding: 10px; background: #c4ae59; border-radius: 15px; font-weight: bold; color: #F7F7F7; cursor: pointer; transition: all 0.2s; h4 { color: #F7F7F7; cursor: pointer; transition: all 0.2s; } } .tag-button:hover { background: #b6a14c; color: #dad9d9; h4 { color: #dad9d9; } } .tag-button:active { background: #c4ae59; color: #F7F7F7; h4 { color: #F7F7F7; } } .modal-container { display: flex; align-items: center; justify-content: center; position: fixed; padding: 50px; inset: 0; z-index: 999; background-color: #0000008A; .info-section { height: 100%; justify-content: flex-start; } .map-frame { border: 0; width: 85%; } .image-container { display: flex; width: 300px; max-height: 275px; min-height: 255px; } .image-container > img { display: block; flex-shrink: 0; border-radius: 5px; background-color: #2B2B2B; width: 300px; min-width: 300px; object-fit: contain; } } .modal-container.vertical { padding-left: clamp(1rem, 25vw - 7rem, 22rem); padding-right: clamp(1rem, 25vw - 7rem, 22rem); } .modal-container.inactive { display: none; } .modal-container *::-webkit-scrollbar-track { box-shadow: inset 0 0 6px rgba(0,0,0,0.3); border-radius: 10px; background-color: rgb(18 19 25 / 95%); } .modal-container *::-webkit-scrollbar { width: 7px; background-color: rgb(0 0 0); } .modal-container *::-webkit-scrollbar-thumb { background-color: #c4ae59; border: 1px solid #3f404d; border-radius: 0.2rem; } .carousel-container { display: flex; justify-content: center; position: relative; z-index: 100; overflow: hidden; min-width: 300px; max-width: 100%; } .carousel-arrow { position: absolute; top: calc(50% - 0.5em); padding: 0.5em; z-index: 100; > div { border: solid white; border-width: 0 3px 3px 0; padding: 0.35em; vertical-align: middle; } &:hover { > div { border-width: 0 4px 4px 0; } } &:focus { > div { border-width: 0 3px 3px 0; } } } .carousel-arrow.left { left: 1.25em; > div { transform: rotate(135deg); -webkit-transform: rotate(135deg); } &:hover { left: 1.18em; } &:focus { left: 1.25em; } } .carousel-arrow.right { right: 1.25em; > div { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); } &:hover { right: 1.18em; } &:focus { right: 1.25em; } } .carousel-indicator-container { display: flex; position: absolute; bottom: 1em; width: 75%; justify-content: center; align-items: center; gap: 0.5em; z-index: 100; } .carousel-image-indicator { width: 0.4em; min-width: 0.4em; height: 0.4em; background: white; } .carousel-image-indicator.active { width: 0.5em; min-width: 0.5em; height: 0.5em; } .image-overlay { display: flex; position: absolute; overflow: hidden; inset: 0; align-items: center; justify-content: center; padding: 75px; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2), 0 10px 25px rgba(0, 0, 0, 0.2), inset 0px 0px 75px 10px #0000007D; transition: all 0.15s; } .image-overlay:hover { background-color: #040404db; } .image-overlay:after { position:absolute; left:0px; bottom:0px; content:''; /*border-bottom: 125px solid #c4ae59; border-right: 500px solid transparent;*/ inset: 0; background: linear-gradient( 145deg, #c4ae59 0%, #b19a49 65%, rgba(34, 34, 34, 0.75) 100% ); clip-path: polygon(0 70%, 0 100%, 100% 100%); } .image-overlay > .overlay-label { position: absolute; left: 0; bottom: 0; z-index: 5; } .image-overlay > .overlay-content{ opacity: 0%; transition: all 0.15s; } .image-overlay:hover > .overlay-content{ opacity: 100%; } .vertical-rule { height: 100%; width: 1px; margin-top: auto; margin-bottom: auto; background-color: #333333; } .spacer { height: 50px; } .spacer-half { height: 1.1em; } .spacer-large { height: 75px; } .spacer-double { height: 100px; } .no-pad { padding: 0 !important; } .no-pad-top { padding-top: 0 !important; } .no-pad-bottom { padding-bottom: 0 !important; } .no-pad-left { padding-left: 0 !important; } .no-pad-right { padding-right: 0 !important; } .no-margin { margin: 0 !important; } .horizontal-divider { height: 1px; width: 100%; background-color: #0C0C0C; } .horizontal-divider.light { background-color: #383838; } .underlined { position: relative; } .underlined:after { content: ""; height: 1px; width: 75%; background-color: #c4ae59; position: absolute; bottom: 0; left: 50%; transform: translate(-50%); transition: all 0.15s; } .navbar-container { display: flex; position: fixed; top: 0; justify-content: center; align-items: center; width: 100%; max-width: 100%; height: 90px; background-color: #0C0C0C; color: #F7F7F7; box-shadow: 0px 0px 75px 50px rgba(14, 14, 14, 0.4); z-index: 999; } .navbar-spacer { height: 90px; } .navbar-logo-container { display: flex; flex: 1; height: 100%; align-items: center; box-sizing: border-box; padding: 0.95em; } .navbar-logo { display: flex; align-items: center; height: 100%; } .navbar-logo { height: 100%; } .navbar-logo > img { height: 100%; cursor: pointer; } .navbar-sections { display: flex; height: 100%; text-align: center; } .navbar-section { display: flex; height: 100%; justify-content: center; align-items: center; padding-left: 1.1vw; padding-right: 1.1vw; cursor: pointer; transition: all 0.2s; font-weight: bold; color: #F7F7F7; gap: 1em; } .navbar-section:hover { /* background-color: #686868c7; */ font-weight: bold; color: #F7F7F7; } .navbar-sections span { position: relative; cursor: pointer; } .navbar-section span:before{ content: ""; height: 1px; width: 0%; background-color: gold; position: absolute; bottom: 30%; left: 50%; transform: translate(-50%); transition: all 0.15s; } .navbar-section:hover span:before{ width: 95%; } .navbar-section.active { color: #b5a02e !important; } .navbar-social-logo-container { display: flex; padding-left: 0.85em; padding-right: 0.85em; } .navbar-social-logo { padding-left: 0.85vw; padding-right: 0.85vw; } .navbar-social-logo img { width: 20px; transition: all 0.25s; } .navbar-social-logo .monochromatic-logo { opacity: 100%; } .navbar-social-logo:hover .monochromatic-logo { opacity: 0%; } .navbar-social-logo .color-logo-overlay { position:absolute; opacity: 0%; } .navbar-social-logo:hover .color-logo-overlay { opacity: 100%; } .main-container { display: flex; flex-direction: column; min-height: calc(100% - 90px); box-sizing: border-box; } .main-container * { box-sizing: border-box; } .header-section { display: flex; position: relative; flex-direction: column; justify-content: center; align-items: center; text-align: center; width: 100%; padding: 65px; gap: 5px; background-color: #c4ae59; color: white; box-shadow: 0 3px 13px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); } .card-container { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 375px; width: 100%; margin: 10px; color: #F2F2F2; background-color: #121212; border-radius: 5px; box-shadow: 0 3px 13px rgba(0, 0, 0, 0.2), 0 8px 25px rgba(0, 0, 0, 0.15); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2), 0 10px 25px rgba(0, 0, 0, 0.2); transition: all 0.15s; cursor: pointer; overflow: hidden; /* border: 0px solid #444444; */ } .card-container.gold { background-color: #c4ae59; } .card-container:hover:not(.no-hover) { color: white; background-color: #1B1B1B; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2), 0 10px 25px rgba(0, 0, 0, 0.2), inset 0px 0px 75px -15px #d2cbcb15; /* border: 2px solid #444444; */ } .card-container img { width: 50; filter: grayscale(20%); -webkit-filter: grayscale(20%); -moz-filter: grayscale(20%); -ms-filter: grayscale(20%); -o-filter: grayscale(20%); transition: all 0.15s } .card-container:hover:not(.no-hover) .card-icon { width: 55; filter: hue-rotate(8deg); -webkit-filter: hue-rotate(8deg); -moz-filter: hue-rotate(8deg); -ms-filter: hue-rotate(8deg); -o-filter: hue-rotate(8deg); } .card-container h2 { position: relative; max-width: 90%; transition: all 0.15s; cursor: pointer; } .card-container:hover:not(.no-hover) h2 { font-size: 1.6em; } .card-container h2:after{ content: ""; height: 1px; width: 0%; background-color: yellow; position: absolute; bottom: 0; left: 50%; transform: translate(-50%); transition: all 0.15s; } .card-container:hover:not(.no-hover) h2:after{ width: 75%; } .container-section { display: flex; justify-content: center; align-items: center; text-align: center; padding: 10px; width: 100%; max-width: 100%; } .main-container.contact { justify-content: flex-start; padding-top: 4vh; padding-bottom: 4vh; padding-left: 4vw; padding-right: 4vw; } .contact-form-container { padding: 50px; } .contact-info-container { align-self: flex-start; align-items: flex-start; width: auto; gap: 10px; white-space: nowrap; > h1 { margin-bottom: 1.1em; } } @media (max-width: 1200px) { .modal-container { .container-section:not(.no-wrap,.vertical) { flex-direction: column; } .card-container { height: 250px; flex-direction: column; } .info-section { height: auto; } .map-frame { aspect-ratio: 16 / 9; } .info-tabs { height: auto; flex-direction: row !important; } .info-tab-container { justify-content: center; flex-direction: row !important; } .image-container { width: 100%; max-height: 60vh; min-height: 15vh; } .image-container > img { width: 100%; } .carousel-arrow { font-size: clamp(0.5rem, 3vw, 2rem); } } } @media (max-width: 768px) { .modal-container { .apply-button { width: 50%; } } /* Will want override for this behavior */ .container-section:not(.no-wrap,.vertical) { flex-direction: column; } .card-container { height: 250px; flex-direction: column; } .contact-form-container { padding: 0; } .contact-info-container { align-self: center; align-items: center; > h1 { margin-bottom: 0.1em; } } } .container-section.vertical { flex-direction: column; } .container-section.light { background-color: #383838; } .container-section.dark { background-color: #222222; } .container-overlay { position: absolute; top: 0; right: 0; width: 100%; height: 100%; background-color: #00000000; z-index: 500; transition: all 0.25s; } .container-overlay:hover { background-color: #12121291; } .content-section { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 20px; padding: 1.1em; height: 100%; width: 100%; max-width: 100%; color: #F7F7F7; text-align: center; /*background-color: #F0F4F7; Maybe seperate class*/ } .content-section ul { text-align: left; } .content-section li { margin: 10px 0; } .content-section.paragraph-content { align-items: flex-start; text-align: left; width: 50%; } .banner-image { height: 125px; width: 100%; } .footer-container { display: flex; justify-content: center; align-items: center; max-width: 100%; height: 100px; padding-left: 1.1em; padding-right: 1.1em; background-color: #121111; > .container-section { justify-content: flex-end; } } .company-details { align-items: flex-start; width: auto; white-space: nowrap; } .footer-logo { display: flex; align-items: center; padding-left: 1.1em; padding-right: 1.1em; height: 100% } .footer-logo > img { height: 50%; cursor: pointer; } @media (max-width: 500px) { .footer-container { height: auto; flex-direction: column; .footer-logo > img { max-height: 30px; } > .container-section { justify-content: center; align-items: center; } } } @media (max-width: 915px) { .footer-container { font-size: 0.7em; } .content-section.paragraph-content { width: 60%; } } @media (max-width: 768px) { .navbar-container { font-size: 0.85em; } .navbar-logo > img { height: 65%; } .footer-container { font-size: 0.5em; } .footer-logo > img { height: 35%; } .company-details { white-space: wrap; width: 62%; } .content-section.paragraph-content { width: 70%; } } @media (max-width: 500px) { .navbar-container { font-size: 0.75em; } .navbar-logo > img { height: 50%; } .footer-logo > img { height: 25%; } .content-section.paragraph-content { width: 85%; } } .rentals-container { padding: 1em; padding-left: 3em; padding-right: 3em; } .rental-container { display: flex; position: relative; justify-content: flex-start; flex-direction: row; height: 200px; width: 100%; transition: all 0.15s; } .rental-container img { height: 100%; width: 200px; min-width: 200px; object-fit: cover; } .rental-price-tab { align-self: flex-start; top: 0px; left: 0px; width: 105%; padding: 7px; padding-right: 1em; padding-left: 6%; margin-left: -5%; border-radius: 0 0 5px 0; background-color: #c4ae59; box-shadow: inset 18px 0px 10px 0px #0000002e; } .info-section { height:100%; width:min-content; justify-content: flex-start; padding:10px; } .info-tabs { display: flex; flex-direction: column; justify-content: space-between; height: 100%; min-width: 100px } .info-tab-container { justify-content: flex-start; gap: 7px; padding-right: 0px; padding-left: 5px; padding-top: 5px; padding-bottom: 5px; } .info-tab { width: 100%; padding: 5px; border-radius: 8px; background-color: #333333; } .rental-description { line-height:1.6em; } .rental-description > span { height: 100%; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; } @media (max-width: 768px) { .image-container { width: 100%; } .rentals-container { padding-left: 1.75em; padding-right: 1.75em; } .rental-container { height: auto; flex-direction: column; .vertical-rule { display: none; } } .rental-container img { height: auto; max-height: 250px; width: 100%; object-fit: cover; } .info-section { width: 100%; height: auto; } .info-tabs { height: auto; flex-direction: row !important; } .info-tab-container { justify-content: center; flex-direction: row !important; } .rental-description > span { height: 100%; margin-top: 15px; -webkit-line-clamp: 8; } } @media (max-width: 500px) { .rentals-container { padding-left: 1.25em; padding-right: 1.25em; } } .service-header-section { display: flex; flex-direction: column; width: 40%; justify-content: space-between; z-index: 1; } .service-header-section span { color: #949494; } .services-section { display: flex; } .service-card { gap:0; background-color:#2A2A2A; } .service-card .header-section { padding: 1.1em; } .service-card .content-section { box-shadow: 0 3px 13px rgba(0, 0, 0, 0.15), 0 8px 25px rgba(0, 0, 0, 0.05); } .services-table { } .services-table thead th { width: 250px; background-color: #282828; } .services-table thead th { border: 1px solid transparent; } .services-table tbody tr { width: 225px; background-color: #404040; } .services-table tbody td { border: 1px solid gray; } .services-table tbody td:first-child { font-weight: bold; text-align: -internal-center; } .services-table tbody tr:nth-child(odd) td:first-child { background-color: #333333; } .services-table tbody tr:nth-child(even) td:first-child { background-color: #96812e; } /*.services-table tbody td:first-child { border: 1px solid gray; }*/ /* * Revise The Fromatting Of This Later */ :root { --gold: #c4ae59; --dark: #222222; --dark-panel: #2b2a2a; --text: #f5f5f5; --muted: #b8b8b8; } .locations-section, .service-area-section { box-sizing: border-box; background: var(--dark); color: var(--text); font-family: Arial, sans-serif; } .locations-section *, .service-area-section * { box-sizing: border-box; } /* Section headings */ .section-eyebrow { display: flex; align-items: center; gap: 20px; color: var(--gold); font-size: 12px; font-weight: 500; letter-spacing: 3px; } .section-eyebrow::after { content: ""; width: 65px; height: 1px; background: var(--gold); } .locations-header h2, .service-area-copy h2 { margin: 18px 0; font-family: Georgia, serif; font-size: clamp(34px, 4vw, 60px); font-weight: 400; line-height: 1.12; } .locations-header h2 em, .service-area-copy h2 em { color: var(--gold); font-style: normal; } /* Primary locations */ .locations-section { padding: 60px 4% 0; } .locations-header { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 32px; } .locations-header > p { max-width: 420px; margin: 0 0 12px; color: var(--muted); font-size: 15px; line-height: 1.7; } /* Flexible service area */ .service-area-section { padding: 55px 4% 45px; border-top: 1px solid rgba(196, 174, 89, .55); background: var(--dark-panel); } .service-area-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; align-items: stretch; } .service-area-copy h2 { margin: 16px 0 22px; } .service-area-copy p { max-width: 600px; color: var(--muted); font-size: 15px; line-height: 1.75; margin: 0 0 18px; } .service-area-copy .service-lead { color: #f0f0f0; font-size: 17px; font-weight: 600; line-height: 1.55; } .service-area-copy strong { color: var(--gold); font-weight: 500; } /* Communities */ .service-area-communities { border-left: 1px solid rgba(196, 174, 89, .4); padding: 12px 0 12px 65px; display: flex; flex-direction: column; justify-content: center; } .communities-heading { display: flex; align-items: center; gap: 18px; color: var(--gold); font-size: 12px; letter-spacing: 2px; line-height: 1.6; } .communities-heading::after { content: ""; flex: 1; height: 1px; background: linear-gradient( to right, rgba(196,174,89,.6), transparent ); } .communities-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 15px; list-style: none; padding: 0; margin: 34px 0 60px; } .communities-grid li { position: relative; padding-left: 20px; color: #ddd; font-size: 14px; white-space: nowrap; } /* Simple gold location markers */ .communities-grid li::before { content: ""; position: absolute; left: 0; top: 2px; width: 10px; height: 13px; background: var(--gold); clip-path: polygon( 50% 0, 88% 13%, 100% 43%, 82% 72%, 50% 100%, 18% 72%, 0 43%, 12% 13% ); } .communities-grid li::after { content: ""; position: absolute; left: 4px; top: 6px; width: 3px; height: 3px; background: var(--dark-panel); border-radius: 50%; } /* Call to action */ .service-area-button { display: inline-flex; justify-content: space-between; align-self: flex-start; gap: 32px; padding: 17px 24px; border: 1px solid var(--gold); color: var(--gold) !important; text-decoration: none; font-size: 12px; letter-spacing: 2px; transition: .25s ease; } .service-area-button span { font-size: 24px; line-height: 12px; } .service-area-button:hover { background: var(--gold); color: var(--dark) !important; } /* Responsive */ @media (max-width: 1100px) { .service-area-inner { gap: 35px; } .service-area-communities { padding-left: 35px; } .communities-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 800px) { .locations-header { flex-direction: column; align-items: flex-start; gap: 10px; } .location-grid { grid-template-columns: 1fr; } .location-card { aspect-ratio: 1.8; } .service-area-inner { grid-template-columns: 1fr; } .service-area-communities { border-left: none; border-top: 1px solid rgba(196,174,89,.4); padding: 35px 0 0; } .communities-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 520px) { .locations-section { padding: 50px 20px 35px; } .service-area-section { padding: 45px 20px 65px; } .location-card { aspect-ratio: 1.25; } .location-overlay { padding-left: 70px; } .communities-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 10px; } .communities-grid li { font-size: 12px; } } .management-tree { --gold: #c4ae59; --dark: #222222; --line: rgba(196,174,89,.55); background: radial-gradient( ellipse at 50% 50%, rgba(196,174,89,.045), transparent 65% ), var(--dark); color: #f5f5f5; padding: 80px 30px 15px; font-family: Arial, sans-serif; } .management-tree * { box-sizing: border-box; } .tree-heading { text-align: center; margin-bottom: 48px; } .tree-heading > span { color: var(--gold); font-size: 11px; letter-spacing: 4px; } .tree-heading h2 { font: 400 clamp(30px,4vw,48px) Georgia,serif; margin: 15px 0; } .tree-heading p { color: #aaa; line-height: 1.7; } .tree-root { display: flex; align-items: center; justify-content: center; gap: 22px; width: fit-content; margin: auto; padding: 22px 38px; border: 1px solid var(--gold); border-radius: 12px; background: linear-gradient( 125deg,#383426,#252525 65% ); box-shadow: 0 0 35px rgba(196,174,89,.08); position: relative; } .root-icon { color: var(--gold); font-size: 42px; } .tree-root h3 { font: 400 26px Georgia,serif; margin: 0 0 8px; } .tree-root small, .tree-category small { color: #aaa; font-size: 10px; letter-spacing: 1.5px; } /* The main connecting trunk */ .tree-root::after { content: ""; position: absolute; top: 100%; left: 50%; height: 46px; width: 1px; background: var(--line); } /* Four main branches */ .tree-grid { max-width: 1400px; margin: 90px auto 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; position: relative; } .tree-grid::before { content: ""; position: absolute; top: -44px; left: 12.5%; right: 12.5%; height: 1px; background: var(--line); } .tree-column { position: relative; min-width: 0; } .tree-column::before { content: ""; position: absolute; height: 44px; width: 1px; bottom: 100%; left: 50%; background: var(--line); } .tree-column::after { content: ""; position: absolute; width: 9px; height: 9px; background: var(--gold); border-radius: 50%; top: -49px; left: calc(50% - 4.5px); box-shadow: 0 0 14px var(--gold); } /* Main category cards */ .tree-category { min-height: 175px; padding: 28px 18px; border: 1px solid rgba(196,174,89,.6); border-radius: 10px; background: linear-gradient( 145deg,#303030,#222 ); text-align: center; transition: .3s ease; } .category-icon { display: flex; align-items: center; justify-content: center; margin: 0 auto 15px; width: 46px; height: 46px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold); font-size: 25px; } .tree-category h3 { font: 400 21px Georgia,serif; margin: 0 0 12px; } /* Child nodes */ .tree-children { margin-top: 30px; padding-left: 20px; position: relative; display: grid; gap: 12px; } .tree-children::before { content: ""; position: absolute; top: -30px; bottom: 24px; left: 9px; width: 1px; background: var(--line); } .tree-children > div { position: relative; padding: 17px 12px; border: 1px solid #454545; border-radius: 7px; background: linear-gradient(135deg,#2d2d2d,#242424); color: #ddd; font-size: 13px; transition: .25s ease; } .tree-children > div::before { content: ""; position: absolute; top: 50%; left: -11px; width: 11px; height: 1px; background: var(--line); } .tree-children > div::after { content: ""; position: absolute; top: calc(50% - 3px); left: -14px; width: 6px; height: 6px; border-radius: 50%; background: var(--gold); } /* Interactive highlighting */ .tree-column:hover .tree-category { border-color: var(--gold); box-shadow: 0 0 25px rgba(196,174,89,.14); transform: translateY(-3px); } .tree-children > div:hover { color: var(--gold); border-color: var(--gold); background: #343126; transform: translateX(4px); } /* Mobile layout */ @media(max-width:850px) { .tree-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 45px 20px; } .tree-grid::before, .tree-column::before, .tree-column::after, .tree-root::after { display: none; } } @media(max-width:520px) { .management-tree { padding: 60px 18px; } .tree-grid { grid-template-columns: 1fr; margin-top: 35px; } .tree-category { min-height: auto; } } .rrpm-footer-border { width: 96%; justify-self: center; border-top: 1px solid #c4ae59; } .rrpm-footer { --gold: #c4ae59; --dark: #222222; --muted: #aaa; background: var(--dark); color: #fff; font-family: Arial, sans-serif; } .rrpm-footer * { box-sizing: border-box; } /* Main row */ .rrpm-footer-main { display: flex; justify-content: space-between; align-items: center; gap: 35px; padding: 25px 4%; } /* Left branding */ .rrpm-footer-brand { display: flex; align-items: center; gap: 20px; } .rrpm-footer-logo { width: 75px; height: auto; object-fit: contain; } .rrpm-footer-brand-text { display: flex; flex-direction: column; gap: 6px; } .rrpm-footer-name { color: var(--gold); font-size: 15px; font-weight: 600; letter-spacing: 1.5px; } .rrpm-footer-subtitle { color: #eee; font-size: 12px; letter-spacing: 1px; } .rrpm-footer-location { color: var(--muted); font-size: 12px; margin-top: 4px; } /* Right side */ .rrpm-footer-right { display: flex; align-items: center; gap: 35px; } .rrpm-footer-contact { display: flex; flex-direction: column; align-items: flex-end; gap: 9px; } .rrpm-footer-contact > a { color: #eee !important; font-size: 14px; text-decoration: none; } .rrpm-footer-contact > a:nth-child(2) { color: var(--gold) !important; } .rrpm-footer-contact a:hover { color: var(--gold) !important; } /* Social icons */ .rrpm-footer-socials { display: flex; gap: 15px; margin-top: 5px; } .rrpm-footer-socials a { display: flex; align-items: center; justify-content: center; } .rrpm-footer-socials img { width: 19px; height: 19px; object-fit: contain; transition: opacity .2s; } .rrpm-footer-socials a:hover img { opacity: .65; } /* Badge */ .rrpm-footer-badge { display: flex; align-items: center; justify-content: center; flex-shrink: 0; } /* Bottom bar */ .rrpm-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 4%; border-top: 1px solid rgba(196,174,89,.3); color: #999 !important; font-size: 11px; } .rrpm-footer-bottom a { color: var(--gold) !important; text-decoration: none; } .rrpm-footer-bottom a:hover { text-decoration: underline; } /* Tablet */ @media (max-width: 900px) { .rrpm-footer-main { flex-wrap: wrap; gap: 25px; } .rrpm-footer-right { margin-left: auto; } } /* Mobile */ @media (max-width: 600px) { .rrpm-footer-main { flex-direction: column; align-items: stretch; padding: 25px 20px; } .rrpm-footer-right { margin: 0; justify-content: space-between; flex-wrap: wrap; gap: 20px; } .rrpm-footer-contact { align-items: flex-start; } .rrpm-footer-bottom { padding: 15px 20px; flex-wrap: wrap; line-height: 1.6; } } .rrpm-contact { --gold: #c4ae59; --dark: #222222; --panel: #2b2b2b; --muted: #aaa; background: var(--dark); color: #eee; padding: 55px 3% 70px; font-family: Arial, sans-serif; } .rrpm-contact * { box-sizing: border-box; } .rrpm-eyebrow { color: var(--gold); font-size: 11px; letter-spacing: 2.5px; font-weight: 600; } /* Heading */ .rrpm-contact-heading { text-align: center; margin-bottom: 45px; } .rrpm-contact-heading h1 { font: 400 clamp(32px, 4vw, 50px) Georgia, serif; margin: 15px 0; } .rrpm-contact-heading h1 em { color: var(--gold); font-style: normal; } .rrpm-contact-heading p { color: var(--muted); font-size: 15px; line-height: 1.7; } /* Main layout */ .rrpm-contact-layout { display: grid; grid-template-columns: 0.85fr 1.5fr; max-width: 1200px; margin: auto; border: 1px solid #444; } /* Left information panel */ .rrpm-contact-info { display: flex; flex-direction: column; background: #252525; padding: 45px 35px; border-right: 1px solid rgba(196,174,89,.5); } .rrpm-contact-info h2 { margin: 18px 0; font: 400 30px Georgia, serif; } .rrpm-contact-info > p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; } .rrpm-contact-methods { display: flex; flex-direction: column; gap: 32px; margin-top: 45px; } .rrpm-contact-method { display: flex; align-items: center; gap: 17px; } .rrpm-contact-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 44px; height: 44px; color: var(--gold); border: 1px solid rgba(196,174,89,.5); font-size: 22px; } .rrpm-contact-method > div:last-child { display: flex; flex-direction: column; gap: 8px; min-width: 0; } .rrpm-contact-method span { color: var(--gold); font-size: 10px; letter-spacing: 2px; } .rrpm-contact-method a, .rrpm-contact-method strong { color: #eee; font-size: 15px; font-weight: 400; text-decoration: none; overflow-wrap: anywhere; } .rrpm-contact-method a:hover { color: var(--gold); } .rrpm-contact-note { margin-top: auto; padding-top: 55px; } .rrpm-contact-note::before { content: ""; display: block; width: 55px; height: 1px; background: var(--gold); margin-bottom: 22px; } .rrpm-contact-note p { color: var(--muted); font-size: 13px; line-height: 1.7; } /* Right form panel */ .rrpm-form-panel { background: var(--panel); padding: 45px; } .rrpm-form-heading { margin-bottom: 30px; } .rrpm-form-heading h2 { font: 400 30px Georgia, serif; margin: 0 0 12px; } .rrpm-form-heading p { color: var(--muted); font-size: 14px; line-height: 1.7; margin: 0; } .rrpm-form { display: flex; flex-direction: column; gap: 24px; } .rrpm-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } .rrpm-form-field { display: flex; flex-direction: column; gap: 10px; min-width: 0; } .rrpm-form-field label { color: #ddd; font-size: 11px; letter-spacing: 1.5px; } .rrpm-form-field label span { color: var(--gold); } .rrpm-form-field input, .rrpm-form-field textarea { width: 100%; padding: 15px 16px; background: #222; border: 1px solid #505050; border-radius: 0; color: #fff; font: 14px Arial, sans-serif; outline: none; transition: border-color .2s; } .rrpm-form-field input::placeholder, .rrpm-form-field textarea::placeholder { color: #858585; } .rrpm-form-field input:focus, .rrpm-form-field textarea:focus { border-color: var(--gold); } .rrpm-form-field textarea { resize: vertical; min-height: 125px; } /* SMS agreement */ .rrpm-sms-consent { display: flex; align-items: flex-start; gap: 13px; padding-top: 4px; } .rrpm-sms-consent input { flex: 0 0 17px; width: 17px; height: 17px; margin: 2px 0 0; accent-color: var(--gold); cursor: pointer; } .rrpm-sms-consent label { color: #aaa; font-size: 12px; line-height: 1.7; cursor: pointer; } .rrpm-sms-consent a { color: var(--gold); text-decoration: underline; } /* Submit */ .rrpm-form-actions { display: flex; align-items: center; gap: 25px; } .rrpm-submit { display: inline-flex; justify-content: space-between; gap: 35px; padding: 16px 22px; border: 1px solid var(--gold); background: var(--gold); color: #222; font-size: 12px; font-weight: 600; letter-spacing: 1.5px; cursor: pointer; transition: .2s ease; } .rrpm-submit span { font-size: 22px; line-height: 8px; } .rrpm-submit:hover { background: transparent; color: var(--gold); } .rrpm-required-note { color: #999; font-size: 12px; } .rrpm-form-result { padding: 13px 16px; font-size: 13px; border: 1px solid #666; } .rrpm-form-result[hidden] { display: none; } .rrpm-form-result.success { color: #a9d3aa; border-color: #587d59; } .rrpm-form-result.error { color: #e3a2a2; border-color: #a45d5d; } /* Responsive */ @media (max-width: 850px) { .rrpm-contact-layout { grid-template-columns: 1fr; } .rrpm-contact-info { border-right: none; border-bottom: 1px solid rgba(196,174,89,.5); } .rrpm-contact-methods { flex-direction: row; flex-wrap: wrap; gap: 25px; margin-top: 30px; } .rrpm-contact-note { padding-top: 30px; } } @media (max-width: 550px) { .rrpm-contact { padding: 45px 18px 65px; } .rrpm-contact-info, .rrpm-form-panel { padding: 30px 22px; } .rrpm-form-row { grid-template-columns: 1fr; } .rrpm-contact-methods { flex-direction: column; } .rrpm-form-actions { flex-wrap: wrap; } } .pm-widget-shell { display: flex !important; align-items: center !important; height: 100% !important; }