*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
:root {
--bg:      #f7f2e8;
--bg2:     #ede5d0;
--bg-dark: #3d3220;
--bg-mid:  #2e2516;
--honey:   #c9913a;
--gold:    #e0b86a;
--straw:   #f0d89a;
--cream:   #faf6ee;
--text:    #2e2516;
--muted:   #3d3220;
--accent:  #b07d3a;
--swiper-theme-color: #6b5840;
--swiper-pagination-color: #6b5840;
}
html { scroll-behavior: smooth; } [class*="ak-"] *[style*="Allison"], .ak-nav-logo, .ak-hero-title, .ak-def-word,
.ak-title, .ak-card-num, .ak-card-title, .ak-table th, .ak-tl-year,
.ak-test-mark, .ak-footer-logo, .ak-table .ak-cell-cta a {
font-weight: 400 !important;
font-style: normal;
}
body {
font-family: 'Jost', sans-serif;
background: var(--bg);
color: var(--text);
overflow-x: hidden;
margin: 0;
} .ak-nav {
position: fixed; top: 0; left: 0; right: 0;
z-index: 300;
display: flex; justify-content: space-between; align-items: center;
padding: 1.6rem 3rem;
transition: background .5s, padding .4s, box-shadow .4s;
}
.ak-nav.scrolled {
background: rgba(61,50,32,.96);
backdrop-filter: blur(14px);
padding: 1rem 3rem;
box-shadow: 0 2px 20px rgba(0,0,0,.25);
}
.ak-nav-logo {
font-family: 'Allison', cursive;
font-size: 2rem; color: #fff;
text-decoration: none; transition: color .3s;
}
.ak-nav.scrolled .ak-nav-logo { color: var(--gold); }
.ak-nav-links { display: flex; gap: 2.5rem; list-style: none; }
.ak-nav-links-desktop { display: flex; gap: 2.5rem; list-style: none; }
.ak-nav-links-desktop a {
color: rgba(255,255,255,.82);
text-decoration: none;
font-size: .78rem; letter-spacing: .18em; text-transform: uppercase;
transition: color .3s; position: relative;
}
.ak-nav-links-desktop a::after {
content: ''; position: absolute; bottom: -3px; left: 0;
width: 0; height: 1px; background: var(--gold); transition: width .3s;
}
.ak-nav-links-desktop a:hover { color: var(--gold); }
.ak-nav-links-desktop a:hover::after { width: 100%; }
.ak-nav-toggle {
display: none; background: none; border: none;
cursor: pointer; flex-direction: column; gap: 5px; padding: 4px;
}
.ak-nav-toggle span {
display: block; width: 26px; height: 2px;
background: rgba(255,255,255,.85); transition: all .3s;
} .ak-hero {
position: relative; height: 100vh; min-height: 640px;
display: flex; align-items: center; justify-content: center; overflow: hidden;
background-size: cover; background-position: center; background-repeat: no-repeat;
}
.ak-hero-overlay {
position: absolute; inset: 0;
background: linear-gradient(170deg,rgba(45,30,10,.65) 0%,rgba(61,50,32,.25) 50%,rgba(30,20,5,.72) 100%);
}
.ak-hero-content {
position: relative; z-index: 2;
text-align: center; color: #fff; padding: 2rem; max-width: 860px;
}
.ak-hero-phonetic {
font-family: 'Cormorant Garamond', serif;
font-size: clamp(.82rem,1.4vw,.95rem); letter-spacing: .24em; color: var(--straw);
opacity: 0; transform: translateY(14px); animation: akFadeUp 1.1s .4s forwards;
}
.ak-hero-title {
font-family: 'Allison', cursive;
font-size: clamp(5rem,14vw,11rem); line-height: .9;
margin: .2rem 0 .6rem;
color: var(--gold);
opacity: 0; transform: translateY(24px); animation: akFadeUp 1.2s .7s forwards;
text-shadow: 0 4px 40px rgba(0,0,0,.35);
} .ak-hero-title span { color: inherit; }
.ak-hero-sub {
font-size: clamp(1rem,2vw,1.3rem); font-weight: 300;
line-height: 1.7; max-width: 540px; margin: 0 auto 2.8rem;
color: rgba(255,255,255,.88);
opacity: 0; transform: translateY(16px); animation: akFadeUp 1.1s 1.0s forwards;
}
.ak-hero-cta {
display: inline-block; padding: 1rem 2.8rem;
border: 1px solid rgba(224,184,106,.7); color: var(--gold);
text-decoration: none; font-size: .78rem; letter-spacing: .24em; text-transform: uppercase;
transition: background .4s, color .4s;
opacity: 0; animation: akFadeUp 1.1s 1.3s forwards;
}
.ak-hero-cta:hover { background: rgba(224,184,106,.18); color: #fff; }
.ak-hero-scroll {
position: absolute; bottom: 2.2rem; left: 50%; transform: translateX(-50%);
z-index: 2; display: flex; flex-direction: column; align-items: center; gap: .6rem;
color: rgba(255,255,255,.5); font-size: .68rem; letter-spacing: .22em; text-transform: uppercase;
}
.ak-scroll-line {
width: 1px; height: 44px;
background: linear-gradient(to bottom, var(--gold), transparent);
animation: akScrollPulse 2.2s ease-in-out infinite;
} .ak-definition {
background: var(--bg-dark); color: var(--cream);
text-align: center; padding: 7rem 2rem;
}
.ak-def-label  { font-size: .72rem; letter-spacing: .26em; text-transform: uppercase; color: var(--honey); margin-bottom: 1.5rem; display: block; }
.ak-def-word   { font-family: 'Allison', cursive; font-size: clamp(3rem,8vw,5.5rem); color: var(--gold); margin-bottom: .4rem; }
.ak-def-phonetic { font-family: 'Cormorant Garamond', serif; font-style: italic; color: rgba(250, 246, 238, .78); font-size: 1.8rem; margin-bottom: 2.2rem; }
.ak-def-text   { max-width: 580px; margin: 0 auto; font-size: 1.05rem; font-weight: 300; line-height: 1.85; color: rgba(250,246,238,.78); }
.ak-def-sub    { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.1rem; color: var(--straw); margin-top: 1rem; }
.ak-def-quote  { margin-top: 3.5rem; padding-top: 3rem; border-top: 1px solid rgba(224,184,106,.2); font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.2rem; color: var(--straw); line-height: 1.7; } .ak-section    { padding: 7rem 2rem; }
.ak-container  { max-width: 1100px; margin: 0 auto; }
.ak-label      { font-size: .7rem; letter-spacing: .28em; text-transform: uppercase; color: var(--honey); margin-bottom: .8rem; display: block; }
.ak-title      { font-family: 'Allison', cursive; font-size: clamp(2.8rem,6vw,5rem); line-height: 1.1; color: var(--text); margin-bottom: 1.4rem; }
.ak-intro      { font-size: 1rem; font-weight: 300; line-height: 1.85; color: var(--muted); max-width: 680px; margin-bottom: 2.5rem; } .ak-table-section { background: var(--cream); }
.ak-table { width: 100%; border-collapse: collapse; margin-top: 2rem; }
.ak-table th {
font-size: 1.8rem; font-weight: 300;
color: var(--text); background: var(--bg2);
padding: 1.4rem 2rem 1rem; text-align: left; border: 1px solid #d8cdb8;
}
.ak-table td { padding: 1.8rem 2rem; border: 1px solid #d8cdb8; background: var(--cream); vertical-align: top; font-size: 1.05rem; font-weight: 300; line-height: 1.85; color: var(--muted); }
.ak-table td p { margin-bottom: 1rem; }
.ak-table td p:last-child { margin-bottom: 0; }
.ak-table .ak-cell-cta { background: var(--bg2) !important; padding: 1.2rem 2rem !important; }
.ak-table .ak-cell-cta a { font-size: 1.8rem; color: var(--bg-dark); text-decoration: none; display: inline-flex; align-items: center; gap: .5rem; transition: color .3s; }
.ak-table .ak-cell-cta a::before { content: '››'; font-size: 1.8rem; color: var(--honey); }
.ak-table .ak-cell-cta a:hover { color: var(--honey); }
.ak-table .ak-cell-quote { background: var(--bg) !important; }
.ak-table .ak-cell-quote p {color: var(--bg-mid) !important; font-size: 1.05rem !important; }
@media (max-width: 768px) {
.ak-table { display: block; }
.ak-table thead { display: none; }
.ak-table tbody {
display: flex;
flex-wrap: wrap;
}
.ak-table tbody tr {
display: contents;
}
.ak-table tbody td {
width: 100%;
box-sizing: border-box;
display: block;
}
.ak-table tbody tr:nth-child(1) td:nth-child(1) { order: 1; }
.ak-table tbody tr:nth-child(2) td:nth-child(1) { order: 2; }
.ak-table tbody tr:nth-child(3) td:nth-child(1) { order: 3; }
.ak-table tbody tr:nth-child(1) td:nth-child(2) { order: 4; }
.ak-table tbody tr:nth-child(2) td:nth-child(2) { order: 5; }
.ak-table tbody tr:nth-child(3) td:nth-child(2) { order: 6; }
.ak-table tbody td::before {
content: attr(data-label);
font-family: 'Allison', cursive;
font-size: 1.4rem;
color: var(--honey);
display: block;
margin-bottom: .5rem;
} .ak-table tbody tr:nth-child(1) td:nth-child(2) {
margin-top: 1.5rem;
border-top: 2px solid var(--bg2);
padding-top: 1.4rem;
}
} .ak-services { background: var(--bg); }
.ak-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5px; background: var(--bg2); }
.ak-grid1 { display: grid; grid-template-columns: 1fr; gap: 2.5px; background: var(--bg2); }
.ak-card {
background: var(--cream); padding: 3.5rem 3rem;
position: relative; overflow: hidden; transition: background .5s;
}
.ak-card::after {
content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px;
background: linear-gradient(90deg, var(--honey), var(--straw));
transform: scaleX(0); transform-origin: left; transition: transform .5s ease;
}
.ak-card:hover::after { transform: scaleX(1); }
.ak-card:hover { background: var(--bg); }
.ak-card-num   { font-family: 'Allison', cursive; font-size: 4rem; color: var(--bg-dark); line-height: 1; margin-bottom: 1rem; }
.ak-card-title { font-size: 1.8rem; color: var(--text); margin-bottom: .6rem; }
.ak-card-goal  { font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--honey); margin-bottom: 1.2rem; }
.ak-card-text  { font-size: 1.05rem; font-weight: 300; line-height: 1.85; color: var(--muted); }
.ak-card-link a { font-size: 1.8rem; color: var(--bg-dark); text-decoration: none; display: inline-flex; align-items: center; gap: .5rem; transition: color .3s; padding-bottom: 2rem; padding-top: 2rem;}
.ak-card-link a::before { content: '››'; font-size: 1.8rem; color: var(--honey); }
.ak-card-link a:hover { color: var(--honey); } .ak-parallax {
position: relative; min-height: 380px;
display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.ak-parallax-bg {
position: absolute; inset: 0;
background-size: cover; background-position: center; background-attachment: fixed;
} @media (max-width: 768px) {
.ak-parallax-bg {
background-attachment: scroll;
}
}
.ak-parallax-bg::after { content: ''; position: absolute; inset: 0; background: rgba(45,30,8,.72); }
.ak-parallax-inner { position: relative; z-index: 2; text-align: center; color: #fff; padding: 4rem 2rem; max-width: 800px; }
.ak-parallax-inner blockquote { font-family: 'Allison', cursive; font-size: clamp(2.8rem,6vw,5rem); color: var(--gold); line-height: 1.2; margin-bottom: 1.2rem; }
.ak-parallax-inner cite { font-size: 1.05rem; letter-spacing: .22em; text-transform: uppercase; color: rgba(255,255,255,.55); font-style: normal; } .ak-about { background: var(--bg2); }
.ak-about .ak-container { display: grid; grid-template-columns: 0.4fr 1fr; gap: 6rem; align-items: start; }
.ak-about-img-wrap { position: relative; z-index: 1; }
.ak-about-img-wrap img { max-width: 100%; object-fit: cover; display: block; }
.ak-about-img-wrap::after { content: ''; position: absolute; bottom: -1.8rem; right: -1.8rem; width: 100px; height: 100px; border: 3px solid var(--gold); z-index: 0; pointer-events: none; }
.ak-about-text   { font-size: 1.05rem; font-weight: 300; line-height: 1.9; color: var(--muted); margin-bottom: 1.4rem; }
.ak-about-vision { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.05rem; line-height: 1.8; color: var(--bg-mid); margin-bottom: 1.4rem; }
.ak-quote-block  { margin-top: 1.8rem; padding-top: 1.8rem; border-top: 1px solid rgba(61,50,32,.15); font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.15rem; line-height: 1.75; color: var(--bg-mid); }
.ak-quote-block cite { display: block; margin-top: .6rem; font-style: normal; font-family: 'Jost', sans-serif; font-size: .72rem; letter-spacing: .18em; text-transform: uppercase; color: var(--honey); }
.ak-quote-block-wo  {font-size: 1.05rem; line-height: 1.75; color: var(--bg-mid); margin-top: 2rem;} .ak-credentials { background: var(--bg-dark); }
.ak-tl { position: relative; padding-left: 2rem; margin-top: 3rem; }
.ak-tl::before { content: ''; position: absolute; left: 0; top: 12px; bottom: 12px; width: 1px; background: linear-gradient(to bottom, transparent, var(--honey) 10%, var(--honey) 90%, transparent); }
.ak-tl-item { position: relative; display: flex; gap: 2rem; padding: 1.4rem 0 1.4rem 2.5rem; align-items: flex-start; }
.ak-tl-item::before { content: ''; position: absolute; left: -5px; top: 38px; width: 11px; height: 11px; border-radius: 50%; background: var(--honey); border: 2px solid var(--bg-dark); box-shadow: 0 0 0 3px rgba(201,145,58,.25); }
.ak-tl-year { font-family: 'Allison', cursive; font-size: 2rem; color: var(--gold); min-width: 5.5rem; flex-shrink: 0; line-height: 1.2; }
.ak-tl-content h3 { font-size: 1.05rem; font-weight: 400; color: var(--cream); margin-bottom: .35rem; }
.ak-tl-content p  { font-size: 1.05rem; font-weight: 300; color: rgba(250,246,238,.48); line-height: 1.65; } .ak-testimonial { background: var(--bg); text-align: center; padding: 7rem 2rem; }
.ak-test-mark   { font-family: 'Allison', cursive; font-size: 8rem; color: var(--straw); line-height: .5; margin-bottom: 1rem; }
.ak-test-text   { font-size: clamp(1.4rem,3vw,2.1rem); font-weight: 300; font-style: italic; line-height: 1.65; max-width: 680px; margin: 0 auto 2rem; color: var(--bg-mid); }
.ak-test-author { font-size: .75rem; letter-spacing: .22em; text-transform: uppercase; color: var(--honey); } .swiper-navigation-color {
color: #ffffff;
}
.swiper-button-next,
.swiper-button-prev {
color: #ffffff;
}
.swiper-pagination-bullet-active {
background: #ffffff;
} .ak-contact { background: var(--bg-dark); padding: 7rem 2rem; }
.ak-contact .ak-container { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: start; }
.ak-contact-info p { font-size: .95rem; font-weight: 300; line-height: 2.1; color: rgba(250,246,238,.62); }
.ak-contact-info a { color: var(--gold); text-decoration: none; transition: color .3s; }
.ak-contact-info a:hover { color: var(--straw); }
.ak-contact-quote { margin-top: 2.5rem; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.05rem; line-height: 1.7; color: rgba(250,246,238,.35); }
.ak-contact-quote span { display: block; margin-top: .5rem; font-style: normal; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; } .ak-contact .frm_forms { color: var(--cream); }
.ak-contact .frm_forms input[type="text"],
.ak-contact .frm_forms input[type="email"],
.ak-contact .frm_forms textarea {
background: rgba(255,255,255,.05) !important;
border: 1px solid rgba(224,184,106,.2) !important;
color: var(--cream) !important;
font-family: 'Jost', sans-serif !important;
font-size: .9rem !important;
font-weight: 300 !important;
padding: 1rem 1.2rem !important;
border-radius: 0 !important;
width: 100% !important;
transition: border-color .4s, background .4s !important;
}
.ak-contact .frm_forms input:focus,
.ak-contact .frm_forms textarea:focus {
border-color: var(--gold) !important;
background: rgba(224,184,106,.07) !important;
outline: none !important;
}
.ak-contact .frm_forms label,
.ak-contact .frm_forms .frm_primary_label {
font-size: .68rem !important;
letter-spacing: .2em !important;
text-transform: uppercase !important;
color: var(--honey) !important;
font-family: 'Jost', sans-serif !important;
font-weight: 400 !important;
margin-bottom: .45rem !important;
}
.ak-contact .frm_forms .frm_submit button,
.ak-contact .frm_forms .frm_submit input[type="submit"] {
background: linear-gradient(135deg, var(--honey), var(--accent)) !important;
color: var(--cream) !important;
border: none !important;
border-radius: 0 !important;
font-family: 'Jost', sans-serif !important;
font-size: .78rem !important;
letter-spacing: .2em !important;
text-transform: uppercase !important;
padding: 1rem 2.6rem !important;
cursor: pointer !important;
transition: opacity .4s, transform .2s !important;
}
.ak-contact .frm_forms .frm_submit button:hover { opacity: .88 !important; transform: translateY(-1px) !important; }
#frm_field_7_container {
display: none !important;
} .ak-form-placeholder {
padding: 2rem;
border: 1px dashed rgba(224,184,106,.3);
color: rgba(250,246,238,.4);
font-size: .9rem;
font-style: italic;
text-align: center;
} .ak-footer {
background: #1e1506;
padding: 1.8rem 3rem;
display: flex;
justify-content: space-between;
align-items: center;
color: rgba(250,246,238,.35);
font-size: .76rem;
letter-spacing: .08em;
gap: 1rem;
flex-wrap: wrap;
}
.ak-footer-legal {
display: flex;
align-items: center;
gap: .8rem;
}
.ak-footer-legal a {
color: rgba(250,246,238,.35);
text-decoration: none;
font-size: .72rem;
letter-spacing: .12em;
text-transform: uppercase;
}
.ak-footer-legal span { color: rgba(250,246,238,.2); } .ak-rv  { opacity: 0; transform: translateY(36px); transition: opacity .9s ease, transform .9s ease; }
.ak-rvl { opacity: 0; transform: translateX(-50px); transition: opacity .9s ease, transform .9s ease; }
.ak-rvr { opacity: 0; transform: translateX(50px);  transition: opacity .9s ease, transform .9s ease; }
.ak-rvs { opacity: 0; transform: scale(.88);        transition: opacity 1s ease, transform 1s ease; }
.ak-rv.vis, .ak-rvl.vis, .ak-rvr.vis { opacity: 1; transform: none; }
.ak-rvs.vis { opacity: 1; transform: scale(1); }
.ak-split .word { display: inline-block; opacity: 0; transform: translateY(28px); transition: opacity .6s ease, transform .6s ease; }
.ak-split.vis .word { opacity: 1; transform: none; }
.ak-tl-item { opacity: 0; transform: translateX(-25px); transition: opacity .7s ease, transform .7s ease; }
.ak-tl-item.vis { opacity: 1; transform: none; } @keyframes akFadeUp    { to { opacity: 1; transform: none; } }
@keyframes akScrollPulse { 0%,100% { opacity:.4; height:44px; } 50% { opacity:1; height:56px; } }  .ak-nav .ak-nav-toggle { display: none; }   .ak-mobile-overlay {
display: none; } @media (max-width: 900px) {
.ak-nav { padding: 1.2rem 1.5rem; }
.ak-nav.scrolled { padding: .8rem 1.5rem; } .ak-nav .ak-nav-links-desktop { display: none; } .ak-nav-toggle { display: flex !important; z-index: 410; position: relative; } .ak-mobile-overlay {
display: block;
position: fixed;
inset: 0; background: rgba(61,50,32,.97);
z-index: 400; opacity: 0;
pointer-events: none;
transition: opacity .35s ease;
}
.ak-mobile-overlay.open {
opacity: 1;
pointer-events: auto;
}
.ak-mobile-overlay .ak-nav-links {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 2.5rem;
list-style: none;
height: 100%;
padding: 0;
margin: 0;
}
.ak-mobile-overlay .ak-nav-links a {
font-size: 1.4rem;
letter-spacing: .2em;
text-transform: uppercase;
color: rgba(255,255,255,.9);
text-decoration: none;
transition: color .3s;
}
.ak-mobile-overlay .ak-nav-links a:hover { color: var(--gold); } .ak-about-img-wrap img { max-width: 50%; object-position: center top; }
.ak-about-img-wrap::after { display: none; }
.ak-section { padding: 5rem 1.5rem; }
.ak-about .ak-container { grid-template-columns: 1fr; gap: 3rem; }
.ak-grid { grid-template-columns: 1fr; }
.ak-card { padding: 2.5rem 2rem; }
.ak-card-link a { font-size: 1.4rem;}
.ak-contact .ak-container { grid-template-columns: 1fr; gap: 3rem; }
.ak-table th, .ak-table td { padding: 1rem; font-size: .9rem; }
.ak-tl { padding-left: 1.5rem; }
.ak-tl-item { flex-direction: column; gap: .3rem; padding-left: 2rem; }
.ak-tl-year { min-width: auto; }
.ak-footer { flex-direction: column; gap: .8rem; text-align: center; padding: 1.5rem; }
.ak-parallax-inner cite { font-size: 0.8rem; letter-spacing: .22em; text-transform: uppercase; color: rgba(255,255,255,.55); font-style: normal; }
}
@media (max-width: 600px) {     }