/*
Theme Name: Culina Craft - Client v2.1
Theme URI: https://culinacraft.ae
Author: Culina Craft FZE LLC
Author URI: https://culinacraft.ae
Description: Custom WordPress theme for Culina Craft FZE LLC — a founder-led hospitality engineering and project management consultancy. Converted from the original Next.js/React source into a single-page WordPress theme.
Version: 2.1.1
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.7
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: culina-craft
*/

/* ---------------------------------------------------
   Minimal reset (mirrors the Tailwind Preflight reset
   the original site relied on, since none of Tailwind's
   utility classes were actually used in the markup)
--------------------------------------------------- */
*, *::before, *::after {
	box-sizing: border-box;
	border-width: 0;
	border-style: solid;
	border-color: currentColor;
}
html {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	tab-size: 4;
	font-family: Arial, sans-serif;
}
body {
	margin: 0;
	line-height: inherit;
}
hr {
	height: 0;
	color: inherit;
	border-top-width: 1px;
}
h1, h2, h3, h4, h5, h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}
p, blockquote, dl, dd, figure, pre {
	margin: 0;
}
ol, ul, menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
img, svg, video, canvas, audio, iframe, embed, object {
	display: block;
	vertical-align: middle;
	max-width: 100%;
}
img, video {
	height: auto;
}
button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	margin: 0;
	padding: 0;
}
button, select {
	text-transform: none;
}
button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
	background-color: transparent;
	background-image: none;
}

