@@ -46,10 +46,272 @@ body {
4646 grid-template-rows : 100vh repeat (8 , min-content);
4747}
4848
49+ /** COMMON STYLES **/
50+ a : link ,
51+ a : visited {
52+ color : var (--color-quartenary );
53+ text-decoration : none;
54+ font-size : calc (0.5rem + 1vw );
55+ padding : 1rem 2rem ;
56+ position : relative;
57+ border-radius : 0.3rem ;
58+ z-index : 1 ;
59+ transition : all var (--transition-duration ) cubic-bezier (1 , 0 , 0 , 1 );
60+ }
61+
62+ p {
63+ color : white;
64+ font-size : calc (1rem + 1vw );
65+ font-weight : 300 ;
66+ }
67+
68+ li {
69+ list-style : none;
70+ margin-bottom : 4rem ;
71+ }
72+
73+ i {
74+ font-size : var (--font-size-title );
75+ color : var (--color-secondary )
76+ }
77+
4978/* header section */
5079header # header {
51- background-color : var (--color-primary );
5280 grid-column : container-start / container-end;
81+ background : linear-gradient (var (--color-primary-m-light ), var (--color-primary-m-light )), url ('img/hero.jpg' );
82+ background-repeat : no-repeat;
83+ background-position : center;
84+ background-size : cover;
85+ }
86+
87+ .header__main-nav {
88+ position : fixed;
89+ top : 0 ;
90+ left : 0 ;
91+ z-index : 2 ;
92+ }
93+
94+ .header__main-nav input [type = checkbox ] {
95+ position : absolute;
96+ top : 3rem ;
97+ left : 3rem ;
98+ height : 5rem ;
99+ width : 5rem ;
100+ cursor : pointer;
101+ z-index : 3 ;
102+ opacity : 0 ;
103+ }
104+
105+ .header__main-nav--hamburger {
106+ position : absolute;
107+ top : 3rem ;
108+ left : 3rem ;
109+ width : 5rem ;
110+ height : 5rem ;
111+ background-color : var (--color-secondary );
112+ z-index : 2 ;
113+ padding : 1rem ;
114+
115+ display : grid;
116+ place-items : center;
117+
118+ animation : main-nav 2s ;
119+ }
120+
121+ @keyframes main-nav {
122+ 0% {
123+ transform : translateX (150rem ) rotate (1800deg );
124+ opacity : 0 ;
125+ }
126+
127+ 100% {
128+ transform : translateX (0 ) rotate (0 );
129+ opacity : 1 ;
130+ }
131+ }
132+
133+ .header__main-nav--hamburger > div {
134+ position : relative;
135+ height : 0.3rem ;
136+ width : 100% ;
137+ background-color : var (--color-quartenary );
138+
139+ display : grid;
140+ place-items : center;
141+ transition : all var (--transition-duration ) ease-in-out;
142+ }
143+
144+ .header__main-nav--hamburger > div ::after ,
145+ .header__main-nav--hamburger > div ::before {
146+ content : "" ;
147+ height : inherit;
148+ width : 60% ;
149+ position : absolute;
150+ background-color : inherit;
151+ z-index : inherit;
152+ }
153+
154+ .header__main-nav--hamburger > div ::after {
155+ right : 0 ;
156+ top : 1rem ;
157+ }
158+
159+ .header__main-nav--hamburger > div ::before {
160+ top : -1rem ;
161+ left : 0 ;
162+ }
163+
164+ .header__main-nav input [type = checkbox ]: checked + .header__main-nav--hamburger > div {
165+ transform : rotate (135deg );
166+ }
167+
168+ .header__main-nav input [type = checkbox ]: checked + .header__main-nav--hamburger > div ::after {
169+ opacity : 0 ;
170+ }
171+
172+ .header__main-nav input [type = checkbox ]: checked + .header__main-nav--hamburger > div ::before {
173+ left : 0 ;
174+ top : 0 ;
175+ width : 100% ;
176+ transform : rotate (270deg );
177+ }
178+
179+ .header__main-nav input [type = checkbox ]: checked : hover + .header__main-nav--hamburger > div {
180+ transform : rotate (405deg );
181+ }
182+
183+ .header__main-nav--menu {
184+ position : fixed;
185+ top : 0 ;
186+ left : 0 ;
187+ height : 100% ;
188+ width : 100% ;
189+ overflow : hidden;
190+ visibility : hidden;
191+
192+ display : grid;
193+ place-items : center;
194+ }
195+
196+ .header__main-nav--menu > div {
197+ background-color : var (--color-secondary-m-dark );
198+ width : 200% ;
199+ height : 200% ;
200+ display : grid;
201+ place-items : center;
202+
203+ transition : all var (--transition-duration ) ease-in-out;
204+ transform : scaleX (0 );
205+ }
206+
207+ .header__main-nav--menu > div > div {
208+ max-width : 90vw ;
209+ max-height : 100vh ;
210+ text-align : center;
211+
212+ opacity : 0 ;
213+ transition : opacity 1s ease-in-out;
214+ }
215+
216+ .header__main-nav input [type = checkbox ]: checked ~ .header__main-nav--menu {
217+ visibility : visible;
218+ }
219+
220+ .header__main-nav input [type = checkbox ]: checked ~ .header__main-nav--menu > div {
221+ transform : scaleX (1 );
222+ transition-duration : .5s ;
223+ }
224+
225+ .header__main-nav input [type = checkbox ]: checked ~ .header__main-nav--menu > div > div {
226+ opacity : 1 ;
227+ }
228+
229+ .header__main-nav--menu li a : link ,
230+ .header__main-nav--menu li a : visited {
231+ z-index : 5 ;
232+ font-size : calc (1.5rem + 0.5vw );
233+ }
234+
235+ .header__main-nav--menu li a : link ::before ,
236+ .header__main-nav--menu li a : visited ::before {
237+ content : "" ;
238+ position : absolute;
239+ top : 0 ;
240+ left : 0 ;
241+ z-index : -1 ;
242+ height : 100% ;
243+ width : 100% ;
244+ transform : scaleY (0 );
245+ background-color : var (--color-primary-m-dark );
246+ transition : transform var (--transition-duration ) ease-in-out;
247+ }
248+
249+ .header__main-nav--menu li a : hover ::before ,
250+ .header__main-nav--menu li a : active ::before {
251+ transform : scaleY (1 );
252+ }
253+
254+ .header__logo__content {
255+ display : grid;
256+ grid-template-columns : 1fr minmax (30rem , 1fr ) 1fr ;
257+ grid-template-rows : min-content;
258+ height : 90% ;
259+ justify-items : center;
260+ }
261+
262+ .header__logo__content--logo {
263+ grid-column : 2 / 3 ;
264+ letter-spacing : 0.2rem ;
265+ }
266+
267+ .header__logo__content--logo span {
268+ color : var (--color-tertiary );
269+ font-size : 3rem ;
270+ font-family : "Times New Roman" , 'Times New Roman' , Times, serif;
271+ }
272+
273+ .header__logo__content--content {
274+ grid-column : 1 / -1 ;
275+ align-self : center;
276+ }
277+
278+ .header__logo__content--content__title {
279+ padding : 0 2rem 0 var (--font-size-title );
280+ text-transform : uppercase;
281+ color : white;
282+ font-weight : 300 ;
283+ font-size : calc (4rem + 4vw );
284+ }
285+
286+ .header__logo__content--content__para {
287+ font-size : calc (1rem + 2vw );
288+ font-weight : 500 ;
289+ padding : 2vh 2rem 6vh var (--font-size-title );
290+ }
291+
292+ .header__logo__content--content__link : visited ,
293+ .header__logo__content--content__link : link {
294+ margin-left : var (--font-size-title );
295+ border : 0.2rem solid var (--color-tertiary );
296+ }
297+
298+ .header__logo__content--content__link : visited ::before ,
299+ .header__logo__content--content__link : link ::before {
300+ content : "" ;
301+ position : absolute;
302+ top : 0 ;
303+ left : 0 ;
304+ width : 100% ;
305+ height : 100% ;
306+ background-color : var (--color-tertiary );
307+ transition : transform .45s cubic-bezier (1 , 0 , 0 , 1 );
308+ z-index : -1 ;
309+ transform : scaleX (0 );
310+ }
311+
312+ .header__logo__content--content__link : hover ::before ,
313+ .header__logo__content--content__link : active ::before {
314+ transform : scaleX (1 );
53315}
54316
55317section # booking-content {
0 commit comments