/* ---------------------------------------------------
   Original site design (converted 1:1 from
   app/globals.css in the supplied Next.js source)
--------------------------------------------------- */
:root {
	--paper: #f5f1e8;
	--wine: #6e1735;
	--ink: #242320;
	--line: #c8c0b4;
	--sand: #d8c3a5;
	--dark: #1b1c19;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, sans-serif; }
a { color: inherit; text-decoration: none; }

header.site-header {
	height: 92px;
	padding: 0 4.5vw;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	border-bottom: 1px solid var(--line);
}
.logo { text-transform: uppercase; letter-spacing: .27em; font-size: 21px; }
.logo b { color: var(--wine); }
nav.site-nav { display: flex; gap: 40px; }
nav.site-nav a { font-size: 15px; }
.headerCta { justify-self: end; color: var(--wine); font-size: 14px; }

.hero { min-height: calc(100vh - 92px); display: grid; grid-template-columns: 47% 53%; overflow: hidden; }
.heroCopy { padding: 8vh 7vw; position: relative; background-image: linear-gradient(rgba(110,23,53,.08) 1px, transparent 1px); background-size: 100% 82px; }
.kicker { text-transform: uppercase; letter-spacing: .19em; color: var(--wine); font-size: 11px; font-weight: bold; margin: 0 0 24px; }
.hero h1, h2, h3, .caption strong, .metrics strong { font-family: Georgia, serif; }
.hero h1 { margin: 0; color: var(--wine); font-size: clamp(60px, 6.5vw, 106px); font-weight: 400; line-height: .84; letter-spacing: -.055em; }
.hero h1 em, h2 em { font-weight: 400; font-style: italic; }
.lead { max-width: 510px; margin: 38px 0 28px; font-size: 18px; line-height: 1.65; }
.button { display: flex; width: 280px; height: 68px; padding: 0 26px; align-items: center; justify-content: space-between; background: var(--wine); color: white; }
.region { margin-top: 38px; text-transform: uppercase; letter-spacing: .18em; font-size: 11px; display: flex; gap: 12px; align-items: center; }
.region i { width: 4px; height: 4px; border-radius: 50%; background: var(--wine); }
.datum { position: absolute; top: 40px; right: 38px; color: var(--wine); font: 9px monospace; letter-spacing: .12em; }
.heroImage { margin-left: -6vw; clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%); background: url('assets/images/hero.jpg') center/cover no-repeat #9a806a; position: relative; }
.measure { position: absolute; right: 36px; top: 35px; color: white; border-bottom: 1px solid rgba(255,255,255,.6); padding: 0 5px 10px; font: 10px monospace; }
.caption { position: absolute; bottom: 0; left: 15%; right: 0; padding: 24px 34px; background: rgba(27,28,25,.9); color: white; display: flex; justify-content: space-between; align-items: center; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; }
.caption strong { font-size: 24px; text-transform: none; letter-spacing: 0; font-weight: 400; }

.statement, .section { padding: 115px 7vw; }
.statement { display: grid; grid-template-columns: 1fr 2.2fr; gap: 8vw; border-top: 1px solid var(--line); }
h2 { margin: 0; font-size: clamp(48px, 5vw, 78px); font-weight: 400; line-height: .96; letter-spacing: -.04em; }
.statement div > p { max-width: 700px; font-size: 19px; line-height: 1.7; }
.light { background: #fffdf8; }
.title { display: grid; grid-template-columns: 1fr 2fr; gap: 50px; margin-bottom: 75px; }
.cards { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.cards article { min-height: 380px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); position: relative; }
.cards h3 { margin: 80px 0 18px; font-size: 32px; font-weight: 400; }
.cards p { color: #777268; font-size: 14px; line-height: 1.75; }
.cards article > span { position: absolute; bottom: 24px; right: 24px; }

.dark { background: var(--dark); color: var(--paper); display: grid; grid-template-columns: .8fr 1.2fr; gap: 9vw; }
.sectorIntro > p:last-child { color: #bbb8af; line-height: 1.7; }
.sectorList div { min-height: 95px; border-top: 1px solid #4d4c47; display: grid; grid-template-columns: 60px 1fr auto; align-items: center; }
.sectorList div:last-child { border-bottom: 1px solid #4d4c47; }
.sectorList strong { font: 27px Georgia, serif; }

.metrics { padding: 75px 6vw; background: var(--wine); color: white; display: grid; grid-template-columns: repeat(4, 1fr); }
.metrics div { padding: 0 28px; border-right: 1px solid rgba(255,255,255,.3); }
.metrics strong { display: block; font-size: clamp(45px, 4vw, 66px); font-weight: 400; }
.metrics span { display: block; margin-top: 12px; color: rgba(255,255,255,.72); font-size: 12px; line-height: 1.5; }

.section ol { list-style: none; padding: 0; margin: 0 0 0 33%; border-top: 1px solid var(--line); }
.section li { padding: 32px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 80px 1fr; }
.section li h3 { margin: 0 0 8px; font-size: 32px; font-weight: 400; }
.section li p { margin: 0; color: #777268; line-height: 1.65; }

.founder { background: var(--sand); display: grid; grid-template-columns: .8fr 1.2fr; gap: 9vw; }
.founder > div:first-child small { display: block; margin-top: 240px; text-transform: uppercase; letter-spacing: .14em; line-height: 1.8; }
.founder > div:last-child > p { font-size: 17px; line-height: 1.75; }
.founder blockquote { margin: 40px 0 0; padding-top: 28px; border-top: 1px solid rgba(36,35,32,.35); color: var(--wine); font: 30px/1.2 Georgia, serif; }

.contact { padding: 115px 15vw; text-align: center; background: var(--dark); color: var(--paper); }
.contact h2 { max-width: 900px; margin: auto; }
.contact > p:not(.kicker) { max-width: 670px; margin: 30px auto 38px; color: #bbb8af; line-height: 1.7; }
.contact > a { display: flex; width: 290px; height: 68px; margin: auto; padding: 0 25px; align-items: center; justify-content: space-between; background: var(--wine); }

footer.site-footer { padding: 65px 6vw 28px; background: #11120f; color: var(--paper); display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
footer.site-footer > p { margin: 0; font: 26px Georgia, serif; }
footer.site-footer > div { grid-column: 2; color: #92928d; font-size: 12px; line-height: 1.8; }
footer.site-footer > small { grid-column: 1 / -1; border-top: 1px solid #3d3e39; padding-top: 24px; color: #858680; }

@media (max-width: 900px) {
	header.site-header { grid-template-columns: 1fr auto; }
	nav.site-nav { display: none; }
	.hero { grid-template-columns: 1fr; }
	.heroCopy { min-height: 650px; }
	.heroImage { min-height: 560px; margin: 0; clip-path: none; }
	.cards, .metrics { grid-template-columns: repeat(2, 1fr); }
	.dark, .founder { grid-template-columns: 1fr; }
	.founder > div:first-child small { margin-top: 35px; }
}
@media (max-width: 600px) {
	header.site-header { height: 76px; padding: 0 20px; }
	.logo { font-size: 15px; letter-spacing: .18em; }
	.headerCta { font-size: 11px; }
	.heroCopy { padding: 55px 24px; min-height: 610px; }
	.hero h1 { font-size: 57px; }
	.datum { display: none; }
	.heroImage { min-height: 420px; }
	.statement, .section, .contact { padding: 78px 24px; }
	.statement, .title { grid-template-columns: 1fr; }
	.cards, .metrics { grid-template-columns: 1fr; }
	.metrics div { padding: 25px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.3); }
	.section ol { margin-left: 0; }
	.founder h2, .contact h2 { font-size: 46px; }
	footer.site-footer { grid-template-columns: 1fr; padding: 50px 24px 25px; }
	footer.site-footer > div { grid-column: 1; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

/* WordPress core alignment helpers (harmless if unused on this one-page theme) */
.alignleft { float: left; margin-right: 1.5em; }
.alignright { float: right; margin-left: 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.screen-reader-text { position: absolute !important; clip: rect(1px,1px,1px,1px); overflow: hidden; height: 1px; width: 1px; }
